Users' Mathboxes Mathbox for Zhi Wang < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  idfudiag1 Structured version   Visualization version   GIF version

Theorem idfudiag1 50438
Description: If the identity functor of a category is the same as a constant functor to the category, then the category is terminal. (Contributed by Zhi Wang, 19-Oct-2025.)
Hypotheses
Ref Expression
idfudiag1.i 𝐼 = (idfunc𝐶)
idfudiag1.l 𝐿 = (𝐶Δfunc𝐶)
idfudiag1.c (𝜑𝐶 ∈ Cat)
idfudiag1.b 𝐵 = (Base‘𝐶)
idfudiag1.x (𝜑𝑋𝐵)
idfudiag1.k 𝐾 = ((1st𝐿)‘𝑋)
idfudiag1.e (𝜑𝐼 = 𝐾)
Assertion
Ref Expression
idfudiag1 (𝜑𝐶 ∈ TermCat)

Proof of Theorem idfudiag1
Dummy variables 𝑓 𝑝 𝑥 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 idfudiag1.b . . . 4 𝐵 = (Base‘𝐶)
21a1i 11 . . 3 (𝜑𝐵 = (Base‘𝐶))
3 eqidd 2763 . . 3 (𝜑 → (Hom ‘𝐶) = (Hom ‘𝐶))
4 fveq2 6882 . . . . . . . . . . 11 (𝑝 = ⟨𝑦, 𝑧⟩ → ((Hom ‘𝐶)‘𝑝) = ((Hom ‘𝐶)‘⟨𝑦, 𝑧⟩))
5 df-ov 7419 . . . . . . . . . . 11 (𝑦(Hom ‘𝐶)𝑧) = ((Hom ‘𝐶)‘⟨𝑦, 𝑧⟩)
64, 5eqtr4di 2815 . . . . . . . . . 10 (𝑝 = ⟨𝑦, 𝑧⟩ → ((Hom ‘𝐶)‘𝑝) = (𝑦(Hom ‘𝐶)𝑧))
76reseq2d 5976 . . . . . . . . 9 (𝑝 = ⟨𝑦, 𝑧⟩ → ( I ↾ ((Hom ‘𝐶)‘𝑝)) = ( I ↾ (𝑦(Hom ‘𝐶)𝑧)))
87mpompt 7530 . . . . . . . 8 (𝑝 ∈ (𝐵 × 𝐵) ↦ ( I ↾ ((Hom ‘𝐶)‘𝑝))) = (𝑦𝐵, 𝑧𝐵 ↦ ( I ↾ (𝑦(Hom ‘𝐶)𝑧)))
98a1i 11 . . . . . . 7 (𝜑 → (𝑝 ∈ (𝐵 × 𝐵) ↦ ( I ↾ ((Hom ‘𝐶)‘𝑝))) = (𝑦𝐵, 𝑧𝐵 ↦ ( I ↾ (𝑦(Hom ‘𝐶)𝑧))))
10 ovex 7449 . . . . . . . 8 (𝑦(Hom ‘𝐶)𝑧) ∈ V
11 resiexg 7912 . . . . . . . 8 ((𝑦(Hom ‘𝐶)𝑧) ∈ V → ( I ↾ (𝑦(Hom ‘𝐶)𝑧)) ∈ V)
1210, 11mp1i 14 . . . . . . 7 ((𝜑 ∧ (𝑦𝐵𝑧𝐵)) → ( I ↾ (𝑦(Hom ‘𝐶)𝑧)) ∈ V)
139, 12ovmpt4d 49780 . . . . . 6 ((𝜑 ∧ (𝑦𝐵𝑧𝐵)) → (𝑦(𝑝 ∈ (𝐵 × 𝐵) ↦ ( I ↾ ((Hom ‘𝐶)‘𝑝)))𝑧) = ( I ↾ (𝑦(Hom ‘𝐶)𝑧)))
14 idfudiag1.e . . . . . . . . 9 (𝜑𝐼 = 𝐾)
15 idfudiag1.i . . . . . . . . . 10 𝐼 = (idfunc𝐶)
16 idfudiag1.c . . . . . . . . . 10 (𝜑𝐶 ∈ Cat)
17 eqid 2762 . . . . . . . . . 10 (Hom ‘𝐶) = (Hom ‘𝐶)
1815, 1, 16, 17idfuval 17969 . . . . . . . . 9 (𝜑𝐼 = ⟨( I ↾ 𝐵), (𝑝 ∈ (𝐵 × 𝐵) ↦ ( I ↾ ((Hom ‘𝐶)‘𝑝)))⟩)
19 idfudiag1.l . . . . . . . . . 10 𝐿 = (𝐶Δfunc𝐶)
20 idfudiag1.x . . . . . . . . . 10 (𝜑𝑋𝐵)
21 idfudiag1.k . . . . . . . . . 10 𝐾 = ((1st𝐿)‘𝑋)
22 eqid 2762 . . . . . . . . . 10 (Id‘𝐶) = (Id‘𝐶)
2319, 16, 16, 1, 20, 21, 1, 17, 22diag1a 50218 . . . . . . . . 9 (𝜑𝐾 = ⟨(𝐵 × {𝑋}), (𝑦𝐵, 𝑧𝐵 ↦ ((𝑦(Hom ‘𝐶)𝑧) × {((Id‘𝐶)‘𝑋)}))⟩)
2414, 18, 233eqtr3d 2805 . . . . . . . 8 (𝜑 → ⟨( I ↾ 𝐵), (𝑝 ∈ (𝐵 × 𝐵) ↦ ( I ↾ ((Hom ‘𝐶)‘𝑝)))⟩ = ⟨(𝐵 × {𝑋}), (𝑦𝐵, 𝑧𝐵 ↦ ((𝑦(Hom ‘𝐶)𝑧) × {((Id‘𝐶)‘𝑋)}))⟩)
251fvexi 6896 . . . . . . . . . . 11 𝐵 ∈ V
26 resiexg 7912 . . . . . . . . . . 11 (𝐵 ∈ V → ( I ↾ 𝐵) ∈ V)
2725, 26ax-mp 5 . . . . . . . . . 10 ( I ↾ 𝐵) ∈ V
2825, 25xpex 7755 . . . . . . . . . . 11 (𝐵 × 𝐵) ∈ V
2928mptex 7225 . . . . . . . . . 10 (𝑝 ∈ (𝐵 × 𝐵) ↦ ( I ↾ ((Hom ‘𝐶)‘𝑝))) ∈ V
3027, 29opth 5456 . . . . . . . . 9 (⟨( I ↾ 𝐵), (𝑝 ∈ (𝐵 × 𝐵) ↦ ( I ↾ ((Hom ‘𝐶)‘𝑝)))⟩ = ⟨(𝐵 × {𝑋}), (𝑦𝐵, 𝑧𝐵 ↦ ((𝑦(Hom ‘𝐶)𝑧) × {((Id‘𝐶)‘𝑋)}))⟩ ↔ (( I ↾ 𝐵) = (𝐵 × {𝑋}) ∧ (𝑝 ∈ (𝐵 × 𝐵) ↦ ( I ↾ ((Hom ‘𝐶)‘𝑝))) = (𝑦𝐵, 𝑧𝐵 ↦ ((𝑦(Hom ‘𝐶)𝑧) × {((Id‘𝐶)‘𝑋)}))))
3130simprbi 503 . . . . . . . 8 (⟨( I ↾ 𝐵), (𝑝 ∈ (𝐵 × 𝐵) ↦ ( I ↾ ((Hom ‘𝐶)‘𝑝)))⟩ = ⟨(𝐵 × {𝑋}), (𝑦𝐵, 𝑧𝐵 ↦ ((𝑦(Hom ‘𝐶)𝑧) × {((Id‘𝐶)‘𝑋)}))⟩ → (𝑝 ∈ (𝐵 × 𝐵) ↦ ( I ↾ ((Hom ‘𝐶)‘𝑝))) = (𝑦𝐵, 𝑧𝐵 ↦ ((𝑦(Hom ‘𝐶)𝑧) × {((Id‘𝐶)‘𝑋)})))
3224, 31syl 18 . . . . . . 7 (𝜑 → (𝑝 ∈ (𝐵 × 𝐵) ↦ ( I ↾ ((Hom ‘𝐶)‘𝑝))) = (𝑦𝐵, 𝑧𝐵 ↦ ((𝑦(Hom ‘𝐶)𝑧) × {((Id‘𝐶)‘𝑋)})))
33 snex 5408 . . . . . . . . 9 {((Id‘𝐶)‘𝑋)} ∈ V
3410, 33xpex 7755 . . . . . . . 8 ((𝑦(Hom ‘𝐶)𝑧) × {((Id‘𝐶)‘𝑋)}) ∈ V
3534a1i 11 . . . . . . 7 ((𝜑 ∧ (𝑦𝐵𝑧𝐵)) → ((𝑦(Hom ‘𝐶)𝑧) × {((Id‘𝐶)‘𝑋)}) ∈ V)
3632, 35ovmpt4d 49780 . . . . . 6 ((𝜑 ∧ (𝑦𝐵𝑧𝐵)) → (𝑦(𝑝 ∈ (𝐵 × 𝐵) ↦ ( I ↾ ((Hom ‘𝐶)‘𝑝)))𝑧) = ((𝑦(Hom ‘𝐶)𝑧) × {((Id‘𝐶)‘𝑋)}))
3713, 36eqtr3d 2799 . . . . 5 ((𝜑 ∧ (𝑦𝐵𝑧𝐵)) → ( I ↾ (𝑦(Hom ‘𝐶)𝑧)) = ((𝑦(Hom ‘𝐶)𝑧) × {((Id‘𝐶)‘𝑋)}))
3816adantr 486 . . . . . . . 8 ((𝜑 ∧ (𝑦𝐵𝑧𝐵)) → 𝐶 ∈ Cat)
39 simprl 783 . . . . . . . 8 ((𝜑 ∧ (𝑦𝐵𝑧𝐵)) → 𝑦𝐵)
401, 17, 22, 38, 39catidcl 17774 . . . . . . 7 ((𝜑 ∧ (𝑦𝐵𝑧𝐵)) → ((Id‘𝐶)‘𝑦) ∈ (𝑦(Hom ‘𝐶)𝑦))
4115, 19, 16, 1, 20, 21, 14idfudiag1bas 50437 . . . . . . . . . . . 12 (𝜑𝐵 = {𝑋})
4241adantr 486 . . . . . . . . . . 11 ((𝜑 ∧ (𝑦𝐵𝑧𝐵)) → 𝐵 = {𝑋})
4339, 42eleqtrd 2864 . . . . . . . . . 10 ((𝜑 ∧ (𝑦𝐵𝑧𝐵)) → 𝑦 ∈ {𝑋})
44 elsni 4604 . . . . . . . . . 10 (𝑦 ∈ {𝑋} → 𝑦 = 𝑋)
4543, 44syl 18 . . . . . . . . 9 ((𝜑 ∧ (𝑦𝐵𝑧𝐵)) → 𝑦 = 𝑋)
46 simprr 785 . . . . . . . . . . 11 ((𝜑 ∧ (𝑦𝐵𝑧𝐵)) → 𝑧𝐵)
4746, 42eleqtrd 2864 . . . . . . . . . 10 ((𝜑 ∧ (𝑦𝐵𝑧𝐵)) → 𝑧 ∈ {𝑋})
48 elsni 4604 . . . . . . . . . 10 (𝑧 ∈ {𝑋} → 𝑧 = 𝑋)
4947, 48syl 18 . . . . . . . . 9 ((𝜑 ∧ (𝑦𝐵𝑧𝐵)) → 𝑧 = 𝑋)
5045, 49eqtr4d 2800 . . . . . . . 8 ((𝜑 ∧ (𝑦𝐵𝑧𝐵)) → 𝑦 = 𝑧)
5150oveq2d 7432 . . . . . . 7 ((𝜑 ∧ (𝑦𝐵𝑧𝐵)) → (𝑦(Hom ‘𝐶)𝑦) = (𝑦(Hom ‘𝐶)𝑧))
5240, 51eleqtrd 2864 . . . . . 6 ((𝜑 ∧ (𝑦𝐵𝑧𝐵)) → ((Id‘𝐶)‘𝑦) ∈ (𝑦(Hom ‘𝐶)𝑧))
5352ne0d 4291 . . . . 5 ((𝜑 ∧ (𝑦𝐵𝑧𝐵)) → (𝑦(Hom ‘𝐶)𝑧) ≠ ∅)
5437, 53idfudiag1lem 50436 . . . 4 ((𝜑 ∧ (𝑦𝐵𝑧𝐵)) → (𝑦(Hom ‘𝐶)𝑧) = {((Id‘𝐶)‘𝑋)})
55 mosn 49728 . . . 4 ((𝑦(Hom ‘𝐶)𝑧) = {((Id‘𝐶)‘𝑋)} → ∃*𝑓 𝑓 ∈ (𝑦(Hom ‘𝐶)𝑧))
5654, 55syl 18 . . 3 ((𝜑 ∧ (𝑦𝐵𝑧𝐵)) → ∃*𝑓 𝑓 ∈ (𝑦(Hom ‘𝐶)𝑧))
572, 3, 56, 16isthincd 50349 . 2 (𝜑𝐶 ∈ ThinCat)
58 sneq 4597 . . . 4 (𝑥 = 𝑋 → {𝑥} = {𝑋})
5958eqeq2d 2773 . . 3 (𝑥 = 𝑋 → (𝐵 = {𝑥} ↔ 𝐵 = {𝑋}))
6020, 41, 59spcedv 3555 . 2 (𝜑 → ∃𝑥 𝐵 = {𝑥})
611istermc 50387 . 2 (𝐶 ∈ TermCat ↔ (𝐶 ∈ ThinCat ∧ ∃𝑥 𝐵 = {𝑥}))
6257, 60, 61sylanbrc 595 1 (𝜑𝐶 ∈ TermCat)
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wa 401   = wceq 1570  wex 1812  wcel 2145  ∃*wmo 2564  Vcvv 3453  {csn 4587  cop 4593  cmpt 5190   I cid 5553   × cxp 5657  cres 5661  cfv 6537  (class class class)co 7416  cmpo 7418  1st c1st 7987  Basecbs 17305  Hom chom 17357  Catccat 17756  Idccid 17757  idfunccidfu 17948  Δfunccdiag 18304  ThinCatcthinc 50330  TermCatctermc 50385
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2215  ax-ext 2734  ax-rep 5236  ax-sep 5255  ax-nul 5267  ax-pow 5334  ax-pr 5402  ax-un 7739  ax-cnex 11183  ax-resscn 11184  ax-1cn 11185  ax-icn 11186  ax-addcl 11187  ax-addrcl 11188  ax-mulcl 11189  ax-mulrcl 11190  ax-mulcom 11191  ax-addass 11192  ax-mulass 11193  ax-distr 11194  ax-i2m1 11195  ax-1ne0 11196  ax-1rid 11197  ax-rnegex 11198  ax-rrecex 11199  ax-cnre 11200  ax-pre-lttri 11201  ax-pre-lttrn 11202  ax-pre-ltadd 11203  ax-pre-mulgt0 11204
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2566  df-eu 2596  df-clab 2741  df-cleq 2754  df-clel 2837  df-nfc 2911  df-ne 2958  df-nel 3064  df-ral 3079  df-rex 3089  df-rmo 3367  df-reu 3368  df-rab 3415  df-v 3455  df-sbc 3743  df-csb 3851  df-dif 3905  df-un 3907  df-in 3909  df-ss 3919  df-pss 3922  df-nul 4283  df-if 4486  df-pw 4562  df-sn 4588  df-pr 4590  df-tp 4592  df-op 4594  df-uni 4871  df-iun 4956  df-br 5108  df-opab 5172  df-mpt 5191  df-tr 5217  df-id 5554  df-eprel 5559  df-po 5567  df-so 5568  df-fr 5612  df-we 5614  df-xp 5665  df-rel 5666  df-cnv 5667  df-co 5668  df-dm 5669  df-rn 5670  df-res 5671  df-ima 5672  df-pred 6303  df-ord 6364  df-on 6365  df-lim 6366  df-suc 6367  df-iota 6493  df-fun 6539  df-fn 6540  df-f 6541  df-f1 6542  df-fo 6543  df-f1o 6544  df-fv 6545  df-riota 7373  df-ov 7419  df-oprab 7420  df-mpo 7421  df-om 7866  df-1st 7989  df-2nd 7990  df-frecs 8283  df-wrecs 8314  df-recs 8363  df-rdg 8402  df-1o 8458  df-er 8699  df-map 8831  df-ixp 8908  df-en 8956  df-dom 8957  df-sdom 8958  df-fin 8959  df-pnf 11272  df-mnf 11273  df-xr 11274  df-ltxr 11275  df-le 11276  df-sub 11470  df-neg 11471  df-nn 12261  df-2 12330  df-3 12331  df-4 12332  df-5 12333  df-6 12334  df-7 12335  df-8 12336  df-9 12337  df-n0 12532  df-z 12619  df-dec 12740  df-uz 12891  df-fz 13564  df-struct 17243  df-slot 17278  df-ndx 17290  df-base 17306  df-hom 17370  df-cco 17371  df-cat 17760  df-cid 17761  df-func 17951  df-idfu 17952  df-nat 18039  df-fuc 18040  df-xpc 18264  df-1stf 18265  df-curf 18306  df-diag 18308  df-thinc 50331  df-termc 50386
This theorem is used by:  euendfunc  50439
  Copyright terms: Public domain W3C validator