| Step | Hyp | Ref
 | Expression | 
| 1 |   | elfzoelz 10222 | 
. . . . . 6
         ..^          
       | 
| 2 |   | crth.1 | 
. . . . . 6
        ..^         | 
| 3 | 1, 2 | eleq2s 2291 | 
. . . . 5
                  | 
| 4 |   | simpr 110 | 
. . . . . . . 8
       
      
         | 
| 5 |   | crth.4 | 
. . . . . . . . . 10
                          
           | 
| 6 | 5 | simp1d 1011 | 
. . . . . . . . 9
              | 
| 7 | 6 | adantr 276 | 
. . . . . . . 8
       
      
         | 
| 8 |   | zmodfzo 10439 | 
. . . . . . . 8
               
                 ..^    | 
| 9 | 4, 7, 8 | syl2anc 411 | 
. . . . . . 7
       
      
              ..^    | 
| 10 | 5 | simp2d 1012 | 
. . . . . . . . 9
              | 
| 11 | 10 | adantr 276 | 
. . . . . . . 8
       
      
         | 
| 12 |   | zmodfzo 10439 | 
. . . . . . . 8
               
                 ..^    | 
| 13 | 4, 11, 12 | syl2anc 411 | 
. . . . . . 7
       
      
              ..^    | 
| 14 |   | opelxpi 4695 | 
. . . . . . 7
                ..^         
       ..^     
                        ..^       ..^     | 
| 15 | 9, 13, 14 | syl2anc 411 | 
. . . . . 6
       
      
       
            
     ..^       ..^     | 
| 16 |   | crth.2 | 
. . . . . 6
         ..^       ..^    | 
| 17 | 15, 16 | eleqtrrdi 2290 | 
. . . . 5
       
      
       
            
     | 
| 18 | 3, 17 | sylan2 286 | 
. . . 4
       
              
            
     | 
| 19 |   | crth.3 | 
. . . 4
                                   | 
| 20 | 18, 19 | fmptd 5716 | 
. . 3
              | 
| 21 |   | simprl 529 | 
. . . . . . . 8
       
      
                   | 
| 22 |   | elfzoelz 10222 | 
. . . . . . . . . . . . 13
         ..^          
       | 
| 23 | 22, 2 | eleq2s 2291 | 
. . . . . . . . . . . 12
                  | 
| 24 | 23 | ad2antrl 490 | 
. . . . . . . . . . 11
       
      
                   | 
| 25 |   | zq 9700 | 
. . . . . . . . . . 11
                  | 
| 26 | 24, 25 | syl 14 | 
. . . . . . . . . 10
       
      
                   | 
| 27 | 6 | adantr 276 | 
. . . . . . . . . . 11
       
      
               
   | 
| 28 |   | nnq 9707 | 
. . . . . . . . . . 11
                  | 
| 29 | 27, 28 | syl 14 | 
. . . . . . . . . 10
       
      
               
   | 
| 30 | 27 | nngt0d 9034 | 
. . . . . . . . . 10
       
      
               
   | 
| 31 | 26, 29, 30 | modqcld 10420 | 
. . . . . . . . 9
       
      
                         | 
| 32 | 10 | adantr 276 | 
. . . . . . . . . . 11
       
      
               
   | 
| 33 |   | nnq 9707 | 
. . . . . . . . . . 11
                  | 
| 34 | 32, 33 | syl 14 | 
. . . . . . . . . 10
       
      
               
   | 
| 35 | 32 | nngt0d 9034 | 
. . . . . . . . . 10
       
      
               
   | 
| 36 | 26, 34, 35 | modqcld 10420 | 
. . . . . . . . 9
       
      
                         | 
| 37 |   | opexg 4261 | 
. . . . . . . . 9
                                                         | 
| 38 | 31, 36, 37 | syl2anc 411 | 
. . . . . . . 8
       
      
                                    | 
| 39 |   | oveq1 5929 | 
. . . . . . . . . 10
               
              | 
| 40 |   | oveq1 5929 | 
. . . . . . . . . 10
               
              | 
| 41 | 39, 40 | opeq12d 3816 | 
. . . . . . . . 9
                
            
                      | 
| 42 | 41, 19 | fvmptg 5637 | 
. . . . . . . 8
                                                                  | 
| 43 | 21, 38, 42 | syl2anc 411 | 
. . . . . . 7
       
      
                         
              | 
| 44 |   | simprr 531 | 
. . . . . . . 8
       
      
                   | 
| 45 |   | elfzoelz 10222 | 
. . . . . . . . . . . . 13
         ..^          
       | 
| 46 | 45, 2 | eleq2s 2291 | 
. . . . . . . . . . . 12
                  | 
| 47 | 44, 46 | syl 14 | 
. . . . . . . . . . 11
       
      
                   | 
| 48 |   | zq 9700 | 
. . . . . . . . . . 11
                  | 
| 49 | 47, 48 | syl 14 | 
. . . . . . . . . 10
       
      
                   | 
