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

Theorem arweutermc 49514
Description: If a structure has a unique disjointified arrow, then the structure is a terminal category. (Contributed by Zhi Wang, 20-Oct-2025.)
Assertion
Ref Expression
arweutermc (∃!𝑎 𝑎 ∈ (Arrow‘𝐶) → 𝐶 ∈ TermCat)
Distinct variable group:   𝐶,𝑎

Proof of Theorem arweutermc
Dummy variables 𝑏 𝑥 𝑦 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 arweuthinc 49513 . 2 (∃!𝑎 𝑎 ∈ (Arrow‘𝐶) → 𝐶 ∈ ThinCat)
2 euex 2570 . . . 4 (∃!𝑎 𝑎 ∈ (Arrow‘𝐶) → ∃𝑎 𝑎 ∈ (Arrow‘𝐶))
3 eqid 2729 . . . . . . 7 (Arrow‘𝐶) = (Arrow‘𝐶)
4 eqid 2729 . . . . . . 7 (Base‘𝐶) = (Base‘𝐶)
53, 4arwdm 17991 . . . . . 6 (𝑎 ∈ (Arrow‘𝐶) → (doma𝑎) ∈ (Base‘𝐶))
6 eleq1 2816 . . . . . 6 (𝑥 = (doma𝑎) → (𝑥 ∈ (Base‘𝐶) ↔ (doma𝑎) ∈ (Base‘𝐶)))
75, 5, 6spcedv 3561 . . . . 5 (𝑎 ∈ (Arrow‘𝐶) → ∃𝑥 𝑥 ∈ (Base‘𝐶))
87exlimiv 1930 . . . 4 (∃𝑎 𝑎 ∈ (Arrow‘𝐶) → ∃𝑥 𝑥 ∈ (Base‘𝐶))
92, 8syl 17 . . 3 (∃!𝑎 𝑎 ∈ (Arrow‘𝐶) → ∃𝑥 𝑥 ∈ (Base‘𝐶))
10 eqeq1 2733 . . . . . . 7 (𝑎 = ⟨𝑥, 𝑥, ((Id‘𝐶)‘𝑥)⟩ → (𝑎 = 𝑏 ↔ ⟨𝑥, 𝑥, ((Id‘𝐶)‘𝑥)⟩ = 𝑏))
11 eqeq2 2741 . . . . . . 7 (𝑏 = ⟨𝑦, 𝑦, ((Id‘𝐶)‘𝑦)⟩ → (⟨𝑥, 𝑥, ((Id‘𝐶)‘𝑥)⟩ = 𝑏 ↔ ⟨𝑥, 𝑥, ((Id‘𝐶)‘𝑥)⟩ = ⟨𝑦, 𝑦, ((Id‘𝐶)‘𝑦)⟩))
12 eumo 2571 . . . . . . . . 9 (∃!𝑎 𝑎 ∈ (Arrow‘𝐶) → ∃*𝑎 𝑎 ∈ (Arrow‘𝐶))
1312adantr 480 . . . . . . . 8 ((∃!𝑎 𝑎 ∈ (Arrow‘𝐶) ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → ∃*𝑎 𝑎 ∈ (Arrow‘𝐶))
14 moel 3373 . . . . . . . 8 (∃*𝑎 𝑎 ∈ (Arrow‘𝐶) ↔ ∀𝑎 ∈ (Arrow‘𝐶)∀𝑏 ∈ (Arrow‘𝐶)𝑎 = 𝑏)
1513, 14sylib 218 . . . . . . 7 ((∃!𝑎 𝑎 ∈ (Arrow‘𝐶) ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → ∀𝑎 ∈ (Arrow‘𝐶)∀𝑏 ∈ (Arrow‘𝐶)𝑎 = 𝑏)
16 eqid 2729 . . . . . . . . 9 (Homa𝐶) = (Homa𝐶)
173, 16homarw 17990 . . . . . . . 8 (𝑥(Homa𝐶)𝑥) ⊆ (Arrow‘𝐶)
181adantr 480 . . . . . . . . . 10 ((∃!𝑎 𝑎 ∈ (Arrow‘𝐶) ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → 𝐶 ∈ ThinCat)
1918thinccd 49407 . . . . . . . . 9 ((∃!𝑎 𝑎 ∈ (Arrow‘𝐶) ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → 𝐶 ∈ Cat)
20 eqid 2729 . . . . . . . . 9 (Hom ‘𝐶) = (Hom ‘𝐶)
21 simprl 770 . . . . . . . . 9 ((∃!𝑎 𝑎 ∈ (Arrow‘𝐶) ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → 𝑥 ∈ (Base‘𝐶))
22 eqid 2729 . . . . . . . . . 10 (Id‘𝐶) = (Id‘𝐶)
234, 20, 22, 19, 21catidcl 17625 . . . . . . . . 9 ((∃!𝑎 𝑎 ∈ (Arrow‘𝐶) ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → ((Id‘𝐶)‘𝑥) ∈ (𝑥(Hom ‘𝐶)𝑥))
2416, 4, 19, 20, 21, 21, 23elhomai2 17978 . . . . . . . 8 ((∃!𝑎 𝑎 ∈ (Arrow‘𝐶) ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → ⟨𝑥, 𝑥, ((Id‘𝐶)‘𝑥)⟩ ∈ (𝑥(Homa𝐶)𝑥))
2517, 24sselid 3941 . . . . . . 7 ((∃!𝑎 𝑎 ∈ (Arrow‘𝐶) ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → ⟨𝑥, 𝑥, ((Id‘𝐶)‘𝑥)⟩ ∈ (Arrow‘𝐶))
263, 16homarw 17990 . . . . . . . 8 (𝑦(Homa𝐶)𝑦) ⊆ (Arrow‘𝐶)
27 simprr 772 . . . . . . . . 9 ((∃!𝑎 𝑎 ∈ (Arrow‘𝐶) ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → 𝑦 ∈ (Base‘𝐶))
284, 20, 22, 19, 27catidcl 17625 . . . . . . . . 9 ((∃!𝑎 𝑎 ∈ (Arrow‘𝐶) ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → ((Id‘𝐶)‘𝑦) ∈ (𝑦(Hom ‘𝐶)𝑦))
2916, 4, 19, 20, 27, 27, 28elhomai2 17978 . . . . . . . 8 ((∃!𝑎 𝑎 ∈ (Arrow‘𝐶) ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → ⟨𝑦, 𝑦, ((Id‘𝐶)‘𝑦)⟩ ∈ (𝑦(Homa𝐶)𝑦))
3026, 29sselid 3941 . . . . . . 7 ((∃!𝑎 𝑎 ∈ (Arrow‘𝐶) ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → ⟨𝑦, 𝑦, ((Id‘𝐶)‘𝑦)⟩ ∈ (Arrow‘𝐶))
3110, 11, 15, 25, 30rspc2dv 3600 . . . . . 6 ((∃!𝑎 𝑎 ∈ (Arrow‘𝐶) ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → ⟨𝑥, 𝑥, ((Id‘𝐶)‘𝑥)⟩ = ⟨𝑦, 𝑦, ((Id‘𝐶)‘𝑦)⟩)
32 vex 3448 . . . . . . . 8 𝑥 ∈ V
33 fvex 6854 . . . . . . . 8 ((Id‘𝐶)‘𝑥) ∈ V
3432, 32, 33otth 5439 . . . . . . 7 (⟨𝑥, 𝑥, ((Id‘𝐶)‘𝑥)⟩ = ⟨𝑦, 𝑦, ((Id‘𝐶)‘𝑦)⟩ ↔ (𝑥 = 𝑦𝑥 = 𝑦 ∧ ((Id‘𝐶)‘𝑥) = ((Id‘𝐶)‘𝑦)))
3534simp1bi 1145 . . . . . 6 (⟨𝑥, 𝑥, ((Id‘𝐶)‘𝑥)⟩ = ⟨𝑦, 𝑦, ((Id‘𝐶)‘𝑦)⟩ → 𝑥 = 𝑦)
3631, 35syl 17 . . . . 5 ((∃!𝑎 𝑎 ∈ (Arrow‘𝐶) ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → 𝑥 = 𝑦)
3736ralrimivva 3178 . . . 4 (∃!𝑎 𝑎 ∈ (Arrow‘𝐶) → ∀𝑥 ∈ (Base‘𝐶)∀𝑦 ∈ (Base‘𝐶)𝑥 = 𝑦)
38 moel 3373 . . . 4 (∃*𝑥 𝑥 ∈ (Base‘𝐶) ↔ ∀𝑥 ∈ (Base‘𝐶)∀𝑦 ∈ (Base‘𝐶)𝑥 = 𝑦)
3937, 38sylibr 234 . . 3 (∃!𝑎 𝑎 ∈ (Arrow‘𝐶) → ∃*𝑥 𝑥 ∈ (Base‘𝐶))
40 df-eu 2562 . . 3 (∃!𝑥 𝑥 ∈ (Base‘𝐶) ↔ (∃𝑥 𝑥 ∈ (Base‘𝐶) ∧ ∃*𝑥 𝑥 ∈ (Base‘𝐶)))
419, 39, 40sylanbrc 583 . 2 (∃!𝑎 𝑎 ∈ (Arrow‘𝐶) → ∃!𝑥 𝑥 ∈ (Base‘𝐶))
424istermc2 49459 . 2 (𝐶 ∈ TermCat ↔ (𝐶 ∈ ThinCat ∧ ∃!𝑥 𝑥 ∈ (Base‘𝐶)))
431, 41, 42sylanbrc 583 1 (∃!𝑎 𝑎 ∈ (Arrow‘𝐶) → 𝐶 ∈ TermCat)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 395   = wceq 1540  wex 1779  wcel 2109  ∃*wmo 2531  ∃!weu 2561  wral 3044  cotp 4593  cfv 6500  (class class class)co 7370  Basecbs 17157  Hom chom 17209  Idccid 17608  domacdoma 17964  Arrowcarw 17966  Homachoma 17967  ThinCatcthinc 49401  TermCatctermc 49456
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 5229  ax-sep 5246  ax-nul 5256  ax-pow 5315  ax-pr 5382  ax-un 7692
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  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-ral 3045  df-rex 3054  df-rmo 3351  df-reu 3352  df-rab 3403  df-v 3446  df-sbc 3751  df-csb 3860  df-dif 3914  df-un 3916  df-in 3918  df-ss 3928  df-nul 4293  df-if 4485  df-pw 4561  df-sn 4586  df-pr 4588  df-op 4592  df-ot 4594  df-uni 4868  df-iun 4953  df-br 5103  df-opab 5165  df-mpt 5184  df-id 5526  df-xp 5637  df-rel 5638  df-cnv 5639  df-co 5640  df-dm 5641  df-rn 5642  df-res 5643  df-ima 5644  df-iota 6453  df-fun 6502  df-fn 6503  df-f 6504  df-f1 6505  df-fo 6506  df-f1o 6507  df-fv 6508  df-riota 7327  df-ov 7373  df-1st 7948  df-2nd 7949  df-cat 17611  df-cid 17612  df-doma 17968  df-coda 17969  df-homa 17970  df-arw 17971  df-thinc 49402  df-termc 49457
This theorem is referenced by:  dftermc3  49515
  Copyright terms: Public domain W3C validator