How hard would this be to implement? Can you suggest the simplest way to
add this to new-assumptions?


On Mon, Nov 5, 2012 at 2:09 PM, Ronan Lamy <ronan.l...@gmail.com> wrote:

> Le 03/11/2012 18:28, Matthew Rocklin a écrit :
>
>  I've run into an issue with the new assumptions system. Can anyone see
>> what is going on? Here is an example
>>
>> I've written this logic about triangular matrices into an assumptions
>> handler
>>
>>      In [1]: X = MatrixSymbol('X', 3, 3)
>>      In [2]: Y = MatrixSymbol('Y', 3, 3)
>>      In [3]: ask(Q.lower_triangular(X+Y), Q.lower_triangular(X) &
>> Q.lower_triangular(Y))
>>      Out[3]: True
>>
>> I've added the following two lines to known_facts
>>
>>      Implies(Q.lower_triangular, Q.triangular),
>>      Implies(Q.upper_triangular, Q.triangular),
>>
>> Which makes the following possible
>>
>>      In [4]: ask(Q.triangular(X), Q.lower_triangular(X))
>>      Out[4]: True
>>
>> However I don't seem to be able to combine the two
>>
>> In [5]: ask(Q.triangular(X+Y), Q.lower_triangular(X) &
>> Q.lower_triangular(Y))
>> <returns None>
>>
>> What could be happening here? Does SymPy support this kind of inference?
>>
>
> No, the new-style assumptions don't support this, only the old ones do
> that kind of thing. The new-style assumptions work by either evaluating the
> predicate or making logical deductions from assumptions operating on the
> same argument, but they can't infer the need for intermediate steps (in
> this case Q.lower_triangular(X+Y)).
>
> --
> You received this message because you are subscribed to the Google Groups
> "sympy" group.
> To post to this group, send email to sympy@googlegroups.com.
> To unsubscribe from this group, send email to sympy+unsubscribe@**
> googlegroups.com <sympy%2bunsubscr...@googlegroups.com>.
> For more options, visit this group at http://groups.google.com/**
> group/sympy?hl=en <http://groups.google.com/group/sympy?hl=en>.
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To post to this group, send email to sympy@googlegroups.com.
To unsubscribe from this group, send email to 
sympy+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sympy?hl=en.

Reply via email to