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

Theorem cicsym 16511
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 16510 . 2 ((𝐶 ∈ Cat ∧ 𝑅( ≃𝑐𝐶)𝑆) → 𝑆 ∈ (Base‘𝐶))
2 ciclcl 16509 . 2 ((𝐶 ∈ Cat ∧ 𝑅( ≃𝑐𝐶)𝑆) → 𝑅 ∈ (Base‘𝐶))
3 eqid 2651 . . . . 5 (Iso‘𝐶) = (Iso‘𝐶)
4 eqid 2651 . . . . 5 (Base‘𝐶) = (Base‘𝐶)
5 simpl 472 . . . . 5 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → 𝐶 ∈ Cat)
6 simpr 476 . . . . . 6 ((𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶)) → 𝑅 ∈ (Base‘𝐶))
76adantl 481 . . . . 5 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → 𝑅 ∈ (Base‘𝐶))
8 simpl 472 . . . . . 6 ((𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶)) → 𝑆 ∈ (Base‘𝐶))
98adantl 481 . . . . 5 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → 𝑆 ∈ (Base‘𝐶))
103, 4, 5, 7, 9cic 16506 . . . 4 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → (𝑅( ≃𝑐𝐶)𝑆 ↔ ∃𝑓 𝑓 ∈ (𝑅(Iso‘𝐶)𝑆)))
11 eqid 2651 . . . . . . . . . . . 12 (Inv‘𝐶) = (Inv‘𝐶)
124, 11, 5, 7, 9, 3isoval 16472 . . . . . . . . . . 11 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → (𝑅(Iso‘𝐶)𝑆) = dom (𝑅(Inv‘𝐶)𝑆))
134, 11, 5, 9, 7invsym2 16470 . . . . . . . . . . . . . 14 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → (𝑆(Inv‘𝐶)𝑅) = (𝑅(Inv‘𝐶)𝑆))
1413eqcomd 2657 . . . . . . . . . . . . 13 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → (𝑅(Inv‘𝐶)𝑆) = (𝑆(Inv‘𝐶)𝑅))
1514dmeqd 5358 . . . . . . . . . . . 12 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → dom (𝑅(Inv‘𝐶)𝑆) = dom (𝑆(Inv‘𝐶)𝑅))
16 df-rn 5154 . . . . . . . . . . . 12 ran (𝑆(Inv‘𝐶)𝑅) = dom (𝑆(Inv‘𝐶)𝑅)
1715, 16syl6eqr 2703 . . . . . . . . . . 11 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → dom (𝑅(Inv‘𝐶)𝑆) = ran (𝑆(Inv‘𝐶)𝑅))
1812, 17eqtrd 2685 . . . . . . . . . 10 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → (𝑅(Iso‘𝐶)𝑆) = ran (𝑆(Inv‘𝐶)𝑅))
1918eleq2d 2716 . . . . . . . . 9 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → (𝑓 ∈ (𝑅(Iso‘𝐶)𝑆) ↔ 𝑓 ∈ ran (𝑆(Inv‘𝐶)𝑅)))
20 vex 3234 . . . . . . . . . 10 𝑓 ∈ V
21 elrng 5346 . . . . . . . . . 10 (𝑓 ∈ V → (𝑓 ∈ ran (𝑆(Inv‘𝐶)𝑅) ↔ ∃𝑔 𝑔(𝑆(Inv‘𝐶)𝑅)𝑓))
2220, 21mp1i 13 . . . . . . . . 9 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → (𝑓 ∈ ran (𝑆(Inv‘𝐶)𝑅) ↔ ∃𝑔 𝑔(𝑆(Inv‘𝐶)𝑅)𝑓))
2319, 22bitrd 268 . . . . . . . 8 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → (𝑓 ∈ (𝑅(Iso‘𝐶)𝑆) ↔ ∃𝑔 𝑔(𝑆(Inv‘𝐶)𝑅)𝑓))
24 df-br 4686 . . . . . . . . . 10 (𝑔(𝑆(Inv‘𝐶)𝑅)𝑓 ↔ ⟨𝑔, 𝑓⟩ ∈ (𝑆(Inv‘𝐶)𝑅))
2524exbii 1814 . . . . . . . . 9 (∃𝑔 𝑔(𝑆(Inv‘𝐶)𝑅)𝑓 ↔ ∃𝑔𝑔, 𝑓⟩ ∈ (𝑆(Inv‘𝐶)𝑅))
26 vex 3234 . . . . . . . . . . . . 13 𝑔 ∈ V
2726, 20opeldm 5360 . . . . . . . . . . . 12 (⟨𝑔, 𝑓⟩ ∈ (𝑆(Inv‘𝐶)𝑅) → 𝑔 ∈ dom (𝑆(Inv‘𝐶)𝑅))
284, 11, 5, 9, 7, 3isoval 16472 . . . . . . . . . . . . . . . 16 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → (𝑆(Iso‘𝐶)𝑅) = dom (𝑆(Inv‘𝐶)𝑅))
2928eqcomd 2657 . . . . . . . . . . . . . . 15 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → dom (𝑆(Inv‘𝐶)𝑅) = (𝑆(Iso‘𝐶)𝑅))
3029eleq2d 2716 . . . . . . . . . . . . . 14 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → (𝑔 ∈ dom (𝑆(Inv‘𝐶)𝑅) ↔ 𝑔 ∈ (𝑆(Iso‘𝐶)𝑅)))
315adantr 480 . . . . . . . . . . . . . . . 16 (((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) ∧ 𝑔 ∈ (𝑆(Iso‘𝐶)𝑅)) → 𝐶 ∈ Cat)
329adantr 480 . . . . . . . . . . . . . . . 16 (((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) ∧ 𝑔 ∈ (𝑆(Iso‘𝐶)𝑅)) → 𝑆 ∈ (Base‘𝐶))
337adantr 480 . . . . . . . . . . . . . . . 16 (((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) ∧ 𝑔 ∈ (𝑆(Iso‘𝐶)𝑅)) → 𝑅 ∈ (Base‘𝐶))
34 simpr 476 . . . . . . . . . . . . . . . 16 (((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) ∧ 𝑔 ∈ (𝑆(Iso‘𝐶)𝑅)) → 𝑔 ∈ (𝑆(Iso‘𝐶)𝑅))
353, 4, 31, 32, 33, 34brcici 16507 . . . . . . . . . . . . . . 15 (((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) ∧ 𝑔 ∈ (𝑆(Iso‘𝐶)𝑅)) → 𝑆( ≃𝑐𝐶)𝑅)
3635ex 449 . . . . . . . . . . . . . 14 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → (𝑔 ∈ (𝑆(Iso‘𝐶)𝑅) → 𝑆( ≃𝑐𝐶)𝑅))
3730, 36sylbid 230 . . . . . . . . . . . . 13 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → (𝑔 ∈ dom (𝑆(Inv‘𝐶)𝑅) → 𝑆( ≃𝑐𝐶)𝑅))
3837com12 32 . . . . . . . . . . . 12 (𝑔 ∈ dom (𝑆(Inv‘𝐶)𝑅) → ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → 𝑆( ≃𝑐𝐶)𝑅))
3927, 38syl 17 . . . . . . . . . . 11 (⟨𝑔, 𝑓⟩ ∈ (𝑆(Inv‘𝐶)𝑅) → ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → 𝑆( ≃𝑐𝐶)𝑅))
4039exlimiv 1898 . . . . . . . . . 10 (∃𝑔𝑔, 𝑓⟩ ∈ (𝑆(Inv‘𝐶)𝑅) → ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → 𝑆( ≃𝑐𝐶)𝑅))
4140com12 32 . . . . . . . . 9 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → (∃𝑔𝑔, 𝑓⟩ ∈ (𝑆(Inv‘𝐶)𝑅) → 𝑆( ≃𝑐𝐶)𝑅))
4225, 41syl5bi 232 . . . . . . . 8 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → (∃𝑔 𝑔(𝑆(Inv‘𝐶)𝑅)𝑓𝑆( ≃𝑐𝐶)𝑅))
4323, 42sylbid 230 . . . . . . 7 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → (𝑓 ∈ (𝑅(Iso‘𝐶)𝑆) → 𝑆( ≃𝑐𝐶)𝑅))
4443com12 32 . . . . . 6 (𝑓 ∈ (𝑅(Iso‘𝐶)𝑆) → ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → 𝑆( ≃𝑐𝐶)𝑅))
4544exlimiv 1898 . . . . 5 (∃𝑓 𝑓 ∈ (𝑅(Iso‘𝐶)𝑆) → ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → 𝑆( ≃𝑐𝐶)𝑅))
4645com12 32 . . . 4 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → (∃𝑓 𝑓 ∈ (𝑅(Iso‘𝐶)𝑆) → 𝑆( ≃𝑐𝐶)𝑅))
4710, 46sylbid 230 . . 3 ((𝐶 ∈ Cat ∧ (𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶))) → (𝑅( ≃𝑐𝐶)𝑆𝑆( ≃𝑐𝐶)𝑅))
4847impancom 455 . 2 ((𝐶 ∈ Cat ∧ 𝑅( ≃𝑐𝐶)𝑆) → ((𝑆 ∈ (Base‘𝐶) ∧ 𝑅 ∈ (Base‘𝐶)) → 𝑆( ≃𝑐𝐶)𝑅))
491, 2, 48mp2and 715 1 ((𝐶 ∈ Cat ∧ 𝑅( ≃𝑐𝐶)𝑆) → 𝑆( ≃𝑐𝐶)𝑅)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 196  wa 383  wex 1744  wcel 2030  Vcvv 3231  cop 4216   class class class wbr 4685  ccnv 5142  dom cdm 5143  ran crn 5144  cfv 5926  (class class class)co 6690  Basecbs 15904  Catccat 16372  Invcinv 16452  Isociso 16453  𝑐 ccic 16502
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1762  ax-4 1777  ax-5 1879  ax-6 1945  ax-7 1981  ax-8 2032  ax-9 2039  ax-10 2059  ax-11 2074  ax-12 2087  ax-13 2282  ax-ext 2631  ax-rep 4804  ax-sep 4814  ax-nul 4822  ax-pow 4873  ax-pr 4936  ax-un 6991
This theorem depends on definitions:  df-bi 197  df-or 384  df-an 385  df-3an 1056  df-tru 1526  df-ex 1745  df-nf 1750  df-sb 1938  df-eu 2502  df-mo 2503  df-clab 2638  df-cleq 2644  df-clel 2647  df-nfc 2782  df-ne 2824  df-ral 2946  df-rex 2947  df-reu 2948  df-rab 2950  df-v 3233  df-sbc 3469  df-csb 3567  df-dif 3610  df-un 3612  df-in 3614  df-ss 3621  df-nul 3949  df-if 4120  df-pw 4193  df-sn 4211  df-pr 4213  df-op 4217  df-uni 4469  df-iun 4554  df-br 4686  df-opab 4746  df-mpt 4763  df-id 5053  df-xp 5149  df-rel 5150  df-cnv 5151  df-co 5152  df-dm 5153  df-rn 5154  df-res 5155  df-ima 5156  df-iota 5889  df-fun 5928  df-fn 5929  df-f 5930  df-f1 5931  df-fo 5932  df-f1o 5933  df-fv 5934  df-ov 6693  df-oprab 6694  df-mpt2 6695  df-1st 7210  df-2nd 7211  df-supp 7341  df-sect 16454  df-inv 16455  df-iso 16456  df-cic 16503
This theorem is referenced by:  cicer  16513  initoeu2  16713
  Copyright terms: Public domain W3C validator