| Step | Hyp | Ref | Expression | 
						
							| 1 |  | etransclem31.s |  |-  ( ph -> S e. { RR , CC } ) | 
						
							| 2 |  | etransclem31.x |  |-  ( ph -> X e. ( ( TopOpen ` CCfld ) |`t S ) ) | 
						
							| 3 |  | etransclem31.p |  |-  ( ph -> P e. NN ) | 
						
							| 4 |  | etransclem31.m |  |-  ( ph -> M e. NN0 ) | 
						
							| 5 |  | etransclem31.f |  |-  F = ( x e. X |-> ( ( x ^ ( P - 1 ) ) x. prod_ j e. ( 1 ... M ) ( ( x - j ) ^ P ) ) ) | 
						
							| 6 |  | etransclem31.n |  |-  ( ph -> N e. NN0 ) | 
						
							| 7 |  | etransclem31.h |  |-  H = ( j e. ( 0 ... M ) |-> ( x e. X |-> ( ( x - j ) ^ if ( j = 0 , ( P - 1 ) , P ) ) ) ) | 
						
							| 8 |  | etransclem31.c |  |-  C = ( n e. NN0 |-> { c e. ( ( 0 ... n ) ^m ( 0 ... M ) ) | sum_ j e. ( 0 ... M ) ( c ` j ) = n } ) | 
						
							| 9 |  | etransclem31.y |  |-  ( ph -> Y e. X ) | 
						
							| 10 | 1 2 3 4 5 6 7 8 | etransclem30 |  |-  ( ph -> ( ( S Dn F ) ` N ) = ( x e. X |-> sum_ c e. ( C ` N ) ( ( ( ! ` N ) / prod_ j e. ( 0 ... M ) ( ! ` ( c ` j ) ) ) x. prod_ j e. ( 0 ... M ) ( ( ( S Dn ( H ` j ) ) ` ( c ` j ) ) ` x ) ) ) ) | 
						
							| 11 |  | fveq2 |  |-  ( x = Y -> ( ( ( S Dn ( H ` j ) ) ` ( c ` j ) ) ` x ) = ( ( ( S Dn ( H ` j ) ) ` ( c ` j ) ) ` Y ) ) | 
						
							| 12 | 11 | prodeq2ad |  |-  ( x = Y -> prod_ j e. ( 0 ... M ) ( ( ( S Dn ( H ` j ) ) ` ( c ` j ) ) ` x ) = prod_ j e. ( 0 ... M ) ( ( ( S Dn ( H ` j ) ) ` ( c ` j ) ) ` Y ) ) | 
						
							| 13 | 12 | oveq2d |  |-  ( x = Y -> ( ( ( ! ` N ) / prod_ j e. ( 0 ... M ) ( ! ` ( c ` j ) ) ) x. prod_ j e. ( 0 ... M ) ( ( ( S Dn ( H ` j ) ) ` ( c ` j ) ) ` x ) ) = ( ( ( ! ` N ) / prod_ j e. ( 0 ... M ) ( ! ` ( c ` j ) ) ) x. prod_ j e. ( 0 ... M ) ( ( ( S Dn ( H ` j ) ) ` ( c ` j ) ) ` Y ) ) ) | 
						
							| 14 | 13 | sumeq2sdv |  |-  ( x = Y -> sum_ c e. ( C ` N ) ( ( ( ! ` N ) / prod_ j e. ( 0 ... M ) ( ! ` ( c ` j ) ) ) x. prod_ j e. ( 0 ... M ) ( ( ( S Dn ( H ` j ) ) ` ( c ` j ) ) ` x ) ) = sum_ c e. ( C ` N ) ( ( ( ! ` N ) / prod_ j e. ( 0 ... M ) ( ! ` ( c ` j ) ) ) x. prod_ j e. ( 0 ... M ) ( ( ( S Dn ( H ` j ) ) ` ( c ` j ) ) ` Y ) ) ) | 
						
							| 15 | 14 | adantl |  |-  ( ( ph /\ x = Y ) -> sum_ c e. ( C ` N ) ( ( ( ! ` N ) / prod_ j e. ( 0 ... M ) ( ! ` ( c ` j ) ) ) x. prod_ j e. ( 0 ... M ) ( ( ( S Dn ( H ` j ) ) ` ( c ` j ) ) ` x ) ) = sum_ c e. ( C ` N ) ( ( ( ! ` N ) / prod_ j e. ( 0 ... M ) ( ! ` ( c ` j ) ) ) x. prod_ j e. ( 0 ... M ) ( ( ( S Dn ( H ` j ) ) ` ( c ` j ) ) ` Y ) ) ) | 
						
							| 16 | 8 6 | etransclem16 |  |-  ( ph -> ( C ` N ) e. Fin ) | 
						
							| 17 | 6 | faccld |  |-  ( ph -> ( ! ` N ) e. NN ) | 
						
							| 18 | 17 | nncnd |  |-  ( ph -> ( ! ` N ) e. CC ) | 
						
							| 19 | 18 | adantr |  |-  ( ( ph /\ c e. ( C ` N ) ) -> ( ! ` N ) e. CC ) | 
						
							| 20 |  | fzfid |  |-  ( ( ph /\ c e. ( C ` N ) ) -> ( 0 ... M ) e. Fin ) | 
						
							| 21 |  | fzssnn0 |  |-  ( 0 ... N ) C_ NN0 | 
						
							| 22 |  | ssrab2 |  |-  { c e. ( ( 0 ... N ) ^m ( 0 ... M ) ) | sum_ j e. ( 0 ... M ) ( c ` j ) = N } C_ ( ( 0 ... N ) ^m ( 0 ... M ) ) | 
						
							| 23 |  | simpr |  |-  ( ( ph /\ c e. ( C ` N ) ) -> c e. ( C ` N ) ) | 
						
							| 24 | 8 6 | etransclem12 |  |-  ( ph -> ( C ` N ) = { c e. ( ( 0 ... N ) ^m ( 0 ... M ) ) | sum_ j e. ( 0 ... M ) ( c ` j ) = N } ) | 
						
							| 25 | 24 | adantr |  |-  ( ( ph /\ c e. ( C ` N ) ) -> ( C ` N ) = { c e. ( ( 0 ... N ) ^m ( 0 ... M ) ) | sum_ j e. ( 0 ... M ) ( c ` j ) = N } ) | 
						
							| 26 | 23 25 | eleqtrd |  |-  ( ( ph /\ c e. ( C ` N ) ) -> c e. { c e. ( ( 0 ... N ) ^m ( 0 ... M ) ) | sum_ j e. ( 0 ... M ) ( c ` j ) = N } ) | 
						
							| 27 | 22 26 | sselid |  |-  ( ( ph /\ c e. ( C ` N ) ) -> c e. ( ( 0 ... N ) ^m ( 0 ... M ) ) ) | 
						
							| 28 | 27 | adantr |  |-  ( ( ( ph /\ c e. ( C ` N ) ) /\ j e. ( 0 ... M ) ) -> c e. ( ( 0 ... N ) ^m ( 0 ... M ) ) ) | 
						
							| 29 |  | elmapi |  |-  ( c e. ( ( 0 ... N ) ^m ( 0 ... M ) ) -> c : ( 0 ... M ) --> ( 0 ... N ) ) | 
						
							| 30 | 28 29 | syl |  |-  ( ( ( ph /\ c e. ( C ` N ) ) /\ j e. ( 0 ... M ) ) -> c : ( 0 ... M ) --> ( 0 ... N ) ) | 
						
							| 31 |  | simpr |  |-  ( ( ( ph /\ c e. ( C ` N ) ) /\ j e. ( 0 ... M ) ) -> j e. ( 0 ... M ) ) | 
						
							| 32 | 30 31 | ffvelcdmd |  |-  ( ( ( ph /\ c e. ( C ` N ) ) /\ j e. ( 0 ... M ) ) -> ( c ` j ) e. ( 0 ... N ) ) | 
						
							| 33 | 21 32 | sselid |  |-  ( ( ( ph /\ c e. ( C ` N ) ) /\ j e. ( 0 ... M ) ) -> ( c ` j ) e. NN0 ) | 
						
							| 34 | 33 | faccld |  |-  ( ( ( ph /\ c e. ( C ` N ) ) /\ j e. ( 0 ... M ) ) -> ( ! ` ( c ` j ) ) e. NN ) | 
						
							| 35 | 34 | nncnd |  |-  ( ( ( ph /\ c e. ( C ` N ) ) /\ j e. ( 0 ... M ) ) -> ( ! ` ( c ` j ) ) e. CC ) | 
						
							| 36 | 20 35 | fprodcl |  |-  ( ( ph /\ c e. ( C ` N ) ) -> prod_ j e. ( 0 ... M ) ( ! ` ( c ` j ) ) e. CC ) | 
						
							| 37 | 34 | nnne0d |  |-  ( ( ( ph /\ c e. ( C ` N ) ) /\ j e. ( 0 ... M ) ) -> ( ! ` ( c ` j ) ) =/= 0 ) | 
						
							| 38 | 20 35 37 | fprodn0 |  |-  ( ( ph /\ c e. ( C ` N ) ) -> prod_ j e. ( 0 ... M ) ( ! ` ( c ` j ) ) =/= 0 ) | 
						
							| 39 | 19 36 38 | divcld |  |-  ( ( ph /\ c e. ( C ` N ) ) -> ( ( ! ` N ) / prod_ j e. ( 0 ... M ) ( ! ` ( c ` j ) ) ) e. CC ) | 
						
							| 40 | 1 | ad2antrr |  |-  ( ( ( ph /\ c e. ( C ` N ) ) /\ j e. ( 0 ... M ) ) -> S e. { RR , CC } ) | 
						
							| 41 | 2 | ad2antrr |  |-  ( ( ( ph /\ c e. ( C ` N ) ) /\ j e. ( 0 ... M ) ) -> X e. ( ( TopOpen ` CCfld ) |`t S ) ) | 
						
							| 42 | 3 | ad2antrr |  |-  ( ( ( ph /\ c e. ( C ` N ) ) /\ j e. ( 0 ... M ) ) -> P e. NN ) | 
						
							| 43 |  | etransclem5 |  |-  ( j e. ( 0 ... M ) |-> ( x e. X |-> ( ( x - j ) ^ if ( j = 0 , ( P - 1 ) , P ) ) ) ) = ( k e. ( 0 ... M ) |-> ( y e. X |-> ( ( y - k ) ^ if ( k = 0 , ( P - 1 ) , P ) ) ) ) | 
						
							| 44 | 7 43 | eqtri |  |-  H = ( k e. ( 0 ... M ) |-> ( y e. X |-> ( ( y - k ) ^ if ( k = 0 , ( P - 1 ) , P ) ) ) ) | 
						
							| 45 | 40 41 42 44 31 33 | etransclem20 |  |-  ( ( ( ph /\ c e. ( C ` N ) ) /\ j e. ( 0 ... M ) ) -> ( ( S Dn ( H ` j ) ) ` ( c ` j ) ) : X --> CC ) | 
						
							| 46 | 9 | ad2antrr |  |-  ( ( ( ph /\ c e. ( C ` N ) ) /\ j e. ( 0 ... M ) ) -> Y e. X ) | 
						
							| 47 | 45 46 | ffvelcdmd |  |-  ( ( ( ph /\ c e. ( C ` N ) ) /\ j e. ( 0 ... M ) ) -> ( ( ( S Dn ( H ` j ) ) ` ( c ` j ) ) ` Y ) e. CC ) | 
						
							| 48 | 20 47 | fprodcl |  |-  ( ( ph /\ c e. ( C ` N ) ) -> prod_ j e. ( 0 ... M ) ( ( ( S Dn ( H ` j ) ) ` ( c ` j ) ) ` Y ) e. CC ) | 
						
							| 49 | 39 48 | mulcld |  |-  ( ( ph /\ c e. ( C ` N ) ) -> ( ( ( ! ` N ) / prod_ j e. ( 0 ... M ) ( ! ` ( c ` j ) ) ) x. prod_ j e. ( 0 ... M ) ( ( ( S Dn ( H ` j ) ) ` ( c ` j ) ) ` Y ) ) e. CC ) | 
						
							| 50 | 16 49 | fsumcl |  |-  ( ph -> sum_ c e. ( C ` N ) ( ( ( ! ` N ) / prod_ j e. ( 0 ... M ) ( ! ` ( c ` j ) ) ) x. prod_ j e. ( 0 ... M ) ( ( ( S Dn ( H ` j ) ) ` ( c ` j ) ) ` Y ) ) e. CC ) | 
						
							| 51 | 10 15 9 50 | fvmptd |  |-  ( ph -> ( ( ( S Dn F ) ` N ) ` Y ) = sum_ c e. ( C ` N ) ( ( ( ! ` N ) / prod_ j e. ( 0 ... M ) ( ! ` ( c ` j ) ) ) x. prod_ j e. ( 0 ... M ) ( ( ( S Dn ( H ` j ) ) ` ( c ` j ) ) ` Y ) ) ) | 
						
							| 52 | 40 41 42 44 31 33 46 | etransclem21 |  |-  ( ( ( ph /\ c e. ( C ` N ) ) /\ j e. ( 0 ... M ) ) -> ( ( ( S Dn ( H ` j ) ) ` ( c ` j ) ) ` Y ) = if ( if ( j = 0 , ( P - 1 ) , P ) < ( c ` j ) , 0 , ( ( ( ! ` if ( j = 0 , ( P - 1 ) , P ) ) / ( ! ` ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) ) x. ( ( Y - j ) ^ ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) ) ) ) | 
						
							| 53 | 52 | prodeq2dv |  |-  ( ( ph /\ c e. ( C ` N ) ) -> prod_ j e. ( 0 ... M ) ( ( ( S Dn ( H ` j ) ) ` ( c ` j ) ) ` Y ) = prod_ j e. ( 0 ... M ) if ( if ( j = 0 , ( P - 1 ) , P ) < ( c ` j ) , 0 , ( ( ( ! ` if ( j = 0 , ( P - 1 ) , P ) ) / ( ! ` ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) ) x. ( ( Y - j ) ^ ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) ) ) ) | 
						
							| 54 |  | nn0uz |  |-  NN0 = ( ZZ>= ` 0 ) | 
						
							| 55 | 4 54 | eleqtrdi |  |-  ( ph -> M e. ( ZZ>= ` 0 ) ) | 
						
							| 56 | 55 | adantr |  |-  ( ( ph /\ c e. ( C ` N ) ) -> M e. ( ZZ>= ` 0 ) ) | 
						
							| 57 | 52 47 | eqeltrrd |  |-  ( ( ( ph /\ c e. ( C ` N ) ) /\ j e. ( 0 ... M ) ) -> if ( if ( j = 0 , ( P - 1 ) , P ) < ( c ` j ) , 0 , ( ( ( ! ` if ( j = 0 , ( P - 1 ) , P ) ) / ( ! ` ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) ) x. ( ( Y - j ) ^ ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) ) ) e. CC ) | 
						
							| 58 |  | iftrue |  |-  ( j = 0 -> if ( j = 0 , ( P - 1 ) , P ) = ( P - 1 ) ) | 
						
							| 59 |  | fveq2 |  |-  ( j = 0 -> ( c ` j ) = ( c ` 0 ) ) | 
						
							| 60 | 58 59 | breq12d |  |-  ( j = 0 -> ( if ( j = 0 , ( P - 1 ) , P ) < ( c ` j ) <-> ( P - 1 ) < ( c ` 0 ) ) ) | 
						
							| 61 | 58 | fveq2d |  |-  ( j = 0 -> ( ! ` if ( j = 0 , ( P - 1 ) , P ) ) = ( ! ` ( P - 1 ) ) ) | 
						
							| 62 | 58 59 | oveq12d |  |-  ( j = 0 -> ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) = ( ( P - 1 ) - ( c ` 0 ) ) ) | 
						
							| 63 | 62 | fveq2d |  |-  ( j = 0 -> ( ! ` ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) = ( ! ` ( ( P - 1 ) - ( c ` 0 ) ) ) ) | 
						
							| 64 | 61 63 | oveq12d |  |-  ( j = 0 -> ( ( ! ` if ( j = 0 , ( P - 1 ) , P ) ) / ( ! ` ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) ) = ( ( ! ` ( P - 1 ) ) / ( ! ` ( ( P - 1 ) - ( c ` 0 ) ) ) ) ) | 
						
							| 65 |  | oveq2 |  |-  ( j = 0 -> ( Y - j ) = ( Y - 0 ) ) | 
						
							| 66 | 65 62 | oveq12d |  |-  ( j = 0 -> ( ( Y - j ) ^ ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) = ( ( Y - 0 ) ^ ( ( P - 1 ) - ( c ` 0 ) ) ) ) | 
						
							| 67 | 64 66 | oveq12d |  |-  ( j = 0 -> ( ( ( ! ` if ( j = 0 , ( P - 1 ) , P ) ) / ( ! ` ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) ) x. ( ( Y - j ) ^ ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) ) = ( ( ( ! ` ( P - 1 ) ) / ( ! ` ( ( P - 1 ) - ( c ` 0 ) ) ) ) x. ( ( Y - 0 ) ^ ( ( P - 1 ) - ( c ` 0 ) ) ) ) ) | 
						
							| 68 | 60 67 | ifbieq2d |  |-  ( j = 0 -> if ( if ( j = 0 , ( P - 1 ) , P ) < ( c ` j ) , 0 , ( ( ( ! ` if ( j = 0 , ( P - 1 ) , P ) ) / ( ! ` ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) ) x. ( ( Y - j ) ^ ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) ) ) = if ( ( P - 1 ) < ( c ` 0 ) , 0 , ( ( ( ! ` ( P - 1 ) ) / ( ! ` ( ( P - 1 ) - ( c ` 0 ) ) ) ) x. ( ( Y - 0 ) ^ ( ( P - 1 ) - ( c ` 0 ) ) ) ) ) ) | 
						
							| 69 | 56 57 68 | fprod1p |  |-  ( ( ph /\ c e. ( C ` N ) ) -> prod_ j e. ( 0 ... M ) if ( if ( j = 0 , ( P - 1 ) , P ) < ( c ` j ) , 0 , ( ( ( ! ` if ( j = 0 , ( P - 1 ) , P ) ) / ( ! ` ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) ) x. ( ( Y - j ) ^ ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) ) ) = ( if ( ( P - 1 ) < ( c ` 0 ) , 0 , ( ( ( ! ` ( P - 1 ) ) / ( ! ` ( ( P - 1 ) - ( c ` 0 ) ) ) ) x. ( ( Y - 0 ) ^ ( ( P - 1 ) - ( c ` 0 ) ) ) ) ) x. prod_ j e. ( ( 0 + 1 ) ... M ) if ( if ( j = 0 , ( P - 1 ) , P ) < ( c ` j ) , 0 , ( ( ( ! ` if ( j = 0 , ( P - 1 ) , P ) ) / ( ! ` ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) ) x. ( ( Y - j ) ^ ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) ) ) ) ) | 
						
							| 70 | 1 2 | dvdmsscn |  |-  ( ph -> X C_ CC ) | 
						
							| 71 | 70 9 | sseldd |  |-  ( ph -> Y e. CC ) | 
						
							| 72 | 71 | subid1d |  |-  ( ph -> ( Y - 0 ) = Y ) | 
						
							| 73 | 72 | oveq1d |  |-  ( ph -> ( ( Y - 0 ) ^ ( ( P - 1 ) - ( c ` 0 ) ) ) = ( Y ^ ( ( P - 1 ) - ( c ` 0 ) ) ) ) | 
						
							| 74 | 73 | oveq2d |  |-  ( ph -> ( ( ( ! ` ( P - 1 ) ) / ( ! ` ( ( P - 1 ) - ( c ` 0 ) ) ) ) x. ( ( Y - 0 ) ^ ( ( P - 1 ) - ( c ` 0 ) ) ) ) = ( ( ( ! ` ( P - 1 ) ) / ( ! ` ( ( P - 1 ) - ( c ` 0 ) ) ) ) x. ( Y ^ ( ( P - 1 ) - ( c ` 0 ) ) ) ) ) | 
						
							| 75 | 74 | ifeq2d |  |-  ( ph -> if ( ( P - 1 ) < ( c ` 0 ) , 0 , ( ( ( ! ` ( P - 1 ) ) / ( ! ` ( ( P - 1 ) - ( c ` 0 ) ) ) ) x. ( ( Y - 0 ) ^ ( ( P - 1 ) - ( c ` 0 ) ) ) ) ) = if ( ( P - 1 ) < ( c ` 0 ) , 0 , ( ( ( ! ` ( P - 1 ) ) / ( ! ` ( ( P - 1 ) - ( c ` 0 ) ) ) ) x. ( Y ^ ( ( P - 1 ) - ( c ` 0 ) ) ) ) ) ) | 
						
							| 76 |  | 0p1e1 |  |-  ( 0 + 1 ) = 1 | 
						
							| 77 | 76 | oveq1i |  |-  ( ( 0 + 1 ) ... M ) = ( 1 ... M ) | 
						
							| 78 | 77 | prodeq1i |  |-  prod_ j e. ( ( 0 + 1 ) ... M ) if ( if ( j = 0 , ( P - 1 ) , P ) < ( c ` j ) , 0 , ( ( ( ! ` if ( j = 0 , ( P - 1 ) , P ) ) / ( ! ` ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) ) x. ( ( Y - j ) ^ ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) ) ) = prod_ j e. ( 1 ... M ) if ( if ( j = 0 , ( P - 1 ) , P ) < ( c ` j ) , 0 , ( ( ( ! ` if ( j = 0 , ( P - 1 ) , P ) ) / ( ! ` ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) ) x. ( ( Y - j ) ^ ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) ) ) | 
						
							| 79 |  | 0red |  |-  ( j e. ( 1 ... M ) -> 0 e. RR ) | 
						
							| 80 |  | 1red |  |-  ( j e. ( 1 ... M ) -> 1 e. RR ) | 
						
							| 81 |  | elfzelz |  |-  ( j e. ( 1 ... M ) -> j e. ZZ ) | 
						
							| 82 | 81 | zred |  |-  ( j e. ( 1 ... M ) -> j e. RR ) | 
						
							| 83 |  | 0lt1 |  |-  0 < 1 | 
						
							| 84 | 83 | a1i |  |-  ( j e. ( 1 ... M ) -> 0 < 1 ) | 
						
							| 85 |  | elfzle1 |  |-  ( j e. ( 1 ... M ) -> 1 <_ j ) | 
						
							| 86 | 79 80 82 84 85 | ltletrd |  |-  ( j e. ( 1 ... M ) -> 0 < j ) | 
						
							| 87 | 86 | gt0ne0d |  |-  ( j e. ( 1 ... M ) -> j =/= 0 ) | 
						
							| 88 | 87 | neneqd |  |-  ( j e. ( 1 ... M ) -> -. j = 0 ) | 
						
							| 89 | 88 | iffalsed |  |-  ( j e. ( 1 ... M ) -> if ( j = 0 , ( P - 1 ) , P ) = P ) | 
						
							| 90 | 89 | breq1d |  |-  ( j e. ( 1 ... M ) -> ( if ( j = 0 , ( P - 1 ) , P ) < ( c ` j ) <-> P < ( c ` j ) ) ) | 
						
							| 91 | 89 | fveq2d |  |-  ( j e. ( 1 ... M ) -> ( ! ` if ( j = 0 , ( P - 1 ) , P ) ) = ( ! ` P ) ) | 
						
							| 92 | 89 | oveq1d |  |-  ( j e. ( 1 ... M ) -> ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) = ( P - ( c ` j ) ) ) | 
						
							| 93 | 92 | fveq2d |  |-  ( j e. ( 1 ... M ) -> ( ! ` ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) = ( ! ` ( P - ( c ` j ) ) ) ) | 
						
							| 94 | 91 93 | oveq12d |  |-  ( j e. ( 1 ... M ) -> ( ( ! ` if ( j = 0 , ( P - 1 ) , P ) ) / ( ! ` ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) ) = ( ( ! ` P ) / ( ! ` ( P - ( c ` j ) ) ) ) ) | 
						
							| 95 | 92 | oveq2d |  |-  ( j e. ( 1 ... M ) -> ( ( Y - j ) ^ ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) = ( ( Y - j ) ^ ( P - ( c ` j ) ) ) ) | 
						
							| 96 | 94 95 | oveq12d |  |-  ( j e. ( 1 ... M ) -> ( ( ( ! ` if ( j = 0 , ( P - 1 ) , P ) ) / ( ! ` ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) ) x. ( ( Y - j ) ^ ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) ) = ( ( ( ! ` P ) / ( ! ` ( P - ( c ` j ) ) ) ) x. ( ( Y - j ) ^ ( P - ( c ` j ) ) ) ) ) | 
						
							| 97 | 90 96 | ifbieq2d |  |-  ( j e. ( 1 ... M ) -> if ( if ( j = 0 , ( P - 1 ) , P ) < ( c ` j ) , 0 , ( ( ( ! ` if ( j = 0 , ( P - 1 ) , P ) ) / ( ! ` ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) ) x. ( ( Y - j ) ^ ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) ) ) = if ( P < ( c ` j ) , 0 , ( ( ( ! ` P ) / ( ! ` ( P - ( c ` j ) ) ) ) x. ( ( Y - j ) ^ ( P - ( c ` j ) ) ) ) ) ) | 
						
							| 98 | 97 | prodeq2i |  |-  prod_ j e. ( 1 ... M ) if ( if ( j = 0 , ( P - 1 ) , P ) < ( c ` j ) , 0 , ( ( ( ! ` if ( j = 0 , ( P - 1 ) , P ) ) / ( ! ` ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) ) x. ( ( Y - j ) ^ ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) ) ) = prod_ j e. ( 1 ... M ) if ( P < ( c ` j ) , 0 , ( ( ( ! ` P ) / ( ! ` ( P - ( c ` j ) ) ) ) x. ( ( Y - j ) ^ ( P - ( c ` j ) ) ) ) ) | 
						
							| 99 | 78 98 | eqtri |  |-  prod_ j e. ( ( 0 + 1 ) ... M ) if ( if ( j = 0 , ( P - 1 ) , P ) < ( c ` j ) , 0 , ( ( ( ! ` if ( j = 0 , ( P - 1 ) , P ) ) / ( ! ` ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) ) x. ( ( Y - j ) ^ ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) ) ) = prod_ j e. ( 1 ... M ) if ( P < ( c ` j ) , 0 , ( ( ( ! ` P ) / ( ! ` ( P - ( c ` j ) ) ) ) x. ( ( Y - j ) ^ ( P - ( c ` j ) ) ) ) ) | 
						
							| 100 | 99 | a1i |  |-  ( ph -> prod_ j e. ( ( 0 + 1 ) ... M ) if ( if ( j = 0 , ( P - 1 ) , P ) < ( c ` j ) , 0 , ( ( ( ! ` if ( j = 0 , ( P - 1 ) , P ) ) / ( ! ` ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) ) x. ( ( Y - j ) ^ ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) ) ) = prod_ j e. ( 1 ... M ) if ( P < ( c ` j ) , 0 , ( ( ( ! ` P ) / ( ! ` ( P - ( c ` j ) ) ) ) x. ( ( Y - j ) ^ ( P - ( c ` j ) ) ) ) ) ) | 
						
							| 101 | 75 100 | oveq12d |  |-  ( ph -> ( if ( ( P - 1 ) < ( c ` 0 ) , 0 , ( ( ( ! ` ( P - 1 ) ) / ( ! ` ( ( P - 1 ) - ( c ` 0 ) ) ) ) x. ( ( Y - 0 ) ^ ( ( P - 1 ) - ( c ` 0 ) ) ) ) ) x. prod_ j e. ( ( 0 + 1 ) ... M ) if ( if ( j = 0 , ( P - 1 ) , P ) < ( c ` j ) , 0 , ( ( ( ! ` if ( j = 0 , ( P - 1 ) , P ) ) / ( ! ` ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) ) x. ( ( Y - j ) ^ ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) ) ) ) = ( if ( ( P - 1 ) < ( c ` 0 ) , 0 , ( ( ( ! ` ( P - 1 ) ) / ( ! ` ( ( P - 1 ) - ( c ` 0 ) ) ) ) x. ( Y ^ ( ( P - 1 ) - ( c ` 0 ) ) ) ) ) x. prod_ j e. ( 1 ... M ) if ( P < ( c ` j ) , 0 , ( ( ( ! ` P ) / ( ! ` ( P - ( c ` j ) ) ) ) x. ( ( Y - j ) ^ ( P - ( c ` j ) ) ) ) ) ) ) | 
						
							| 102 | 101 | adantr |  |-  ( ( ph /\ c e. ( C ` N ) ) -> ( if ( ( P - 1 ) < ( c ` 0 ) , 0 , ( ( ( ! ` ( P - 1 ) ) / ( ! ` ( ( P - 1 ) - ( c ` 0 ) ) ) ) x. ( ( Y - 0 ) ^ ( ( P - 1 ) - ( c ` 0 ) ) ) ) ) x. prod_ j e. ( ( 0 + 1 ) ... M ) if ( if ( j = 0 , ( P - 1 ) , P ) < ( c ` j ) , 0 , ( ( ( ! ` if ( j = 0 , ( P - 1 ) , P ) ) / ( ! ` ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) ) x. ( ( Y - j ) ^ ( if ( j = 0 , ( P - 1 ) , P ) - ( c ` j ) ) ) ) ) ) = ( if ( ( P - 1 ) < ( c ` 0 ) , 0 , ( ( ( ! ` ( P - 1 ) ) / ( ! ` ( ( P - 1 ) - ( c ` 0 ) ) ) ) x. ( Y ^ ( ( P - 1 ) - ( c ` 0 ) ) ) ) ) x. prod_ j e. ( 1 ... M ) if ( P < ( c ` j ) , 0 , ( ( ( ! ` P ) / ( ! ` ( P - ( c ` j ) ) ) ) x. ( ( Y - j ) ^ ( P - ( c ` j ) ) ) ) ) ) ) | 
						
							| 103 | 53 69 102 | 3eqtrd |  |-  ( ( ph /\ c e. ( C ` N ) ) -> prod_ j e. ( 0 ... M ) ( ( ( S Dn ( H ` j ) ) ` ( c ` j ) ) ` Y ) = ( if ( ( P - 1 ) < ( c ` 0 ) , 0 , ( ( ( ! ` ( P - 1 ) ) / ( ! ` ( ( P - 1 ) - ( c ` 0 ) ) ) ) x. ( Y ^ ( ( P - 1 ) - ( c ` 0 ) ) ) ) ) x. prod_ j e. ( 1 ... M ) if ( P < ( c ` j ) , 0 , ( ( ( ! ` P ) / ( ! ` ( P - ( c ` j ) ) ) ) x. ( ( Y - j ) ^ ( P - ( c ` j ) ) ) ) ) ) ) | 
						
							| 104 | 103 | oveq2d |  |-  ( ( ph /\ c e. ( C ` N ) ) -> ( ( ( ! ` N ) / prod_ j e. ( 0 ... M ) ( ! ` ( c ` j ) ) ) x. prod_ j e. ( 0 ... M ) ( ( ( S Dn ( H ` j ) ) ` ( c ` j ) ) ` Y ) ) = ( ( ( ! ` N ) / prod_ j e. ( 0 ... M ) ( ! ` ( c ` j ) ) ) x. ( if ( ( P - 1 ) < ( c ` 0 ) , 0 , ( ( ( ! ` ( P - 1 ) ) / ( ! ` ( ( P - 1 ) - ( c ` 0 ) ) ) ) x. ( Y ^ ( ( P - 1 ) - ( c ` 0 ) ) ) ) ) x. prod_ j e. ( 1 ... M ) if ( P < ( c ` j ) , 0 , ( ( ( ! ` P ) / ( ! ` ( P - ( c ` j ) ) ) ) x. ( ( Y - j ) ^ ( P - ( c ` j ) ) ) ) ) ) ) ) | 
						
							| 105 | 104 | sumeq2dv |  |-  ( ph -> sum_ c e. ( C ` N ) ( ( ( ! ` N ) / prod_ j e. ( 0 ... M ) ( ! ` ( c ` j ) ) ) x. prod_ j e. ( 0 ... M ) ( ( ( S Dn ( H ` j ) ) ` ( c ` j ) ) ` Y ) ) = sum_ c e. ( C ` N ) ( ( ( ! ` N ) / prod_ j e. ( 0 ... M ) ( ! ` ( c ` j ) ) ) x. ( if ( ( P - 1 ) < ( c ` 0 ) , 0 , ( ( ( ! ` ( P - 1 ) ) / ( ! ` ( ( P - 1 ) - ( c ` 0 ) ) ) ) x. ( Y ^ ( ( P - 1 ) - ( c ` 0 ) ) ) ) ) x. prod_ j e. ( 1 ... M ) if ( P < ( c ` j ) , 0 , ( ( ( ! ` P ) / ( ! ` ( P - ( c ` j ) ) ) ) x. ( ( Y - j ) ^ ( P - ( c ` j ) ) ) ) ) ) ) ) | 
						
							| 106 | 51 105 | eqtrd |  |-  ( ph -> ( ( ( S Dn F ) ` N ) ` Y ) = sum_ c e. ( C ` N ) ( ( ( ! ` N ) / prod_ j e. ( 0 ... M ) ( ! ` ( c ` j ) ) ) x. ( if ( ( P - 1 ) < ( c ` 0 ) , 0 , ( ( ( ! ` ( P - 1 ) ) / ( ! ` ( ( P - 1 ) - ( c ` 0 ) ) ) ) x. ( Y ^ ( ( P - 1 ) - ( c ` 0 ) ) ) ) ) x. prod_ j e. ( 1 ... M ) if ( P < ( c ` j ) , 0 , ( ( ( ! ` P ) / ( ! ` ( P - ( c ` j ) ) ) ) x. ( ( Y - j ) ^ ( P - ( c ` j ) ) ) ) ) ) ) ) |