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

Theorem euendfunc 49808
Description: If there exists a unique endofunctor (a functor from a category to itself) for a non-empty category, then the category is terminal. This partially explains why two categories are sufficient in termc2 49800. (Contributed by Zhi Wang, 20-Oct-2025.)
Hypotheses
Ref Expression
euendfunc.f (𝜑 → ∃!𝑓 𝑓 ∈ (𝐶 Func 𝐶))
euendfunc.b 𝐵 = (Base‘𝐶)
euendfunc.0 (𝜑𝐵 ≠ ∅)
Assertion
Ref Expression
euendfunc (𝜑𝐶 ∈ TermCat)
Distinct variable group:   𝐶,𝑓
Allowed substitution hints:   𝜑(𝑓)   𝐵(𝑓)

Proof of Theorem euendfunc
Dummy variables 𝑔 𝑥 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 euendfunc.0 . . 3 (𝜑𝐵 ≠ ∅)
2 n0 4304 . . 3 (𝐵 ≠ ∅ ↔ ∃𝑥 𝑥𝐵)
31, 2sylib 218 . 2 (𝜑 → ∃𝑥 𝑥𝐵)
4 eqid 2735 . . 3 (idfunc𝐶) = (idfunc𝐶)
5 eqid 2735 . . 3 (𝐶Δfunc𝐶) = (𝐶Δfunc𝐶)
6 euendfunc.f . . . . . 6 (𝜑 → ∃!𝑓 𝑓 ∈ (𝐶 Func 𝐶))
76adantr 480 . . . . 5 ((𝜑𝑥𝐵) → ∃!𝑓 𝑓 ∈ (𝐶 Func 𝐶))
8 euex 2576 . . . . 5 (∃!𝑓 𝑓 ∈ (𝐶 Func 𝐶) → ∃𝑓 𝑓 ∈ (𝐶 Func 𝐶))
97, 8syl 17 . . . 4 ((𝜑𝑥𝐵) → ∃𝑓 𝑓 ∈ (𝐶 Func 𝐶))
10 funcrcl 17789 . . . . . 6 (𝑓 ∈ (𝐶 Func 𝐶) → (𝐶 ∈ Cat ∧ 𝐶 ∈ Cat))
1110simpld 494 . . . . 5 (𝑓 ∈ (𝐶 Func 𝐶) → 𝐶 ∈ Cat)
1211exlimiv 1932 . . . 4 (∃𝑓 𝑓 ∈ (𝐶 Func 𝐶) → 𝐶 ∈ Cat)
139, 12syl 17 . . 3 ((𝜑𝑥𝐵) → 𝐶 ∈ Cat)
14 euendfunc.b . . 3 𝐵 = (Base‘𝐶)
15 simpr 484 . . 3 ((𝜑𝑥𝐵) → 𝑥𝐵)
16 eqid 2735 . . 3 ((1st ‘(𝐶Δfunc𝐶))‘𝑥) = ((1st ‘(𝐶Δfunc𝐶))‘𝑥)
174idfucl 17807 . . . . 5 (𝐶 ∈ Cat → (idfunc𝐶) ∈ (𝐶 Func 𝐶))
1813, 17syl 17 . . . 4 ((𝜑𝑥𝐵) → (idfunc𝐶) ∈ (𝐶 Func 𝐶))
195, 13, 13, 14, 15, 16diag1cl 18167 . . . 4 ((𝜑𝑥𝐵) → ((1st ‘(𝐶Δfunc𝐶))‘𝑥) ∈ (𝐶 Func 𝐶))
20 eumo 2577 . . . . . . 7 (∃!𝑓 𝑓 ∈ (𝐶 Func 𝐶) → ∃*𝑓 𝑓 ∈ (𝐶 Func 𝐶))
217, 20syl 17 . . . . . 6 ((𝜑𝑥𝐵) → ∃*𝑓 𝑓 ∈ (𝐶 Func 𝐶))
22 eleq1w 2818 . . . . . . 7 (𝑓 = 𝑔 → (𝑓 ∈ (𝐶 Func 𝐶) ↔ 𝑔 ∈ (𝐶 Func 𝐶)))
2322mo4 2565 . . . . . 6 (∃*𝑓 𝑓 ∈ (𝐶 Func 𝐶) ↔ ∀𝑓𝑔((𝑓 ∈ (𝐶 Func 𝐶) ∧ 𝑔 ∈ (𝐶 Func 𝐶)) → 𝑓 = 𝑔))
2421, 23sylib 218 . . . . 5 ((𝜑𝑥𝐵) → ∀𝑓𝑔((𝑓 ∈ (𝐶 Func 𝐶) ∧ 𝑔 ∈ (𝐶 Func 𝐶)) → 𝑓 = 𝑔))
25 fvex 6846 . . . . . 6 (idfunc𝐶) ∈ V
26 fvex 6846 . . . . . 6 ((1st ‘(𝐶Δfunc𝐶))‘𝑥) ∈ V
27 simpl 482 . . . . . . . . . 10 ((𝑓 = (idfunc𝐶) ∧ 𝑔 = ((1st ‘(𝐶Δfunc𝐶))‘𝑥)) → 𝑓 = (idfunc𝐶))
2827eleq1d 2820 . . . . . . . . 9 ((𝑓 = (idfunc𝐶) ∧ 𝑔 = ((1st ‘(𝐶Δfunc𝐶))‘𝑥)) → (𝑓 ∈ (𝐶 Func 𝐶) ↔ (idfunc𝐶) ∈ (𝐶 Func 𝐶)))
29 simpr 484 . . . . . . . . . 10 ((𝑓 = (idfunc𝐶) ∧ 𝑔 = ((1st ‘(𝐶Δfunc𝐶))‘𝑥)) → 𝑔 = ((1st ‘(𝐶Δfunc𝐶))‘𝑥))
3029eleq1d 2820 . . . . . . . . 9 ((𝑓 = (idfunc𝐶) ∧ 𝑔 = ((1st ‘(𝐶Δfunc𝐶))‘𝑥)) → (𝑔 ∈ (𝐶 Func 𝐶) ↔ ((1st ‘(𝐶Δfunc𝐶))‘𝑥) ∈ (𝐶 Func 𝐶)))
3128, 30anbi12d 633 . . . . . . . 8 ((𝑓 = (idfunc𝐶) ∧ 𝑔 = ((1st ‘(𝐶Δfunc𝐶))‘𝑥)) → ((𝑓 ∈ (𝐶 Func 𝐶) ∧ 𝑔 ∈ (𝐶 Func 𝐶)) ↔ ((idfunc𝐶) ∈ (𝐶 Func 𝐶) ∧ ((1st ‘(𝐶Δfunc𝐶))‘𝑥) ∈ (𝐶 Func 𝐶))))
32 eqeq12 2752 . . . . . . . 8 ((𝑓 = (idfunc𝐶) ∧ 𝑔 = ((1st ‘(𝐶Δfunc𝐶))‘𝑥)) → (𝑓 = 𝑔 ↔ (idfunc𝐶) = ((1st ‘(𝐶Δfunc𝐶))‘𝑥)))
3331, 32imbi12d 344 . . . . . . 7 ((𝑓 = (idfunc𝐶) ∧ 𝑔 = ((1st ‘(𝐶Δfunc𝐶))‘𝑥)) → (((𝑓 ∈ (𝐶 Func 𝐶) ∧ 𝑔 ∈ (𝐶 Func 𝐶)) → 𝑓 = 𝑔) ↔ (((idfunc𝐶) ∈ (𝐶 Func 𝐶) ∧ ((1st ‘(𝐶Δfunc𝐶))‘𝑥) ∈ (𝐶 Func 𝐶)) → (idfunc𝐶) = ((1st ‘(𝐶Δfunc𝐶))‘𝑥))))
3433spc2gv 3553 . . . . . 6 (((idfunc𝐶) ∈ V ∧ ((1st ‘(𝐶Δfunc𝐶))‘𝑥) ∈ V) → (∀𝑓𝑔((𝑓 ∈ (𝐶 Func 𝐶) ∧ 𝑔 ∈ (𝐶 Func 𝐶)) → 𝑓 = 𝑔) → (((idfunc𝐶) ∈ (𝐶 Func 𝐶) ∧ ((1st ‘(𝐶Δfunc𝐶))‘𝑥) ∈ (𝐶 Func 𝐶)) → (idfunc𝐶) = ((1st ‘(𝐶Δfunc𝐶))‘𝑥))))
3525, 26, 34mp2an 693 . . . . 5 (∀𝑓𝑔((𝑓 ∈ (𝐶 Func 𝐶) ∧ 𝑔 ∈ (𝐶 Func 𝐶)) → 𝑓 = 𝑔) → (((idfunc𝐶) ∈ (𝐶 Func 𝐶) ∧ ((1st ‘(𝐶Δfunc𝐶))‘𝑥) ∈ (𝐶 Func 𝐶)) → (idfunc𝐶) = ((1st ‘(𝐶Δfunc𝐶))‘𝑥)))
3624, 35syl 17 . . . 4 ((𝜑𝑥𝐵) → (((idfunc𝐶) ∈ (𝐶 Func 𝐶) ∧ ((1st ‘(𝐶Δfunc𝐶))‘𝑥) ∈ (𝐶 Func 𝐶)) → (idfunc𝐶) = ((1st ‘(𝐶Δfunc𝐶))‘𝑥)))
3718, 19, 36mp2and 700 . . 3 ((𝜑𝑥𝐵) → (idfunc𝐶) = ((1st ‘(𝐶Δfunc𝐶))‘𝑥))
384, 5, 13, 14, 15, 16, 37idfudiag1 49807 . 2 ((𝜑𝑥𝐵) → 𝐶 ∈ TermCat)
393, 38exlimddv 1937 1 (𝜑𝐶 ∈ TermCat)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 395  wal 1540   = wceq 1542  wex 1781  wcel 2114  ∃*wmo 2536  ∃!weu 2567  wne 2931  Vcvv 3439  c0 4284  cfv 6491  (class class class)co 7358  1st c1st 7931  Basecbs 17138  Catccat 17589   Func cfunc 17780  idfunccidfu 17781  Δfunccdiag 18137  TermCatctermc 49754
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1797  ax-4 1811  ax-5 1912  ax-6 1969  ax-7 2010  ax-8 2116  ax-9 2124  ax-10 2147  ax-11 2163  ax-12 2183  ax-ext 2707  ax-rep 5223  ax-sep 5240  ax-nul 5250  ax-pow 5309  ax-pr 5376  ax-un 7680  ax-cnex 11084  ax-resscn 11085  ax-1cn 11086  ax-icn 11087  ax-addcl 11088  ax-addrcl 11089  ax-mulcl 11090  ax-mulrcl 11091  ax-mulcom 11092  ax-addass 11093  ax-mulass 11094  ax-distr 11095  ax-i2m1 11096  ax-1ne0 11097  ax-1rid 11098  ax-rnegex 11099  ax-rrecex 11100  ax-cnre 11101  ax-pre-lttri 11102  ax-pre-lttrn 11103  ax-pre-ltadd 11104  ax-pre-mulgt0 11105
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 849  df-3or 1088  df-3an 1089  df-tru 1545  df-fal 1555  df-ex 1782  df-nf 1786  df-sb 2069  df-mo 2538  df-eu 2568  df-clab 2714  df-cleq 2727  df-clel 2810  df-nfc 2884  df-ne 2932  df-nel 3036  df-ral 3051  df-rex 3060  df-rmo 3349  df-reu 3350  df-rab 3399  df-v 3441  df-sbc 3740  df-csb 3849  df-dif 3903  df-un 3905  df-in 3907  df-ss 3917  df-pss 3920  df-nul 4285  df-if 4479  df-pw 4555  df-sn 4580  df-pr 4582  df-tp 4584  df-op 4586  df-uni 4863  df-iun 4947  df-br 5098  df-opab 5160  df-mpt 5179  df-tr 5205  df-id 5518  df-eprel 5523  df-po 5531  df-so 5532  df-fr 5576  df-we 5578  df-xp 5629  df-rel 5630  df-cnv 5631  df-co 5632  df-dm 5633  df-rn 5634  df-res 5635  df-ima 5636  df-pred 6258  df-ord 6319  df-on 6320  df-lim 6321  df-suc 6322  df-iota 6447  df-fun 6493  df-fn 6494  df-f 6495  df-f1 6496  df-fo 6497  df-f1o 6498  df-fv 6499  df-riota 7315  df-ov 7361  df-oprab 7362  df-mpo 7363  df-om 7809  df-1st 7933  df-2nd 7934  df-frecs 8223  df-wrecs 8254  df-recs 8303  df-rdg 8341  df-1o 8397  df-er 8635  df-map 8767  df-ixp 8838  df-en 8886  df-dom 8887  df-sdom 8888  df-fin 8889  df-pnf 11170  df-mnf 11171  df-xr 11172  df-ltxr 11173  df-le 11174  df-sub 11368  df-neg 11369  df-nn 12148  df-2 12210  df-3 12211  df-4 12212  df-5 12213  df-6 12214  df-7 12215  df-8 12216  df-9 12217  df-n0 12404  df-z 12491  df-dec 12610  df-uz 12754  df-fz 13426  df-struct 17076  df-slot 17111  df-ndx 17123  df-base 17139  df-hom 17203  df-cco 17204  df-cat 17593  df-cid 17594  df-func 17784  df-idfu 17785  df-nat 17872  df-fuc 17873  df-xpc 18097  df-1stf 18098  df-curf 18139  df-diag 18141  df-thinc 49700  df-termc 49755
This theorem is referenced by:  euendfunc2  49809
  Copyright terms: Public domain W3C validator