| Step | Hyp | Ref
| Expression |
| 1 | | ffn 6045 |
. . . 4
    
  |
| 2 | 1 | 3ad2ant3 1084 |
. . 3
  Word
    
  |
| 3 | | cshwfn 13547 |
. . . 4
  Word
  cyclShift
  ..^       |
| 4 | 3 | 3adant3 1081 |
. . 3
  Word
     
cyclShift   ..^       |
| 5 | | cshwrn 13548 |
. . . 4
  Word
  cyclShift    |
| 6 | 5 | 3adant3 1081 |
. . 3
  Word
      cyclShift
   |
| 7 | | fnco 5999 |
. . 3
  
cyclShift   ..^      cyclShift
  
 cyclShift    ..^       |
| 8 | 2, 4, 6, 7 | syl3anc 1326 |
. 2
  Word
       cyclShift    ..^       |
| 9 | | wrdco 13577 |
. . . . 5
  Word        Word   |
| 10 | 9 | 3adant2 1080 |
. . . 4
  Word
       Word
  |
| 11 | | simp2 1062 |
. . . 4
  Word
    
  |
| 12 | | cshwfn 13547 |
. . . 4
    Word
   
cyclShift   ..^         |
| 13 | 10, 11, 12 | syl2anc 693 |
. . 3
  Word
       
cyclShift   ..^         |
| 14 | | lenco 13578 |
. . . . . 6
  Word         
        |
| 15 | 14 | 3adant2 1080 |
. . . . 5
  Word
                 |
| 16 | 15 | oveq2d 6666 |
. . . 4
  Word
      ..^        ..^       |
| 17 | 16 | fneq2d 5982 |
. . 3
  Word
         cyclShift   ..^   
  
 
 cyclShift   ..^        |
| 18 | 13, 17 | mpbid 222 |
. 2
  Word
       
cyclShift   ..^       |
| 19 | 15 | adantr 481 |
. . . . . . 7
   Word
      ..^                  |
| 20 | 19 | oveq2d 6666 |
. . . . . 6
   Word
      ..^                          |
| 21 | 20 | fveq2d 6195 |
. . . . 5
   Word
      ..^           
   
         
        |
| 22 | 21 | fveq2d 6195 |
. . . 4
   Word
      ..^                  
                       |
| 23 | | wrdfn 13319 |
. . . . . . 7
 Word  ..^       |
| 24 | 23 | 3ad2ant1 1082 |
. . . . . 6
  Word
    
 ..^       |
| 25 | 24 | adantr 481 |
. . . . 5
   Word
      ..^     
 ..^       |
| 26 | | elfzoelz 12470 |
. . . . . . . 8
  ..^    
  |
| 27 | | zaddcl 11417 |
. . . . . . . 8
 
     |
| 28 | 26, 11, 27 | syl2anr 495 |
. . . . . . 7
   Word
      ..^          |
| 29 | | elfzo0 12508 |
. . . . . . . . 9
  ..^     
           |
| 30 | 29 | simp2bi 1077 |
. . . . . . . 8
  ..^    
      |
| 31 | 30 | adantl 482 |
. . . . . . 7
   Word
      ..^            |
| 32 | | zmodfzo 12693 |
. . . . . . 7
                  ..^       |
| 33 | 28, 31, 32 | syl2anc 693 |
. . . . . 6
   Word
      ..^               ..^       |
| 34 | 15 | oveq2d 6666 |
. . . . . . . 8
  Word
                         |
| 35 | 34 | eleq1d 2686 |
. . . . . . 7
  Word
            
    ..^    
         ..^        |
| 36 | 35 | adantr 481 |
. . . . . 6
   Word
      ..^             
    ..^    
         ..^        |
| 37 | 33, 36 | mpbird 247 |
. . . . 5
   Word
      ..^                 ..^       |
| 38 | | fvco2 6273 |
. . . . 5
   ..^       
   
    ..^             
   
                
       |
| 39 | 25, 37, 38 | syl2anc 693 |
. . . 4
   Word
      ..^             
   
                
       |
| 40 | | simpl1 1064 |
. . . . 5
   Word
      ..^     
Word   |
| 41 | 11 | adantr 481 |
. . . . 5
   Word
      ..^     
  |
| 42 | | simpr 477 |
. . . . 5
   Word
      ..^       ..^       |
| 43 | | cshwidxmod 13549 |
. . . . . 6
  Word
 ..^        cyclShift                   |
| 44 | 43 | fveq2d 6195 |
. . . . 5
  Word
 ..^           cyclShift                        |
| 45 | 40, 41, 42, 44 | syl3anc 1326 |
. . . 4
   Word
      ..^          
cyclShift                        |
| 46 | 22, 39, 45 | 3eqtr4rd 2667 |
. . 3
   Word
      ..^          
cyclShift             
   
      |
| 47 | | fvco2 6273 |
. . . 4
   cyclShift
  ..^    
 ..^        
cyclShift          
cyclShift        |
| 48 | 4, 47 | sylan 488 |
. . 3
   Word
      ..^        
cyclShift          
cyclShift        |
| 49 | 10 | adantr 481 |
. . . 4
   Word
      ..^        Word
  |
| 50 | 15 | eqcomd 2628 |
. . . . . . 7
  Word
            
    |
| 51 | 50 | oveq2d 6666 |
. . . . . 6
  Word
      ..^      ..^         |
| 52 | 51 | eleq2d 2687 |
. . . . 5
  Word
       ..^    
 ..^   
      |
| 53 | 52 | biimpa 501 |
. . . 4
   Word
      ..^       ..^   
     |
| 54 | | cshwidxmod 13549 |
. . . 4
    Word
 ..^            cyclShift                
      |
| 55 | 49, 41, 53, 54 | syl3anc 1326 |
. . 3
   Word
      ..^          cyclShift                       |
| 56 | 46, 48, 55 | 3eqtr4d 2666 |
. 2
   Word
      ..^        
cyclShift          cyclShift       |
| 57 | 8, 18, 56 | eqfnfvd 6314 |
1
  Word
       cyclShift     
cyclShift    |