| Step | Hyp | Ref
| Expression |
| 1 | | oveq2 5931 |
. . . . . . . . . . 11
  ..^  ..^   |
| 2 | | fzo0 10246 |
. . . . . . . . . . 11
 ..^  |
| 3 | 1, 2 | eqtrdi 2245 |
. . . . . . . . . 10
  ..^   |
| 4 | 3 | ineq2d 3365 |
. . . . . . . . 9
  bits   ..^   bits     |
| 5 | | in0 3486 |
. . . . . . . . 9
 bits    |
| 6 | 4, 5 | eqtrdi 2245 |
. . . . . . . 8
  bits   ..^    |
| 7 | 6 | sumeq1d 11533 |
. . . . . . 7
   bits 
 ..^              |
| 8 | | sum0 11555 |
. . . . . . 7
      |
| 9 | 7, 8 | eqtrdi 2245 |
. . . . . 6
   bits 
 ..^         |
| 10 | | oveq2 5931 |
. . . . . . . 8
           |
| 11 | | 2cn 9063 |
. . . . . . . . 9
 |
| 12 | | exp0 10637 |
. . . . . . . . 9
       |
| 13 | 11, 12 | ax-mp 5 |
. . . . . . . 8
     |
| 14 | 10, 13 | eqtrdi 2245 |
. . . . . . 7
       |
| 15 | 14 | oveq2d 5939 |
. . . . . 6
           |
| 16 | 9, 15 | eqeq12d 2211 |
. . . . 5
    bits   ..^            

    |
| 17 | 16 | imbi2d 230 |
. . . 4
   
 bits   ..^                     |
| 18 | | oveq2 5931 |
. . . . . . . 8
  ..^  ..^   |
| 19 | 18 | ineq2d 3365 |
. . . . . . 7
  bits   ..^   bits   ..^    |
| 20 | 19 | sumeq1d 11533 |
. . . . . 6
   bits 
 ..^         bits   ..^         |
| 21 | | oveq2 5931 |
. . . . . . 7
           |
| 22 | 21 | oveq2d 5939 |
. . . . . 6
               |
| 23 | 20, 22 | eqeq12d 2211 |
. . . . 5
    bits   ..^            
  bits 
 ..^                |
| 24 | 23 | imbi2d 230 |
. . . 4
   
 bits   ..^                 bits   ..^                 |
| 25 | | oveq2 5931 |
. . . . . . . 8
    ..^  ..^     |
| 26 | 25 | ineq2d 3365 |
. . . . . . 7
    bits   ..^   bits   ..^      |
| 27 | 26 | sumeq1d 11533 |
. . . . . 6
     bits 
 ..^         bits   ..^           |
| 28 | | oveq2 5931 |
. . . . . . 7
               |
| 29 | 28 | oveq2d 5939 |
. . . . . 6
                   |
| 30 | 27, 29 | eqeq12d 2211 |
. . . . 5
      bits   ..^            
  bits 
 ..^                    |
| 31 | 30 | imbi2d 230 |
. . . 4
     
 bits   ..^                 bits   ..^                     |
| 32 | | oveq2 5931 |
. . . . . . . 8
  ..^  ..^   |
| 33 | 32 | ineq2d 3365 |
. . . . . . 7
  bits   ..^   bits   ..^    |
| 34 | 33 | sumeq1d 11533 |
. . . . . 6
   bits 
 ..^         bits   ..^         |
| 35 | | oveq2 5931 |
. . . . . . 7
           |
| 36 | 35 | oveq2d 5939 |
. . . . . 6
               |
| 37 | 34, 36 | eqeq12d 2211 |
. . . . 5
    bits   ..^            
  bits 
 ..^                |
| 38 | 37 | imbi2d 230 |
. . . 4
   
 bits   ..^                 bits   ..^                 |
| 39 | | nn0z 9348 |
. . . . . 6

  |
| 40 | | zmod10 10434 |
. . . . . 6
     |
| 41 | 39, 40 | syl 14 |
. . . . 5

    |
