| Step | Hyp | Ref | Expression | 
						
							| 1 |  | elfz3nn0 |  |-  ( N e. ( 0 ... A ) -> A e. NN0 ) | 
						
							| 2 | 1 | nn0cnd |  |-  ( N e. ( 0 ... A ) -> A e. CC ) | 
						
							| 3 |  | elfznn0 |  |-  ( N e. ( 0 ... A ) -> N e. NN0 ) | 
						
							| 4 |  | fallfacval |  |-  ( ( A e. CC /\ N e. NN0 ) -> ( A FallFac N ) = prod_ j e. ( 0 ... ( N - 1 ) ) ( A - j ) ) | 
						
							| 5 | 2 3 4 | syl2anc |  |-  ( N e. ( 0 ... A ) -> ( A FallFac N ) = prod_ j e. ( 0 ... ( N - 1 ) ) ( A - j ) ) | 
						
							| 6 |  | elfzel2 |  |-  ( N e. ( 0 ... A ) -> A e. ZZ ) | 
						
							| 7 |  | elfzel1 |  |-  ( N e. ( 0 ... A ) -> 0 e. ZZ ) | 
						
							| 8 |  | elfzelz |  |-  ( N e. ( 0 ... A ) -> N e. ZZ ) | 
						
							| 9 |  | peano2zm |  |-  ( N e. ZZ -> ( N - 1 ) e. ZZ ) | 
						
							| 10 | 8 9 | syl |  |-  ( N e. ( 0 ... A ) -> ( N - 1 ) e. ZZ ) | 
						
							| 11 |  | elfzelz |  |-  ( j e. ( 0 ... ( N - 1 ) ) -> j e. ZZ ) | 
						
							| 12 | 11 | zcnd |  |-  ( j e. ( 0 ... ( N - 1 ) ) -> j e. CC ) | 
						
							| 13 |  | subcl |  |-  ( ( A e. CC /\ j e. CC ) -> ( A - j ) e. CC ) | 
						
							| 14 | 2 12 13 | syl2an |  |-  ( ( N e. ( 0 ... A ) /\ j e. ( 0 ... ( N - 1 ) ) ) -> ( A - j ) e. CC ) | 
						
							| 15 |  | oveq2 |  |-  ( j = ( A - k ) -> ( A - j ) = ( A - ( A - k ) ) ) | 
						
							| 16 | 6 7 10 14 15 | fprodrev |  |-  ( N e. ( 0 ... A ) -> prod_ j e. ( 0 ... ( N - 1 ) ) ( A - j ) = prod_ k e. ( ( A - ( N - 1 ) ) ... ( A - 0 ) ) ( A - ( A - k ) ) ) | 
						
							| 17 | 2 | subid1d |  |-  ( N e. ( 0 ... A ) -> ( A - 0 ) = A ) | 
						
							| 18 | 17 | oveq2d |  |-  ( N e. ( 0 ... A ) -> ( ( A - ( N - 1 ) ) ... ( A - 0 ) ) = ( ( A - ( N - 1 ) ) ... A ) ) | 
						
							| 19 | 2 | adantr |  |-  ( ( N e. ( 0 ... A ) /\ k e. ( ( A - ( N - 1 ) ) ... ( A - 0 ) ) ) -> A e. CC ) | 
						
							| 20 |  | elfzelz |  |-  ( k e. ( ( A - ( N - 1 ) ) ... ( A - 0 ) ) -> k e. ZZ ) | 
						
							| 21 | 20 | zcnd |  |-  ( k e. ( ( A - ( N - 1 ) ) ... ( A - 0 ) ) -> k e. CC ) | 
						
							| 22 | 21 | adantl |  |-  ( ( N e. ( 0 ... A ) /\ k e. ( ( A - ( N - 1 ) ) ... ( A - 0 ) ) ) -> k e. CC ) | 
						
							| 23 | 19 22 | nncand |  |-  ( ( N e. ( 0 ... A ) /\ k e. ( ( A - ( N - 1 ) ) ... ( A - 0 ) ) ) -> ( A - ( A - k ) ) = k ) | 
						
							| 24 | 18 23 | prodeq12dv |  |-  ( N e. ( 0 ... A ) -> prod_ k e. ( ( A - ( N - 1 ) ) ... ( A - 0 ) ) ( A - ( A - k ) ) = prod_ k e. ( ( A - ( N - 1 ) ) ... A ) k ) | 
						
							| 25 | 5 16 24 | 3eqtrd |  |-  ( N e. ( 0 ... A ) -> ( A FallFac N ) = prod_ k e. ( ( A - ( N - 1 ) ) ... A ) k ) |