Proof of Theorem crctcshwlkn0lem4
| Step | Hyp | Ref
| Expression |
| 1 | | crctcshwlkn0lem.p |
. . . . 5
   ..^ if-                                                   |
| 2 | | crctcshwlkn0lem.s |
. . . . . . 7
  ..^   |
| 3 | | elfzoelz 12470 |
. . . . . . . . . . 11
  ..^  
  |
| 4 | 3 | zcnd 11483 |
. . . . . . . . . 10
  ..^  
  |
| 5 | 4 | adantl 482 |
. . . . . . . . 9
   ..^  ..^   
  |
| 6 | | elfzoelz 12470 |
. . . . . . . . . . 11
  ..^
  |
| 7 | 6 | zcnd 11483 |
. . . . . . . . . 10
  ..^
  |
| 8 | 7 | adantr 481 |
. . . . . . . . 9
   ..^  ..^   
  |
| 9 | | 1cnd 10056 |
. . . . . . . . 9
   ..^  ..^   
  |
| 10 | 5, 8, 9 | add32d 10263 |
. . . . . . . 8
   ..^  ..^   
          |
| 11 | | elfzo1 12517 |
. . . . . . . . . . . . 13
  ..^     |
| 12 | | nnnn0 11299 |
. . . . . . . . . . . . . . 15
   |
| 13 | | elfzonn0 12512 |
. . . . . . . . . . . . . . . 16
  ..^  
  |
| 14 | | nn0addcl 11328 |
. . . . . . . . . . . . . . . . 17
 
     |
| 15 | 14 | ex 450 |
. . . . . . . . . . . . . . . 16


     |
| 16 | 13, 15 | syl 17 |
. . . . . . . . . . . . . . 15
  ..^  

     |
| 17 | 12, 16 | syl5com 31 |
. . . . . . . . . . . . . 14
   ..^        |
| 18 | 17 | 3ad2ant1 1082 |
. . . . . . . . . . . . 13
 
   ..^        |
| 19 | 11, 18 | sylbi 207 |
. . . . . . . . . . . 12
  ..^
  ..^        |
| 20 | 19 | imp 445 |
. . . . . . . . . . 11
   ..^  ..^   
    |
| 21 | | fzo0ss1 12498 |
. . . . . . . . . . . . . 14
 ..^  ..^  |
| 22 | 21 | sseli 3599 |
. . . . . . . . . . . . 13
  ..^
 ..^   |
| 23 | | elfzo0 12508 |
. . . . . . . . . . . . . 14
  ..^ 
   |
| 24 | 23 | simp2bi 1077 |
. . . . . . . . . . . . 13
  ..^
  |
| 25 | 22, 24 | syl 17 |
. . . . . . . . . . . 12
  ..^
  |
| 26 | 25 | adantr 481 |
. . . . . . . . . . 11
   ..^  ..^   
  |
| 27 | | elfzo0 12508 |
. . . . . . . . . . . . 13
  ..^   
       |
| 28 | | nn0re 11301 |
. . . . . . . . . . . . . . . . . . . . 21

  |
| 29 | | nnre 11027 |
. . . . . . . . . . . . . . . . . . . . . . . 24
   |
| 30 | | nnre 11027 |
. . . . . . . . . . . . . . . . . . . . . . . 24
   |
| 31 | 29, 30 | anim12i 590 |
. . . . . . . . . . . . . . . . . . . . . . 23
 
     |
| 32 | 31 | 3adant3 1081 |
. . . . . . . . . . . . . . . . . . . . . 22
 
 
   |
| 33 | 11, 32 | sylbi 207 |
. . . . . . . . . . . . . . . . . . . . 21
  ..^
    |
| 34 | 28, 33 | anim12i 590 |
. . . . . . . . . . . . . . . . . . . 20
 
 ..^        |
| 35 | | 3anass 1042 |
. . . . . . . . . . . . . . . . . . . 20
 

      |
| 36 | 34, 35 | sylibr 224 |
. . . . . . . . . . . . . . . . . . 19
 
 ..^  
   |
| 37 | | ltaddsub 10502 |
. . . . . . . . . . . . . . . . . . . 20
 
   
     |
| 38 | 37 | bicomd 213 |
. . . . . . . . . . . . . . . . . . 19
 
 
 
     |
