This is wrong--it says that zero is greater than complex infinity
(%i16) ?mgrp(0,infinity);
(%o16) true
These are OK
(%i17) ?mgrp(0,minf);
(%o17) true
(%i18) ?mgrp(0,inf);
(%o18) false
This one is maybe not wrong, but it's not optimal
(%i19) ?mgrp(0,ind);
sign: sign of ind is undefined.
And maybe this should be true
(%i20) ?mgrp(0,zeroa);
(%o20) - zeroa > 0
Not sure what would be a better result for
?mgrp(0,ind)
.?mgrp(0,x)
returns-x>0
but it doesn't make sense to return-ind>0
, since we don't know where theind
came from.Remember that
ind, zeroa, zerob
are really only "understood" by thelimit
package, and that the general simplifier does not handle them and other non-finite quantities correctly. Should it be true thatzeroa > 0 > zerob
? Yes, sure (sign
needs to be updated).But if there's more than on non-finite quantity in an expression, all bets are off....
Maxima bug reports should be in terms of the normal user interface.
Otherwise I wonder: "maybe the callers of
?mgrp
never invoke it in this case, so it doesn't matter".But in fact,
is(0>infinity)
=> true, andtrace
shows that comes from?mgrp
.Nothing wrong with mentioning
?mgrp
in the body of the bug report to help the next person to work on it, but the main bug report should be about user-visible behavior if at all possible, not about internals.This is related to bug #4120, which is about trying to compare items which are incomparable (strings and numbers) -- I think 0 and
infinity
are incomparable too, sinceinfinity
is supposed to be complex infinity.Dunno if it's MGRP or
sign
which needs to get fixed up here.