For simple domains like this, the old assumptions work. Just define `var('z 
w', positive=True)` and then the inequalities evaluate.

You might try AccumBounds for more complicated expressions

B = AccumBounds
(z**2 - w**2).subs(z,B(0,1)).subs(w,B(0,2))
AccumBounds(-4,1)

/c

On Thursday, November 3, 2022 at 4:02:11 PM UTC-5 Joseph Nasser wrote:

> Thanks to all for the comments - much appreciated. Aaron's suggestion to 
> use ask() is sufficient for me at the moment. It would be great to support 
> relational inequalities between variables (eg, z > w) in the future. 
>
>
>
> On Wed, Nov 2, 2022 at 11:21 PM Jeremy Monat <jem...@gmail.com> wrote:
>
>> Perhaps relevant: A new page on reducing ("solving") sets of inequalities 
>> <https://docs.sympy.org/dev/guides/solving/reduce-inequalities-algebraically.html>
>>  
>> has recently been published to the dev version of the documentation.
>>
>> Jeremy Monat
>>
>>
>> On Tue, Nov 1, 2022 at 7:03 PM Aaron Meurer <asme...@gmail.com> wrote:
>>
>>> This is currently only implemented in ask(), and you have to use
>>> Q.positive(x) instead of x > 0 (ask does not yet know how to deal with
>>> inequalities directly):
>>>
>>> >>> ask(Q.positive(z**2), Q.positive(z))
>>> True
>>> >>> ask(Q.positive(z**2 + w**2), Q.positive(z) & Q.positive(w))
>>> True
>>>
>>> Aaron Meurer
>>>
>>> On Mon, Oct 31, 2022 at 1:10 PM Joseph Nasser <joseph....@gmail.com> 
>>> wrote:
>>> >
>>> > Hello,
>>> >
>>> > I would like to check whether an inequality with multiple variables is 
>>> satisfied under certain assumptions on the variables. Is this supported? 
>>> Using refine seems to work with one variable but not a multi-variable 
>>> expression. I am using Sympy 1.11.1
>>> >
>>> > from sympy import Q
>>> > var('z w', real=True)
>>> > refine(z**2 > 0, Q.positive(z)) # Returns BooleanTrue, expected 
>>> behavior
>>> > refine(z**2 + w**2 > 0, Q.positive(z) & Q.positive(w)) #does not 
>>> return a Boolean type
>>> >
>>> > Thanks
>>> >
>>> > --
>>> > You received this message because you are subscribed to the Google 
>>> Groups "sympy" group.
>>> > To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to sympy+un...@googlegroups.com.
>>> > To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/sympy/f0f91ba2-4432-419d-a832-9e43b5bd1b7en%40googlegroups.com
>>> .
>>>
>>> -- 
>>> You received this message because you are subscribed to the Google 
>>> Groups "sympy" group.
>>> To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to sympy+un...@googlegroups.com.
>>> To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/sympy/CAKgW%3D6J4BzL%3DFn1iFj4pvygpu9zj0zhr7xQY7o%2BLTA4MtUYY6w%40mail.gmail.com
>>> .
>>>
>> -- 
>>
> You received this message because you are subscribed to a topic in the 
>> Google Groups "sympy" group.
>> To unsubscribe from this topic, visit 
>> https://groups.google.com/d/topic/sympy/tVo7iZx1ts0/unsubscribe.
>> To unsubscribe from this group and all its topics, send an email to 
>> sympy+un...@googlegroups.com.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/sympy/CAO00iLjFYopHD1cdsWuVG%3D%2BeTpvhjWNFMHWfNfD1%3DLe%2BGTHc8g%40mail.gmail.com
>>  
>> <https://groups.google.com/d/msgid/sympy/CAO00iLjFYopHD1cdsWuVG%3D%2BeTpvhjWNFMHWfNfD1%3DLe%2BGTHc8g%40mail.gmail.com?utm_medium=email&utm_source=footer>
>> .
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sympy+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sympy/49bae37a-819e-47b5-a082-ba972e91fab7n%40googlegroups.com.

Reply via email to