Using SageMath 8.8, I encountered a strange error involving boolean tests. The following code reproduces the issue:
x, y = var('x, y')
assume(x>0)
assume(y>0)
bool(y*(x-y)==0)
RuntimeError: ECL says: C-STACK overflow at size 1048576. Stack can probably be resized.
Proceed with caution.
This code should obviously return False
. Changing y*(x-y)
to x*(y-x)
indeed returns False
, which means x
and y
cannot be exchanged. Without the assumptions, the code works as expected.
I initially though it was due to my Sage installation, but running this code on https://sagecell.sagemath.org/ also produces asymmetric behavior, though no error comes out (just a blank answer).
Is this a known issue ? Can someone reproduce this ?