[Maxima] rootscontract(%i/2) -> -%i/2
fateman at cs.berkeley.edu
Wed Sep 2 19:45:35 CDT 2009
I think that the choice of branches of functions makes some of these
non-identities. Talking about exponents, which is really what is going
on, I think, consider...
log(x*y) is not log(x)+log(y), always.
0=log(1)=log((-1)*(-1)) = log(-1)+log(-1) = 2*%i*%pi.
Maybe what you are seeing is that putting stuff in the numerator can
also introduce a factor of %i*%pi.
If a transformation is not ALWAYS true, it is not a great rule to apply,
even if someone explicitly sets
some flag or other. That's how we get nuclear reactor meltdowns --
unforeseen consequences of
things that are "obviously true" and yet sometimes false.
Barton Willis wrote:
> -----maxima-bounces at math.utexas.edu wrote: -----
>> If we cut out the special substitution %i -> -1*(-1)^(-1/2) the errors
>> will vanish. The testsuite and the share-testsuite have no problems. The
>> only change is, that we no longer get the simplification %i/sqrt(x) ->
>> Furthermore, I think this simplification is in most cases not very
>> What do you think? Should we cut out this special case, which causes in
>> most cases wrong results?
> By itself, I don't think i/sqrt(x) -> -1/sqrt(-x) is useful. Maybe in
> combination with some other term, it might be, but I doubt it. Since
> the bug is not that difficult to trigger and it gives wrong results,
> I suggest that you comment out the offending code and make a source
> code comment about why the code was commented out.
> Maxima mailing list
> Maxima at math.utexas.edu
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Maxima