| Step | Hyp | Ref
| Expression |
| 1 | | scotteq 9856 |
. . 3
⊢ (𝐴 = ∅ → Scott 𝐴 = Scott
∅) |
| 2 | | scott0 9861 |
. . 3
⊢ Scott
∅ = ∅ |
| 3 | 1, 2 | eqtrdi 2814 |
. 2
⊢ (𝐴 = ∅ → Scott 𝐴 = ∅) |
| 4 | | df-scott 9854 |
. . . 4
⊢ Scott
𝐴 = {𝑥 ∈ 𝐴 ∣ ∀𝑦 ∈ 𝐴 (rank‘𝑥) ⊆ (rank‘𝑦)} |
| 5 | 4 | eqeq1i 2768 |
. . 3
⊢ (Scott
𝐴 = ∅ ↔ {𝑥 ∈ 𝐴 ∣ ∀𝑦 ∈ 𝐴 (rank‘𝑥) ⊆ (rank‘𝑦)} = ∅) |
| 6 | | n0 4307 |
. . . . . . . . 9
⊢ (𝐴 ≠ ∅ ↔
∃𝑥 𝑥 ∈ 𝐴) |
| 7 | | nfre1 3290 |
. . . . . . . . . 10
⊢
Ⅎ𝑥∃𝑥 ∈ 𝐴 (rank‘𝑥) = (rank‘𝑥) |
| 8 | | eqid 2763 |
. . . . . . . . . . 11
⊢
(rank‘𝑥) =
(rank‘𝑥) |
| 9 | | rspe 3255 |
. . . . . . . . . . 11
⊢ ((𝑥 ∈ 𝐴 ∧ (rank‘𝑥) = (rank‘𝑥)) → ∃𝑥 ∈ 𝐴 (rank‘𝑥) = (rank‘𝑥)) |
| 10 | 8, 9 | mpan2 703 |
. . . . . . . . . 10
⊢ (𝑥 ∈ 𝐴 → ∃𝑥 ∈ 𝐴 (rank‘𝑥) = (rank‘𝑥)) |
| 11 | 7, 10 | exlimi 2253 |
. . . . . . . . 9
⊢
(∃𝑥 𝑥 ∈ 𝐴 → ∃𝑥 ∈ 𝐴 (rank‘𝑥) = (rank‘𝑥)) |
| 12 | 6, 11 | sylbi 220 |
. . . . . . . 8
⊢ (𝐴 ≠ ∅ →
∃𝑥 ∈ 𝐴 (rank‘𝑥) = (rank‘𝑥)) |
| 13 | | fvex 6894 |
. . . . . . . . . . . 12
⊢
(rank‘𝑥)
∈ V |
| 14 | | eqeq1 2767 |
. . . . . . . . . . . . 13
⊢ (𝑦 = (rank‘𝑥) → (𝑦 = (rank‘𝑥) ↔ (rank‘𝑥) = (rank‘𝑥))) |
| 15 | 14 | anbi2d 641 |
. . . . . . . . . . . 12
⊢ (𝑦 = (rank‘𝑥) → ((𝑥 ∈ 𝐴 ∧ 𝑦 = (rank‘𝑥)) ↔ (𝑥 ∈ 𝐴 ∧ (rank‘𝑥) = (rank‘𝑥)))) |
| 16 | 13, 15 | spcev 3565 |
. . . . . . . . . . 11
⊢ ((𝑥 ∈ 𝐴 ∧ (rank‘𝑥) = (rank‘𝑥)) → ∃𝑦(𝑥 ∈ 𝐴 ∧ 𝑦 = (rank‘𝑥))) |
| 17 | 16 | eximi 1865 |
. . . . . . . . . 10
⊢
(∃𝑥(𝑥 ∈ 𝐴 ∧ (rank‘𝑥) = (rank‘𝑥)) → ∃𝑥∃𝑦(𝑥 ∈ 𝐴 ∧ 𝑦 = (rank‘𝑥))) |
| 18 | | excom 2197 |
. . . . . . . . . 10
⊢
(∃𝑦∃𝑥(𝑥 ∈ 𝐴 ∧ 𝑦 = (rank‘𝑥)) ↔ ∃𝑥∃𝑦(𝑥 ∈ 𝐴 ∧ 𝑦 = (rank‘𝑥))) |
| 19 | 17, 18 | sylibr 237 |
. . . . . . . . 9
⊢
(∃𝑥(𝑥 ∈ 𝐴 ∧ (rank‘𝑥) = (rank‘𝑥)) → ∃𝑦∃𝑥(𝑥 ∈ 𝐴 ∧ 𝑦 = (rank‘𝑥))) |
| 20 | | df-rex 3090 |
. . . . . . . . 9
⊢
(∃𝑥 ∈
𝐴 (rank‘𝑥) = (rank‘𝑥) ↔ ∃𝑥(𝑥 ∈ 𝐴 ∧ (rank‘𝑥) = (rank‘𝑥))) |
| 21 | | df-rex 3090 |
. . . . . . . . . 10
⊢
(∃𝑥 ∈
𝐴 𝑦 = (rank‘𝑥) ↔ ∃𝑥(𝑥 ∈ 𝐴 ∧ 𝑦 = (rank‘𝑥))) |
| 22 | 21 | exbii 1878 |
. . . . . . . . 9
⊢
(∃𝑦∃𝑥 ∈ 𝐴 𝑦 = (rank‘𝑥) ↔ ∃𝑦∃𝑥(𝑥 ∈ 𝐴 ∧ 𝑦 = (rank‘𝑥))) |
| 23 | 19, 20, 22 | 3imtr4i 295 |
. . . . . . . 8
⊢
(∃𝑥 ∈
𝐴 (rank‘𝑥) = (rank‘𝑥) → ∃𝑦∃𝑥 ∈ 𝐴 𝑦 = (rank‘𝑥)) |
| 24 | 12, 23 | syl 18 |
. . . . . . 7
⊢ (𝐴 ≠ ∅ →
∃𝑦∃𝑥 ∈ 𝐴 𝑦 = (rank‘𝑥)) |
| 25 | | abn0 4341 |
. . . . . . 7
⊢ ({𝑦 ∣ ∃𝑥 ∈ 𝐴 𝑦 = (rank‘𝑥)} ≠ ∅ ↔ ∃𝑦∃𝑥 ∈ 𝐴 𝑦 = (rank‘𝑥)) |
| 26 | 24, 25 | sylibr 237 |
. . . . . 6
⊢ (𝐴 ≠ ∅ → {𝑦 ∣ ∃𝑥 ∈ 𝐴 𝑦 = (rank‘𝑥)} ≠ ∅) |
| 27 | 13 | dfiin2 4997 |
. . . . . . 7
⊢ ∩ 𝑥 ∈ 𝐴 (rank‘𝑥) = ∩ {𝑦 ∣ ∃𝑥 ∈ 𝐴 𝑦 = (rank‘𝑥)} |
| 28 | | rankon 9763 |
. . . . . . . . . . 11
⊢
(rank‘𝑥)
∈ On |
| 29 | | eleq1 2851 |
. . . . . . . . . . 11
⊢ (𝑦 = (rank‘𝑥) → (𝑦 ∈ On ↔ (rank‘𝑥) ∈ On)) |
| 30 | 28, 29 | mpbiri 261 |
. . . . . . . . . 10
⊢ (𝑦 = (rank‘𝑥) → 𝑦 ∈ On) |
| 31 | 30 | rexlimivw 3162 |
. . . . . . . . 9
⊢
(∃𝑥 ∈
𝐴 𝑦 = (rank‘𝑥) → 𝑦 ∈ On) |
| 32 | 31 | abssi 4022 |
. . . . . . . 8
⊢ {𝑦 ∣ ∃𝑥 ∈ 𝐴 𝑦 = (rank‘𝑥)} ⊆ On |
| 33 | | onint 7785 |
. . . . . . . 8
⊢ (({𝑦 ∣ ∃𝑥 ∈ 𝐴 𝑦 = (rank‘𝑥)} ⊆ On ∧ {𝑦 ∣ ∃𝑥 ∈ 𝐴 𝑦 = (rank‘𝑥)} ≠ ∅) → ∩ {𝑦
∣ ∃𝑥 ∈
𝐴 𝑦 = (rank‘𝑥)} ∈ {𝑦 ∣ ∃𝑥 ∈ 𝐴 𝑦 = (rank‘𝑥)}) |
| 34 | 32, 33 | mpan 702 |
. . . . . . 7
⊢ ({𝑦 ∣ ∃𝑥 ∈ 𝐴 𝑦 = (rank‘𝑥)} ≠ ∅ → ∩ {𝑦
∣ ∃𝑥 ∈
𝐴 𝑦 = (rank‘𝑥)} ∈ {𝑦 ∣ ∃𝑥 ∈ 𝐴 𝑦 = (rank‘𝑥)}) |
| 35 | 27, 34 | eqeltrid 2867 |
. . . . . 6
⊢ ({𝑦 ∣ ∃𝑥 ∈ 𝐴 𝑦 = (rank‘𝑥)} ≠ ∅ → ∩ 𝑥 ∈ 𝐴 (rank‘𝑥) ∈ {𝑦 ∣ ∃𝑥 ∈ 𝐴 𝑦 = (rank‘𝑥)}) |
| 36 | | nfii1 4993 |
. . . . . . . . . 10
⊢
Ⅎ𝑥∩ 𝑥 ∈ 𝐴 (rank‘𝑥) |
| 37 | 36 | nfeq2 2942 |
. . . . . . . . 9
⊢
Ⅎ𝑥 𝑦 = ∩ 𝑥 ∈ 𝐴 (rank‘𝑥) |
| 38 | | eqeq1 2767 |
. . . . . . . . 9
⊢ (𝑦 = ∩ 𝑥 ∈ 𝐴 (rank‘𝑥) → (𝑦 = (rank‘𝑥) ↔ ∩
𝑥 ∈ 𝐴 (rank‘𝑥) = (rank‘𝑥))) |
| 39 | 37, 38 | rexbid 3279 |
. . . . . . . 8
⊢ (𝑦 = ∩ 𝑥 ∈ 𝐴 (rank‘𝑥) → (∃𝑥 ∈ 𝐴 𝑦 = (rank‘𝑥) ↔ ∃𝑥 ∈ 𝐴 ∩ 𝑥 ∈ 𝐴 (rank‘𝑥) = (rank‘𝑥))) |
| 40 | 39 | elabg 3635 |
. . . . . . 7
⊢ (∩ 𝑥 ∈ 𝐴 (rank‘𝑥) ∈ {𝑦 ∣ ∃𝑥 ∈ 𝐴 𝑦 = (rank‘𝑥)} → (∩ 𝑥 ∈ 𝐴 (rank‘𝑥) ∈ {𝑦 ∣ ∃𝑥 ∈ 𝐴 𝑦 = (rank‘𝑥)} ↔ ∃𝑥 ∈ 𝐴 ∩ 𝑥 ∈ 𝐴 (rank‘𝑥) = (rank‘𝑥))) |
| 41 | 40 | ibi 270 |
. . . . . 6
⊢ (∩ 𝑥 ∈ 𝐴 (rank‘𝑥) ∈ {𝑦 ∣ ∃𝑥 ∈ 𝐴 𝑦 = (rank‘𝑥)} → ∃𝑥 ∈ 𝐴 ∩ 𝑥 ∈ 𝐴 (rank‘𝑥) = (rank‘𝑥)) |
| 42 | | ssid 3959 |
. . . . . . . . . . 11
⊢
(rank‘𝑦)
⊆ (rank‘𝑦) |
| 43 | | fveq2 6881 |
. . . . . . . . . . . . 13
⊢ (𝑥 = 𝑦 → (rank‘𝑥) = (rank‘𝑦)) |
| 44 | 43 | sseq1d 3968 |
. . . . . . . . . . . 12
⊢ (𝑥 = 𝑦 → ((rank‘𝑥) ⊆ (rank‘𝑦) ↔ (rank‘𝑦) ⊆ (rank‘𝑦))) |
| 45 | 44 | rspcev 3581 |
. . . . . . . . . . 11
⊢ ((𝑦 ∈ 𝐴 ∧ (rank‘𝑦) ⊆ (rank‘𝑦)) → ∃𝑥 ∈ 𝐴 (rank‘𝑥) ⊆ (rank‘𝑦)) |
| 46 | 42, 45 | mpan2 703 |
. . . . . . . . . 10
⊢ (𝑦 ∈ 𝐴 → ∃𝑥 ∈ 𝐴 (rank‘𝑥) ⊆ (rank‘𝑦)) |
| 47 | | iinss 5021 |
. . . . . . . . . 10
⊢
(∃𝑥 ∈
𝐴 (rank‘𝑥) ⊆ (rank‘𝑦) → ∩ 𝑥 ∈ 𝐴 (rank‘𝑥) ⊆ (rank‘𝑦)) |
| 48 | 46, 47 | syl 18 |
. . . . . . . . 9
⊢ (𝑦 ∈ 𝐴 → ∩
𝑥 ∈ 𝐴 (rank‘𝑥) ⊆ (rank‘𝑦)) |
| 49 | | sseq1 3962 |
. . . . . . . . 9
⊢ (∩ 𝑥 ∈ 𝐴 (rank‘𝑥) = (rank‘𝑥) → (∩
𝑥 ∈ 𝐴 (rank‘𝑥) ⊆ (rank‘𝑦) ↔ (rank‘𝑥) ⊆ (rank‘𝑦))) |
| 50 | 48, 49 | imbitrid 247 |
. . . . . . . 8
⊢ (∩ 𝑥 ∈ 𝐴 (rank‘𝑥) = (rank‘𝑥) → (𝑦 ∈ 𝐴 → (rank‘𝑥) ⊆ (rank‘𝑦))) |
| 51 | 50 | ralrimiv 3156 |
. . . . . . 7
⊢ (∩ 𝑥 ∈ 𝐴 (rank‘𝑥) = (rank‘𝑥) → ∀𝑦 ∈ 𝐴 (rank‘𝑥) ⊆ (rank‘𝑦)) |
| 52 | 51 | reximi 3103 |
. . . . . 6
⊢
(∃𝑥 ∈
𝐴 ∩ 𝑥 ∈ 𝐴 (rank‘𝑥) = (rank‘𝑥) → ∃𝑥 ∈ 𝐴 ∀𝑦 ∈ 𝐴 (rank‘𝑥) ⊆ (rank‘𝑦)) |
| 53 | 26, 35, 41, 52 | 4syl 20 |
. . . . 5
⊢ (𝐴 ≠ ∅ →
∃𝑥 ∈ 𝐴 ∀𝑦 ∈ 𝐴 (rank‘𝑥) ⊆ (rank‘𝑦)) |
| 54 | | rabn0 4346 |
. . . . 5
⊢ ({𝑥 ∈ 𝐴 ∣ ∀𝑦 ∈ 𝐴 (rank‘𝑥) ⊆ (rank‘𝑦)} ≠ ∅ ↔ ∃𝑥 ∈ 𝐴 ∀𝑦 ∈ 𝐴 (rank‘𝑥) ⊆ (rank‘𝑦)) |
| 55 | 53, 54 | sylibr 237 |
. . . 4
⊢ (𝐴 ≠ ∅ → {𝑥 ∈ 𝐴 ∣ ∀𝑦 ∈ 𝐴 (rank‘𝑥) ⊆ (rank‘𝑦)} ≠ ∅) |
| 56 | 55 | necon4i 2993 |
. . 3
⊢ ({𝑥 ∈ 𝐴 ∣ ∀𝑦 ∈ 𝐴 (rank‘𝑥) ⊆ (rank‘𝑦)} = ∅ → 𝐴 = ∅) |
| 57 | 5, 56 | sylbi 220 |
. 2
⊢ (Scott
𝐴 = ∅ → 𝐴 = ∅) |
| 58 | 3, 57 | impbii 212 |
1
⊢ (𝐴 = ∅ ↔ Scott 𝐴 = ∅) |