Users' Mathboxes Mathbox for Alexander van der Vekens < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  isomgrtr Structured version   Visualization version   GIF version

Theorem isomgrtr 47079
Description: The isomorphy relation is transitive for hypergraphs. (Contributed by AV, 5-Dec-2022.)
Assertion
Ref Expression
isomgrtr ((𝐴 ∈ UHGraph ∧ 𝐵 ∈ UHGraph ∧ 𝐶𝑋) → ((𝐴 IsomGr 𝐵𝐵 IsomGr 𝐶) → 𝐴 IsomGr 𝐶))

Proof of Theorem isomgrtr
Dummy variables 𝑖 𝑗 𝑘 𝑓 𝑔 𝑣 𝑤 𝑒 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 eqid 2726 . . . . 5 (Vtx‘𝐴) = (Vtx‘𝐴)
2 eqid 2726 . . . . 5 (Vtx‘𝐵) = (Vtx‘𝐵)
3 eqid 2726 . . . . 5 (iEdg‘𝐴) = (iEdg‘𝐴)
4 eqid 2726 . . . . 5 (iEdg‘𝐵) = (iEdg‘𝐵)
51, 2, 3, 4isomgr 47063 . . . 4 ((𝐴 ∈ UHGraph ∧ 𝐵 ∈ UHGraph) → (𝐴 IsomGr 𝐵 ↔ ∃𝑓(𝑓:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐵) ∧ ∃𝑔(𝑔:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐵) ∧ ∀𝑖 ∈ dom (iEdg‘𝐴)(𝑓 “ ((iEdg‘𝐴)‘𝑖)) = ((iEdg‘𝐵)‘(𝑔𝑖))))))
653adant3 1129 . . 3 ((𝐴 ∈ UHGraph ∧ 𝐵 ∈ UHGraph ∧ 𝐶𝑋) → (𝐴 IsomGr 𝐵 ↔ ∃𝑓(𝑓:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐵) ∧ ∃𝑔(𝑔:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐵) ∧ ∀𝑖 ∈ dom (iEdg‘𝐴)(𝑓 “ ((iEdg‘𝐴)‘𝑖)) = ((iEdg‘𝐵)‘(𝑔𝑖))))))
7 eqid 2726 . . . . 5 (Vtx‘𝐶) = (Vtx‘𝐶)
8 eqid 2726 . . . . 5 (iEdg‘𝐶) = (iEdg‘𝐶)
92, 7, 4, 8isomgr 47063 . . . 4 ((𝐵 ∈ UHGraph ∧ 𝐶𝑋) → (𝐵 IsomGr 𝐶 ↔ ∃𝑣(𝑣:(Vtx‘𝐵)–1-1-onto→(Vtx‘𝐶) ∧ ∃𝑤(𝑤:dom (iEdg‘𝐵)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑘 ∈ dom (iEdg‘𝐵)(𝑣 “ ((iEdg‘𝐵)‘𝑘)) = ((iEdg‘𝐶)‘(𝑤𝑘))))))
1093adant1 1127 . . 3 ((𝐴 ∈ UHGraph ∧ 𝐵 ∈ UHGraph ∧ 𝐶𝑋) → (𝐵 IsomGr 𝐶 ↔ ∃𝑣(𝑣:(Vtx‘𝐵)–1-1-onto→(Vtx‘𝐶) ∧ ∃𝑤(𝑤:dom (iEdg‘𝐵)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑘 ∈ dom (iEdg‘𝐵)(𝑣 “ ((iEdg‘𝐵)‘𝑘)) = ((iEdg‘𝐶)‘(𝑤𝑘))))))
116, 10anbi12d 630 . 2 ((𝐴 ∈ UHGraph ∧ 𝐵 ∈ UHGraph ∧ 𝐶𝑋) → ((𝐴 IsomGr 𝐵𝐵 IsomGr 𝐶) ↔ (∃𝑓(𝑓:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐵) ∧ ∃𝑔(𝑔:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐵) ∧ ∀𝑖 ∈ dom (iEdg‘𝐴)(𝑓 “ ((iEdg‘𝐴)‘𝑖)) = ((iEdg‘𝐵)‘(𝑔𝑖)))) ∧ ∃𝑣(𝑣:(Vtx‘𝐵)–1-1-onto→(Vtx‘𝐶) ∧ ∃𝑤(𝑤:dom (iEdg‘𝐵)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑘 ∈ dom (iEdg‘𝐵)(𝑣 “ ((iEdg‘𝐵)‘𝑘)) = ((iEdg‘𝐶)‘(𝑤𝑘)))))))
12 vex 3472 . . . . . . . . . . 11 𝑣 ∈ V
13 vex 3472 . . . . . . . . . . 11 𝑓 ∈ V
1412, 13coex 7920 . . . . . . . . . 10 (𝑣𝑓) ∈ V
1514a1i 11 . . . . . . . . 9 ((((𝐴 ∈ UHGraph ∧ 𝐵 ∈ UHGraph ∧ 𝐶𝑋) ∧ (𝑓:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐵) ∧ ∃𝑔(𝑔:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐵) ∧ ∀𝑖 ∈ dom (iEdg‘𝐴)(𝑓 “ ((iEdg‘𝐴)‘𝑖)) = ((iEdg‘𝐵)‘(𝑔𝑖))))) ∧ (𝑣:(Vtx‘𝐵)–1-1-onto→(Vtx‘𝐶) ∧ ∃𝑤(𝑤:dom (iEdg‘𝐵)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑘 ∈ dom (iEdg‘𝐵)(𝑣 “ ((iEdg‘𝐵)‘𝑘)) = ((iEdg‘𝐶)‘(𝑤𝑘))))) → (𝑣𝑓) ∈ V)
16 simpl 482 . . . . . . . . . . 11 ((𝑣:(Vtx‘𝐵)–1-1-onto→(Vtx‘𝐶) ∧ ∃𝑤(𝑤:dom (iEdg‘𝐵)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑘 ∈ dom (iEdg‘𝐵)(𝑣 “ ((iEdg‘𝐵)‘𝑘)) = ((iEdg‘𝐶)‘(𝑤𝑘)))) → 𝑣:(Vtx‘𝐵)–1-1-onto→(Vtx‘𝐶))
17 simprl 768 . . . . . . . . . . 11 (((𝐴 ∈ UHGraph ∧ 𝐵 ∈ UHGraph ∧ 𝐶𝑋) ∧ (𝑓:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐵) ∧ ∃𝑔(𝑔:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐵) ∧ ∀𝑖 ∈ dom (iEdg‘𝐴)(𝑓 “ ((iEdg‘𝐴)‘𝑖)) = ((iEdg‘𝐵)‘(𝑔𝑖))))) → 𝑓:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐵))
18 f1oco 6850 . . . . . . . . . . 11 ((𝑣:(Vtx‘𝐵)–1-1-onto→(Vtx‘𝐶) ∧ 𝑓:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐵)) → (𝑣𝑓):(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐶))
1916, 17, 18syl2anr 596 . . . . . . . . . 10 ((((𝐴 ∈ UHGraph ∧ 𝐵 ∈ UHGraph ∧ 𝐶𝑋) ∧ (𝑓:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐵) ∧ ∃𝑔(𝑔:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐵) ∧ ∀𝑖 ∈ dom (iEdg‘𝐴)(𝑓 “ ((iEdg‘𝐴)‘𝑖)) = ((iEdg‘𝐵)‘(𝑔𝑖))))) ∧ (𝑣:(Vtx‘𝐵)–1-1-onto→(Vtx‘𝐶) ∧ ∃𝑤(𝑤:dom (iEdg‘𝐵)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑘 ∈ dom (iEdg‘𝐵)(𝑣 “ ((iEdg‘𝐵)‘𝑘)) = ((iEdg‘𝐶)‘(𝑤𝑘))))) → (𝑣𝑓):(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐶))
20 vex 3472 . . . . . . . . . . . . . . . . . . . . 21 𝑤 ∈ V
21 vex 3472 . . . . . . . . . . . . . . . . . . . . 21 𝑔 ∈ V
2220, 21coex 7920 . . . . . . . . . . . . . . . . . . . 20 (𝑤𝑔) ∈ V
2322a1i 11 . . . . . . . . . . . . . . . . . . 19 (((((𝐴 ∈ UHGraph ∧ 𝐵 ∈ UHGraph ∧ 𝐶𝑋) ∧ 𝑓:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐵) ∧ 𝑣:(Vtx‘𝐵)–1-1-onto→(Vtx‘𝐶)) ∧ (𝑔:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐵) ∧ ∀𝑖 ∈ dom (iEdg‘𝐴)(𝑓 “ ((iEdg‘𝐴)‘𝑖)) = ((iEdg‘𝐵)‘(𝑔𝑖)))) ∧ (𝑤:dom (iEdg‘𝐵)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑘 ∈ dom (iEdg‘𝐵)(𝑣 “ ((iEdg‘𝐵)‘𝑘)) = ((iEdg‘𝐶)‘(𝑤𝑘)))) → (𝑤𝑔) ∈ V)
24 simpl 482 . . . . . . . . . . . . . . . . . . . . 21 ((𝑤:dom (iEdg‘𝐵)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑘 ∈ dom (iEdg‘𝐵)(𝑣 “ ((iEdg‘𝐵)‘𝑘)) = ((iEdg‘𝐶)‘(𝑤𝑘))) → 𝑤:dom (iEdg‘𝐵)–1-1-onto→dom (iEdg‘𝐶))
25 simprl 768 . . . . . . . . . . . . . . . . . . . . 21 ((((𝐴 ∈ UHGraph ∧ 𝐵 ∈ UHGraph ∧ 𝐶𝑋) ∧ 𝑓:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐵) ∧ 𝑣:(Vtx‘𝐵)–1-1-onto→(Vtx‘𝐶)) ∧ (𝑔:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐵) ∧ ∀𝑖 ∈ dom (iEdg‘𝐴)(𝑓 “ ((iEdg‘𝐴)‘𝑖)) = ((iEdg‘𝐵)‘(𝑔𝑖)))) → 𝑔:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐵))
26 f1oco 6850 . . . . . . . . . . . . . . . . . . . . 21 ((𝑤:dom (iEdg‘𝐵)–1-1-onto→dom (iEdg‘𝐶) ∧ 𝑔:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐵)) → (𝑤𝑔):dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐶))
2724, 25, 26syl2anr 596 . . . . . . . . . . . . . . . . . . . 20 (((((𝐴 ∈ UHGraph ∧ 𝐵 ∈ UHGraph ∧ 𝐶𝑋) ∧ 𝑓:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐵) ∧ 𝑣:(Vtx‘𝐵)–1-1-onto→(Vtx‘𝐶)) ∧ (𝑔:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐵) ∧ ∀𝑖 ∈ dom (iEdg‘𝐴)(𝑓 “ ((iEdg‘𝐴)‘𝑖)) = ((iEdg‘𝐵)‘(𝑔𝑖)))) ∧ (𝑤:dom (iEdg‘𝐵)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑘 ∈ dom (iEdg‘𝐵)(𝑣 “ ((iEdg‘𝐵)‘𝑘)) = ((iEdg‘𝐶)‘(𝑤𝑘)))) → (𝑤𝑔):dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐶))
28 isomgrtrlem 47078 . . . . . . . . . . . . . . . . . . . 20 (((((𝐴 ∈ UHGraph ∧ 𝐵 ∈ UHGraph ∧ 𝐶𝑋) ∧ 𝑓:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐵) ∧ 𝑣:(Vtx‘𝐵)–1-1-onto→(Vtx‘𝐶)) ∧ (𝑔:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐵) ∧ ∀𝑖 ∈ dom (iEdg‘𝐴)(𝑓 “ ((iEdg‘𝐴)‘𝑖)) = ((iEdg‘𝐵)‘(𝑔𝑖)))) ∧ (𝑤:dom (iEdg‘𝐵)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑘 ∈ dom (iEdg‘𝐵)(𝑣 “ ((iEdg‘𝐵)‘𝑘)) = ((iEdg‘𝐶)‘(𝑤𝑘)))) → ∀𝑗 ∈ dom (iEdg‘𝐴)((𝑣𝑓) “ ((iEdg‘𝐴)‘𝑗)) = ((iEdg‘𝐶)‘((𝑤𝑔)‘𝑗)))
2927, 28jca 511 . . . . . . . . . . . . . . . . . . 19 (((((𝐴 ∈ UHGraph ∧ 𝐵 ∈ UHGraph ∧ 𝐶𝑋) ∧ 𝑓:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐵) ∧ 𝑣:(Vtx‘𝐵)–1-1-onto→(Vtx‘𝐶)) ∧ (𝑔:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐵) ∧ ∀𝑖 ∈ dom (iEdg‘𝐴)(𝑓 “ ((iEdg‘𝐴)‘𝑖)) = ((iEdg‘𝐵)‘(𝑔𝑖)))) ∧ (𝑤:dom (iEdg‘𝐵)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑘 ∈ dom (iEdg‘𝐵)(𝑣 “ ((iEdg‘𝐵)‘𝑘)) = ((iEdg‘𝐶)‘(𝑤𝑘)))) → ((𝑤𝑔):dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑗 ∈ dom (iEdg‘𝐴)((𝑣𝑓) “ ((iEdg‘𝐴)‘𝑗)) = ((iEdg‘𝐶)‘((𝑤𝑔)‘𝑗))))
30 f1oeq1 6815 . . . . . . . . . . . . . . . . . . . 20 ( = (𝑤𝑔) → (:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐶) ↔ (𝑤𝑔):dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐶)))
31 fveq1 6884 . . . . . . . . . . . . . . . . . . . . . . 23 ( = (𝑤𝑔) → (𝑗) = ((𝑤𝑔)‘𝑗))
3231fveq2d 6889 . . . . . . . . . . . . . . . . . . . . . 22 ( = (𝑤𝑔) → ((iEdg‘𝐶)‘(𝑗)) = ((iEdg‘𝐶)‘((𝑤𝑔)‘𝑗)))
3332eqeq2d 2737 . . . . . . . . . . . . . . . . . . . . 21 ( = (𝑤𝑔) → (((𝑣𝑓) “ ((iEdg‘𝐴)‘𝑗)) = ((iEdg‘𝐶)‘(𝑗)) ↔ ((𝑣𝑓) “ ((iEdg‘𝐴)‘𝑗)) = ((iEdg‘𝐶)‘((𝑤𝑔)‘𝑗))))
3433ralbidv 3171 . . . . . . . . . . . . . . . . . . . 20 ( = (𝑤𝑔) → (∀𝑗 ∈ dom (iEdg‘𝐴)((𝑣𝑓) “ ((iEdg‘𝐴)‘𝑗)) = ((iEdg‘𝐶)‘(𝑗)) ↔ ∀𝑗 ∈ dom (iEdg‘𝐴)((𝑣𝑓) “ ((iEdg‘𝐴)‘𝑗)) = ((iEdg‘𝐶)‘((𝑤𝑔)‘𝑗))))
3530, 34anbi12d 630 . . . . . . . . . . . . . . . . . . 19 ( = (𝑤𝑔) → ((:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑗 ∈ dom (iEdg‘𝐴)((𝑣𝑓) “ ((iEdg‘𝐴)‘𝑗)) = ((iEdg‘𝐶)‘(𝑗))) ↔ ((𝑤𝑔):dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑗 ∈ dom (iEdg‘𝐴)((𝑣𝑓) “ ((iEdg‘𝐴)‘𝑗)) = ((iEdg‘𝐶)‘((𝑤𝑔)‘𝑗)))))
3623, 29, 35spcedv 3582 . . . . . . . . . . . . . . . . . 18 (((((𝐴 ∈ UHGraph ∧ 𝐵 ∈ UHGraph ∧ 𝐶𝑋) ∧ 𝑓:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐵) ∧ 𝑣:(Vtx‘𝐵)–1-1-onto→(Vtx‘𝐶)) ∧ (𝑔:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐵) ∧ ∀𝑖 ∈ dom (iEdg‘𝐴)(𝑓 “ ((iEdg‘𝐴)‘𝑖)) = ((iEdg‘𝐵)‘(𝑔𝑖)))) ∧ (𝑤:dom (iEdg‘𝐵)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑘 ∈ dom (iEdg‘𝐵)(𝑣 “ ((iEdg‘𝐵)‘𝑘)) = ((iEdg‘𝐶)‘(𝑤𝑘)))) → ∃(:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑗 ∈ dom (iEdg‘𝐴)((𝑣𝑓) “ ((iEdg‘𝐴)‘𝑗)) = ((iEdg‘𝐶)‘(𝑗))))
3736ex 412 . . . . . . . . . . . . . . . . 17 ((((𝐴 ∈ UHGraph ∧ 𝐵 ∈ UHGraph ∧ 𝐶𝑋) ∧ 𝑓:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐵) ∧ 𝑣:(Vtx‘𝐵)–1-1-onto→(Vtx‘𝐶)) ∧ (𝑔:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐵) ∧ ∀𝑖 ∈ dom (iEdg‘𝐴)(𝑓 “ ((iEdg‘𝐴)‘𝑖)) = ((iEdg‘𝐵)‘(𝑔𝑖)))) → ((𝑤:dom (iEdg‘𝐵)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑘 ∈ dom (iEdg‘𝐵)(𝑣 “ ((iEdg‘𝐵)‘𝑘)) = ((iEdg‘𝐶)‘(𝑤𝑘))) → ∃(:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑗 ∈ dom (iEdg‘𝐴)((𝑣𝑓) “ ((iEdg‘𝐴)‘𝑗)) = ((iEdg‘𝐶)‘(𝑗)))))
3837exlimdv 1928 . . . . . . . . . . . . . . . 16 ((((𝐴 ∈ UHGraph ∧ 𝐵 ∈ UHGraph ∧ 𝐶𝑋) ∧ 𝑓:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐵) ∧ 𝑣:(Vtx‘𝐵)–1-1-onto→(Vtx‘𝐶)) ∧ (𝑔:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐵) ∧ ∀𝑖 ∈ dom (iEdg‘𝐴)(𝑓 “ ((iEdg‘𝐴)‘𝑖)) = ((iEdg‘𝐵)‘(𝑔𝑖)))) → (∃𝑤(𝑤:dom (iEdg‘𝐵)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑘 ∈ dom (iEdg‘𝐵)(𝑣 “ ((iEdg‘𝐵)‘𝑘)) = ((iEdg‘𝐶)‘(𝑤𝑘))) → ∃(:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑗 ∈ dom (iEdg‘𝐴)((𝑣𝑓) “ ((iEdg‘𝐴)‘𝑗)) = ((iEdg‘𝐶)‘(𝑗)))))
3938ex 412 . . . . . . . . . . . . . . 15 (((𝐴 ∈ UHGraph ∧ 𝐵 ∈ UHGraph ∧ 𝐶𝑋) ∧ 𝑓:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐵) ∧ 𝑣:(Vtx‘𝐵)–1-1-onto→(Vtx‘𝐶)) → ((𝑔:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐵) ∧ ∀𝑖 ∈ dom (iEdg‘𝐴)(𝑓 “ ((iEdg‘𝐴)‘𝑖)) = ((iEdg‘𝐵)‘(𝑔𝑖))) → (∃𝑤(𝑤:dom (iEdg‘𝐵)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑘 ∈ dom (iEdg‘𝐵)(𝑣 “ ((iEdg‘𝐵)‘𝑘)) = ((iEdg‘𝐶)‘(𝑤𝑘))) → ∃(:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑗 ∈ dom (iEdg‘𝐴)((𝑣𝑓) “ ((iEdg‘𝐴)‘𝑗)) = ((iEdg‘𝐶)‘(𝑗))))))
4039exlimdv 1928 . . . . . . . . . . . . . 14 (((𝐴 ∈ UHGraph ∧ 𝐵 ∈ UHGraph ∧ 𝐶𝑋) ∧ 𝑓:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐵) ∧ 𝑣:(Vtx‘𝐵)–1-1-onto→(Vtx‘𝐶)) → (∃𝑔(𝑔:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐵) ∧ ∀𝑖 ∈ dom (iEdg‘𝐴)(𝑓 “ ((iEdg‘𝐴)‘𝑖)) = ((iEdg‘𝐵)‘(𝑔𝑖))) → (∃𝑤(𝑤:dom (iEdg‘𝐵)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑘 ∈ dom (iEdg‘𝐵)(𝑣 “ ((iEdg‘𝐵)‘𝑘)) = ((iEdg‘𝐶)‘(𝑤𝑘))) → ∃(:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑗 ∈ dom (iEdg‘𝐴)((𝑣𝑓) “ ((iEdg‘𝐴)‘𝑗)) = ((iEdg‘𝐶)‘(𝑗))))))
41403exp 1116 . . . . . . . . . . . . 13 ((𝐴 ∈ UHGraph ∧ 𝐵 ∈ UHGraph ∧ 𝐶𝑋) → (𝑓:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐵) → (𝑣:(Vtx‘𝐵)–1-1-onto→(Vtx‘𝐶) → (∃𝑔(𝑔:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐵) ∧ ∀𝑖 ∈ dom (iEdg‘𝐴)(𝑓 “ ((iEdg‘𝐴)‘𝑖)) = ((iEdg‘𝐵)‘(𝑔𝑖))) → (∃𝑤(𝑤:dom (iEdg‘𝐵)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑘 ∈ dom (iEdg‘𝐵)(𝑣 “ ((iEdg‘𝐵)‘𝑘)) = ((iEdg‘𝐶)‘(𝑤𝑘))) → ∃(:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑗 ∈ dom (iEdg‘𝐴)((𝑣𝑓) “ ((iEdg‘𝐴)‘𝑗)) = ((iEdg‘𝐶)‘(𝑗))))))))
4241com34 91 . . . . . . . . . . . 12 ((𝐴 ∈ UHGraph ∧ 𝐵 ∈ UHGraph ∧ 𝐶𝑋) → (𝑓:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐵) → (∃𝑔(𝑔:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐵) ∧ ∀𝑖 ∈ dom (iEdg‘𝐴)(𝑓 “ ((iEdg‘𝐴)‘𝑖)) = ((iEdg‘𝐵)‘(𝑔𝑖))) → (𝑣:(Vtx‘𝐵)–1-1-onto→(Vtx‘𝐶) → (∃𝑤(𝑤:dom (iEdg‘𝐵)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑘 ∈ dom (iEdg‘𝐵)(𝑣 “ ((iEdg‘𝐵)‘𝑘)) = ((iEdg‘𝐶)‘(𝑤𝑘))) → ∃(:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑗 ∈ dom (iEdg‘𝐴)((𝑣𝑓) “ ((iEdg‘𝐴)‘𝑗)) = ((iEdg‘𝐶)‘(𝑗))))))))
4342imp32 418 . . . . . . . . . . 11 (((𝐴 ∈ UHGraph ∧ 𝐵 ∈ UHGraph ∧ 𝐶𝑋) ∧ (𝑓:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐵) ∧ ∃𝑔(𝑔:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐵) ∧ ∀𝑖 ∈ dom (iEdg‘𝐴)(𝑓 “ ((iEdg‘𝐴)‘𝑖)) = ((iEdg‘𝐵)‘(𝑔𝑖))))) → (𝑣:(Vtx‘𝐵)–1-1-onto→(Vtx‘𝐶) → (∃𝑤(𝑤:dom (iEdg‘𝐵)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑘 ∈ dom (iEdg‘𝐵)(𝑣 “ ((iEdg‘𝐵)‘𝑘)) = ((iEdg‘𝐶)‘(𝑤𝑘))) → ∃(:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑗 ∈ dom (iEdg‘𝐴)((𝑣𝑓) “ ((iEdg‘𝐴)‘𝑗)) = ((iEdg‘𝐶)‘(𝑗))))))
4443imp32 418 . . . . . . . . . 10 ((((𝐴 ∈ UHGraph ∧ 𝐵 ∈ UHGraph ∧ 𝐶𝑋) ∧ (𝑓:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐵) ∧ ∃𝑔(𝑔:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐵) ∧ ∀𝑖 ∈ dom (iEdg‘𝐴)(𝑓 “ ((iEdg‘𝐴)‘𝑖)) = ((iEdg‘𝐵)‘(𝑔𝑖))))) ∧ (𝑣:(Vtx‘𝐵)–1-1-onto→(Vtx‘𝐶) ∧ ∃𝑤(𝑤:dom (iEdg‘𝐵)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑘 ∈ dom (iEdg‘𝐵)(𝑣 “ ((iEdg‘𝐵)‘𝑘)) = ((iEdg‘𝐶)‘(𝑤𝑘))))) → ∃(:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑗 ∈ dom (iEdg‘𝐴)((𝑣𝑓) “ ((iEdg‘𝐴)‘𝑗)) = ((iEdg‘𝐶)‘(𝑗))))
4519, 44jca 511 . . . . . . . . 9 ((((𝐴 ∈ UHGraph ∧ 𝐵 ∈ UHGraph ∧ 𝐶𝑋) ∧ (𝑓:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐵) ∧ ∃𝑔(𝑔:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐵) ∧ ∀𝑖 ∈ dom (iEdg‘𝐴)(𝑓 “ ((iEdg‘𝐴)‘𝑖)) = ((iEdg‘𝐵)‘(𝑔𝑖))))) ∧ (𝑣:(Vtx‘𝐵)–1-1-onto→(Vtx‘𝐶) ∧ ∃𝑤(𝑤:dom (iEdg‘𝐵)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑘 ∈ dom (iEdg‘𝐵)(𝑣 “ ((iEdg‘𝐵)‘𝑘)) = ((iEdg‘𝐶)‘(𝑤𝑘))))) → ((𝑣𝑓):(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐶) ∧ ∃(:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑗 ∈ dom (iEdg‘𝐴)((𝑣𝑓) “ ((iEdg‘𝐴)‘𝑗)) = ((iEdg‘𝐶)‘(𝑗)))))
46 f1oeq1 6815 . . . . . . . . . 10 (𝑒 = (𝑣𝑓) → (𝑒:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐶) ↔ (𝑣𝑓):(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐶)))
47 imaeq1 6048 . . . . . . . . . . . . . 14 (𝑒 = (𝑣𝑓) → (𝑒 “ ((iEdg‘𝐴)‘𝑗)) = ((𝑣𝑓) “ ((iEdg‘𝐴)‘𝑗)))
4847eqeq1d 2728 . . . . . . . . . . . . 13 (𝑒 = (𝑣𝑓) → ((𝑒 “ ((iEdg‘𝐴)‘𝑗)) = ((iEdg‘𝐶)‘(𝑗)) ↔ ((𝑣𝑓) “ ((iEdg‘𝐴)‘𝑗)) = ((iEdg‘𝐶)‘(𝑗))))
4948ralbidv 3171 . . . . . . . . . . . 12 (𝑒 = (𝑣𝑓) → (∀𝑗 ∈ dom (iEdg‘𝐴)(𝑒 “ ((iEdg‘𝐴)‘𝑗)) = ((iEdg‘𝐶)‘(𝑗)) ↔ ∀𝑗 ∈ dom (iEdg‘𝐴)((𝑣𝑓) “ ((iEdg‘𝐴)‘𝑗)) = ((iEdg‘𝐶)‘(𝑗))))
5049anbi2d 628 . . . . . . . . . . 11 (𝑒 = (𝑣𝑓) → ((:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑗 ∈ dom (iEdg‘𝐴)(𝑒 “ ((iEdg‘𝐴)‘𝑗)) = ((iEdg‘𝐶)‘(𝑗))) ↔ (:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑗 ∈ dom (iEdg‘𝐴)((𝑣𝑓) “ ((iEdg‘𝐴)‘𝑗)) = ((iEdg‘𝐶)‘(𝑗)))))
5150exbidv 1916 . . . . . . . . . 10 (𝑒 = (𝑣𝑓) → (∃(:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑗 ∈ dom (iEdg‘𝐴)(𝑒 “ ((iEdg‘𝐴)‘𝑗)) = ((iEdg‘𝐶)‘(𝑗))) ↔ ∃(:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑗 ∈ dom (iEdg‘𝐴)((𝑣𝑓) “ ((iEdg‘𝐴)‘𝑗)) = ((iEdg‘𝐶)‘(𝑗)))))
5246, 51anbi12d 630 . . . . . . . . 9 (𝑒 = (𝑣𝑓) → ((𝑒:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐶) ∧ ∃(:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑗 ∈ dom (iEdg‘𝐴)(𝑒 “ ((iEdg‘𝐴)‘𝑗)) = ((iEdg‘𝐶)‘(𝑗)))) ↔ ((𝑣𝑓):(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐶) ∧ ∃(:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑗 ∈ dom (iEdg‘𝐴)((𝑣𝑓) “ ((iEdg‘𝐴)‘𝑗)) = ((iEdg‘𝐶)‘(𝑗))))))
5315, 45, 52spcedv 3582 . . . . . . . 8 ((((𝐴 ∈ UHGraph ∧ 𝐵 ∈ UHGraph ∧ 𝐶𝑋) ∧ (𝑓:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐵) ∧ ∃𝑔(𝑔:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐵) ∧ ∀𝑖 ∈ dom (iEdg‘𝐴)(𝑓 “ ((iEdg‘𝐴)‘𝑖)) = ((iEdg‘𝐵)‘(𝑔𝑖))))) ∧ (𝑣:(Vtx‘𝐵)–1-1-onto→(Vtx‘𝐶) ∧ ∃𝑤(𝑤:dom (iEdg‘𝐵)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑘 ∈ dom (iEdg‘𝐵)(𝑣 “ ((iEdg‘𝐵)‘𝑘)) = ((iEdg‘𝐶)‘(𝑤𝑘))))) → ∃𝑒(𝑒:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐶) ∧ ∃(:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑗 ∈ dom (iEdg‘𝐴)(𝑒 “ ((iEdg‘𝐴)‘𝑗)) = ((iEdg‘𝐶)‘(𝑗)))))
541, 7, 3, 8isomgr 47063 . . . . . . . . . 10 ((𝐴 ∈ UHGraph ∧ 𝐶𝑋) → (𝐴 IsomGr 𝐶 ↔ ∃𝑒(𝑒:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐶) ∧ ∃(:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑗 ∈ dom (iEdg‘𝐴)(𝑒 “ ((iEdg‘𝐴)‘𝑗)) = ((iEdg‘𝐶)‘(𝑗))))))
55543adant2 1128 . . . . . . . . 9 ((𝐴 ∈ UHGraph ∧ 𝐵 ∈ UHGraph ∧ 𝐶𝑋) → (𝐴 IsomGr 𝐶 ↔ ∃𝑒(𝑒:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐶) ∧ ∃(:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑗 ∈ dom (iEdg‘𝐴)(𝑒 “ ((iEdg‘𝐴)‘𝑗)) = ((iEdg‘𝐶)‘(𝑗))))))
5655ad2antrr 723 . . . . . . . 8 ((((𝐴 ∈ UHGraph ∧ 𝐵 ∈ UHGraph ∧ 𝐶𝑋) ∧ (𝑓:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐵) ∧ ∃𝑔(𝑔:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐵) ∧ ∀𝑖 ∈ dom (iEdg‘𝐴)(𝑓 “ ((iEdg‘𝐴)‘𝑖)) = ((iEdg‘𝐵)‘(𝑔𝑖))))) ∧ (𝑣:(Vtx‘𝐵)–1-1-onto→(Vtx‘𝐶) ∧ ∃𝑤(𝑤:dom (iEdg‘𝐵)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑘 ∈ dom (iEdg‘𝐵)(𝑣 “ ((iEdg‘𝐵)‘𝑘)) = ((iEdg‘𝐶)‘(𝑤𝑘))))) → (𝐴 IsomGr 𝐶 ↔ ∃𝑒(𝑒:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐶) ∧ ∃(:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑗 ∈ dom (iEdg‘𝐴)(𝑒 “ ((iEdg‘𝐴)‘𝑗)) = ((iEdg‘𝐶)‘(𝑗))))))
5753, 56mpbird 257 . . . . . . 7 ((((𝐴 ∈ UHGraph ∧ 𝐵 ∈ UHGraph ∧ 𝐶𝑋) ∧ (𝑓:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐵) ∧ ∃𝑔(𝑔:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐵) ∧ ∀𝑖 ∈ dom (iEdg‘𝐴)(𝑓 “ ((iEdg‘𝐴)‘𝑖)) = ((iEdg‘𝐵)‘(𝑔𝑖))))) ∧ (𝑣:(Vtx‘𝐵)–1-1-onto→(Vtx‘𝐶) ∧ ∃𝑤(𝑤:dom (iEdg‘𝐵)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑘 ∈ dom (iEdg‘𝐵)(𝑣 “ ((iEdg‘𝐵)‘𝑘)) = ((iEdg‘𝐶)‘(𝑤𝑘))))) → 𝐴 IsomGr 𝐶)
5857ex 412 . . . . . 6 (((𝐴 ∈ UHGraph ∧ 𝐵 ∈ UHGraph ∧ 𝐶𝑋) ∧ (𝑓:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐵) ∧ ∃𝑔(𝑔:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐵) ∧ ∀𝑖 ∈ dom (iEdg‘𝐴)(𝑓 “ ((iEdg‘𝐴)‘𝑖)) = ((iEdg‘𝐵)‘(𝑔𝑖))))) → ((𝑣:(Vtx‘𝐵)–1-1-onto→(Vtx‘𝐶) ∧ ∃𝑤(𝑤:dom (iEdg‘𝐵)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑘 ∈ dom (iEdg‘𝐵)(𝑣 “ ((iEdg‘𝐵)‘𝑘)) = ((iEdg‘𝐶)‘(𝑤𝑘)))) → 𝐴 IsomGr 𝐶))
5958exlimdv 1928 . . . . 5 (((𝐴 ∈ UHGraph ∧ 𝐵 ∈ UHGraph ∧ 𝐶𝑋) ∧ (𝑓:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐵) ∧ ∃𝑔(𝑔:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐵) ∧ ∀𝑖 ∈ dom (iEdg‘𝐴)(𝑓 “ ((iEdg‘𝐴)‘𝑖)) = ((iEdg‘𝐵)‘(𝑔𝑖))))) → (∃𝑣(𝑣:(Vtx‘𝐵)–1-1-onto→(Vtx‘𝐶) ∧ ∃𝑤(𝑤:dom (iEdg‘𝐵)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑘 ∈ dom (iEdg‘𝐵)(𝑣 “ ((iEdg‘𝐵)‘𝑘)) = ((iEdg‘𝐶)‘(𝑤𝑘)))) → 𝐴 IsomGr 𝐶))
6059ex 412 . . . 4 ((𝐴 ∈ UHGraph ∧ 𝐵 ∈ UHGraph ∧ 𝐶𝑋) → ((𝑓:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐵) ∧ ∃𝑔(𝑔:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐵) ∧ ∀𝑖 ∈ dom (iEdg‘𝐴)(𝑓 “ ((iEdg‘𝐴)‘𝑖)) = ((iEdg‘𝐵)‘(𝑔𝑖)))) → (∃𝑣(𝑣:(Vtx‘𝐵)–1-1-onto→(Vtx‘𝐶) ∧ ∃𝑤(𝑤:dom (iEdg‘𝐵)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑘 ∈ dom (iEdg‘𝐵)(𝑣 “ ((iEdg‘𝐵)‘𝑘)) = ((iEdg‘𝐶)‘(𝑤𝑘)))) → 𝐴 IsomGr 𝐶)))
6160exlimdv 1928 . . 3 ((𝐴 ∈ UHGraph ∧ 𝐵 ∈ UHGraph ∧ 𝐶𝑋) → (∃𝑓(𝑓:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐵) ∧ ∃𝑔(𝑔:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐵) ∧ ∀𝑖 ∈ dom (iEdg‘𝐴)(𝑓 “ ((iEdg‘𝐴)‘𝑖)) = ((iEdg‘𝐵)‘(𝑔𝑖)))) → (∃𝑣(𝑣:(Vtx‘𝐵)–1-1-onto→(Vtx‘𝐶) ∧ ∃𝑤(𝑤:dom (iEdg‘𝐵)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑘 ∈ dom (iEdg‘𝐵)(𝑣 “ ((iEdg‘𝐵)‘𝑘)) = ((iEdg‘𝐶)‘(𝑤𝑘)))) → 𝐴 IsomGr 𝐶)))
6261impd 410 . 2 ((𝐴 ∈ UHGraph ∧ 𝐵 ∈ UHGraph ∧ 𝐶𝑋) → ((∃𝑓(𝑓:(Vtx‘𝐴)–1-1-onto→(Vtx‘𝐵) ∧ ∃𝑔(𝑔:dom (iEdg‘𝐴)–1-1-onto→dom (iEdg‘𝐵) ∧ ∀𝑖 ∈ dom (iEdg‘𝐴)(𝑓 “ ((iEdg‘𝐴)‘𝑖)) = ((iEdg‘𝐵)‘(𝑔𝑖)))) ∧ ∃𝑣(𝑣:(Vtx‘𝐵)–1-1-onto→(Vtx‘𝐶) ∧ ∃𝑤(𝑤:dom (iEdg‘𝐵)–1-1-onto→dom (iEdg‘𝐶) ∧ ∀𝑘 ∈ dom (iEdg‘𝐵)(𝑣 “ ((iEdg‘𝐵)‘𝑘)) = ((iEdg‘𝐶)‘(𝑤𝑘))))) → 𝐴 IsomGr 𝐶))
6311, 62sylbid 239 1 ((𝐴 ∈ UHGraph ∧ 𝐵 ∈ UHGraph ∧ 𝐶𝑋) → ((𝐴 IsomGr 𝐵𝐵 IsomGr 𝐶) → 𝐴 IsomGr 𝐶))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 205  wa 395  w3a 1084   = wceq 1533  wex 1773  wcel 2098  wral 3055  Vcvv 3468   class class class wbr 5141  dom cdm 5669  cima 5672  ccom 5673  1-1-ontowf1o 6536  cfv 6537  Vtxcvtx 28764  iEdgciedg 28765  UHGraphcuhgr 28824   IsomGr cisomgr 47059
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1789  ax-4 1803  ax-5 1905  ax-6 1963  ax-7 2003  ax-8 2100  ax-9 2108  ax-10 2129  ax-11 2146  ax-12 2163  ax-ext 2697  ax-sep 5292  ax-nul 5299  ax-pow 5356  ax-pr 5420  ax-un 7722
This theorem depends on definitions:  df-bi 206  df-an 396  df-or 845  df-3an 1086  df-tru 1536  df-fal 1546  df-ex 1774  df-nf 1778  df-sb 2060  df-mo 2528  df-eu 2557  df-clab 2704  df-cleq 2718  df-clel 2804  df-nfc 2879  df-ne 2935  df-ral 3056  df-rex 3065  df-rab 3427  df-v 3470  df-dif 3946  df-un 3948  df-in 3950  df-ss 3960  df-nul 4318  df-if 4524  df-pw 4599  df-sn 4624  df-pr 4626  df-op 4630  df-uni 4903  df-br 5142  df-opab 5204  df-id 5567  df-xp 5675  df-rel 5676  df-cnv 5677  df-co 5678  df-dm 5679  df-rn 5680  df-res 5681  df-ima 5682  df-iota 6489  df-fun 6539  df-fn 6540  df-f 6541  df-f1 6542  df-fo 6543  df-f1o 6544  df-fv 6545  df-isomgr 47061
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator