Subject: solve remembers too much, asks odd questions.
From: Richard Hennessy
Date: Sat, 06 Nov 2010 23:34:25 -0400
Warning: I am not a mathematician so this may be a dumb post. My 2 cents is
that Maxima needs better set notation. Like x is an element of P where P
could be real, complex, integer, etc. . . . It would be nice to be able to
say for example: To define rational numbers
(x|there exists an n and an m such that element(n, integers)=true and
element(m, integers)=true and x=m/n)
Saying this in coded precise Maxima mathematical notation and then drawing
inferences from that would be great, but you can't do that yet although I
think some of the stuff in to_poly_solve_extra.lisp is going in the right
direction. It would be nice to have a logic package that could help with
doing the inferences too.
Rich
-----Original Message-----
From: Richard Fateman
Sent: Saturday, November 06, 2010 3:26 PM
To: Maxima - list
Subject: solve remembers too much, asks odd questions.
maxima 5.21.0
solve(z=y^b,y) asks if b is an integer. type the same command again
and it doesn't ask if b is an integer, but assumes the previous result.
Is this intentional, remembering that information? I think it is an error.
if b is not an integer, Maxima asks if z is positive, negative or zero,
which excludes the possibility that z is complex.
Characterizing the solution set is not easy. Mathematica says y=z^(1/b) with
a warning about inverse functions. Mathematica's Reduce[...] instead of
Solve, which is supposed to characterize all solutions, seems not to
terminate.
(Mathematica 7.0)
What, then, is the minimal constraint on y and b such that ...
y = (y^1/b)^b ??
Let's pick a simple example, b=1+i.
define t(y) = y - y^(1/b)^b.
If Maxima (for example) is doing the computation "correctly" can we
expect that t(y)==0 ?
define tt(y):rectform(ev(t(y),numer)) to make the results easier on the
eye.
tt(1.0) is indeed 0.0 hurrah.
but tt(1.1) is not zero. tt(0.9) is not zero. not even close.
tt(1.0+0.001*%i) is not zero.
plot2d(tt(x),[x,0,5]) suggests that tt(x) is almost NEVER zero, for real x.
when IS tt(y) equal to zero??
A solution is discussed here ..
http://www.cs.berkeley.edu/~fateman/papers/y=z2w.pdf
What does this mean?
(a) generalizing from real to complex cannot be done by handwaving,
analogy, guesses
at what the user really wants, or just letting the program run and see
what comes out.
(b) generally, if you want to talk about the range of a function,
you should be talking about the range of the function, not the domain.
_______________________________________________
Maxima mailing list
Maxima at math.utexas.edu
http://www.math.utexas.edu/mailman/listinfo/maxima