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

Theorem catcoppccl 18272
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 2761 . . . . . 6 (Base‘𝑋) = (Base‘𝑋)
3 eqid 2761 . . . . . 6 (Hom ‘𝑋) = (Hom ‘𝑋)
4 eqid 2761 . . . . . 6 (comp‘𝑋) = (comp‘𝑋)
5 catcoppccl.o . . . . . 6 𝑂 = (oppCat‘𝑋)
62, 3, 4, 5oppcval 17867 . . . . 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 18267 . . . . . 6 (𝜑 → 𝑋 ∈ 𝑈)
12 homid 17563 . . . . . . . 8 Hom = Slot (Hom ‘ndx)
13 catcoppccl.2 . . . . . . . . 9 (𝜑 → ω ∈ 𝑈)
148, 13wunndx 17353 . . . . . . . 8 (𝜑 → ndx ∈ 𝑈)
1512, 8, 14wunstr 17346 . . . . . . 7 (𝜑 → (Hom ‘ndx) ∈ 𝑈)
169, 10, 8, 1catchomcl 18270 . . . . . . . 8 (𝜑 → (Hom ‘𝑋) ∈ 𝑈)
178, 16wuntpos 10800 . . . . . . 7 (𝜑 → tpos (Hom ‘𝑋) ∈ 𝑈)
188, 15, 17wunop 10788 . . . . . 6 (𝜑 → ⟨(Hom ‘ndx), tpos (Hom ‘𝑋)⟩ ∈ 𝑈)
198, 11, 18wunsets 17335 . . . . 5 (𝜑 → (𝑋 sSet ⟨(Hom ‘ndx), tpos (Hom ‘𝑋)⟩) ∈ 𝑈)
20 ccoid 17565 . . . . . . 7 comp = Slot (comp‘ndx)
2120, 8, 14wunstr 17346 . . . . . 6 (𝜑 → (comp‘ndx) ∈ 𝑈)
229, 10, 8, 1catcbaselcl 18269 . . . . . . . . 9 (𝜑 → (Base‘𝑋) ∈ 𝑈)
238, 22, 22wunxp 10790 . . . . . . . 8 (𝜑 → ((Base‘𝑋) × (Base‘𝑋)) ∈ 𝑈)
248, 23, 22wunxp 10790 . . . . . . 7 (𝜑 → (((Base‘𝑋) × (Base‘𝑋)) × (Base‘𝑋)) ∈ 𝑈)
259, 10, 8, 1catcccocl 18271 . . . . . . . . . . . . . 14 (𝜑 → (comp‘𝑋) ∈ 𝑈)
268, 25wunrn 10795 . . . . . . . . . . . . 13 (𝜑 → ran (comp‘𝑋) ∈ 𝑈)
278, 26wununi 10772 . . . . . . . . . . . 12 (𝜑 → ∪ ran (comp‘𝑋) ∈ 𝑈)
288, 27wundm 10794 . . . . . . . . . . 11 (𝜑 → dom ∪ ran (comp‘𝑋) ∈ 𝑈)
298, 28wuncnv 10796 . . . . . . . . . 10 (𝜑 → ◡dom ∪ ran (comp‘𝑋) ∈ 𝑈)
308wun0 10784 . . . . . . . . . . 11 (𝜑 → ∅ ∈ 𝑈)
318, 30wunsn 10782 . . . . . . . . . 10 (𝜑 → {∅} ∈ 𝑈)
328, 29, 31wunun 10776 . . . . . . . . 9 (𝜑 → (◡dom ∪ ran (comp‘𝑋) ∪ {∅}) ∈ 𝑈)
338, 27wunrn 10795 . . . . . . . . 9 (𝜑 → ran ∪ ran (comp‘𝑋) ∈ 𝑈)
348, 32, 33wunxp 10790 . . . . . . . 8 (𝜑 → ((◡dom ∪ ran (comp‘𝑋) ∪ {∅}) × ran ∪ ran (comp‘𝑋)) ∈ 𝑈)
358, 34wunpw 10773 . . . . . . 7 (𝜑 → 𝒫 ((◡dom ∪ ran (comp‘𝑋) ∪ {∅}) × ran ∪ ran (comp‘𝑋)) ∈ 𝑈)
36 tposssxp 8231 . . . . . . . . . . . 12 tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ⊆ ((◡dom (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ∪ {∅}) × ran (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)))
37 ovssunirn 7448 . . . . . . . . . . . . . . 15 (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ⊆ ∪ ran (comp‘𝑋)
38 dmss 5884 . . . . . . . . . . . . . . 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 5850 . . . . . . . . . . . . . 14 (dom (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ⊆ dom ∪ ran (comp‘𝑋) → ◡dom (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ⊆ ◡dom ∪ ran (comp‘𝑋))
41 unss1 4131 . . . . . . . . . . . . . 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 5922 . . . . . . . . . . . . 13 ran (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ⊆ ran ∪ ran (comp‘𝑋)
44 xpss12 5666 . . . . . . . . . . . . 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 3940 . . . . . . . . . . 11 tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ⊆ ((◡dom ∪ ran (comp‘𝑋) ∪ {∅}) × ran ∪ ran (comp‘𝑋))
47 elpw2g 5295 . . . . . . . . . . . 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 3159 . . . . . . . . 9 (𝜑 → ∀𝑦 ∈ (Base‘𝑋)tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ∈ 𝒫 ((◡dom ∪ ran (comp‘𝑋) ∪ {∅}) × ran ∪ ran (comp‘𝑋)))
5150ralrimivw 3159 . . . . . . . 8 (𝜑 → ∀𝑥 ∈ ((Base‘𝑋) × (Base‘𝑋))∀𝑦 ∈ (Base‘𝑋)tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)) ∈ 𝒫 ((◡dom ∪ ran (comp‘𝑋) ∪ {∅}) × ran ∪ ran (comp‘𝑋)))
52 eqid 2761 . . . . . . . . 9 (𝑥 ∈ ((Base‘𝑋) × (Base‘𝑋)), 𝑦 ∈ (Base‘𝑋) ↦ tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥))) = (𝑥 ∈ ((Base‘𝑋) × (Base‘𝑋)), 𝑦 ∈ (Base‘𝑋) ↦ tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)))
5352fmpo 8068 . . . . . . . 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 10793 . . . . . 6 (𝜑 → (𝑥 ∈ ((Base‘𝑋) × (Base‘𝑋)), 𝑦 ∈ (Base‘𝑋) ↦ tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥))) ∈ 𝑈)
568, 21, 55wunop 10788 . . . . 5 (𝜑 → ⟨(comp‘ndx), (𝑥 ∈ ((Base‘𝑋) × (Base‘𝑋)), 𝑦 ∈ (Base‘𝑋) ↦ tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)))⟩ ∈ 𝑈)
578, 19, 56wunsets 17335 . . . 4 (𝜑 → ((𝑋 sSet ⟨(Hom ‘ndx), tpos (Hom ‘𝑋)⟩) sSet ⟨(comp‘ndx), (𝑥 ∈ ((Base‘𝑋) × (Base‘𝑋)), 𝑦 ∈ (Base‘𝑋) ↦ tpos (⟨𝑦, (2nd ‘𝑥)⟩(comp‘𝑋)(1st ‘𝑥)))⟩) ∈ 𝑈)
587, 57eqeltrd 2861 . . 3 (𝜑 → 𝑂 ∈ 𝑈)
599, 10, 8catcbas 18256 . . . . . 6 (𝜑 → 𝐵 = (𝑈 ∩ Cat))
601, 59eleqtrd 2863 . . . . 5 (𝜑 → 𝑋 ∈ (𝑈 ∩ Cat))
6160elin2d 4151 . . . 4 (𝜑 → 𝑋 ∈ Cat)
625oppccat 17876 . . . 4 (𝑋 ∈ Cat → 𝑂 ∈ Cat)
6361, 62syl 18 . . 3 (𝜑 → 𝑂 ∈ Cat)
6458, 63elind 4146 . 2 (𝜑 → 𝑂 ∈ (𝑈 ∩ Cat))
6564, 59eleqtrrd 2864 1 (𝜑 → 𝑂 ∈ 𝐵)
Colors of variables:    wff setvar class
This proof depends on syntax axioms:   → wi 4   ↔ wb 209   = wceq 1570   ∈ wcel 2145  ∀wral 3077   ∪ cun 3897   ∩ cin 3898   ⊆ wss 3899  ∅c0 4279  𝒫 cpw 4557  {csn 4584  ⟨cop 4590  ∪ cuni 4867   × cxp 5649  ◡ccnv 5650  dom cdm 5651  ran crn 5652  ⟶wf 6527  ‘cfv 6531  (class class class)co 7412   ∈ cmpo 7414  ωcom 7866  1st c1st 7988  2nd c2nd 7989  tpos ctpos 8226  WUnicwun 10766   sSet csts 17321  ndxcnx 17351  Basecbs 17367  Hom chom 17419  compcco 17420  Catccat 17818  oppCatcoppc 17865  CatCatccatc 18253
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 1943  ax-6 2000  ax-7 2041  ax-8 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2213  ax-ext 2733  ax-rep 5232  ax-sep 5249  ax-nul 5260  ax-pow 5327  ax-pr 5391  ax-un 7740  ax-inf2 9626  ax-cnex 11237  ax-resscn 11238  ax-1cn 11239  ax-icn 11240  ax-addcl 11241  ax-addrcl 11242  ax-mulcl 11243  ax-mulrcl 11244  ax-mulcom 11245  ax-addass 11246  ax-mulass 11247  ax-distr 11248  ax-i2m1 11249  ax-1ne0 11250  ax-1rid 11251  ax-rnegex 11252  ax-rrecex 11253  ax-cnre 11254  ax-pre-lttri 11255  ax-pre-lttrn 11256  ax-pre-ltadd 11257  ax-pre-mulgt0 11258
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 2100  df-mo 2565  df-eu 2595  df-clab 2740  df-cleq 2753  df-clel 2836  df-nfc 2910  df-ne 2957  df-nel 3063  df-ral 3078  df-rex 3088  df-rmo 3366  df-reu 3367  df-rab 3414  df-v 3453  df-sbc 3740  df-csb 3848  df-dif 3902  df-un 3904  df-in 3906  df-ss 3916  df-pss 3919  df-nul 4280  df-if 4483  df-pw 4559  df-sn 4585  df-pr 4587  df-tp 4589  df-op 4591  df-uni 4868  df-int 4908  df-iun 4953  df-br 5104  df-opab 5168  df-mpt 5187  df-tr 5213  df-id 5546  df-eprel 5551  df-po 5559  df-so 5560  df-fr 5604  df-we 5606  df-xp 5657  df-rel 5658  df-cnv 5659  df-co 5660  df-dm 5661  df-rn 5662  df-res 5663  df-ima 5664  df-pred 6297  df-ord 6358  df-on 6359  df-lim 6360  df-suc 6361  df-iota 6487  df-fun 6533  df-fn 6534  df-f 6535  df-f1 6536  df-fo 6537  df-f1o 6538  df-fv 6539  df-riota 7369  df-ov 7415  df-oprab 7416  df-mpo 7417  df-om 7867  df-1st 7990  df-2nd 7991  df-tpos 8227  df-frecs 8283  df-wrecs 8314  df-recs 8363  df-rdg 8402  df-1o 8460  df-oadd 8464  df-omul 8465  df-er 8701  df-ec 8703  df-qs 8707  df-map 8833  df-pm 8834  df-en 8958  df-dom 8959  df-sdom 8960  df-fin 8961  df-wun 10768  df-ni 10938  df-pli 10939  df-mi 10940  df-lti 10941  df-plpq 10974  df-mpq 10975  df-ltpq 10976  df-enq 10977  df-nq 10978  df-erq 10979  df-plq 10980  df-mq 10981  df-1nq 10982  df-rq 10983  df-ltnq 10984  df-np 11047  df-plp 11049  df-ltp 11051  df-enr 11121  df-nr 11122  df-c 11187  df-pnf 11326  df-mnf 11327  df-xr 11328  df-ltxr 11329  df-le 11330  df-sub 11524  df-neg 11525  df-nn 12317  df-2 12386  df-3 12387  df-4 12388  df-5 12389  df-6 12390  df-7 12391  df-8 12392  df-9 12393  df-n0 12588  df-z 12675  df-dec 12796  df-uz 12947  df-fz 13621  df-struct 17305  df-sets 17322  df-slot 17340  df-ndx 17352  df-base 17368  df-hom 17432  df-cco 17433  df-cat 17822  df-cid 17823  df-oppc 17866  df-catc 18254
This theorem is used by: (None)
  Copyright terms: Public domain W3C validator