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

Theorem termc2 50984
Description: If there exists a unique functor from both the category itself and the trivial category, then the category is terminal. Note that the converse also holds, so that it is a biconditional. See the proof of termc 50985 for hints. See also eufunc 50988 and euendfunc2 50993 for some insights on why two categories are sufficient. (Contributed by Zhi Wang, 18-Oct-2025.) (Proof shortened by Zhi Wang, 20-Oct-2025.)
Assertion
Ref Expression
termc2 (∀𝑑 ∈ ({𝐶, (SetCat‘1o)} ∩ Cat)∃!𝑓 𝑓 ∈ (𝑑 Func 𝐶) → 𝐶 ∈ TermCat)
Distinct variable group:   𝐶,𝑑,𝑓

Proof of Theorem termc2
StepHypRef Expression
1 eqid 2763 . 2 (CatCat‘{𝐶, (SetCat‘1o)}) = (CatCat‘{𝐶, (SetCat‘1o)})
2 fvex 6929 . . . . . 6 (SetCat‘1o) ∈ V
32prid2 4726 . . . . 5 (SetCat‘1o) ∈ {𝐶, (SetCat‘1o)}
4 setc1oterm 50957 . . . . 5 (SetCat‘1o) ∈ TermCat
53, 4elini 4099 . . . 4 (SetCat‘1o) ∈ ({𝐶, (SetCat‘1o)} ∩ TermCat)
65ne0ii 4293 . . 3 ({𝐶, (SetCat‘1o)} ∩ TermCat) ≠ ∅
76a1i 11 . 2 (∀𝑑 ∈ ({𝐶, (SetCat‘1o)} ∩ Cat)∃!𝑓 𝑓 ∈ (𝑑 Func 𝐶) → ({𝐶, (SetCat‘1o)} ∩ TermCat) ≠ ∅)
84a1i 11 . . . . . . . . 9 (⊤ → (SetCat‘1o) ∈ TermCat)
98termccatd 50945 . . . . . . . 8 (⊤ → (SetCat‘1o) ∈ Cat)
109mptru 1577 . . . . . . 7 (SetCat‘1o) ∈ Cat
113, 10elini 4099 . . . . . 6 (SetCat‘1o) ∈ ({𝐶, (SetCat‘1o)} ∩ Cat)
12 oveq1 7458 . . . . . . . . 9 (𝑑 = (SetCat‘1o) → (𝑑 Func 𝐶) = ((SetCat‘1o) Func 𝐶))
1312eleq2d 2850 . . . . . . . 8 (𝑑 = (SetCat‘1o) → (𝑓 ∈ (𝑑 Func 𝐶) ↔ 𝑓 ∈ ((SetCat‘1o) Func 𝐶)))
1413eubidv 2614 . . . . . . 7 (𝑑 = (SetCat‘1o) → (∃!𝑓 𝑓 ∈ (𝑑 Func 𝐶) ↔ ∃!𝑓 𝑓 ∈ ((SetCat‘1o) Func 𝐶)))
1514rspcv 3576 . . . . . 6 ((SetCat‘1o) ∈ ({𝐶, (SetCat‘1o)} ∩ Cat) → (∀𝑑 ∈ ({𝐶, (SetCat‘1o)} ∩ Cat)∃!𝑓 𝑓 ∈ (𝑑 Func 𝐶) → ∃!𝑓 𝑓 ∈ ((SetCat‘1o) Func 𝐶)))
1611, 15ax-mp 5 . . . . 5 (∀𝑑 ∈ ({𝐶, (SetCat‘1o)} ∩ Cat)∃!𝑓 𝑓 ∈ (𝑑 Func 𝐶) → ∃!𝑓 𝑓 ∈ ((SetCat‘1o) Func 𝐶))
17 euen1b 9093 . . . . 5 (((SetCat‘1o) Func 𝐶) ≈ 1o ↔ ∃!𝑓 𝑓 ∈ ((SetCat‘1o) Func 𝐶))
1816, 17sylibr 237 . . . 4 (∀𝑑 ∈ ({𝐶, (SetCat‘1o)} ∩ Cat)∃!𝑓 𝑓 ∈ (𝑑 Func 𝐶) → ((SetCat‘1o) Func 𝐶) ≈ 1o)
19 eqid 2763 . . . . . . . . 9 (Base‘(CatCat‘{𝐶, (SetCat‘1o)})) = (Base‘(CatCat‘{𝐶, (SetCat‘1o)}))
20 prex 5403 . . . . . . . . . 10 {𝐶, (SetCat‘1o)} ∈ V
2120a1i 11 . . . . . . . . 9 (⊤ → {𝐶, (SetCat‘1o)} ∈ V)
221, 19, 21catcbas 18326 . . . . . . . 8 (⊤ → (Base‘(CatCat‘{𝐶, (SetCat‘1o)})) = ({𝐶, (SetCat‘1o)} ∩ Cat))
2322mptru 1577 . . . . . . 7 (Base‘(CatCat‘{𝐶, (SetCat‘1o)})) = ({𝐶, (SetCat‘1o)} ∩ Cat)
2423eqcomi 2772 . . . . . 6 ({𝐶, (SetCat‘1o)} ∩ Cat) = (Base‘(CatCat‘{𝐶, (SetCat‘1o)}))
25 eqid 2763 . . . . . 6 (Hom ‘(CatCat‘{𝐶, (SetCat‘1o)})) = (Hom ‘(CatCat‘{𝐶, (SetCat‘1o)}))
261catccat 18333 . . . . . . . 8 ({𝐶, (SetCat‘1o)} ∈ V → (CatCat‘{𝐶, (SetCat‘1o)}) ∈ Cat)
2720, 26ax-mp 5 . . . . . . 7 (CatCat‘{𝐶, (SetCat‘1o)}) ∈ Cat
2827a1i 11 . . . . . 6 (((SetCat‘1o) Func 𝐶) ≈ 1o → (CatCat‘{𝐶, (SetCat‘1o)}) ∈ Cat)
29 euex 2605 . . . . . . . . . 10 (∃!𝑓 𝑓 ∈ ((SetCat‘1o) Func 𝐶) → ∃𝑓 𝑓 ∈ ((SetCat‘1o) Func 𝐶))
30 funcrcl 18088 . . . . . . . . . . . 12 (𝑓 ∈ ((SetCat‘1o) Func 𝐶) → ((SetCat‘1o) ∈ Cat ∧ 𝐶 ∈ Cat))
3130simprd 501 . . . . . . . . . . 11 (𝑓 ∈ ((SetCat‘1o) Func 𝐶) → 𝐶 ∈ Cat)
3231exlimiv 1965 . . . . . . . . . 10 (∃𝑓 𝑓 ∈ ((SetCat‘1o) Func 𝐶) → 𝐶 ∈ Cat)
3329, 32syl 18 . . . . . . . . 9 (∃!𝑓 𝑓 ∈ ((SetCat‘1o) Func 𝐶) → 𝐶 ∈ Cat)
3417, 33sylbi 220 . . . . . . . 8 (((SetCat‘1o) Func 𝐶) ≈ 1o → 𝐶 ∈ Cat)
35 prid1g 4723 . . . . . . . 8 (𝐶 ∈ Cat → 𝐶 ∈ {𝐶, (SetCat‘1o)})
3634, 35syl 18 . . . . . . 7 (((SetCat‘1o) Func 𝐶) ≈ 1o → 𝐶 ∈ {𝐶, (SetCat‘1o)})
3736, 34elind 4100 . . . . . 6 (((SetCat‘1o) Func 𝐶) ≈ 1o → 𝐶 ∈ ({𝐶, (SetCat‘1o)} ∩ Cat))
3824, 25, 28, 37istermo 18222 . . . . 5 (((SetCat‘1o) Func 𝐶) ≈ 1o → (𝐶 ∈ (TermO‘(CatCat‘{𝐶, (SetCat‘1o)})) ↔ ∀𝑑 ∈ ({𝐶, (SetCat‘1o)} ∩ Cat)∃!𝑓 𝑓 ∈ (𝑑(Hom ‘(CatCat‘{𝐶, (SetCat‘1o)}))𝐶)))
3920a1i 11 . . . . . . . . 9 ((((SetCat‘1o) Func 𝐶) ≈ 1o ∧ 𝑑 ∈ ({𝐶, (SetCat‘1o)} ∩ Cat)) → {𝐶, (SetCat‘1o)} ∈ V)
40 simpr 490 . . . . . . . . 9 ((((SetCat‘1o) Func 𝐶) ≈ 1o ∧ 𝑑 ∈ ({𝐶, (SetCat‘1o)} ∩ Cat)) → 𝑑 ∈ ({𝐶, (SetCat‘1o)} ∩ Cat))
4137adantr 486 . . . . . . . . 9 ((((SetCat‘1o) Func 𝐶) ≈ 1o ∧ 𝑑 ∈ ({𝐶, (SetCat‘1o)} ∩ Cat)) → 𝐶 ∈ ({𝐶, (SetCat‘1o)} ∩ Cat))
421, 24, 39, 25, 40, 41catchom 18328 . . . . . . . 8 ((((SetCat‘1o) Func 𝐶) ≈ 1o ∧ 𝑑 ∈ ({𝐶, (SetCat‘1o)} ∩ Cat)) → (𝑑(Hom ‘(CatCat‘{𝐶, (SetCat‘1o)}))𝐶) = (𝑑 Func 𝐶))
4342eleq2d 2850 . . . . . . 7 ((((SetCat‘1o) Func 𝐶) ≈ 1o ∧ 𝑑 ∈ ({𝐶, (SetCat‘1o)} ∩ Cat)) → (𝑓 ∈ (𝑑(Hom ‘(CatCat‘{𝐶, (SetCat‘1o)}))𝐶) ↔ 𝑓 ∈ (𝑑 Func 𝐶)))
4443eubidv 2614 . . . . . 6 ((((SetCat‘1o) Func 𝐶) ≈ 1o ∧ 𝑑 ∈ ({𝐶, (SetCat‘1o)} ∩ Cat)) → (∃!𝑓 𝑓 ∈ (𝑑(Hom ‘(CatCat‘{𝐶, (SetCat‘1o)}))𝐶) ↔ ∃!𝑓 𝑓 ∈ (𝑑 Func 𝐶)))
4544ralbidva 3187 . . . . 5 (((SetCat‘1o) Func 𝐶) ≈ 1o → (∀𝑑 ∈ ({𝐶, (SetCat‘1o)} ∩ Cat)∃!𝑓 𝑓 ∈ (𝑑(Hom ‘(CatCat‘{𝐶, (SetCat‘1o)}))𝐶) ↔ ∀𝑑 ∈ ({𝐶, (SetCat‘1o)} ∩ Cat)∃!𝑓 𝑓 ∈ (𝑑 Func 𝐶)))
4638, 45bitrd 282 . . . 4 (((SetCat‘1o) Func 𝐶) ≈ 1o → (𝐶 ∈ (TermO‘(CatCat‘{𝐶, (SetCat‘1o)})) ↔ ∀𝑑 ∈ ({𝐶, (SetCat‘1o)} ∩ Cat)∃!𝑓 𝑓 ∈ (𝑑 Func 𝐶)))
4718, 46syl 18 . . 3 (∀𝑑 ∈ ({𝐶, (SetCat‘1o)} ∩ Cat)∃!𝑓 𝑓 ∈ (𝑑 Func 𝐶) → (𝐶 ∈ (TermO‘(CatCat‘{𝐶, (SetCat‘1o)})) ↔ ∀𝑑 ∈ ({𝐶, (SetCat‘1o)} ∩ Cat)∃!𝑓 𝑓 ∈ (𝑑 Func 𝐶)))
4847ibir 271 . 2 (∀𝑑 ∈ ({𝐶, (SetCat‘1o)} ∩ Cat)∃!𝑓 𝑓 ∈ (𝑑 Func 𝐶) → 𝐶 ∈ (TermO‘(CatCat‘{𝐶, (SetCat‘1o)})))
491, 7, 48termcterm2 50980 1 (∀𝑑 ∈ ({𝐶, (SetCat‘1o)} ∩ Cat)∃!𝑓 𝑓 ∈ (𝑑 Func 𝐶) → 𝐶 ∈ TermCat)
Colors of variables:    wff setvar class
This proof depends on syntax axioms:   → wi 4   ↔ wb 209   ∧ wa 401   = wceq 1570  ⊤wtru 1571  ∃wex 1812   ∈ wcel 2147  ∃!weu 2596   ≠ wne 2959  ∀wral 3080  Vcvv 3454   ∩ cin 4092  ∅c0 4281  {cpr 4590   class class class wbr 5108  ‘cfv 6566  (class class class)co 7451  1oc1o 8507   ≈ cen 9008  Basecbs 17431  Hom chom 17483  Catccat 17888   Func cfunc 18079  TermOctermo 18207  SetCatcsetc 18300  CatCatccatc 18323  TermCatctermc 50938
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 1945  ax-6 2002  ax-7 2043  ax-8 2149  ax-9 2157  ax-10 2180  ax-11 2197  ax-12 2216  ax-ext 2735  ax-rep 5238  ax-sep 5255  ax-nul 5266  ax-pow 5334  ax-pr 5398  ax-un 7783  ax-cnex 11295  ax-resscn 11296  ax-1cn 11297  ax-icn 11298  ax-addcl 11299  ax-addrcl 11300  ax-mulcl 11301  ax-mulrcl 11302  ax-mulcom 11303  ax-addass 11304  ax-mulass 11305  ax-distr 11306  ax-i2m1 11307  ax-1ne0 11308  ax-1rid 11309  ax-rnegex 11310  ax-rrecex 11311  ax-cnre 11312  ax-pre-lttri 11313  ax-pre-lttrn 11314  ax-pre-ltadd 11315  ax-pre-mulgt0 11316
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 2102  df-mo 2567  df-eu 2597  df-clab 2742  df-cleq 2755  df-clel 2839  df-nfc 2913  df-ne 2960  df-nel 3066  df-ral 3081  df-rex 3091  df-rmo 3369  df-reu 3370  df-rab 3417  df-v 3456  df-sbc 3743  df-csb 3852  df-ss 3901  df-pss 4017  df-dif 4050  df-in 4094  df-un 4154  df-nul 4282  df-if 4486  df-pw 4562  df-sn 4589  df-pr 4591  df-tp 4593  df-op 4841  df-uni 4873  df-iun 4958  df-br 5109  df-opab 5174  df-mpt 5193  df-tr 5219  df-id 5553  df-eprel 5558  df-po 5566  df-so 5567  df-fr 5611  df-we 5613  df-xp 5664  df-rel 5665  df-cnv 5666  df-co 5667  df-dm 5668  df-rn 5669  df-res 5670  df-ima 5671  df-pred 6330  df-ord 6391  df-on 6392  df-lim 6393  df-suc 6394  df-iota 6520  df-fun 6568  df-fn 6569  df-f 6570  df-f1 6571  df-fo 6572  df-f1o 6573  df-fv 6574  df-riota 7408  df-ov 7454  df-oprab 7455  df-mpo 7456  df-om 7912  df-1st 8035  df-2nd 8036  df-supp 8215  df-frecs 8337  df-wrecs 8368  df-recs 8417  df-rdg 8456  df-1o 8514  df-er 8755  df-map 8887  df-ixp 8964  df-en 9012  df-dom 9013  df-sdom 9014  df-fin 9015  df-pnf 11384  df-mnf 11385  df-xr 11386  df-ltxr 11387  df-le 11388  df-sub 11582  df-neg 11583  df-nn 12376  df-2 12445  df-3 12446  df-4 12447  df-5 12448  df-6 12449  df-7 12450  df-8 12451  df-9 12452  df-n0 12647  df-z 12734  df-dec 12855  df-uz 13006  df-fz 13680  df-struct 17369  df-slot 17404  df-ndx 17416  df-base 17432  df-hom 17497  df-cco 17498  df-cat 17892  df-cid 17893  df-sect 17972  df-inv 17973  df-iso 17974  df-cic 18021  df-func 18083  df-idfu 18084  df-cofu 18085  df-full 18131  df-fth 18132  df-termo 18210  df-setc 18301  df-catc 18324  df-thinc 50884  df-termc 50939
This theorem is used by:  termc  50985
  Copyright terms: Public domain W3C validator