| Step | Hyp | Ref
| Expression |
| 1 | | opeq 4620 |
. . . . 5
⊢ y = 〈 Proj1 y, Proj2 y〉 |
| 2 | 1 | breq1i 4647 |
. . . 4
⊢ (y(1st ∘ 1st ) Proj1
x ↔ 〈 Proj1 y, Proj2 y〉(1st
∘ 1st )
Proj1 x) |
| 3 | | brco 4884 |
. . . 4
⊢ (〈 Proj1 y, Proj2 y〉(1st
∘ 1st )
Proj1 x ↔ ∃t(〈 Proj1 y, Proj2 y〉1st
t ∧
t1st
Proj1 x)) |
| 4 | | vex 2863 |
. . . . . . . . . 10
⊢ y ∈
V |
| 5 | 4 | proj1ex 4594 |
. . . . . . . . 9
⊢ Proj1 y ∈ V |
| 6 | 4 | proj2ex 4595 |
. . . . . . . . 9
⊢ Proj2 y ∈ V |
| 7 | 5, 6 | opbr1st 5502 |
. . . . . . . 8
⊢ (〈 Proj1 y, Proj2 y〉1st
t ↔ Proj1
y = t) |
| 8 | | eqcom 2355 |
. . . . . . . 8
⊢ ( Proj1 y = t ↔ t =
Proj1 y) |
| 9 | 7, 8 | bitri 240 |
. . . . . . 7
⊢ (〈 Proj1 y, Proj2 y〉1st
t ↔ t = Proj1 y) |
| 10 | 9 | anbi1i 676 |
. . . . . 6
⊢ ((〈 Proj1 y, Proj2 y〉1st
t ∧
t1st
Proj1 x) ↔ (t = Proj1 y ∧ t1st Proj1
x)) |
| 11 | 10 | exbii 1582 |
. . . . 5
⊢ (∃t(〈 Proj1 y, Proj2 y〉1st
t ∧
t1st
Proj1 x) ↔ ∃t(t = Proj1 y ∧ t1st Proj1
x)) |
| 12 | | breq1 4643 |
. . . . . . 7
⊢ (t = Proj1 y → (t1st Proj1
x ↔
Proj1 y1st Proj1 x)) |
| 13 | | opeq 4620 |
. . . . . . . . 9
⊢ Proj1 y = 〈 Proj1 Proj1 y, Proj2 Proj1 y〉 |
| 14 | 13 | breq1i 4647 |
. . . . . . . 8
⊢ ( Proj1 y1st Proj1
x ↔ 〈 Proj1 Proj1 y, Proj2 Proj1 y〉1st
Proj1 x) |
| 15 | 5 | proj1ex 4594 |
. . . . . . . . 9
⊢ Proj1 Proj1 y ∈
V |
| 16 | 5 | proj2ex 4595 |
. . . . . . . . 9
⊢ Proj2 Proj1 y ∈
V |
| 17 | 15, 16 | opbr1st 5502 |
. . . . . . . 8
⊢ (〈 Proj1 Proj1 y, Proj2 Proj1 y〉1st
Proj1 x
↔ Proj1 Proj1
y = Proj1
x) |
| 18 | 14, 17 | bitri 240 |
. . . . . . 7
⊢ ( Proj1 y1st Proj1
x ↔
Proj1 Proj1 y = Proj1 x) |
| 19 | 12, 18 | syl6bb 252 |
. . . . . 6
⊢ (t = Proj1 y → (t1st Proj1
x ↔
Proj1 Proj1 y = Proj1 x)) |
| 20 | 5, 19 | ceqsexv 2895 |
. . . . 5
⊢ (∃t(t = Proj1 y ∧ t1st Proj1
x) ↔
Proj1 Proj1 y = Proj1 x) |
| 21 | 11, 20 | bitri 240 |
. . . 4
⊢ (∃t(〈 Proj1 y, Proj2 y〉1st
t ∧
t1st
Proj1 x) ↔ Proj1 Proj1 y = Proj1 x) |
| 22 | 2, 3, 21 | 3bitri 262 |
. . 3
⊢ (y(1st ∘ 1st ) Proj1
x ↔
Proj1 Proj1 y = Proj1 x) |
| 23 | | opeq 4620 |
. . . . 5
⊢ Proj2 x = 〈 Proj1 Proj2 x, Proj2 Proj2 x〉 |
| 24 | 23 | breq2i 4648 |
. . . 4
⊢ (y((2nd ∘ 1st ) ⊗ 2nd ) Proj2 x ↔
y((2nd ∘ 1st ) ⊗ 2nd )〈 Proj1 Proj2 x, Proj2 Proj2 x〉) |
| 25 | | trtxp 5782 |
. . . 4
⊢ (y((2nd ∘ 1st ) ⊗ 2nd )〈 Proj1 Proj2 x, Proj2 Proj2 x〉 ↔
(y(2nd ∘ 1st ) Proj1
Proj2 x ∧ y2nd Proj2
Proj2 x)) |
| 26 | 1 | breq1i 4647 |
. . . . . 6
⊢ (y(2nd ∘ 1st ) Proj1
Proj2 x ↔ 〈 Proj1 y, Proj2 y〉(2nd ∘ 1st ) Proj1
Proj2 x) |
| 27 | | brco 4884 |
. . . . . 6
⊢ (〈 Proj1 y, Proj2 y〉(2nd
∘ 1st )
Proj1 Proj2 x ↔ ∃t(〈 Proj1 y, Proj2 y〉1st
t ∧
t2nd
Proj1 Proj2 x)) |
| 28 | 9 | anbi1i 676 |
. . . . . . . 8
⊢ ((〈 Proj1 y, Proj2 y〉1st
t ∧
t2nd
Proj1 Proj2 x) ↔ (t =
Proj1 y ∧ t2nd Proj1
Proj2 x)) |
| 29 | 28 | exbii 1582 |
. . . . . . 7
⊢ (∃t(〈 Proj1 y, Proj2 y〉1st
t ∧
t2nd
Proj1 Proj2 x) ↔ ∃t(t = Proj1 y ∧ t2nd Proj1
Proj2 x)) |
| 30 | | breq1 4643 |
. . . . . . . . 9
⊢ (t = Proj1 y → (t2nd Proj1
Proj2 x ↔ Proj1
y2nd Proj1 Proj2 x)) |
| 31 | 13 | breq1i 4647 |
. . . . . . . . . 10
⊢ ( Proj1 y2nd Proj1
Proj2 x ↔ 〈 Proj1 Proj1 y, Proj2 Proj1 y〉2nd Proj1
Proj2 x) |
| 32 | 15, 16 | opbr2nd 5503 |
. . . . . . . . . 10
⊢ (〈 Proj1 Proj1 y, Proj2 Proj1 y〉2nd
Proj1 Proj2
x ↔
Proj2 Proj1 y = Proj1 Proj2 x) |
| 33 | 31, 32 | bitri 240 |
. . . . . . . . 9
⊢ ( Proj1 y2nd Proj1
Proj2 x ↔ Proj2 Proj1 y = Proj1 Proj2 x) |
| 34 | 30, 33 | syl6bb 252 |
. . . . . . . 8
⊢ (t = Proj1 y → (t2nd Proj1
Proj2 x ↔ Proj2 Proj1 y = Proj1 Proj2 x)) |
| 35 | 5, 34 | ceqsexv 2895 |
. . . . . . 7
⊢ (∃t(t = Proj1 y ∧ t2nd Proj1
Proj2 x) ↔ Proj2 Proj1 y = Proj1 Proj2 x) |
| 36 | 29, 35 | bitri 240 |
. . . . . 6
⊢ (∃t(〈 Proj1 y, Proj2 y〉1st
t ∧
t2nd
Proj1 Proj2 x) ↔ Proj2 Proj1 y = Proj1 Proj2 x) |
| 37 | 26, 27, 36 | 3bitri 262 |
. . . . 5
⊢ (y(2nd ∘ 1st ) Proj1
Proj2 x ↔ Proj2 Proj1 y = Proj1 Proj2 x) |
| 38 | 1 | breq1i 4647 |
. . . . . 6
⊢ (y2nd Proj2
Proj2 x ↔ 〈 Proj1 y, Proj2 y〉2nd Proj2
Proj2 x) |
| 39 | 5, 6 | opbr2nd 5503 |
. . . . . 6
⊢ (〈 Proj1 y, Proj2 y〉2nd
Proj2 Proj2
x ↔
Proj2 y =
Proj2 Proj2 x) |
| 40 | 38, 39 | bitri 240 |
. . . . 5
⊢ (y2nd Proj2
Proj2 x ↔ Proj2
y = Proj2
Proj2 x) |
| 41 | 37, 40 | anbi12i 678 |
. . . 4
⊢ ((y(2nd ∘ 1st ) Proj1
Proj2 x ∧ y2nd Proj2
Proj2 x) ↔ ( Proj2 Proj1 y = Proj1 Proj2 x ∧ Proj2 y = Proj2 Proj2 x)) |
| 42 | 24, 25, 41 | 3bitri 262 |
. . 3
⊢ (y((2nd ∘ 1st ) ⊗ 2nd ) Proj2 x ↔
( Proj2 Proj1
y = Proj1
Proj2 x ∧ Proj2 y = Proj2 Proj2 x)) |
| 43 | 22, 42 | anbi12i 678 |
. 2
⊢ ((y(1st ∘ 1st ) Proj1
x ∧
y((2nd ∘ 1st ) ⊗ 2nd ) Proj2 x) ↔
( Proj1 Proj1
y = Proj1
x ∧
( Proj2 Proj1
y = Proj1
Proj2 x ∧ Proj2 y = Proj2 Proj2 x))) |
| 44 | | opeq 4620 |
. . . 4
⊢ x = 〈 Proj1 x, Proj2 x〉 |
| 45 | 44 | breq2i 4648 |
. . 3
⊢ (y((1st ∘ 1st ) ⊗ ((2nd ∘ 1st ) ⊗ 2nd
))x ↔ y((1st ∘ 1st ) ⊗ ((2nd ∘ 1st ) ⊗ 2nd ))〈 Proj1 x, Proj2 x〉) |
| 46 | | trtxp 5782 |
. . 3
⊢ (y((1st ∘ 1st ) ⊗ ((2nd ∘ 1st ) ⊗ 2nd ))〈 Proj1 x, Proj2 x〉 ↔
(y(1st ∘ 1st ) Proj1
x ∧
y((2nd ∘ 1st ) ⊗ 2nd ) Proj2 x)) |
| 47 | 45, 46 | bitri 240 |
. 2
⊢ (y((1st ∘ 1st ) ⊗ ((2nd ∘ 1st ) ⊗ 2nd
))x ↔ (y(1st ∘ 1st ) Proj1
x ∧
y((2nd ∘ 1st ) ⊗ 2nd ) Proj2 x)) |
| 48 | | 3anass 938 |
. 2
⊢ (( Proj1 Proj1 y = Proj1 x ∧ Proj2 Proj1 y = Proj1 Proj2 x ∧ Proj2 y = Proj2 Proj2 x) ↔
( Proj1 Proj1
y = Proj1
x ∧
( Proj2 Proj1
y = Proj1
Proj2 x ∧ Proj2 y = Proj2 Proj2 x))) |
| 49 | 43, 47, 48 | 3bitr4i 268 |
1
⊢ (y((1st ∘ 1st ) ⊗ ((2nd ∘ 1st ) ⊗ 2nd
))x ↔ ( Proj1
Proj1 y = Proj1 x ∧ Proj2 Proj1 y = Proj1 Proj2 x ∧ Proj2 y = Proj2 Proj2 x)) |