-----maxima-bounces at math.utexas.edu wrote: -----
>To: maxima at math.utexas.edu
>From: sen1 at math.msu.edu
>Sent by: maxima-bounces at math.utexas.edu
>Date: 06/05/2007 09:23AM
>Subject: question about 'is', 'compare'
>
>Hello,
> I have some questions about 'is' and 'compare'
>
>Consider the following:
>
>
>(%i1) assume(x > 2);
>(%o1) [x > 2]
>(%i2) is (x >1);
>(%o2) true
>(%i3) is (x^2 > 2);
>(%o3) unknown
>(%i4) is (x^2 > 3);
>(%o4) unknown
>(%i5) is (x^2 > 4);
>(%o5) true
>(%i6) compare(x^2,3);
>(%o6) unknown
>
>Is there a simple way to make sure that, after setting
> assume(x > 2)
>
>one gets
> is (x^2 > 3)
>to result in 'true' ?
No, there is no simple way to do this. Also, the function 'compare' is
no smarter than is 'is.' The non-simple way to get the answer you expect
is to to replace (pretty much all of) /src/compar.lisp with something
better. Even with linear inequalities, Maxima doesn't always correctly
determine the sign. I don't know if this is due to bugs or to algorithmic
weakness in compar.lisp (I'm guessing it is algorithmic weakness). I think
a better sign function should be a top priority.
Barton