| Mathbox for Alexander van der Vekens |
< Previous
Next >
Nearby theorems |
||
| Mirrors > Home > MPE Home > Th. List > Mathboxes > blengt1fldiv2p1 | Structured version Visualization version GIF version | ||
| Description: The binary length of an integer greater than 1 is the binary length of the integer divided by 2, increased by one. (Contributed by AV, 3-Jun-2020.) |
| Ref | Expression |
|---|---|
| blengt1fldiv2p1 | ⊢ (𝑁 ∈ (ℤ≥‘2) → (#b‘𝑁) = ((#b‘(⌊‘(𝑁 / 2))) + 1)) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | eluz2nn 12928 | . . 3 ⊢ (𝑁 ∈ (ℤ≥‘2) → 𝑁 ∈ ℕ) | |
| 2 | nneop 49363 | . . 3 ⊢ (𝑁 ∈ ℕ → ((𝑁 / 2) ∈ ℕ ∨ ((𝑁 + 1) / 2) ∈ ℕ)) | |
| 3 | 1, 2 | syl 18 | . 2 ⊢ (𝑁 ∈ (ℤ≥‘2) → ((𝑁 / 2) ∈ ℕ ∨ ((𝑁 + 1) / 2) ∈ ℕ)) |
| 4 | nnnn0 12526 | . . . . . . . . 9 ⊢ ((𝑁 / 2) ∈ ℕ → (𝑁 / 2) ∈ ℕ0) | |
| 5 | blennn0em1 49428 | . . . . . . . . 9 ⊢ ((𝑁 ∈ ℕ ∧ (𝑁 / 2) ∈ ℕ0) → (#b‘(𝑁 / 2)) = ((#b‘𝑁) − 1)) | |
| 6 | 4, 5 | sylan2 605 | . . . . . . . 8 ⊢ ((𝑁 ∈ ℕ ∧ (𝑁 / 2) ∈ ℕ) → (#b‘(𝑁 / 2)) = ((#b‘𝑁) − 1)) |
| 7 | 6 | ancoms 464 | . . . . . . 7 ⊢ (((𝑁 / 2) ∈ ℕ ∧ 𝑁 ∈ ℕ) → (#b‘(𝑁 / 2)) = ((#b‘𝑁) − 1)) |
| 8 | 7 | oveq1d 7434 | . . . . . 6 ⊢ (((𝑁 / 2) ∈ ℕ ∧ 𝑁 ∈ ℕ) → ((#b‘(𝑁 / 2)) + 1) = (((#b‘𝑁) − 1) + 1)) |
| 9 | nnz 12627 | . . . . . . . . . . 11 ⊢ ((𝑁 / 2) ∈ ℕ → (𝑁 / 2) ∈ ℤ) | |
| 10 | flid 13859 | . . . . . . . . . . 11 ⊢ ((𝑁 / 2) ∈ ℤ → (⌊‘(𝑁 / 2)) = (𝑁 / 2)) | |
| 11 | 9, 10 | syl 18 | . . . . . . . . . 10 ⊢ ((𝑁 / 2) ∈ ℕ → (⌊‘(𝑁 / 2)) = (𝑁 / 2)) |
| 12 | 11 | eqcomd 2771 | . . . . . . . . 9 ⊢ ((𝑁 / 2) ∈ ℕ → (𝑁 / 2) = (⌊‘(𝑁 / 2))) |
| 13 | 12 | fveq2d 6889 | . . . . . . . 8 ⊢ ((𝑁 / 2) ∈ ℕ → (#b‘(𝑁 / 2)) = (#b‘(⌊‘(𝑁 / 2)))) |
| 14 | 13 | oveq1d 7434 | . . . . . . 7 ⊢ ((𝑁 / 2) ∈ ℕ → ((#b‘(𝑁 / 2)) + 1) = ((#b‘(⌊‘(𝑁 / 2))) + 1)) |
| 15 | 14 | adantr 486 | . . . . . 6 ⊢ (((𝑁 / 2) ∈ ℕ ∧ 𝑁 ∈ ℕ) → ((#b‘(𝑁 / 2)) + 1) = ((#b‘(⌊‘(𝑁 / 2))) + 1)) |
| 16 | blennnelnn 49413 | . . . . . . . . 9 ⊢ (𝑁 ∈ ℕ → (#b‘𝑁) ∈ ℕ) | |
| 17 | 16 | nncnd 12264 | . . . . . . . 8 ⊢ (𝑁 ∈ ℕ → (#b‘𝑁) ∈ ℂ) |
| 18 | npcan1 11654 | . . . . . . . 8 ⊢ ((#b‘𝑁) ∈ ℂ → (((#b‘𝑁) − 1) + 1) = (#b‘𝑁)) | |
| 19 | 17, 18 | syl 18 | . . . . . . 7 ⊢ (𝑁 ∈ ℕ → (((#b‘𝑁) − 1) + 1) = (#b‘𝑁)) |
| 20 | 19 | adantl 487 | . . . . . 6 ⊢ (((𝑁 / 2) ∈ ℕ ∧ 𝑁 ∈ ℕ) → (((#b‘𝑁) − 1) + 1) = (#b‘𝑁)) |
| 21 | 8, 15, 20 | 3eqtr3rd 2809 | . . . . 5 ⊢ (((𝑁 / 2) ∈ ℕ ∧ 𝑁 ∈ ℕ) → (#b‘𝑁) = ((#b‘(⌊‘(𝑁 / 2))) + 1)) |
| 22 | 21 | expcom 419 | . . . 4 ⊢ (𝑁 ∈ ℕ → ((𝑁 / 2) ∈ ℕ → (#b‘𝑁) = ((#b‘(⌊‘(𝑁 / 2))) + 1))) |
| 23 | 22, 1 | syl11 34 | . . 3 ⊢ ((𝑁 / 2) ∈ ℕ → (𝑁 ∈ (ℤ≥‘2) → (#b‘𝑁) = ((#b‘(⌊‘(𝑁 / 2))) + 1))) |
| 24 | nnnn0 12526 | . . . . . . 7 ⊢ (((𝑁 + 1) / 2) ∈ ℕ → ((𝑁 + 1) / 2) ∈ ℕ0) | |
| 25 | blennngt2o2 49429 | . . . . . . 7 ⊢ ((𝑁 ∈ (ℤ≥‘2) ∧ ((𝑁 + 1) / 2) ∈ ℕ0) → (#b‘𝑁) = ((#b‘((𝑁 − 1) / 2)) + 1)) | |
| 26 | 24, 25 | sylan2 605 | . . . . . 6 ⊢ ((𝑁 ∈ (ℤ≥‘2) ∧ ((𝑁 + 1) / 2) ∈ ℕ) → (#b‘𝑁) = ((#b‘((𝑁 − 1) / 2)) + 1)) |
| 27 | 26 | ancoms 464 | . . . . 5 ⊢ ((((𝑁 + 1) / 2) ∈ ℕ ∧ 𝑁 ∈ (ℤ≥‘2)) → (#b‘𝑁) = ((#b‘((𝑁 − 1) / 2)) + 1)) |
| 28 | eluzge2nn0 12932 | . . . . . . . . 9 ⊢ (𝑁 ∈ (ℤ≥‘2) → 𝑁 ∈ ℕ0) | |
| 29 | nn0ofldiv2 49369 | . . . . . . . . 9 ⊢ ((𝑁 ∈ ℕ0 ∧ ((𝑁 + 1) / 2) ∈ ℕ0) → (⌊‘(𝑁 / 2)) = ((𝑁 − 1) / 2)) | |
| 30 | 28, 24, 29 | syl2anr 609 | . . . . . . . 8 ⊢ ((((𝑁 + 1) / 2) ∈ ℕ ∧ 𝑁 ∈ (ℤ≥‘2)) → (⌊‘(𝑁 / 2)) = ((𝑁 − 1) / 2)) |
| 31 | 30 | eqcomd 2771 | . . . . . . 7 ⊢ ((((𝑁 + 1) / 2) ∈ ℕ ∧ 𝑁 ∈ (ℤ≥‘2)) → ((𝑁 − 1) / 2) = (⌊‘(𝑁 / 2))) |
| 32 | 31 | fveq2d 6889 | . . . . . 6 ⊢ ((((𝑁 + 1) / 2) ∈ ℕ ∧ 𝑁 ∈ (ℤ≥‘2)) → (#b‘((𝑁 − 1) / 2)) = (#b‘(⌊‘(𝑁 / 2)))) |
| 33 | 32 | oveq1d 7434 | . . . . 5 ⊢ ((((𝑁 + 1) / 2) ∈ ℕ ∧ 𝑁 ∈ (ℤ≥‘2)) → ((#b‘((𝑁 − 1) / 2)) + 1) = ((#b‘(⌊‘(𝑁 / 2))) + 1)) |
| 34 | 27, 33 | eqtrd 2800 | . . . 4 ⊢ ((((𝑁 + 1) / 2) ∈ ℕ ∧ 𝑁 ∈ (ℤ≥‘2)) → (#b‘𝑁) = ((#b‘(⌊‘(𝑁 / 2))) + 1)) |
| 35 | 34 | ex 418 | . . 3 ⊢ (((𝑁 + 1) / 2) ∈ ℕ → (𝑁 ∈ (ℤ≥‘2) → (#b‘𝑁) = ((#b‘(⌊‘(𝑁 / 2))) + 1))) |
| 36 | 23, 35 | jaoi 871 | . 2 ⊢ (((𝑁 / 2) ∈ ℕ ∨ ((𝑁 + 1) / 2) ∈ ℕ) → (𝑁 ∈ (ℤ≥‘2) → (#b‘𝑁) = ((#b‘(⌊‘(𝑁 / 2))) + 1))) |
| 37 | 3, 36 | mpcom 39 | 1 ⊢ (𝑁 ∈ (ℤ≥‘2) → (#b‘𝑁) = ((#b‘(⌊‘(𝑁 / 2))) + 1)) |
| Colors of variables: wff setvar class |
| This proof depends on syntax axioms: → wi 4 ∧ wa 401 ∨ wo 861 = wceq 1570 ∈ wcel 2146 ‘cfv 6540 (class class class)co 7419 ℂcc 11113 1c1 11116 + caddc 11118 − cmin 11456 / cdiv 11886 ℕcn 12248 2c2 12310 ℕ0cn0 12519 ℤcz 12606 ℤ≥cuz 12878 ⌊cfl 13841 #bcblen 49406 |
| This proof depends on axioms: ax-mp 5 ax-1 6 ax-2 7 ax-3 8 ax-gen 1828 ax-4 1842 ax-5 1943 ax-6 2000 ax-7 2041 ax-8 2148 ax-9 2156 ax-10 2179 ax-11 2195 ax-12 2216 ax-ext 2737 ax-rep 5240 ax-sep 5259 ax-nul 5271 ax-pow 5338 ax-pr 5406 ax-un 7742 ax-inf2 9617 ax-cnex 11171 ax-resscn 11172 ax-1cn 11173 ax-icn 11174 ax-addcl 11175 ax-addrcl 11176 ax-mulcl 11177 ax-mulrcl 11178 ax-mulcom 11179 ax-addass 11180 ax-mulass 11181 ax-distr 11182 ax-i2m1 11183 ax-1ne0 11184 ax-1rid 11185 ax-rnegex 11186 ax-rrecex 11187 ax-cnre 11188 ax-pre-lttri 11189 ax-pre-lttrn 11190 ax-pre-ltadd 11191 ax-pre-mulgt0 11192 ax-pre-sup 11193 ax-addf 11194 |
| This proof depends on definitions: df-bi 210 df-an 402 df-or 862 df-3or 1104 df-3an 1105 df-tru 1573 df-fal 1583 df-ex 1813 df-nf 1817 df-sb 2100 df-mo 2569 df-eu 2599 df-clab 2744 df-cleq 2757 df-clel 2840 df-nfc 2914 df-ne 2961 df-nel 3067 df-ral 3082 df-rex 3092 df-rmo 3371 df-reu 3372 df-rab 3419 df-v 3459 df-sbc 3747 df-csb 3855 df-dif 3909 df-un 3911 df-in 3913 df-ss 3923 df-pss 3926 df-nul 4287 df-if 4490 df-pw 4566 df-sn 4592 df-pr 4594 df-tp 4596 df-op 4598 df-uni 4875 df-int 4915 df-iun 4960 df-iin 4961 df-br 5112 df-opab 5176 df-mpt 5195 df-tr 5221 df-id 5558 df-eprel 5563 df-po 5571 df-so 5572 df-fr 5616 df-se 5617 df-we 5618 df-xp 5669 df-rel 5670 df-cnv 5671 df-co 5672 df-dm 5673 df-rn 5674 df-res 5675 df-ima 5676 df-pred 6306 df-ord 6367 df-on 6368 df-lim 6369 df-suc 6370 df-iota 6496 df-fun 6542 df-fn 6543 df-f 6544 df-f1 6545 df-fo 6546 df-f1o 6547 df-fv 6548 df-isom 6549 df-riota 7376 df-ov 7422 df-oprab 7423 df-mpo 7424 df-of 7684 df-om 7869 df-1st 7992 df-2nd 7993 df-supp 8163 df-frecs 8284 df-wrecs 8315 df-recs 8364 df-rdg 8403 df-1o 8459 df-2o 8460 df-er 8700 df-map 8832 df-pm 8833 df-ixp 8902 df-en 8950 df-dom 8951 df-sdom 8952 df-fin 8953 df-fsupp 9329 df-fi 9378 df-sup 9409 df-inf 9410 df-oi 9479 df-card 9941 df-pnf 11260 df-mnf 11261 df-xr 11262 df-ltxr 11263 df-le 11264 df-sub 11458 df-neg 11459 df-div 11887 df-nn 12249 df-2 12318 df-3 12319 df-4 12320 df-5 12321 df-6 12322 df-7 12323 df-8 12324 df-9 12325 df-n0 12520 df-z 12607 df-dec 12728 df-uz 12879 df-q 12989 df-rp 13033 df-xneg 13153 df-xadd 13154 df-xmul 13155 df-ioo 13392 df-ioc 13393 df-ico 13394 df-icc 13395 df-fz 13552 df-fzo 13700 df-fl 13843 df-mod 13921 df-seq 14056 df-exp 14116 df-fac 14328 df-bc 14357 df-hash 14385 df-shft 15128 df-cj 15174 df-re 15175 df-im 15176 df-sqrt 15310 df-abs 15311 df-limsup 15546 df-clim 15563 df-rlim 15564 df-sum 15762 df-ef 16143 df-sin 16145 df-cos 16146 df-pi 16148 df-struct 17229 df-sets 17246 df-slot 17264 df-ndx 17276 df-base 17292 df-ress 17313 df-plusg 17345 df-mulr 17346 df-starv 17347 df-sca 17348 df-vsca 17349 df-ip 17350 df-tset 17351 df-ple 17352 df-ds 17354 df-unif 17355 df-hom 17356 df-cco 17357 df-rest 17497 df-topn 17498 df-0g 17516 df-gsum 17517 df-topgen 17518 df-pt 17519 df-prds 17522 df-xrs 17578 df-qtop 17583 df-imas 17584 df-xps 17586 df-mre 17660 df-mrc 17661 df-acs 17663 df-mgm 18720 df-sgrp 18809 df-mnd 18825 df-submnd 18879 df-mulg 19178 df-cntz 19431 df-cmn 19896 df-psmet 21564 df-xmet 21565 df-met 21566 df-bl 21567 df-mopn 21568 df-fbas 21569 df-fg 21570 df-cnfld 21573 df-top 23101 df-topon 23118 df-topsp 23140 df-bases 23153 df-cld 23226 df-ntr 23227 df-cls 23228 df-nei 23305 df-lp 23343 df-perf 23344 df-cn 23434 df-cnp 23435 df-haus 23522 df-tx 23770 df-hmeo 23963 df-fil 24054 df-fm 24146 df-flim 24147 df-flf 24148 df-xms 24528 df-ms 24529 df-tms 24530 df-cncf 25088 df-limc 26076 df-dv 26077 df-log 26772 df-cxp 26773 df-logb 26981 df-blen 49407 |
| This theorem is used by: (None) |
| Copyright terms: Public domain | W3C validator |