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

Theorem catcoppccl 18321
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 2763 . . . . . 6 (Base‘𝑋) = (Base‘𝑋)
3 eqid 2763 . . . . . 6 (Hom ‘𝑋) = (Hom ‘𝑋)
4 eqid 2763 . . . . . 6 (comp‘𝑋) = (comp‘𝑋)
5 catcoppccl.o . . . . . 6 𝑂 = (oppCat‘𝑋)
62, 3, 4, 5oppcval 17916 . . . . 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 18316 . . . . . 6 (𝜑 → 𝑋 ∈ 𝑈)
12 homid 17612 . . . . . . . 8 Hom = Slot (Hom ‘ndx)
13 catcoppccl.2 . . . . . . . . 9 (𝜑 → ω ∈ 𝑈)
148, 13wunndx 17402 . . . . . . . 8 (𝜑 → ndx ∈ 𝑈)
1512, 8, 14wunstr 17395 . . . . . . 7 (𝜑 → (Hom ‘ndx) ∈ 𝑈)
169, 10, 8, 1catchomcl 18319 . . . . . . . 8 (𝜑 → (Hom ‘𝑋) ∈ 𝑈)
178, 16wuntpos 10846 . . . . . . 7 (𝜑 → tpos (Hom ‘𝑋) ∈ 𝑈)
188, 15, 17wunop 10834 . . . . . 6 (𝜑 → ⟨(Hom ‘ndx), tpos (Hom ‘𝑋)⟩ ∈ 𝑈)
198, 11, 18wunsets 17384 . . . . 5 (𝜑 → (𝑋 sSet ⟨(Hom ‘ndx), tpos (Hom ‘𝑋)⟩) ∈ 𝑈)
20 ccoid 17614 . . . . . . 7 comp = Slot (comp‘ndx)
2120, 8, 14wunstr 17395 . . . . . 6 (𝜑 → (comp‘ndx) ∈ 𝑈)
229, 10, 8, 1catcbaselcl 18318 . . . . . . . . 9 (𝜑 → (Base‘𝑋) ∈ 𝑈)
238, 22, 22wunxp 10836 . . . . . . . 8 (𝜑 → ((Base‘𝑋) × (Base‘𝑋)) ∈ 𝑈)
248, 23, 22wunxp 10836 . . . . . . 7 (𝜑 → (((Base‘𝑋) × (Base‘𝑋)) × (Base‘𝑋)) ∈ 𝑈)
259, 10, 8, 1catcccocl 18320 . . . . . . . . . . . . . 14 (𝜑 → (comp‘𝑋) ∈ 𝑈)
268, 25wunrn 10841 . . . . . . . . . . . . 13 (𝜑 → ran (comp‘𝑋) ∈ 𝑈)
278, 26wununi 10818 . . . . . . . . . . . 12 (𝜑 → ∪ ran (comp‘𝑋) ∈ 𝑈)
288, 27wundm 10840 . . . . . . . . . . 11 (𝜑 → dom ∪ ran (comp‘𝑋) ∈ 𝑈)
298, 28wuncnv 10842 . . . . . . . . . 10 (𝜑 → ◡dom ∪ ran (comp‘𝑋) ∈ 𝑈)
308wun0 10830 . . . . . . . . . . 11 (𝜑 → ∅ ∈ 𝑈)
318, 30wunsn 10828 . . . . . . . . . 10 (𝜑 → {∅} ∈ 𝑈)
328, 29, 31wunun 10822 . . . . . . . . 9 (𝜑 → (◡dom ∪ ran (comp‘𝑋) ∪ {∅}) ∈ 𝑈)
338, 27wunrn 10841 . . . . . . . . 9 (𝜑 → ran ∪ ran (comp‘𝑋) ∈ 𝑈)
348, 32, 33wunxp 10836 . . . . . . . 8 (𝜑 → ((◡dom ∪ ran (comp‘𝑋) ∪ {∅}) × ran ∪ ran (comp‘𝑋)) ∈ 𝑈)
358, 34wunpw 10819 . . . . . . 7 (𝜑 → 𝒫 ((◡dom ∪ ran (comp‘𝑋) ∪ {∅}) × ran ∪ ran (comp‘𝑋)) ∈ 𝑈)
36 tposssxp 8275 . . . . . . . . . . . 12 tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ⊆ ((◡dom (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ∪ {∅}) × ran (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)))
37 ovssunirn 7479 . . . . . . . . . . . . . . 15 (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ⊆ ∪ ran (comp‘𝑋)
38 dmss 5891 . . . . . . . . . . . . . . 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 5857 . . . . . . . . . . . . . 14 (dom (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ⊆ dom ∪ ran (comp‘𝑋) → ◡dom (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ⊆ ◡dom ∪ ran (comp‘𝑋))
41 unss1 4186 . . . . . . . . . . . . . 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 5929 . . . . . . . . . . . . 13 ran (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ⊆ ran ∪ ran (comp‘𝑋)
44 xpss12 5670 . . . . . . . . . . . . 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 3922 . . . . . . . . . . 11 tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ⊆ ((◡dom ∪ ran (comp‘𝑋) ∪ {∅}) × ran ∪ ran (comp‘𝑋))
47 elpw2g 5299 . . . . . . . . . . . 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 3162 . . . . . . . . 9 (𝜑 → ∀𝑦 ∈ (Base‘𝑋)tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ∈ 𝒫 ((◡dom ∪ ran (comp‘𝑋) ∪ {∅}) × ran ∪ ran (comp‘𝑋)))
5150ralrimivw 3162 . . . . . . . 8 (𝜑 → ∀𝑥 ∈ ((Base‘𝑋) × (Base‘𝑋))∀𝑦 ∈ (Base‘𝑋)tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ∈ 𝒫 ((◡dom ∪ ran (comp‘𝑋) ∪ {∅}) × ran ∪ ran (comp‘𝑋)))
52 eqid 2763 . . . . . . . . 9 (𝑥 ∈ ((Base‘𝑋) × (Base‘𝑋)), 𝑦 ∈ (Base‘𝑋) ↦ tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥))) = (𝑥 ∈ ((Base‘𝑋) × (Base‘𝑋)), 𝑦 ∈ (Base‘𝑋) ↦ tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)))
5352fmpo 8104 . . . . . . . 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 10839 . . . . . 6 (𝜑 → (𝑥 ∈ ((Base‘𝑋) × (Base‘𝑋)), 𝑦 ∈ (Base‘𝑋) ↦ tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥))) ∈ 𝑈)
568, 21, 55wunop 10834 . . . . 5 (𝜑 → ⟨(comp‘ndx), (𝑥 ∈ ((Base‘𝑋) × (Base‘𝑋)), 𝑦 ∈ (Base‘𝑋) ↦ tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)))⟩ ∈ 𝑈)
578, 19, 56wunsets 17384 . . . 4 (𝜑 → ((𝑋 sSet ⟨(Hom ‘ndx), tpos (Hom ‘𝑋)⟩) sSet ⟨(comp‘ndx), (𝑥 ∈ ((Base‘𝑋) × (Base‘𝑋)), 𝑦 ∈ (Base‘𝑋) ↦ tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)))⟩) ∈ 𝑈)
587, 57eqeltrd 2864 . . 3 (𝜑 → 𝑂 ∈ 𝑈)
599, 10, 8catcbas 18305 . . . . . 6 (𝜑 → 𝐵 = (𝑈 ∩ Cat))
601, 59eleqtrd 2866 . . . . 5 (𝜑 → 𝑋 ∈ (𝑈 ∩ Cat))
6160elin2d 4105 . . . 4 (𝜑 → 𝑋 ∈ Cat)
625oppccat 17925 . . . 4 (𝑋 ∈ Cat → 𝑂 ∈ Cat)
6361, 62syl 18 . . 3 (𝜑 → 𝑂 ∈ Cat)
6458, 63elind 4100 . 2 (𝜑 → 𝑂 ∈ (𝑈 ∩ Cat))
6564, 59eleqtrrd 2867 1 (𝜑 → 𝑂 ∈ 𝐵)
Colors of variables:    wff setvar class
This proof depends on syntax axioms:   → wi 4   ↔ wb 209   = wceq 1570   ∈ wcel 2147  ∀wral 3080   ⊆ wss 3900   ∩ cin 4092   ∪ cun 4152  ∅c0 4281  𝒫 cpw 4560  {csn 4588  ⟨cop 4838  ∪ cuni 4870   × cxp 5653  ◡ccnv 5654  dom cdm 5655  ran crn 5656  ⟶wf 6554  ‘cfv 6558  (class class class)co 7443   ∈ cmpo 7445  ωcom 7901  1st c1st 8023  2nd c2nd 8024  tpos ctpos 8270  WUnicwun 10812   sSet csts 17370  ndxcnx 17400  Basecbs 17416  Hom chom 17468  compcco 17469  Catccat 17867  oppCatcoppc 17914  CatCatccatc 18302
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 5235  ax-sep 5252  ax-nul 5263  ax-pow 5331  ax-pr 5395  ax-un 7775  ax-inf2 9669  ax-cnex 11283  ax-resscn 11284  ax-1cn 11285  ax-icn 11286  ax-addcl 11287  ax-addrcl 11288  ax-mulcl 11289  ax-mulrcl 11290  ax-mulcom 11291  ax-addass 11292  ax-mulass 11293  ax-distr 11294  ax-i2m1 11295  ax-1ne0 11296  ax-1rid 11297  ax-rnegex 11298  ax-rrecex 11299  ax-cnre 11300  ax-pre-lttri 11301  ax-pre-lttrn 11302  ax-pre-ltadd 11303  ax-pre-mulgt0 11304
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 4839  df-uni 4871  df-int 4911  df-iun 4956  df-br 5107  df-opab 5171  df-mpt 5190  df-tr 5216  df-id 5550  df-eprel 5555  df-po 5563  df-so 5564  df-fr 5608  df-we 5610  df-xp 5661  df-rel 5662  df-cnv 5663  df-co 5664  df-dm 5665  df-rn 5666  df-res 5667  df-ima 5668  df-pred 6322  df-ord 6383  df-on 6384  df-lim 6385  df-suc 6386  df-iota 6512  df-fun 6560  df-fn 6561  df-f 6562  df-f1 6563  df-fo 6564  df-f1o 6565  df-fv 6566  df-riota 7400  df-ov 7446  df-oprab 7447  df-mpo 7448  df-om 7902  df-1st 8025  df-2nd 8026  df-tpos 8271  df-frecs 8327  df-wrecs 8358  df-recs 8407  df-rdg 8446  df-1o 8504  df-oadd 8508  df-omul 8509  df-er 8745  df-ec 8747  df-qs 8751  df-map 8877  df-pm 8878  df-en 9002  df-dom 9003  df-sdom 9004  df-fin 9005  df-wun 10814  df-ni 10984  df-pli 10985  df-mi 10986  df-lti 10987  df-plpq 11020  df-mpq 11021  df-ltpq 11022  df-enq 11023  df-nq 11024  df-erq 11025  df-plq 11026  df-mq 11027  df-1nq 11028  df-rq 11029  df-ltnq 11030  df-np 11093  df-plp 11095  df-ltp 11097  df-enr 11167  df-nr 11168  df-c 11233  df-pnf 11372  df-mnf 11373  df-xr 11374  df-ltxr 11375  df-le 11376  df-sub 11570  df-neg 11571  df-nn 12363  df-2 12432  df-3 12433  df-4 12434  df-5 12435  df-6 12436  df-7 12437  df-8 12438  df-9 12439  df-n0 12634  df-z 12721  df-dec 12842  df-uz 12993  df-fz 13667  df-struct 17354  df-sets 17371  df-slot 17389  df-ndx 17401  df-base 17417  df-hom 17481  df-cco 17482  df-cat 17871  df-cid 17872  df-oppc 17915  df-catc 18303
This theorem is used by: (None)
  Copyright terms: Public domain W3C validator