>>>>> "Barton" == Barton Willis <willisb at unk.edu> writes:
Barton> I noticed that big float arithmetic often calls
Barton> 'mgrp' -- unnecessarily, I think. An example:
Barton> (%i1) (6.5b0 + %i*3.4b0) * (3.4b0 + 5.6b0*%i);
1> (MGRP ((BIGFLOAT SIMP 56) 50440315826549555 3)
Barton> ((BIGFLOAT SIMP 56) 61248954932238746 2))
Barton> <1 (MGRP T)
Barton> (%o1) (3.4B0*%i+6.5B0)*(5.6B0*%i+3.4B0)
Barton> Replacing the big floats with doubles, the call to
Barton> mgrp doesn't happen. I'm too lazy to figure out
mgrp isn't called for doubles, but great is, which handles doubles
itself and calls mgrp for bigfloats.
Barton> what is going on. But if anybody knows, I'd like
Barton> to know why Maxima calls mgrp.
I don't understand why the comparison needs to be done, but it's in
timesin (src/simp.lisp), which is part of the simplifier for
multiplication. I don't understand what timesin really does.
Ray