| 39 | 36, 38 | syl 17 |
. . . . . . . . . . . . . . . . . 18
 
 ..^   
      |
| 40 | 39 | biimpd 219 |
. . . . . . . . . . . . . . . . 17
 
 ..^   
  
   |
| 41 | 40 | ex 450 |
. . . . . . . . . . . . . . . 16

  ..^
  
      |
| 42 | 41 | com23 86 |
. . . . . . . . . . . . . . 15

   
 ..^       |
| 43 | 42 | a1d 25 |
. . . . . . . . . . . . . 14

   
  
 ..^        |
| 44 | 43 | 3imp 1256 |
. . . . . . . . . . . . 13
  
      ..^  
   |
| 45 | 27, 44 | sylbi 207 |
. . . . . . . . . . . 12
  ..^  
  ..^      |
| 46 | 45 | impcom 446 |
. . . . . . . . . . 11
   ..^  ..^   
    |
| 47 | | elfzo0 12508 |
. . . . . . . . . . 11
    ..^   
     |
| 48 | 20, 26, 46, 47 | syl3anbrc 1246 |
. . . . . . . . . 10
   ..^  ..^   
   ..^   |
| 49 | 48 | adantr 481 |
. . . . . . . . 9
    ..^
 ..^                ..^   |
| 50 | | fveq2 6191 |
. . . . . . . . . . . 12
               |
| 51 | 50 | adantl 482 |
. . . . . . . . . . 11
     ..^  ..^                            |
| 52 | | oveq1 6657 |
. . . . . . . . . . . . 13
           |
| 53 | 52 | fveq2d 6195 |
. . . . . . . . . . . 12
                   |
| 54 | | simpr 477 |
. . . . . . . . . . . . 13
    ..^
 ..^                       |
| 55 | 54 | fveq2d 6195 |
. . . . . . . . . . . 12
    ..^
 ..^                               |
| 56 | 53, 55 | sylan9eqr 2678 |
. . . . . . . . . . 11
     ..^  ..^                                |
| 57 | 51, 56 | eqeq12d 2637 |
. . . . . . . . . 10
     ..^  ..^                          
                 |
| 58 | | fveq2 6191 |
. . . . . . . . . . . . 13
               |
| 59 | 58 | fveq2d 6195 |
. . . . . . . . . . . 12
                       |
| 60 | 50 | sneqd 4189 |
. . . . . . . . . . . 12
                   |
| 61 | 59, 60 | eqeq12d 2637 |
. . . . . . . . . . 11
                                       |
| 62 | 61 | adantl 482 |
. . . . . . . . . 10
     ..^  ..^                                                    |
| 63 | 51, 56 | preq12d 4276 |
. . . . . . . . . . 11
     ..^  ..^                                                |
| 64 | 59 | adantl 482 |
. . . . . . . . . . 11
     ..^  ..^                                    |
| 65 | 63, 64 | sseq12d 3634 |
. . . . . . . . . 10
     ..^  ..^                             
       
                              |
| 66 | 57, 62, 65 | ifpbi123d 1027 |
. . . . . . . . 9
     ..^  ..^                if-                                                
if-                                                   
              |
| 67 | 49, 66 | rspcdv 3312 |
. . . . . . . 8
    ..^
 ..^                ..^ if-                                                 if-                                                                  |
| 68 | 10, 67 | mpdan 702 |
. . . . . . 7
   ..^  ..^   
 
 ..^ if-                                                 if-                                                   
              |
| 69 | 2, 68 | sylan 488 |
. . . . . 6
 
 ..^       ..^ if-                                                 if-                                                                  |
| 70 | 69 | ex 450 |
. . . . 5
   ..^      ..^ if-                                                 if-                                                                   |
| 71 | 1, 70 | mpid 44 |
. . . 4
   ..^   if-                                                                  |
| 72 | 71 | imp 445 |
. . 3
 
 ..^    if-                                                   
             |
| 73 | | elfzofz 12485 |
. . . . 5
  ..^  
   
    |
| 74 | | crctcshwlkn0lem.q |
. . . . . 6
                            |
| 75 | 2, 74 | crctcshwlkn0lem2 26703 |
. . . . 5
 
   
               |
| 76 | 73, 75 | sylan2 491 |
. . . 4
 
 ..^                |
| 77 | | fzofzp1 12565 |
. . . . 5
  ..^  
     
    |
