| Step | Hyp | Ref
| Expression |
| 1 | | znf1o.y |
. . . . . . 7
ℤ/nℤ   |
| 2 | 1 | zncrng 19893 |
. . . . . 6

  |
| 3 | | crngring 18558 |
. . . . . 6

  |
| 4 | | eqid 2622 |
. . . . . . 7
 RHom   RHom   |
| 5 | 4 | zrhrhm 19860 |
. . . . . 6

 RHom  ℤring RingHom    |
| 6 | | zringbas 19824 |
. . . . . . 7
  ℤring |
| 7 | | znf1o.b |
. . . . . . 7
     |
| 8 | 6, 7 | rhmf 18726 |
. . . . . 6
  RHom  ℤring RingHom   RHom        |
| 9 | 2, 3, 5, 8 | 4syl 19 |
. . . . 5

 RHom        |
| 10 | | znf1o.w |
. . . . . 6
     ..^   |
| 11 | | sseq1 3626 |
. . . . . . 7
      ..^  
 
 
 ..^     |
| 12 | | sseq1 3626 |
. . . . . . 7
  ..^      ..^ 
  ..^      ..^ 
   |
| 13 | | ssid 3624 |
. . . . . . 7
 |
| 14 | | elfzoelz 12470 |
. . . . . . . 8
  ..^
  |
| 15 | 14 | ssriv 3607 |
. . . . . . 7
 ..^  |
| 16 | 11, 12, 13, 15 | keephyp 4152 |
. . . . . 6
     ..^   |
| 17 | 10, 16 | eqsstri 3635 |
. . . . 5
 |
| 18 | | fssres 6070 |
. . . . 5
   RHom         RHom         |
| 19 | 9, 17, 18 | sylancl 694 |
. . . 4

  RHom         |
| 20 | | znf1o.f |
. . . . 5
  RHom    |
| 21 | 20 | feq1i 6036 |
. . . 4
    
  RHom         |
| 22 | 19, 21 | sylibr 224 |
. . 3

      |
| 23 | 20 | fveq1i 6192 |
. . . . . . . 8
       RHom       |
| 24 | | fvres 6207 |
. . . . . . . . 9
    RHom        RHom       |
| 25 | 24 | ad2antrl 764 |
. . . . . . . 8
  
     RHom        RHom       |
| 26 | 23, 25 | syl5eq 2668 |
. . . . . . 7
  
        RHom       |
| 27 | 20 | fveq1i 6192 |
. . . . . . . 8
       RHom       |
| 28 | | fvres 6207 |
. . . . . . . . 9
    RHom        RHom       |
| 29 | 28 | ad2antll 765 |
. . . . . . . 8
  
     RHom        RHom       |
| 30 | 27, 29 | syl5eq 2668 |
. . . . . . 7
  
        RHom       |
| 31 | 26, 30 | eqeq12d 2637 |
. . . . . 6
  
          
  RHom       RHom        |
| 32 | | simpl 473 |
. . . . . . 7
  
    |
| 33 | | simprl 794 |
. . . . . . . 8
  
    |
| 34 | 17, 33 | sseldi 3601 |
. . . . . . 7
  
    |
| 35 | | simprr 796 |
. . . . . . . 8
  
    |
| 36 | 17, 35 | sseldi 3601 |
. . . . . . 7
  
    |
| 37 | 1, 4 | zndvds 19898 |
. . . . . . 7
 
    RHom       RHom    
     |
| 38 | 32, 34, 36, 37 | syl3anc 1326 |
. . . . . 6
  
     RHom       RHom    
     |
| 39 | | elnn0 11294 |
. . . . . . 7

    |
| 40 | | simpl 473 |
. . . . . . . . . 10
  
    |
| 41 | | simprl 794 |
. . . . . . . . . . 11
  
    |
| 42 | 17, 41 | sseldi 3601 |
. . . . . . . . . 10
  
    |
| 43 | | simprr 796 |
. . . . . . . . . . 11
  
    |
| 44 | 17, 43 | sseldi 3601 |
. . . . . . . . . 10
  
    |
| 45 | | moddvds 14991 |
. . . . . . . . . 10
 
     
     |
| 46 | 40, 42, 44, 45 | syl3anc 1326 |
. . . . . . . . 9
  
      
     |
| 47 | 42 | zred 11482 |
. . . . . . . . . . 11
  
    |
| 48 | | nnrp 11842 |
. . . . . . . . . . . 12
   |
| 49 | 48 | adantr 481 |
. . . . . . . . . . 11
  
    |
| 50 | | nnne0 11053 |
. . . . . . . . . . . . . . . 16
   |
| 51 | | ifnefalse 4098 |
. . . . . . . . . . . . . . . 16
  
   ..^   ..^   |
