ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  bitsval Unicode version

Theorem bitsval 12125
Description: Expand the definition of the bits of an integer. (Contributed by Mario Carneiro, 5-Sep-2016.)
Assertion
Ref Expression
bitsval  |-  ( M  e.  (bits `  N
)  <->  ( N  e.  ZZ  /\  M  e. 
NN0  /\  -.  2  ||  ( |_ `  ( N  /  ( 2 ^ M ) ) ) ) )

Proof of Theorem bitsval
Dummy variables  n  m are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 df-bits 12123 . . . 4  |- bits  =  ( n  e.  ZZ  |->  { m  e.  NN0  |  -.  2  ||  ( |_
`  ( n  / 
( 2 ^ m
) ) ) } )
21mptrcl 5647 . . 3  |-  ( M  e.  (bits `  N
)  ->  N  e.  ZZ )
3 bitsfval 12124 . . . . 5  |-  ( N  e.  ZZ  ->  (bits `  N )  =  {
m  e.  NN0  |  -.  2  ||  ( |_
`  ( N  / 
( 2 ^ m
) ) ) } )
43eleq2d 2266 . . . 4  |-  ( N  e.  ZZ  ->  ( M  e.  (bits `  N
)  <->  M  e.  { m  e.  NN0  |  -.  2  ||  ( |_ `  ( N  /  ( 2 ^ m ) ) ) } ) )
5 oveq2 5933 . . . . . . . . 9  |-  ( m  =  M  ->  (
2 ^ m )  =  ( 2 ^ M ) )
65oveq2d 5941 . . . . . . . 8  |-  ( m  =  M  ->  ( N  /  ( 2 ^ m ) )  =  ( N  /  (
2 ^ M ) ) )
76fveq2d 5565 . . . . . . 7  |-  ( m  =  M  ->  ( |_ `  ( N  / 
( 2 ^ m
) ) )  =  ( |_ `  ( N  /  ( 2 ^ M ) ) ) )
87breq2d 4046 . . . . . 6  |-  ( m  =  M  ->  (
2  ||  ( |_ `  ( N  /  (
2 ^ m ) ) )  <->  2  ||  ( |_ `  ( N  /  ( 2 ^ M ) ) ) ) )
98notbid 668 . . . . 5  |-  ( m  =  M  ->  ( -.  2  ||  ( |_
`  ( N  / 
( 2 ^ m
) ) )  <->  -.  2  ||  ( |_ `  ( N  /  ( 2 ^ M ) ) ) ) )
109elrab 2920 . . . 4  |-  ( M  e.  { m  e. 
NN0  |  -.  2  ||  ( |_ `  ( N  /  ( 2 ^ m ) ) ) }  <->  ( M  e. 
NN0  /\  -.  2  ||  ( |_ `  ( N  /  ( 2 ^ M ) ) ) ) )
114, 10bitrdi 196 . . 3  |-  ( N  e.  ZZ  ->  ( M  e.  (bits `  N
)  <->  ( M  e. 
NN0  /\  -.  2  ||  ( |_ `  ( N  /  ( 2 ^ M ) ) ) ) ) )
122, 11biadanii 613 . 2  |-  ( M  e.  (bits `  N
)  <->  ( N  e.  ZZ  /\  ( M  e.  NN0  /\  -.  2  ||  ( |_ `  ( N  /  ( 2 ^ M ) ) ) ) ) )
13 3anass 984 . 2  |-  ( ( N  e.  ZZ  /\  M  e.  NN0  /\  -.  2  ||  ( |_ `  ( N  /  (
2 ^ M ) ) ) )  <->  ( N  e.  ZZ  /\  ( M  e.  NN0  /\  -.  2  ||  ( |_ `  ( N  /  ( 2 ^ M ) ) ) ) ) )
1412, 13bitr4i 187 1  |-  ( M  e.  (bits `  N
)  <->  ( N  e.  ZZ  /\  M  e. 
NN0  /\  -.  2  ||  ( |_ `  ( N  /  ( 2 ^ M ) ) ) ) )
Colors of variables: wff set class
Syntax hints:   -. wn 3    /\ wa 104    <-> wb 105    /\ w3a 980    = wceq 1364    e. wcel 2167   {crab 2479   class class class wbr 4034   ` cfv 5259  (class class class)co 5925    / cdiv 8716   2c2 9058   NN0cn0 9266   ZZcz 9343   |_cfl 10375   ^cexp 10647    || cdvds 11969  bitscbits 12122
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 106  ax-ia2 107  ax-ia3 108  ax-in1 615  ax-in2 616  ax-io 710  ax-5 1461  ax-7 1462  ax-gen 1463  ax-ie1 1507  ax-ie2 1508  ax-8 1518  ax-10 1519  ax-11 1520  ax-i12 1521  ax-bndl 1523  ax-4 1524  ax-17 1540  ax-i9 1544  ax-ial 1548  ax-i5r 1549  ax-13 2169  ax-14 2170  ax-ext 2178  ax-sep 4152  ax-pow 4208  ax-pr 4243  ax-un 4469  ax-cnex 7987  ax-resscn 7988  ax-1cn 7989  ax-1re 7990  ax-icn 7991  ax-addcl 7992  ax-addrcl 7993  ax-mulcl 7994  ax-i2m1 8001
This theorem depends on definitions:  df-bi 117  df-3an 982  df-tru 1367  df-nf 1475  df-sb 1777  df-eu 2048  df-mo 2049  df-clab 2183  df-cleq 2189  df-clel 2192  df-nfc 2328  df-ral 2480  df-rex 2481  df-rab 2484  df-v 2765  df-sbc 2990  df-un 3161  df-in 3163  df-ss 3170  df-pw 3608  df-sn 3629  df-pr 3630  df-op 3632  df-uni 3841  df-int 3876  df-br 4035  df-opab 4096  df-mpt 4097  df-id 4329  df-xp 4670  df-rel 4671  df-cnv 4672  df-co 4673  df-dm 4674  df-rn 4675  df-res 4676  df-ima 4677  df-iota 5220  df-fun 5261  df-fv 5267  df-ov 5928  df-inn 9008  df-n0 9267  df-bits 12123
This theorem is referenced by:  bitsval2  12126  bitsss  12127  bitsfzo  12137  bitsmod  12138  bitscmp  12140
  Copyright terms: Public domain W3C validator