Step | Hyp | Ref
| Expression |
1 | | opex 5379 |
. . . . 5
⊢
〈𝐴, 𝐵〉 ∈ V |
2 | | brrestrict.3 |
. . . . 5
⊢ 𝐶 ∈ V |
3 | 1, 2 | brco 5779 |
. . . 4
⊢
(〈𝐴, 𝐵〉(Cap ∘
(1st ⊗ (Cart ∘ (2nd ⊗ (Range ∘
1st )))))𝐶
↔ ∃𝑥(〈𝐴, 𝐵〉(1st ⊗ (Cart ∘
(2nd ⊗ (Range ∘ 1st ))))𝑥 ∧ 𝑥Cap𝐶)) |
4 | 1 | brtxp2 34183 |
. . . . . . 7
⊢
(〈𝐴, 𝐵〉(1st ⊗
(Cart ∘ (2nd ⊗ (Range ∘ 1st ))))𝑥 ↔ ∃𝑎∃𝑏(𝑥 = 〈𝑎, 𝑏〉 ∧ 〈𝐴, 𝐵〉1st 𝑎 ∧ 〈𝐴, 𝐵〉(Cart ∘ (2nd ⊗
(Range ∘ 1st )))𝑏)) |
5 | | 3anrot 1099 |
. . . . . . . . 9
⊢ ((𝑥 = 〈𝑎, 𝑏〉 ∧ 〈𝐴, 𝐵〉1st 𝑎 ∧ 〈𝐴, 𝐵〉(Cart ∘ (2nd ⊗
(Range ∘ 1st )))𝑏) ↔ (〈𝐴, 𝐵〉1st 𝑎 ∧ 〈𝐴, 𝐵〉(Cart ∘ (2nd ⊗
(Range ∘ 1st )))𝑏 ∧ 𝑥 = 〈𝑎, 𝑏〉)) |
6 | | brrestrict.1 |
. . . . . . . . . . 11
⊢ 𝐴 ∈ V |
7 | | brrestrict.2 |
. . . . . . . . . . 11
⊢ 𝐵 ∈ V |
8 | 6, 7 | br1steq 33745 |
. . . . . . . . . 10
⊢
(〈𝐴, 𝐵〉1st 𝑎 ↔ 𝑎 = 𝐴) |
9 | | vex 3436 |
. . . . . . . . . . . 12
⊢ 𝑏 ∈ V |
10 | 1, 9 | brco 5779 |
. . . . . . . . . . 11
⊢
(〈𝐴, 𝐵〉(Cart ∘
(2nd ⊗ (Range ∘ 1st )))𝑏 ↔ ∃𝑥(〈𝐴, 𝐵〉(2nd ⊗ (Range
∘ 1st ))𝑥
∧ 𝑥Cart𝑏)) |
11 | 1 | brtxp2 34183 |
. . . . . . . . . . . . . . 15
⊢
(〈𝐴, 𝐵〉(2nd ⊗
(Range ∘ 1st ))𝑥 ↔ ∃𝑎∃𝑏(𝑥 = 〈𝑎, 𝑏〉 ∧ 〈𝐴, 𝐵〉2nd 𝑎 ∧ 〈𝐴, 𝐵〉(Range ∘ 1st )𝑏)) |
12 | | 3anrot 1099 |
. . . . . . . . . . . . . . . . 17
⊢ ((𝑥 = 〈𝑎, 𝑏〉 ∧ 〈𝐴, 𝐵〉2nd 𝑎 ∧ 〈𝐴, 𝐵〉(Range ∘ 1st )𝑏) ↔ (〈𝐴, 𝐵〉2nd 𝑎 ∧ 〈𝐴, 𝐵〉(Range ∘ 1st )𝑏 ∧ 𝑥 = 〈𝑎, 𝑏〉)) |
13 | 6, 7 | br2ndeq 33746 |
. . . . . . . . . . . . . . . . . 18
⊢
(〈𝐴, 𝐵〉2nd 𝑎 ↔ 𝑎 = 𝐵) |
14 | 1, 9 | brco 5779 |
. . . . . . . . . . . . . . . . . . 19
⊢
(〈𝐴, 𝐵〉(Range ∘
1st )𝑏 ↔
∃𝑥(〈𝐴, 𝐵〉1st 𝑥 ∧ 𝑥Range𝑏)) |
15 | 6, 7 | br1steq 33745 |
. . . . . . . . . . . . . . . . . . . . . 22
⊢
(〈𝐴, 𝐵〉1st 𝑥 ↔ 𝑥 = 𝐴) |
16 | 15 | anbi1i 624 |
. . . . . . . . . . . . . . . . . . . . 21
⊢
((〈𝐴, 𝐵〉1st 𝑥 ∧ 𝑥Range𝑏) ↔ (𝑥 = 𝐴 ∧ 𝑥Range𝑏)) |
17 | 16 | exbii 1850 |
. . . . . . . . . . . . . . . . . . . 20
⊢
(∃𝑥(〈𝐴, 𝐵〉1st 𝑥 ∧ 𝑥Range𝑏) ↔ ∃𝑥(𝑥 = 𝐴 ∧ 𝑥Range𝑏)) |
18 | | breq1 5077 |
. . . . . . . . . . . . . . . . . . . . 21
⊢ (𝑥 = 𝐴 → (𝑥Range𝑏 ↔ 𝐴Range𝑏)) |
19 | 6, 18 | ceqsexv 3479 |
. . . . . . . . . . . . . . . . . . . 20
⊢
(∃𝑥(𝑥 = 𝐴 ∧ 𝑥Range𝑏) ↔ 𝐴Range𝑏) |
20 | 17, 19 | bitri 274 |
. . . . . . . . . . . . . . . . . . 19
⊢
(∃𝑥(〈𝐴, 𝐵〉1st 𝑥 ∧ 𝑥Range𝑏) ↔ 𝐴Range𝑏) |
21 | 6, 9 | brrange 34236 |
. . . . . . . . . . . . . . . . . . 19
⊢ (𝐴Range𝑏 ↔ 𝑏 = ran 𝐴) |
22 | 14, 20, 21 | 3bitri 297 |
. . . . . . . . . . . . . . . . . 18
⊢
(〈𝐴, 𝐵〉(Range ∘
1st )𝑏 ↔
𝑏 = ran 𝐴) |
23 | | biid 260 |
. . . . . . . . . . . . . . . . . 18
⊢ (𝑥 = 〈𝑎, 𝑏〉 ↔ 𝑥 = 〈𝑎, 𝑏〉) |
24 | 13, 22, 23 | 3anbi123i 1154 |
. . . . . . . . . . . . . . . . 17
⊢
((〈𝐴, 𝐵〉2nd 𝑎 ∧ 〈𝐴, 𝐵〉(Range ∘ 1st )𝑏 ∧ 𝑥 = 〈𝑎, 𝑏〉) ↔ (𝑎 = 𝐵 ∧ 𝑏 = ran 𝐴 ∧ 𝑥 = 〈𝑎, 𝑏〉)) |
25 | 12, 24 | bitri 274 |
. . . . . . . . . . . . . . . 16
⊢ ((𝑥 = 〈𝑎, 𝑏〉 ∧ 〈𝐴, 𝐵〉2nd 𝑎 ∧ 〈𝐴, 𝐵〉(Range ∘ 1st )𝑏) ↔ (𝑎 = 𝐵 ∧ 𝑏 = ran 𝐴 ∧ 𝑥 = 〈𝑎, 𝑏〉)) |
26 | 25 | 2exbii 1851 |
. . . . . . . . . . . . . . 15
⊢
(∃𝑎∃𝑏(𝑥 = 〈𝑎, 𝑏〉 ∧ 〈𝐴, 𝐵〉2nd 𝑎 ∧ 〈𝐴, 𝐵〉(Range ∘ 1st )𝑏) ↔ ∃𝑎∃𝑏(𝑎 = 𝐵 ∧ 𝑏 = ran 𝐴 ∧ 𝑥 = 〈𝑎, 𝑏〉)) |
27 | 6 | rnex 7759 |
. . . . . . . . . . . . . . . 16
⊢ ran 𝐴 ∈ V |
28 | | opeq1 4804 |
. . . . . . . . . . . . . . . . 17
⊢ (𝑎 = 𝐵 → 〈𝑎, 𝑏〉 = 〈𝐵, 𝑏〉) |
29 | 28 | eqeq2d 2749 |
. . . . . . . . . . . . . . . 16
⊢ (𝑎 = 𝐵 → (𝑥 = 〈𝑎, 𝑏〉 ↔ 𝑥 = 〈𝐵, 𝑏〉)) |
30 | | opeq2 4805 |
. . . . . . . . . . . . . . . . 17
⊢ (𝑏 = ran 𝐴 → 〈𝐵, 𝑏〉 = 〈𝐵, ran 𝐴〉) |
31 | 30 | eqeq2d 2749 |
. . . . . . . . . . . . . . . 16
⊢ (𝑏 = ran 𝐴 → (𝑥 = 〈𝐵, 𝑏〉 ↔ 𝑥 = 〈𝐵, ran 𝐴〉)) |
32 | 7, 27, 29, 31 | ceqsex2v 3483 |
. . . . . . . . . . . . . . 15
⊢
(∃𝑎∃𝑏(𝑎 = 𝐵 ∧ 𝑏 = ran 𝐴 ∧ 𝑥 = 〈𝑎, 𝑏〉) ↔ 𝑥 = 〈𝐵, ran 𝐴〉) |
33 | 11, 26, 32 | 3bitri 297 |
. . . . . . . . . . . . . 14
⊢
(〈𝐴, 𝐵〉(2nd ⊗
(Range ∘ 1st ))𝑥 ↔ 𝑥 = 〈𝐵, ran 𝐴〉) |
34 | 33 | anbi1i 624 |
. . . . . . . . . . . . 13
⊢
((〈𝐴, 𝐵〉(2nd ⊗
(Range ∘ 1st ))𝑥 ∧ 𝑥Cart𝑏) ↔ (𝑥 = 〈𝐵, ran 𝐴〉 ∧ 𝑥Cart𝑏)) |
35 | 34 | exbii 1850 |
. . . . . . . . . . . 12
⊢
(∃𝑥(〈𝐴, 𝐵〉(2nd ⊗ (Range
∘ 1st ))𝑥
∧ 𝑥Cart𝑏) ↔ ∃𝑥(𝑥 = 〈𝐵, ran 𝐴〉 ∧ 𝑥Cart𝑏)) |
36 | | opex 5379 |
. . . . . . . . . . . . 13
⊢
〈𝐵, ran 𝐴〉 ∈ V |
37 | | breq1 5077 |
. . . . . . . . . . . . 13
⊢ (𝑥 = 〈𝐵, ran 𝐴〉 → (𝑥Cart𝑏 ↔ 〈𝐵, ran 𝐴〉Cart𝑏)) |
38 | 36, 37 | ceqsexv 3479 |
. . . . . . . . . . . 12
⊢
(∃𝑥(𝑥 = 〈𝐵, ran 𝐴〉 ∧ 𝑥Cart𝑏) ↔ 〈𝐵, ran 𝐴〉Cart𝑏) |
39 | 35, 38 | bitri 274 |
. . . . . . . . . . 11
⊢
(∃𝑥(〈𝐴, 𝐵〉(2nd ⊗ (Range
∘ 1st ))𝑥
∧ 𝑥Cart𝑏) ↔ 〈𝐵, ran 𝐴〉Cart𝑏) |
40 | 7, 27, 9 | brcart 34234 |
. . . . . . . . . . 11
⊢
(〈𝐵, ran 𝐴〉Cart𝑏 ↔ 𝑏 = (𝐵 × ran 𝐴)) |
41 | 10, 39, 40 | 3bitri 297 |
. . . . . . . . . 10
⊢
(〈𝐴, 𝐵〉(Cart ∘
(2nd ⊗ (Range ∘ 1st )))𝑏 ↔ 𝑏 = (𝐵 × ran 𝐴)) |
42 | 8, 41, 23 | 3anbi123i 1154 |
. . . . . . . . 9
⊢
((〈𝐴, 𝐵〉1st 𝑎 ∧ 〈𝐴, 𝐵〉(Cart ∘ (2nd ⊗
(Range ∘ 1st )))𝑏 ∧ 𝑥 = 〈𝑎, 𝑏〉) ↔ (𝑎 = 𝐴 ∧ 𝑏 = (𝐵 × ran 𝐴) ∧ 𝑥 = 〈𝑎, 𝑏〉)) |
43 | 5, 42 | bitri 274 |
. . . . . . . 8
⊢ ((𝑥 = 〈𝑎, 𝑏〉 ∧ 〈𝐴, 𝐵〉1st 𝑎 ∧ 〈𝐴, 𝐵〉(Cart ∘ (2nd ⊗
(Range ∘ 1st )))𝑏) ↔ (𝑎 = 𝐴 ∧ 𝑏 = (𝐵 × ran 𝐴) ∧ 𝑥 = 〈𝑎, 𝑏〉)) |
44 | 43 | 2exbii 1851 |
. . . . . . 7
⊢
(∃𝑎∃𝑏(𝑥 = 〈𝑎, 𝑏〉 ∧ 〈𝐴, 𝐵〉1st 𝑎 ∧ 〈𝐴, 𝐵〉(Cart ∘ (2nd ⊗
(Range ∘ 1st )))𝑏) ↔ ∃𝑎∃𝑏(𝑎 = 𝐴 ∧ 𝑏 = (𝐵 × ran 𝐴) ∧ 𝑥 = 〈𝑎, 𝑏〉)) |
45 | 7, 27 | xpex 7603 |
. . . . . . . 8
⊢ (𝐵 × ran 𝐴) ∈ V |
46 | | opeq1 4804 |
. . . . . . . . 9
⊢ (𝑎 = 𝐴 → 〈𝑎, 𝑏〉 = 〈𝐴, 𝑏〉) |
47 | 46 | eqeq2d 2749 |
. . . . . . . 8
⊢ (𝑎 = 𝐴 → (𝑥 = 〈𝑎, 𝑏〉 ↔ 𝑥 = 〈𝐴, 𝑏〉)) |
48 | | opeq2 4805 |
. . . . . . . . 9
⊢ (𝑏 = (𝐵 × ran 𝐴) → 〈𝐴, 𝑏〉 = 〈𝐴, (𝐵 × ran 𝐴)〉) |
49 | 48 | eqeq2d 2749 |
. . . . . . . 8
⊢ (𝑏 = (𝐵 × ran 𝐴) → (𝑥 = 〈𝐴, 𝑏〉 ↔ 𝑥 = 〈𝐴, (𝐵 × ran 𝐴)〉)) |
50 | 6, 45, 47, 49 | ceqsex2v 3483 |
. . . . . . 7
⊢
(∃𝑎∃𝑏(𝑎 = 𝐴 ∧ 𝑏 = (𝐵 × ran 𝐴) ∧ 𝑥 = 〈𝑎, 𝑏〉) ↔ 𝑥 = 〈𝐴, (𝐵 × ran 𝐴)〉) |
51 | 4, 44, 50 | 3bitri 297 |
. . . . . 6
⊢
(〈𝐴, 𝐵〉(1st ⊗
(Cart ∘ (2nd ⊗ (Range ∘ 1st ))))𝑥 ↔ 𝑥 = 〈𝐴, (𝐵 × ran 𝐴)〉) |
52 | 51 | anbi1i 624 |
. . . . 5
⊢
((〈𝐴, 𝐵〉(1st ⊗
(Cart ∘ (2nd ⊗ (Range ∘ 1st ))))𝑥 ∧ 𝑥Cap𝐶) ↔ (𝑥 = 〈𝐴, (𝐵 × ran 𝐴)〉 ∧ 𝑥Cap𝐶)) |
53 | 52 | exbii 1850 |
. . . 4
⊢
(∃𝑥(〈𝐴, 𝐵〉(1st ⊗ (Cart ∘
(2nd ⊗ (Range ∘ 1st ))))𝑥 ∧ 𝑥Cap𝐶) ↔ ∃𝑥(𝑥 = 〈𝐴, (𝐵 × ran 𝐴)〉 ∧ 𝑥Cap𝐶)) |
54 | 3, 53 | bitri 274 |
. . 3
⊢
(〈𝐴, 𝐵〉(Cap ∘
(1st ⊗ (Cart ∘ (2nd ⊗ (Range ∘
1st )))))𝐶
↔ ∃𝑥(𝑥 = 〈𝐴, (𝐵 × ran 𝐴)〉 ∧ 𝑥Cap𝐶)) |
55 | | opex 5379 |
. . . 4
⊢
〈𝐴, (𝐵 × ran 𝐴)〉 ∈ V |
56 | | breq1 5077 |
. . . 4
⊢ (𝑥 = 〈𝐴, (𝐵 × ran 𝐴)〉 → (𝑥Cap𝐶 ↔ 〈𝐴, (𝐵 × ran 𝐴)〉Cap𝐶)) |
57 | 55, 56 | ceqsexv 3479 |
. . 3
⊢
(∃𝑥(𝑥 = 〈𝐴, (𝐵 × ran 𝐴)〉 ∧ 𝑥Cap𝐶) ↔ 〈𝐴, (𝐵 × ran 𝐴)〉Cap𝐶) |
58 | 6, 45, 2 | brcap 34242 |
. . 3
⊢
(〈𝐴, (𝐵 × ran 𝐴)〉Cap𝐶 ↔ 𝐶 = (𝐴 ∩ (𝐵 × ran 𝐴))) |
59 | 54, 57, 58 | 3bitri 297 |
. 2
⊢
(〈𝐴, 𝐵〉(Cap ∘
(1st ⊗ (Cart ∘ (2nd ⊗ (Range ∘
1st )))))𝐶
↔ 𝐶 = (𝐴 ∩ (𝐵 × ran 𝐴))) |
60 | | df-restrict 34173 |
. . 3
⊢ Restrict
= (Cap ∘ (1st ⊗ (Cart ∘ (2nd ⊗
(Range ∘ 1st ))))) |
61 | 60 | breqi 5080 |
. 2
⊢
(〈𝐴, 𝐵〉Restrict𝐶 ↔ 〈𝐴, 𝐵〉(Cap ∘ (1st ⊗
(Cart ∘ (2nd ⊗ (Range ∘ 1st )))))𝐶) |
62 | | dfres3 5896 |
. . 3
⊢ (𝐴 ↾ 𝐵) = (𝐴 ∩ (𝐵 × ran 𝐴)) |
63 | 62 | eqeq2i 2751 |
. 2
⊢ (𝐶 = (𝐴 ↾ 𝐵) ↔ 𝐶 = (𝐴 ∩ (𝐵 × ran 𝐴))) |
64 | 59, 61, 63 | 3bitr4i 303 |
1
⊢
(〈𝐴, 𝐵〉Restrict𝐶 ↔ 𝐶 = (𝐴 ↾ 𝐵)) |