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 49959
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 49951. (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 4294 . . 3 (𝐵 ≠ ∅ ↔ ∃𝑥 𝑥𝐵)
31, 2sylib 218 . 2 (𝜑 → ∃𝑥 𝑥𝐵)
4 eqid 2737 . . 3 (idfunc𝐶) = (idfunc𝐶)
5 eqid 2737 . . 3 (𝐶Δfunc𝐶) = (𝐶Δfunc𝐶)
6 euendfunc.f . . . . . 6 (𝜑 → ∃!𝑓 𝑓 ∈ (𝐶 Func 𝐶))
76adantr 480 . . . . 5 ((𝜑𝑥𝐵) → ∃!𝑓 𝑓 ∈ (𝐶 Func 𝐶))
8 euex 2578 . . . . 5 (∃!𝑓 𝑓 ∈ (𝐶 Func 𝐶) → ∃𝑓 𝑓 ∈ (𝐶 Func 𝐶))
97, 8syl 17 . . . 4 ((𝜑𝑥𝐵) → ∃𝑓 𝑓 ∈ (𝐶 Func 𝐶))
10 funcrcl 17788 . . . . . 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 2737 . . 3 ((1st ‘(𝐶Δfunc𝐶))‘𝑥) = ((1st ‘(𝐶Δfunc𝐶))‘𝑥)
174idfucl 17806 . . . . 5 (𝐶 ∈ Cat → (idfunc𝐶) ∈ (𝐶 Func 𝐶))
1813, 17syl 17 . . . 4 ((𝜑𝑥𝐵) → (idfunc𝐶) ∈ (𝐶 Func 𝐶))
195, 13, 13, 14, 15, 16diag1cl 18166 . . . 4 ((𝜑𝑥𝐵) → ((1st ‘(𝐶Δfunc𝐶))‘𝑥) ∈ (𝐶 Func 𝐶))
20 eumo 2579 . . . . . . 7 (∃!𝑓 𝑓 ∈ (𝐶 Func 𝐶) → ∃*𝑓 𝑓 ∈ (𝐶 Func 𝐶))
217, 20syl 17 . . . . . 6 ((𝜑𝑥𝐵) → ∃*𝑓 𝑓 ∈ (𝐶 Func 𝐶))
22 eleq1w 2820 . . . . . . 7 (𝑓 = 𝑔 → (𝑓 ∈ (𝐶 Func 𝐶) ↔ 𝑔 ∈ (𝐶 Func 𝐶)))
2322mo4 2567 . . . . . 6 (∃*𝑓 𝑓 ∈ (𝐶 Func 𝐶) ↔ ∀𝑓𝑔((𝑓 ∈ (𝐶 Func 𝐶) ∧ 𝑔 ∈ (𝐶 Func 𝐶)) → 𝑓 = 𝑔))
2421, 23sylib 218 . . . . 5 ((𝜑𝑥𝐵) → ∀𝑓𝑔((𝑓 ∈ (𝐶 Func 𝐶) ∧ 𝑔 ∈ (𝐶 Func 𝐶)) → 𝑓 = 𝑔))
25 fvex 6845 . . . . . 6 (idfunc𝐶) ∈ V
26 fvex 6845 . . . . . 6 ((1st ‘(𝐶Δfunc𝐶))‘𝑥) ∈ V
27 simpl 482 . . . . . . . . . 10 ((𝑓 = (idfunc𝐶) ∧ 𝑔 = ((1st ‘(𝐶Δfunc𝐶))‘𝑥)) → 𝑓 = (idfunc𝐶))
2827eleq1d 2822 . . . . . . . . 9 ((𝑓 = (idfunc𝐶) ∧ 𝑔 = ((1st ‘(𝐶Δfunc𝐶))‘𝑥)) → (𝑓 ∈ (𝐶 Func 𝐶) ↔ (idfunc𝐶) ∈ (𝐶 Func 𝐶)))
29 simpr 484 . . . . . . . . . 10 ((𝑓 = (idfunc𝐶) ∧ 𝑔 = ((1st ‘(𝐶Δfunc𝐶))‘𝑥)) → 𝑔 = ((1st ‘(𝐶Δfunc𝐶))‘𝑥))
3029eleq1d 2822 . . . . . . . . 9 ((𝑓 = (idfunc𝐶) ∧ 𝑔 = ((1st ‘(𝐶Δfunc𝐶))‘𝑥)) → (𝑔 ∈ (𝐶 Func 𝐶) ↔ ((1st ‘(𝐶Δfunc𝐶))‘𝑥) ∈ (𝐶 Func 𝐶)))
3128, 30anbi12d 633 . . . . . . . 8 ((𝑓 = (idfunc𝐶) ∧ 𝑔 = ((1st ‘(𝐶Δfunc𝐶))‘𝑥)) → ((𝑓 ∈ (𝐶 Func 𝐶) ∧ 𝑔 ∈ (𝐶 Func 𝐶)) ↔ ((idfunc𝐶) ∈ (𝐶 Func 𝐶) ∧ ((1st ‘(𝐶Δfunc𝐶))‘𝑥) ∈ (𝐶 Func 𝐶))))
32 eqeq12 2754 . . . . . . . 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 3543 . . . . . 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 49958 . 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 2538  ∃!weu 2569  wne 2933  Vcvv 3430  c0 4274  cfv 6490  (class class class)co 7358  1st c1st 7931  Basecbs 17137  Catccat 17588   Func cfunc 17779  idfunccidfu 17780  Δfunccdiag 18136  TermCatctermc 49905
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 2185  ax-ext 2709  ax-rep 5212  ax-sep 5231  ax-nul 5241  ax-pow 5300  ax-pr 5368  ax-un 7680  ax-cnex 11083  ax-resscn 11084  ax-1cn 11085  ax-icn 11086  ax-addcl 11087  ax-addrcl 11088  ax-mulcl 11089  ax-mulrcl 11090  ax-mulcom 11091  ax-addass 11092  ax-mulass 11093  ax-distr 11094  ax-i2m1 11095  ax-1ne0 11096  ax-1rid 11097  ax-rnegex 11098  ax-rrecex 11099  ax-cnre 11100  ax-pre-lttri 11101  ax-pre-lttrn 11102  ax-pre-ltadd 11103  ax-pre-mulgt0 11104
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 2540  df-eu 2570  df-clab 2716  df-cleq 2729  df-clel 2812  df-nfc 2886  df-ne 2934  df-nel 3038  df-ral 3053  df-rex 3063  df-rmo 3343  df-reu 3344  df-rab 3391  df-v 3432  df-sbc 3730  df-csb 3839  df-dif 3893  df-un 3895  df-in 3897  df-ss 3907  df-pss 3910  df-nul 4275  df-if 4468  df-pw 4544  df-sn 4569  df-pr 4571  df-tp 4573  df-op 4575  df-uni 4852  df-iun 4936  df-br 5087  df-opab 5149  df-mpt 5168  df-tr 5194  df-id 5517  df-eprel 5522  df-po 5530  df-so 5531  df-fr 5575  df-we 5577  df-xp 5628  df-rel 5629  df-cnv 5630  df-co 5631  df-dm 5632  df-rn 5633  df-res 5634  df-ima 5635  df-pred 6257  df-ord 6318  df-on 6319  df-lim 6320  df-suc 6321  df-iota 6446  df-fun 6492  df-fn 6493  df-f 6494  df-f1 6495  df-fo 6496  df-f1o 6497  df-fv 6498  df-riota 7315  df-ov 7361  df-oprab 7362  df-mpo 7363  df-om 7809  df-1st 7933  df-2nd 7934  df-frecs 8222  df-wrecs 8253  df-recs 8302  df-rdg 8340  df-1o 8396  df-er 8634  df-map 8766  df-ixp 8837  df-en 8885  df-dom 8886  df-sdom 8887  df-fin 8888  df-pnf 11169  df-mnf 11170  df-xr 11171  df-ltxr 11172  df-le 11173  df-sub 11367  df-neg 11368  df-nn 12147  df-2 12209  df-3 12210  df-4 12211  df-5 12212  df-6 12213  df-7 12214  df-8 12215  df-9 12216  df-n0 12403  df-z 12490  df-dec 12609  df-uz 12753  df-fz 13425  df-struct 17075  df-slot 17110  df-ndx 17122  df-base 17138  df-hom 17202  df-cco 17203  df-cat 17592  df-cid 17593  df-func 17783  df-idfu 17784  df-nat 17871  df-fuc 17872  df-xpc 18096  df-1stf 18097  df-curf 18138  df-diag 18140  df-thinc 49851  df-termc 49906
This theorem is referenced by:  euendfunc2  49960
  Copyright terms: Public domain W3C validator