| 78 | 2, 74 | crctcshwlkn0lem2 26703 |
. . . . 5
 
     
                   |
| 79 | 77, 78 | sylan2 491 |
. . . 4
 
 ..^                    |
| 80 | | crctcshwlkn0lem.h |
. . . . . . 7
 cyclShift
  |
| 81 | 80 | fveq1i 6192 |
. . . . . 6
      cyclShift      |
| 82 | | crctcshwlkn0lem.f |
. . . . . . . . 9
 Word   |
| 83 | 82 | adantr 481 |
. . . . . . . 8
 
 ..^    Word   |
| 84 | 2, 6 | syl 17 |
. . . . . . . . 9
   |
| 85 | 84 | adantr 481 |
. . . . . . . 8
 
 ..^      |
| 86 | | nnz 11399 |
. . . . . . . . . . . . . . . . 17
   |
| 87 | 86 | adantl 482 |
. . . . . . . . . . . . . . . 16
 
   |
| 88 | | nnz 11399 |
. . . . . . . . . . . . . . . . 17
   |
| 89 | 88 | adantr 481 |
. . . . . . . . . . . . . . . 16
 
   |
| 90 | 87, 89 | zsubcld 11487 |
. . . . . . . . . . . . . . 15
 
     |
| 91 | 12 | nn0ge0d 11354 |
. . . . . . . . . . . . . . . . 17
   |
| 92 | 91 | adantr 481 |
. . . . . . . . . . . . . . . 16
 

  |
| 93 | | subge02 10544 |
. . . . . . . . . . . . . . . . 17
 
       |
| 94 | 30, 29, 93 | syl2anr 495 |
. . . . . . . . . . . . . . . 16
 
       |
| 95 | 92, 94 | mpbid 222 |
. . . . . . . . . . . . . . 15
 
  
  |
| 96 | 90, 87, 95 | 3jca 1242 |
. . . . . . . . . . . . . 14
 
    

   |
| 97 | 96 | 3adant3 1081 |
. . . . . . . . . . . . 13
 
   

    |
| 98 | 11, 97 | sylbi 207 |
. . . . . . . . . . . 12
  ..^
 
      |
| 99 | | eluz2 11693 |
. . . . . . . . . . . 12
    
          |
| 100 | 98, 99 | sylibr 224 |
. . . . . . . . . . 11
  ..^
        |
| 101 | | fzoss2 12496 |
. . . . . . . . . . 11
    
 
 ..^    ..^   |
| 102 | 2, 100, 101 | 3syl 18 |
. . . . . . . . . 10
  ..^    ..^   |
| 103 | 102 | sselda 3603 |
. . . . . . . . 9
 
 ..^     ..^   |
| 104 | | crctcshwlkn0lem.n |
. . . . . . . . . 10
     |
| 105 | 104 | oveq2i 6661 |
. . . . . . . . 9
 ..^  ..^      |
| 106 | 103, 105 | syl6eleq 2711 |
. . . . . . . 8
 
 ..^     ..^       |
| 107 | | cshwidxmod 13549 |
. . . . . . . 8
  Word
 ..^        cyclShift                   |
| 108 | 83, 85, 106, 107 | syl3anc 1326 |
. . . . . . 7
 
 ..^      cyclShift                   |
| 109 | 104 | eqcomi 2631 |
. . . . . . . . . 10
     |
| 110 | 109 | oveq2i 6661 |
. . . . . . . . 9
          
  |
| 111 | 18 | imp 445 |
. . . . . . . . . . . . . 14
   
 ..^        |
| 112 | | nnm1nn0 11334 |
. . . . . . . . . . . . . . . 16
 
   |
| 113 | 112 | 3ad2ant2 1083 |
. . . . . . . . . . . . . . 15
 
 
   |
| 114 | 113 | adantr 481 |
. . . . . . . . . . . . . 14
   
 ..^        |
| 115 | 28, 32 | anim12i 590 |
. . . . . . . . . . . . . . . . . . . . 21
  
        |
| 116 | 115, 35 | sylibr 224 |
. . . . . . . . . . . . . . . . . . . 20
  
      |
| 117 | 116, 38 | syl 17 |
. . . . . . . . . . . . . . . . . . 19
  
          |
| 118 | 12 | 3ad2ant1 1082 |
. . . . . . . . . . . . . . . . . . . . . . 23
 
   |
