| Step | Hyp | Ref
| Expression |
| 1 | | oveq1 6657 |
. . . . . . 7
       |
| 2 | | 1m1e0 11089 |
. . . . . . 7
   |
| 3 | 1, 2 | syl6eq 2672 |
. . . . . 6
     |
| 4 | 3 | oveq2d 6666 |
. . . . 5
             |
| 5 | | fz10 12362 |
. . . . 5
     |
| 6 | 4, 5 | syl6eq 2672 |
. . . 4
         |
| 7 | 3 | oveq1d 6665 |
. . . . 5
         |
| 8 | 7 | adantr 481 |
. . . 4
                 |
| 9 | 6, 8 | prodeq12dv 14656 |
. . 3
             
    |
| 10 | | oveq2 6658 |
. . . . . 6
           |
| 11 | 10 | oveq2d 6666 |
. . . . 5
                   |
| 12 | 11 | adantr 481 |
. . . 4
                           |
| 13 | 6, 12 | prodeq12dv 14656 |
. . 3
                 
          |
| 14 | 9, 13 | eqeq12d 2637 |
. 2
                                             |
| 15 | | oveq1 6657 |
. . . . 5
       |
| 16 | 15 | oveq2d 6666 |
. . . 4
               |
| 17 | 15 | oveq1d 6665 |
. . . . 5
           |
| 18 | 17 | adantr 481 |
. . . 4
 
                 |
| 19 | 16, 18 | prodeq12dv 14656 |
. . 3
             
             |
| 20 | | oveq2 6658 |
. . . . . 6
           |
| 21 | 20 | oveq2d 6666 |
. . . . 5
                   |
| 22 | 21 | adantr 481 |
. . . 4
 
                         |
| 23 | 16, 22 | prodeq12dv 14656 |
. . 3
                 
                 |
| 24 | 19, 23 | eqeq12d 2637 |
. 2
                                                             |
| 25 | | oveq1 6657 |
. . . . 5
           |
| 26 | 25 | oveq2d 6666 |
. . . 4
                   |
| 27 | 25 | oveq1d 6665 |
. . . . 5
               |
| 28 | 27 | adantr 481 |
. . . 4
   
                   |
| 29 | 26, 28 | prodeq12dv 14656 |
. . 3
               
                 |
| 30 | | oveq2 6658 |
. . . . . 6
          
    |
| 31 | 30 | oveq2d 6666 |
. . . . 5
                       |
| 32 | 31 | adantr 481 |
. . . 4
   
                           |
| 33 | 26, 32 | prodeq12dv 14656 |
. . 3
                   
                     |
| 34 | 29, 33 | eqeq12d 2637 |
. 2
                                                                       |
| 35 | | oveq1 6657 |
. . . . 5
       |
| 36 | 35 | oveq2d 6666 |
. . . 4
          
    |
| 37 | 35 | oveq1d 6665 |
. . . . 5
           |
| 38 | 37 | adantr 481 |
. . . 4
 
                 |
| 39 | 36, 38 | prodeq12dv 14656 |
. . 3
             
             |
| 40 | | oveq2 6658 |
. . . . . 6
           |
| 41 | 40 | oveq2d 6666 |
. . . . 5
                   |
| 42 | 41 | adantr 481 |
. . . 4
 
                         |
| 43 | 36, 42 | prodeq12dv 14656 |
. . 3
                 
                 |
| 44 | 39, 43 | eqeq12d 2637 |
. 2
                                              
              |
| 45 | | prod0 14673 |
. . 3
    |
| 46 | | prod0 14673 |
. . 3
          |
| 47 | 45, 46 | eqtr4i 2647 |
. 2
             |
| 48 | | simpr 477 |
. . . . 5
                                           
                 |
| 49 | 48 | oveq1d 6665 |
. . . 4
                                                                                      
      |
| 50 | | nncn 11028 |
. . . . . . . . 9
   |
| 51 | | 1cnd 10056 |
. . . . . . . . 9
   |
| 52 | 50, 51 | pncand 10393 |
. . . . . . . 8
       |
| 53 | 52 | oveq2d 6666 |
. . . . . . 7
               |
| 54 | 52 | oveq1d 6665 |
. . . . . . . 8
           |
| 55 | 54 | adantr 481 |
. . . . . . 7
 
                   |
| 56 | 53, 55 | prodeq12dv 14656 |
. . . . . 6
                 
         |
| 57 | | elnnuz 11724 |
. . . . . . . 8

      |
