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.nasse...@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+unsubscr...@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+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/sympy/CAKgW%3D6J4BzL%3DFn1iFj4pvygpu9zj0zhr7xQY7o%2BLTA4MtUYY6w%40mail.gmail.com.