Metamath Proof Explorer


Theorem oaun3

Description: Ordinal addition as a union of classes. (Contributed by RP, 13-Feb-2025)

Ref Expression
Assertion oaun3 ⊢ A ∈ On ∧ B ∈ On → A + 𝑜 B = ⋃ x | ∃ a ∈ A x = a y | ∃ b ∈ B y = A + 𝑜 b z | ∃ a ∈ A ∃ b ∈ B z = a + 𝑜 b

Proof

Step Hyp Ref Expression
1 oacl ⊢ A ∈ On ∧ B ∈ On → A + 𝑜 B ∈ On
2 1 difexd ⊢ A ∈ On ∧ B ∈ On → A + 𝑜 B ∖ A ∈ V
3 uniprg ⊢ A ∈ On ∧ A + 𝑜 B ∖ A ∈ V → ⋃ A A + 𝑜 B ∖ A = A ∪ A + 𝑜 B ∖ A
4 2 3 syldan ⊢ A ∈ On ∧ B ∈ On → ⋃ A A + 𝑜 B ∖ A = A ∪ A + 𝑜 B ∖ A
5 undif2 ⊢ A ∪ A + 𝑜 B ∖ A = A ∪ A + 𝑜 B
6 oaword1 ⊢ A ∈ On ∧ B ∈ On → A ⊆ A + 𝑜 B
7 ssequn1 ⊢ A ⊆ A + 𝑜 B ↔ A ∪ A + 𝑜 B = A + 𝑜 B
8 6 7 sylib ⊢ A ∈ On ∧ B ∈ On → A ∪ A + 𝑜 B = A + 𝑜 B
9 5 8 eqtrid ⊢ A ∈ On ∧ B ∈ On → A ∪ A + 𝑜 B ∖ A = A + 𝑜 B
10 4 9 eqtrd ⊢ A ∈ On ∧ B ∈ On → ⋃ A A + 𝑜 B ∖ A = A + 𝑜 B
11 oaun3lem4 ⊢ A ∈ On ∧ B ∈ On → z | ∃ a ∈ A ∃ b ∈ B z = a + 𝑜 b ∈ suc ⁡ A + 𝑜 B
12 unisng ⊢ z | ∃ a ∈ A ∃ b ∈ B z = a + 𝑜 b ∈ suc ⁡ A + 𝑜 B → ⋃ z | ∃ a ∈ A ∃ b ∈ B z = a + 𝑜 b = z | ∃ a ∈ A ∃ b ∈ B z = a + 𝑜 b
13 11 12 syl ⊢ A ∈ On ∧ B ∈ On → ⋃ z | ∃ a ∈ A ∃ b ∈ B z = a + 𝑜 b = z | ∃ a ∈ A ∃ b ∈ B z = a + 𝑜 b
14 10 13 uneq12d ⊢ A ∈ On ∧ B ∈ On → ⋃ A A + 𝑜 B ∖ A ∪ ⋃ z | ∃ a ∈ A ∃ b ∈ B z = a + 𝑜 b = A + 𝑜 B ∪ z | ∃ a ∈ A ∃ b ∈ B z = a + 𝑜 b
15 uniun ⊢ ⋃ A A + 𝑜 B ∖ A ∪ z | ∃ a ∈ A ∃ b ∈ B z = a + 𝑜 b = ⋃ A A + 𝑜 B ∖ A ∪ ⋃ z | ∃ a ∈ A ∃ b ∈ B z = a + 𝑜 b
16 df-tp ⊢ A A + 𝑜 B ∖ A z | ∃ a ∈ A ∃ b ∈ B z = a + 𝑜 b = A A + 𝑜 B ∖ A ∪ z | ∃ a ∈ A ∃ b ∈ B z = a + 𝑜 b
17 rp-abid ⊢ A = x | ∃ a ∈ A x = a
18 17 a1i ⊢ A ∈ On ∧ B ∈ On → A = x | ∃ a ∈ A x = a
19 oadif1 ⊢ A ∈ On ∧ B ∈ On → A + 𝑜 B ∖ A = y | ∃ b ∈ B y = A + 𝑜 b
20 eqidd ⊢ A ∈ On ∧ B ∈ On → z | ∃ a ∈ A ∃ b ∈ B z = a + 𝑜 b = z | ∃ a ∈ A ∃ b ∈ B z = a + 𝑜 b
21 18 19 20 tpeq123d ⊢ A ∈ On ∧ B ∈ On → A A + 𝑜 B ∖ A z | ∃ a ∈ A ∃ b ∈ B z = a + 𝑜 b = x | ∃ a ∈ A x = a y | ∃ b ∈ B y = A + 𝑜 b z | ∃ a ∈ A ∃ b ∈ B z = a + 𝑜 b
22 16 21 eqtr3id ⊢ A ∈ On ∧ B ∈ On → A A + 𝑜 B ∖ A ∪ z | ∃ a ∈ A ∃ b ∈ B z = a + 𝑜 b = x | ∃ a ∈ A x = a y | ∃ b ∈ B y = A + 𝑜 b z | ∃ a ∈ A ∃ b ∈ B z = a + 𝑜 b
23 22 unieqd ⊢ A ∈ On ∧ B ∈ On → ⋃ A A + 𝑜 B ∖ A ∪ z | ∃ a ∈ A ∃ b ∈ B z = a + 𝑜 b = ⋃ x | ∃ a ∈ A x = a y | ∃ b ∈ B y = A + 𝑜 b z | ∃ a ∈ A ∃ b ∈ B z = a + 𝑜 b
24 15 23 eqtr3id ⊢ A ∈ On ∧ B ∈ On → ⋃ A A + 𝑜 B ∖ A ∪ ⋃ z | ∃ a ∈ A ∃ b ∈ B z = a + 𝑜 b = ⋃ x | ∃ a ∈ A x = a y | ∃ b ∈ B y = A + 𝑜 b z | ∃ a ∈ A ∃ b ∈ B z = a + 𝑜 b
25 oaun3lem2 ⊢ A ∈ On ∧ B ∈ On → z | ∃ a ∈ A ∃ b ∈ B z = a + 𝑜 b ⊆ A + 𝑜 B
26 ssequn2 ⊢ z | ∃ a ∈ A ∃ b ∈ B z = a + 𝑜 b ⊆ A + 𝑜 B ↔ A + 𝑜 B ∪ z | ∃ a ∈ A ∃ b ∈ B z = a + 𝑜 b = A + 𝑜 B
27 25 26 sylib ⊢ A ∈ On ∧ B ∈ On → A + 𝑜 B ∪ z | ∃ a ∈ A ∃ b ∈ B z = a + 𝑜 b = A + 𝑜 B
28 14 24 27 3eqtr3rd ⊢ A ∈ On ∧ B ∈ On → A + 𝑜 B = ⋃ x | ∃ a ∈ A x = a y | ∃ b ∈ B y = A + 𝑜 b z | ∃ a ∈ A ∃ b ∈ B z = a + 𝑜 b