| 58 | 57 | biimpi 206 |
. . . . . . 7
       |
| 59 | | nnnn0 11299 |
. . . . . . . . 9
   |
| 60 | | elfzelz 12342 |
. . . . . . . . 9
       |
| 61 | | bccl 13109 |
. . . . . . . . 9
 
     |
| 62 | 59, 60, 61 | syl2an 494 |
. . . . . . . 8
 
         |
| 63 | 62 | nn0cnd 11353 |
. . . . . . 7
 
         |
| 64 | | oveq2 6658 |
. . . . . . 7
       |
| 65 | 58, 63, 64 | fprodm1 14697 |
. . . . . 6
                         |
| 66 | | bcnn 13099 |
. . . . . . . . 9

    |
| 67 | 59, 66 | syl 17 |
. . . . . . . 8
     |
| 68 | 67 | oveq2d 6666 |
. . . . . . 7
                             |
| 69 | | fzfid 12772 |
. . . . . . . . 9
         |
| 70 | | elfzelz 12342 |
. . . . . . . . . . 11
         |
| 71 | 59, 70, 61 | syl2an 494 |
. . . . . . . . . 10
 
           |
| 72 | 71 | nn0cnd 11353 |
. . . . . . . . 9
 
           |
| 73 | 69, 72 | fprodcl 14682 |
. . . . . . . 8
             |
| 74 | 73 | mulid1d 10057 |
. . . . . . 7
             
           |
| 75 | | 1eluzge0 11732 |
. . . . . . . . . . . 12
     |
| 76 | | fzss1 12380 |
. . . . . . . . . . . 12
    
              |
| 77 | 75, 76 | ax-mp 5 |
. . . . . . . . . . 11
             |
| 78 | 77 | sseli 3599 |
. . . . . . . . . 10
               |
| 79 | | bcm1nt 31623 |
. . . . . . . . . 10
 
                     |
| 80 | 78, 79 | sylan2 491 |
. . . . . . . . 9
 
                     |
| 81 | 80 | prodeq2dv 14653 |
. . . . . . . 8
           
                   |
| 82 | | nnm1nn0 11334 |
. . . . . . . . . . 11
     |
| 83 | | bccl 13109 |
. . . . . . . . . . 11
   
       |
| 84 | 82, 70, 83 | syl2an 494 |
. . . . . . . . . 10
 
             |
| 85 | 84 | nn0cnd 11353 |
. . . . . . . . 9
 
             |
| 86 | 50 | adantr 481 |
. . . . . . . . . 10
 
         |
| 87 | | elfznn 12370 |
. . . . . . . . . . . . . . 15
         |
| 88 | 87 | adantl 482 |
. . . . . . . . . . . . . 14
 
         |
| 89 | 88 | nnred 11035 |
. . . . . . . . . . . . 13
 
         |
| 90 | 82 | adantr 481 |
. . . . . . . . . . . . . 14
 
           |
| 91 | 90 | nn0red 11352 |
. . . . . . . . . . . . 13
 
           |
| 92 | | nnre 11027 |
. . . . . . . . . . . . . 14
   |
| 93 | 92 | adantr 481 |
. . . . . . . . . . . . 13
 
         |
| 94 | | elfzle2 12345 |
. . . . . . . . . . . . . 14
           |
| 95 | 94 | adantl 482 |
. . . . . . . . . . . . 13
 
           |
| 96 | 93 | ltm1d 10956 |
. . . . . . . . . . . . 13
 
           |
| 97 | 89, 91, 93, 95, 96 | lelttrd 10195 |
. . . . . . . . . . . 12
 
         |
| 98 | | simpl 473 |
. . . . . . . . . . . . 13
 
         |
| 99 | | nnsub 11059 |
. . . . . . . . . . . . 13
 
       |
| 100 | 88, 98, 99 | syl2anc 693 |
. . . . . . . . . . . 12
 
             |
| 101 | 97, 100 | mpbid 222 |
. . . . . . . . . . 11
 
           |
| 102 | 101 | nncnd 11036 |
. . . . . . . . . 10
 
           |
| 103 | 101 | nnne0d 11065 |
. . . . . . . . . 10
 
           |
| 104 | 86, 102, 103 | divcld 10801 |
. . . . . . . . 9
 
             |
| 105 | 69, 85, 104 | fprodmul 14690 |
. . . . . . . 8
                                               |
