| Step | Hyp | Ref | Expression | 
						
							| 1 |  | dvnprodlem2.s |  | 
						
							| 2 |  | dvnprodlem2.x |  | 
						
							| 3 |  | dvnprodlem2.t |  | 
						
							| 4 |  | dvnprodlem2.h |  | 
						
							| 5 |  | dvnprodlem2.n |  | 
						
							| 6 |  | dvnprodlem2.dvnh |  | 
						
							| 7 |  | dvnprodlem2.c |  | 
						
							| 8 |  | dvnprodlem2.r |  | 
						
							| 9 |  | dvnprodlem2.z |  | 
						
							| 10 |  | dvnprodlem2.ind |  | 
						
							| 11 |  | dvnprodlem2.j |  | 
						
							| 12 |  | dvnprodlem2.d |  | 
						
							| 13 |  | nfv |  | 
						
							| 14 |  | nfcv |  | 
						
							| 15 |  | ssfi |  | 
						
							| 16 | 3 8 15 | syl2anc |  | 
						
							| 17 | 16 | adantr |  | 
						
							| 18 | 9 | adantr |  | 
						
							| 19 | 9 | eldifbd |  | 
						
							| 20 | 19 | adantr |  | 
						
							| 21 |  | simpl |  | 
						
							| 22 | 8 | sselda |  | 
						
							| 23 | 21 22 4 | syl2anc |  | 
						
							| 24 | 23 | adantlr |  | 
						
							| 25 |  | simplr |  | 
						
							| 26 | 24 25 | ffvelcdmd |  | 
						
							| 27 |  | fveq2 |  | 
						
							| 28 | 27 | fveq1d |  | 
						
							| 29 |  | id |  | 
						
							| 30 |  | eldifi |  | 
						
							| 31 | 9 30 | syl |  | 
						
							| 32 |  | simpr |  | 
						
							| 33 |  | id |  | 
						
							| 34 |  | eleq1 |  | 
						
							| 35 | 34 | anbi2d |  | 
						
							| 36 | 27 | feq1d |  | 
						
							| 37 | 35 36 | imbi12d |  | 
						
							| 38 | 37 4 | vtoclg |  | 
						
							| 39 | 32 33 38 | sylc |  | 
						
							| 40 | 29 31 39 | syl2anc |  | 
						
							| 41 | 40 | adantr |  | 
						
							| 42 |  | simpr |  | 
						
							| 43 | 41 42 | ffvelcdmd |  | 
						
							| 44 | 13 14 17 18 20 26 28 43 | fprodsplitsn |  | 
						
							| 45 | 44 | mpteq2dva |  | 
						
							| 46 | 45 | oveq2d |  | 
						
							| 47 | 46 | fveq1d |  | 
						
							| 48 | 13 17 26 | fprodclf |  | 
						
							| 49 |  | elfznn0 |  | 
						
							| 50 | 11 49 | syl |  | 
						
							| 51 |  | eqid |  | 
						
							| 52 |  | eqid |  | 
						
							| 53 |  | oveq2 |  | 
						
							| 54 |  | rabeq |  | 
						
							| 55 | 53 54 | syl |  | 
						
							| 56 |  | sumeq1 |  | 
						
							| 57 | 56 | eqeq1d |  | 
						
							| 58 | 57 | rabbidv |  | 
						
							| 59 | 55 58 | eqtrd |  | 
						
							| 60 | 59 | mpteq2dv |  | 
						
							| 61 |  | ssexg |  | 
						
							| 62 | 8 3 61 | syl2anc |  | 
						
							| 63 |  | elpwg |  | 
						
							| 64 | 62 63 | syl |  | 
						
							| 65 | 8 64 | mpbird |  | 
						
							| 66 | 65 | adantr |  | 
						
							| 67 |  | nn0ex |  | 
						
							| 68 | 67 | mptex |  | 
						
							| 69 | 68 | a1i |  | 
						
							| 70 | 7 60 66 69 | fvmptd3 |  | 
						
							| 71 |  | oveq2 |  | 
						
							| 72 | 71 | oveq1d |  | 
						
							| 73 |  | rabeq |  | 
						
							| 74 | 72 73 | syl |  | 
						
							| 75 |  | eqeq2 |  | 
						
							| 76 | 75 | rabbidv |  | 
						
							| 77 | 74 76 | eqtrd |  | 
						
							| 78 | 77 | adantl |  | 
						
							| 79 |  | elfznn0 |  | 
						
							| 80 | 79 | adantl |  | 
						
							| 81 |  | fzfid |  | 
						
							| 82 |  | mapfi |  | 
						
							| 83 | 81 16 82 | syl2anc |  | 
						
							| 84 | 83 | adantr |  | 
						
							| 85 |  | ssrab2 |  | 
						
							| 86 | 85 | a1i |  | 
						
							| 87 | 84 86 | ssexd |  | 
						
							| 88 | 70 78 80 87 | fvmptd |  | 
						
							| 89 |  | ssfi |  | 
						
							| 90 | 83 85 89 | sylancl |  | 
						
							| 91 | 90 | adantr |  | 
						
							| 92 | 88 91 | eqeltrd |  | 
						
							| 93 | 92 | adantr |  | 
						
							| 94 | 79 | faccld |  | 
						
							| 95 | 94 | nncnd |  | 
						
							| 96 | 95 | ad2antlr |  | 
						
							| 97 | 16 | adantr |  | 
						
							| 98 | 97 | adantlr |  | 
						
							| 99 |  | elfznn0 |  | 
						
							| 100 | 99 | ssriv |  | 
						
							| 101 | 100 | a1i |  | 
						
							| 102 |  | simpr |  | 
						
							| 103 | 88 | eleq2d |  | 
						
							| 104 | 103 | adantr |  | 
						
							| 105 | 102 104 | mpbid |  | 
						
							| 106 | 85 | sseli |  | 
						
							| 107 | 105 106 | syl |  | 
						
							| 108 |  | elmapi |  | 
						
							| 109 | 107 108 | syl |  | 
						
							| 110 | 109 | adantr |  | 
						
							| 111 |  | simpr |  | 
						
							| 112 | 110 111 | ffvelcdmd |  | 
						
							| 113 | 101 112 | sseldd |  | 
						
							| 114 | 113 | faccld |  | 
						
							| 115 | 114 | nncnd |  | 
						
							| 116 | 98 115 | fprodcl |  | 
						
							| 117 | 114 | nnne0d |  | 
						
							| 118 | 98 115 117 | fprodn0 |  | 
						
							| 119 | 96 116 118 | divcld |  | 
						
							| 120 | 119 | adantlr |  | 
						
							| 121 | 98 | adantlr |  | 
						
							| 122 | 29 | ad4antr |  | 
						
							| 123 | 122 22 | sylancom |  | 
						
							| 124 |  | elfzuz3 |  | 
						
							| 125 |  | fzss2 |  | 
						
							| 126 | 124 125 | syl |  | 
						
							| 127 | 126 | adantl |  | 
						
							| 128 | 50 | nn0zd |  | 
						
							| 129 | 5 | nn0zd |  | 
						
							| 130 |  | elfzle2 |  | 
						
							| 131 | 11 130 | syl |  | 
						
							| 132 | 128 129 131 | 3jca |  | 
						
							| 133 |  | eluz2 |  | 
						
							| 134 | 132 133 | sylibr |  | 
						
							| 135 |  | fzss2 |  | 
						
							| 136 | 134 135 | syl |  | 
						
							| 137 | 136 | adantr |  | 
						
							| 138 | 127 137 | sstrd |  | 
						
							| 139 | 138 | ad2antrr |  | 
						
							| 140 | 139 112 | sseldd |  | 
						
							| 141 | 140 | adantllr |  | 
						
							| 142 |  | fvex |  | 
						
							| 143 |  | eleq1 |  | 
						
							| 144 | 143 | 3anbi3d |  | 
						
							| 145 |  | fveq2 |  | 
						
							| 146 | 145 | feq1d |  | 
						
							| 147 | 144 146 | imbi12d |  | 
						
							| 148 | 142 147 6 | vtocl |  | 
						
							| 149 | 122 123 141 148 | syl3anc |  | 
						
							| 150 |  | simpllr |  | 
						
							| 151 | 149 150 | ffvelcdmd |  | 
						
							| 152 | 121 151 | fprodcl |  | 
						
							| 153 | 120 152 | mulcld |  | 
						
							| 154 | 93 153 | fsumcl |  | 
						
							| 155 | 154 | fmpttd |  | 
						
							| 156 | 10 | adantr |  | 
						
							| 157 |  | 0zd |  | 
						
							| 158 | 129 | adantr |  | 
						
							| 159 |  | elfzelz |  | 
						
							| 160 | 159 | adantl |  | 
						
							| 161 |  | elfzle1 |  | 
						
							| 162 | 161 | adantl |  | 
						
							| 163 | 160 | zred |  | 
						
							| 164 | 50 | nn0red |  | 
						
							| 165 | 164 | adantr |  | 
						
							| 166 | 158 | zred |  | 
						
							| 167 |  | elfzle2 |  | 
						
							| 168 | 167 | adantl |  | 
						
							| 169 | 131 | adantr |  | 
						
							| 170 | 163 165 166 168 169 | letrd |  | 
						
							| 171 | 157 158 160 162 170 | elfzd |  | 
						
							| 172 |  | rspa |  | 
						
							| 173 | 156 171 172 | syl2anc |  | 
						
							| 174 | 173 | feq1d |  | 
						
							| 175 | 155 174 | mpbird |  | 
						
							| 176 | 31 | adantr |  | 
						
							| 177 |  | simpl |  | 
						
							| 178 | 177 176 171 | 3jca |  | 
						
							| 179 | 34 | 3anbi2d |  | 
						
							| 180 | 27 | oveq2d |  | 
						
							| 181 | 180 | fveq1d |  | 
						
							| 182 | 181 | feq1d |  | 
						
							| 183 | 179 182 | imbi12d |  | 
						
							| 184 |  | eleq1 |  | 
						
							| 185 | 184 | 3anbi3d |  | 
						
							| 186 |  | fveq2 |  | 
						
							| 187 | 186 | feq1d |  | 
						
							| 188 | 185 187 | imbi12d |  | 
						
							| 189 | 188 6 | chvarvv |  | 
						
							| 190 | 183 189 | vtoclg |  | 
						
							| 191 | 176 178 190 | sylc |  | 
						
							| 192 | 40 | feqmptd |  | 
						
							| 193 | 192 | eqcomd |  | 
						
							| 194 | 193 | oveq2d |  | 
						
							| 195 | 194 | fveq1d |  | 
						
							| 196 | 195 | adantr |  | 
						
							| 197 | 196 | feq1d |  | 
						
							| 198 | 191 197 | mpbird |  | 
						
							| 199 |  | fveq2 |  | 
						
							| 200 | 199 | prodeq2ad |  | 
						
							| 201 | 200 | cbvmptv |  | 
						
							| 202 | 201 | oveq2i |  | 
						
							| 203 | 202 | fveq1i |  | 
						
							| 204 | 203 | mpteq2i |  | 
						
							| 205 |  | fveq2 |  | 
						
							| 206 | 205 | cbvmptv |  | 
						
							| 207 | 206 | oveq2i |  | 
						
							| 208 | 207 | fveq1i |  | 
						
							| 209 | 208 | mpteq2i |  | 
						
							| 210 | 1 2 48 43 50 51 52 175 198 204 209 | dvnmul |  | 
						
							| 211 | 203 | a1i |  | 
						
							| 212 | 10 | r19.21bi |  | 
						
							| 213 | 177 171 212 | syl2anc |  | 
						
							| 214 | 211 213 | eqtrd |  | 
						
							| 215 | 214 | mpteq2dva |  | 
						
							| 216 |  | mptexg |  | 
						
							| 217 | 2 216 | syl |  | 
						
							| 218 | 217 | adantr |  | 
						
							| 219 | 215 218 | fvmpt2d |  | 
						
							| 220 | 219 | adantlr |  | 
						
							| 221 | 220 | fveq1d |  | 
						
							| 222 | 42 | adantr |  | 
						
							| 223 | 154 | an32s |  | 
						
							| 224 |  | eqid |  | 
						
							| 225 | 224 | fvmpt2 |  | 
						
							| 226 | 222 223 225 | syl2anc |  | 
						
							| 227 | 221 226 | eqtrd |  | 
						
							| 228 |  | fveq2 |  | 
						
							| 229 | 228 | cbvmptv |  | 
						
							| 230 | 229 | a1i |  | 
						
							| 231 | 207 194 | eqtrid |  | 
						
							| 232 | 231 | fveq1d |  | 
						
							| 233 | 232 | mpteq2dv |  | 
						
							| 234 | 230 233 | eqtrd |  | 
						
							| 235 | 234 | adantr |  | 
						
							| 236 |  | fveq2 |  | 
						
							| 237 | 236 | adantl |  | 
						
							| 238 |  | 0zd |  | 
						
							| 239 |  | elfzel2 |  | 
						
							| 240 | 239 159 | zsubcld |  | 
						
							| 241 | 238 239 240 | 3jca |  | 
						
							| 242 | 239 | zred |  | 
						
							| 243 | 79 | nn0red |  | 
						
							| 244 | 242 243 | subge0d |  | 
						
							| 245 | 167 244 | mpbird |  | 
						
							| 246 | 242 243 | subge02d |  | 
						
							| 247 | 161 246 | mpbid |  | 
						
							| 248 | 241 245 247 | jca32 |  | 
						
							| 249 | 248 | adantl |  | 
						
							| 250 |  | elfz2 |  | 
						
							| 251 | 249 250 | sylibr |  | 
						
							| 252 |  | fvex |  | 
						
							| 253 | 252 | a1i |  | 
						
							| 254 | 235 237 251 253 | fvmptd |  | 
						
							| 255 | 254 | adantlr |  | 
						
							| 256 | 255 | fveq1d |  | 
						
							| 257 | 227 256 | oveq12d |  | 
						
							| 258 | 257 | oveq2d |  | 
						
							| 259 | 92 | adantlr |  | 
						
							| 260 |  | ovex |  | 
						
							| 261 |  | eleq1 |  | 
						
							| 262 | 261 | anbi2d |  | 
						
							| 263 | 236 | feq1d |  | 
						
							| 264 | 262 263 | imbi12d |  | 
						
							| 265 |  | eleq1 |  | 
						
							| 266 | 265 | anbi2d |  | 
						
							| 267 |  | fveq2 |  | 
						
							| 268 | 267 | feq1d |  | 
						
							| 269 | 266 268 | imbi12d |  | 
						
							| 270 | 269 191 | chvarvv |  | 
						
							| 271 | 260 264 270 | vtocl |  | 
						
							| 272 | 177 251 271 | syl2anc |  | 
						
							| 273 | 272 | adantlr |  | 
						
							| 274 | 273 222 | ffvelcdmd |  | 
						
							| 275 |  | anass |  | 
						
							| 276 |  | ancom |  | 
						
							| 277 | 276 | anbi2i |  | 
						
							| 278 |  | anass |  | 
						
							| 279 | 278 | bicomi |  | 
						
							| 280 | 277 279 | bitri |  | 
						
							| 281 | 275 280 | bitri |  | 
						
							| 282 | 281 | anbi1i |  | 
						
							| 283 | 282 | imbi1i |  | 
						
							| 284 | 153 283 | mpbi |  | 
						
							| 285 | 259 274 284 | fsummulc1 |  | 
						
							| 286 | 285 | oveq2d |  | 
						
							| 287 | 177 50 | syl |  | 
						
							| 288 | 287 160 | bccld |  | 
						
							| 289 | 288 | nn0cnd |  | 
						
							| 290 | 289 | adantlr |  | 
						
							| 291 | 274 | adantr |  | 
						
							| 292 | 284 291 | mulcld |  | 
						
							| 293 | 259 290 292 | fsummulc2 |  | 
						
							| 294 | 258 286 293 | 3eqtrd |  | 
						
							| 295 | 294 | sumeq2dv |  | 
						
							| 296 |  | vex |  | 
						
							| 297 |  | vex |  | 
						
							| 298 | 296 297 | op1std |  | 
						
							| 299 | 298 | oveq2d |  | 
						
							| 300 | 298 | fveq2d |  | 
						
							| 301 | 296 297 | op2ndd |  | 
						
							| 302 | 301 | fveq1d |  | 
						
							| 303 | 302 | fveq2d |  | 
						
							| 304 | 303 | prodeq2ad |  | 
						
							| 305 | 300 304 | oveq12d |  | 
						
							| 306 | 302 | fveq2d |  | 
						
							| 307 | 306 | fveq1d |  | 
						
							| 308 | 307 | prodeq2ad |  | 
						
							| 309 | 305 308 | oveq12d |  | 
						
							| 310 | 298 | oveq2d |  | 
						
							| 311 | 310 | fveq2d |  | 
						
							| 312 | 311 | fveq1d |  | 
						
							| 313 | 309 312 | oveq12d |  | 
						
							| 314 | 299 313 | oveq12d |  | 
						
							| 315 |  | fzfid |  | 
						
							| 316 | 290 | adantrr |  | 
						
							| 317 | 292 | anasss |  | 
						
							| 318 | 316 317 | mulcld |  | 
						
							| 319 | 314 315 259 318 | fsum2d |  | 
						
							| 320 |  | ovex |  | 
						
							| 321 | 297 | resex |  | 
						
							| 322 | 320 321 | op1std |  | 
						
							| 323 | 322 | oveq2d |  | 
						
							| 324 | 322 | fveq2d |  | 
						
							| 325 | 320 321 | op2ndd |  | 
						
							| 326 | 325 | fveq1d |  | 
						
							| 327 | 326 | fveq2d |  | 
						
							| 328 | 327 | prodeq2ad |  | 
						
							| 329 | 324 328 | oveq12d |  | 
						
							| 330 | 326 | fveq2d |  | 
						
							| 331 | 330 | fveq1d |  | 
						
							| 332 | 331 | prodeq2ad |  | 
						
							| 333 | 329 332 | oveq12d |  | 
						
							| 334 | 322 | oveq2d |  | 
						
							| 335 | 334 | fveq2d |  | 
						
							| 336 | 335 | fveq1d |  | 
						
							| 337 | 333 336 | oveq12d |  | 
						
							| 338 | 323 337 | oveq12d |  | 
						
							| 339 |  | oveq2 |  | 
						
							| 340 |  | rabeq |  | 
						
							| 341 | 339 340 | syl |  | 
						
							| 342 |  | sumeq1 |  | 
						
							| 343 | 342 | eqeq1d |  | 
						
							| 344 | 343 | rabbidv |  | 
						
							| 345 | 341 344 | eqtrd |  | 
						
							| 346 | 345 | mpteq2dv |  | 
						
							| 347 | 31 | snssd |  | 
						
							| 348 | 8 347 | unssd |  | 
						
							| 349 | 3 348 | ssexd |  | 
						
							| 350 |  | elpwg |  | 
						
							| 351 | 349 350 | syl |  | 
						
							| 352 | 348 351 | mpbird |  | 
						
							| 353 | 67 | mptex |  | 
						
							| 354 | 353 | a1i |  | 
						
							| 355 | 7 346 352 354 | fvmptd3 |  | 
						
							| 356 |  | oveq2 |  | 
						
							| 357 | 356 | oveq1d |  | 
						
							| 358 |  | rabeq |  | 
						
							| 359 | 357 358 | syl |  | 
						
							| 360 |  | eqeq2 |  | 
						
							| 361 | 360 | rabbidv |  | 
						
							| 362 | 359 361 | eqtrd |  | 
						
							| 363 | 362 | adantl |  | 
						
							| 364 |  | ovex |  | 
						
							| 365 | 364 | rabex |  | 
						
							| 366 | 365 | a1i |  | 
						
							| 367 | 355 363 50 366 | fvmptd |  | 
						
							| 368 |  | fzfid |  | 
						
							| 369 |  | snfi |  | 
						
							| 370 | 369 | a1i |  | 
						
							| 371 |  | unfi |  | 
						
							| 372 | 16 370 371 | syl2anc |  | 
						
							| 373 |  | mapfi |  | 
						
							| 374 | 368 372 373 | syl2anc |  | 
						
							| 375 |  | ssrab2 |  | 
						
							| 376 | 375 | a1i |  | 
						
							| 377 |  | ssfi |  | 
						
							| 378 | 374 376 377 | syl2anc |  | 
						
							| 379 | 367 378 | eqeltrd |  | 
						
							| 380 | 379 | adantr |  | 
						
							| 381 | 7 50 12 3 31 19 348 | dvnprodlem1 |  | 
						
							| 382 | 381 | adantr |  | 
						
							| 383 |  | simpr |  | 
						
							| 384 |  | opex |  | 
						
							| 385 | 384 | a1i |  | 
						
							| 386 | 12 | fvmpt2 |  | 
						
							| 387 | 383 385 386 | syl2anc |  | 
						
							| 388 | 387 | adantlr |  | 
						
							| 389 | 50 | adantr |  | 
						
							| 390 |  | eliun |  | 
						
							| 391 | 390 | biimpi |  | 
						
							| 392 | 391 | adantl |  | 
						
							| 393 |  | nfv |  | 
						
							| 394 |  | nfcv |  | 
						
							| 395 |  | nfiu1 |  | 
						
							| 396 | 394 395 | nfel |  | 
						
							| 397 | 393 396 | nfan |  | 
						
							| 398 |  | nfv |  | 
						
							| 399 |  | xp1st |  | 
						
							| 400 |  | elsni |  | 
						
							| 401 | 399 400 | syl |  | 
						
							| 402 | 401 | adantl |  | 
						
							| 403 |  | simpl |  | 
						
							| 404 | 402 403 | eqeltrd |  | 
						
							| 405 | 404 | ex |  | 
						
							| 406 | 405 | a1i |  | 
						
							| 407 | 397 398 406 | rexlimd |  | 
						
							| 408 | 392 407 | mpd |  | 
						
							| 409 |  | elfzelz |  | 
						
							| 410 | 408 409 | syl |  | 
						
							| 411 | 389 410 | bccld |  | 
						
							| 412 | 411 | nn0cnd |  | 
						
							| 413 | 412 | adantlr |  | 
						
							| 414 |  | elfznn0 |  | 
						
							| 415 | 408 414 | syl |  | 
						
							| 416 | 415 | faccld |  | 
						
							| 417 | 416 | nncnd |  | 
						
							| 418 | 417 | adantlr |  | 
						
							| 419 | 16 | adantr |  | 
						
							| 420 |  | nfv |  | 
						
							| 421 | 88 86 | eqsstrd |  | 
						
							| 422 |  | ovex |  | 
						
							| 423 | 422 | a1i |  | 
						
							| 424 |  | mapss |  | 
						
							| 425 | 423 126 424 | syl2anc |  | 
						
							| 426 | 425 | adantl |  | 
						
							| 427 | 421 426 | sstrd |  | 
						
							| 428 | 427 | 3adant3 |  | 
						
							| 429 |  | xp2nd |  | 
						
							| 430 | 429 | 3ad2ant3 |  | 
						
							| 431 | 428 430 | sseldd |  | 
						
							| 432 |  | elmapi |  | 
						
							| 433 | 431 432 | syl |  | 
						
							| 434 | 433 | 3exp |  | 
						
							| 435 | 434 | adantr |  | 
						
							| 436 | 397 420 435 | rexlimd |  | 
						
							| 437 | 392 436 | mpd |  | 
						
							| 438 | 437 | ffvelcdmda |  | 
						
							| 439 |  | elfznn0 |  | 
						
							| 440 | 439 | faccld |  | 
						
							| 441 | 440 | nncnd |  | 
						
							| 442 | 438 441 | syl |  | 
						
							| 443 | 419 442 | fprodcl |  | 
						
							| 444 | 443 | adantlr |  | 
						
							| 445 | 438 440 | syl |  | 
						
							| 446 |  | nnne0 |  | 
						
							| 447 | 445 446 | syl |  | 
						
							| 448 | 419 442 447 | fprodn0 |  | 
						
							| 449 | 448 | adantlr |  | 
						
							| 450 | 418 444 449 | divcld |  | 
						
							| 451 | 17 | adantr |  | 
						
							| 452 |  | simpll |  | 
						
							| 453 | 452 22 | sylancom |  | 
						
							| 454 | 452 136 | syl |  | 
						
							| 455 | 454 438 | sseldd |  | 
						
							| 456 | 452 453 455 | 3jca |  | 
						
							| 457 |  | eleq1 |  | 
						
							| 458 | 457 | 3anbi3d |  | 
						
							| 459 |  | fveq2 |  | 
						
							| 460 | 459 | feq1d |  | 
						
							| 461 | 458 460 | imbi12d |  | 
						
							| 462 | 461 6 | vtoclg |  | 
						
							| 463 | 438 456 462 | sylc |  | 
						
							| 464 | 463 | adantllr |  | 
						
							| 465 | 25 | adantlr |  | 
						
							| 466 | 464 465 | ffvelcdmd |  | 
						
							| 467 | 451 466 | fprodcl |  | 
						
							| 468 | 450 467 | mulcld |  | 
						
							| 469 |  | nfv |  | 
						
							| 470 |  | simp1 |  | 
						
							| 471 | 404 | 3adant1 |  | 
						
							| 472 |  | fznn0sub2 |  | 
						
							| 473 | 472 | adantl |  | 
						
							| 474 | 470 471 473 | syl2anc |  | 
						
							| 475 | 474 | 3exp |  | 
						
							| 476 | 475 | adantr |  | 
						
							| 477 | 397 469 476 | rexlimd |  | 
						
							| 478 | 392 477 | mpd |  | 
						
							| 479 |  | simpl |  | 
						
							| 480 | 479 31 | syl |  | 
						
							| 481 | 479 136 | syl |  | 
						
							| 482 | 481 478 | sseldd |  | 
						
							| 483 | 479 480 482 | 3jca |  | 
						
							| 484 |  | eleq1 |  | 
						
							| 485 | 484 | 3anbi3d |  | 
						
							| 486 |  | fveq2 |  | 
						
							| 487 | 486 | feq1d |  | 
						
							| 488 | 485 487 | imbi12d |  | 
						
							| 489 |  | simp2 |  | 
						
							| 490 |  | id |  | 
						
							| 491 | 34 | 3anbi2d |  | 
						
							| 492 | 180 | fveq1d |  | 
						
							| 493 | 492 | feq1d |  | 
						
							| 494 | 491 493 | imbi12d |  | 
						
							| 495 | 494 6 | vtoclg |  | 
						
							| 496 | 489 490 495 | sylc |  | 
						
							| 497 | 488 496 | vtoclg |  | 
						
							| 498 | 478 483 497 | sylc |  | 
						
							| 499 | 498 | adantlr |  | 
						
							| 500 | 42 | adantr |  | 
						
							| 501 | 499 500 | ffvelcdmd |  | 
						
							| 502 | 468 501 | mulcld |  | 
						
							| 503 | 413 502 | mulcld |  | 
						
							| 504 | 338 380 382 388 503 | fsumf1o |  | 
						
							| 505 |  | simpl |  | 
						
							| 506 | 367 | adantr |  | 
						
							| 507 | 383 506 | eleqtrd |  | 
						
							| 508 | 375 | sseli |  | 
						
							| 509 | 507 508 | syl |  | 
						
							| 510 |  | elmapi |  | 
						
							| 511 | 509 510 | syl |  | 
						
							| 512 |  | snidg |  | 
						
							| 513 | 31 512 | syl |  | 
						
							| 514 |  | elun2 |  | 
						
							| 515 | 513 514 | syl |  | 
						
							| 516 | 515 | adantr |  | 
						
							| 517 | 511 516 | ffvelcdmd |  | 
						
							| 518 |  | 0zd |  | 
						
							| 519 | 128 | adantr |  | 
						
							| 520 |  | fzssz |  | 
						
							| 521 | 520 | sseli |  | 
						
							| 522 | 521 | adantl |  | 
						
							| 523 | 519 522 | zsubcld |  | 
						
							| 524 |  | elfzle2 |  | 
						
							| 525 | 524 | adantl |  | 
						
							| 526 | 164 | adantr |  | 
						
							| 527 | 522 | zred |  | 
						
							| 528 | 526 527 | subge0d |  | 
						
							| 529 | 525 528 | mpbird |  | 
						
							| 530 |  | elfzle1 |  | 
						
							| 531 | 530 | adantl |  | 
						
							| 532 | 526 527 | subge02d |  | 
						
							| 533 | 531 532 | mpbid |  | 
						
							| 534 | 518 519 523 529 533 | elfzd |  | 
						
							| 535 | 505 517 534 | syl2anc |  | 
						
							| 536 |  | bcval2 |  | 
						
							| 537 | 535 536 | syl |  | 
						
							| 538 | 164 | recnd |  | 
						
							| 539 | 538 | adantr |  | 
						
							| 540 |  | zsscn |  | 
						
							| 541 | 520 540 | sstri |  | 
						
							| 542 | 541 | a1i |  | 
						
							| 543 | 542 517 | sseldd |  | 
						
							| 544 | 539 543 | nncand |  | 
						
							| 545 | 544 | fveq2d |  | 
						
							| 546 | 545 | oveq1d |  | 
						
							| 547 | 546 | oveq2d |  | 
						
							| 548 | 50 | faccld |  | 
						
							| 549 | 548 | nncnd |  | 
						
							| 550 | 549 | adantr |  | 
						
							| 551 |  | elfznn0 |  | 
						
							| 552 | 517 551 | syl |  | 
						
							| 553 | 552 | faccld |  | 
						
							| 554 | 553 | nncnd |  | 
						
							| 555 |  | elfznn0 |  | 
						
							| 556 | 535 555 | syl |  | 
						
							| 557 | 556 | faccld |  | 
						
							| 558 | 557 | nncnd |  | 
						
							| 559 | 553 | nnne0d |  | 
						
							| 560 | 557 | nnne0d |  | 
						
							| 561 | 550 554 558 559 560 | divdiv1d |  | 
						
							| 562 | 561 | eqcomd |  | 
						
							| 563 | 537 547 562 | 3eqtrd |  | 
						
							| 564 | 563 | adantlr |  | 
						
							| 565 |  | fvres |  | 
						
							| 566 | 565 | fveq2d |  | 
						
							| 567 | 566 | prodeq2i |  | 
						
							| 568 | 567 | oveq2i |  | 
						
							| 569 | 565 | fveq2d |  | 
						
							| 570 | 569 | fveq1d |  | 
						
							| 571 | 570 | prodeq2i |  | 
						
							| 572 | 568 571 | oveq12i |  | 
						
							| 573 | 572 | a1i |  | 
						
							| 574 | 573 | adantlr |  | 
						
							| 575 | 558 | adantlr |  | 
						
							| 576 | 505 16 | syl |  | 
						
							| 577 | 79 | ssriv |  | 
						
							| 578 | 577 | a1i |  | 
						
							| 579 | 511 | adantr |  | 
						
							| 580 |  | elun1 |  | 
						
							| 581 | 580 | adantl |  | 
						
							| 582 | 579 581 | ffvelcdmd |  | 
						
							| 583 | 578 582 | sseldd |  | 
						
							| 584 | 583 | faccld |  | 
						
							| 585 | 584 | nncnd |  | 
						
							| 586 | 576 585 | fprodcl |  | 
						
							| 587 | 586 | adantlr |  | 
						
							| 588 | 17 | adantr |  | 
						
							| 589 | 505 | adantr |  | 
						
							| 590 | 505 22 | sylan |  | 
						
							| 591 | 589 136 | syl |  | 
						
							| 592 | 591 582 | sseldd |  | 
						
							| 593 | 589 590 592 148 | syl3anc |  | 
						
							| 594 | 593 | adantllr |  | 
						
							| 595 | 25 | adantlr |  | 
						
							| 596 | 594 595 | ffvelcdmd |  | 
						
							| 597 | 588 596 | fprodcl |  | 
						
							| 598 | 576 584 | fprodnncl |  | 
						
							| 599 |  | nnne0 |  | 
						
							| 600 | 598 599 | syl |  | 
						
							| 601 | 600 | adantlr |  | 
						
							| 602 | 575 587 597 601 | div32d |  | 
						
							| 603 | 574 602 | eqtrd |  | 
						
							| 604 | 544 | fveq2d |  | 
						
							| 605 | 604 | fveq1d |  | 
						
							| 606 | 605 | adantlr |  | 
						
							| 607 | 603 606 | oveq12d |  | 
						
							| 608 | 597 587 601 | divcld |  | 
						
							| 609 | 505 31 | syl |  | 
						
							| 610 | 505 136 | syl |  | 
						
							| 611 | 610 517 | sseldd |  | 
						
							| 612 | 505 609 611 | 3jca |  | 
						
							| 613 |  | eleq1 |  | 
						
							| 614 | 613 | 3anbi3d |  | 
						
							| 615 |  | fveq2 |  | 
						
							| 616 | 615 | feq1d |  | 
						
							| 617 | 614 616 | imbi12d |  | 
						
							| 618 | 617 496 | vtoclg |  | 
						
							| 619 | 517 612 618 | sylc |  | 
						
							| 620 | 619 | adantlr |  | 
						
							| 621 | 42 | adantr |  | 
						
							| 622 | 620 621 | ffvelcdmd |  | 
						
							| 623 | 575 608 622 | mulassd |  | 
						
							| 624 | 607 623 | eqtrd |  | 
						
							| 625 | 564 624 | oveq12d |  | 
						
							| 626 | 549 | ad2antrr |  | 
						
							| 627 | 554 | adantlr |  | 
						
							| 628 | 559 | adantlr |  | 
						
							| 629 | 626 627 628 | divcld |  | 
						
							| 630 | 608 622 | mulcld |  | 
						
							| 631 | 560 | adantlr |  | 
						
							| 632 | 629 575 630 631 | dmmcand |  | 
						
							| 633 | 597 622 587 601 | div23d |  | 
						
							| 634 | 633 | eqcomd |  | 
						
							| 635 |  | nfv |  | 
						
							| 636 |  | nfcv |  | 
						
							| 637 | 609 | adantlr |  | 
						
							| 638 | 20 | adantr |  | 
						
							| 639 |  | fveq2 |  | 
						
							| 640 | 180 639 | fveq12d |  | 
						
							| 641 | 640 | fveq1d |  | 
						
							| 642 | 635 636 588 637 638 596 641 622 | fprodsplitsn |  | 
						
							| 643 | 642 | eqcomd |  | 
						
							| 644 | 643 | oveq1d |  | 
						
							| 645 | 634 644 | eqtrd |  | 
						
							| 646 | 645 | oveq2d |  | 
						
							| 647 | 588 369 371 | sylancl |  | 
						
							| 648 | 505 | adantr |  | 
						
							| 649 | 348 | sselda |  | 
						
							| 650 | 649 | adantlr |  | 
						
							| 651 | 511 610 | fssd |  | 
						
							| 652 | 651 | ffvelcdmda |  | 
						
							| 653 | 648 650 652 148 | syl3anc |  | 
						
							| 654 | 653 | adantllr |  | 
						
							| 655 | 621 | adantr |  | 
						
							| 656 | 654 655 | ffvelcdmd |  | 
						
							| 657 | 647 656 | fprodcl |  | 
						
							| 658 | 626 627 657 587 628 601 | divmuldivd |  | 
						
							| 659 | 554 586 | mulcomd |  | 
						
							| 660 |  | nfv |  | 
						
							| 661 |  | nfcv |  | 
						
							| 662 | 505 19 | syl |  | 
						
							| 663 | 639 | fveq2d |  | 
						
							| 664 | 660 661 576 609 662 585 663 554 | fprodsplitsn |  | 
						
							| 665 | 664 | eqcomd |  | 
						
							| 666 | 659 665 | eqtrd |  | 
						
							| 667 | 666 | oveq2d |  | 
						
							| 668 | 667 | adantlr |  | 
						
							| 669 | 505 372 | syl |  | 
						
							| 670 | 577 | a1i |  | 
						
							| 671 | 511 | ffvelcdmda |  | 
						
							| 672 | 670 671 | sseldd |  | 
						
							| 673 | 672 | faccld |  | 
						
							| 674 | 673 | nncnd |  | 
						
							| 675 | 669 674 | fprodcl |  | 
						
							| 676 | 675 | adantlr |  | 
						
							| 677 | 673 | nnne0d |  | 
						
							| 678 | 669 674 677 | fprodn0 |  | 
						
							| 679 | 678 | adantlr |  | 
						
							| 680 | 626 657 676 679 | div23d |  | 
						
							| 681 |  | eqidd |  | 
						
							| 682 | 668 680 681 | 3eqtrd |  | 
						
							| 683 | 646 658 682 | 3eqtrd |  | 
						
							| 684 | 625 632 683 | 3eqtrd |  | 
						
							| 685 | 684 | sumeq2dv |  | 
						
							| 686 | 504 685 | eqtrd |  | 
						
							| 687 | 295 319 686 | 3eqtrd |  | 
						
							| 688 | 687 | mpteq2dva |  | 
						
							| 689 | 47 210 688 | 3eqtrd |  |