> In previous versions of Mathematica, there was a "RealOnly" package 
> which defined odd roots as negative and printed "Nonreal" anytime a 
> complex number was unavoidable.  The idea was that you could simplify 
> things for high school students or in situations in which you knew you 
> were only interested real numbers.  That package has apparently been 
> deprecated now in version 6.0, being replaced by the functionality to 
> "Reduce" an equation over the reals, etc.  For details, you can see the 
> package at http://library.wolfram.com/infocenter/MathSource/6771/

the problem with such a package, which basically simplifies (-1)^(1/3) to -1,
is that it might have side effects with internal computations, and thus give
wrong results.

Imagine for example that for a given computation, which involves real numbers
only at the user interface level, SAGE needs to compute internally over the
complex numbers. If such an internal algorithm working on the complex numbers
was designed for the classical branch choice, i.e., (-1)^(1/3) = 1/2 + 
sqrt(3)/2*I, then changing the rules will surely make this algorithm fail,
and thus return inconsistent or wrong results.

If one wants that (-1)^(1/3) simplifies to -1, the only clean solution I see
is to write a special function simplify_real to do that, but be prepared to
see inconsistent results.

Paul Zimmermann

--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/sage-support
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to