| 106 | 69, 86, 102, 103 | fproddiv 14691 |
. . . . . . . . . 10
                                   |
| 107 | | fzfi 12771 |
. . . . . . . . . . . . 13
       |
| 108 | | fprodconst 14708 |
. . . . . . . . . . . . 13
       
                         |
| 109 | 107, 50, 108 | sylancr 695 |
. . . . . . . . . . . 12
                         |
| 110 | | hashfz1 13134 |
. . . . . . . . . . . . . 14
  
              |
| 111 | 82, 110 | syl 17 |
. . . . . . . . . . . . 13
               |
| 112 | 111 | oveq2d 6666 |
. . . . . . . . . . . 12
                       |
| 113 | 109, 112 | eqtr2d 2657 |
. . . . . . . . . . 11
                 |
| 114 | | fprodfac 14703 |
. . . . . . . . . . . . 13
  
      
         |
| 115 | 82, 114 | syl 17 |
. . . . . . . . . . . 12
                 |
| 116 | | nnz 11399 |
. . . . . . . . . . . . 13
   |
| 117 | | 1zzd 11408 |
. . . . . . . . . . . . 13
   |
| 118 | 82 | nn0zd 11480 |
. . . . . . . . . . . . 13
     |
| 119 | | elfznn 12370 |
. . . . . . . . . . . . . . 15
         |
| 120 | 119 | adantl 482 |
. . . . . . . . . . . . . 14
 
         |
| 121 | 120 | nncnd 11036 |
. . . . . . . . . . . . 13
 
         |
| 122 | | id 22 |
. . . . . . . . . . . . 13
       |
| 123 | 116, 117,
118, 121, 122 | fprodrev 14707 |
. . . . . . . . . . . 12
         
               |
| 124 | 50, 51 | nncand 10397 |
. . . . . . . . . . . . . 14
       |
| 125 | 124 | oveq1d 6665 |
. . . . . . . . . . . . 13
                   |
| 126 | 125 | prodeq1d 14651 |
. . . . . . . . . . . 12
               
           |
| 127 | 115, 123,
126 | 3eqtrd 2660 |
. . . . . . . . . . 11
                   |
| 128 | 113, 127 | oveq12d 6668 |
. . . . . . . . . 10
                                     |
| 129 | 106, 128 | eqtr4d 2659 |
. . . . . . . . 9
                             |
| 130 | 129 | oveq2d 6666 |
. . . . . . . 8
                            
                            |
| 131 | 81, 105, 130 | 3eqtrd 2660 |
. . . . . . 7
                                  
      |
| 132 | 68, 74, 131 | 3eqtrd 2660 |
. . . . . 6
                                      
      |
| 133 | 56, 65, 132 | 3eqtrd 2660 |
. . . . 5
                                        
      |
| 134 | 133 | adantr 481 |
. . . 4
                                                                      
      |
| 135 | 53 | prodeq1d 14651 |
. . . . . 6
                 
   
                 |
| 136 | | elfznn 12370 |
. . . . . . . . . 10
       |
| 137 | 136 | adantl 482 |
. . . . . . . . 9
 
       |
| 138 | 137 | nncnd 11036 |
. . . . . . . 8
 
       |
| 139 | 137 | nnne0d 11065 |
. . . . . . . 8
 
       |
| 140 | | 2nn 11185 |
. . . . . . . . . . . 12
 |
| 141 | 140 | a1i 11 |
. . . . . . . . . . 11
 
       |
| 142 | 141, 137 | nnmulcld 11068 |
. . . . . . . . . 10
 
         |
| 143 | 142 | nnzd 11481 |
. . . . . . . . 9
 
         |
| 144 | | peano2nn 11032 |
. . . . . . . . . . 11
     |
| 145 | 144 | adantr 481 |
. . . . . . . . . 10
 
         |
| 146 | 145 | nnzd 11481 |
. . . . . . . . 9
 
         |
| 147 | 143, 146 | zsubcld 11487 |
. . . . . . . 8
 
        
    |
| 148 | 138, 139,
147 | expclzd 13013 |
. . . . . . 7
 
                 |
| 149 | | id 22 |
. . . . . . . 8
   |
| 150 | | oveq2 6658 |
. . . . . . . . 9
       |
| 151 | 150 | oveq1d 6665 |
. . . . . . . 8
          
    |
| 152 | 149, 151 | oveq12d 6668 |
. . . . . . 7
                       |
| 153 | 58, 148, 152 | fprodm1 14697 |
. . . . . 6
             
                            
      |
