Metamath Proof Explorer


Theorem grimco

Description: The composition of graph isomorphisms is a graph isomorphism. (Contributed by AV, 3-May-2025)

Ref Expression
Assertion grimco ⊢ F ∈ T GraphIso U ∧ G ∈ S GraphIso T → F ∘ G ∈ S GraphIso U

Proof

Step Hyp Ref Expression
1 eqid ⊢ Vtx ⁡ T = Vtx ⁡ T
2 eqid ⊢ Vtx ⁡ U = Vtx ⁡ U
3 eqid ⊢ iEdg ⁡ T = iEdg ⁡ T
4 eqid ⊢ iEdg ⁡ U = iEdg ⁡ U
5 1 2 3 4 grimprop ⊢ F ∈ T GraphIso U → F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ ∃ f f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ x ∈ dom ⁡ iEdg ⁡ T iEdg ⁡ U ⁡ f ⁡ x = F iEdg ⁡ T ⁡ x
6 eqid ⊢ Vtx ⁡ S = Vtx ⁡ S
7 eqid ⊢ iEdg ⁡ S = iEdg ⁡ S
8 6 1 7 3 grimprop ⊢ G ∈ S GraphIso T → G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T ∧ ∃ g g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ ∀ y ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ T ⁡ g ⁡ y = G iEdg ⁡ S ⁡ y
9 f1oco ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T → F ∘ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ U
10 9 ad2ant2r ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ ∃ f f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ x ∈ dom ⁡ iEdg ⁡ T iEdg ⁡ U ⁡ f ⁡ x = F iEdg ⁡ T ⁡ x ∧ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T ∧ ∃ g g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ ∀ y ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ T ⁡ g ⁡ y = G iEdg ⁡ S ⁡ y → F ∘ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ U
11 vex ⊢ f ∈ V
12 vex ⊢ g ∈ V
13 11 12 coex ⊢ f ∘ g ∈ V
14 13 a1i ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T ∧ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ ∀ y ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ T ⁡ g ⁡ y = G iEdg ⁡ S ⁡ y ∧ f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ x ∈ dom ⁡ iEdg ⁡ T iEdg ⁡ U ⁡ f ⁡ x = F iEdg ⁡ T ⁡ x → f ∘ g ∈ V
15 f1oco ⊢ f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T → f ∘ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ U
16 15 a1d ⊢ f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T → ∀ x ∈ dom ⁡ iEdg ⁡ T iEdg ⁡ U ⁡ f ⁡ x = F iEdg ⁡ T ⁡ x → f ∘ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ U
17 16 expcom ⊢ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T → f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U → ∀ x ∈ dom ⁡ iEdg ⁡ T iEdg ⁡ U ⁡ f ⁡ x = F iEdg ⁡ T ⁡ x → f ∘ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ U
18 17 impd ⊢ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T → f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ x ∈ dom ⁡ iEdg ⁡ T iEdg ⁡ U ⁡ f ⁡ x = F iEdg ⁡ T ⁡ x → f ∘ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ U
19 18 adantr ⊢ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ ∀ y ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ T ⁡ g ⁡ y = G iEdg ⁡ S ⁡ y → f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ x ∈ dom ⁡ iEdg ⁡ T iEdg ⁡ U ⁡ f ⁡ x = F iEdg ⁡ T ⁡ x → f ∘ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ U
20 19 imp ⊢ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ ∀ y ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ T ⁡ g ⁡ y = G iEdg ⁡ S ⁡ y ∧ f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ x ∈ dom ⁡ iEdg ⁡ T iEdg ⁡ U ⁡ f ⁡ x = F iEdg ⁡ T ⁡ x → f ∘ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ U
21 20 adantl ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T ∧ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ ∀ y ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ T ⁡ g ⁡ y = G iEdg ⁡ S ⁡ y ∧ f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ x ∈ dom ⁡ iEdg ⁡ T iEdg ⁡ U ⁡ f ⁡ x = F iEdg ⁡ T ⁡ x → f ∘ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ U
22 2fveq3 ⊢ y = i → iEdg ⁡ T ⁡ g ⁡ y = iEdg ⁡ T ⁡ g ⁡ i
23 fveq2 ⊢ y = i → iEdg ⁡ S ⁡ y = iEdg ⁡ S ⁡ i
24 23 imaeq2d ⊢ y = i → G iEdg ⁡ S ⁡ y = G iEdg ⁡ S ⁡ i
25 22 24 eqeq12d ⊢ y = i → iEdg ⁡ T ⁡ g ⁡ y = G iEdg ⁡ S ⁡ y ↔ iEdg ⁡ T ⁡ g ⁡ i = G iEdg ⁡ S ⁡ i
26 25 rspcv ⊢ i ∈ dom ⁡ iEdg ⁡ S → ∀ y ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ T ⁡ g ⁡ y = G iEdg ⁡ S ⁡ y → iEdg ⁡ T ⁡ g ⁡ i = G iEdg ⁡ S ⁡ i
27 26 adantl ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T ∧ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ i ∈ dom ⁡ iEdg ⁡ S → ∀ y ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ T ⁡ g ⁡ y = G iEdg ⁡ S ⁡ y → iEdg ⁡ T ⁡ g ⁡ i = G iEdg ⁡ S ⁡ i
28 27 adantr ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T ∧ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ i ∈ dom ⁡ iEdg ⁡ S ∧ f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ x ∈ dom ⁡ iEdg ⁡ T iEdg ⁡ U ⁡ f ⁡ x = F iEdg ⁡ T ⁡ x → ∀ y ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ T ⁡ g ⁡ y = G iEdg ⁡ S ⁡ y → iEdg ⁡ T ⁡ g ⁡ i = G iEdg ⁡ S ⁡ i
29 f1of ⊢ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T → g : dom ⁡ iEdg ⁡ S ⟶ dom ⁡ iEdg ⁡ T
30 29 adantl ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T ∧ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T → g : dom ⁡ iEdg ⁡ S ⟶ dom ⁡ iEdg ⁡ T
31 30 ffvelcdmda ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T ∧ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ i ∈ dom ⁡ iEdg ⁡ S → g ⁡ i ∈ dom ⁡ iEdg ⁡ T
32 31 adantr ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T ∧ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ i ∈ dom ⁡ iEdg ⁡ S ∧ f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U → g ⁡ i ∈ dom ⁡ iEdg ⁡ T
33 2fveq3 ⊢ x = g ⁡ i → iEdg ⁡ U ⁡ f ⁡ x = iEdg ⁡ U ⁡ f ⁡ g ⁡ i
34 fveq2 ⊢ x = g ⁡ i → iEdg ⁡ T ⁡ x = iEdg ⁡ T ⁡ g ⁡ i
35 34 imaeq2d ⊢ x = g ⁡ i → F iEdg ⁡ T ⁡ x = F iEdg ⁡ T ⁡ g ⁡ i
36 33 35 eqeq12d ⊢ x = g ⁡ i → iEdg ⁡ U ⁡ f ⁡ x = F iEdg ⁡ T ⁡ x ↔ iEdg ⁡ U ⁡ f ⁡ g ⁡ i = F iEdg ⁡ T ⁡ g ⁡ i
37 36 rspcv ⊢ g ⁡ i ∈ dom ⁡ iEdg ⁡ T → ∀ x ∈ dom ⁡ iEdg ⁡ T iEdg ⁡ U ⁡ f ⁡ x = F iEdg ⁡ T ⁡ x → iEdg ⁡ U ⁡ f ⁡ g ⁡ i = F iEdg ⁡ T ⁡ g ⁡ i
38 32 37 syl ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T ∧ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ i ∈ dom ⁡ iEdg ⁡ S ∧ f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U → ∀ x ∈ dom ⁡ iEdg ⁡ T iEdg ⁡ U ⁡ f ⁡ x = F iEdg ⁡ T ⁡ x → iEdg ⁡ U ⁡ f ⁡ g ⁡ i = F iEdg ⁡ T ⁡ g ⁡ i
39 30 adantr ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T ∧ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ i ∈ dom ⁡ iEdg ⁡ S → g : dom ⁡ iEdg ⁡ S ⟶ dom ⁡ iEdg ⁡ T
40 39 adantr ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T ∧ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ i ∈ dom ⁡ iEdg ⁡ S ∧ f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U → g : dom ⁡ iEdg ⁡ S ⟶ dom ⁡ iEdg ⁡ T
41 simpr ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T ∧ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ i ∈ dom ⁡ iEdg ⁡ S → i ∈ dom ⁡ iEdg ⁡ S
42 41 adantr ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T ∧ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ i ∈ dom ⁡ iEdg ⁡ S ∧ f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U → i ∈ dom ⁡ iEdg ⁡ S
43 40 42 fvco3d ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T ∧ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ i ∈ dom ⁡ iEdg ⁡ S ∧ f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U → f ∘ g ⁡ i = f ⁡ g ⁡ i
44 43 adantr ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T ∧ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ i ∈ dom ⁡ iEdg ⁡ S ∧ f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ iEdg ⁡ U ⁡ f ⁡ g ⁡ i = F iEdg ⁡ T ⁡ g ⁡ i → f ∘ g ⁡ i = f ⁡ g ⁡ i
45 44 fveq2d ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T ∧ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ i ∈ dom ⁡ iEdg ⁡ S ∧ f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ iEdg ⁡ U ⁡ f ⁡ g ⁡ i = F iEdg ⁡ T ⁡ g ⁡ i → iEdg ⁡ U ⁡ f ∘ g ⁡ i = iEdg ⁡ U ⁡ f ⁡ g ⁡ i
46 simpr ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T ∧ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ i ∈ dom ⁡ iEdg ⁡ S ∧ f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ iEdg ⁡ U ⁡ f ⁡ g ⁡ i = F iEdg ⁡ T ⁡ g ⁡ i → iEdg ⁡ U ⁡ f ⁡ g ⁡ i = F iEdg ⁡ T ⁡ g ⁡ i
47 45 46 eqtrd ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T ∧ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ i ∈ dom ⁡ iEdg ⁡ S ∧ f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ iEdg ⁡ U ⁡ f ⁡ g ⁡ i = F iEdg ⁡ T ⁡ g ⁡ i → iEdg ⁡ U ⁡ f ∘ g ⁡ i = F iEdg ⁡ T ⁡ g ⁡ i
48 47 ex ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T ∧ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ i ∈ dom ⁡ iEdg ⁡ S ∧ f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U → iEdg ⁡ U ⁡ f ⁡ g ⁡ i = F iEdg ⁡ T ⁡ g ⁡ i → iEdg ⁡ U ⁡ f ∘ g ⁡ i = F iEdg ⁡ T ⁡ g ⁡ i
49 38 48 syld ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T ∧ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ i ∈ dom ⁡ iEdg ⁡ S ∧ f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U → ∀ x ∈ dom ⁡ iEdg ⁡ T iEdg ⁡ U ⁡ f ⁡ x = F iEdg ⁡ T ⁡ x → iEdg ⁡ U ⁡ f ∘ g ⁡ i = F iEdg ⁡ T ⁡ g ⁡ i
50 49 impr ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T ∧ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ i ∈ dom ⁡ iEdg ⁡ S ∧ f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ x ∈ dom ⁡ iEdg ⁡ T iEdg ⁡ U ⁡ f ⁡ x = F iEdg ⁡ T ⁡ x → iEdg ⁡ U ⁡ f ∘ g ⁡ i = F iEdg ⁡ T ⁡ g ⁡ i
51 imaeq2 ⊢ iEdg ⁡ T ⁡ g ⁡ i = G iEdg ⁡ S ⁡ i → F iEdg ⁡ T ⁡ g ⁡ i = F G iEdg ⁡ S ⁡ i
52 imaco ⊢ F ∘ G iEdg ⁡ S ⁡ i = F G iEdg ⁡ S ⁡ i
53 51 52 eqtr4di ⊢ iEdg ⁡ T ⁡ g ⁡ i = G iEdg ⁡ S ⁡ i → F iEdg ⁡ T ⁡ g ⁡ i = F ∘ G iEdg ⁡ S ⁡ i
54 50 53 sylan9eq ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T ∧ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ i ∈ dom ⁡ iEdg ⁡ S ∧ f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ x ∈ dom ⁡ iEdg ⁡ T iEdg ⁡ U ⁡ f ⁡ x = F iEdg ⁡ T ⁡ x ∧ iEdg ⁡ T ⁡ g ⁡ i = G iEdg ⁡ S ⁡ i → iEdg ⁡ U ⁡ f ∘ g ⁡ i = F ∘ G iEdg ⁡ S ⁡ i
55 54 ex ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T ∧ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ i ∈ dom ⁡ iEdg ⁡ S ∧ f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ x ∈ dom ⁡ iEdg ⁡ T iEdg ⁡ U ⁡ f ⁡ x = F iEdg ⁡ T ⁡ x → iEdg ⁡ T ⁡ g ⁡ i = G iEdg ⁡ S ⁡ i → iEdg ⁡ U ⁡ f ∘ g ⁡ i = F ∘ G iEdg ⁡ S ⁡ i
56 28 55 syld ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T ∧ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ i ∈ dom ⁡ iEdg ⁡ S ∧ f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ x ∈ dom ⁡ iEdg ⁡ T iEdg ⁡ U ⁡ f ⁡ x = F iEdg ⁡ T ⁡ x → ∀ y ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ T ⁡ g ⁡ y = G iEdg ⁡ S ⁡ y → iEdg ⁡ U ⁡ f ∘ g ⁡ i = F ∘ G iEdg ⁡ S ⁡ i
57 56 exp31 ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T ∧ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T → i ∈ dom ⁡ iEdg ⁡ S → f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ x ∈ dom ⁡ iEdg ⁡ T iEdg ⁡ U ⁡ f ⁡ x = F iEdg ⁡ T ⁡ x → ∀ y ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ T ⁡ g ⁡ y = G iEdg ⁡ S ⁡ y → iEdg ⁡ U ⁡ f ∘ g ⁡ i = F ∘ G iEdg ⁡ S ⁡ i
58 57 com24 ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T ∧ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T → ∀ y ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ T ⁡ g ⁡ y = G iEdg ⁡ S ⁡ y → f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ x ∈ dom ⁡ iEdg ⁡ T iEdg ⁡ U ⁡ f ⁡ x = F iEdg ⁡ T ⁡ x → i ∈ dom ⁡ iEdg ⁡ S → iEdg ⁡ U ⁡ f ∘ g ⁡ i = F ∘ G iEdg ⁡ S ⁡ i
59 58 expimpd ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T → g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ ∀ y ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ T ⁡ g ⁡ y = G iEdg ⁡ S ⁡ y → f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ x ∈ dom ⁡ iEdg ⁡ T iEdg ⁡ U ⁡ f ⁡ x = F iEdg ⁡ T ⁡ x → i ∈ dom ⁡ iEdg ⁡ S → iEdg ⁡ U ⁡ f ∘ g ⁡ i = F ∘ G iEdg ⁡ S ⁡ i
60 59 imp32 ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T ∧ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ ∀ y ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ T ⁡ g ⁡ y = G iEdg ⁡ S ⁡ y ∧ f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ x ∈ dom ⁡ iEdg ⁡ T iEdg ⁡ U ⁡ f ⁡ x = F iEdg ⁡ T ⁡ x → i ∈ dom ⁡ iEdg ⁡ S → iEdg ⁡ U ⁡ f ∘ g ⁡ i = F ∘ G iEdg ⁡ S ⁡ i
61 60 ralrimiv ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T ∧ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ ∀ y ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ T ⁡ g ⁡ y = G iEdg ⁡ S ⁡ y ∧ f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ x ∈ dom ⁡ iEdg ⁡ T iEdg ⁡ U ⁡ f ⁡ x = F iEdg ⁡ T ⁡ x → ∀ i ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ U ⁡ f ∘ g ⁡ i = F ∘ G iEdg ⁡ S ⁡ i
62 21 61 jca ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T ∧ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ ∀ y ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ T ⁡ g ⁡ y = G iEdg ⁡ S ⁡ y ∧ f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ x ∈ dom ⁡ iEdg ⁡ T iEdg ⁡ U ⁡ f ⁡ x = F iEdg ⁡ T ⁡ x → f ∘ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ i ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ U ⁡ f ∘ g ⁡ i = F ∘ G iEdg ⁡ S ⁡ i
63 f1oeq1 ⊢ j = f ∘ g → j : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ↔ f ∘ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ U
64 fveq1 ⊢ j = f ∘ g → j ⁡ i = f ∘ g ⁡ i
65 64 fveqeq2d ⊢ j = f ∘ g → iEdg ⁡ U ⁡ j ⁡ i = F ∘ G iEdg ⁡ S ⁡ i ↔ iEdg ⁡ U ⁡ f ∘ g ⁡ i = F ∘ G iEdg ⁡ S ⁡ i
66 65 ralbidv ⊢ j = f ∘ g → ∀ i ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ U ⁡ j ⁡ i = F ∘ G iEdg ⁡ S ⁡ i ↔ ∀ i ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ U ⁡ f ∘ g ⁡ i = F ∘ G iEdg ⁡ S ⁡ i
67 63 66 anbi12d ⊢ j = f ∘ g → j : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ i ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ U ⁡ j ⁡ i = F ∘ G iEdg ⁡ S ⁡ i ↔ f ∘ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ i ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ U ⁡ f ∘ g ⁡ i = F ∘ G iEdg ⁡ S ⁡ i
68 14 62 67 spcedv ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T ∧ g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ ∀ y ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ T ⁡ g ⁡ y = G iEdg ⁡ S ⁡ y ∧ f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ x ∈ dom ⁡ iEdg ⁡ T iEdg ⁡ U ⁡ f ⁡ x = F iEdg ⁡ T ⁡ x → ∃ j j : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ i ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ U ⁡ j ⁡ i = F ∘ G iEdg ⁡ S ⁡ i
69 68 exp32 ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T → g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ ∀ y ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ T ⁡ g ⁡ y = G iEdg ⁡ S ⁡ y → f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ x ∈ dom ⁡ iEdg ⁡ T iEdg ⁡ U ⁡ f ⁡ x = F iEdg ⁡ T ⁡ x → ∃ j j : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ i ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ U ⁡ j ⁡ i = F ∘ G iEdg ⁡ S ⁡ i
70 69 exlimdv ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T → ∃ g g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ ∀ y ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ T ⁡ g ⁡ y = G iEdg ⁡ S ⁡ y → f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ x ∈ dom ⁡ iEdg ⁡ T iEdg ⁡ U ⁡ f ⁡ x = F iEdg ⁡ T ⁡ x → ∃ j j : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ i ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ U ⁡ j ⁡ i = F ∘ G iEdg ⁡ S ⁡ i
71 70 expimpd ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U → G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T ∧ ∃ g g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ ∀ y ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ T ⁡ g ⁡ y = G iEdg ⁡ S ⁡ y → f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ x ∈ dom ⁡ iEdg ⁡ T iEdg ⁡ U ⁡ f ⁡ x = F iEdg ⁡ T ⁡ x → ∃ j j : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ i ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ U ⁡ j ⁡ i = F ∘ G iEdg ⁡ S ⁡ i
72 71 com23 ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U → f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ x ∈ dom ⁡ iEdg ⁡ T iEdg ⁡ U ⁡ f ⁡ x = F iEdg ⁡ T ⁡ x → G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T ∧ ∃ g g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ ∀ y ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ T ⁡ g ⁡ y = G iEdg ⁡ S ⁡ y → ∃ j j : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ i ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ U ⁡ j ⁡ i = F ∘ G iEdg ⁡ S ⁡ i
73 72 exlimdv ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U → ∃ f f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ x ∈ dom ⁡ iEdg ⁡ T iEdg ⁡ U ⁡ f ⁡ x = F iEdg ⁡ T ⁡ x → G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T ∧ ∃ g g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ ∀ y ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ T ⁡ g ⁡ y = G iEdg ⁡ S ⁡ y → ∃ j j : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ i ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ U ⁡ j ⁡ i = F ∘ G iEdg ⁡ S ⁡ i
74 73 imp31 ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ ∃ f f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ x ∈ dom ⁡ iEdg ⁡ T iEdg ⁡ U ⁡ f ⁡ x = F iEdg ⁡ T ⁡ x ∧ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T ∧ ∃ g g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ ∀ y ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ T ⁡ g ⁡ y = G iEdg ⁡ S ⁡ y → ∃ j j : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ i ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ U ⁡ j ⁡ i = F ∘ G iEdg ⁡ S ⁡ i
75 10 74 jca ⊢ F : Vtx ⁡ T ⟶ 1-1 onto Vtx ⁡ U ∧ ∃ f f : dom ⁡ iEdg ⁡ T ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ x ∈ dom ⁡ iEdg ⁡ T iEdg ⁡ U ⁡ f ⁡ x = F iEdg ⁡ T ⁡ x ∧ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ T ∧ ∃ g g : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ T ∧ ∀ y ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ T ⁡ g ⁡ y = G iEdg ⁡ S ⁡ y → F ∘ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ U ∧ ∃ j j : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ i ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ U ⁡ j ⁡ i = F ∘ G iEdg ⁡ S ⁡ i
76 5 8 75 syl2an ⊢ F ∈ T GraphIso U ∧ G ∈ S GraphIso T → F ∘ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ U ∧ ∃ j j : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ i ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ U ⁡ j ⁡ i = F ∘ G iEdg ⁡ S ⁡ i
77 grimdmrel ⊢ Rel ⁡ dom ⁡ GraphIso
78 77 ovrcl ⊢ G ∈ S GraphIso T → S ∈ V ∧ T ∈ V
79 78 simpld ⊢ G ∈ S GraphIso T → S ∈ V
80 79 adantl ⊢ F ∈ T GraphIso U ∧ G ∈ S GraphIso T → S ∈ V
81 77 ovrcl ⊢ F ∈ T GraphIso U → T ∈ V ∧ U ∈ V
82 81 simprd ⊢ F ∈ T GraphIso U → U ∈ V
83 82 adantr ⊢ F ∈ T GraphIso U ∧ G ∈ S GraphIso T → U ∈ V
84 coexg ⊢ F ∈ T GraphIso U ∧ G ∈ S GraphIso T → F ∘ G ∈ V
85 6 2 7 4 isgrim ⊢ S ∈ V ∧ U ∈ V ∧ F ∘ G ∈ V → F ∘ G ∈ S GraphIso U ↔ F ∘ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ U ∧ ∃ j j : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ i ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ U ⁡ j ⁡ i = F ∘ G iEdg ⁡ S ⁡ i
86 80 83 84 85 syl3anc ⊢ F ∈ T GraphIso U ∧ G ∈ S GraphIso T → F ∘ G ∈ S GraphIso U ↔ F ∘ G : Vtx ⁡ S ⟶ 1-1 onto Vtx ⁡ U ∧ ∃ j j : dom ⁡ iEdg ⁡ S ⟶ 1-1 onto dom ⁡ iEdg ⁡ U ∧ ∀ i ∈ dom ⁡ iEdg ⁡ S iEdg ⁡ U ⁡ j ⁡ i = F ∘ G iEdg ⁡ S ⁡ i
87 76 86 mpbird ⊢ F ∈ T GraphIso U ∧ G ∈ S GraphIso T → F ∘ G ∈ S GraphIso U