ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  xpassen GIF version

Theorem xpassen 6304
Description: Associative law for equinumerosity of Cartesian product. Proposition 4.22(e) of [Mendelson] p. 254. (Contributed by NM, 22-Jan-2004.) (Revised by Mario Carneiro, 15-Nov-2014.)
Hypotheses
Ref Expression
xpassen.1 𝐴 ∈ V
xpassen.2 𝐵 ∈ V
xpassen.3 𝐶 ∈ V
Assertion
Ref Expression
xpassen ((𝐴 × 𝐵) × 𝐶) ≈ (𝐴 × (𝐵 × 𝐶))

Proof of Theorem xpassen
Dummy variables 𝑥 𝑦 𝑧 𝑤 𝑣 𝑢 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 xpassen.1 . . . 4 𝐴 ∈ V
2 xpassen.2 . . . 4 𝐵 ∈ V
31, 2xpex 4453 . . 3 (𝐴 × 𝐵) ∈ V
4 xpassen.3 . . 3 𝐶 ∈ V
53, 4xpex 4453 . 2 ((𝐴 × 𝐵) × 𝐶) ∈ V
62, 4xpex 4453 . . 3 (𝐵 × 𝐶) ∈ V
71, 6xpex 4453 . 2 (𝐴 × (𝐵 × 𝐶)) ∈ V
8 vex 2560 . . . . . . . . . 10 𝑥 ∈ V
98snex 3937 . . . . . . . . 9 {𝑥} ∈ V
109dmex 4598 . . . . . . . 8 dom {𝑥} ∈ V
1110uniex 4174 . . . . . . 7 dom {𝑥} ∈ V
1211snex 3937 . . . . . 6 { dom {𝑥}} ∈ V
1312dmex 4598 . . . . 5 dom { dom {𝑥}} ∈ V
1413uniex 4174 . . . 4 dom { dom {𝑥}} ∈ V
1512rnex 4599 . . . . . 6 ran { dom {𝑥}} ∈ V
1615uniex 4174 . . . . 5 ran { dom {𝑥}} ∈ V
179rnex 4599 . . . . . 6 ran {𝑥} ∈ V
1817uniex 4174 . . . . 5 ran {𝑥} ∈ V
1916, 18opex 3966 . . . 4 ran { dom {𝑥}}, ran {𝑥}⟩ ∈ V
2014, 19opex 3966 . . 3 dom { dom {𝑥}}, ⟨ ran { dom {𝑥}}, ran {𝑥}⟩⟩ ∈ V
2120a1i 9 . 2 (𝑥 ∈ ((𝐴 × 𝐵) × 𝐶) → ⟨ dom { dom {𝑥}}, ⟨ ran { dom {𝑥}}, ran {𝑥}⟩⟩ ∈ V)
22 vex 2560 . . . . . . . 8 𝑦 ∈ V
2322snex 3937 . . . . . . 7 {𝑦} ∈ V
2423dmex 4598 . . . . . 6 dom {𝑦} ∈ V
2524uniex 4174 . . . . 5 dom {𝑦} ∈ V
2623rnex 4599 . . . . . . . . 9 ran {𝑦} ∈ V
2726uniex 4174 . . . . . . . 8 ran {𝑦} ∈ V
2827snex 3937 . . . . . . 7 { ran {𝑦}} ∈ V
2928dmex 4598 . . . . . 6 dom { ran {𝑦}} ∈ V
3029uniex 4174 . . . . 5 dom { ran {𝑦}} ∈ V
3125, 30opex 3966 . . . 4 dom {𝑦}, dom { ran {𝑦}}⟩ ∈ V
3228rnex 4599 . . . . 5 ran { ran {𝑦}} ∈ V
3332uniex 4174 . . . 4 ran { ran {𝑦}} ∈ V
3431, 33opex 3966 . . 3 ⟨⟨ dom {𝑦}, dom { ran {𝑦}}⟩, ran { ran {𝑦}}⟩ ∈ V
3534a1i 9 . 2 (𝑦 ∈ (𝐴 × (𝐵 × 𝐶)) → ⟨⟨ dom {𝑦}, dom { ran {𝑦}}⟩, ran { ran {𝑦}}⟩ ∈ V)
36 sneq 3386 . . . . . . . . . . . . . . . . 17 (𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ → {𝑥} = {⟨⟨𝑧, 𝑤⟩, 𝑣⟩})
3736dmeqd 4537 . . . . . . . . . . . . . . . 16 (𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ → dom {𝑥} = dom {⟨⟨𝑧, 𝑤⟩, 𝑣⟩})
3837unieqd 3591 . . . . . . . . . . . . . . 15 (𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ → dom {𝑥} = dom {⟨⟨𝑧, 𝑤⟩, 𝑣⟩})
3938sneqd 3388 . . . . . . . . . . . . . 14 (𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ → { dom {𝑥}} = { dom {⟨⟨𝑧, 𝑤⟩, 𝑣⟩}})
4039dmeqd 4537 . . . . . . . . . . . . 13 (𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ → dom { dom {𝑥}} = dom { dom {⟨⟨𝑧, 𝑤⟩, 𝑣⟩}})
4140unieqd 3591 . . . . . . . . . . . 12 (𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ → dom { dom {𝑥}} = dom { dom {⟨⟨𝑧, 𝑤⟩, 𝑣⟩}})
42 vex 2560 . . . . . . . . . . . . . . . . . 18 𝑧 ∈ V
43 vex 2560 . . . . . . . . . . . . . . . . . 18 𝑤 ∈ V
4442, 43opex 3966 . . . . . . . . . . . . . . . . 17 𝑧, 𝑤⟩ ∈ V
45 vex 2560 . . . . . . . . . . . . . . . . 17 𝑣 ∈ V
4644, 45op1sta 4802 . . . . . . . . . . . . . . . 16 dom {⟨⟨𝑧, 𝑤⟩, 𝑣⟩} = ⟨𝑧, 𝑤
4746sneqi 3387 . . . . . . . . . . . . . . 15 { dom {⟨⟨𝑧, 𝑤⟩, 𝑣⟩}} = {⟨𝑧, 𝑤⟩}
4847dmeqi 4536 . . . . . . . . . . . . . 14 dom { dom {⟨⟨𝑧, 𝑤⟩, 𝑣⟩}} = dom {⟨𝑧, 𝑤⟩}
4948unieqi 3590 . . . . . . . . . . . . 13 dom { dom {⟨⟨𝑧, 𝑤⟩, 𝑣⟩}} = dom {⟨𝑧, 𝑤⟩}
5042, 43op1sta 4802 . . . . . . . . . . . . 13 dom {⟨𝑧, 𝑤⟩} = 𝑧
5149, 50eqtri 2060 . . . . . . . . . . . 12 dom { dom {⟨⟨𝑧, 𝑤⟩, 𝑣⟩}} = 𝑧
5241, 51syl6req 2089 . . . . . . . . . . 11 (𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ → 𝑧 = dom { dom {𝑥}})
5339rneqd 4563 . . . . . . . . . . . . . 14 (𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ → ran { dom {𝑥}} = ran { dom {⟨⟨𝑧, 𝑤⟩, 𝑣⟩}})
5453unieqd 3591 . . . . . . . . . . . . 13 (𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ → ran { dom {𝑥}} = ran { dom {⟨⟨𝑧, 𝑤⟩, 𝑣⟩}})
5547rneqi 4562 . . . . . . . . . . . . . . 15 ran { dom {⟨⟨𝑧, 𝑤⟩, 𝑣⟩}} = ran {⟨𝑧, 𝑤⟩}
5655unieqi 3590 . . . . . . . . . . . . . 14 ran { dom {⟨⟨𝑧, 𝑤⟩, 𝑣⟩}} = ran {⟨𝑧, 𝑤⟩}
5742, 43op2nda 4805 . . . . . . . . . . . . . 14 ran {⟨𝑧, 𝑤⟩} = 𝑤
5856, 57eqtri 2060 . . . . . . . . . . . . 13 ran { dom {⟨⟨𝑧, 𝑤⟩, 𝑣⟩}} = 𝑤
5954, 58syl6req 2089 . . . . . . . . . . . 12 (𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ → 𝑤 = ran { dom {𝑥}})
6036rneqd 4563 . . . . . . . . . . . . . 14 (𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ → ran {𝑥} = ran {⟨⟨𝑧, 𝑤⟩, 𝑣⟩})
6160unieqd 3591 . . . . . . . . . . . . 13 (𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ → ran {𝑥} = ran {⟨⟨𝑧, 𝑤⟩, 𝑣⟩})
6244, 45op2nda 4805 . . . . . . . . . . . . 13 ran {⟨⟨𝑧, 𝑤⟩, 𝑣⟩} = 𝑣
6361, 62syl6req 2089 . . . . . . . . . . . 12 (𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ → 𝑣 = ran {𝑥})
6459, 63opeq12d 3557 . . . . . . . . . . 11 (𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ → ⟨𝑤, 𝑣⟩ = ⟨ ran { dom {𝑥}}, ran {𝑥}⟩)
6552, 64opeq12d 3557 . . . . . . . . . 10 (𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ → ⟨𝑧, ⟨𝑤, 𝑣⟩⟩ = ⟨ dom { dom {𝑥}}, ⟨ ran { dom {𝑥}}, ran {𝑥}⟩⟩)
66 sneq 3386 . . . . . . . . . . . . . . 15 (𝑦 = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩ → {𝑦} = {⟨𝑧, ⟨𝑤, 𝑣⟩⟩})
6766dmeqd 4537 . . . . . . . . . . . . . 14 (𝑦 = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩ → dom {𝑦} = dom {⟨𝑧, ⟨𝑤, 𝑣⟩⟩})
6867unieqd 3591 . . . . . . . . . . . . 13 (𝑦 = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩ → dom {𝑦} = dom {⟨𝑧, ⟨𝑤, 𝑣⟩⟩})
6943, 45opex 3966 . . . . . . . . . . . . . 14 𝑤, 𝑣⟩ ∈ V
7042, 69op1sta 4802 . . . . . . . . . . . . 13 dom {⟨𝑧, ⟨𝑤, 𝑣⟩⟩} = 𝑧
7168, 70syl6req 2089 . . . . . . . . . . . 12 (𝑦 = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩ → 𝑧 = dom {𝑦})
7266rneqd 4563 . . . . . . . . . . . . . . . . 17 (𝑦 = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩ → ran {𝑦} = ran {⟨𝑧, ⟨𝑤, 𝑣⟩⟩})
7372unieqd 3591 . . . . . . . . . . . . . . . 16 (𝑦 = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩ → ran {𝑦} = ran {⟨𝑧, ⟨𝑤, 𝑣⟩⟩})
7473sneqd 3388 . . . . . . . . . . . . . . 15 (𝑦 = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩ → { ran {𝑦}} = { ran {⟨𝑧, ⟨𝑤, 𝑣⟩⟩}})
7574dmeqd 4537 . . . . . . . . . . . . . 14 (𝑦 = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩ → dom { ran {𝑦}} = dom { ran {⟨𝑧, ⟨𝑤, 𝑣⟩⟩}})
7675unieqd 3591 . . . . . . . . . . . . 13 (𝑦 = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩ → dom { ran {𝑦}} = dom { ran {⟨𝑧, ⟨𝑤, 𝑣⟩⟩}})
7742, 69op2nda 4805 . . . . . . . . . . . . . . . . 17 ran {⟨𝑧, ⟨𝑤, 𝑣⟩⟩} = ⟨𝑤, 𝑣
7877sneqi 3387 . . . . . . . . . . . . . . . 16 { ran {⟨𝑧, ⟨𝑤, 𝑣⟩⟩}} = {⟨𝑤, 𝑣⟩}
7978dmeqi 4536 . . . . . . . . . . . . . . 15 dom { ran {⟨𝑧, ⟨𝑤, 𝑣⟩⟩}} = dom {⟨𝑤, 𝑣⟩}
8079unieqi 3590 . . . . . . . . . . . . . 14 dom { ran {⟨𝑧, ⟨𝑤, 𝑣⟩⟩}} = dom {⟨𝑤, 𝑣⟩}
8143, 45op1sta 4802 . . . . . . . . . . . . . 14 dom {⟨𝑤, 𝑣⟩} = 𝑤
8280, 81eqtri 2060 . . . . . . . . . . . . 13 dom { ran {⟨𝑧, ⟨𝑤, 𝑣⟩⟩}} = 𝑤
8376, 82syl6req 2089 . . . . . . . . . . . 12 (𝑦 = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩ → 𝑤 = dom { ran {𝑦}})
8471, 83opeq12d 3557 . . . . . . . . . . 11 (𝑦 = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩ → ⟨𝑧, 𝑤⟩ = ⟨ dom {𝑦}, dom { ran {𝑦}}⟩)
8574rneqd 4563 . . . . . . . . . . . . 13 (𝑦 = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩ → ran { ran {𝑦}} = ran { ran {⟨𝑧, ⟨𝑤, 𝑣⟩⟩}})
8685unieqd 3591 . . . . . . . . . . . 12 (𝑦 = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩ → ran { ran {𝑦}} = ran { ran {⟨𝑧, ⟨𝑤, 𝑣⟩⟩}})
8778rneqi 4562 . . . . . . . . . . . . . 14 ran { ran {⟨𝑧, ⟨𝑤, 𝑣⟩⟩}} = ran {⟨𝑤, 𝑣⟩}
8887unieqi 3590 . . . . . . . . . . . . 13 ran { ran {⟨𝑧, ⟨𝑤, 𝑣⟩⟩}} = ran {⟨𝑤, 𝑣⟩}
8943, 45op2nda 4805 . . . . . . . . . . . . 13 ran {⟨𝑤, 𝑣⟩} = 𝑣
9088, 89eqtri 2060 . . . . . . . . . . . 12 ran { ran {⟨𝑧, ⟨𝑤, 𝑣⟩⟩}} = 𝑣
9186, 90syl6req 2089 . . . . . . . . . . 11 (𝑦 = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩ → 𝑣 = ran { ran {𝑦}})
9284, 91opeq12d 3557 . . . . . . . . . 10 (𝑦 = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩ → ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ = ⟨⟨ dom {𝑦}, dom { ran {𝑦}}⟩, ran { ran {𝑦}}⟩)
9365, 92eq2tri 2099 . . . . . . . . 9 ((𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ ∧ 𝑦 = ⟨ dom { dom {𝑥}}, ⟨ ran { dom {𝑥}}, ran {𝑥}⟩⟩) ↔ (𝑦 = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩ ∧ 𝑥 = ⟨⟨ dom {𝑦}, dom { ran {𝑦}}⟩, ran { ran {𝑦}}⟩))
94 anass 381 . . . . . . . . 9 (((𝑧𝐴𝑤𝐵) ∧ 𝑣𝐶) ↔ (𝑧𝐴 ∧ (𝑤𝐵𝑣𝐶)))
9593, 94anbi12i 433 . . . . . . . 8 (((𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ ∧ 𝑦 = ⟨ dom { dom {𝑥}}, ⟨ ran { dom {𝑥}}, ran {𝑥}⟩⟩) ∧ ((𝑧𝐴𝑤𝐵) ∧ 𝑣𝐶)) ↔ ((𝑦 = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩ ∧ 𝑥 = ⟨⟨ dom {𝑦}, dom { ran {𝑦}}⟩, ran { ran {𝑦}}⟩) ∧ (𝑧𝐴 ∧ (𝑤𝐵𝑣𝐶))))
96 an32 496 . . . . . . . 8 (((𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ ∧ ((𝑧𝐴𝑤𝐵) ∧ 𝑣𝐶)) ∧ 𝑦 = ⟨ dom { dom {𝑥}}, ⟨ ran { dom {𝑥}}, ran {𝑥}⟩⟩) ↔ ((𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ ∧ 𝑦 = ⟨ dom { dom {𝑥}}, ⟨ ran { dom {𝑥}}, ran {𝑥}⟩⟩) ∧ ((𝑧𝐴𝑤𝐵) ∧ 𝑣𝐶)))
97 an32 496 . . . . . . . 8 (((𝑦 = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩ ∧ (𝑧𝐴 ∧ (𝑤𝐵𝑣𝐶))) ∧ 𝑥 = ⟨⟨ dom {𝑦}, dom { ran {𝑦}}⟩, ran { ran {𝑦}}⟩) ↔ ((𝑦 = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩ ∧ 𝑥 = ⟨⟨ dom {𝑦}, dom { ran {𝑦}}⟩, ran { ran {𝑦}}⟩) ∧ (𝑧𝐴 ∧ (𝑤𝐵𝑣𝐶))))
9895, 96, 973bitr4i 201 . . . . . . 7 (((𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ ∧ ((𝑧𝐴𝑤𝐵) ∧ 𝑣𝐶)) ∧ 𝑦 = ⟨ dom { dom {𝑥}}, ⟨ ran { dom {𝑥}}, ran {𝑥}⟩⟩) ↔ ((𝑦 = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩ ∧ (𝑧𝐴 ∧ (𝑤𝐵𝑣𝐶))) ∧ 𝑥 = ⟨⟨ dom {𝑦}, dom { ran {𝑦}}⟩, ran { ran {𝑦}}⟩))
9998exbii 1496 . . . . . 6 (∃𝑣((𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ ∧ ((𝑧𝐴𝑤𝐵) ∧ 𝑣𝐶)) ∧ 𝑦 = ⟨ dom { dom {𝑥}}, ⟨ ran { dom {𝑥}}, ran {𝑥}⟩⟩) ↔ ∃𝑣((𝑦 = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩ ∧ (𝑧𝐴 ∧ (𝑤𝐵𝑣𝐶))) ∧ 𝑥 = ⟨⟨ dom {𝑦}, dom { ran {𝑦}}⟩, ran { ran {𝑦}}⟩))
100 19.41v 1782 . . . . . 6 (∃𝑣((𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ ∧ ((𝑧𝐴𝑤𝐵) ∧ 𝑣𝐶)) ∧ 𝑦 = ⟨ dom { dom {𝑥}}, ⟨ ran { dom {𝑥}}, ran {𝑥}⟩⟩) ↔ (∃𝑣(𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ ∧ ((𝑧𝐴𝑤𝐵) ∧ 𝑣𝐶)) ∧ 𝑦 = ⟨ dom { dom {𝑥}}, ⟨ ran { dom {𝑥}}, ran {𝑥}⟩⟩))
101 19.41v 1782 . . . . . 6 (∃𝑣((𝑦 = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩ ∧ (𝑧𝐴 ∧ (𝑤𝐵𝑣𝐶))) ∧ 𝑥 = ⟨⟨ dom {𝑦}, dom { ran {𝑦}}⟩, ran { ran {𝑦}}⟩) ↔ (∃𝑣(𝑦 = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩ ∧ (𝑧𝐴 ∧ (𝑤𝐵𝑣𝐶))) ∧ 𝑥 = ⟨⟨ dom {𝑦}, dom { ran {𝑦}}⟩, ran { ran {𝑦}}⟩))
10299, 100, 1013bitr3i 199 . . . . 5 ((∃𝑣(𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ ∧ ((𝑧𝐴𝑤𝐵) ∧ 𝑣𝐶)) ∧ 𝑦 = ⟨ dom { dom {𝑥}}, ⟨ ran { dom {𝑥}}, ran {𝑥}⟩⟩) ↔ (∃𝑣(𝑦 = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩ ∧ (𝑧𝐴 ∧ (𝑤𝐵𝑣𝐶))) ∧ 𝑥 = ⟨⟨ dom {𝑦}, dom { ran {𝑦}}⟩, ran { ran {𝑦}}⟩))
1031022exbii 1497 . . . 4 (∃𝑧𝑤(∃𝑣(𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ ∧ ((𝑧𝐴𝑤𝐵) ∧ 𝑣𝐶)) ∧ 𝑦 = ⟨ dom { dom {𝑥}}, ⟨ ran { dom {𝑥}}, ran {𝑥}⟩⟩) ↔ ∃𝑧𝑤(∃𝑣(𝑦 = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩ ∧ (𝑧𝐴 ∧ (𝑤𝐵𝑣𝐶))) ∧ 𝑥 = ⟨⟨ dom {𝑦}, dom { ran {𝑦}}⟩, ran { ran {𝑦}}⟩))
104 19.41vv 1783 . . . 4 (∃𝑧𝑤(∃𝑣(𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ ∧ ((𝑧𝐴𝑤𝐵) ∧ 𝑣𝐶)) ∧ 𝑦 = ⟨ dom { dom {𝑥}}, ⟨ ran { dom {𝑥}}, ran {𝑥}⟩⟩) ↔ (∃𝑧𝑤𝑣(𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ ∧ ((𝑧𝐴𝑤𝐵) ∧ 𝑣𝐶)) ∧ 𝑦 = ⟨ dom { dom {𝑥}}, ⟨ ran { dom {𝑥}}, ran {𝑥}⟩⟩))
105 19.41vv 1783 . . . 4 (∃𝑧𝑤(∃𝑣(𝑦 = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩ ∧ (𝑧𝐴 ∧ (𝑤𝐵𝑣𝐶))) ∧ 𝑥 = ⟨⟨ dom {𝑦}, dom { ran {𝑦}}⟩, ran { ran {𝑦}}⟩) ↔ (∃𝑧𝑤𝑣(𝑦 = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩ ∧ (𝑧𝐴 ∧ (𝑤𝐵𝑣𝐶))) ∧ 𝑥 = ⟨⟨ dom {𝑦}, dom { ran {𝑦}}⟩, ran { ran {𝑦}}⟩))
106103, 104, 1053bitr3i 199 . . 3 ((∃𝑧𝑤𝑣(𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ ∧ ((𝑧𝐴𝑤𝐵) ∧ 𝑣𝐶)) ∧ 𝑦 = ⟨ dom { dom {𝑥}}, ⟨ ran { dom {𝑥}}, ran {𝑥}⟩⟩) ↔ (∃𝑧𝑤𝑣(𝑦 = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩ ∧ (𝑧𝐴 ∧ (𝑤𝐵𝑣𝐶))) ∧ 𝑥 = ⟨⟨ dom {𝑦}, dom { ran {𝑦}}⟩, ran { ran {𝑦}}⟩))
107 elxp 4362 . . . . 5 (𝑥 ∈ ((𝐴 × 𝐵) × 𝐶) ↔ ∃𝑢𝑣(𝑥 = ⟨𝑢, 𝑣⟩ ∧ (𝑢 ∈ (𝐴 × 𝐵) ∧ 𝑣𝐶)))
108 excom 1554 . . . . 5 (∃𝑢𝑣(𝑥 = ⟨𝑢, 𝑣⟩ ∧ (𝑢 ∈ (𝐴 × 𝐵) ∧ 𝑣𝐶)) ↔ ∃𝑣𝑢(𝑥 = ⟨𝑢, 𝑣⟩ ∧ (𝑢 ∈ (𝐴 × 𝐵) ∧ 𝑣𝐶)))
109 elxp 4362 . . . . . . . . 9 (𝑢 ∈ (𝐴 × 𝐵) ↔ ∃𝑧𝑤(𝑢 = ⟨𝑧, 𝑤⟩ ∧ (𝑧𝐴𝑤𝐵)))
110109anbi1i 431 . . . . . . . 8 ((𝑢 ∈ (𝐴 × 𝐵) ∧ (𝑥 = ⟨𝑢, 𝑣⟩ ∧ 𝑣𝐶)) ↔ (∃𝑧𝑤(𝑢 = ⟨𝑧, 𝑤⟩ ∧ (𝑧𝐴𝑤𝐵)) ∧ (𝑥 = ⟨𝑢, 𝑣⟩ ∧ 𝑣𝐶)))
111 an12 495 . . . . . . . 8 ((𝑥 = ⟨𝑢, 𝑣⟩ ∧ (𝑢 ∈ (𝐴 × 𝐵) ∧ 𝑣𝐶)) ↔ (𝑢 ∈ (𝐴 × 𝐵) ∧ (𝑥 = ⟨𝑢, 𝑣⟩ ∧ 𝑣𝐶)))
112 19.41vv 1783 . . . . . . . 8 (∃𝑧𝑤((𝑢 = ⟨𝑧, 𝑤⟩ ∧ (𝑧𝐴𝑤𝐵)) ∧ (𝑥 = ⟨𝑢, 𝑣⟩ ∧ 𝑣𝐶)) ↔ (∃𝑧𝑤(𝑢 = ⟨𝑧, 𝑤⟩ ∧ (𝑧𝐴𝑤𝐵)) ∧ (𝑥 = ⟨𝑢, 𝑣⟩ ∧ 𝑣𝐶)))
113110, 111, 1123bitr4i 201 . . . . . . 7 ((𝑥 = ⟨𝑢, 𝑣⟩ ∧ (𝑢 ∈ (𝐴 × 𝐵) ∧ 𝑣𝐶)) ↔ ∃𝑧𝑤((𝑢 = ⟨𝑧, 𝑤⟩ ∧ (𝑧𝐴𝑤𝐵)) ∧ (𝑥 = ⟨𝑢, 𝑣⟩ ∧ 𝑣𝐶)))
1141132exbii 1497 . . . . . 6 (∃𝑣𝑢(𝑥 = ⟨𝑢, 𝑣⟩ ∧ (𝑢 ∈ (𝐴 × 𝐵) ∧ 𝑣𝐶)) ↔ ∃𝑣𝑢𝑧𝑤((𝑢 = ⟨𝑧, 𝑤⟩ ∧ (𝑧𝐴𝑤𝐵)) ∧ (𝑥 = ⟨𝑢, 𝑣⟩ ∧ 𝑣𝐶)))
115 exrot4 1581 . . . . . 6 (∃𝑣𝑢𝑧𝑤((𝑢 = ⟨𝑧, 𝑤⟩ ∧ (𝑧𝐴𝑤𝐵)) ∧ (𝑥 = ⟨𝑢, 𝑣⟩ ∧ 𝑣𝐶)) ↔ ∃𝑧𝑤𝑣𝑢((𝑢 = ⟨𝑧, 𝑤⟩ ∧ (𝑧𝐴𝑤𝐵)) ∧ (𝑥 = ⟨𝑢, 𝑣⟩ ∧ 𝑣𝐶)))
116 anass 381 . . . . . . . . 9 (((𝑢 = ⟨𝑧, 𝑤⟩ ∧ (𝑧𝐴𝑤𝐵)) ∧ (𝑥 = ⟨𝑢, 𝑣⟩ ∧ 𝑣𝐶)) ↔ (𝑢 = ⟨𝑧, 𝑤⟩ ∧ ((𝑧𝐴𝑤𝐵) ∧ (𝑥 = ⟨𝑢, 𝑣⟩ ∧ 𝑣𝐶))))
117116exbii 1496 . . . . . . . 8 (∃𝑢((𝑢 = ⟨𝑧, 𝑤⟩ ∧ (𝑧𝐴𝑤𝐵)) ∧ (𝑥 = ⟨𝑢, 𝑣⟩ ∧ 𝑣𝐶)) ↔ ∃𝑢(𝑢 = ⟨𝑧, 𝑤⟩ ∧ ((𝑧𝐴𝑤𝐵) ∧ (𝑥 = ⟨𝑢, 𝑣⟩ ∧ 𝑣𝐶))))
118 opeq1 3549 . . . . . . . . . . . 12 (𝑢 = ⟨𝑧, 𝑤⟩ → ⟨𝑢, 𝑣⟩ = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩)
119118eqeq2d 2051 . . . . . . . . . . 11 (𝑢 = ⟨𝑧, 𝑤⟩ → (𝑥 = ⟨𝑢, 𝑣⟩ ↔ 𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩))
120119anbi1d 438 . . . . . . . . . 10 (𝑢 = ⟨𝑧, 𝑤⟩ → ((𝑥 = ⟨𝑢, 𝑣⟩ ∧ 𝑣𝐶) ↔ (𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ ∧ 𝑣𝐶)))
121120anbi2d 437 . . . . . . . . 9 (𝑢 = ⟨𝑧, 𝑤⟩ → (((𝑧𝐴𝑤𝐵) ∧ (𝑥 = ⟨𝑢, 𝑣⟩ ∧ 𝑣𝐶)) ↔ ((𝑧𝐴𝑤𝐵) ∧ (𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ ∧ 𝑣𝐶))))
12244, 121ceqsexv 2593 . . . . . . . 8 (∃𝑢(𝑢 = ⟨𝑧, 𝑤⟩ ∧ ((𝑧𝐴𝑤𝐵) ∧ (𝑥 = ⟨𝑢, 𝑣⟩ ∧ 𝑣𝐶))) ↔ ((𝑧𝐴𝑤𝐵) ∧ (𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ ∧ 𝑣𝐶)))
123 an12 495 . . . . . . . 8 (((𝑧𝐴𝑤𝐵) ∧ (𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ ∧ 𝑣𝐶)) ↔ (𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ ∧ ((𝑧𝐴𝑤𝐵) ∧ 𝑣𝐶)))
124117, 122, 1233bitri 195 . . . . . . 7 (∃𝑢((𝑢 = ⟨𝑧, 𝑤⟩ ∧ (𝑧𝐴𝑤𝐵)) ∧ (𝑥 = ⟨𝑢, 𝑣⟩ ∧ 𝑣𝐶)) ↔ (𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ ∧ ((𝑧𝐴𝑤𝐵) ∧ 𝑣𝐶)))
1251243exbii 1498 . . . . . 6 (∃𝑧𝑤𝑣𝑢((𝑢 = ⟨𝑧, 𝑤⟩ ∧ (𝑧𝐴𝑤𝐵)) ∧ (𝑥 = ⟨𝑢, 𝑣⟩ ∧ 𝑣𝐶)) ↔ ∃𝑧𝑤𝑣(𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ ∧ ((𝑧𝐴𝑤𝐵) ∧ 𝑣𝐶)))
126114, 115, 1253bitri 195 . . . . 5 (∃𝑣𝑢(𝑥 = ⟨𝑢, 𝑣⟩ ∧ (𝑢 ∈ (𝐴 × 𝐵) ∧ 𝑣𝐶)) ↔ ∃𝑧𝑤𝑣(𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ ∧ ((𝑧𝐴𝑤𝐵) ∧ 𝑣𝐶)))
127107, 108, 1263bitri 195 . . . 4 (𝑥 ∈ ((𝐴 × 𝐵) × 𝐶) ↔ ∃𝑧𝑤𝑣(𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ ∧ ((𝑧𝐴𝑤𝐵) ∧ 𝑣𝐶)))
128127anbi1i 431 . . 3 ((𝑥 ∈ ((𝐴 × 𝐵) × 𝐶) ∧ 𝑦 = ⟨ dom { dom {𝑥}}, ⟨ ran { dom {𝑥}}, ran {𝑥}⟩⟩) ↔ (∃𝑧𝑤𝑣(𝑥 = ⟨⟨𝑧, 𝑤⟩, 𝑣⟩ ∧ ((𝑧𝐴𝑤𝐵) ∧ 𝑣𝐶)) ∧ 𝑦 = ⟨ dom { dom {𝑥}}, ⟨ ran { dom {𝑥}}, ran {𝑥}⟩⟩))
129 elxp 4362 . . . . 5 (𝑦 ∈ (𝐴 × (𝐵 × 𝐶)) ↔ ∃𝑧𝑢(𝑦 = ⟨𝑧, 𝑢⟩ ∧ (𝑧𝐴𝑢 ∈ (𝐵 × 𝐶))))
130 elxp 4362 . . . . . . . . . 10 (𝑢 ∈ (𝐵 × 𝐶) ↔ ∃𝑤𝑣(𝑢 = ⟨𝑤, 𝑣⟩ ∧ (𝑤𝐵𝑣𝐶)))
131130anbi2i 430 . . . . . . . . 9 (((𝑦 = ⟨𝑧, 𝑢⟩ ∧ 𝑧𝐴) ∧ 𝑢 ∈ (𝐵 × 𝐶)) ↔ ((𝑦 = ⟨𝑧, 𝑢⟩ ∧ 𝑧𝐴) ∧ ∃𝑤𝑣(𝑢 = ⟨𝑤, 𝑣⟩ ∧ (𝑤𝐵𝑣𝐶))))
132 anass 381 . . . . . . . . 9 (((𝑦 = ⟨𝑧, 𝑢⟩ ∧ 𝑧𝐴) ∧ 𝑢 ∈ (𝐵 × 𝐶)) ↔ (𝑦 = ⟨𝑧, 𝑢⟩ ∧ (𝑧𝐴𝑢 ∈ (𝐵 × 𝐶))))
133 19.42vv 1788 . . . . . . . . . 10 (∃𝑤𝑣((𝑦 = ⟨𝑧, 𝑢⟩ ∧ 𝑧𝐴) ∧ (𝑢 = ⟨𝑤, 𝑣⟩ ∧ (𝑤𝐵𝑣𝐶))) ↔ ((𝑦 = ⟨𝑧, 𝑢⟩ ∧ 𝑧𝐴) ∧ ∃𝑤𝑣(𝑢 = ⟨𝑤, 𝑣⟩ ∧ (𝑤𝐵𝑣𝐶))))
134 an12 495 . . . . . . . . . . . 12 (((𝑦 = ⟨𝑧, 𝑢⟩ ∧ 𝑧𝐴) ∧ (𝑢 = ⟨𝑤, 𝑣⟩ ∧ (𝑤𝐵𝑣𝐶))) ↔ (𝑢 = ⟨𝑤, 𝑣⟩ ∧ ((𝑦 = ⟨𝑧, 𝑢⟩ ∧ 𝑧𝐴) ∧ (𝑤𝐵𝑣𝐶))))
135 anass 381 . . . . . . . . . . . . 13 (((𝑦 = ⟨𝑧, 𝑢⟩ ∧ 𝑧𝐴) ∧ (𝑤𝐵𝑣𝐶)) ↔ (𝑦 = ⟨𝑧, 𝑢⟩ ∧ (𝑧𝐴 ∧ (𝑤𝐵𝑣𝐶))))
136135anbi2i 430 . . . . . . . . . . . 12 ((𝑢 = ⟨𝑤, 𝑣⟩ ∧ ((𝑦 = ⟨𝑧, 𝑢⟩ ∧ 𝑧𝐴) ∧ (𝑤𝐵𝑣𝐶))) ↔ (𝑢 = ⟨𝑤, 𝑣⟩ ∧ (𝑦 = ⟨𝑧, 𝑢⟩ ∧ (𝑧𝐴 ∧ (𝑤𝐵𝑣𝐶)))))
137134, 136bitri 173 . . . . . . . . . . 11 (((𝑦 = ⟨𝑧, 𝑢⟩ ∧ 𝑧𝐴) ∧ (𝑢 = ⟨𝑤, 𝑣⟩ ∧ (𝑤𝐵𝑣𝐶))) ↔ (𝑢 = ⟨𝑤, 𝑣⟩ ∧ (𝑦 = ⟨𝑧, 𝑢⟩ ∧ (𝑧𝐴 ∧ (𝑤𝐵𝑣𝐶)))))
1381372exbii 1497 . . . . . . . . . 10 (∃𝑤𝑣((𝑦 = ⟨𝑧, 𝑢⟩ ∧ 𝑧𝐴) ∧ (𝑢 = ⟨𝑤, 𝑣⟩ ∧ (𝑤𝐵𝑣𝐶))) ↔ ∃𝑤𝑣(𝑢 = ⟨𝑤, 𝑣⟩ ∧ (𝑦 = ⟨𝑧, 𝑢⟩ ∧ (𝑧𝐴 ∧ (𝑤𝐵𝑣𝐶)))))
139133, 138bitr3i 175 . . . . . . . . 9 (((𝑦 = ⟨𝑧, 𝑢⟩ ∧ 𝑧𝐴) ∧ ∃𝑤𝑣(𝑢 = ⟨𝑤, 𝑣⟩ ∧ (𝑤𝐵𝑣𝐶))) ↔ ∃𝑤𝑣(𝑢 = ⟨𝑤, 𝑣⟩ ∧ (𝑦 = ⟨𝑧, 𝑢⟩ ∧ (𝑧𝐴 ∧ (𝑤𝐵𝑣𝐶)))))
140131, 132, 1393bitr3i 199 . . . . . . . 8 ((𝑦 = ⟨𝑧, 𝑢⟩ ∧ (𝑧𝐴𝑢 ∈ (𝐵 × 𝐶))) ↔ ∃𝑤𝑣(𝑢 = ⟨𝑤, 𝑣⟩ ∧ (𝑦 = ⟨𝑧, 𝑢⟩ ∧ (𝑧𝐴 ∧ (𝑤𝐵𝑣𝐶)))))
141140exbii 1496 . . . . . . 7 (∃𝑢(𝑦 = ⟨𝑧, 𝑢⟩ ∧ (𝑧𝐴𝑢 ∈ (𝐵 × 𝐶))) ↔ ∃𝑢𝑤𝑣(𝑢 = ⟨𝑤, 𝑣⟩ ∧ (𝑦 = ⟨𝑧, 𝑢⟩ ∧ (𝑧𝐴 ∧ (𝑤𝐵𝑣𝐶)))))
142 exrot3 1580 . . . . . . 7 (∃𝑢𝑤𝑣(𝑢 = ⟨𝑤, 𝑣⟩ ∧ (𝑦 = ⟨𝑧, 𝑢⟩ ∧ (𝑧𝐴 ∧ (𝑤𝐵𝑣𝐶)))) ↔ ∃𝑤𝑣𝑢(𝑢 = ⟨𝑤, 𝑣⟩ ∧ (𝑦 = ⟨𝑧, 𝑢⟩ ∧ (𝑧𝐴 ∧ (𝑤𝐵𝑣𝐶)))))
143 opeq2 3550 . . . . . . . . . . 11 (𝑢 = ⟨𝑤, 𝑣⟩ → ⟨𝑧, 𝑢⟩ = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩)
144143eqeq2d 2051 . . . . . . . . . 10 (𝑢 = ⟨𝑤, 𝑣⟩ → (𝑦 = ⟨𝑧, 𝑢⟩ ↔ 𝑦 = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩))
145144anbi1d 438 . . . . . . . . 9 (𝑢 = ⟨𝑤, 𝑣⟩ → ((𝑦 = ⟨𝑧, 𝑢⟩ ∧ (𝑧𝐴 ∧ (𝑤𝐵𝑣𝐶))) ↔ (𝑦 = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩ ∧ (𝑧𝐴 ∧ (𝑤𝐵𝑣𝐶)))))
14669, 145ceqsexv 2593 . . . . . . . 8 (∃𝑢(𝑢 = ⟨𝑤, 𝑣⟩ ∧ (𝑦 = ⟨𝑧, 𝑢⟩ ∧ (𝑧𝐴 ∧ (𝑤𝐵𝑣𝐶)))) ↔ (𝑦 = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩ ∧ (𝑧𝐴 ∧ (𝑤𝐵𝑣𝐶))))
1471462exbii 1497 . . . . . . 7 (∃𝑤𝑣𝑢(𝑢 = ⟨𝑤, 𝑣⟩ ∧ (𝑦 = ⟨𝑧, 𝑢⟩ ∧ (𝑧𝐴 ∧ (𝑤𝐵𝑣𝐶)))) ↔ ∃𝑤𝑣(𝑦 = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩ ∧ (𝑧𝐴 ∧ (𝑤𝐵𝑣𝐶))))
148141, 142, 1473bitri 195 . . . . . 6 (∃𝑢(𝑦 = ⟨𝑧, 𝑢⟩ ∧ (𝑧𝐴𝑢 ∈ (𝐵 × 𝐶))) ↔ ∃𝑤𝑣(𝑦 = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩ ∧ (𝑧𝐴 ∧ (𝑤𝐵𝑣𝐶))))
149148exbii 1496 . . . . 5 (∃𝑧𝑢(𝑦 = ⟨𝑧, 𝑢⟩ ∧ (𝑧𝐴𝑢 ∈ (𝐵 × 𝐶))) ↔ ∃𝑧𝑤𝑣(𝑦 = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩ ∧ (𝑧𝐴 ∧ (𝑤𝐵𝑣𝐶))))
150129, 149bitri 173 . . . 4 (𝑦 ∈ (𝐴 × (𝐵 × 𝐶)) ↔ ∃𝑧𝑤𝑣(𝑦 = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩ ∧ (𝑧𝐴 ∧ (𝑤𝐵𝑣𝐶))))
151150anbi1i 431 . . 3 ((𝑦 ∈ (𝐴 × (𝐵 × 𝐶)) ∧ 𝑥 = ⟨⟨ dom {𝑦}, dom { ran {𝑦}}⟩, ran { ran {𝑦}}⟩) ↔ (∃𝑧𝑤𝑣(𝑦 = ⟨𝑧, ⟨𝑤, 𝑣⟩⟩ ∧ (𝑧𝐴 ∧ (𝑤𝐵𝑣𝐶))) ∧ 𝑥 = ⟨⟨ dom {𝑦}, dom { ran {𝑦}}⟩, ran { ran {𝑦}}⟩))
152106, 128, 1513bitr4i 201 . 2 ((𝑥 ∈ ((𝐴 × 𝐵) × 𝐶) ∧ 𝑦 = ⟨ dom { dom {𝑥}}, ⟨ ran { dom {𝑥}}, ran {𝑥}⟩⟩) ↔ (𝑦 ∈ (𝐴 × (𝐵 × 𝐶)) ∧ 𝑥 = ⟨⟨ dom {𝑦}, dom { ran {𝑦}}⟩, ran { ran {𝑦}}⟩))
1535, 7, 21, 35, 152en2i 6250 1 ((𝐴 × 𝐵) × 𝐶) ≈ (𝐴 × (𝐵 × 𝐶))
Colors of variables: wff set class
Syntax hints:  wa 97   = wceq 1243  wex 1381  wcel 1393  Vcvv 2557  {csn 3375  cop 3378   cuni 3580   class class class wbr 3764   × cxp 4343  dom cdm 4345  ran crn 4346  cen 6219
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-mp 7  ax-ia1 99  ax-ia2 100  ax-ia3 101  ax-io 630  ax-5 1336  ax-7 1337  ax-gen 1338  ax-ie1 1382  ax-ie2 1383  ax-8 1395  ax-10 1396  ax-11 1397  ax-i12 1398  ax-bndl 1399  ax-4 1400  ax-13 1404  ax-14 1405  ax-17 1419  ax-i9 1423  ax-ial 1427  ax-i5r 1428  ax-ext 2022  ax-sep 3875  ax-pow 3927  ax-pr 3944  ax-un 4170
This theorem depends on definitions:  df-bi 110  df-3an 887  df-tru 1246  df-nf 1350  df-sb 1646  df-eu 1903  df-mo 1904  df-clab 2027  df-cleq 2033  df-clel 2036  df-nfc 2167  df-ral 2311  df-rex 2312  df-v 2559  df-un 2922  df-in 2924  df-ss 2931  df-pw 3361  df-sn 3381  df-pr 3382  df-op 3384  df-uni 3581  df-br 3765  df-opab 3819  df-mpt 3820  df-id 4030  df-xp 4351  df-rel 4352  df-cnv 4353  df-co 4354  df-dm 4355  df-rn 4356  df-fun 4904  df-fn 4905  df-f 4906  df-f1 4907  df-fo 4908  df-f1o 4909  df-en 6222
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator