Proof of Theorem rp-isfinite6
| Step | Hyp | Ref
| Expression |
| 1 | | exmid 431 |
. . . 4
⊢ (𝐴 = ∅ ∨ ¬ 𝐴 = ∅) |
| 2 | 1 | biantrur 527 |
. . 3
⊢ (𝐴 ∈ Fin ↔ ((𝐴 = ∅ ∨ ¬ 𝐴 = ∅) ∧ 𝐴 ∈ Fin)) |
| 3 | | andir 912 |
. . 3
⊢ (((𝐴 = ∅ ∨ ¬ 𝐴 = ∅) ∧ 𝐴 ∈ Fin) ↔ ((𝐴 = ∅ ∧ 𝐴 ∈ Fin) ∨ (¬ 𝐴 = ∅ ∧ 𝐴 ∈ Fin))) |
| 4 | 2, 3 | bitri 264 |
. 2
⊢ (𝐴 ∈ Fin ↔ ((𝐴 = ∅ ∧ 𝐴 ∈ Fin) ∨ (¬ 𝐴 = ∅ ∧ 𝐴 ∈ Fin))) |
| 5 | | simpl 473 |
. . . 4
⊢ ((𝐴 = ∅ ∧ 𝐴 ∈ Fin) → 𝐴 = ∅) |
| 6 | | 0fin 8188 |
. . . . . 6
⊢ ∅
∈ Fin |
| 7 | | eleq1a 2696 |
. . . . . 6
⊢ (∅
∈ Fin → (𝐴 =
∅ → 𝐴 ∈
Fin)) |
| 8 | 6, 7 | ax-mp 5 |
. . . . 5
⊢ (𝐴 = ∅ → 𝐴 ∈ Fin) |
| 9 | 8 | ancli 574 |
. . . 4
⊢ (𝐴 = ∅ → (𝐴 = ∅ ∧ 𝐴 ∈ Fin)) |
| 10 | 5, 9 | impbii 199 |
. . 3
⊢ ((𝐴 = ∅ ∧ 𝐴 ∈ Fin) ↔ 𝐴 = ∅) |
| 11 | | rp-isfinite5 37863 |
. . . . . 6
⊢ (𝐴 ∈ Fin ↔ ∃𝑛 ∈ ℕ0
(1...𝑛) ≈ 𝐴) |
| 12 | | df-rex 2918 |
. . . . . 6
⊢
(∃𝑛 ∈
ℕ0 (1...𝑛)
≈ 𝐴 ↔
∃𝑛(𝑛 ∈ ℕ0 ∧ (1...𝑛) ≈ 𝐴)) |
| 13 | 11, 12 | bitri 264 |
. . . . 5
⊢ (𝐴 ∈ Fin ↔ ∃𝑛(𝑛 ∈ ℕ0 ∧ (1...𝑛) ≈ 𝐴)) |
| 14 | 13 | anbi2i 730 |
. . . 4
⊢ ((¬
𝐴 = ∅ ∧ 𝐴 ∈ Fin) ↔ (¬ 𝐴 = ∅ ∧ ∃𝑛(𝑛 ∈ ℕ0 ∧ (1...𝑛) ≈ 𝐴))) |
| 15 | | df-rex 2918 |
. . . . 5
⊢
(∃𝑛 ∈
ℕ (1...𝑛) ≈
𝐴 ↔ ∃𝑛(𝑛 ∈ ℕ ∧ (1...𝑛) ≈ 𝐴)) |
| 16 | | en0 8019 |
. . . . . . . . . . . . . . 15
⊢ (𝐴 ≈ ∅ ↔ 𝐴 = ∅) |
| 17 | 16 | bicomi 214 |
. . . . . . . . . . . . . 14
⊢ (𝐴 = ∅ ↔ 𝐴 ≈
∅) |
| 18 | | ensymb 8004 |
. . . . . . . . . . . . . 14
⊢ (𝐴 ≈ ∅ ↔ ∅
≈ 𝐴) |
| 19 | 17, 18 | bitri 264 |
. . . . . . . . . . . . 13
⊢ (𝐴 = ∅ ↔ ∅
≈ 𝐴) |
| 20 | 19 | notbii 310 |
. . . . . . . . . . . 12
⊢ (¬
𝐴 = ∅ ↔ ¬
∅ ≈ 𝐴) |
| 21 | | elnn0 11294 |
. . . . . . . . . . . . . 14
⊢ (𝑛 ∈ ℕ0
↔ (𝑛 ∈ ℕ
∨ 𝑛 =
0)) |
| 22 | 21 | anbi1i 731 |
. . . . . . . . . . . . 13
⊢ ((𝑛 ∈ ℕ0
∧ (1...𝑛) ≈ 𝐴) ↔ ((𝑛 ∈ ℕ ∨ 𝑛 = 0) ∧ (1...𝑛) ≈ 𝐴)) |
| 23 | | andir 912 |
. . . . . . . . . . . . 13
⊢ (((𝑛 ∈ ℕ ∨ 𝑛 = 0) ∧ (1...𝑛) ≈ 𝐴) ↔ ((𝑛 ∈ ℕ ∧ (1...𝑛) ≈ 𝐴) ∨ (𝑛 = 0 ∧ (1...𝑛) ≈ 𝐴))) |
| 24 | 22, 23 | bitri 264 |
. . . . . . . . . . . 12
⊢ ((𝑛 ∈ ℕ0
∧ (1...𝑛) ≈ 𝐴) ↔ ((𝑛 ∈ ℕ ∧ (1...𝑛) ≈ 𝐴) ∨ (𝑛 = 0 ∧ (1...𝑛) ≈ 𝐴))) |
| 25 | 20, 24 | anbi12i 733 |
. . . . . . . . . . 11
⊢ ((¬
𝐴 = ∅ ∧ (𝑛 ∈ ℕ0
∧ (1...𝑛) ≈ 𝐴)) ↔ (¬ ∅ ≈
𝐴 ∧ ((𝑛 ∈ ℕ ∧ (1...𝑛) ≈ 𝐴) ∨ (𝑛 = 0 ∧ (1...𝑛) ≈ 𝐴)))) |
| 26 | | andi 911 |
. . . . . . . . . . 11
⊢ ((¬
∅ ≈ 𝐴 ∧
((𝑛 ∈ ℕ ∧
(1...𝑛) ≈ 𝐴) ∨ (𝑛 = 0 ∧ (1...𝑛) ≈ 𝐴))) ↔ ((¬ ∅ ≈ 𝐴 ∧ (𝑛 ∈ ℕ ∧ (1...𝑛) ≈ 𝐴)) ∨ (¬ ∅ ≈ 𝐴 ∧ (𝑛 = 0 ∧ (1...𝑛) ≈ 𝐴)))) |
| 27 | 25, 26 | bitri 264 |
. . . . . . . . . 10
⊢ ((¬
𝐴 = ∅ ∧ (𝑛 ∈ ℕ0
∧ (1...𝑛) ≈ 𝐴)) ↔ ((¬ ∅
≈ 𝐴 ∧ (𝑛 ∈ ℕ ∧ (1...𝑛) ≈ 𝐴)) ∨ (¬ ∅ ≈ 𝐴 ∧ (𝑛 = 0 ∧ (1...𝑛) ≈ 𝐴)))) |
| 28 | | 3anass 1042 |
. . . . . . . . . . 11
⊢ ((¬
∅ ≈ 𝐴 ∧
𝑛 ∈ ℕ ∧
(1...𝑛) ≈ 𝐴) ↔ (¬ ∅ ≈
𝐴 ∧ (𝑛 ∈ ℕ ∧ (1...𝑛) ≈ 𝐴))) |
| 29 | | 3anass 1042 |
. . . . . . . . . . 11
⊢ ((¬
∅ ≈ 𝐴 ∧
𝑛 = 0 ∧ (1...𝑛) ≈ 𝐴) ↔ (¬ ∅ ≈ 𝐴 ∧ (𝑛 = 0 ∧ (1...𝑛) ≈ 𝐴))) |
| 30 | 28, 29 | orbi12i 543 |
. . . . . . . . . 10
⊢ (((¬
∅ ≈ 𝐴 ∧
𝑛 ∈ ℕ ∧
(1...𝑛) ≈ 𝐴) ∨ (¬ ∅ ≈
𝐴 ∧ 𝑛 = 0 ∧ (1...𝑛) ≈ 𝐴)) ↔ ((¬ ∅ ≈ 𝐴 ∧ (𝑛 ∈ ℕ ∧ (1...𝑛) ≈ 𝐴)) ∨ (¬ ∅ ≈ 𝐴 ∧ (𝑛 = 0 ∧ (1...𝑛) ≈ 𝐴)))) |
| 31 | 27, 30 | sylbb2 228 |
. . . . . . . . 9
⊢ ((¬
𝐴 = ∅ ∧ (𝑛 ∈ ℕ0
∧ (1...𝑛) ≈ 𝐴)) → ((¬ ∅
≈ 𝐴 ∧ 𝑛 ∈ ℕ ∧ (1...𝑛) ≈ 𝐴) ∨ (¬ ∅ ≈ 𝐴 ∧ 𝑛 = 0 ∧ (1...𝑛) ≈ 𝐴))) |
| 32 | | simp2 1062 |
. . . . . . . . . 10
⊢ ((¬
∅ ≈ 𝐴 ∧
𝑛 ∈ ℕ ∧
(1...𝑛) ≈ 𝐴) → 𝑛 ∈ ℕ) |
| 33 | | oveq2 6658 |
. . . . . . . . . . . 12
⊢ (𝑛 = 0 → (1...𝑛) = (1...0)) |
| 34 | | fz10 12362 |
. . . . . . . . . . . 12
⊢ (1...0) =
∅ |
| 35 | 33, 34 | syl6eq 2672 |
. . . . . . . . . . 11
⊢ (𝑛 = 0 → (1...𝑛) = ∅) |
| 36 | | simp2 1062 |
. . . . . . . . . . . . 13
⊢ ((¬
∅ ≈ 𝐴 ∧
(1...𝑛) = ∅ ∧
(1...𝑛) ≈ 𝐴) → (1...𝑛) = ∅) |
| 37 | | simp3 1063 |
. . . . . . . . . . . . 13
⊢ ((¬
∅ ≈ 𝐴 ∧
(1...𝑛) = ∅ ∧
(1...𝑛) ≈ 𝐴) → (1...𝑛) ≈ 𝐴) |
| 38 | 36, 37 | eqbrtrrd 4677 |
. . . . . . . . . . . 12
⊢ ((¬
∅ ≈ 𝐴 ∧
(1...𝑛) = ∅ ∧
(1...𝑛) ≈ 𝐴) → ∅ ≈ 𝐴) |
| 39 | | simp1 1061 |
. . . . . . . . . . . 12
⊢ ((¬
∅ ≈ 𝐴 ∧
(1...𝑛) = ∅ ∧
(1...𝑛) ≈ 𝐴) → ¬ ∅ ≈
𝐴) |
| 40 | 38, 39 | pm2.21dd 186 |
. . . . . . . . . . 11
⊢ ((¬
∅ ≈ 𝐴 ∧
(1...𝑛) = ∅ ∧
(1...𝑛) ≈ 𝐴) → 𝑛 ∈ ℕ) |
| 41 | 35, 40 | syl3an2 1360 |
. . . . . . . . . 10
⊢ ((¬
∅ ≈ 𝐴 ∧
𝑛 = 0 ∧ (1...𝑛) ≈ 𝐴) → 𝑛 ∈ ℕ) |
| 42 | 32, 41 | jaoi 394 |
. . . . . . . . 9
⊢ (((¬
∅ ≈ 𝐴 ∧
𝑛 ∈ ℕ ∧
(1...𝑛) ≈ 𝐴) ∨ (¬ ∅ ≈
𝐴 ∧ 𝑛 = 0 ∧ (1...𝑛) ≈ 𝐴)) → 𝑛 ∈ ℕ) |
| 43 | 31, 42 | syl 17 |
. . . . . . . 8
⊢ ((¬
𝐴 = ∅ ∧ (𝑛 ∈ ℕ0
∧ (1...𝑛) ≈ 𝐴)) → 𝑛 ∈ ℕ) |
| 44 | | simprr 796 |
. . . . . . . 8
⊢ ((¬
𝐴 = ∅ ∧ (𝑛 ∈ ℕ0
∧ (1...𝑛) ≈ 𝐴)) → (1...𝑛) ≈ 𝐴) |
| 45 | 43, 44 | jca 554 |
. . . . . . 7
⊢ ((¬
𝐴 = ∅ ∧ (𝑛 ∈ ℕ0
∧ (1...𝑛) ≈ 𝐴)) → (𝑛 ∈ ℕ ∧ (1...𝑛) ≈ 𝐴)) |
| 46 | | nngt0 11049 |
. . . . . . . . . . . 12
⊢ (𝑛 ∈ ℕ → 0 <
𝑛) |
| 47 | | hash0 13158 |
. . . . . . . . . . . . 13
⊢
(#‘∅) = 0 |
| 48 | 47 | a1i 11 |
. . . . . . . . . . . 12
⊢ (𝑛 ∈ ℕ →
(#‘∅) = 0) |
| 49 | | nnnn0 11299 |
. . . . . . . . . . . . 13
⊢ (𝑛 ∈ ℕ → 𝑛 ∈
ℕ0) |
| 50 | | hashfz1 13134 |
. . . . . . . . . . . . 13
⊢ (𝑛 ∈ ℕ0
→ (#‘(1...𝑛)) =
𝑛) |
| 51 | 49, 50 | syl 17 |
. . . . . . . . . . . 12
⊢ (𝑛 ∈ ℕ →
(#‘(1...𝑛)) = 𝑛) |
| 52 | 46, 48, 51 | 3brtr4d 4685 |
. . . . . . . . . . 11
⊢ (𝑛 ∈ ℕ →
(#‘∅) < (#‘(1...𝑛))) |
| 53 | | fzfi 12771 |
. . . . . . . . . . . 12
⊢
(1...𝑛) ∈
Fin |
| 54 | | hashsdom 13170 |
. . . . . . . . . . . 12
⊢ ((∅
∈ Fin ∧ (1...𝑛)
∈ Fin) → ((#‘∅) < (#‘(1...𝑛)) ↔ ∅ ≺ (1...𝑛))) |
| 55 | 6, 53, 54 | mp2an 708 |
. . . . . . . . . . 11
⊢
((#‘∅) < (#‘(1...𝑛)) ↔ ∅ ≺ (1...𝑛)) |
| 56 | 52, 55 | sylib 208 |
. . . . . . . . . 10
⊢ (𝑛 ∈ ℕ → ∅
≺ (1...𝑛)) |
| 57 | 56 | anim1i 592 |
. . . . . . . . 9
⊢ ((𝑛 ∈ ℕ ∧ (1...𝑛) ≈ 𝐴) → (∅ ≺ (1...𝑛) ∧ (1...𝑛) ≈ 𝐴)) |
| 58 | | sdomentr 8094 |
. . . . . . . . . . 11
⊢ ((∅
≺ (1...𝑛) ∧
(1...𝑛) ≈ 𝐴) → ∅ ≺ 𝐴) |
| 59 | | sdomnen 7984 |
. . . . . . . . . . 11
⊢ (∅
≺ 𝐴 → ¬
∅ ≈ 𝐴) |
| 60 | 58, 59 | syl 17 |
. . . . . . . . . 10
⊢ ((∅
≺ (1...𝑛) ∧
(1...𝑛) ≈ 𝐴) → ¬ ∅ ≈
𝐴) |
| 61 | | ensymb 8004 |
. . . . . . . . . . . 12
⊢ (∅
≈ 𝐴 ↔ 𝐴 ≈
∅) |
| 62 | 61, 16 | bitri 264 |
. . . . . . . . . . 11
⊢ (∅
≈ 𝐴 ↔ 𝐴 = ∅) |
| 63 | 62 | notbii 310 |
. . . . . . . . . 10
⊢ (¬
∅ ≈ 𝐴 ↔
¬ 𝐴 =
∅) |
| 64 | 60, 63 | sylib 208 |
. . . . . . . . 9
⊢ ((∅
≺ (1...𝑛) ∧
(1...𝑛) ≈ 𝐴) → ¬ 𝐴 = ∅) |
| 65 | 57, 64 | syl 17 |
. . . . . . . 8
⊢ ((𝑛 ∈ ℕ ∧ (1...𝑛) ≈ 𝐴) → ¬ 𝐴 = ∅) |
| 66 | 49 | anim1i 592 |
. . . . . . . 8
⊢ ((𝑛 ∈ ℕ ∧ (1...𝑛) ≈ 𝐴) → (𝑛 ∈ ℕ0 ∧ (1...𝑛) ≈ 𝐴)) |
| 67 | 65, 66 | jca 554 |
. . . . . . 7
⊢ ((𝑛 ∈ ℕ ∧ (1...𝑛) ≈ 𝐴) → (¬ 𝐴 = ∅ ∧ (𝑛 ∈ ℕ0 ∧ (1...𝑛) ≈ 𝐴))) |
| 68 | 45, 67 | impbii 199 |
. . . . . 6
⊢ ((¬
𝐴 = ∅ ∧ (𝑛 ∈ ℕ0
∧ (1...𝑛) ≈ 𝐴)) ↔ (𝑛 ∈ ℕ ∧ (1...𝑛) ≈ 𝐴)) |
| 69 | 68 | exbii 1774 |
. . . . 5
⊢
(∃𝑛(¬
𝐴 = ∅ ∧ (𝑛 ∈ ℕ0
∧ (1...𝑛) ≈ 𝐴)) ↔ ∃𝑛(𝑛 ∈ ℕ ∧ (1...𝑛) ≈ 𝐴)) |
| 70 | | 19.42v 1918 |
. . . . 5
⊢
(∃𝑛(¬
𝐴 = ∅ ∧ (𝑛 ∈ ℕ0
∧ (1...𝑛) ≈ 𝐴)) ↔ (¬ 𝐴 = ∅ ∧ ∃𝑛(𝑛 ∈ ℕ0 ∧ (1...𝑛) ≈ 𝐴))) |
| 71 | 15, 69, 70 | 3bitr2ri 289 |
. . . 4
⊢ ((¬
𝐴 = ∅ ∧
∃𝑛(𝑛 ∈ ℕ0 ∧ (1...𝑛) ≈ 𝐴)) ↔ ∃𝑛 ∈ ℕ (1...𝑛) ≈ 𝐴) |
| 72 | 14, 71 | bitri 264 |
. . 3
⊢ ((¬
𝐴 = ∅ ∧ 𝐴 ∈ Fin) ↔ ∃𝑛 ∈ ℕ (1...𝑛) ≈ 𝐴) |
| 73 | 10, 72 | orbi12i 543 |
. 2
⊢ (((𝐴 = ∅ ∧ 𝐴 ∈ Fin) ∨ (¬ 𝐴 = ∅ ∧ 𝐴 ∈ Fin)) ↔ (𝐴 = ∅ ∨ ∃𝑛 ∈ ℕ (1...𝑛) ≈ 𝐴)) |
| 74 | 4, 73 | bitri 264 |
1
⊢ (𝐴 ∈ Fin ↔ (𝐴 = ∅ ∨ ∃𝑛 ∈ ℕ (1...𝑛) ≈ 𝐴)) |