Revision of the Incomplete Beta function



I have done some more work on the Incomplete Beta function. I have tried to
implement more carefully the handling of positve and negative integers.

There are two issues with the implementation of the Incomplete Beta function:

(1) beta_incomplete(a,b,z) and a is a positive integer, b is a negative integer

For a positive integer a the Incomplete Beta function is defined for every
argument b. But the expansion does not work for b a negative integer with a
absolute value smaller than a. That is (-b) < a. In this case the expansion
generates a Beta function with a negative argument which is not defined.

The numerically evaluation for float and bigfloat numbers works and gives the
expected result.

(2) beta_incomplete(a,b,z) and a is a negative integer.

When a is a negative integer the Incomplete Beta function is only defined for b
a postive integer with b < (-a). See e.g. functions.wolfram.com for a defintion
for this case.

This definition works fine for integer, float and bigfloat evaluation. 

But functions.wolfram.com only give a result for -a = b and this result differs
by a factor of two from the result I have implemented in Maxima. For other valid
cases functions.wolfram.com gives ComplexInfinity as a result. Maxima gets a
real value too.

When I investigate float values very near to the integer values the numerically
evaluation reproduce the results of the implemented expansion. So, what is
correct?

Dieter Kaiser