sign



Yes, assume/sign is very simple-minded.  Its core functionality is simply
maintaining a lattice (DAG) of relations, so from a<b and b<c, it can
conclude a<c.  Beyond that, it has a few tricks up its sleeve, but not
many. In particular, it doesn't do anything like the interval analysis that
would handle the sin case you mention.

Other simple (non-interval) cases it doesn't handle:

    assume(p-r>q,r>0)$ sign(p-q) => pnz ... oops
    sign(x^2+2*x+1) => pz  ... correct, done by factorization
    sign(x^2+2*x+2) => pnz ... doesn't look at discriminant...
    sign(exp(a+1)-exp(a)) => pos ... correct, exp is monotonic increasing
(maybe also done by factorization?)
    sign(exp(a+1)-exp(a)+1) => pnz ... oops

Of course, it would be wonderful if someone worked on this....

           -s







On Sun, Dec 23, 2012 at 7:21 AM, <leon.magiera at wp.pl> wrote:

>
>  The function 'sign' if applied to trigonometric function does not return
> the appropriate value (?).
>
> Example:
> assume(x>0,x<%pi)$
> sign(sin(x));
>
>
> Leon
>
>
> _______________________________________________
> Maxima mailing list
> Maxima at math.utexas.edu
> http://www.math.utexas.edu/mailman/listinfo/maxima
>