![]() |
Mathbox for Alexander van der Vekens |
< Previous
Next >
Nearby theorems |
|
Mirrors > Home > MPE Home > Th. List > Mathboxes > nnpw2pmod | Structured version Visualization version GIF version |
Description: Every positive integer can be represented as the sum of a power of 2 and a "remainder" smaller than the power. (Contributed by AV, 31-May-2020.) |
Ref | Expression |
---|---|
nnpw2pmod | ⊢ (𝑁 ∈ ℕ → 𝑁 = ((2↑((#b‘𝑁) − 1)) + (𝑁 mod (2↑((#b‘𝑁) − 1))))) |
Step | Hyp | Ref | Expression |
---|---|---|---|
1 | nnre 11027 | . . . . 5 ⊢ (𝑁 ∈ ℕ → 𝑁 ∈ ℝ) | |
2 | 2nn 11185 | . . . . . . . 8 ⊢ 2 ∈ ℕ | |
3 | 2 | a1i 11 | . . . . . . 7 ⊢ (𝑁 ∈ ℕ → 2 ∈ ℕ) |
4 | blennnelnn 42370 | . . . . . . . 8 ⊢ (𝑁 ∈ ℕ → (#b‘𝑁) ∈ ℕ) | |
5 | nnm1nn0 11334 | . . . . . . . 8 ⊢ ((#b‘𝑁) ∈ ℕ → ((#b‘𝑁) − 1) ∈ ℕ0) | |
6 | 4, 5 | syl 17 | . . . . . . 7 ⊢ (𝑁 ∈ ℕ → ((#b‘𝑁) − 1) ∈ ℕ0) |
7 | 3, 6 | nnexpcld 13030 | . . . . . 6 ⊢ (𝑁 ∈ ℕ → (2↑((#b‘𝑁) − 1)) ∈ ℕ) |
8 | 7 | nnrpd 11870 | . . . . 5 ⊢ (𝑁 ∈ ℕ → (2↑((#b‘𝑁) − 1)) ∈ ℝ+) |
9 | modeqmodmin 12740 | . . . . 5 ⊢ ((𝑁 ∈ ℝ ∧ (2↑((#b‘𝑁) − 1)) ∈ ℝ+) → (𝑁 mod (2↑((#b‘𝑁) − 1))) = ((𝑁 − (2↑((#b‘𝑁) − 1))) mod (2↑((#b‘𝑁) − 1)))) | |
10 | 1, 8, 9 | syl2anc 693 | . . . 4 ⊢ (𝑁 ∈ ℕ → (𝑁 mod (2↑((#b‘𝑁) − 1))) = ((𝑁 − (2↑((#b‘𝑁) − 1))) mod (2↑((#b‘𝑁) − 1)))) |
11 | 7 | nnred 11035 | . . . . . 6 ⊢ (𝑁 ∈ ℕ → (2↑((#b‘𝑁) − 1)) ∈ ℝ) |
12 | 1, 11 | resubcld 10458 | . . . . 5 ⊢ (𝑁 ∈ ℕ → (𝑁 − (2↑((#b‘𝑁) − 1))) ∈ ℝ) |
13 | nnpw2blen 42374 | . . . . . 6 ⊢ (𝑁 ∈ ℕ → ((2↑((#b‘𝑁) − 1)) ≤ 𝑁 ∧ 𝑁 < (2↑(#b‘𝑁)))) | |
14 | 1, 11 | subge0d 10617 | . . . . . . 7 ⊢ (𝑁 ∈ ℕ → (0 ≤ (𝑁 − (2↑((#b‘𝑁) − 1))) ↔ (2↑((#b‘𝑁) − 1)) ≤ 𝑁)) |
15 | 1, 11, 11 | ltsubadd2d 10625 | . . . . . . . 8 ⊢ (𝑁 ∈ ℕ → ((𝑁 − (2↑((#b‘𝑁) − 1))) < (2↑((#b‘𝑁) − 1)) ↔ 𝑁 < ((2↑((#b‘𝑁) − 1)) + (2↑((#b‘𝑁) − 1))))) |
16 | 2cn 11091 | . . . . . . . . . . . 12 ⊢ 2 ∈ ℂ | |
17 | exp1 12866 | . . . . . . . . . . . . 13 ⊢ (2 ∈ ℂ → (2↑1) = 2) | |
18 | 17 | eqcomd 2628 | . . . . . . . . . . . 12 ⊢ (2 ∈ ℂ → 2 = (2↑1)) |
19 | 16, 18 | mp1i 13 | . . . . . . . . . . 11 ⊢ (𝑁 ∈ ℕ → 2 = (2↑1)) |
20 | 19 | oveq1d 6665 | . . . . . . . . . 10 ⊢ (𝑁 ∈ ℕ → (2 · (2↑((#b‘𝑁) − 1))) = ((2↑1) · (2↑((#b‘𝑁) − 1)))) |
21 | 7 | nncnd 11036 | . . . . . . . . . . 11 ⊢ (𝑁 ∈ ℕ → (2↑((#b‘𝑁) − 1)) ∈ ℂ) |
22 | 21 | 2timesd 11275 | . . . . . . . . . 10 ⊢ (𝑁 ∈ ℕ → (2 · (2↑((#b‘𝑁) − 1))) = ((2↑((#b‘𝑁) − 1)) + (2↑((#b‘𝑁) − 1)))) |
23 | 16 | a1i 11 | . . . . . . . . . . . 12 ⊢ (𝑁 ∈ ℕ → 2 ∈ ℂ) |
24 | 1nn0 11308 | . . . . . . . . . . . . 13 ⊢ 1 ∈ ℕ0 | |
25 | 24 | a1i 11 | . . . . . . . . . . . 12 ⊢ (𝑁 ∈ ℕ → 1 ∈ ℕ0) |
26 | 23, 6, 25 | expaddd 13010 | . . . . . . . . . . 11 ⊢ (𝑁 ∈ ℕ → (2↑(1 + ((#b‘𝑁) − 1))) = ((2↑1) · (2↑((#b‘𝑁) − 1)))) |
27 | 1cnd 10056 | . . . . . . . . . . . . 13 ⊢ (𝑁 ∈ ℕ → 1 ∈ ℂ) | |
28 | 4 | nncnd 11036 | . . . . . . . . . . . . 13 ⊢ (𝑁 ∈ ℕ → (#b‘𝑁) ∈ ℂ) |
29 | 27, 28 | pncan3d 10395 | . . . . . . . . . . . 12 ⊢ (𝑁 ∈ ℕ → (1 + ((#b‘𝑁) − 1)) = (#b‘𝑁)) |
30 | 29 | oveq2d 6666 | . . . . . . . . . . 11 ⊢ (𝑁 ∈ ℕ → (2↑(1 + ((#b‘𝑁) − 1))) = (2↑(#b‘𝑁))) |
31 | 26, 30 | eqtr3d 2658 | . . . . . . . . . 10 ⊢ (𝑁 ∈ ℕ → ((2↑1) · (2↑((#b‘𝑁) − 1))) = (2↑(#b‘𝑁))) |
32 | 20, 22, 31 | 3eqtr3d 2664 | . . . . . . . . 9 ⊢ (𝑁 ∈ ℕ → ((2↑((#b‘𝑁) − 1)) + (2↑((#b‘𝑁) − 1))) = (2↑(#b‘𝑁))) |
33 | 32 | breq2d 4665 | . . . . . . . 8 ⊢ (𝑁 ∈ ℕ → (𝑁 < ((2↑((#b‘𝑁) − 1)) + (2↑((#b‘𝑁) − 1))) ↔ 𝑁 < (2↑(#b‘𝑁)))) |
34 | 15, 33 | bitrd 268 | . . . . . . 7 ⊢ (𝑁 ∈ ℕ → ((𝑁 − (2↑((#b‘𝑁) − 1))) < (2↑((#b‘𝑁) − 1)) ↔ 𝑁 < (2↑(#b‘𝑁)))) |
35 | 14, 34 | anbi12d 747 | . . . . . 6 ⊢ (𝑁 ∈ ℕ → ((0 ≤ (𝑁 − (2↑((#b‘𝑁) − 1))) ∧ (𝑁 − (2↑((#b‘𝑁) − 1))) < (2↑((#b‘𝑁) − 1))) ↔ ((2↑((#b‘𝑁) − 1)) ≤ 𝑁 ∧ 𝑁 < (2↑(#b‘𝑁))))) |
36 | 13, 35 | mpbird 247 | . . . . 5 ⊢ (𝑁 ∈ ℕ → (0 ≤ (𝑁 − (2↑((#b‘𝑁) − 1))) ∧ (𝑁 − (2↑((#b‘𝑁) − 1))) < (2↑((#b‘𝑁) − 1)))) |
37 | modid 12695 | . . . . 5 ⊢ ((((𝑁 − (2↑((#b‘𝑁) − 1))) ∈ ℝ ∧ (2↑((#b‘𝑁) − 1)) ∈ ℝ+) ∧ (0 ≤ (𝑁 − (2↑((#b‘𝑁) − 1))) ∧ (𝑁 − (2↑((#b‘𝑁) − 1))) < (2↑((#b‘𝑁) − 1)))) → ((𝑁 − (2↑((#b‘𝑁) − 1))) mod (2↑((#b‘𝑁) − 1))) = (𝑁 − (2↑((#b‘𝑁) − 1)))) | |
38 | 12, 8, 36, 37 | syl21anc 1325 | . . . 4 ⊢ (𝑁 ∈ ℕ → ((𝑁 − (2↑((#b‘𝑁) − 1))) mod (2↑((#b‘𝑁) − 1))) = (𝑁 − (2↑((#b‘𝑁) − 1)))) |
39 | 10, 38 | eqtr2d 2657 | . . 3 ⊢ (𝑁 ∈ ℕ → (𝑁 − (2↑((#b‘𝑁) − 1))) = (𝑁 mod (2↑((#b‘𝑁) − 1)))) |
40 | nncn 11028 | . . . 4 ⊢ (𝑁 ∈ ℕ → 𝑁 ∈ ℂ) | |
41 | nnz 11399 | . . . . . 6 ⊢ (𝑁 ∈ ℕ → 𝑁 ∈ ℤ) | |
42 | 41, 7 | zmodcld 12691 | . . . . 5 ⊢ (𝑁 ∈ ℕ → (𝑁 mod (2↑((#b‘𝑁) − 1))) ∈ ℕ0) |
43 | 42 | nn0cnd 11353 | . . . 4 ⊢ (𝑁 ∈ ℕ → (𝑁 mod (2↑((#b‘𝑁) − 1))) ∈ ℂ) |
44 | 40, 21, 43 | subaddd 10410 | . . 3 ⊢ (𝑁 ∈ ℕ → ((𝑁 − (2↑((#b‘𝑁) − 1))) = (𝑁 mod (2↑((#b‘𝑁) − 1))) ↔ ((2↑((#b‘𝑁) − 1)) + (𝑁 mod (2↑((#b‘𝑁) − 1)))) = 𝑁)) |
45 | 39, 44 | mpbid 222 | . 2 ⊢ (𝑁 ∈ ℕ → ((2↑((#b‘𝑁) − 1)) + (𝑁 mod (2↑((#b‘𝑁) − 1)))) = 𝑁) |
46 | 45 | eqcomd 2628 | 1 ⊢ (𝑁 ∈ ℕ → 𝑁 = ((2↑((#b‘𝑁) − 1)) + (𝑁 mod (2↑((#b‘𝑁) − 1))))) |
Colors of variables: wff setvar class |
Syntax hints: → wi 4 ∧ wa 384 = wceq 1483 ∈ wcel 1990 class class class wbr 4653 ‘cfv 5888 (class class class)co 6650 ℂcc 9934 ℝcr 9935 0cc0 9936 1c1 9937 + caddc 9939 · cmul 9941 < clt 10074 ≤ cle 10075 − cmin 10266 ℕcn 11020 2c2 11070 ℕ0cn0 11292 ℝ+crp 11832 mod cmo 12668 ↑cexp 12860 #bcblen 42363 |
This theorem was proved from axioms: ax-mp 5 ax-1 6 ax-2 7 ax-3 8 ax-gen 1722 ax-4 1737 ax-5 1839 ax-6 1888 ax-7 1935 ax-8 1992 ax-9 1999 ax-10 2019 ax-11 2034 ax-12 2047 ax-13 2246 ax-ext 2602 ax-rep 4771 ax-sep 4781 ax-nul 4789 ax-pow 4843 ax-pr 4906 ax-un 6949 ax-inf2 8538 ax-cnex 9992 ax-resscn 9993 ax-1cn 9994 ax-icn 9995 ax-addcl 9996 ax-addrcl 9997 ax-mulcl 9998 ax-mulrcl 9999 ax-mulcom 10000 ax-addass 10001 ax-mulass 10002 ax-distr 10003 ax-i2m1 10004 ax-1ne0 10005 ax-1rid 10006 ax-rnegex 10007 ax-rrecex 10008 ax-cnre 10009 ax-pre-lttri 10010 ax-pre-lttrn 10011 ax-pre-ltadd 10012 ax-pre-mulgt0 10013 ax-pre-sup 10014 ax-addf 10015 ax-mulf 10016 |
This theorem depends on definitions: df-bi 197 df-or 385 df-an 386 df-3or 1038 df-3an 1039 df-tru 1486 df-fal 1489 df-ex 1705 df-nf 1710 df-sb 1881 df-eu 2474 df-mo 2475 df-clab 2609 df-cleq 2615 df-clel 2618 df-nfc 2753 df-ne 2795 df-nel 2898 df-ral 2917 df-rex 2918 df-reu 2919 df-rmo 2920 df-rab 2921 df-v 3202 df-sbc 3436 df-csb 3534 df-dif 3577 df-un 3579 df-in 3581 df-ss 3588 df-pss 3590 df-nul 3916 df-if 4087 df-pw 4160 df-sn 4178 df-pr 4180 df-tp 4182 df-op 4184 df-uni 4437 df-int 4476 df-iun 4522 df-iin 4523 df-br 4654 df-opab 4713 df-mpt 4730 df-tr 4753 df-id 5024 df-eprel 5029 df-po 5035 df-so 5036 df-fr 5073 df-se 5074 df-we 5075 df-xp 5120 df-rel 5121 df-cnv 5122 df-co 5123 df-dm 5124 df-rn 5125 df-res 5126 df-ima 5127 df-pred 5680 df-ord 5726 df-on 5727 df-lim 5728 df-suc 5729 df-iota 5851 df-fun 5890 df-fn 5891 df-f 5892 df-f1 5893 df-fo 5894 df-f1o 5895 df-fv 5896 df-isom 5897 df-riota 6611 df-ov 6653 df-oprab 6654 df-mpt2 6655 df-of 6897 df-om 7066 df-1st 7168 df-2nd 7169 df-supp 7296 df-wrecs 7407 df-recs 7468 df-rdg 7506 df-1o 7560 df-2o 7561 df-oadd 7564 df-er 7742 df-map 7859 df-pm 7860 df-ixp 7909 df-en 7956 df-dom 7957 df-sdom 7958 df-fin 7959 df-fsupp 8276 df-fi 8317 df-sup 8348 df-inf 8349 df-oi 8415 df-card 8765 df-cda 8990 df-pnf 10076 df-mnf 10077 df-xr 10078 df-ltxr 10079 df-le 10080 df-sub 10268 df-neg 10269 df-div 10685 df-nn 11021 df-2 11079 df-3 11080 df-4 11081 df-5 11082 df-6 11083 df-7 11084 df-8 11085 df-9 11086 df-n0 11293 df-z 11378 df-dec 11494 df-uz 11688 df-q 11789 df-rp 11833 df-xneg 11946 df-xadd 11947 df-xmul 11948 df-ioo 12179 df-ioc 12180 df-ico 12181 df-icc 12182 df-fz 12327 df-fzo 12466 df-fl 12593 df-mod 12669 df-seq 12802 df-exp 12861 df-fac 13061 df-bc 13090 df-hash 13118 df-shft 13807 df-cj 13839 df-re 13840 df-im 13841 df-sqrt 13975 df-abs 13976 df-limsup 14202 df-clim 14219 df-rlim 14220 df-sum 14417 df-ef 14798 df-sin 14800 df-cos 14801 df-pi 14803 df-struct 15859 df-ndx 15860 df-slot 15861 df-base 15863 df-sets 15864 df-ress 15865 df-plusg 15954 df-mulr 15955 df-starv 15956 df-sca 15957 df-vsca 15958 df-ip 15959 df-tset 15960 df-ple 15961 df-ds 15964 df-unif 15965 df-hom 15966 df-cco 15967 df-rest 16083 df-topn 16084 df-0g 16102 df-gsum 16103 df-topgen 16104 df-pt 16105 df-prds 16108 df-xrs 16162 df-qtop 16167 df-imas 16168 df-xps 16170 df-mre 16246 df-mrc 16247 df-acs 16249 df-mgm 17242 df-sgrp 17284 df-mnd 17295 df-submnd 17336 df-mulg 17541 df-cntz 17750 df-cmn 18195 df-psmet 19738 df-xmet 19739 df-met 19740 df-bl 19741 df-mopn 19742 df-fbas 19743 df-fg 19744 df-cnfld 19747 df-top 20699 df-topon 20716 df-topsp 20737 df-bases 20750 df-cld 20823 df-ntr 20824 df-cls 20825 df-nei 20902 df-lp 20940 df-perf 20941 df-cn 21031 df-cnp 21032 df-haus 21119 df-tx 21365 df-hmeo 21558 df-fil 21650 df-fm 21742 df-flim 21743 df-flf 21744 df-xms 22125 df-ms 22126 df-tms 22127 df-cncf 22681 df-limc 23630 df-dv 23631 df-log 24303 df-cxp 24304 df-logb 24503 df-blen 42364 |
This theorem is referenced by: nnpw2p 42380 |
Copyright terms: Public domain | W3C validator |