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 49531
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 49523. (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 2729 . . 3 (idfunc𝐶) = (idfunc𝐶)
5 eqid 2729 . . 3 (𝐶Δfunc𝐶) = (𝐶Δfunc𝐶)
6 euendfunc.f . . . . . 6 (𝜑 → ∃!𝑓 𝑓 ∈ (𝐶 Func 𝐶))
76adantr 480 . . . . 5 ((𝜑𝑥𝐵) → ∃!𝑓 𝑓 ∈ (𝐶 Func 𝐶))
8 euex 2570 . . . . 5 (∃!𝑓 𝑓 ∈ (𝐶 Func 𝐶) → ∃𝑓 𝑓 ∈ (𝐶 Func 𝐶))
97, 8syl 17 . . . 4 ((𝜑𝑥𝐵) → ∃𝑓 𝑓 ∈ (𝐶 Func 𝐶))
10 funcrcl 17770 . . . . . 6 (𝑓 ∈ (𝐶 Func 𝐶) → (𝐶 ∈ Cat ∧ 𝐶 ∈ Cat))
1110simpld 494 . . . . 5 (𝑓 ∈ (𝐶 Func 𝐶) → 𝐶 ∈ Cat)
1211exlimiv 1930 . . . 4 (∃𝑓 𝑓 ∈ (𝐶 Func 𝐶) → 𝐶 ∈ Cat)
139, 12syl 17 . . 3 ((𝜑𝑥𝐵) → 𝐶 ∈ Cat)
14 euendfunc.b . . 3 𝐵 = (Base‘𝐶)
15 simpr 484 . . 3 ((𝜑𝑥𝐵) → 𝑥𝐵)
16 eqid 2729 . . 3 ((1st ‘(𝐶Δfunc𝐶))‘𝑥) = ((1st ‘(𝐶Δfunc𝐶))‘𝑥)
174idfucl 17788 . . . . 5 (𝐶 ∈ Cat → (idfunc𝐶) ∈ (𝐶 Func 𝐶))
1813, 17syl 17 . . . 4 ((𝜑𝑥𝐵) → (idfunc𝐶) ∈ (𝐶 Func 𝐶))
195, 13, 13, 14, 15, 16diag1cl 18148 . . . 4 ((𝜑𝑥𝐵) → ((1st ‘(𝐶Δfunc𝐶))‘𝑥) ∈ (𝐶 Func 𝐶))
20 eumo 2571 . . . . . . 7 (∃!𝑓 𝑓 ∈ (𝐶 Func 𝐶) → ∃*𝑓 𝑓 ∈ (𝐶 Func 𝐶))
217, 20syl 17 . . . . . 6 ((𝜑𝑥𝐵) → ∃*𝑓 𝑓 ∈ (𝐶 Func 𝐶))
22 eleq1w 2811 . . . . . . 7 (𝑓 = 𝑔 → (𝑓 ∈ (𝐶 Func 𝐶) ↔ 𝑔 ∈ (𝐶 Func 𝐶)))
2322mo4 2559 . . . . . 6 (∃*𝑓 𝑓 ∈ (𝐶 Func 𝐶) ↔ ∀𝑓𝑔((𝑓 ∈ (𝐶 Func 𝐶) ∧ 𝑔 ∈ (𝐶 Func 𝐶)) → 𝑓 = 𝑔))
2421, 23sylib 218 . . . . 5 ((𝜑𝑥𝐵) → ∀𝑓𝑔((𝑓 ∈ (𝐶 Func 𝐶) ∧ 𝑔 ∈ (𝐶 Func 𝐶)) → 𝑓 = 𝑔))
25 fvex 6835 . . . . . 6 (idfunc𝐶) ∈ V
26 fvex 6835 . . . . . 6 ((1st ‘(𝐶Δfunc𝐶))‘𝑥) ∈ V
27 simpl 482 . . . . . . . . . 10 ((𝑓 = (idfunc𝐶) ∧ 𝑔 = ((1st ‘(𝐶Δfunc𝐶))‘𝑥)) → 𝑓 = (idfunc𝐶))
2827eleq1d 2813 . . . . . . . . 9 ((𝑓 = (idfunc𝐶) ∧ 𝑔 = ((1st ‘(𝐶Δfunc𝐶))‘𝑥)) → (𝑓 ∈ (𝐶 Func 𝐶) ↔ (idfunc𝐶) ∈ (𝐶 Func 𝐶)))
29 simpr 484 . . . . . . . . . 10 ((𝑓 = (idfunc𝐶) ∧ 𝑔 = ((1st ‘(𝐶Δfunc𝐶))‘𝑥)) → 𝑔 = ((1st ‘(𝐶Δfunc𝐶))‘𝑥))
3029eleq1d 2813 . . . . . . . . 9 ((𝑓 = (idfunc𝐶) ∧ 𝑔 = ((1st ‘(𝐶Δfunc𝐶))‘𝑥)) → (𝑔 ∈ (𝐶 Func 𝐶) ↔ ((1st ‘(𝐶Δfunc𝐶))‘𝑥) ∈ (𝐶 Func 𝐶)))
3128, 30anbi12d 632 . . . . . . . 8 ((𝑓 = (idfunc𝐶) ∧ 𝑔 = ((1st ‘(𝐶Δfunc𝐶))‘𝑥)) → ((𝑓 ∈ (𝐶 Func 𝐶) ∧ 𝑔 ∈ (𝐶 Func 𝐶)) ↔ ((idfunc𝐶) ∈ (𝐶 Func 𝐶) ∧ ((1st ‘(𝐶Δfunc𝐶))‘𝑥) ∈ (𝐶 Func 𝐶))))
32 eqeq12 2746 . . . . . . . 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 3555 . . . . . 6 (((idfunc𝐶) ∈ V ∧ ((1st ‘(𝐶Δfunc𝐶))‘𝑥) ∈ V) → (∀𝑓𝑔((𝑓 ∈ (𝐶 Func 𝐶) ∧ 𝑔 ∈ (𝐶 Func 𝐶)) → 𝑓 = 𝑔) → (((idfunc𝐶) ∈ (𝐶 Func 𝐶) ∧ ((1st ‘(𝐶Δfunc𝐶))‘𝑥) ∈ (𝐶 Func 𝐶)) → (idfunc𝐶) = ((1st ‘(𝐶Δfunc𝐶))‘𝑥))))
3525, 26, 34mp2an 692 . . . . 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 699 . . 3 ((𝜑𝑥𝐵) → (idfunc𝐶) = ((1st ‘(𝐶Δfunc𝐶))‘𝑥))
384, 5, 13, 14, 15, 16, 37idfudiag1 49530 . 2 ((𝜑𝑥𝐵) → 𝐶 ∈ TermCat)
393, 38exlimddv 1935 1 (𝜑𝐶 ∈ TermCat)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 395  wal 1538   = wceq 1540  wex 1779  wcel 2109  ∃*wmo 2531  ∃!weu 2561  wne 2925  Vcvv 3436  c0 4284  cfv 6482  (class class class)co 7349  1st c1st 7922  Basecbs 17120  Catccat 17570   Func cfunc 17761  idfunccidfu 17762  Δfunccdiag 18118  TermCatctermc 49477
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1795  ax-4 1809  ax-5 1910  ax-6 1967  ax-7 2008  ax-8 2111  ax-9 2119  ax-10 2142  ax-11 2158  ax-12 2178  ax-ext 2701  ax-rep 5218  ax-sep 5235  ax-nul 5245  ax-pow 5304  ax-pr 5371  ax-un 7671  ax-cnex 11065  ax-resscn 11066  ax-1cn 11067  ax-icn 11068  ax-addcl 11069  ax-addrcl 11070  ax-mulcl 11071  ax-mulrcl 11072  ax-mulcom 11073  ax-addass 11074  ax-mulass 11075  ax-distr 11076  ax-i2m1 11077  ax-1ne0 11078  ax-1rid 11079  ax-rnegex 11080  ax-rrecex 11081  ax-cnre 11082  ax-pre-lttri 11083  ax-pre-lttrn 11084  ax-pre-ltadd 11085  ax-pre-mulgt0 11086
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3or 1087  df-3an 1088  df-tru 1543  df-fal 1553  df-ex 1780  df-nf 1784  df-sb 2066  df-mo 2533  df-eu 2562  df-clab 2708  df-cleq 2721  df-clel 2803  df-nfc 2878  df-ne 2926  df-nel 3030  df-ral 3045  df-rex 3054  df-rmo 3343  df-reu 3344  df-rab 3395  df-v 3438  df-sbc 3743  df-csb 3852  df-dif 3906  df-un 3908  df-in 3910  df-ss 3920  df-pss 3923  df-nul 4285  df-if 4477  df-pw 4553  df-sn 4578  df-pr 4580  df-tp 4582  df-op 4584  df-uni 4859  df-iun 4943  df-br 5093  df-opab 5155  df-mpt 5174  df-tr 5200  df-id 5514  df-eprel 5519  df-po 5527  df-so 5528  df-fr 5572  df-we 5574  df-xp 5625  df-rel 5626  df-cnv 5627  df-co 5628  df-dm 5629  df-rn 5630  df-res 5631  df-ima 5632  df-pred 6249  df-ord 6310  df-on 6311  df-lim 6312  df-suc 6313  df-iota 6438  df-fun 6484  df-fn 6485  df-f 6486  df-f1 6487  df-fo 6488  df-f1o 6489  df-fv 6490  df-riota 7306  df-ov 7352  df-oprab 7353  df-mpo 7354  df-om 7800  df-1st 7924  df-2nd 7925  df-frecs 8214  df-wrecs 8245  df-recs 8294  df-rdg 8332  df-1o 8388  df-er 8625  df-map 8755  df-ixp 8825  df-en 8873  df-dom 8874  df-sdom 8875  df-fin 8876  df-pnf 11151  df-mnf 11152  df-xr 11153  df-ltxr 11154  df-le 11155  df-sub 11349  df-neg 11350  df-nn 12129  df-2 12191  df-3 12192  df-4 12193  df-5 12194  df-6 12195  df-7 12196  df-8 12197  df-9 12198  df-n0 12385  df-z 12472  df-dec 12592  df-uz 12736  df-fz 13411  df-struct 17058  df-slot 17093  df-ndx 17105  df-base 17121  df-hom 17185  df-cco 17186  df-cat 17574  df-cid 17575  df-func 17765  df-idfu 17766  df-nat 17853  df-fuc 17854  df-xpc 18078  df-1stf 18079  df-curf 18120  df-diag 18122  df-thinc 49423  df-termc 49478
This theorem is referenced by:  euendfunc2  49532
  Copyright terms: Public domain W3C validator