Absolute value of the Log function



I think the absolute value of the Log function has a problem.

This is correct:

(%i1) assume(x>0,x<1)$
(%i2) abs(log(x));
(%o2) -log(x)

But for a negative value Maxima simplifies the same way:

(%i3) assume(y<0)$

(%i4) abs(log(y));
(%o4) -log(y)

Therefore we get (a complex value):

(%i1) abs(log(-1/2));
(%o1) -log(-1/2)

And not the expected real answer:

sqrt(%pi^2+log(2)^2);

We get this answer the following way:

(%i8) limit(log(x),x,-1/2);
(%o8) %i*%pi-log(2)
(%i9) abs(%);
(%o9) sqrt(log(2)^2+%pi^2)

But not using the abs function in the limit:

(%i13) limit(abs(log(x)),x,-1/2);
(%o13) -log(-1/2)

The simplification happens because $sign returns always neg for a number
which is less than 1:

(%i15) assume(y<1)$
(%i16) sign(log(y));
(%o16) neg

I think $sign should return $pnz for a negative argument to the Log
function to avoid an inconsistent simplification.

Dieter Kaiser