| 50 | 49, 29, 30 | modqcld 10420 | 
. . . . . . . . 9
       
      
                         | 
| 51 | 49, 34, 35 | modqcld 10420 | 
. . . . . . . . 9
       
      
                         | 
| 52 |   | opexg 4261 | 
. . . . . . . . 9
                                                         | 
| 53 | 50, 51, 52 | syl2anc 411 | 
. . . . . . . 8
       
      
                                    | 
| 54 |   | oveq1 5929 | 
. . . . . . . . . 10
               
              | 
| 55 |   | oveq1 5929 | 
. . . . . . . . . 10
               
              | 
| 56 | 54, 55 | opeq12d 3816 | 
. . . . . . . . 9
                
            
                      | 
| 57 | 56, 19 | fvmptg 5637 | 
. . . . . . . 8
                                                                  | 
| 58 | 44, 53, 57 | syl2anc 411 | 
. . . . . . 7
       
      
                         
              | 
| 59 | 43, 58 | eqeq12d 2211 | 
. . . . . 6
       
      
                                                                       | 
| 60 |   | opthg 4271 | 
. . . . . . 7
                                       
                                   
     
                   
                | 
| 61 | 31, 36, 60 | syl2anc 411 | 
. . . . . 6
       
      
                                 
                                                               | 
| 62 | 59, 61 | bitrd 188 | 
. . . . 5
       
      
                                                                       | 
| 63 | 27 | nnzd 9447 | 
. . . . . . 7
       
      
               
   | 
| 64 | 32 | nnzd 9447 | 
. . . . . . 7
       
      
               
   | 
| 65 | 21, 2 | eleqtrdi 2289 | 
. . . . . . . . 9
       
      
                  ..^          | 
| 66 | 65, 22 | syl 14 | 
. . . . . . . 8
       
      
                   | 
| 67 | 44, 2 | eleqtrdi 2289 | 
. . . . . . . . 9
       
      
                  ..^          | 
| 68 | 67, 45 | syl 14 | 
. . . . . . . 8
       
      
                   | 
| 69 | 66, 68 | zsubcld 9453 | 
. . . . . . 7
       
      
                         | 
| 70 | 5 | simp3d 1013 | 
. . . . . . . 8
                    | 
| 71 | 70 | adantr 276 | 
. . . . . . 7
       
      
                         | 
| 72 |   | coprmdvds2 12261 | 
. . . . . . 7
                                                                                      
               | 
| 73 | 63, 64, 69, 71, 72 | syl31anc 1252 | 
. . . . . 6
       
      
                           
              
                    | 
| 74 |   | moddvds 11964 | 
. . . . . . . 8
               
                                 
              | 
| 75 | 27, 66, 68, 74 | syl3anc 1249 | 
. . . . . . 7
       
      
                                    
          | 
| 76 |   | moddvds 11964 | 
. . . . . . . 8
               
                                 
              | 
| 77 | 32, 66, 68, 76 | syl3anc 1249 | 
. . . . . . 7
       
      
                                    
          | 
| 78 | 75, 77 | anbi12d 473 | 
. . . . . 6
       
      
                                 
                                   
               | 
| 79 |   | qmulcl 9711 | 
. . . . . . . . . 10
               
                  | 
| 80 | 29, 34, 79 | syl2anc 411 | 
. . . . . . . . 9
       
      
                         | 
| 81 |   | elfzole1 10231 | 
. . . . . . . . . 10
         ..^          
       | 
| 82 | 65, 81 | syl 14 | 
. . . . . . . . 9
       
      
               
   | 
| 83 |   | elfzolt2 10232 | 
. . . . . . . . . 10
         ..^          
             | 
| 84 | 65, 83 | syl 14 | 
. . . . . . . . 9
       
      
               
         | 
| 85 |   | modqid 10441 | 
. . . . . . . . 9
                                    
                    
              | 
| 86 | 26, 80, 82, 84, 85 | syl22anc 1250 | 
. . . . . . . 8
       
      
                     
         | 
| 87 |   | elfzole1 10231 | 
. . . . . . . . . 10
         ..^          
       | 
| 88 | 67, 87 | syl 14 | 
. . . . . . . . 9
       
      
               
   | 
| 89 |   | elfzolt2 10232 | 
. . . . . . . . . 10
         ..^          
             | 
| 90 | 67, 89 | syl 14 | 
. . . . . . . . 9
       
      
               
         | 
| 91 |   | modqid 10441 | 
. . . . . . . . 9
                                    
                    
              | 
| 92 | 49, 80, 88, 90, 91 | syl22anc 1250 | 
. . . . . . . 8
       
      
                     
         | 
| 93 | 86, 92 | eqeq12d 2211 | 
. . . . . . 7
       
      
                                                     | 
| 94 | 27, 32 | nnmulcld 9039 | 
. . . . . . . 8
       
      
                         | 
| 95 |   | moddvds 11964 | 
. . . . . . . 8
                     
                       
                     
                    | 
