Step | Hyp | Ref
| Expression |
1 | | bitsfzo.1 |
. . 3
⊢ (𝜑 → 𝑁 ∈
ℕ0) |
2 | | nn0uz 11598 |
. . 3
⊢
ℕ0 = (ℤ≥‘0) |
3 | 1, 2 | syl6eleq 2698 |
. 2
⊢ (𝜑 → 𝑁 ∈
(ℤ≥‘0)) |
4 | | 2nn 11062 |
. . . . 5
⊢ 2 ∈
ℕ |
5 | 4 | a1i 11 |
. . . 4
⊢ (𝜑 → 2 ∈
ℕ) |
6 | | bitsfzo.2 |
. . . 4
⊢ (𝜑 → 𝑀 ∈
ℕ0) |
7 | 5, 6 | nnexpcld 12892 |
. . 3
⊢ (𝜑 → (2↑𝑀) ∈ ℕ) |
8 | 7 | nnzd 11357 |
. 2
⊢ (𝜑 → (2↑𝑀) ∈ ℤ) |
9 | | bitsfzo.3 |
. . . . . . . 8
⊢ (𝜑 → (bits‘𝑁) ⊆ (0..^𝑀)) |
10 | 9 | adantr 480 |
. . . . . . 7
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → (bits‘𝑁) ⊆ (0..^𝑀)) |
11 | | n2dvds1 14942 |
. . . . . . . . 9
⊢ ¬ 2
∥ 1 |
12 | 4 | a1i 11 |
. . . . . . . . . . . . . . . 16
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → 2 ∈ ℕ) |
13 | | ssrab2 3650 |
. . . . . . . . . . . . . . . . . . . . 21
⊢ {𝑛 ∈ ℕ0
∣ 𝑁 <
(2↑𝑛)} ⊆
ℕ0 |
14 | | bitsfzo.4 |
. . . . . . . . . . . . . . . . . . . . . 22
⊢ 𝑆 = inf({𝑛 ∈ ℕ0 ∣ 𝑁 < (2↑𝑛)}, ℝ, < ) |
15 | 13, 2 | sseqtri 3600 |
. . . . . . . . . . . . . . . . . . . . . . 23
⊢ {𝑛 ∈ ℕ0
∣ 𝑁 <
(2↑𝑛)} ⊆
(ℤ≥‘0) |
16 | | nnssnn0 11172 |
. . . . . . . . . . . . . . . . . . . . . . . . 25
⊢ ℕ
⊆ ℕ0 |
17 | 1 | nn0red 11229 |
. . . . . . . . . . . . . . . . . . . . . . . . . 26
⊢ (𝜑 → 𝑁 ∈ ℝ) |
18 | | 2re 10967 |
. . . . . . . . . . . . . . . . . . . . . . . . . . 27
⊢ 2 ∈
ℝ |
19 | 18 | a1i 11 |
. . . . . . . . . . . . . . . . . . . . . . . . . 26
⊢ (𝜑 → 2 ∈
ℝ) |
20 | | 1lt2 11071 |
. . . . . . . . . . . . . . . . . . . . . . . . . . 27
⊢ 1 <
2 |
21 | 20 | a1i 11 |
. . . . . . . . . . . . . . . . . . . . . . . . . 26
⊢ (𝜑 → 1 < 2) |
22 | | expnbnd 12855 |
. . . . . . . . . . . . . . . . . . . . . . . . . 26
⊢ ((𝑁 ∈ ℝ ∧ 2 ∈
ℝ ∧ 1 < 2) → ∃𝑛 ∈ ℕ 𝑁 < (2↑𝑛)) |
23 | 17, 19, 21, 22 | syl3anc 1318 |
. . . . . . . . . . . . . . . . . . . . . . . . 25
⊢ (𝜑 → ∃𝑛 ∈ ℕ 𝑁 < (2↑𝑛)) |
24 | | ssrexv 3630 |
. . . . . . . . . . . . . . . . . . . . . . . . 25
⊢ (ℕ
⊆ ℕ0 → (∃𝑛 ∈ ℕ 𝑁 < (2↑𝑛) → ∃𝑛 ∈ ℕ0 𝑁 < (2↑𝑛))) |
25 | 16, 23, 24 | mpsyl 66 |
. . . . . . . . . . . . . . . . . . . . . . . 24
⊢ (𝜑 → ∃𝑛 ∈ ℕ0 𝑁 < (2↑𝑛)) |
26 | | rabn0 3912 |
. . . . . . . . . . . . . . . . . . . . . . . 24
⊢ ({𝑛 ∈ ℕ0
∣ 𝑁 <
(2↑𝑛)} ≠ ∅
↔ ∃𝑛 ∈
ℕ0 𝑁 <
(2↑𝑛)) |
27 | 25, 26 | sylibr 223 |
. . . . . . . . . . . . . . . . . . . . . . 23
⊢ (𝜑 → {𝑛 ∈ ℕ0 ∣ 𝑁 < (2↑𝑛)} ≠ ∅) |
28 | | infssuzcl 11648 |
. . . . . . . . . . . . . . . . . . . . . . 23
⊢ (({𝑛 ∈ ℕ0
∣ 𝑁 <
(2↑𝑛)} ⊆
(ℤ≥‘0) ∧ {𝑛 ∈ ℕ0 ∣ 𝑁 < (2↑𝑛)} ≠ ∅) → inf({𝑛 ∈ ℕ0
∣ 𝑁 <
(2↑𝑛)}, ℝ, <
) ∈ {𝑛 ∈
ℕ0 ∣ 𝑁 < (2↑𝑛)}) |
29 | 15, 27, 28 | sylancr 694 |
. . . . . . . . . . . . . . . . . . . . . 22
⊢ (𝜑 → inf({𝑛 ∈ ℕ0 ∣ 𝑁 < (2↑𝑛)}, ℝ, < ) ∈ {𝑛 ∈ ℕ0
∣ 𝑁 <
(2↑𝑛)}) |
30 | 14, 29 | syl5eqel 2692 |
. . . . . . . . . . . . . . . . . . . . 21
⊢ (𝜑 → 𝑆 ∈ {𝑛 ∈ ℕ0 ∣ 𝑁 < (2↑𝑛)}) |
31 | 13, 30 | sseldi 3566 |
. . . . . . . . . . . . . . . . . . . 20
⊢ (𝜑 → 𝑆 ∈
ℕ0) |
32 | 31 | nn0zd 11356 |
. . . . . . . . . . . . . . . . . . 19
⊢ (𝜑 → 𝑆 ∈ ℤ) |
33 | 32 | adantr 480 |
. . . . . . . . . . . . . . . . . 18
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → 𝑆 ∈ ℤ) |
34 | | 0red 9920 |
. . . . . . . . . . . . . . . . . . 19
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → 0 ∈ ℝ) |
35 | 6 | nn0zd 11356 |
. . . . . . . . . . . . . . . . . . . . 21
⊢ (𝜑 → 𝑀 ∈ ℤ) |
36 | 35 | adantr 480 |
. . . . . . . . . . . . . . . . . . . 20
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → 𝑀 ∈ ℤ) |
37 | 36 | zred 11358 |
. . . . . . . . . . . . . . . . . . 19
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → 𝑀 ∈ ℝ) |
38 | 33 | zred 11358 |
. . . . . . . . . . . . . . . . . . 19
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → 𝑆 ∈ ℝ) |
39 | 6 | adantr 480 |
. . . . . . . . . . . . . . . . . . . 20
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → 𝑀 ∈
ℕ0) |
40 | 39 | nn0ge0d 11231 |
. . . . . . . . . . . . . . . . . . 19
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → 0 ≤ 𝑀) |
41 | 18 | a1i 11 |
. . . . . . . . . . . . . . . . . . . . . 22
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → 2 ∈ ℝ) |
42 | 41, 39 | reexpcld 12887 |
. . . . . . . . . . . . . . . . . . . . 21
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → (2↑𝑀) ∈ ℝ) |
43 | 17 | adantr 480 |
. . . . . . . . . . . . . . . . . . . . 21
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → 𝑁 ∈ ℝ) |
44 | 5, 31 | nnexpcld 12892 |
. . . . . . . . . . . . . . . . . . . . . . 23
⊢ (𝜑 → (2↑𝑆) ∈ ℕ) |
45 | 44 | adantr 480 |
. . . . . . . . . . . . . . . . . . . . . 22
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → (2↑𝑆) ∈ ℕ) |
46 | 45 | nnred 10912 |
. . . . . . . . . . . . . . . . . . . . 21
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → (2↑𝑆) ∈ ℝ) |
47 | | simpr 476 |
. . . . . . . . . . . . . . . . . . . . 21
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → (2↑𝑀) ≤ 𝑁) |
48 | 30 | adantr 480 |
. . . . . . . . . . . . . . . . . . . . . 22
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → 𝑆 ∈ {𝑛 ∈ ℕ0 ∣ 𝑁 < (2↑𝑛)}) |
49 | | oveq2 6557 |
. . . . . . . . . . . . . . . . . . . . . . . . 25
⊢ (𝑚 = 𝑆 → (2↑𝑚) = (2↑𝑆)) |
50 | 49 | breq2d 4595 |
. . . . . . . . . . . . . . . . . . . . . . . 24
⊢ (𝑚 = 𝑆 → (𝑁 < (2↑𝑚) ↔ 𝑁 < (2↑𝑆))) |
51 | | oveq2 6557 |
. . . . . . . . . . . . . . . . . . . . . . . . . 26
⊢ (𝑛 = 𝑚 → (2↑𝑛) = (2↑𝑚)) |
52 | 51 | breq2d 4595 |
. . . . . . . . . . . . . . . . . . . . . . . . 25
⊢ (𝑛 = 𝑚 → (𝑁 < (2↑𝑛) ↔ 𝑁 < (2↑𝑚))) |
53 | 52 | cbvrabv 3172 |
. . . . . . . . . . . . . . . . . . . . . . . 24
⊢ {𝑛 ∈ ℕ0
∣ 𝑁 <
(2↑𝑛)} = {𝑚 ∈ ℕ0
∣ 𝑁 <
(2↑𝑚)} |
54 | 50, 53 | elrab2 3333 |
. . . . . . . . . . . . . . . . . . . . . . 23
⊢ (𝑆 ∈ {𝑛 ∈ ℕ0 ∣ 𝑁 < (2↑𝑛)} ↔ (𝑆 ∈ ℕ0 ∧ 𝑁 < (2↑𝑆))) |
55 | 54 | simprbi 479 |
. . . . . . . . . . . . . . . . . . . . . 22
⊢ (𝑆 ∈ {𝑛 ∈ ℕ0 ∣ 𝑁 < (2↑𝑛)} → 𝑁 < (2↑𝑆)) |
56 | 48, 55 | syl 17 |
. . . . . . . . . . . . . . . . . . . . 21
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → 𝑁 < (2↑𝑆)) |
57 | 42, 43, 46, 47, 56 | lelttrd 10074 |
. . . . . . . . . . . . . . . . . . . 20
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → (2↑𝑀) < (2↑𝑆)) |
58 | 20 | a1i 11 |
. . . . . . . . . . . . . . . . . . . . 21
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → 1 < 2) |
59 | 41, 36, 33, 58 | ltexp2d 12900 |
. . . . . . . . . . . . . . . . . . . 20
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → (𝑀 < 𝑆 ↔ (2↑𝑀) < (2↑𝑆))) |
60 | 57, 59 | mpbird 246 |
. . . . . . . . . . . . . . . . . . 19
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → 𝑀 < 𝑆) |
61 | 34, 37, 38, 40, 60 | lelttrd 10074 |
. . . . . . . . . . . . . . . . . 18
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → 0 < 𝑆) |
62 | | elnnz 11264 |
. . . . . . . . . . . . . . . . . 18
⊢ (𝑆 ∈ ℕ ↔ (𝑆 ∈ ℤ ∧ 0 <
𝑆)) |
63 | 33, 61, 62 | sylanbrc 695 |
. . . . . . . . . . . . . . . . 17
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → 𝑆 ∈ ℕ) |
64 | | nnm1nn0 11211 |
. . . . . . . . . . . . . . . . 17
⊢ (𝑆 ∈ ℕ → (𝑆 − 1) ∈
ℕ0) |
65 | 63, 64 | syl 17 |
. . . . . . . . . . . . . . . 16
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → (𝑆 − 1) ∈
ℕ0) |
66 | 12, 65 | nnexpcld 12892 |
. . . . . . . . . . . . . . 15
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → (2↑(𝑆 − 1)) ∈
ℕ) |
67 | 66 | nncnd 10913 |
. . . . . . . . . . . . . 14
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → (2↑(𝑆 − 1)) ∈
ℂ) |
68 | 67 | mulid2d 9937 |
. . . . . . . . . . . . 13
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → (1 · (2↑(𝑆 − 1))) = (2↑(𝑆 − 1))) |
69 | 38 | ltm1d 10835 |
. . . . . . . . . . . . . . . 16
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → (𝑆 − 1) < 𝑆) |
70 | 65 | nn0red 11229 |
. . . . . . . . . . . . . . . . 17
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → (𝑆 − 1) ∈ ℝ) |
71 | 70, 38 | ltnled 10063 |
. . . . . . . . . . . . . . . 16
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → ((𝑆 − 1) < 𝑆 ↔ ¬ 𝑆 ≤ (𝑆 − 1))) |
72 | 69, 71 | mpbid 221 |
. . . . . . . . . . . . . . 15
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → ¬ 𝑆 ≤ (𝑆 − 1)) |
73 | | oveq2 6557 |
. . . . . . . . . . . . . . . . . . 19
⊢ (𝑚 = (𝑆 − 1) → (2↑𝑚) = (2↑(𝑆 − 1))) |
74 | 73 | breq2d 4595 |
. . . . . . . . . . . . . . . . . 18
⊢ (𝑚 = (𝑆 − 1) → (𝑁 < (2↑𝑚) ↔ 𝑁 < (2↑(𝑆 − 1)))) |
75 | 74, 53 | elrab2 3333 |
. . . . . . . . . . . . . . . . 17
⊢ ((𝑆 − 1) ∈ {𝑛 ∈ ℕ0
∣ 𝑁 <
(2↑𝑛)} ↔ ((𝑆 − 1) ∈
ℕ0 ∧ 𝑁
< (2↑(𝑆 −
1)))) |
76 | | infssuzle 11647 |
. . . . . . . . . . . . . . . . . . . 20
⊢ (({𝑛 ∈ ℕ0
∣ 𝑁 <
(2↑𝑛)} ⊆
(ℤ≥‘0) ∧ (𝑆 − 1) ∈ {𝑛 ∈ ℕ0 ∣ 𝑁 < (2↑𝑛)}) → inf({𝑛 ∈ ℕ0 ∣ 𝑁 < (2↑𝑛)}, ℝ, < ) ≤ (𝑆 − 1)) |
77 | 15, 76 | mpan 702 |
. . . . . . . . . . . . . . . . . . 19
⊢ ((𝑆 − 1) ∈ {𝑛 ∈ ℕ0
∣ 𝑁 <
(2↑𝑛)} →
inf({𝑛 ∈
ℕ0 ∣ 𝑁 < (2↑𝑛)}, ℝ, < ) ≤ (𝑆 − 1)) |
78 | 14, 77 | syl5eqbr 4618 |
. . . . . . . . . . . . . . . . . 18
⊢ ((𝑆 − 1) ∈ {𝑛 ∈ ℕ0
∣ 𝑁 <
(2↑𝑛)} → 𝑆 ≤ (𝑆 − 1)) |
79 | 78 | a1i 11 |
. . . . . . . . . . . . . . . . 17
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → ((𝑆 − 1) ∈ {𝑛 ∈ ℕ0 ∣ 𝑁 < (2↑𝑛)} → 𝑆 ≤ (𝑆 − 1))) |
80 | 75, 79 | syl5bir 232 |
. . . . . . . . . . . . . . . 16
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → (((𝑆 − 1) ∈ ℕ0 ∧
𝑁 < (2↑(𝑆 − 1))) → 𝑆 ≤ (𝑆 − 1))) |
81 | 65, 80 | mpand 707 |
. . . . . . . . . . . . . . 15
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → (𝑁 < (2↑(𝑆 − 1)) → 𝑆 ≤ (𝑆 − 1))) |
82 | 72, 81 | mtod 188 |
. . . . . . . . . . . . . 14
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → ¬ 𝑁 < (2↑(𝑆 − 1))) |
83 | 66 | nnred 10912 |
. . . . . . . . . . . . . . 15
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → (2↑(𝑆 − 1)) ∈
ℝ) |
84 | 83, 43 | lenltd 10062 |
. . . . . . . . . . . . . 14
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → ((2↑(𝑆 − 1)) ≤ 𝑁 ↔ ¬ 𝑁 < (2↑(𝑆 − 1)))) |
85 | 82, 84 | mpbird 246 |
. . . . . . . . . . . . 13
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → (2↑(𝑆 − 1)) ≤ 𝑁) |
86 | 68, 85 | eqbrtrd 4605 |
. . . . . . . . . . . 12
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → (1 · (2↑(𝑆 − 1))) ≤ 𝑁) |
87 | | 1red 9934 |
. . . . . . . . . . . . 13
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → 1 ∈ ℝ) |
88 | | 2rp 11713 |
. . . . . . . . . . . . . . 15
⊢ 2 ∈
ℝ+ |
89 | 88 | a1i 11 |
. . . . . . . . . . . . . 14
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → 2 ∈
ℝ+) |
90 | | 1z 11284 |
. . . . . . . . . . . . . . . 16
⊢ 1 ∈
ℤ |
91 | 90 | a1i 11 |
. . . . . . . . . . . . . . 15
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → 1 ∈ ℤ) |
92 | 33, 91 | zsubcld 11363 |
. . . . . . . . . . . . . 14
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → (𝑆 − 1) ∈ ℤ) |
93 | 89, 92 | rpexpcld 12894 |
. . . . . . . . . . . . 13
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → (2↑(𝑆 − 1)) ∈
ℝ+) |
94 | 87, 43, 93 | lemuldivd 11797 |
. . . . . . . . . . . 12
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → ((1 · (2↑(𝑆 − 1))) ≤ 𝑁 ↔ 1 ≤ (𝑁 / (2↑(𝑆 − 1))))) |
95 | 86, 94 | mpbid 221 |
. . . . . . . . . . 11
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → 1 ≤ (𝑁 / (2↑(𝑆 − 1)))) |
96 | | 2cn 10968 |
. . . . . . . . . . . . . . 15
⊢ 2 ∈
ℂ |
97 | | expm1t 12750 |
. . . . . . . . . . . . . . 15
⊢ ((2
∈ ℂ ∧ 𝑆
∈ ℕ) → (2↑𝑆) = ((2↑(𝑆 − 1)) · 2)) |
98 | 96, 63, 97 | sylancr 694 |
. . . . . . . . . . . . . 14
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → (2↑𝑆) = ((2↑(𝑆 − 1)) · 2)) |
99 | 56, 98 | breqtrd 4609 |
. . . . . . . . . . . . 13
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → 𝑁 < ((2↑(𝑆 − 1)) · 2)) |
100 | 43, 41, 93 | ltdivmuld 11799 |
. . . . . . . . . . . . 13
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → ((𝑁 / (2↑(𝑆 − 1))) < 2 ↔ 𝑁 < ((2↑(𝑆 − 1)) ·
2))) |
101 | 99, 100 | mpbird 246 |
. . . . . . . . . . . 12
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → (𝑁 / (2↑(𝑆 − 1))) < 2) |
102 | | df-2 10956 |
. . . . . . . . . . . 12
⊢ 2 = (1 +
1) |
103 | 101, 102 | syl6breq 4624 |
. . . . . . . . . . 11
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → (𝑁 / (2↑(𝑆 − 1))) < (1 + 1)) |
104 | 43, 93 | rerpdivcld 11779 |
. . . . . . . . . . . 12
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → (𝑁 / (2↑(𝑆 − 1))) ∈
ℝ) |
105 | | flbi 12479 |
. . . . . . . . . . . 12
⊢ (((𝑁 / (2↑(𝑆 − 1))) ∈ ℝ ∧ 1 ∈
ℤ) → ((⌊‘(𝑁 / (2↑(𝑆 − 1)))) = 1 ↔ (1 ≤ (𝑁 / (2↑(𝑆 − 1))) ∧ (𝑁 / (2↑(𝑆 − 1))) < (1 +
1)))) |
106 | 104, 90, 105 | sylancl 693 |
. . . . . . . . . . 11
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → ((⌊‘(𝑁 / (2↑(𝑆 − 1)))) = 1 ↔ (1 ≤ (𝑁 / (2↑(𝑆 − 1))) ∧ (𝑁 / (2↑(𝑆 − 1))) < (1 +
1)))) |
107 | 95, 103, 106 | mpbir2and 959 |
. . . . . . . . . 10
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → (⌊‘(𝑁 / (2↑(𝑆 − 1)))) = 1) |
108 | 107 | breq2d 4595 |
. . . . . . . . 9
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → (2 ∥ (⌊‘(𝑁 / (2↑(𝑆 − 1)))) ↔ 2 ∥
1)) |
109 | 11, 108 | mtbiri 316 |
. . . . . . . 8
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → ¬ 2 ∥
(⌊‘(𝑁 /
(2↑(𝑆 −
1))))) |
110 | 1 | nn0zd 11356 |
. . . . . . . . . 10
⊢ (𝜑 → 𝑁 ∈ ℤ) |
111 | 110 | adantr 480 |
. . . . . . . . 9
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → 𝑁 ∈ ℤ) |
112 | | bitsval2 14985 |
. . . . . . . . 9
⊢ ((𝑁 ∈ ℤ ∧ (𝑆 − 1) ∈
ℕ0) → ((𝑆 − 1) ∈ (bits‘𝑁) ↔ ¬ 2 ∥
(⌊‘(𝑁 /
(2↑(𝑆 −
1)))))) |
113 | 111, 65, 112 | syl2anc 691 |
. . . . . . . 8
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → ((𝑆 − 1) ∈ (bits‘𝑁) ↔ ¬ 2 ∥
(⌊‘(𝑁 /
(2↑(𝑆 −
1)))))) |
114 | 109, 113 | mpbird 246 |
. . . . . . 7
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → (𝑆 − 1) ∈ (bits‘𝑁)) |
115 | 10, 114 | sseldd 3569 |
. . . . . 6
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → (𝑆 − 1) ∈ (0..^𝑀)) |
116 | | elfzolt2 12348 |
. . . . . 6
⊢ ((𝑆 − 1) ∈ (0..^𝑀) → (𝑆 − 1) < 𝑀) |
117 | 115, 116 | syl 17 |
. . . . 5
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → (𝑆 − 1) < 𝑀) |
118 | | zlem1lt 11306 |
. . . . . 6
⊢ ((𝑆 ∈ ℤ ∧ 𝑀 ∈ ℤ) → (𝑆 ≤ 𝑀 ↔ (𝑆 − 1) < 𝑀)) |
119 | 33, 36, 118 | syl2anc 691 |
. . . . 5
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → (𝑆 ≤ 𝑀 ↔ (𝑆 − 1) < 𝑀)) |
120 | 117, 119 | mpbird 246 |
. . . 4
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → 𝑆 ≤ 𝑀) |
121 | 37, 38 | ltnled 10063 |
. . . . 5
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → (𝑀 < 𝑆 ↔ ¬ 𝑆 ≤ 𝑀)) |
122 | 60, 121 | mpbid 221 |
. . . 4
⊢ ((𝜑 ∧ (2↑𝑀) ≤ 𝑁) → ¬ 𝑆 ≤ 𝑀) |
123 | 120, 122 | pm2.65da 598 |
. . 3
⊢ (𝜑 → ¬ (2↑𝑀) ≤ 𝑁) |
124 | 7 | nnred 10912 |
. . . 4
⊢ (𝜑 → (2↑𝑀) ∈ ℝ) |
125 | 17, 124 | ltnled 10063 |
. . 3
⊢ (𝜑 → (𝑁 < (2↑𝑀) ↔ ¬ (2↑𝑀) ≤ 𝑁)) |
126 | 123, 125 | mpbird 246 |
. 2
⊢ (𝜑 → 𝑁 < (2↑𝑀)) |
127 | | elfzo2 12342 |
. 2
⊢ (𝑁 ∈ (0..^(2↑𝑀)) ↔ (𝑁 ∈ (ℤ≥‘0)
∧ (2↑𝑀) ∈
ℤ ∧ 𝑁 <
(2↑𝑀))) |
128 | 3, 8, 126, 127 | syl3anbrc 1239 |
1
⊢ (𝜑 → 𝑁 ∈ (0..^(2↑𝑀))) |