id,summary,reporter,owner,description,type,status,priority,milestone,component,resolution,keywords,cc,merged,author,reviewer,upstream,work_issues,branch,commit,dependencies,stopgaps
28538,Segfault for boolean evaluation of expression with assumptions,tmonteil,,"As reported on [https://ask.sagemath.org/question/48058/stack-overflow-in-boolean-test/ this ask question]:
{{{
sage: x, y = var('x, y')
sage: assume(x>0)
sage: assume(y>0)
sage: bool(y*(x-y)==0)
}}}
leads to (on my computer 8.9.rc1) a sequence of:
{{{
;;;
;;; Detected access to protected memory, also kwown as 'bus or segmentation fault'.
;;; Jumping to the outermost toplevel prompt
;;;
}}}
followed by a `Segmentation fault` crash of Sage.
Or (as reported, on 8.8):
{{{
RuntimeError: ECL says: C-STACK overflow at size 1048576. Stack can probably be resized. Proceed with caution.
}}}
Exchanging `x` and `y` works correctly:
{{{
sage: x, y = var('x, y')
sage: assume(x>0)
sage: assume(y>0)
sage: bool(x*(y-x)==0)
False
}}}
Upstream ticket: https://sourceforge.net/p/maxima/bugs/3583/",defect,closed,critical,sage-9.2,symbolics,fixed,,rws kcrisman,,Thierry Monteil,Matthias Koeppe,"Fixed upstream, in a later stable release.",,cb701710ac20b6a1b74505b44d06ca5c15412fd2,cb701710ac20b6a1b74505b44d06ca5c15412fd2,#30063,