| 96 | 94, 66, 68, 95 | syl3anc 1249 | 
. . . . . . 7
       
      
                                                      
          | 
| 97 | 93, 96 | bitr3d 190 | 
. . . . . 6
       
      
                              
          | 
| 98 | 73, 78, 97 | 3imtr4d 203 | 
. . . . 5
       
      
                                 
                    
        | 
| 99 | 62, 98 | sylbid 150 | 
. . . 4
       
      
                                     | 
| 100 | 99 | ralrimivva 2579 | 
. . 3
                
                             | 
| 101 |   | dff13 5815 | 
. . 3
          
             
      
                            | 
| 102 | 20, 100, 101 | sylanbrc 417 | 
. 2
              | 
| 103 |   | nnnn0 9256 | 
. . . . . 6
                  | 
| 104 |   | nnnn0 9256 | 
. . . . . 6
                  | 
| 105 |   | hashfzo0 10915 | 
. . . . . . . . 9
        
   ♯   ..^         | 
| 106 |   | hashfzo0 10915 | 
. . . . . . . . 9
        
   ♯   ..^         | 
| 107 | 105, 106 | oveqan12d 5941 | 
. . . . . . . 8
               
       ♯   ..^       ♯   ..^                | 
| 108 |   | 0z 9337 | 
. . . . . . . . . 10
        | 
| 109 |   | simpl 109 | 
. . . . . . . . . . 11
               
        
   | 
| 110 | 109 | nn0zd 9446 | 
. . . . . . . . . 10
               
        
   | 
| 111 |   | fzofig 10524 | 
. . . . . . . . . 10
               
       ..^        | 
| 112 | 108, 110,
111 | sylancr 414 | 
. . . . . . . . 9
               
       ..^        | 
| 113 |   | nn0z 9346 | 
. . . . . . . . . . 11
        
         | 
| 114 | 113 | adantl 277 | 
. . . . . . . . . 10
               
        
   | 
| 115 |   | fzofig 10524 | 
. . . . . . . . . 10
               
       ..^        | 
| 116 | 108, 114,
115 | sylancr 414 | 
. . . . . . . . 9
               
       ..^        | 
| 117 |   | hashxp 10918 | 
. . . . . . . . 9
      ..^           ..^           ♯    ..^       ..^         ♯   ..^       ♯   ..^      | 
| 118 | 112, 116,
117 | syl2anc 411 | 
. . . . . . . 8
               
      ♯    ..^       ..^         ♯   ..^       ♯   ..^      | 
| 119 |   | nn0mulcl 9285 | 
. . . . . . . . 9
               
                  | 
| 120 |   | hashfzo0 10915 | 
. . . . . . . . 9
              
   ♯   ..^                     | 
| 121 | 119, 120 | syl 14 | 
. . . . . . . 8
               
      ♯   ..^                     | 
| 122 | 107, 118,
121 | 3eqtr4rd 2240 | 
. . . . . . 7
               
      ♯   ..^             ♯    ..^       ..^      | 
| 123 | 119 | nn0zd 9446 | 
. . . . . . . . 9
               
                  | 
| 124 |   | fzofig 10524 | 
. . . . . . . . 9
              
              ..^              | 
| 125 | 108, 123,
124 | sylancr 414 | 
. . . . . . . 8
               
       ..^              | 
| 126 |   | xpfi 6993 | 
. . . . . . . . 9
      ..^           ..^             ..^       ..^         | 
| 127 | 112, 116,
126 | syl2anc 411 | 
. . . . . . . 8
               
        ..^       ..^         | 
| 128 |   | hashen 10876 | 
. . . . . . . 8
      ..^                  ..^       ..^             ♯   ..^             ♯    ..^       ..^      
  ..^              ..^       ..^      | 
| 129 | 125, 127,
128 | syl2anc 411 | 
. . . . . . 7
               
       ♯   ..^             ♯    ..^       ..^      
  ..^              ..^       ..^      | 
| 130 | 122, 129 | mpbid 147 | 
. . . . . 6
               
       ..^              ..^       ..^     | 
| 131 | 103, 104,
130 | syl2an 289 | 
. . . . 5
               
       ..^              ..^       ..^     | 
| 132 | 6, 10, 131 | syl2anc 411 | 
. . . 4
         ..^              ..^       ..^     | 
| 133 | 132, 2, 16 | 3brtr4g 4067 | 
. . 3
              | 
| 134 | 6 | nnnn0d 9302 | 
. . . . 5
              | 
| 135 | 10 | nnnn0d 9302 | 
. . . . 5
              | 
| 136 | 134, 135,
127 | syl2anc 411 | 
. . . 4
          ..^       ..^         | 
| 137 | 16, 136 | eqeltrid 2283 | 
. . 3
              | 
| 138 |   | f1finf1o 7013 | 
. . 3
               
                      | 
| 139 | 133, 137,
138 | syl2anc 411 | 
. 2
                        | 
| 140 | 102, 139 | mpbid 147 | 
1
              |