| 52 | 50, 51 | syl 17 |
. . . . . . . . . . . . . . 15
  
   ..^   ..^   |
| 53 | 10, 52 | syl5eq 2668 |
. . . . . . . . . . . . . 14
  ..^   |
| 54 | 53 | adantr 481 |
. . . . . . . . . . . . 13
  
   ..^   |
| 55 | 41, 54 | eleqtrd 2703 |
. . . . . . . . . . . 12
  
   ..^   |
| 56 | | elfzole1 12478 |
. . . . . . . . . . . 12
  ..^
  |
| 57 | 55, 56 | syl 17 |
. . . . . . . . . . 11
  
    |
| 58 | | elfzolt2 12479 |
. . . . . . . . . . . 12
  ..^
  |
| 59 | 55, 58 | syl 17 |
. . . . . . . . . . 11
  
    |
| 60 | | modid 12695 |
. . . . . . . . . . 11
    
 
    |
| 61 | 47, 49, 57, 59, 60 | syl22anc 1327 |
. . . . . . . . . 10
  
  
   |
| 62 | 44 | zred 11482 |
. . . . . . . . . . 11
  
    |
| 63 | 43, 54 | eleqtrd 2703 |
. . . . . . . . . . . 12
  
   ..^   |
| 64 | | elfzole1 12478 |
. . . . . . . . . . . 12
  ..^
  |
| 65 | 63, 64 | syl 17 |
. . . . . . . . . . 11
  
    |
| 66 | | elfzolt2 12479 |
. . . . . . . . . . . 12
  ..^
  |
| 67 | 63, 66 | syl 17 |
. . . . . . . . . . 11
  
    |
| 68 | | modid 12695 |
. . . . . . . . . . 11
    
 
    |
| 69 | 62, 49, 65, 67, 68 | syl22anc 1327 |
. . . . . . . . . 10
  
  
   |
| 70 | 61, 69 | eqeq12d 2637 |
. . . . . . . . 9
  
      
   |
| 71 | 46, 70 | bitr3d 270 |
. . . . . . . 8
  
    
   |
| 72 | | simpl 473 |
. . . . . . . . . 10
  
    |
| 73 | 72 | breq1d 4663 |
. . . . . . . . 9
  
    

    |
| 74 | | id 22 |
. . . . . . . . . . . . 13
   |
| 75 | | 0nn0 11307 |
. . . . . . . . . . . . 13
 |
| 76 | 74, 75 | syl6eqel 2709 |
. . . . . . . . . . . 12
   |
| 77 | 76, 34 | sylan 488 |
. . . . . . . . . . 11
  
    |
| 78 | 76, 36 | sylan 488 |
. . . . . . . . . . 11
  
    |
| 79 | 77, 78 | zsubcld 11487 |
. . . . . . . . . 10
  
      |
| 80 | | 0dvds 15002 |
. . . . . . . . . 10
   
 
     |
| 81 | 79, 80 | syl 17 |
. . . . . . . . 9
  
  
 
     |
| 82 | 77 | zcnd 11483 |
. . . . . . . . . 10
  
    |
| 83 | 78 | zcnd 11483 |
. . . . . . . . . 10
  
    |
| 84 | 82, 83 | subeq0ad 10402 |
. . . . . . . . 9
  
        |
| 85 | 73, 81, 84 | 3bitrd 294 |
. . . . . . . 8
  
    
   |
| 86 | 71, 85 | jaoian 824 |
. . . . . . 7
  


        |
| 87 | 39, 86 | sylanb 489 |
. . . . . 6
  
    
   |
| 88 | 31, 38, 87 | 3bitrd 294 |
. . . . 5
  
          
   |
| 89 | 88 | biimpd 219 |
. . . 4
  
          
   |
| 90 | 89 | ralrimivva 2971 |
. . 3



            |
| 91 | | dff13 6512 |
. . 3
    
     

        
    |
| 92 | 22, 90, 91 | sylanbrc 698 |
. 2

      |
| 93 | | zmodfzo 12693 |
. . . . . . . . . . . 12
 
    ..^   |
| 94 | 93 | ancoms 469 |
. . . . . . . . . . 11
 
    ..^   |
| 95 | 53 | adantr 481 |
. . . . . . . . . . 11
 
  ..^   |
| 96 | 94, 95 | eleqtrrd 2704 |
. . . . . . . . . 10
 
     |
| 97 | | zre 11381 |
. . . . . . . . . . . . . 14
   |
| 98 | | modabs2 12704 |
. . . . . . . . . . . . . 14
 
         |
| 99 | 97, 48, 98 | syl2anr 495 |
. . . . . . . . . . . . 13
 
         |
| 100 | | simpl 473 |
. . . . . . . . . . . . . 14
 
   |
| 101 | 15, 94 | sseldi 3601 |
. . . . . . . . . . . . . 14
 
     |