| 42 | 41 | eqcomd 2202 |
. . . 4

    |
| 43 | | oveq1 5930 |
. . . . . . 7
   bits   ..^                bits   ..^         bits                    bits             |
| 44 | | fzonel 10238 |
. . . . . . . . . . . . 13
 ..^  |
| 45 | 44 | a1i 9 |
. . . . . . . . . . . 12
 

 ..^   |
| 46 | | disjsn 3685 |
. . . . . . . . . . . 12
   ..^   
 ..^   |
| 47 | 45, 46 | sylibr 134 |
. . . . . . . . . . 11
 
   ..^      |
| 48 | 47 | ineq2d 3365 |
. . . . . . . . . 10
 
  bits 
  ..^      bits     |
| 49 | | inindi 3381 |
. . . . . . . . . 10
 bits    ..^       bits 
 ..^   bits 
     |
| 50 | 48, 49, 5 | 3eqtr3g 2252 |
. . . . . . . . 9
 
   bits   ..^   bits        |
| 51 | | simpr 110 |
. . . . . . . . . . . . 13
 
   |
| 52 | | nn0uz 9638 |
. . . . . . . . . . . . 13
     |
| 53 | 51, 52 | eleqtrdi 2289 |
. . . . . . . . . . . 12
 
       |
| 54 | | fzosplitsn 10311 |
. . . . . . . . . . . 12
    
 ..^     ..^      |
| 55 | 53, 54 | syl 14 |
. . . . . . . . . . 11
 
  ..^     ..^      |
| 56 | 55 | ineq2d 3365 |
. . . . . . . . . 10
 
  bits 
 ..^     bits 
  ..^       |
| 57 | | indi 3411 |
. . . . . . . . . 10
 bits    ..^       bits 
 ..^   bits 
     |
| 58 | 56, 57 | eqtrdi 2245 |
. . . . . . . . 9
 
  bits 
 ..^      bits   ..^   bits        |
| 59 | | 0z 9339 |
. . . . . . . . . . 11
 |
| 60 | | nn0z 9348 |
. . . . . . . . . . . . 13

  |
| 61 | 60 | peano2zd 9453 |
. . . . . . . . . . . 12

    |
| 62 | 61 | adantl 277 |
. . . . . . . . . . 11
 
     |
| 63 | | fzofig 10526 |
. . . . . . . . . . 11
      ..^     |
| 64 | 59, 62, 63 | sylancr 414 |
. . . . . . . . . 10
 
  ..^     |
| 65 | | inss2 3385 |
. . . . . . . . . . 11
 bits   ..^     ..^    |
| 66 | 65 | a1i 9 |
. . . . . . . . . 10
 
  bits 
 ..^     ..^     |
| 67 | 39 | ad2antrr 488 |
. . . . . . . . . . . . . 14
   
 ..^      |
| 68 | | elfzonn0 10264 |
. . . . . . . . . . . . . . 15
  ..^  
  |
| 69 | 68 | adantl 277 |
. . . . . . . . . . . . . 14
   
 ..^      |
| 70 | | bitsdc 12114 |
. . . . . . . . . . . . . 14
 
 DECID bits    |
| 71 | 67, 69, 70 | syl2anc 411 |
. . . . . . . . . . . . 13
   
 ..^    DECID bits    |
| 72 | 69 | nn0zd 9448 |
. . . . . . . . . . . . . 14
   
 ..^      |
| 73 | | 0zd 9340 |
. . . . . . . . . . . . . 14
   
 ..^      |
| 74 | 62 | adantr 276 |
. . . . . . . . . . . . . 14
   
 ..^        |
| 75 | | fzodcel 10230 |
. . . . . . . . . . . . . 14
 
   DECID  ..^     |
| 76 | 72, 73, 74, 75 | syl3anc 1249 |
. . . . . . . . . . . . 13
   
 ..^    DECID  ..^     |
| 77 | 71, 76 | dcand 934 |
. . . . . . . . . . . 12
   
 ..^    DECID  bits   ..^      |
