| Step | Hyp | Ref
| Expression |
| 1 | | prmnn 15388 |
. . . 4

  |
| 2 | | nnnn0 11299 |
. . . 4
   |
| 3 | | nnexpcl 12873 |
. . . 4
 
       |
| 4 | 1, 2, 3 | syl2an 494 |
. . 3
         |
| 5 | | phival 15472 |
. . 3
                                   |
| 6 | 4, 5 | syl 17 |
. 2
                                 |
| 7 | | nnm1nn0 11334 |
. . . . . 6
 
   |
| 8 | | nnexpcl 12873 |
. . . . . 6
  
     
    |
| 9 | 1, 7, 8 | syl2an 494 |
. . . . 5
           |
| 10 | 9 | nncnd 11036 |
. . . 4
           |
| 11 | 1 | nncnd 11036 |
. . . . 5

  |
| 12 | 11 | adantr 481 |
. . . 4
     |
| 13 | | ax-1cn 9994 |
. . . . 5
 |
| 14 | | subdi 10463 |
. . . . 5
     
 
     
                         |
| 15 | 13, 14 | mp3an3 1413 |
. . . 4
     
 
        
       
              |
| 16 | 10, 12, 15 | syl2anc 693 |
. . 3
       
                         |
| 17 | 10 | mulid1d 10057 |
. . . 4
       
           |
| 18 | 17 | oveq2d 6666 |
. . 3
                                       |
| 19 | | inrab 3899 |
. . . . . . 7
                                              
    |
| 20 | | elfzelz 12342 |
. . . . . . . . . . . 12
           |
| 21 | | prmz 15389 |
. . . . . . . . . . . . . . . . 17

  |
| 22 | | rpexp 15432 |
. . . . . . . . . . . . . . . . 17
 
             |
| 23 | 21, 22 | syl3an1 1359 |
. . . . . . . . . . . . . . . 16
               |
| 24 | 23 | 3expa 1265 |
. . . . . . . . . . . . . . 15
                 |
| 25 | 24 | an32s 846 |
. . . . . . . . . . . . . 14
                 |
| 26 | | simpr 477 |
. . . . . . . . . . . . . . . 16
       |
| 27 | | zexpcl 12875 |
. . . . . . . . . . . . . . . . . 18
 
       |
| 28 | 21, 2, 27 | syl2an 494 |
. . . . . . . . . . . . . . . . 17
         |
| 29 | 28 | adantr 481 |
. . . . . . . . . . . . . . . 16
           |
| 30 | | gcdcom 15235 |
. . . . . . . . . . . . . . . 16
                     |
| 31 | 26, 29, 30 | syl2anc 693 |
. . . . . . . . . . . . . . 15
                   |
| 32 | 31 | eqeq1d 2624 |
. . . . . . . . . . . . . 14
                     |
| 33 | | coprm 15423 |
. . . . . . . . . . . . . . 15
   
     |
| 34 | 33 | adantlr 751 |
. . . . . . . . . . . . . 14
           |
| 35 | 25, 32, 34 | 3bitr4d 300 |
. . . . . . . . . . . . 13
           
   |
| 36 | | zcn 11382 |
. . . . . . . . . . . . . . . . 17
   |
| 37 | 36 | adantl 482 |
. . . . . . . . . . . . . . . 16
       |
| 38 | 37 | subid1d 10381 |
. . . . . . . . . . . . . . 15
         |
| 39 | 38 | breq2d 4665 |
. . . . . . . . . . . . . 14
      

   |
| 40 | 39 | notbid 308 |
. . . . . . . . . . . . 13
       
   |
| 41 | 35, 40 | bitr4d 271 |
. . . . . . . . . . . 12
           
     |
| 42 | 20, 41 | sylan2 491 |
. . . . . . . . . . 11
            
 
    
     |
| 43 | 42 | biimpd 219 |
. . . . . . . . . 10
            
 
    
     |
| 44 | | imnan 438 |
. . . . . . . . . 10
          
            |
| 45 | 43, 44 | sylib 208 |
. . . . . . . . 9
            
            |
| 46 | 45 | ralrimiva 2966 |
. . . . . . . 8
                   
    |
| 47 | | rabeq0 3957 |
. . . . . . . 8
                    
                
    |
| 48 | 46, 47 | sylibr 224 |
. . . . . . 7
                   
     |
| 49 | 19, 48 | syl5eq 2668 |
. . . . . 6
    
                              |
| 50 | | fzfi 12771 |
. . . . . . . 8
         |
| 51 | | ssrab2 3687 |
. . . . . . . 8
                         |
| 52 | | ssfi 8180 |
. . . . . . . 8
                                  
                  |
| 53 | 50, 51, 52 | mp2an 708 |
. . . . . . 7
                 |
| 54 | | ssrab2 3687 |
. . . . . . . 8
           
         |
| 55 | | ssfi 8180 |
. . . . . . . 8
                               
             |
| 56 | 50, 54, 55 | mp2an 708 |
. . . . . . 7
             |
| 57 | | hashun 13171 |
. . . . . . 7
                               
                                                                                                       |
| 58 | 53, 56, 57 | mp3an12 1414 |
. . . . . 6
                                   
                                                                     |
| 59 | 49, 58 | syl 17 |
. . . . 5
                                                                             |
| 60 | 42 | biimprd 238 |
. . . . . . . . . . . 12
            
   
        |
| 61 | 60 | con1d 139 |
. . . . . . . . . . 11
            
 
          |
| 62 | 61 | orrd 393 |
. . . . . . . . . 10
            
 
     
    |
