| Step | Hyp | Ref
 | Expression | 
| 1 |   | f1oco 5309 | 
. . . . 5
⊢ ((G:B–1-1-onto→C ∧ H:A–1-1-onto→B) →
(G ∘
H):A–1-1-onto→C) | 
| 2 | 1 | ad2ant2r 727 | 
. . . 4
⊢ (((G:B–1-1-onto→C ∧ ∀u ∈ B ∀v ∈ B (uSv ↔
(G ‘u)T(G ‘v)))
∧ (H:A–1-1-onto→B ∧ ∀z ∈ A ∀w ∈ A (zRw ↔
(H ‘z)S(H ‘w))))
→ (G ∘ H):A–1-1-onto→C) | 
| 3 | 2 | ancoms 439 | 
. . 3
⊢ (((H:A–1-1-onto→B ∧ ∀z ∈ A ∀w ∈ A (zRw ↔
(H ‘z)S(H ‘w)))
∧ (G:B–1-1-onto→C ∧ ∀u ∈ B ∀v ∈ B (uSv ↔
(G ‘u)T(G ‘v))))
→ (G ∘ H):A–1-1-onto→C) | 
| 4 |   | f1of 5288 | 
. . . . . . . . 9
⊢ (H:A–1-1-onto→B →
H:A–→B) | 
| 5 |   | ffvelrn 5416 | 
. . . . . . . . . . 11
⊢ ((H:A–→B
∧ x ∈ A) →
(H ‘x) ∈ B) | 
| 6 | 5 | ex 423 | 
. . . . . . . . . 10
⊢ (H:A–→B
→ (x ∈ A →
(H ‘x) ∈ B)) | 
| 7 |   | ffvelrn 5416 | 
. . . . . . . . . . 11
⊢ ((H:A–→B
∧ y ∈ A) →
(H ‘y) ∈ B) | 
| 8 | 7 | ex 423 | 
. . . . . . . . . 10
⊢ (H:A–→B
→ (y ∈ A →
(H ‘y) ∈ B)) | 
| 9 | 6, 8 | anim12d 546 | 
. . . . . . . . 9
⊢ (H:A–→B
→ ((x ∈ A ∧ y ∈ A) →
((H ‘x) ∈ B ∧ (H ‘y)
∈ B))) | 
| 10 | 4, 9 | syl 15 | 
. . . . . . . 8
⊢ (H:A–1-1-onto→B →
((x ∈
A ∧
y ∈
A) → ((H ‘x)
∈ B ∧ (H
‘y) ∈ B))) | 
| 11 | 10 | adantr 451 | 
. . . . . . 7
⊢ ((H:A–1-1-onto→B ∧ ∀z ∈ A ∀w ∈ A (zRw ↔
(H ‘z)S(H ‘w)))
→ ((x ∈ A ∧ y ∈ A) →
((H ‘x) ∈ B ∧ (H ‘y)
∈ B))) | 
| 12 |   | breq1 4643 | 
. . . . . . . . . . 11
⊢ (u = (H
‘x) → (uSv ↔ (H
‘x)Sv)) | 
| 13 |   | fveq2 5329 | 
. . . . . . . . . . . 12
⊢ (u = (H
‘x) → (G ‘u) =
(G ‘(H ‘x))) | 
| 14 | 13 | breq1d 4650 | 
. . . . . . . . . . 11
⊢ (u = (H
‘x) → ((G ‘u)T(G ‘v)
↔ (G ‘(H ‘x))T(G ‘v))) | 
| 15 | 12, 14 | bibi12d 312 | 
. . . . . . . . . 10
⊢ (u = (H
‘x) → ((uSv ↔ (G
‘u)T(G
‘v)) ↔ ((H ‘x)Sv ↔ (G
‘(H ‘x))T(G ‘v)))) | 
| 16 |   | breq2 4644 | 
. . . . . . . . . . 11
⊢ (v = (H
‘y) → ((H ‘x)Sv ↔ (H
‘x)S(H
‘y))) | 
| 17 |   | fveq2 5329 | 
. . . . . . . . . . . 12
⊢ (v = (H
‘y) → (G ‘v) =
(G ‘(H ‘y))) | 
| 18 | 17 | breq2d 4652 | 
. . . . . . . . . . 11
⊢ (v = (H
‘y) → ((G ‘(H
‘x))T(G
‘v) ↔ (G ‘(H
‘x))T(G
‘(H ‘y)))) | 
| 19 | 16, 18 | bibi12d 312 | 
. . . . . . . . . 10
⊢ (v = (H
‘y) → (((H ‘x)Sv ↔ (G
‘(H ‘x))T(G ‘v))
↔ ((H ‘x)S(H ‘y)
↔ (G ‘(H ‘x))T(G ‘(H
‘y))))) | 
| 20 | 15, 19 | rspc2v 2962 | 
. . . . . . . . 9
⊢ (((H ‘x)
∈ B ∧ (H
‘y) ∈ B) →
(∀u
∈ B ∀v ∈ B (uSv ↔ (G
‘u)T(G
‘v)) → ((H ‘x)S(H ‘y)
↔ (G ‘(H ‘x))T(G ‘(H
‘y))))) | 
| 21 | 20 | com12 27 | 
. . . . . . . 8
⊢ (∀u ∈ B ∀v ∈ B (uSv ↔ (G
‘u)T(G
‘v)) → (((H ‘x)
∈ B ∧ (H
‘y) ∈ B) →
((H ‘x)S(H ‘y)
↔ (G ‘(H ‘x))T(G ‘(H
‘y))))) | 
| 22 | 21 | adantl 452 | 
. . . . . . 7
⊢ ((G:B–1-1-onto→C ∧ ∀u ∈ B ∀v ∈ B (uSv ↔
(G ‘u)T(G ‘v)))
→ (((H ‘x) ∈ B ∧ (H ‘y)
∈ B)
→ ((H ‘x)S(H ‘y)
↔ (G ‘(H ‘x))T(G ‘(H
‘y))))) | 
| 23 | 11, 22 | sylan9 638 | 
. . . . . 6
⊢ (((H:A–1-1-onto→B ∧ ∀z ∈ A ∀w ∈ A (zRw ↔
(H ‘z)S(H ‘w)))
∧ (G:B–1-1-onto→C ∧ ∀u ∈ B ∀v ∈ B (uSv ↔
(G ‘u)T(G ‘v))))
→ ((x ∈ A ∧ y ∈ A) →
((H ‘x)S(H ‘y)
↔ (G ‘(H ‘x))T(G ‘(H
‘y))))) | 
| 24 | 23 | imp 418 | 
. . . . 5
⊢ ((((H:A–1-1-onto→B ∧ ∀z ∈ A ∀w ∈ A (zRw ↔
(H ‘z)S(H ‘w)))
∧ (G:B–1-1-onto→C ∧ ∀u ∈ B ∀v ∈ B (uSv ↔
(G ‘u)T(G ‘v))))
∧ (x ∈ A ∧ y ∈ A)) →
((H ‘x)S(H ‘y)
↔ (G ‘(H ‘x))T(G ‘(H
‘y)))) | 
| 25 |   | breq1 4643 | 
. . . . . . . . . 10
⊢ (z = x →
(zRw ↔
xRw)) | 
| 26 |   | fveq2 5329 | 
. . . . . . . . . . 11
⊢ (z = x →
(H ‘z) = (H
‘x)) | 
| 27 | 26 | breq1d 4650 | 
. . . . . . . . . 10
⊢ (z = x →
((H ‘z)S(H ‘w)
↔ (H ‘x)S(H ‘w))) | 
| 28 | 25, 27 | bibi12d 312 | 
. . . . . . . . 9
⊢ (z = x →
((zRw ↔
(H ‘z)S(H ‘w))
↔ (xRw ↔
(H ‘x)S(H ‘w)))) | 
| 29 |   | breq2 4644 | 
. . . . . . . . . 10
⊢ (w = y →
(xRw ↔
xRy)) | 
| 30 |   | fveq2 5329 | 
. . . . . . . . . . 11
⊢ (w = y →
(H ‘w) = (H
‘y)) | 
| 31 | 30 | breq2d 4652 | 
. . . . . . . . . 10
⊢ (w = y →
((H ‘x)S(H ‘w)
↔ (H ‘x)S(H ‘y))) | 
| 32 | 29, 31 | bibi12d 312 | 
. . . . . . . . 9
⊢ (w = y →
((xRw ↔
(H ‘x)S(H ‘w))
↔ (xRy ↔
(H ‘x)S(H ‘y)))) | 
| 33 | 28, 32 | rspc2v 2962 | 
. . . . . . . 8
⊢ ((x ∈ A ∧ y ∈ A) → (∀z ∈ A ∀w ∈ A (zRw ↔ (H
‘z)S(H
‘w)) → (xRy ↔ (H
‘x)S(H
‘y)))) | 
| 34 | 33 | impcom 419 | 
. . . . . . 7
⊢ ((∀z ∈ A ∀w ∈ A (zRw ↔ (H
‘z)S(H
‘w)) ∧ (x ∈ A ∧ y ∈ A)) →
(xRy ↔
(H ‘x)S(H ‘y))) | 
| 35 | 34 | adantll 694 | 
. . . . . 6
⊢ (((H:A–1-1-onto→B ∧ ∀z ∈ A ∀w ∈ A (zRw ↔
(H ‘z)S(H ‘w)))
∧ (x ∈ A ∧ y ∈ A)) →
(xRy ↔
(H ‘x)S(H ‘y))) | 
| 36 | 35 | adantlr 695 | 
. . . . 5
⊢ ((((H:A–1-1-onto→B ∧ ∀z ∈ A ∀w ∈ A (zRw ↔
(H ‘z)S(H ‘w)))
∧ (G:B–1-1-onto→C ∧ ∀u ∈ B ∀v ∈ B (uSv ↔
(G ‘u)T(G ‘v))))
∧ (x ∈ A ∧ y ∈ A)) →
(xRy ↔
(H ‘x)S(H ‘y))) | 
| 37 | 4 | ad2antrr 706 | 
. . . . . 6
⊢ (((H:A–1-1-onto→B ∧ ∀z ∈ A ∀w ∈ A (zRw ↔
(H ‘z)S(H ‘w)))
∧ (G:B–1-1-onto→C ∧ ∀u ∈ B ∀v ∈ B (uSv ↔
(G ‘u)T(G ‘v))))
→ H:A–→B) | 
| 38 |   | fvco3 5385 | 
. . . . . . . 8
⊢ ((H:A–→B
∧ x ∈ A) →
((G ∘
H) ‘x) = (G
‘(H ‘x))) | 
| 39 |   | fvco3 5385 | 
. . . . . . . 8
⊢ ((H:A–→B
∧ y ∈ A) →
((G ∘
H) ‘y) = (G
‘(H ‘y))) | 
| 40 | 38, 39 | breqan12d 4655 | 
. . . . . . 7
⊢ (((H:A–→B
∧ x ∈ A) ∧ (H:A–→B
∧ y ∈ A)) →
(((G ∘
H) ‘x)T((G ∘ H) ‘y)
↔ (G ‘(H ‘x))T(G ‘(H
‘y)))) | 
| 41 | 40 | anandis 803 | 
. . . . . 6
⊢ ((H:A–→B
∧ (x ∈ A ∧ y ∈ A)) →
(((G ∘
H) ‘x)T((G ∘ H) ‘y)
↔ (G ‘(H ‘x))T(G ‘(H
‘y)))) | 
| 42 | 37, 41 | sylan 457 | 
. . . . 5
⊢ ((((H:A–1-1-onto→B ∧ ∀z ∈ A ∀w ∈ A (zRw ↔
(H ‘z)S(H ‘w)))
∧ (G:B–1-1-onto→C ∧ ∀u ∈ B ∀v ∈ B (uSv ↔
(G ‘u)T(G ‘v))))
∧ (x ∈ A ∧ y ∈ A)) →
(((G ∘
H) ‘x)T((G ∘ H) ‘y)
↔ (G ‘(H ‘x))T(G ‘(H
‘y)))) | 
| 43 | 24, 36, 42 | 3bitr4d 276 | 
. . . 4
⊢ ((((H:A–1-1-onto→B ∧ ∀z ∈ A ∀w ∈ A (zRw ↔
(H ‘z)S(H ‘w)))
∧ (G:B–1-1-onto→C ∧ ∀u ∈ B ∀v ∈ B (uSv ↔
(G ‘u)T(G ‘v))))
∧ (x ∈ A ∧ y ∈ A)) →
(xRy ↔
((G ∘
H) ‘x)T((G ∘ H) ‘y))) | 
| 44 | 43 | ralrimivva 2707 | 
. . 3
⊢ (((H:A–1-1-onto→B ∧ ∀z ∈ A ∀w ∈ A (zRw ↔
(H ‘z)S(H ‘w)))
∧ (G:B–1-1-onto→C ∧ ∀u ∈ B ∀v ∈ B (uSv ↔
(G ‘u)T(G ‘v))))
→ ∀x ∈ A ∀y ∈ A (xRy ↔
((G ∘
H) ‘x)T((G ∘ H) ‘y))) | 
| 45 | 3, 44 | jca 518 | 
. 2
⊢ (((H:A–1-1-onto→B ∧ ∀z ∈ A ∀w ∈ A (zRw ↔
(H ‘z)S(H ‘w)))
∧ (G:B–1-1-onto→C ∧ ∀u ∈ B ∀v ∈ B (uSv ↔
(G ‘u)T(G ‘v))))
→ ((G ∘ H):A–1-1-onto→C ∧ ∀x ∈ A ∀y ∈ A (xRy ↔
((G ∘
H) ‘x)T((G ∘ H) ‘y)))) | 
| 46 |   | df-iso 4797 | 
. . 3
⊢ (H Isom R,
S (A,
B) ↔ (H:A–1-1-onto→B ∧ ∀z ∈ A ∀w ∈ A (zRw ↔
(H ‘z)S(H ‘w)))) | 
| 47 |   | df-iso 4797 | 
. . 3
⊢ (G Isom S,
T (B,
C) ↔ (G:B–1-1-onto→C ∧ ∀u ∈ B ∀v ∈ B (uSv ↔
(G ‘u)T(G ‘v)))) | 
| 48 | 46, 47 | anbi12i 678 | 
. 2
⊢ ((H Isom R,
S (A,
B) ∧
G Isom S, T (B, C)) ↔
((H:A–1-1-onto→B ∧ ∀z ∈ A ∀w ∈ A (zRw ↔
(H ‘z)S(H ‘w)))
∧ (G:B–1-1-onto→C ∧ ∀u ∈ B ∀v ∈ B (uSv ↔
(G ‘u)T(G ‘v))))) | 
| 49 |   | df-iso 4797 | 
. 2
⊢ ((G ∘ H) Isom R,
T (A,
C) ↔ ((G ∘ H):A–1-1-onto→C ∧ ∀x ∈ A ∀y ∈ A (xRy ↔
((G ∘
H) ‘x)T((G ∘ H) ‘y)))) | 
| 50 | 45, 48, 49 | 3imtr4i 257 | 
1
⊢ ((H Isom R,
S (A,
B) ∧
G Isom S, T (B, C)) →
(G ∘
H) Isom R, T (A, C)) |