MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  catcoppccl Structured version   Visualization version   GIF version

Theorem catcoppccl 18297
Description: The category of categories for a weak universe is closed under taking opposites. (Contributed by Mario Carneiro, 12-Jan-2017.) (Proof shortened by AV, 13-Oct-2024.)
Hypotheses
Ref Expression
catcoppccl.c 𝐶 = (CatCat‘𝑈)
catcoppccl.b 𝐵 = (Base‘𝐶)
catcoppccl.o 𝑂 = (oppCat‘𝑋)
catcoppccl.1 (𝜑 → 𝑈 ∈ WUni)
catcoppccl.2 (𝜑 → ω ∈ 𝑈)
catcoppccl.3 (𝜑 → 𝑋 ∈ 𝐵)
Assertion
Ref Expression
catcoppccl (𝜑 → 𝑂 ∈ 𝐵)

Proof of Theorem catcoppccl
Dummy variables 𝑥 𝑦 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 catcoppccl.3 . . . . 5 (𝜑 → 𝑋 ∈ 𝐵)
2 eqid 2760 . . . . . 6 (Base‘𝑋) = (Base‘𝑋)
3 eqid 2760 . . . . . 6 (Hom ‘𝑋) = (Hom ‘𝑋)
4 eqid 2760 . . . . . 6 (comp‘𝑋) = (comp‘𝑋)
5 catcoppccl.o . . . . . 6 𝑂 = (oppCat‘𝑋)
62, 3, 4, 5oppcval 17892 . . . . 5 (𝑋 ∈ 𝐵 → 𝑂 = ((𝑋 sSet ⟨(Hom ‘ndx), tpos (Hom ‘𝑋)⟩) sSet ⟨(comp‘ndx), (𝑥 ∈ ((Base‘𝑋) × (Base‘𝑋)), 𝑦 ∈ (Base‘𝑋) ↦ tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)))⟩))
71, 6syl 18 . . . 4 (𝜑 → 𝑂 = ((𝑋 sSet ⟨(Hom ‘ndx), tpos (Hom ‘𝑋)⟩) sSet ⟨(comp‘ndx), (𝑥 ∈ ((Base‘𝑋) × (Base‘𝑋)), 𝑦 ∈ (Base‘𝑋) ↦ tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)))⟩))
8 catcoppccl.1 . . . . 5 (𝜑 → 𝑈 ∈ WUni)
9 catcoppccl.c . . . . . . 7 𝐶 = (CatCat‘𝑈)
10 catcoppccl.b . . . . . . 7 𝐵 = (Base‘𝐶)
119, 10, 8, 1catcbascl 18292 . . . . . 6 (𝜑 → 𝑋 ∈ 𝑈)
12 homid 17588 . . . . . . . 8 Hom = Slot (Hom ‘ndx)
13 catcoppccl.2 . . . . . . . . 9 (𝜑 → ω ∈ 𝑈)
148, 13wunndx 17378 . . . . . . . 8 (𝜑 → ndx ∈ 𝑈)
1512, 8, 14wunstr 17371 . . . . . . 7 (𝜑 → (Hom ‘ndx) ∈ 𝑈)
169, 10, 8, 1catchomcl 18295 . . . . . . . 8 (𝜑 → (Hom ‘𝑋) ∈ 𝑈)
178, 16wuntpos 10822 . . . . . . 7 (𝜑 → tpos (Hom ‘𝑋) ∈ 𝑈)
188, 15, 17wunop 10810 . . . . . 6 (𝜑 → ⟨(Hom ‘ndx), tpos (Hom ‘𝑋)⟩ ∈ 𝑈)
198, 11, 18wunsets 17360 . . . . 5 (𝜑 → (𝑋 sSet ⟨(Hom ‘ndx), tpos (Hom ‘𝑋)⟩) ∈ 𝑈)
20 ccoid 17590 . . . . . . 7 comp = Slot (comp‘ndx)
2120, 8, 14wunstr 17371 . . . . . 6 (𝜑 → (comp‘ndx) ∈ 𝑈)
229, 10, 8, 1catcbaselcl 18294 . . . . . . . . 9 (𝜑 → (Base‘𝑋) ∈ 𝑈)
238, 22, 22wunxp 10812 . . . . . . . 8 (𝜑 → ((Base‘𝑋) × (Base‘𝑋)) ∈ 𝑈)
248, 23, 22wunxp 10812 . . . . . . 7 (𝜑 → (((Base‘𝑋) × (Base‘𝑋)) × (Base‘𝑋)) ∈ 𝑈)
259, 10, 8, 1catcccocl 18296 . . . . . . . . . . . . . 14 (𝜑 → (comp‘𝑋) ∈ 𝑈)
268, 25wunrn 10817 . . . . . . . . . . . . 13 (𝜑 → ran (comp‘𝑋) ∈ 𝑈)
278, 26wununi 10794 . . . . . . . . . . . 12 (𝜑 → ∪ ran (comp‘𝑋) ∈ 𝑈)
288, 27wundm 10816 . . . . . . . . . . 11 (𝜑 → dom ∪ ran (comp‘𝑋) ∈ 𝑈)
298, 28wuncnv 10818 . . . . . . . . . 10 (𝜑 → ◡dom ∪ ran (comp‘𝑋) ∈ 𝑈)
308wun0 10806 . . . . . . . . . . 11 (𝜑 → ∅ ∈ 𝑈)
318, 30wunsn 10804 . . . . . . . . . 10 (𝜑 → {∅} ∈ 𝑈)
328, 29, 31wunun 10798 . . . . . . . . 9 (𝜑 → (◡dom ∪ ran (comp‘𝑋) ∪ {∅}) ∈ 𝑈)
338, 27wunrn 10817 . . . . . . . . 9 (𝜑 → ran ∪ ran (comp‘𝑋) ∈ 𝑈)
348, 32, 33wunxp 10812 . . . . . . . 8 (𝜑 → ((◡dom ∪ ran (comp‘𝑋) ∪ {∅}) × ran ∪ ran (comp‘𝑋)) ∈ 𝑈)
358, 34wunpw 10795 . . . . . . 7 (𝜑 → 𝒫 ((◡dom ∪ ran (comp‘𝑋) ∪ {∅}) × ran ∪ ran (comp‘𝑋)) ∈ 𝑈)
36 tposssxp 8250 . . . . . . . . . . . 12 tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ⊆ ((◡dom (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ∪ {∅}) × ran (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)))
37 ovssunirn 7456 . . . . . . . . . . . . . . 15 (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ⊆ ∪ ran (comp‘𝑋)
38 dmss 5883 . . . . . . . . . . . . . . 15 ((⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ⊆ ∪ ran (comp‘𝑋) → dom (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ⊆ dom ∪ ran (comp‘𝑋))
3937, 38ax-mp 5 . . . . . . . . . . . . . 14 dom (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ⊆ dom ∪ ran (comp‘𝑋)
40 cnvss 5849 . . . . . . . . . . . . . 14 (dom (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ⊆ dom ∪ ran (comp‘𝑋) → ◡dom (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ⊆ ◡dom ∪ ran (comp‘𝑋))
41 unss1 4183 . . . . . . . . . . . . . 14 (◡dom (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ⊆ ◡dom ∪ ran (comp‘𝑋) → (◡dom (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ∪ {∅}) ⊆ (◡dom ∪ ran (comp‘𝑋) ∪ {∅}))
4239, 40, 41mp2b 10 . . . . . . . . . . . . 13 (◡dom (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ∪ {∅}) ⊆ (◡dom ∪ ran (comp‘𝑋) ∪ {∅})
4337rnssi 5921 . . . . . . . . . . . . 13 ran (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ⊆ ran ∪ ran (comp‘𝑋)
44 xpss12 5665 . . . . . . . . . . . . 13 (((◡dom (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ∪ {∅}) ⊆ (◡dom ∪ ran (comp‘𝑋) ∪ {∅}) ∧ ran (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ⊆ ran ∪ ran (comp‘𝑋)) → ((◡dom (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ∪ {∅}) × ran (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥))) ⊆ ((◡dom ∪ ran (comp‘𝑋) ∪ {∅}) × ran ∪ ran (comp‘𝑋)))
4542, 43, 44mp2an 705 . . . . . . . . . . . 12 ((◡dom (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ∪ {∅}) × ran (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥))) ⊆ ((◡dom ∪ ran (comp‘𝑋) ∪ {∅}) × ran ∪ ran (comp‘𝑋))
4636, 45sstri 3917 . . . . . . . . . . 11 tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ⊆ ((◡dom ∪ ran (comp‘𝑋) ∪ {∅}) × ran ∪ ran (comp‘𝑋))
47 elpw2g 5294 . . . . . . . . . . . 12 (((◡dom ∪ ran (comp‘𝑋) ∪ {∅}) × ran ∪ ran (comp‘𝑋)) ∈ 𝑈 → (tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ∈ 𝒫 ((◡dom ∪ ran (comp‘𝑋) ∪ {∅}) × ran ∪ ran (comp‘𝑋)) ↔ tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ⊆ ((◡dom ∪ ran (comp‘𝑋) ∪ {∅}) × ran ∪ ran (comp‘𝑋))))
4834, 47syl 18 . . . . . . . . . . 11 (𝜑 → (tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ∈ 𝒫 ((◡dom ∪ ran (comp‘𝑋) ∪ {∅}) × ran ∪ ran (comp‘𝑋)) ↔ tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ⊆ ((◡dom ∪ ran (comp‘𝑋) ∪ {∅}) × ran ∪ ran (comp‘𝑋))))
4946, 48mpbiri 261 . . . . . . . . . 10 (𝜑 → tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ∈ 𝒫 ((◡dom ∪ ran (comp‘𝑋) ∪ {∅}) × ran ∪ ran (comp‘𝑋)))
5049ralrimivw 3158 . . . . . . . . 9 (𝜑 → ∀𝑦 ∈ (Base‘𝑋)tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ∈ 𝒫 ((◡dom ∪ ran (comp‘𝑋) ∪ {∅}) × ran ∪ ran (comp‘𝑋)))
5150ralrimivw 3158 . . . . . . . 8 (𝜑 → ∀𝑥 ∈ ((Base‘𝑋) × (Base‘𝑋))∀𝑦 ∈ (Base‘𝑋)tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ∈ 𝒫 ((◡dom ∪ ran (comp‘𝑋) ∪ {∅}) × ran ∪ ran (comp‘𝑋)))
52 eqid 2760 . . . . . . . . 9 (𝑥 ∈ ((Base‘𝑋) × (Base‘𝑋)), 𝑦 ∈ (Base‘𝑋) ↦ tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥))) = (𝑥 ∈ ((Base‘𝑋) × (Base‘𝑋)), 𝑦 ∈ (Base‘𝑋) ↦ tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)))
5352fmpo 8079 . . . . . . . 8 (∀𝑥 ∈ ((Base‘𝑋) × (Base‘𝑋))∀𝑦 ∈ (Base‘𝑋)tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ∈ 𝒫 ((◡dom ∪ ran (comp‘𝑋) ∪ {∅}) × ran ∪ ran (comp‘𝑋)) ↔ (𝑥 ∈ ((Base‘𝑋) × (Base‘𝑋)), 𝑦 ∈ (Base‘𝑋) ↦ tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥))):(((Base‘𝑋) × (Base‘𝑋)) × (Base‘𝑋))⟶𝒫 ((◡dom ∪ ran (comp‘𝑋) ∪ {∅}) × ran ∪ ran (comp‘𝑋)))
5451, 53sylib 221 . . . . . . 7 (𝜑 → (𝑥 ∈ ((Base‘𝑋) × (Base‘𝑋)), 𝑦 ∈ (Base‘𝑋) ↦ tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥))):(((Base‘𝑋) × (Base‘𝑋)) × (Base‘𝑋))⟶𝒫 ((◡dom ∪ ran (comp‘𝑋) ∪ {∅}) × ran ∪ ran (comp‘𝑋)))
558, 24, 35, 54wunf 10815 . . . . . 6 (𝜑 → (𝑥 ∈ ((Base‘𝑋) × (Base‘𝑋)), 𝑦 ∈ (Base‘𝑋) ↦ tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥))) ∈ 𝑈)
568, 21, 55wunop 10810 . . . . 5 (𝜑 → ⟨(comp‘ndx), (𝑥 ∈ ((Base‘𝑋) × (Base‘𝑋)), 𝑦 ∈ (Base‘𝑋) ↦ tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)))⟩ ∈ 𝑈)
578, 19, 56wunsets 17360 . . . 4 (𝜑 → ((𝑋 sSet ⟨(Hom ‘ndx), tpos (Hom ‘𝑋)⟩) sSet ⟨(comp‘ndx), (𝑥 ∈ ((Base‘𝑋) × (Base‘𝑋)), 𝑦 ∈ (Base‘𝑋) ↦ tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)))⟩) ∈ 𝑈)
587, 57eqeltrd 2860 . . 3 (𝜑 → 𝑂 ∈ 𝑈)
599, 10, 8catcbas 18281 . . . . . 6 (𝜑 → 𝐵 = (𝑈 ∩ Cat))
601, 59eleqtrd 2862 . . . . 5 (𝜑 → 𝑋 ∈ (𝑈 ∩ Cat))
6160elin2d 4102 . . . 4 (𝜑 → 𝑋 ∈ Cat)
625oppccat 17901 . . . 4 (𝑋 ∈ Cat → 𝑂 ∈ Cat)
6361, 62syl 18 . . 3 (𝜑 → 𝑂 ∈ Cat)
6458, 63elind 4097 . 2 (𝜑 → 𝑂 ∈ (𝑈 ∩ Cat))
6564, 59eleqtrrd 2863 1 (𝜑 → 𝑂 ∈ 𝐵)
Colors of variables:    wff setvar class
This proof depends on syntax axioms:   → wi 4   ↔ wb 209   = wceq 1569   ∈ wcel 2144  ∀wral 3076   ⊆ wss 3895   ∩ cin 4089   ∪ cun 4149  ∅c0 4278  𝒫 cpw 4556  {csn 4584  ⟨cop 4834  ∪ cuni 4866   × cxp 5648  ◡ccnv 5649  dom cdm 5650  ran crn 5651  ⟶wf 6534  ‘cfv 6538  (class class class)co 7420   ∈ cmpo 7422  ωcom 7877  1st c1st 7999  2nd c2nd 8000  tpos ctpos 8245  WUnicwun 10788   sSet csts 17346  ndxcnx 17376  Basecbs 17392  Hom chom 17444  compcco 17445  Catccat 17843  oppCatcoppc 17890  CatCatccatc 18278
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1827  ax-4 1841  ax-5 1942  ax-6 1999  ax-7 2040  ax-8 2146  ax-9 2154  ax-10 2177  ax-11 2193  ax-12 2212  ax-ext 2732  ax-rep 5231  ax-sep 5248  ax-nul 5259  ax-pow 5326  ax-pr 5390  ax-un 7751  ax-inf2 9645  ax-cnex 11259  ax-resscn 11260  ax-1cn 11261  ax-icn 11262  ax-addcl 11263  ax-addrcl 11264  ax-mulcl 11265  ax-mulrcl 11266  ax-mulcom 11267  ax-addass 11268  ax-mulass 11269  ax-distr 11270  ax-i2m1 11271  ax-1ne0 11272  ax-1rid 11273  ax-rnegex 11274  ax-rrecex 11275  ax-cnre 11276  ax-pre-lttri 11277  ax-pre-lttrn 11278  ax-pre-ltadd 11279  ax-pre-mulgt0 11280
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1572  df-fal 1582  df-ex 1812  df-nf 1816  df-sb 2099  df-mo 2564  df-eu 2594  df-clab 2739  df-cleq 2752  df-clel 2835  df-nfc 2909  df-ne 2956  df-nel 3062  df-ral 3077  df-rex 3087  df-rmo 3365  df-reu 3366  df-rab 3413  df-v 3452  df-sbc 3739  df-csb 3847  df-ss 3896  df-pss 4014  df-dif 4047  df-in 4091  df-un 4151  df-nul 4279  df-if 4482  df-pw 4558  df-sn 4585  df-pr 4587  df-tp 4589  df-op 4835  df-uni 4867  df-int 4907  df-iun 4952  df-br 5103  df-opab 5167  df-mpt 5186  df-tr 5212  df-id 5545  df-eprel 5550  df-po 5558  df-so 5559  df-fr 5603  df-we 5605  df-xp 5656  df-rel 5657  df-cnv 5658  df-co 5659  df-dm 5660  df-rn 5661  df-res 5662  df-ima 5663  df-pred 6304  df-ord 6365  df-on 6366  df-lim 6367  df-suc 6368  df-iota 6494  df-fun 6540  df-fn 6541  df-f 6542  df-f1 6543  df-fo 6544  df-f1o 6545  df-fv 6546  df-riota 7377  df-ov 7423  df-oprab 7424  df-mpo 7425  df-om 7878  df-1st 8001  df-2nd 8002  df-tpos 8246  df-frecs 8302  df-wrecs 8333  df-recs 8382  df-rdg 8421  df-1o 8479  df-oadd 8483  df-omul 8484  df-er 8720  df-ec 8722  df-qs 8726  df-map 8852  df-pm 8853  df-en 8977  df-dom 8978  df-sdom 8979  df-fin 8980  df-wun 10790  df-ni 10960  df-pli 10961  df-mi 10962  df-lti 10963  df-plpq 10996  df-mpq 10997  df-ltpq 10998  df-enq 10999  df-nq 11000  df-erq 11001  df-plq 11002  df-mq 11003  df-1nq 11004  df-rq 11005  df-ltnq 11006  df-np 11069  df-plp 11071  df-ltp 11073  df-enr 11143  df-nr 11144  df-c 11209  df-pnf 11348  df-mnf 11349  df-xr 11350  df-ltxr 11351  df-le 11352  df-sub 11546  df-neg 11547  df-nn 12339  df-2 12408  df-3 12409  df-4 12410  df-5 12411  df-6 12412  df-7 12413  df-8 12414  df-9 12415  df-n0 12610  df-z 12697  df-dec 12818  df-uz 12969  df-fz 13643  df-struct 17330  df-sets 17347  df-slot 17365  df-ndx 17377  df-base 17393  df-hom 17457  df-cco 17458  df-cat 17847  df-cid 17848  df-oppc 17891  df-catc 18279
This theorem is used by: (None)
  Copyright terms: Public domain W3C validator