| 154 | 88 | nncnd 11036 |
. . . . . . . . . . 11
 
         |
| 155 | 88 | nnne0d 11065 |
. . . . . . . . . . 11
 
         |
| 156 | 140 | a1i 11 |
. . . . . . . . . . . . . 14
 
         |
| 157 | 156, 88 | nnmulcld 11068 |
. . . . . . . . . . . . 13
 
           |
| 158 | 157 | nnzd 11481 |
. . . . . . . . . . . 12
 
           |
| 159 | 116 | adantr 481 |
. . . . . . . . . . . 12
 
         |
| 160 | 158, 159 | zsubcld 11487 |
. . . . . . . . . . 11
 
             |
| 161 | 154, 155,
160 | expclzd 13013 |
. . . . . . . . . 10
 
                 |
| 162 | 69, 161, 154, 155 | fproddiv 14691 |
. . . . . . . . 9
                                               |
| 163 | 157 | nncnd 11036 |
. . . . . . . . . . . . 13
 
           |
| 164 | | 1cnd 10056 |
. . . . . . . . . . . . 13
 
         |
| 165 | 163, 86, 164 | subsub4d 10423 |
. . . . . . . . . . . 12
 
                     |
| 166 | 165 | oveq2d 6666 |
. . . . . . . . . . 11
 
                             |
| 167 | 154, 155,
160 | expm1d 13018 |
. . . . . . . . . . 11
 
                             |
| 168 | 166, 167 | eqtr3d 2658 |
. . . . . . . . . 10
 
                             |
| 169 | 168 | prodeq2dv 14653 |
. . . . . . . . 9
               
   
                   |
| 170 | | fprodfac 14703 |
. . . . . . . . . . 11
  
      
         |
| 171 | 82, 170 | syl 17 |
. . . . . . . . . 10
                 |
| 172 | 171 | oveq2d 6666 |
. . . . . . . . 9
                     
                               |
| 173 | 162, 169,
172 | 3eqtr4d 2666 |
. . . . . . . 8
               
                             |
| 174 | 140 | a1i 11 |
. . . . . . . . . . . . 13
   |
| 175 | | id 22 |
. . . . . . . . . . . . 13
   |
| 176 | 174, 175 | nnmulcld 11068 |
. . . . . . . . . . . 12
     |
| 177 | 176 | nncnd 11036 |
. . . . . . . . . . 11
     |
| 178 | 177, 50, 51 | subsub4d 10423 |
. . . . . . . . . 10
          
    |
| 179 | 50 | 2timesd 11275 |
. . . . . . . . . . . . 13
       |
| 180 | 179 | oveq1d 6665 |
. . . . . . . . . . . 12
           |
| 181 | 50, 50 | pncand 10393 |
. . . . . . . . . . . 12
       |
| 182 | 180, 181 | eqtrd 2656 |
. . . . . . . . . . 11
       |
| 183 | 182 | oveq1d 6665 |
. . . . . . . . . 10
           |
| 184 | 178, 183 | eqtr3d 2658 |
. . . . . . . . 9
           |
| 185 | 184 | oveq2d 6666 |
. . . . . . . 8
                   |
| 186 | 173, 185 | oveq12d 6668 |
. . . . . . 7
                                                                 |
| 187 | 69, 161 | fprodcl 14682 |
. . . . . . . 8
                   |
| 188 | | faccl 13070 |
. . . . . . . . . 10
  
        |
| 189 | 82, 188 | syl 17 |
. . . . . . . . 9
         |
| 190 | 189 | nncnd 11036 |
. . . . . . . 8
         |
| 191 | 50, 82 | expcld 13008 |
. . . . . . . 8
         |
| 192 | 189 | nnne0d 11065 |
. . . . . . . 8
         |
| 193 | 187, 190,
191, 192 | div32d 10824 |
. . . . . . 7
                                                            
      |
| 194 | 186, 193 | eqtrd 2656 |
. . . . . 6
                                                          
      |
| 195 | 135, 153,
194 | 3eqtrd 2660 |
. . . . 5
                 
                              
      |
| 196 | 195 | adantr 481 |
. . . 4
                                               
                              
      |
| 197 | 49, 134, 196 | 3eqtr4d 2666 |
. . 3
                                               
                     |
| 198 | 197 | ex 450 |
. 2
                             
                                
      |
| 199 | 14, 24, 34, 44, 47, 198 | nnind 11038 |
1
             
                 |