#### 7.31 bug in ‘evalf/ellipticf‘, maplevr5, maple 6 and maple 7 (21.8.00)

I think there is a bug in ``evalf/EllipticF``

function over the complex numbers (at least in
MapleVR5). Consider the following input:

>Z:=int(sqrt(1+x^4)-x^2,x=a..b):

(The result is rather long expression with elliptic integral of the ﬁrst kind functions; the
second term was added to produce `O(1)`

result for large `(a-b))`

. Now consider, for
example

>Digits:=30:
>evalf(eval(Z,{a=0,b=100}));
1.23088423134039493019005903731 -
.0000892558644560151253063409319366 I

The error is obvious — the integral of real valued function along the real axis should be real.
Moreover, when the ‘int‘ is invoked with real limits or symbols ``assume`d`

to be real it gives
manifestly real answer (probably correct).

Well, it gets more and more curious:

> restart;
> assume(a<1,b>1);
> int(sqrt(1+x^4)-x^2,x=a..b);
>
3 3 4 4
- 1/3 b~ + 1/3 a~ + 1/3 b~ sqrt(1 + b~ ) - 1/3 a~ sqrt(1 + a~ )

a nice (but unfortunately wrong) result. Changing the assume-line to

>assume(a<1,b>1,a>-1);

seems to produce the correct result, as does also the explicit command

> int(sqrt(1+x^4)-x^2, x=0..100);