| 102 | | simpr 477 |
. . . . . . . . . . . . . 14
 
   |
| 103 | | moddvds 14991 |
. . . . . . . . . . . . . 14
   
       
 
     |
| 104 | 100, 101,
102, 103 | syl3anc 1326 |
. . . . . . . . . . . . 13
 
       
 
     |
| 105 | 99, 104 | mpbid 222 |
. . . . . . . . . . . 12
 
       |
| 106 | | nnnn0 11299 |
. . . . . . . . . . . . . 14
   |
| 107 | 106 | adantr 481 |
. . . . . . . . . . . . 13
 
   |
| 108 | 1, 4 | zndvds 19898 |
. . . . . . . . . . . . 13
   
    RHom    
    RHom    
       |
| 109 | 107, 101,
102, 108 | syl3anc 1326 |
. . . . . . . . . . . 12
 
    RHom    
    RHom    
       |
| 110 | 105, 109 | mpbird 247 |
. . . . . . . . . . 11
 
   RHom    
    RHom       |
| 111 | 110 | eqcomd 2628 |
. . . . . . . . . 10
 
   RHom       RHom         |
| 112 | | fveq2 6191 |
. . . . . . . . . . . 12
     RHom       RHom    
    |
| 113 | 112 | eqeq2d 2632 |
. . . . . . . . . . 11
      RHom       RHom    
  RHom       RHom          |
| 114 | 113 | rspcev 3309 |
. . . . . . . . . 10
      RHom       RHom        
  RHom       RHom       |
| 115 | 96, 111, 114 | syl2anc 693 |
. . . . . . . . 9
 
    RHom       RHom       |
| 116 | | iftrue 4092 |
. . . . . . . . . . . . 13
  
   ..^    |
| 117 | 116 | eleq2d 2687 |
. . . . . . . . . . . 12
       ..^ 
   |
| 118 | 117 | biimpar 502 |
. . . . . . . . . . 11
    
   ..^    |
| 119 | 118, 10 | syl6eleqr 2712 |
. . . . . . . . . 10
     |
| 120 | | eqidd 2623 |
. . . . . . . . . 10
     RHom       RHom       |
| 121 | | fveq2 6191 |
. . . . . . . . . . . 12
   RHom       RHom       |
| 122 | 121 | eqeq2d 2632 |
. . . . . . . . . . 11
    RHom       RHom    
  RHom       RHom        |
| 123 | 122 | rspcev 3309 |
. . . . . . . . . 10
    RHom       RHom      
  RHom       RHom       |
| 124 | 119, 120,
123 | syl2anc 693 |
. . . . . . . . 9
      RHom       RHom       |
| 125 | 115, 124 | jaoian 824 |
. . . . . . . 8
  



  RHom       RHom       |
| 126 | 39, 125 | sylanb 489 |
. . . . . . 7
 
    RHom       RHom       |
| 127 | 27, 28 | syl5eq 2668 |
. . . . . . . . 9
       RHom       |
| 128 | 127 | eqeq2d 2632 |
. . . . . . . 8
    RHom        
  RHom       RHom        |
| 129 | 128 | rexbiia 3040 |
. . . . . . 7
    RHom        

  RHom       RHom       |
| 130 | 126, 129 | sylibr 224 |
. . . . . 6
 
    RHom           |
| 131 | 130 | ralrimiva 2966 |
. . . . 5

    RHom           |
| 132 | 1, 7, 4 | znzrhfo 19896 |
. . . . . 6

 RHom        |
| 133 | | fofn 6117 |
. . . . . 6
  RHom     
 RHom    |
| 134 | | eqeq1 2626 |
. . . . . . . 8
   RHom    
    
  RHom            |
| 135 | 134 | rexbidv 3052 |
. . . . . . 7
   RHom    
 
   

  RHom            |
| 136 | 135 | ralrn 6362 |
. . . . . 6
  RHom 
 
 RHom   
    
   RHom            |
| 137 | 132, 133,
136 | 3syl 18 |
. . . . 5

 
 RHom   
    
   RHom            |
| 138 | 131, 137 | mpbird 247 |
. . . 4

  RHom   
      |
| 139 | | forn 6118 |
. . . . . 6
  RHom     
 RHom    |
| 140 | 132, 139 | syl 17 |
. . . . 5

 RHom    |
| 141 | 140 | raleqdv 3144 |
. . . 4

 
 RHom   
    

       |
| 142 | 138, 141 | mpbid 222 |
. . 3



      |
| 143 | | dffo3 6374 |
. . 3
    
     

       |
| 144 | 22, 142, 143 | sylanbrc 698 |
. 2

      |
| 145 | | df-f1o 5895 |
. 2
         
       |
| 146 | 92, 144, 145 | sylanbrc 698 |
1

      |