| 78 | | elin 3347 |
. . . . . . . . . . . . 13
  bits   ..^     bits   ..^      |
| 79 | 78 | dcbii 841 |
. . . . . . . . . . . 12
DECID  bits 
 ..^   
DECID  bits   ..^      |
| 80 | 77, 79 | sylibr 134 |
. . . . . . . . . . 11
   
 ..^    DECID  bits   ..^      |
| 81 | 80 | ralrimiva 2570 |
. . . . . . . . . 10
 
 
 ..^   DECID  bits 
 ..^      |
| 82 | | ssfidc 6999 |
. . . . . . . . . 10
   ..^    bits   ..^   
 ..^   
 ..^   DECID  bits   ..^    
 bits   ..^      |
| 83 | 64, 66, 81, 82 | syl3anc 1249 |
. . . . . . . . 9
 
  bits 
 ..^      |
| 84 | | 2nn 9154 |
. . . . . . . . . . . 12
 |
| 85 | 84 | a1i 9 |
. . . . . . . . . . 11
   
 bits   ..^       |
| 86 | | simpr 110 |
. . . . . . . . . . . . . 14
   
 bits   ..^      bits 
 ..^      |
| 87 | 86 | elin2d 3354 |
. . . . . . . . . . . . 13
   
 bits   ..^      ..^     |
| 88 | | elfzouz 10228 |
. . . . . . . . . . . . 13
  ..^  
      |
| 89 | 87, 88 | syl 14 |
. . . . . . . . . . . 12
   
 bits   ..^           |
| 90 | 89, 52 | eleqtrrdi 2290 |
. . . . . . . . . . 11
   
 bits   ..^       |
| 91 | 85, 90 | nnexpcld 10789 |
. . . . . . . . . 10
   
 bits   ..^           |
| 92 | 91 | nncnd 9006 |
. . . . . . . . 9
   
 bits   ..^           |
| 93 | 50, 58, 83, 92 | fsumsplit 11574 |
. . . . . . . 8
 
   bits   ..^            bits   ..^         bits 
           |
| 94 | | bitsinv1lem 12128 |
. . . . . . . . . 10
 
                  bits            |
| 95 | 39, 94 | sylan 283 |
. . . . . . . . 9
 
                  bits            |
| 96 | | eqeq2 2206 |
. . . . . . . . . . 11
       bits            bits             
  bits 
          bits            |
| 97 | | eqeq2 2206 |
. . . . . . . . . . 11
   bits            bits         
  bits 
          bits            |
| 98 | | simpr 110 |
. . . . . . . . . . . . . . 15
   
bits   bits    |
| 99 | 98 | snssd 3768 |
. . . . . . . . . . . . . 14
   
bits     bits    |
| 100 | | sseqin2 3383 |
. . . . . . . . . . . . . 14
   bits 
 bits         |
| 101 | 99, 100 | sylib 122 |
. . . . . . . . . . . . 13
   
bits    bits 
       |
| 102 | 101 | sumeq1d 11533 |
. . . . . . . . . . . 12
   
bits     bits                   |
| 103 | | simplr 528 |
. . . . . . . . . . . . 13
   
bits     |
| 104 | 84 | a1i 9 |
. . . . . . . . . . . . . . 15
   
bits     |
| 105 | 104, 103 | nnexpcld 10789 |
. . . . . . . . . . . . . 14
   
bits         |
| 106 | 105 | nncnd 9006 |
. . . . . . . . . . . . 13
   
bits         |
| 107 | | oveq2 5931 |
. . . . . . . . . . . . . 14
           |
| 108 | 107 | sumsn 11578 |
. . . . . . . . . . . . 13
                    |
| 109 | 103, 106,
108 | syl2anc 411 |
. . . . . . . . . . . 12
   
bits                |
| 110 | 102, 109 | eqtrd 2229 |
. . . . . . . . . . 11
   
bits     bits                |
| 111 | | simpr 110 |
. . . . . . . . . . . . . 14
    bits  