| 63 | 62 | ralrimiva 2966 |
. . . . . . . . 9
                         |
| 64 | | rabid2 3118 |
. . . . . . . . 9
                         
  
                      |
| 65 | 63, 64 | sylibr 224 |
. . . . . . . 8
                           
     |
| 66 | | unrab 3898 |
. . . . . . . 8
                                              
    |
| 67 | 65, 66 | syl6reqr 2675 |
. . . . . . 7
    
                                      |
| 68 | 67 | fveq2d 6195 |
. . . . . 6
                                                   |
| 69 | 4 | nnnn0d 11351 |
. . . . . . 7
         |
| 70 | | hashfz1 13134 |
. . . . . . 7
    
                  |
| 71 | 69, 70 | syl 17 |
. . . . . 6
                     |
| 72 | | expm1t 12888 |
. . . . . . 7
 
               |
| 73 | 11, 72 | sylan 488 |
. . . . . 6
                 |
| 74 | 68, 71, 73 | 3eqtrd 2660 |
. . . . 5
                                               |
| 75 | 1 | adantr 481 |
. . . . . . . . 9
     |
| 76 | | 1zzd 11408 |
. . . . . . . . 9
     |
| 77 | | nn0uz 11722 |
. . . . . . . . . . 11
     |
| 78 | | 1m1e0 11089 |
. . . . . . . . . . . 12
   |
| 79 | 78 | fveq2i 6194 |
. . . . . . . . . . 11
           |
| 80 | 77, 79 | eqtr4i 2647 |
. . . . . . . . . 10
       |
| 81 | 69, 80 | syl6eleq 2711 |
. . . . . . . . 9
               |
| 82 | | 0zd 11389 |
. . . . . . . . 9
     |
| 83 | 75, 76, 81, 82 | hashdvds 15480 |
. . . . . . . 8
                                             |
| 84 | 4 | nncnd 11036 |
. . . . . . . . . . . . . 14
         |
| 85 | 84 | subid1d 10381 |
. . . . . . . . . . . . 13
               |
| 86 | 85 | oveq1d 6665 |
. . . . . . . . . . . 12
                   |
| 87 | 75 | nnne0d 11065 |
. . . . . . . . . . . . 13
     |
| 88 | | nnz 11399 |
. . . . . . . . . . . . . 14
   |
| 89 | 88 | adantl 482 |
. . . . . . . . . . . . 13
     |
| 90 | 12, 87, 89 | expm1d 13018 |
. . . . . . . . . . . 12
                 |
| 91 | 86, 90 | eqtr4d 2659 |
. . . . . . . . . . 11
                   |
| 92 | 91 | fveq2d 6195 |
. . . . . . . . . 10
                           |
| 93 | 9 | nnzd 11481 |
. . . . . . . . . . 11
           |
| 94 | | flid 12609 |
. . . . . . . . . . 11
                    
    |
| 95 | 93, 94 | syl 17 |
. . . . . . . . . 10
                
    |
| 96 | 92, 95 | eqtrd 2656 |
. . . . . . . . 9
                  
    |
| 97 | 78 | oveq1i 6660 |
. . . . . . . . . . . . . 14
       |
| 98 | | 0m0e0 11130 |
. . . . . . . . . . . . . 14
   |
| 99 | 97, 98 | eqtri 2644 |
. . . . . . . . . . . . 13
     |
| 100 | 99 | oveq1i 6660 |
. . . . . . . . . . . 12
         |
| 101 | 12, 87 | div0d 10800 |
. . . . . . . . . . . 12
       |
| 102 | 100, 101 | syl5eq 2668 |
. . . . . . . . . . 11
           |
| 103 | 102 | fveq2d 6195 |
. . . . . . . . . 10
                   |
| 104 | | 0z 11388 |
. . . . . . . . . . 11
 |
| 105 | | flid 12609 |
. . . . . . . . . . 11
       |
| 106 | 104, 105 | ax-mp 5 |
. . . . . . . . . 10
     |
| 107 | 103, 106 | syl6eq 2672 |
. . . . . . . . 9
               |
| 108 | 96, 107 | oveq12d 6668 |
. . . . . . . 8
                                     |
| 109 | 10 | subid1d 10381 |
. . . . . . . 8
       
           |
| 110 | 83, 108, 109 | 3eqtrd 2660 |
. . . . . . 7
                           |
| 111 | 110 | oveq2d 6666 |
. . . . . 6
                                                                       |
| 112 | | hashcl 13147 |
. . . . . . . . 9
                                       |
| 113 | 53, 112 | ax-mp 5 |
. . . . . . . 8
                     |
| 114 | 113 | nn0cni 11304 |
. . . . . . 7
                     |
| 115 | | addcom 10222 |
. . . . . . 7
                                                                                       |
| 116 | 114, 10, 115 | sylancr 695 |
. . . . . 6
                                                             |
| 117 | 111, 116 | eqtrd 2656 |
. . . . 5
                                                                       |
| 118 | 59, 74, 117 | 3eqtr3rd 2665 |
. . . 4
       
                           
     |
| 119 | 10, 12 | mulcld 10060 |
. . . . 5
       
     |
| 120 | 114 | a1i 11 |
. . . . 5
                         |
| 121 | 119, 10, 120 | subaddd 10410 |
. . . 4
                                                                        
      |
| 122 | 118, 121 | mpbird 247 |
. . 3
                                         |
| 123 | 16, 18, 122 | 3eqtrrd 2661 |
. 2
                                   |
| 124 | 6, 123 | eqtrd 2656 |
1
                  
    |