Proof of Theorem unwf
Step | Hyp | Ref
| Expression |
1 | | r1rankidb 9493 |
. . . . . . . 8
⊢ (𝐴 ∈ ∪ (𝑅1 “ On) → 𝐴 ⊆
(𝑅1‘(rank‘𝐴))) |
2 | 1 | adantr 480 |
. . . . . . 7
⊢ ((𝐴 ∈ ∪ (𝑅1 “ On) ∧ 𝐵 ∈ ∪ (𝑅1 “ On)) → 𝐴 ⊆
(𝑅1‘(rank‘𝐴))) |
3 | | ssun1 4102 |
. . . . . . . 8
⊢
(rank‘𝐴)
⊆ ((rank‘𝐴)
∪ (rank‘𝐵)) |
4 | | rankdmr1 9490 |
. . . . . . . . 9
⊢
(rank‘𝐴)
∈ dom 𝑅1 |
5 | | r1funlim 9455 |
. . . . . . . . . . . 12
⊢ (Fun
𝑅1 ∧ Lim dom 𝑅1) |
6 | 5 | simpri 485 |
. . . . . . . . . . 11
⊢ Lim dom
𝑅1 |
7 | | limord 6310 |
. . . . . . . . . . 11
⊢ (Lim dom
𝑅1 → Ord dom 𝑅1) |
8 | 6, 7 | ax-mp 5 |
. . . . . . . . . 10
⊢ Ord dom
𝑅1 |
9 | | rankdmr1 9490 |
. . . . . . . . . 10
⊢
(rank‘𝐵)
∈ dom 𝑅1 |
10 | | ordunel 7649 |
. . . . . . . . . 10
⊢ ((Ord dom
𝑅1 ∧ (rank‘𝐴) ∈ dom 𝑅1 ∧
(rank‘𝐵) ∈ dom
𝑅1) → ((rank‘𝐴) ∪ (rank‘𝐵)) ∈ dom
𝑅1) |
11 | 8, 4, 9, 10 | mp3an 1459 |
. . . . . . . . 9
⊢
((rank‘𝐴)
∪ (rank‘𝐵))
∈ dom 𝑅1 |
12 | | r1ord3g 9468 |
. . . . . . . . 9
⊢
(((rank‘𝐴)
∈ dom 𝑅1 ∧ ((rank‘𝐴) ∪ (rank‘𝐵)) ∈ dom 𝑅1) →
((rank‘𝐴) ⊆
((rank‘𝐴) ∪
(rank‘𝐵)) →
(𝑅1‘(rank‘𝐴)) ⊆
(𝑅1‘((rank‘𝐴) ∪ (rank‘𝐵))))) |
13 | 4, 11, 12 | mp2an 688 |
. . . . . . . 8
⊢
((rank‘𝐴)
⊆ ((rank‘𝐴)
∪ (rank‘𝐵))
→ (𝑅1‘(rank‘𝐴)) ⊆
(𝑅1‘((rank‘𝐴) ∪ (rank‘𝐵)))) |
14 | 3, 13 | ax-mp 5 |
. . . . . . 7
⊢
(𝑅1‘(rank‘𝐴)) ⊆
(𝑅1‘((rank‘𝐴) ∪ (rank‘𝐵))) |
15 | 2, 14 | sstrdi 3929 |
. . . . . 6
⊢ ((𝐴 ∈ ∪ (𝑅1 “ On) ∧ 𝐵 ∈ ∪ (𝑅1 “ On)) → 𝐴 ⊆
(𝑅1‘((rank‘𝐴) ∪ (rank‘𝐵)))) |
16 | | r1rankidb 9493 |
. . . . . . . 8
⊢ (𝐵 ∈ ∪ (𝑅1 “ On) → 𝐵 ⊆
(𝑅1‘(rank‘𝐵))) |
17 | 16 | adantl 481 |
. . . . . . 7
⊢ ((𝐴 ∈ ∪ (𝑅1 “ On) ∧ 𝐵 ∈ ∪ (𝑅1 “ On)) → 𝐵 ⊆
(𝑅1‘(rank‘𝐵))) |
18 | | ssun2 4103 |
. . . . . . . 8
⊢
(rank‘𝐵)
⊆ ((rank‘𝐴)
∪ (rank‘𝐵)) |
19 | | r1ord3g 9468 |
. . . . . . . . 9
⊢
(((rank‘𝐵)
∈ dom 𝑅1 ∧ ((rank‘𝐴) ∪ (rank‘𝐵)) ∈ dom 𝑅1) →
((rank‘𝐵) ⊆
((rank‘𝐴) ∪
(rank‘𝐵)) →
(𝑅1‘(rank‘𝐵)) ⊆
(𝑅1‘((rank‘𝐴) ∪ (rank‘𝐵))))) |
20 | 9, 11, 19 | mp2an 688 |
. . . . . . . 8
⊢
((rank‘𝐵)
⊆ ((rank‘𝐴)
∪ (rank‘𝐵))
→ (𝑅1‘(rank‘𝐵)) ⊆
(𝑅1‘((rank‘𝐴) ∪ (rank‘𝐵)))) |
21 | 18, 20 | ax-mp 5 |
. . . . . . 7
⊢
(𝑅1‘(rank‘𝐵)) ⊆
(𝑅1‘((rank‘𝐴) ∪ (rank‘𝐵))) |
22 | 17, 21 | sstrdi 3929 |
. . . . . 6
⊢ ((𝐴 ∈ ∪ (𝑅1 “ On) ∧ 𝐵 ∈ ∪ (𝑅1 “ On)) → 𝐵 ⊆
(𝑅1‘((rank‘𝐴) ∪ (rank‘𝐵)))) |
23 | 15, 22 | unssd 4116 |
. . . . 5
⊢ ((𝐴 ∈ ∪ (𝑅1 “ On) ∧ 𝐵 ∈ ∪ (𝑅1 “ On)) → (𝐴 ∪ 𝐵) ⊆
(𝑅1‘((rank‘𝐴) ∪ (rank‘𝐵)))) |
24 | | fvex 6769 |
. . . . . 6
⊢
(𝑅1‘((rank‘𝐴) ∪ (rank‘𝐵))) ∈ V |
25 | 24 | elpw2 5264 |
. . . . 5
⊢ ((𝐴 ∪ 𝐵) ∈ 𝒫
(𝑅1‘((rank‘𝐴) ∪ (rank‘𝐵))) ↔ (𝐴 ∪ 𝐵) ⊆
(𝑅1‘((rank‘𝐴) ∪ (rank‘𝐵)))) |
26 | 23, 25 | sylibr 233 |
. . . 4
⊢ ((𝐴 ∈ ∪ (𝑅1 “ On) ∧ 𝐵 ∈ ∪ (𝑅1 “ On)) → (𝐴 ∪ 𝐵) ∈ 𝒫
(𝑅1‘((rank‘𝐴) ∪ (rank‘𝐵)))) |
27 | | r1sucg 9458 |
. . . . 5
⊢
(((rank‘𝐴)
∪ (rank‘𝐵))
∈ dom 𝑅1 → (𝑅1‘suc
((rank‘𝐴) ∪
(rank‘𝐵))) =
𝒫 (𝑅1‘((rank‘𝐴) ∪ (rank‘𝐵)))) |
28 | 11, 27 | ax-mp 5 |
. . . 4
⊢
(𝑅1‘suc ((rank‘𝐴) ∪ (rank‘𝐵))) = 𝒫
(𝑅1‘((rank‘𝐴) ∪ (rank‘𝐵))) |
29 | 26, 28 | eleqtrrdi 2850 |
. . 3
⊢ ((𝐴 ∈ ∪ (𝑅1 “ On) ∧ 𝐵 ∈ ∪ (𝑅1 “ On)) → (𝐴 ∪ 𝐵) ∈ (𝑅1‘suc
((rank‘𝐴) ∪
(rank‘𝐵)))) |
30 | | r1elwf 9485 |
. . 3
⊢ ((𝐴 ∪ 𝐵) ∈ (𝑅1‘suc
((rank‘𝐴) ∪
(rank‘𝐵))) →
(𝐴 ∪ 𝐵) ∈ ∪
(𝑅1 “ On)) |
31 | 29, 30 | syl 17 |
. 2
⊢ ((𝐴 ∈ ∪ (𝑅1 “ On) ∧ 𝐵 ∈ ∪ (𝑅1 “ On)) → (𝐴 ∪ 𝐵) ∈ ∪
(𝑅1 “ On)) |
32 | | ssun1 4102 |
. . . 4
⊢ 𝐴 ⊆ (𝐴 ∪ 𝐵) |
33 | | sswf 9497 |
. . . 4
⊢ (((𝐴 ∪ 𝐵) ∈ ∪
(𝑅1 “ On) ∧ 𝐴 ⊆ (𝐴 ∪ 𝐵)) → 𝐴 ∈ ∪
(𝑅1 “ On)) |
34 | 32, 33 | mpan2 687 |
. . 3
⊢ ((𝐴 ∪ 𝐵) ∈ ∪
(𝑅1 “ On) → 𝐴 ∈ ∪
(𝑅1 “ On)) |
35 | | ssun2 4103 |
. . . 4
⊢ 𝐵 ⊆ (𝐴 ∪ 𝐵) |
36 | | sswf 9497 |
. . . 4
⊢ (((𝐴 ∪ 𝐵) ∈ ∪
(𝑅1 “ On) ∧ 𝐵 ⊆ (𝐴 ∪ 𝐵)) → 𝐵 ∈ ∪
(𝑅1 “ On)) |
37 | 35, 36 | mpan2 687 |
. . 3
⊢ ((𝐴 ∪ 𝐵) ∈ ∪
(𝑅1 “ On) → 𝐵 ∈ ∪
(𝑅1 “ On)) |
38 | 34, 37 | jca 511 |
. 2
⊢ ((𝐴 ∪ 𝐵) ∈ ∪
(𝑅1 “ On) → (𝐴 ∈ ∪
(𝑅1 “ On) ∧ 𝐵 ∈ ∪
(𝑅1 “ On))) |
39 | 31, 38 | impbii 208 |
1
⊢ ((𝐴 ∈ ∪ (𝑅1 “ On) ∧ 𝐵 ∈ ∪ (𝑅1 “ On)) ↔ (𝐴 ∪ 𝐵) ∈ ∪
(𝑅1 “ On)) |