| Metamath Proof Explorer |
< Previous
Next >
Nearby theorems |
||
| Mirrors > Home > MPE Home > Th. List > bitsp1o | Structured version Visualization version GIF version | ||
| Description: The 𝑀 + 1-th bit of 2𝑁 + 1 is the 𝑀-th bit of 𝑁. (Contributed by Mario Carneiro, 5-Sep-2016.) |
| Ref | Expression |
|---|---|
| bitsp1o | ⊢ ((𝑁 ∈ ℤ ∧ 𝑀 ∈ ℕ0) → ((𝑀 + 1) ∈ (bits‘((2 · 𝑁) + 1)) ↔ 𝑀 ∈ (bits‘𝑁))) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | 2z 12617 | . . . . . 6 ⊢ 2 ∈ ℤ | |
| 2 | 1 | a1i 11 | . . . . 5 ⊢ (𝑁 ∈ ℤ → 2 ∈ ℤ) |
| 3 | id 23 | . . . . 5 ⊢ (𝑁 ∈ ℤ → 𝑁 ∈ ℤ) | |
| 4 | 2, 3 | zmulcld 12697 | . . . 4 ⊢ (𝑁 ∈ ℤ → (2 · 𝑁) ∈ ℤ) |
| 5 | 4 | peano2zd 12694 | . . 3 ⊢ (𝑁 ∈ ℤ → ((2 · 𝑁) + 1) ∈ ℤ) |
| 6 | bitsp1 16479 | . . 3 ⊢ ((((2 · 𝑁) + 1) ∈ ℤ ∧ 𝑀 ∈ ℕ0) → ((𝑀 + 1) ∈ (bits‘((2 · 𝑁) + 1)) ↔ 𝑀 ∈ (bits‘(⌊‘(((2 · 𝑁) + 1) / 2))))) | |
| 7 | 5, 6 | sylan 591 | . 2 ⊢ ((𝑁 ∈ ℤ ∧ 𝑀 ∈ ℕ0) → ((𝑀 + 1) ∈ (bits‘((2 · 𝑁) + 1)) ↔ 𝑀 ∈ (bits‘(⌊‘(((2 · 𝑁) + 1) / 2))))) |
| 8 | 2re 12306 | . . . . . . . . . . . 12 ⊢ 2 ∈ ℝ | |
| 9 | 8 | a1i 11 | . . . . . . . . . . 11 ⊢ (𝑁 ∈ ℤ → 2 ∈ ℝ) |
| 10 | zre 12586 | . . . . . . . . . . 11 ⊢ (𝑁 ∈ ℤ → 𝑁 ∈ ℝ) | |
| 11 | 9, 10 | remulcld 11227 | . . . . . . . . . 10 ⊢ (𝑁 ∈ ℤ → (2 · 𝑁) ∈ ℝ) |
| 12 | 11 | recnd 11225 | . . . . . . . . 9 ⊢ (𝑁 ∈ ℤ → (2 · 𝑁) ∈ ℂ) |
| 13 | 1cnd 11190 | . . . . . . . . 9 ⊢ (𝑁 ∈ ℤ → 1 ∈ ℂ) | |
| 14 | 2cnd 12310 | . . . . . . . . 9 ⊢ (𝑁 ∈ ℤ → 2 ∈ ℂ) | |
| 15 | 2ne0 12338 | . . . . . . . . . 10 ⊢ 2 ≠ 0 | |
| 16 | 15 | a1i 11 | . . . . . . . . 9 ⊢ (𝑁 ∈ ℤ → 2 ≠ 0) |
| 17 | 12, 13, 14, 16 | divdird 12020 | . . . . . . . 8 ⊢ (𝑁 ∈ ℤ → (((2 · 𝑁) + 1) / 2) = (((2 · 𝑁) / 2) + (1 / 2))) |
| 18 | zcn 12587 | . . . . . . . . . 10 ⊢ (𝑁 ∈ ℤ → 𝑁 ∈ ℂ) | |
| 19 | 18, 14, 16 | divcan3d 11987 | . . . . . . . . 9 ⊢ (𝑁 ∈ ℤ → ((2 · 𝑁) / 2) = 𝑁) |
| 20 | 19 | oveq1d 7415 | . . . . . . . 8 ⊢ (𝑁 ∈ ℤ → (((2 · 𝑁) / 2) + (1 / 2)) = (𝑁 + (1 / 2))) |
| 21 | 17, 20 | eqtrd 2800 | . . . . . . 7 ⊢ (𝑁 ∈ ℤ → (((2 · 𝑁) + 1) / 2) = (𝑁 + (1 / 2))) |
| 22 | 21 | fveq2d 6875 | . . . . . 6 ⊢ (𝑁 ∈ ℤ → (⌊‘(((2 · 𝑁) + 1) / 2)) = (⌊‘(𝑁 + (1 / 2)))) |
| 23 | halfge0 12451 | . . . . . . . 8 ⊢ 0 ≤ (1 / 2) | |
| 24 | halflt1 12452 | . . . . . . . 8 ⊢ (1 / 2) < 1 | |
| 25 | 23, 24 | pm3.2i 475 | . . . . . . 7 ⊢ (0 ≤ (1 / 2) ∧ (1 / 2) < 1) |
| 26 | halfre 12448 | . . . . . . . 8 ⊢ (1 / 2) ∈ ℝ | |
| 27 | flbi2 13841 | . . . . . . . 8 ⊢ ((𝑁 ∈ ℤ ∧ (1 / 2) ∈ ℝ) → ((⌊‘(𝑁 + (1 / 2))) = 𝑁 ↔ (0 ≤ (1 / 2) ∧ (1 / 2) < 1))) | |
| 28 | 26, 27 | mpan2 703 | . . . . . . 7 ⊢ (𝑁 ∈ ℤ → ((⌊‘(𝑁 + (1 / 2))) = 𝑁 ↔ (0 ≤ (1 / 2) ∧ (1 / 2) < 1))) |
| 29 | 25, 28 | mpbiri 261 | . . . . . 6 ⊢ (𝑁 ∈ ℤ → (⌊‘(𝑁 + (1 / 2))) = 𝑁) |
| 30 | 22, 29 | eqtrd 2800 | . . . . 5 ⊢ (𝑁 ∈ ℤ → (⌊‘(((2 · 𝑁) + 1) / 2)) = 𝑁) |
| 31 | 30 | adantr 485 | . . . 4 ⊢ ((𝑁 ∈ ℤ ∧ 𝑀 ∈ ℕ0) → (⌊‘(((2 · 𝑁) + 1) / 2)) = 𝑁) |
| 32 | 31 | fveq2d 6875 | . . 3 ⊢ ((𝑁 ∈ ℤ ∧ 𝑀 ∈ ℕ0) → (bits‘(⌊‘(((2 · 𝑁) + 1) / 2))) = (bits‘𝑁)) |
| 33 | 32 | eleq2d 2851 | . 2 ⊢ ((𝑁 ∈ ℤ ∧ 𝑀 ∈ ℕ0) → (𝑀 ∈ (bits‘(⌊‘(((2 · 𝑁) + 1) / 2))) ↔ 𝑀 ∈ (bits‘𝑁))) |
| 34 | 7, 33 | bitrd 282 | 1 ⊢ ((𝑁 ∈ ℤ ∧ 𝑀 ∈ ℕ0) → ((𝑀 + 1) ∈ (bits‘((2 · 𝑁) + 1)) ↔ 𝑀 ∈ (bits‘𝑁))) |
| Colors of variables: wff setvar class |
| Syntax hints: → wi 4 ↔ wb 209 ∧ wa 400 = wceq 1563 ∈ wcel 2145 ≠ wne 2960 class class class wbr 5105 ‘cfv 6525 (class class class)co 7400 ℝcr 11087 0cc0 11088 1c1 11089 + caddc 11091 · cmul 11093 < clt 11231 ≤ cle 11232 / cdiv 11859 2c2 12286 ℕ0cn0 12495 ℤcz 12582 ⌊cfl 13814 bitscbits 16467 |
| This theorem was proved from axioms: ax-mp 5 ax-1 6 ax-2 7 ax-3 8 ax-gen 1818 ax-4 1832 ax-5 1933 ax-6 1990 ax-7 2031 ax-8 2147 ax-9 2155 ax-10 2178 ax-11 2194 ax-12 2215 ax-ext 2737 ax-sep 5251 ax-nul 5261 ax-pow 5327 ax-pr 5395 ax-un 7722 ax-cnex 11144 ax-resscn 11145 ax-1cn 11146 ax-icn 11147 ax-addcl 11148 ax-addrcl 11149 ax-mulcl 11150 ax-mulrcl 11151 ax-mulcom 11152 ax-addass 11153 ax-mulass 11154 ax-distr 11155 ax-i2m1 11156 ax-1ne0 11157 ax-1rid 11158 ax-rnegex 11159 ax-rrecex 11160 ax-cnre 11161 ax-pre-lttri 11162 ax-pre-lttrn 11163 ax-pre-ltadd 11164 ax-pre-mulgt0 11165 ax-pre-sup 11166 |
| This theorem depends on definitions: df-bi 210 df-an 401 df-or 861 df-3or 1102 df-3an 1103 df-tru 1566 df-fal 1576 df-ex 1803 df-nf 1807 df-sb 2094 df-mo 2569 df-eu 2599 df-clab 2744 df-cleq 2757 df-clel 2840 df-nfc 2914 df-ne 2961 df-nel 3065 df-ral 3080 df-rex 3090 df-rmo 3370 df-reu 3371 df-rab 3418 df-v 3459 df-sbc 3748 df-csb 3856 df-dif 3910 df-un 3912 df-in 3914 df-ss 3924 df-pss 3927 df-nul 4289 df-if 4484 df-pw 4560 df-sn 4586 df-pr 4588 df-op 4592 df-uni 4869 df-iun 4954 df-br 5106 df-opab 5168 df-mpt 5187 df-tr 5213 df-id 5547 df-eprel 5552 df-po 5560 df-so 5561 df-fr 5605 df-we 5607 df-xp 5658 df-rel 5659 df-cnv 5660 df-co 5661 df-dm 5662 df-rn 5663 df-res 5664 df-ima 5665 df-pred 6292 df-ord 6353 df-on 6354 df-lim 6355 df-suc 6356 df-iota 6481 df-fun 6527 df-fn 6528 df-f 6529 df-f1 6530 df-fo 6531 df-f1o 6532 df-fv 6533 df-riota 7357 df-ov 7403 df-oprab 7404 df-mpo 7405 df-om 7851 df-2nd 7975 df-frecs 8266 df-wrecs 8297 df-recs 8346 df-rdg 8385 df-er 8682 df-en 8932 df-dom 8933 df-sdom 8934 df-sup 9390 df-inf 9391 df-pnf 11233 df-mnf 11234 df-xr 11235 df-ltxr 11236 df-le 11237 df-sub 11431 df-neg 11432 df-div 11860 df-nn 12225 df-2 12294 df-n0 12496 df-z 12583 df-uz 12854 df-fl 13816 df-seq 14029 df-exp 14089 df-bits 16470 |
| This theorem is referenced by: (None) |
| Copyright terms: Public domain | W3C validator |