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

Theorem cicsym 17886
Description: Isomorphism is symmetric. (Contributed by AV, 5-Apr-2020.)
Assertion
Ref Expression
cicsym ((𝐶 ∈ Cat ∧ 𝑅( ≃𝑐𝐶)𝑆) → 𝑆( ≃𝑐𝐶)𝑅)

Proof of Theorem cicsym
Dummy variables 𝑓 𝑔 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 cicrcl 17885 . 2 ((𝐶 ∈ Cat ∧ 𝑅( ≃𝑐𝐶)𝑆) → 𝑆 ∈ (Base‘𝐶))
2 ciclcl 17884 . 2 ((𝐶 ∈ Cat ∧ 𝑅( ≃𝑐𝐶)𝑆) → 𝑅 ∈ (Base‘𝐶))
3 eqid 2766 . . . . 5 (Iso‘𝐶) = (Iso‘𝐶)
4 eqid 2766 . . . . 5 (Base‘𝐶) = (Base‘𝐶)
5 simpl 488 . . . . 5 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → 𝐶 ∈ Cat)
6 simpr 490 . . . . . 6 ((𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶)) → 𝑅 ∈ (Base‘𝐶))
76adantl 487 . . . . 5 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → 𝑅 ∈ (Base‘𝐶))
8 simpl 488 . . . . . 6 ((𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶)) → 𝑆 ∈ (Base‘𝐶))
98adantl 487 . . . . 5 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → 𝑆 ∈ (Base‘𝐶))
103, 4, 5, 7, 9cic 17881 . . . 4 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → (𝑅( ≃𝑐𝐶)𝑆 ↔ ∃𝑓 𝑓 ∈ (𝑅(Iso‘𝐶)𝑆)))
11 eqid 2766 . . . . . . . . . 10 (Inv‘𝐶) = (Inv‘𝐶)
124, 11, 5, 7, 9, 3isoval 17847 . . . . . . . . 9 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → (𝑅(Iso‘𝐶)𝑆) = dom (𝑅(Inv‘𝐶)𝑆))
134, 11, 5, 9, 7invsym2 17845 . . . . . . . . . . . 12 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → (𝑆(Inv‘𝐶)𝑅) = (𝑅(Inv‘𝐶)𝑆))
1413eqcomd 2772 . . . . . . . . . . 11 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → (𝑅(Inv‘𝐶)𝑆) = (𝑆(Inv‘𝐶)𝑅))
1514dmeqd 5900 . . . . . . . . . 10 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → dom (𝑅(Inv‘𝐶)𝑆) = dom (𝑆(Inv‘𝐶)𝑅))
16 df-rn 5677 . . . . . . . . . 10 ran (𝑆(Inv‘𝐶)𝑅) = dom (𝑆(Inv‘𝐶)𝑅)
1715, 16eqtr4di 2819 . . . . . . . . 9 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → dom (𝑅(Inv‘𝐶)𝑆) = ran (𝑆(Inv‘𝐶)𝑅))
1812, 17eqtrd 2801 . . . . . . . 8 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → (𝑅(Iso‘𝐶)𝑆) = ran (𝑆(Inv‘𝐶)𝑅))
1918eleq2d 2852 . . . . . . 7 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → (𝑓 ∈ (𝑅(Iso‘𝐶)𝑆) ↔ 𝑓 ∈ ran (𝑆(Inv‘𝐶)𝑅)))
20 vex 3462 . . . . . . . 8 𝑓 ∈ V
21 elrng 5886 . . . . . . . 8 (𝑓 ∈ V → (𝑓 ∈ ran (𝑆(Inv‘𝐶)𝑅) ↔ ∃𝑔 𝑔(𝑆(Inv‘𝐶)𝑅)𝑓))
2220, 21mp1i 14 . . . . . . 7 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → (𝑓 ∈ ran (𝑆(Inv‘𝐶)𝑅) ↔ ∃𝑔 𝑔(𝑆(Inv‘𝐶)𝑅)𝑓))
2319, 22bitrd 282 . . . . . 6 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → (𝑓 ∈ (𝑅(Iso‘𝐶)𝑆) ↔ ∃𝑔 𝑔(𝑆(Inv‘𝐶)𝑅)𝑓))
24 df-br 5115 . . . . . . . 8 (𝑔(𝑆(Inv‘𝐶)𝑅)𝑓 ↔ ⟨𝑔, 𝑓⟩ ∈ (𝑆(Inv‘𝐶)𝑅))
2524exbii 1881 . . . . . . 7 (∃𝑔 𝑔(𝑆(Inv‘𝐶)𝑅)𝑓 ↔ ∃𝑔𝑔, 𝑓⟩ ∈ (𝑆(Inv‘𝐶)𝑅))
26 vex 3462 . . . . . . . . . . 11 𝑔 ∈ V
2726, 20opeldm 5902 . . . . . . . . . 10 (⟨𝑔, 𝑓⟩ ∈ (𝑆(Inv‘𝐶)𝑅) → 𝑔 ∈ dom (𝑆(Inv‘𝐶)𝑅))
284, 11, 5, 9, 7, 3isoval 17847 . . . . . . . . . . . . 13 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → (𝑆(Iso‘𝐶)𝑅) = dom (𝑆(Inv‘𝐶)𝑅))
2928eqcomd 2772 . . . . . . . . . . . 12 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → dom (𝑆(Inv‘𝐶)𝑅) = (𝑆(Iso‘𝐶)𝑅))
3029eleq2d 2852 . . . . . . . . . . 11 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → (𝑔 ∈ dom (𝑆(Inv‘𝐶)𝑅) ↔ 𝑔 ∈ (𝑆(Iso‘𝐶)𝑅)))
315adantr 486 . . . . . . . . . . . . 13 (((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) ∧ 𝑔 ∈ (𝑆(Iso‘𝐶)𝑅)) → 𝐶 ∈ Cat)
329adantr 486 . . . . . . . . . . . . 13 (((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) ∧ 𝑔 ∈ (𝑆(Iso‘𝐶)𝑅)) → 𝑆 ∈ (Base‘𝐶))
337adantr 486 . . . . . . . . . . . . 13 (((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) ∧ 𝑔 ∈ (𝑆(Iso‘𝐶)𝑅)) → 𝑅 ∈ (Base‘𝐶))
34 simpr 490 . . . . . . . . . . . . 13 (((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) ∧ 𝑔 ∈ (𝑆(Iso‘𝐶)𝑅)) → 𝑔 ∈ (𝑆(Iso‘𝐶)𝑅))
353, 4, 31, 32, 33, 34brcici 17882 . . . . . . . . . . . 12 (((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) ∧ 𝑔 ∈ (𝑆(Iso‘𝐶)𝑅)) → 𝑆( ≃𝑐𝐶)𝑅)
3635ex 418 . . . . . . . . . . 11 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → (𝑔 ∈ (𝑆(Iso‘𝐶)𝑅) → 𝑆( ≃𝑐𝐶)𝑅))
3730, 36sylbid 243 . . . . . . . . . 10 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → (𝑔 ∈ dom (𝑆(Inv‘𝐶)𝑅) → 𝑆( ≃𝑐𝐶)𝑅))
3827, 37syl5com 32 . . . . . . . . 9 (⟨𝑔, 𝑓⟩ ∈ (𝑆(Inv‘𝐶)𝑅) → ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → 𝑆( ≃𝑐𝐶)𝑅))
3938exlimiv 1963 . . . . . . . 8 (∃𝑔𝑔, 𝑓⟩ ∈ (𝑆(Inv‘𝐶)𝑅) → ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → 𝑆( ≃𝑐𝐶)𝑅))
4039com12 33 . . . . . . 7 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → (∃𝑔𝑔, 𝑓⟩ ∈ (𝑆(Inv‘𝐶)𝑅) → 𝑆( ≃𝑐𝐶)𝑅))
4125, 40biimtrid 245 . . . . . 6 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → (∃𝑔 𝑔(𝑆(Inv‘𝐶)𝑅)𝑓𝑆( ≃𝑐𝐶)𝑅))
4223, 41sylbid 243 . . . . 5 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → (𝑓 ∈ (𝑅(Iso‘𝐶)𝑆) → 𝑆( ≃𝑐𝐶)𝑅))
4342exlimdv 1966 . . . 4 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → (∃𝑓 𝑓 ∈ (𝑅(Iso‘𝐶)𝑆) → 𝑆( ≃𝑐𝐶)𝑅))
4410, 43sylbid 243 . . 3 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → (𝑅( ≃𝑐𝐶)𝑆𝑆( ≃𝑐𝐶)𝑅))
4544impancom 457 . 2 ((𝐶 ∈ Cat ∧ 𝑅( ≃𝑐𝐶)𝑆) → ((𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶)) → 𝑆( ≃𝑐𝐶)𝑅))
461, 2, 45mp2and 712 1 ((𝐶 ∈ Cat ∧ 𝑅( ≃𝑐𝐶)𝑆) → 𝑆( ≃𝑐𝐶)𝑅)
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wb 209  wa 401  wex 1812  wcel 2146  Vcvv 3458  cop 4600   class class class wbr 5114  ccnv 5665  dom cdm 5666  ran crn 5667  cfv 6543  (class class class)co 7423  Basecbs 17294  Catccat 17745  Invcinv 17827  Isociso 17828  𝑐 ccic 17877
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 2148  ax-9 2156  ax-10 2179  ax-11 2195  ax-12 2216  ax-ext 2738  ax-rep 5243  ax-sep 5262  ax-nul 5274  ax-pow 5341  ax-pr 5409  ax-un 7745
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2570  df-eu 2600  df-clab 2745  df-cleq 2758  df-clel 2841  df-nfc 2915  df-ne 2962  df-ral 3083  df-rex 3093  df-reu 3373  df-rab 3420  df-v 3460  df-sbc 3748  df-csb 3857  df-dif 3911  df-un 3913  df-in 3915  df-ss 3925  df-nul 4290  df-if 4493  df-pw 4569  df-sn 4595  df-pr 4597  df-op 4601  df-uni 4878  df-iun 4963  df-br 5115  df-opab 5179  df-mpt 5198  df-id 5561  df-xp 5672  df-rel 5673  df-cnv 5674  df-co 5675  df-dm 5676  df-rn 5677  df-res 5678  df-ima 5679  df-iota 6499  df-fun 6545  df-fn 6546  df-f 6547  df-f1 6548  df-fo 6549  df-f1o 6550  df-fv 6551  df-ov 7426  df-oprab 7427  df-mpo 7428  df-1st 7995  df-2nd 7996  df-supp 8166  df-sect 17829  df-inv 17830  df-iso 17831  df-cic 17878
This theorem is used by:  cicer  17888  initoeu2  18098  oppccic  49855  cicerALT  49857
  Copyright terms: Public domain W3C validator