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.