Metamath Proof Explorer


Theorem bitsfzo

Description: The bits of a number are all less than M iff the number is nonnegative and less than 2 ^ M . (Contributed by Mario Carneiro, 5-Sep-2016) (Proof shortened by AV, 1-Oct-2020)

Ref Expression
Assertion bitsfzo ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โ†’ ( ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โ†” ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) )

Proof

Step Hyp Ref Expression
1 bitsval โŠข ( ๐‘š โˆˆ ( bits โ€˜ ๐‘ ) โ†” ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) )
2 simp32 โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โˆง ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) ) โ†’ ๐‘š โˆˆ โ„•0 )
3 nn0uz โŠข โ„•0 = ( โ„คโ‰ฅ โ€˜ 0 )
4 2 3 eleqtrdi โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โˆง ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) ) โ†’ ๐‘š โˆˆ ( โ„คโ‰ฅ โ€˜ 0 ) )
5 simp1r โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โˆง ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) ) โ†’ ๐‘€ โˆˆ โ„•0 )
6 5 nn0zd โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โˆง ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) ) โ†’ ๐‘€ โˆˆ โ„ค )
7 2re โŠข 2 โˆˆ โ„
8 7 a1i โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โˆง ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) ) โ†’ 2 โˆˆ โ„ )
9 8 2 reexpcld โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โˆง ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) ) โ†’ ( 2 โ†‘ ๐‘š ) โˆˆ โ„ )
10 simp1l โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โˆง ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) ) โ†’ ๐‘ โˆˆ โ„ค )
11 10 zred โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โˆง ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) ) โ†’ ๐‘ โˆˆ โ„ )
12 8 5 reexpcld โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โˆง ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) ) โ†’ ( 2 โ†‘ ๐‘€ ) โˆˆ โ„ )
13 9 recnd โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โˆง ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) ) โ†’ ( 2 โ†‘ ๐‘š ) โˆˆ โ„‚ )
14 13 mullidd โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โˆง ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) ) โ†’ ( 1 ยท ( 2 โ†‘ ๐‘š ) ) = ( 2 โ†‘ ๐‘š ) )
15 simp33 โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โˆง ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) ) โ†’ ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) )
16 2rp โŠข 2 โˆˆ โ„+
17 16 a1i โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โˆง ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) ) โ†’ 2 โˆˆ โ„+ )
18 2 nn0zd โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โˆง ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) ) โ†’ ๐‘š โˆˆ โ„ค )
19 17 18 rpexpcld โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โˆง ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) ) โ†’ ( 2 โ†‘ ๐‘š ) โˆˆ โ„+ )
20 11 19 rerpdivcld โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โˆง ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) ) โ†’ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) โˆˆ โ„ )
21 1red โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โˆง ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) ) โ†’ 1 โˆˆ โ„ )
22 20 21 ltnled โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โˆง ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) ) โ†’ ( ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) < 1 โ†” ยฌ 1 โ‰ค ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) )
23 0p1e1 โŠข ( 0 + 1 ) = 1
24 23 breq2i โŠข ( ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) < ( 0 + 1 ) โ†” ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) < 1 )
25 elfzole1 โŠข ( ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โ†’ 0 โ‰ค ๐‘ )
26 25 3ad2ant2 โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โˆง ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) ) โ†’ 0 โ‰ค ๐‘ )
27 11 19 26 divge0d โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โˆง ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) ) โ†’ 0 โ‰ค ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) )
28 0z โŠข 0 โˆˆ โ„ค
29 flbi โŠข ( ( ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) โˆˆ โ„ โˆง 0 โˆˆ โ„ค ) โ†’ ( ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) = 0 โ†” ( 0 โ‰ค ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) โˆง ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) < ( 0 + 1 ) ) ) )
30 20 28 29 sylancl โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โˆง ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) ) โ†’ ( ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) = 0 โ†” ( 0 โ‰ค ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) โˆง ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) < ( 0 + 1 ) ) ) )
31 z0even โŠข 2 โˆฅ 0
32 id โŠข ( ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) = 0 โ†’ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) = 0 )
33 31 32 breqtrrid โŠข ( ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) = 0 โ†’ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) )
34 30 33 syl6bir โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โˆง ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) ) โ†’ ( ( 0 โ‰ค ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) โˆง ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) < ( 0 + 1 ) ) โ†’ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) )
35 27 34 mpand โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โˆง ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) ) โ†’ ( ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) < ( 0 + 1 ) โ†’ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) )
36 24 35 biimtrrid โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โˆง ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) ) โ†’ ( ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) < 1 โ†’ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) )
37 22 36 sylbird โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โˆง ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) ) โ†’ ( ยฌ 1 โ‰ค ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) โ†’ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) )
38 15 37 mt3d โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โˆง ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) ) โ†’ 1 โ‰ค ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) )
39 21 11 19 lemuldivd โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โˆง ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) ) โ†’ ( ( 1 ยท ( 2 โ†‘ ๐‘š ) ) โ‰ค ๐‘ โ†” 1 โ‰ค ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) )
40 38 39 mpbird โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โˆง ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) ) โ†’ ( 1 ยท ( 2 โ†‘ ๐‘š ) ) โ‰ค ๐‘ )
41 14 40 eqbrtrrd โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โˆง ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) ) โ†’ ( 2 โ†‘ ๐‘š ) โ‰ค ๐‘ )
42 elfzolt2 โŠข ( ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โ†’ ๐‘ < ( 2 โ†‘ ๐‘€ ) )
43 42 3ad2ant2 โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โˆง ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) ) โ†’ ๐‘ < ( 2 โ†‘ ๐‘€ ) )
44 9 11 12 41 43 lelttrd โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โˆง ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) ) โ†’ ( 2 โ†‘ ๐‘š ) < ( 2 โ†‘ ๐‘€ ) )
45 1lt2 โŠข 1 < 2
46 45 a1i โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โˆง ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) ) โ†’ 1 < 2 )
47 8 18 6 46 ltexp2d โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โˆง ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) ) โ†’ ( ๐‘š < ๐‘€ โ†” ( 2 โ†‘ ๐‘š ) < ( 2 โ†‘ ๐‘€ ) ) )
48 44 47 mpbird โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โˆง ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) ) โ†’ ๐‘š < ๐‘€ )
49 elfzo2 โŠข ( ๐‘š โˆˆ ( 0 ..^ ๐‘€ ) โ†” ( ๐‘š โˆˆ ( โ„คโ‰ฅ โ€˜ 0 ) โˆง ๐‘€ โˆˆ โ„ค โˆง ๐‘š < ๐‘€ ) )
50 4 6 48 49 syl3anbrc โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โˆง ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) ) โ†’ ๐‘š โˆˆ ( 0 ..^ ๐‘€ ) )
51 50 3expia โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) ) โ†’ ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘š โˆˆ โ„•0 โˆง ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ ๐‘š ) ) ) ) โ†’ ๐‘š โˆˆ ( 0 ..^ ๐‘€ ) ) )
52 1 51 biimtrid โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) ) โ†’ ( ๐‘š โˆˆ ( bits โ€˜ ๐‘ ) โ†’ ๐‘š โˆˆ ( 0 ..^ ๐‘€ ) ) )
53 52 ssrdv โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) ) โ†’ ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) )
54 simpr โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ - ๐‘ โˆˆ โ„• )
55 54 nnred โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ - ๐‘ โˆˆ โ„ )
56 simpllr โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ ๐‘€ โˆˆ โ„•0 )
57 56 nn0red โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ ๐‘€ โˆˆ โ„ )
58 max2 โŠข ( ( - ๐‘ โˆˆ โ„ โˆง ๐‘€ โˆˆ โ„ ) โ†’ ๐‘€ โ‰ค if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) )
59 55 57 58 syl2anc โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ ๐‘€ โ‰ค if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) )
60 simplr โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) )
61 n2dvdsm1 โŠข ยฌ 2 โˆฅ - 1
62 simplll โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ ๐‘ โˆˆ โ„ค )
63 62 zred โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ ๐‘ โˆˆ โ„ )
64 2nn โŠข 2 โˆˆ โ„•
65 64 a1i โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ 2 โˆˆ โ„• )
66 54 nnnn0d โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ - ๐‘ โˆˆ โ„•0 )
67 56 66 ifcld โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) โˆˆ โ„•0 )
68 65 67 nnexpcld โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) โˆˆ โ„• )
69 63 68 nndivred โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ ( ๐‘ / ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) ) โˆˆ โ„ )
70 1red โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ 1 โˆˆ โ„ )
71 62 zcnd โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ ๐‘ โˆˆ โ„‚ )
72 68 nncnd โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) โˆˆ โ„‚ )
73 2cnd โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ 2 โˆˆ โ„‚ )
74 2ne0 โŠข 2 โ‰  0
75 74 a1i โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ 2 โ‰  0 )
76 67 nn0zd โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) โˆˆ โ„ค )
77 73 75 76 expne0d โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) โ‰  0 )
78 71 72 77 divnegd โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ - ( ๐‘ / ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) ) = ( - ๐‘ / ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) ) )
79 67 nn0red โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) โˆˆ โ„ )
80 68 nnred โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) โˆˆ โ„ )
81 max1 โŠข ( ( - ๐‘ โˆˆ โ„ โˆง ๐‘€ โˆˆ โ„ ) โ†’ - ๐‘ โ‰ค if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) )
82 55 57 81 syl2anc โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ - ๐‘ โ‰ค if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) )
83 2z โŠข 2 โˆˆ โ„ค
84 uzid โŠข ( 2 โˆˆ โ„ค โ†’ 2 โˆˆ ( โ„คโ‰ฅ โ€˜ 2 ) )
85 83 84 ax-mp โŠข 2 โˆˆ ( โ„คโ‰ฅ โ€˜ 2 )
86 bernneq3 โŠข ( ( 2 โˆˆ ( โ„คโ‰ฅ โ€˜ 2 ) โˆง if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) โˆˆ โ„•0 ) โ†’ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) < ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) )
87 85 67 86 sylancr โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) < ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) )
88 79 80 87 ltled โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) โ‰ค ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) )
89 55 79 80 82 88 letrd โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ - ๐‘ โ‰ค ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) )
90 72 mulridd โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ ( ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) ยท 1 ) = ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) )
91 89 90 breqtrrd โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ - ๐‘ โ‰ค ( ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) ยท 1 ) )
92 68 nnrpd โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) โˆˆ โ„+ )
93 55 70 92 ledivmuld โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ ( ( - ๐‘ / ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) ) โ‰ค 1 โ†” - ๐‘ โ‰ค ( ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) ยท 1 ) ) )
94 91 93 mpbird โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ ( - ๐‘ / ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) ) โ‰ค 1 )
95 78 94 eqbrtrd โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ - ( ๐‘ / ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) ) โ‰ค 1 )
96 69 70 95 lenegcon1d โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ - 1 โ‰ค ( ๐‘ / ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) ) )
97 54 nngt0d โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ 0 < - ๐‘ )
98 68 nngt0d โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ 0 < ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) )
99 55 80 97 98 divgt0d โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ 0 < ( - ๐‘ / ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) ) )
100 99 78 breqtrrd โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ 0 < - ( ๐‘ / ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) ) )
101 69 lt0neg1d โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ ( ( ๐‘ / ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) ) < 0 โ†” 0 < - ( ๐‘ / ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) ) ) )
102 100 101 mpbird โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ ( ๐‘ / ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) ) < 0 )
103 ax-1cn โŠข 1 โˆˆ โ„‚
104 neg1cn โŠข - 1 โˆˆ โ„‚
105 1pneg1e0 โŠข ( 1 + - 1 ) = 0
106 103 104 105 addcomli โŠข ( - 1 + 1 ) = 0
107 102 106 breqtrrdi โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ ( ๐‘ / ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) ) < ( - 1 + 1 ) )
108 neg1z โŠข - 1 โˆˆ โ„ค
109 flbi โŠข ( ( ( ๐‘ / ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) ) โˆˆ โ„ โˆง - 1 โˆˆ โ„ค ) โ†’ ( ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) ) ) = - 1 โ†” ( - 1 โ‰ค ( ๐‘ / ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) ) โˆง ( ๐‘ / ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) ) < ( - 1 + 1 ) ) ) )
110 69 108 109 sylancl โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ ( ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) ) ) = - 1 โ†” ( - 1 โ‰ค ( ๐‘ / ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) ) โˆง ( ๐‘ / ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) ) < ( - 1 + 1 ) ) ) )
111 96 107 110 mpbir2and โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) ) ) = - 1 )
112 111 breq2d โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ ( 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) ) ) โ†” 2 โˆฅ - 1 ) )
113 61 112 mtbiri โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) ) ) )
114 bitsval2 โŠข ( ( ๐‘ โˆˆ โ„ค โˆง if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) โˆˆ โ„•0 ) โ†’ ( if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) โˆˆ ( bits โ€˜ ๐‘ ) โ†” ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) ) ) ) )
115 62 67 114 syl2anc โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ ( if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) โˆˆ ( bits โ€˜ ๐‘ ) โ†” ยฌ 2 โˆฅ ( โŒŠ โ€˜ ( ๐‘ / ( 2 โ†‘ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) ) ) ) )
116 113 115 mpbird โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) โˆˆ ( bits โ€˜ ๐‘ ) )
117 60 116 sseldd โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) โˆˆ ( 0 ..^ ๐‘€ ) )
118 elfzolt2 โŠข ( if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) โˆˆ ( 0 ..^ ๐‘€ ) โ†’ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) < ๐‘€ )
119 117 118 syl โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) < ๐‘€ )
120 79 57 ltnled โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ ( if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) < ๐‘€ โ†” ยฌ ๐‘€ โ‰ค if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) ) )
121 119 120 mpbid โŠข ( ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โˆง - ๐‘ โˆˆ โ„• ) โ†’ ยฌ ๐‘€ โ‰ค if ( - ๐‘ โ‰ค ๐‘€ , ๐‘€ , - ๐‘ ) )
122 59 121 pm2.65da โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โ†’ ยฌ - ๐‘ โˆˆ โ„• )
123 122 intnand โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โ†’ ยฌ ( ๐‘ โˆˆ โ„ โˆง - ๐‘ โˆˆ โ„• ) )
124 simpll โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โ†’ ๐‘ โˆˆ โ„ค )
125 elznn0nn โŠข ( ๐‘ โˆˆ โ„ค โ†” ( ๐‘ โˆˆ โ„•0 โˆจ ( ๐‘ โˆˆ โ„ โˆง - ๐‘ โˆˆ โ„• ) ) )
126 124 125 sylib โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โ†’ ( ๐‘ โˆˆ โ„•0 โˆจ ( ๐‘ โˆˆ โ„ โˆง - ๐‘ โˆˆ โ„• ) ) )
127 126 ord โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โ†’ ( ยฌ ๐‘ โˆˆ โ„•0 โ†’ ( ๐‘ โˆˆ โ„ โˆง - ๐‘ โˆˆ โ„• ) ) )
128 123 127 mt3d โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โ†’ ๐‘ โˆˆ โ„•0 )
129 simplr โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โ†’ ๐‘€ โˆˆ โ„•0 )
130 simpr โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โ†’ ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) )
131 eqid โŠข inf ( { ๐‘› โˆˆ โ„•0 โˆฃ ๐‘ < ( 2 โ†‘ ๐‘› ) } , โ„ , < ) = inf ( { ๐‘› โˆˆ โ„•0 โˆฃ ๐‘ < ( 2 โ†‘ ๐‘› ) } , โ„ , < )
132 128 129 130 131 bitsfzolem โŠข ( ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โˆง ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) โ†’ ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) )
133 53 132 impbida โŠข ( ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„•0 ) โ†’ ( ๐‘ โˆˆ ( 0 ..^ ( 2 โ†‘ ๐‘€ ) ) โ†” ( bits โ€˜ ๐‘ ) โІ ( 0 ..^ ๐‘€ ) ) )