bits    |
| 112 | | disjsn 3685 |
. . . . . . . . . . . . . 14
  bits    
bits    |
| 113 | 111, 112 | sylibr 134 |
. . . . . . . . . . . . 13
    bits    bits 
     |
| 114 | 113 | sumeq1d 11533 |
. . . . . . . . . . . 12
    bits     bits                 |
| 115 | 114, 8 | eqtrdi 2245 |
. . . . . . . . . . 11
    bits     bits            |
| 116 | | bitsdc 12114 |
. . . . . . . . . . . 12
 
 DECID bits    |
| 117 | 39, 116 | sylan 283 |
. . . . . . . . . . 11
 
 DECID bits    |
| 118 | 96, 97, 110, 115, 117 | ifbothdadc 3594 |
. . . . . . . . . 10
 
   bits            bits           |
| 119 | 118 | oveq2d 5939 |
. . . . . . . . 9
 
          bits                    bits            |
| 120 | 95, 119 | eqtr4d 2232 |
. . . . . . . 8
 
                  bits             |
| 121 | 93, 120 | eqeq12d 2211 |
. . . . . . 7
 
    bits   ..^                    bits   ..^         bits                    bits              |
| 122 | 43, 121 | imbitrrid 156 |
. . . . . 6
 
    bits   ..^               bits   ..^                    |
| 123 | 122 | expcom 116 |
. . . . 5


   bits   ..^               bits   ..^                     |
| 124 | 123 | a2d 26 |
. . . 4

    bits   ..^                 bits   ..^                     |
| 125 | 17, 24, 31, 38, 42, 124 | nn0ind 9442 |
. . 3


  bits 
 ..^                |
| 126 | 125 | pm2.43i 49 |
. 2

  bits 
 ..^               |
| 127 | | id 19 |
. . . . . . 7

  |
| 128 | 127, 52 | eleqtrdi 2289 |
. . . . . 6

      |
| 129 | 84 | a1i 9 |
. . . . . . . 8

  |
| 130 | 129, 127 | nnexpcld 10789 |
. . . . . . 7

      |
| 131 | 130 | nnzd 9449 |
. . . . . 6

      |
| 132 | | 2z 9356 |
. . . . . . . 8
 |
| 133 | | uzid 9617 |
. . . . . . . 8
       |
| 134 | 132, 133 | ax-mp 5 |
. . . . . . 7
     |
| 135 | | bernneq3 10756 |
. . . . . . 7
             |
| 136 | 134, 135 | mpan 424 |
. . . . . 6

      |
| 137 | | elfzo2 10227 |
. . . . . 6
  ..^                     |
| 138 | 128, 131,
136, 137 | syl3anbrc 1183 |
. . . . 5

 ..^       |
| 139 | | bitsfzo 12122 |
. . . . . 6
 
   ..^    
bits 
 ..^    |
| 140 | 39, 127, 139 | syl2anc 411 |
. . . . 5

  ..^     bits   ..^    |
| 141 | 138, 140 | mpbid 147 |
. . . 4

bits   ..^   |
| 142 | | dfss2 3174 |
. . . 4
 bits   ..^
 bits   ..^  bits    |
| 143 | 141, 142 | sylib 122 |
. . 3

 bits   ..^  bits    |
| 144 | 143 | sumeq1d 11533 |
. 2

  bits 
 ..^        bits         |
| 145 | | zq 9702 |
. . . 4
   |
| 146 | 39, 145 | syl 14 |
. . 3

  |
| 147 | | zexpcl 10648 |
. . . . 5
 
       |
| 148 | 132, 147 | mpan 424 |
. . . 4

      |
| 149 | | zq 9702 |
. . . 4
           |
| 150 | 148, 149 | syl 14 |
. . 3

      |
| 151 | | nn0ge0 9276 |
. . 3

  |
| 152 | | modqid 10443 |
. . 3
                       |
| 153 | 146, 150,
151, 136, 152 | syl22anc 1250 |
. 2

        |
| 154 | 126, 144,
153 | 3eqtr3d 2237 |
1

 bits         |