Step |
Hyp |
Ref |
Expression |
1 |
|
eluzge2nn0 |
⊢ ( 𝐴 ∈ ( ℤ≥ ‘ 2 ) → 𝐴 ∈ ℕ0 ) |
2 |
|
nn0eo |
⊢ ( 𝐴 ∈ ℕ0 → ( ( 𝐴 / 2 ) ∈ ℕ0 ∨ ( ( 𝐴 + 1 ) / 2 ) ∈ ℕ0 ) ) |
3 |
1 2
|
syl |
⊢ ( 𝐴 ∈ ( ℤ≥ ‘ 2 ) → ( ( 𝐴 / 2 ) ∈ ℕ0 ∨ ( ( 𝐴 + 1 ) / 2 ) ∈ ℕ0 ) ) |
4 |
|
dignn0ehalf |
⊢ ( ( ( 𝐴 / 2 ) ∈ ℕ0 ∧ 𝐴 ∈ ℕ0 ∧ 𝐼 ∈ ℕ0 ) → ( ( 𝐼 + 1 ) ( digit ‘ 2 ) 𝐴 ) = ( 𝐼 ( digit ‘ 2 ) ( 𝐴 / 2 ) ) ) |
5 |
1 4
|
syl3an2 |
⊢ ( ( ( 𝐴 / 2 ) ∈ ℕ0 ∧ 𝐴 ∈ ( ℤ≥ ‘ 2 ) ∧ 𝐼 ∈ ℕ0 ) → ( ( 𝐼 + 1 ) ( digit ‘ 2 ) 𝐴 ) = ( 𝐼 ( digit ‘ 2 ) ( 𝐴 / 2 ) ) ) |
6 |
|
eluzelz |
⊢ ( 𝐴 ∈ ( ℤ≥ ‘ 2 ) → 𝐴 ∈ ℤ ) |
7 |
|
nn0z |
⊢ ( ( 𝐴 / 2 ) ∈ ℕ0 → ( 𝐴 / 2 ) ∈ ℤ ) |
8 |
|
zefldiv2 |
⊢ ( ( 𝐴 ∈ ℤ ∧ ( 𝐴 / 2 ) ∈ ℤ ) → ( ⌊ ‘ ( 𝐴 / 2 ) ) = ( 𝐴 / 2 ) ) |
9 |
6 7 8
|
syl2anr |
⊢ ( ( ( 𝐴 / 2 ) ∈ ℕ0 ∧ 𝐴 ∈ ( ℤ≥ ‘ 2 ) ) → ( ⌊ ‘ ( 𝐴 / 2 ) ) = ( 𝐴 / 2 ) ) |
10 |
9
|
eqcomd |
⊢ ( ( ( 𝐴 / 2 ) ∈ ℕ0 ∧ 𝐴 ∈ ( ℤ≥ ‘ 2 ) ) → ( 𝐴 / 2 ) = ( ⌊ ‘ ( 𝐴 / 2 ) ) ) |
11 |
10
|
3adant3 |
⊢ ( ( ( 𝐴 / 2 ) ∈ ℕ0 ∧ 𝐴 ∈ ( ℤ≥ ‘ 2 ) ∧ 𝐼 ∈ ℕ0 ) → ( 𝐴 / 2 ) = ( ⌊ ‘ ( 𝐴 / 2 ) ) ) |
12 |
11
|
oveq2d |
⊢ ( ( ( 𝐴 / 2 ) ∈ ℕ0 ∧ 𝐴 ∈ ( ℤ≥ ‘ 2 ) ∧ 𝐼 ∈ ℕ0 ) → ( 𝐼 ( digit ‘ 2 ) ( 𝐴 / 2 ) ) = ( 𝐼 ( digit ‘ 2 ) ( ⌊ ‘ ( 𝐴 / 2 ) ) ) ) |
13 |
5 12
|
eqtrd |
⊢ ( ( ( 𝐴 / 2 ) ∈ ℕ0 ∧ 𝐴 ∈ ( ℤ≥ ‘ 2 ) ∧ 𝐼 ∈ ℕ0 ) → ( ( 𝐼 + 1 ) ( digit ‘ 2 ) 𝐴 ) = ( 𝐼 ( digit ‘ 2 ) ( ⌊ ‘ ( 𝐴 / 2 ) ) ) ) |
14 |
13
|
3exp |
⊢ ( ( 𝐴 / 2 ) ∈ ℕ0 → ( 𝐴 ∈ ( ℤ≥ ‘ 2 ) → ( 𝐼 ∈ ℕ0 → ( ( 𝐼 + 1 ) ( digit ‘ 2 ) 𝐴 ) = ( 𝐼 ( digit ‘ 2 ) ( ⌊ ‘ ( 𝐴 / 2 ) ) ) ) ) ) |
15 |
6
|
3ad2ant2 |
⊢ ( ( ( ( 𝐴 + 1 ) / 2 ) ∈ ℕ0 ∧ 𝐴 ∈ ( ℤ≥ ‘ 2 ) ∧ 𝐼 ∈ ℕ0 ) → 𝐴 ∈ ℤ ) |
16 |
|
simp2 |
⊢ ( ( ( ( 𝐴 + 1 ) / 2 ) ∈ ℕ0 ∧ 𝐴 ∈ ( ℤ≥ ‘ 2 ) ∧ 𝐼 ∈ ℕ0 ) → 𝐴 ∈ ( ℤ≥ ‘ 2 ) ) |
17 |
|
simp1 |
⊢ ( ( ( ( 𝐴 + 1 ) / 2 ) ∈ ℕ0 ∧ 𝐴 ∈ ( ℤ≥ ‘ 2 ) ∧ 𝐼 ∈ ℕ0 ) → ( ( 𝐴 + 1 ) / 2 ) ∈ ℕ0 ) |
18 |
|
nno |
⊢ ( ( 𝐴 ∈ ( ℤ≥ ‘ 2 ) ∧ ( ( 𝐴 + 1 ) / 2 ) ∈ ℕ0 ) → ( ( 𝐴 − 1 ) / 2 ) ∈ ℕ ) |
19 |
16 17 18
|
syl2anc |
⊢ ( ( ( ( 𝐴 + 1 ) / 2 ) ∈ ℕ0 ∧ 𝐴 ∈ ( ℤ≥ ‘ 2 ) ∧ 𝐼 ∈ ℕ0 ) → ( ( 𝐴 − 1 ) / 2 ) ∈ ℕ ) |
20 |
|
simp3 |
⊢ ( ( ( ( 𝐴 + 1 ) / 2 ) ∈ ℕ0 ∧ 𝐴 ∈ ( ℤ≥ ‘ 2 ) ∧ 𝐼 ∈ ℕ0 ) → 𝐼 ∈ ℕ0 ) |
21 |
|
dignn0flhalflem2 |
⊢ ( ( 𝐴 ∈ ℤ ∧ ( ( 𝐴 − 1 ) / 2 ) ∈ ℕ ∧ 𝐼 ∈ ℕ0 ) → ( ⌊ ‘ ( 𝐴 / ( 2 ↑ ( 𝐼 + 1 ) ) ) ) = ( ⌊ ‘ ( ( ⌊ ‘ ( 𝐴 / 2 ) ) / ( 2 ↑ 𝐼 ) ) ) ) |
22 |
15 19 20 21
|
syl3anc |
⊢ ( ( ( ( 𝐴 + 1 ) / 2 ) ∈ ℕ0 ∧ 𝐴 ∈ ( ℤ≥ ‘ 2 ) ∧ 𝐼 ∈ ℕ0 ) → ( ⌊ ‘ ( 𝐴 / ( 2 ↑ ( 𝐼 + 1 ) ) ) ) = ( ⌊ ‘ ( ( ⌊ ‘ ( 𝐴 / 2 ) ) / ( 2 ↑ 𝐼 ) ) ) ) |
23 |
22
|
oveq1d |
⊢ ( ( ( ( 𝐴 + 1 ) / 2 ) ∈ ℕ0 ∧ 𝐴 ∈ ( ℤ≥ ‘ 2 ) ∧ 𝐼 ∈ ℕ0 ) → ( ( ⌊ ‘ ( 𝐴 / ( 2 ↑ ( 𝐼 + 1 ) ) ) ) mod 2 ) = ( ( ⌊ ‘ ( ( ⌊ ‘ ( 𝐴 / 2 ) ) / ( 2 ↑ 𝐼 ) ) ) mod 2 ) ) |
24 |
|
2nn |
⊢ 2 ∈ ℕ |
25 |
24
|
a1i |
⊢ ( ( ( ( 𝐴 + 1 ) / 2 ) ∈ ℕ0 ∧ 𝐴 ∈ ( ℤ≥ ‘ 2 ) ∧ 𝐼 ∈ ℕ0 ) → 2 ∈ ℕ ) |
26 |
|
peano2nn0 |
⊢ ( 𝐼 ∈ ℕ0 → ( 𝐼 + 1 ) ∈ ℕ0 ) |
27 |
26
|
3ad2ant3 |
⊢ ( ( ( ( 𝐴 + 1 ) / 2 ) ∈ ℕ0 ∧ 𝐴 ∈ ( ℤ≥ ‘ 2 ) ∧ 𝐼 ∈ ℕ0 ) → ( 𝐼 + 1 ) ∈ ℕ0 ) |
28 |
|
nn0rp0 |
⊢ ( 𝐴 ∈ ℕ0 → 𝐴 ∈ ( 0 [,) +∞ ) ) |
29 |
1 28
|
syl |
⊢ ( 𝐴 ∈ ( ℤ≥ ‘ 2 ) → 𝐴 ∈ ( 0 [,) +∞ ) ) |
30 |
29
|
3ad2ant2 |
⊢ ( ( ( ( 𝐴 + 1 ) / 2 ) ∈ ℕ0 ∧ 𝐴 ∈ ( ℤ≥ ‘ 2 ) ∧ 𝐼 ∈ ℕ0 ) → 𝐴 ∈ ( 0 [,) +∞ ) ) |
31 |
|
nn0digval |
⊢ ( ( 2 ∈ ℕ ∧ ( 𝐼 + 1 ) ∈ ℕ0 ∧ 𝐴 ∈ ( 0 [,) +∞ ) ) → ( ( 𝐼 + 1 ) ( digit ‘ 2 ) 𝐴 ) = ( ( ⌊ ‘ ( 𝐴 / ( 2 ↑ ( 𝐼 + 1 ) ) ) ) mod 2 ) ) |
32 |
25 27 30 31
|
syl3anc |
⊢ ( ( ( ( 𝐴 + 1 ) / 2 ) ∈ ℕ0 ∧ 𝐴 ∈ ( ℤ≥ ‘ 2 ) ∧ 𝐼 ∈ ℕ0 ) → ( ( 𝐼 + 1 ) ( digit ‘ 2 ) 𝐴 ) = ( ( ⌊ ‘ ( 𝐴 / ( 2 ↑ ( 𝐼 + 1 ) ) ) ) mod 2 ) ) |
33 |
|
eluzelre |
⊢ ( 𝐴 ∈ ( ℤ≥ ‘ 2 ) → 𝐴 ∈ ℝ ) |
34 |
33
|
rehalfcld |
⊢ ( 𝐴 ∈ ( ℤ≥ ‘ 2 ) → ( 𝐴 / 2 ) ∈ ℝ ) |
35 |
1
|
nn0ge0d |
⊢ ( 𝐴 ∈ ( ℤ≥ ‘ 2 ) → 0 ≤ 𝐴 ) |
36 |
|
2re |
⊢ 2 ∈ ℝ |
37 |
|
2pos |
⊢ 0 < 2 |
38 |
36 37
|
pm3.2i |
⊢ ( 2 ∈ ℝ ∧ 0 < 2 ) |
39 |
38
|
a1i |
⊢ ( 𝐴 ∈ ( ℤ≥ ‘ 2 ) → ( 2 ∈ ℝ ∧ 0 < 2 ) ) |
40 |
|
divge0 |
⊢ ( ( ( 𝐴 ∈ ℝ ∧ 0 ≤ 𝐴 ) ∧ ( 2 ∈ ℝ ∧ 0 < 2 ) ) → 0 ≤ ( 𝐴 / 2 ) ) |
41 |
33 35 39 40
|
syl21anc |
⊢ ( 𝐴 ∈ ( ℤ≥ ‘ 2 ) → 0 ≤ ( 𝐴 / 2 ) ) |
42 |
|
flge0nn0 |
⊢ ( ( ( 𝐴 / 2 ) ∈ ℝ ∧ 0 ≤ ( 𝐴 / 2 ) ) → ( ⌊ ‘ ( 𝐴 / 2 ) ) ∈ ℕ0 ) |
43 |
34 41 42
|
syl2anc |
⊢ ( 𝐴 ∈ ( ℤ≥ ‘ 2 ) → ( ⌊ ‘ ( 𝐴 / 2 ) ) ∈ ℕ0 ) |
44 |
43
|
3ad2ant2 |
⊢ ( ( ( ( 𝐴 + 1 ) / 2 ) ∈ ℕ0 ∧ 𝐴 ∈ ( ℤ≥ ‘ 2 ) ∧ 𝐼 ∈ ℕ0 ) → ( ⌊ ‘ ( 𝐴 / 2 ) ) ∈ ℕ0 ) |
45 |
|
nn0rp0 |
⊢ ( ( ⌊ ‘ ( 𝐴 / 2 ) ) ∈ ℕ0 → ( ⌊ ‘ ( 𝐴 / 2 ) ) ∈ ( 0 [,) +∞ ) ) |
46 |
44 45
|
syl |
⊢ ( ( ( ( 𝐴 + 1 ) / 2 ) ∈ ℕ0 ∧ 𝐴 ∈ ( ℤ≥ ‘ 2 ) ∧ 𝐼 ∈ ℕ0 ) → ( ⌊ ‘ ( 𝐴 / 2 ) ) ∈ ( 0 [,) +∞ ) ) |
47 |
|
nn0digval |
⊢ ( ( 2 ∈ ℕ ∧ 𝐼 ∈ ℕ0 ∧ ( ⌊ ‘ ( 𝐴 / 2 ) ) ∈ ( 0 [,) +∞ ) ) → ( 𝐼 ( digit ‘ 2 ) ( ⌊ ‘ ( 𝐴 / 2 ) ) ) = ( ( ⌊ ‘ ( ( ⌊ ‘ ( 𝐴 / 2 ) ) / ( 2 ↑ 𝐼 ) ) ) mod 2 ) ) |
48 |
25 20 46 47
|
syl3anc |
⊢ ( ( ( ( 𝐴 + 1 ) / 2 ) ∈ ℕ0 ∧ 𝐴 ∈ ( ℤ≥ ‘ 2 ) ∧ 𝐼 ∈ ℕ0 ) → ( 𝐼 ( digit ‘ 2 ) ( ⌊ ‘ ( 𝐴 / 2 ) ) ) = ( ( ⌊ ‘ ( ( ⌊ ‘ ( 𝐴 / 2 ) ) / ( 2 ↑ 𝐼 ) ) ) mod 2 ) ) |
49 |
23 32 48
|
3eqtr4d |
⊢ ( ( ( ( 𝐴 + 1 ) / 2 ) ∈ ℕ0 ∧ 𝐴 ∈ ( ℤ≥ ‘ 2 ) ∧ 𝐼 ∈ ℕ0 ) → ( ( 𝐼 + 1 ) ( digit ‘ 2 ) 𝐴 ) = ( 𝐼 ( digit ‘ 2 ) ( ⌊ ‘ ( 𝐴 / 2 ) ) ) ) |
50 |
49
|
3exp |
⊢ ( ( ( 𝐴 + 1 ) / 2 ) ∈ ℕ0 → ( 𝐴 ∈ ( ℤ≥ ‘ 2 ) → ( 𝐼 ∈ ℕ0 → ( ( 𝐼 + 1 ) ( digit ‘ 2 ) 𝐴 ) = ( 𝐼 ( digit ‘ 2 ) ( ⌊ ‘ ( 𝐴 / 2 ) ) ) ) ) ) |
51 |
14 50
|
jaoi |
⊢ ( ( ( 𝐴 / 2 ) ∈ ℕ0 ∨ ( ( 𝐴 + 1 ) / 2 ) ∈ ℕ0 ) → ( 𝐴 ∈ ( ℤ≥ ‘ 2 ) → ( 𝐼 ∈ ℕ0 → ( ( 𝐼 + 1 ) ( digit ‘ 2 ) 𝐴 ) = ( 𝐼 ( digit ‘ 2 ) ( ⌊ ‘ ( 𝐴 / 2 ) ) ) ) ) ) |
52 |
3 51
|
mpcom |
⊢ ( 𝐴 ∈ ( ℤ≥ ‘ 2 ) → ( 𝐼 ∈ ℕ0 → ( ( 𝐼 + 1 ) ( digit ‘ 2 ) 𝐴 ) = ( 𝐼 ( digit ‘ 2 ) ( ⌊ ‘ ( 𝐴 / 2 ) ) ) ) ) |
53 |
52
|
imp |
⊢ ( ( 𝐴 ∈ ( ℤ≥ ‘ 2 ) ∧ 𝐼 ∈ ℕ0 ) → ( ( 𝐼 + 1 ) ( digit ‘ 2 ) 𝐴 ) = ( 𝐼 ( digit ‘ 2 ) ( ⌊ ‘ ( 𝐴 / 2 ) ) ) ) |