| 119 | 118, 14 | sylan2 491 |
. . . . . . . . . . . . . . . . . . . . . 22
  
      |
| 120 | 119 | nn0zd 11480 |
. . . . . . . . . . . . . . . . . . . . 21
  
      |
| 121 | 86 | 3ad2ant2 1083 |
. . . . . . . . . . . . . . . . . . . . . 22
 
   |
| 122 | 121 | adantl 482 |
. . . . . . . . . . . . . . . . . . . . 21
  
    |
| 123 | | zltlem1 11430 |
. . . . . . . . . . . . . . . . . . . . 21
   
           |
| 124 | 120, 122,
123 | syl2anc 693 |
. . . . . . . . . . . . . . . . . . . 20
  
       
    |
| 125 | 124 | biimpd 219 |
. . . . . . . . . . . . . . . . . . 19
  
    
  
    |
| 126 | 117, 125 | sylbid 230 |
. . . . . . . . . . . . . . . . . 18
  
    
  
    |
| 127 | 126 | impancom 456 |
. . . . . . . . . . . . . . . . 17
               |
| 128 | 127 | 3adant2 1080 |
. . . . . . . . . . . . . . . 16
  
              |
| 129 | 27, 128 | sylbi 207 |
. . . . . . . . . . . . . . 15
  ..^  
 
        |
| 130 | 129 | impcom 446 |
. . . . . . . . . . . . . 14
   
 ..^     
    |
| 131 | 111, 114,
130 | 3jca 1242 |
. . . . . . . . . . . . 13
   
 ..^          
     |
| 132 | 11, 131 | sylanb 489 |
. . . . . . . . . . . 12
   ..^  ..^   
  


       |
| 133 | | elfz2nn0 12431 |
. . . . . . . . . . . 12
        
  


       |
| 134 | 132, 133 | sylibr 224 |
. . . . . . . . . . 11
   ..^  ..^   
          |
| 135 | | zaddcl 11417 |
. . . . . . . . . . . . 13
 
     |
| 136 | 3, 6, 135 | syl2anr 495 |
. . . . . . . . . . . 12
   ..^  ..^   
    |
| 137 | | zmodid2 12698 |
. . . . . . . . . . . 12
   
                   |
| 138 | 136, 26, 137 | syl2anc 693 |
. . . . . . . . . . 11
   ..^  ..^   
   
  
           |
| 139 | 134, 138 | mpbird 247 |
. . . . . . . . . 10
   ..^  ..^   
        |
| 140 | 2, 139 | sylan 488 |
. . . . . . . . 9
 
 ..^            |
| 141 | 110, 140 | syl5eq 2668 |
. . . . . . . 8
 
 ..^                |
| 142 | 141 | fveq2d 6195 |
. . . . . . 7
 
 ..^                        |
| 143 | 108, 142 | eqtrd 2656 |
. . . . . 6
 
 ..^      cyclShift             |
| 144 | 81, 143 | syl5eq 2668 |
. . . . 5
 
 ..^                |
| 145 | 144 | fveq2d 6195 |
. . . 4
 
 ..^                        |
| 146 | | simp1 1061 |
. . . . . 6
                                            
            |
| 147 | | simp2 1062 |
. . . . . 6
                                            
                |
| 148 | 146, 147 | eqeq12d 2637 |
. . . . 5
                                            
          
                 |
| 149 | | simp3 1063 |
. . . . . 6
                                            
                    |
| 150 | 146 | sneqd 4189 |
. . . . . 6
                                            
     
          |
| 151 | 149, 150 | eqeq12d 2637 |
. . . . 5
                                            
              
                     |
| 152 | 146, 147 | preq12d 4276 |
. . . . . 6
                                            
                                |
| 153 | 152, 149 | sseq12d 3634 |
. . . . 5
                                            
                                      
             |
| 154 | 148, 151,
153 | ifpbi123d 1027 |
. . . 4
                                            
if-                                                
if-                                                   
              |
| 155 | 76, 79, 145, 154 | syl3anc 1326 |
. . 3
 
 ..^    if-                                                 if-                                                                  |
| 156 | 72, 155 | mpbird 247 |
. 2
 
 ..^    if-                                       
           |
| 157 | 156 | ralrimiva 2966 |
1
   ..^   if-                                                   |