On 8/29/10, W. Edwin Clark <wclark@mail.usf.edu> wrote:
Can you send Maple code for cases k = 1, 2 and 3? Using assume(n::posint), Maple might be able to verify for variable n. But at least one can check by putting in values for n.
I looked at trying to remove this restriction on n, which led to the slightly cleaner version attached below; but in the end it proves impossible to relax the constraints nontrivially. WFL Given integers n >= 0, k >= 0, show \sum_{i_k = 1}^oo (n/i_k) ... ... \sum_{i_2 = 1+i_3}^oo (n/i_2) \sum_{i_1 = 1+i_2}^oo (n/i_1) n! (i_1)! / (n + i_1)! = 1 . #### Maple code for Chris Coath summation problem (recast) #### # For all integer n, and non-negative q,k --- # Define # g_k(q) = {n, q} when k = 0 , # = \sum_{j=q+1}^{i=\infty} g_{l-1}(j) n/j when k > 1 ; # Then # g_k(q) = {n, q} for k >= 0 . # Binomial coefficient n_C_m (via subfactorial) fails in sum() bin := proc (n, m) local i, ans; if m < 0 then ans := 0 else ans := 1; i := 1; while i <= m do ans := ans*(n-i+1)/i; i := i+1 od fi; ans end; # Binomial coefficient n_C_m (via library) slow bin := proc (n, m) binomial(n, m) end; # Binomial coefficient n_C_m (via factorial) n >= m >= 0 only bin := proc(n, m) factorial(n)/factorial(m)/factorial(n-m) end; # Definition gkD := proc(q, n, k) local j; if k = 0 then 1/bin(n+q, q) else evalf(sum('gkD(j, n, k-1)*n/j', 'j' = q+1..infinity)) fi end; # Inductive step gkI := proc(q, n, k) local j; evalf(sum('gkE(j, n, k-1)*n/j', 'j' = q+1..infinity)) end; # Explicit expression gkE := proc(q, n, k); 1/bin(n+q, q) end; # Compare inductive step with explicit expression --- approx zeros m := 6; seq(seq(gkI(0, n, k) - gkE(0, n, k), n = 1..m), k = 0..m); # Compare definition with explicit expression --- approx zeros (1050 sec) n := 10; m := 3; seq(gkD(0, n, k) - gkE(0, n, k), k = 0..m);