On Thursday, September 24, 2015 at 8:22:53 PM UTC+2, Bill Page wrote:
>
> What answer should be expected when it is not possible to show that an 
> expression is zero?  Would you expect that 
>
>    ex.is_zero() = not(ex.is_nonzero()) ? 
>

Yes, for constant expressions (i.e. not containing symbols) at the moment.
With new code, yes for all expressions.
 

> I suppose that I should expect True or False from 
>
>   bool(ex=0) 
>
> and False in the case that it cannot be shown to be true.

(assuming you meant bool(ex==0))
If you expect that then don't be surprised when innocent code
behaves wrongly and uses unnecessary time, because the
function that gets called will also get called with e.g. if (ex):...

Having an explicit function for showing Truth(tm) will prevent
this.
 

> But I am not 
> so sure about is_...  Do you expect only two possible outcomes and an 
> runtime error in the case of a failure to decide one or the other? 
>

Having an explicit function for showing Truth(tm) will allow it
to have three results: Yes/No/NotImplemented
(Exceptions for things like complex x > 0).
 
Ticket #17700 proposes tristate logic, SymPy has it too.

The question is if we should call it is().
I just found that Maple too uses that name, so please voice any
final objections.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to