## [Maxima-bugs] [ maxima-Bugs-781657 ] binomial(x,x) => 1, but binomial(-1,-1) => 0

 [Maxima-bugs] [ maxima-Bugs-781657 ] binomial(x,x) => 1, but binomial(-1,-1) => 0 From: SourceForge.net - 2003-08-14 16:50:06 ```Bugs item #781657, was opened at 2003-08-01 14:30 Message generated for change (Comment added) made by macrakis You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=781657&group_id=4933 Category: None Group: None Status: Open Resolution: None Priority: 5 Submitted By: Barton Willis (willisb) Assigned to: Nobody/Anonymous (nobody) Summary: binomial(x,x) => 1, but binomial(-1,-1) => 0 Initial Comment: binomial(x,x) simplifies to 1 yet binomial(-1,-1) simplifies to 0. (C1) binomial(x,x); (D1) 1 (C2) binomial(-1,-1); (D2) 0 I agree with (d2) because: 1/(1 - x) = 1 + x + x^2 + ... = sum(binomial(-1,k) (-x) ^k,k,0,inf) implies binomial(-1,k) = (-1)^k, for integers k >= 0. In the recursion relation [Knuth Vol 1, 1.2.6 Eq. (20)] binomial(r,k) = binomial(r-1,k) + binomial(r-1,k-1) set r -> 0, k -> 0, and use binomial(0,0) = 1 and binomial (-1,0) = 1. From this we get binomial(-1,-1) = 0. Also see, Knuth Vol. 1 (third edition), Section 1.2.6 Exercise 9. There may be other approaches, but I think using the recursion relations and other identities to extend the domain of the binomial function is the best method. In short, I think the simplification binomial(x,x) ==> 1 should happen only for real x with x >= 0. Barton ---------------------------------------------------------------------- >Comment By: Stavros Macrakis (macrakis) Date: 2003-08-14 12:16 Message: Logged In: YES user_id=588346 I am not sure what you mean by "there may be other approaches". binomial(a,a) should simplify to Q if and only if the double limit exists: limit binomial(x,y) = Q x->a y->a A necessary (but in general not sufficient) condition for this to exist is that the two single limits exist and are equal: limit binomial(a,y) = limit binomial(x,a) = Q y->a x->a If the limit is not well-defined, then binomial(x,x) is not well- defined, and it will cause incorrect results in some case or another to arbitrarily set it to some value. I don't know if this limit is or isn't well-defined. I do know that depending on identities with unspecified domains of validity is dangerous.... ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=781657&group_id=4933 ```

 [Maxima-bugs] [ maxima-Bugs-781657 ] binomial(x,x) => 1, but binomial(-1,-1) => 0 From: SourceForge.net - 2003-08-01 18:30:21 ```Bugs item #781657, was opened at 2003-08-01 13:30 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=781657&group_id=4933 Category: None Group: None Status: Open Resolution: None Priority: 5 Submitted By: Barton Willis (willisb) Assigned to: Nobody/Anonymous (nobody) Summary: binomial(x,x) => 1, but binomial(-1,-1) => 0 Initial Comment: binomial(x,x) simplifies to 1 yet binomial(-1,-1) simplifies to 0. (C1) binomial(x,x); (D1) 1 (C2) binomial(-1,-1); (D2) 0 I agree with (d2) because: 1/(1 - x) = 1 + x + x^2 + ... = sum(binomial(-1,k) (-x) ^k,k,0,inf) implies binomial(-1,k) = (-1)^k, for integers k >= 0. In the recursion relation [Knuth Vol 1, 1.2.6 Eq. (20)] binomial(r,k) = binomial(r-1,k) + binomial(r-1,k-1) set r -> 0, k -> 0, and use binomial(0,0) = 1 and binomial (-1,0) = 1. From this we get binomial(-1,-1) = 0. Also see, Knuth Vol. 1 (third edition), Section 1.2.6 Exercise 9. There may be other approaches, but I think using the recursion relations and other identities to extend the domain of the binomial function is the best method. In short, I think the simplification binomial(x,x) ==> 1 should happen only for real x with x >= 0. Barton ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=781657&group_id=4933 ```
 [Maxima-bugs] [ maxima-Bugs-781657 ] binomial(x,x) => 1, but binomial(-1,-1) => 0 From: SourceForge.net - 2003-08-14 16:50:06 ```Bugs item #781657, was opened at 2003-08-01 14:30 Message generated for change (Comment added) made by macrakis You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=781657&group_id=4933 Category: None Group: None Status: Open Resolution: None Priority: 5 Submitted By: Barton Willis (willisb) Assigned to: Nobody/Anonymous (nobody) Summary: binomial(x,x) => 1, but binomial(-1,-1) => 0 Initial Comment: binomial(x,x) simplifies to 1 yet binomial(-1,-1) simplifies to 0. (C1) binomial(x,x); (D1) 1 (C2) binomial(-1,-1); (D2) 0 I agree with (d2) because: 1/(1 - x) = 1 + x + x^2 + ... = sum(binomial(-1,k) (-x) ^k,k,0,inf) implies binomial(-1,k) = (-1)^k, for integers k >= 0. In the recursion relation [Knuth Vol 1, 1.2.6 Eq. (20)] binomial(r,k) = binomial(r-1,k) + binomial(r-1,k-1) set r -> 0, k -> 0, and use binomial(0,0) = 1 and binomial (-1,0) = 1. From this we get binomial(-1,-1) = 0. Also see, Knuth Vol. 1 (third edition), Section 1.2.6 Exercise 9. There may be other approaches, but I think using the recursion relations and other identities to extend the domain of the binomial function is the best method. In short, I think the simplification binomial(x,x) ==> 1 should happen only for real x with x >= 0. Barton ---------------------------------------------------------------------- >Comment By: Stavros Macrakis (macrakis) Date: 2003-08-14 12:16 Message: Logged In: YES user_id=588346 I am not sure what you mean by "there may be other approaches". binomial(a,a) should simplify to Q if and only if the double limit exists: limit binomial(x,y) = Q x->a y->a A necessary (but in general not sufficient) condition for this to exist is that the two single limits exist and are equal: limit binomial(a,y) = limit binomial(x,a) = Q y->a x->a If the limit is not well-defined, then binomial(x,x) is not well- defined, and it will cause incorrect results in some case or another to arbitrarily set it to some value. I don't know if this limit is or isn't well-defined. I do know that depending on identities with unspecified domains of validity is dangerous.... ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=781657&group_id=4933 ```
 [Maxima-bugs] [ maxima-Bugs-781657 ] binomial(x,x) => 1, but binomial(-1,-1) => 0 From: SourceForge.net - 2003-08-22 04:16:07 ```Bugs item #781657, was opened at 2003-08-01 20:30 Message generated for change (Comment added) made by wjenkner You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=781657&group_id=4933 Category: None Group: None Status: Open Resolution: None Priority: 5 Submitted By: Barton Willis (willisb) Assigned to: Nobody/Anonymous (nobody) Summary: binomial(x,x) => 1, but binomial(-1,-1) => 0 Initial Comment: binomial(x,x) simplifies to 1 yet binomial(-1,-1) simplifies to 0. (C1) binomial(x,x); (D1) 1 (C2) binomial(-1,-1); (D2) 0 I agree with (d2) because: 1/(1 - x) = 1 + x + x^2 + ... = sum(binomial(-1,k) (-x) ^k,k,0,inf) implies binomial(-1,k) = (-1)^k, for integers k >= 0. In the recursion relation [Knuth Vol 1, 1.2.6 Eq. (20)] binomial(r,k) = binomial(r-1,k) + binomial(r-1,k-1) set r -> 0, k -> 0, and use binomial(0,0) = 1 and binomial (-1,0) = 1. From this we get binomial(-1,-1) = 0. Also see, Knuth Vol. 1 (third edition), Section 1.2.6 Exercise 9. There may be other approaches, but I think using the recursion relations and other identities to extend the domain of the binomial function is the best method. In short, I think the simplification binomial(x,x) ==> 1 should happen only for real x with x >= 0. Barton ---------------------------------------------------------------------- >Comment By: Wolfgang Jenkner (wjenkner) Date: 2003-08-22 06:16 Message: Logged In: YES user_id=581700 Unless I am mistaken, the (finite) limit of BINOMIAL(x,y) at some lattice-point (a,b) in Z^2 exists if and only if a >= 0. The "if" part is easy: Just write the binomial as GAMMA(x+1)/(GAMMA(-y+x+1)*GAMMA(y+1)) and observe that Gamma is certainly continuous in the open right half-plane while 1/Gamma is continuous everywhere. Now assume a <= -1. We have the following identity (for the proof see the Maxima code below) %PI*BINOMIAL(-x-1,-y)*BINOMIAL(x,y)*y = SIN(%PI*y)*SIN(%PI*(x-y))/SIN(%PI*x) We have -a-1 >= 0, so we already know that lim BINOMIAL(-x-1,-y) for (x,y)->(a,b) exists. If lim BINOMIAL(x,y) also existed, lim of the whole left hand side expression of this identity would exist. Now, looking at the right hand side expression we observe that it is Z-periodic with respect to x and y (except for a possible sign change). So lim of it at (a,b) exists if and only if lim of it at (0,0) exists, which is clearly not the case. Note: Strictly speaking, the identity is valid on, say, the complement of the union of the parallels through lattice-points to the first and second axis and to the median of the first quadrant, but this leaves us with enough space :-) Nevertheless, of course, it's quite customary to define BINOMIAL(a,b)=a*(a-1)* ... *(a-b+1)/b! for all a in R and b in Z with b >= 0 (for b=0 the numerator is an empty product), in accordance with the binomial series. This definition happens to coincide with limit(limit(BINOMIAL(x,y),y,b),x,a). matchdeclare([%%u,%%v],true)\$ sum_is_1(u,v):=is(u+v = 1)\$ let(gamma(%%u)*gamma(%%v),%pi/sin(%pi*%%u),sum_is_1,%%u,%%v); let(%%v/gamma(%%u),1/gamma(%%v),sum_is_1,%%u,-%%v); letrat:true; lhs:%pi*y*binomial(x,y)*binomial(-x-1,-y); makegamma(%); letsimp(%); letsimp(%); num(%)/trigexpand(expand(denom(%))); lhs=%; ---------------------------------------------------------------------- Comment By: Stavros Macrakis (macrakis) Date: 2003-08-14 18:16 Message: Logged In: YES user_id=588346 I am not sure what you mean by "there may be other approaches". binomial(a,a) should simplify to Q if and only if the double limit exists: limit binomial(x,y) = Q x->a y->a A necessary (but in general not sufficient) condition for this to exist is that the two single limits exist and are equal: limit binomial(a,y) = limit binomial(x,a) = Q y->a x->a If the limit is not well-defined, then binomial(x,x) is not well- defined, and it will cause incorrect results in some case or another to arbitrarily set it to some value. I don't know if this limit is or isn't well-defined. I do know that depending on identities with unspecified domains of validity is dangerous.... ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=781657&group_id=4933 ```