7.63 Bug in evalc in Maple V.4 (21.2.97)

7.63.1 luca ciotti

I think I found a bug in MapleV.4(00f).

evaluating

a:=int(exp(-x)/(1+x^2),x=0..infinity);
 

I get

a:=(I/2) (exp(I) Ei(1,I) - exp(-I) Ei(1,-I))
 

with

evalf(a) = 0.6214496240....
 

On the contrary,

evalf(evalc(a))= -1.0759... + I 2.643559
 

which is obviously wrong.

I suspect the bug is in the evalc() command.

In fact,

MapleV.3

evalc(Ei(1,I))    = - Ci(1) + I (Si(1) - 1/2 Pi) 
 
evalc(Ei(1,-I))   = - Ci(1) - I (Si(1) - 1/2 Pi)
 

MapleV.4

evalc(Ei(1,I))    = - Ci(1) + I (Si(1) - 1/2 Pi) 
 
evalc(Ei(1,-I))   = - Ci(1) - I (Si(1) + 3/2 Pi) 
                                       ^^^^^^^^
 

The bug is removed with Maple V Release 5. (U. Klein)

7.63.2 Sjoerd W. Rienstra

Continuing on this theme of Lucca Ciotti (sorry to say it, but Maple is a goldmine if it comes down to errors in branch cuts of complex functions):

The integral of a real function like: log(sin(x)) is of course determined up to a constant. If the integral happens to be explicitly available, this constant may be appear to be complex, and I can understand that if one of the occurring functions is multivalued (and has branches, branch cuts, etc) this constant may jump from one value to another along the x-interval. (This is why it is always tricky to accept a result from int(f(x),x=a..b) straightaway.)

However, the imaginary part of the integral of log(sin(x)) is not piecewise constant on 0..Pi!

Between 0 and Pi/2 it is constant, but it decays linearly between Pi/2 and Pi. (Then along Pi..2 Pi it also grows linearly, but this is how it should, because sin(x)<0, and log(sin(x)) an imaginary constant.)

So there is something more fishy going on ....