WOLFRAM

Resolve[expr]

attempts to resolve expr into a form that eliminates ForAll and Exists quantifiers.

Resolve[expr,dom]

works over the domain dom. Common choices of dom are Complexes, Reals, and Booleans.

Details and Options

  • Resolve is in effect automatically applied by Reduce.
  • expr can contain equations, inequalities, domain specifications, and quantifiers, in the same form as in Reduce.
  • The statement expr can be any logical combination of:
  • lhs==rhsequations
    lhs!=rhsinequations
    lhs>rhs or lhs>=rhs inequalities
    exprdomdomain specifications
    {x,y,}regregion specification
    ForAll[x,cond,expr]universal quantifiers
    Exists[x,cond,expr]existential quantifiers
  • The result of Resolve[expr] always describes exactly the same mathematical set as expr, but without quantifiers.
  • Resolve[expr] assumes by default that quantities appearing algebraically in inequalities are real, while all other quantities are complex.
  • When a quantifier such as ForAll[x,] is eliminated, the result will contain no mention of the localized variable x.
  • Resolve[expr] can in principle always eliminate quantifiers if expr contains only polynomial equations and inequalities over the reals or complexes.
  • Resolve[expr] can in principle always eliminate quantifiers for any Boolean expression expr.

Examples

open allclose all

Basic Examples  (4)Summary of the most common use cases

Prove that the unit disk is nonempty:

Out[1]=1

Find the conditions for a quadratic form over the reals to be positive:

Out[1]=1

Find conditions for a quadratic to have at least two distinct complex roots:

Out[1]=1

Find the projection of a geometric region:

Out[1]=1
Out[2]=2

Scope  (52)Survey of the scope of standard use cases

Complex Domain  (6)

Decide the existence of solutions of a univariate polynomial equation:

Out[1]=1

Decide the existence of solutions of a multivariate polynomial system:

Out[1]=1

Decide the truth value of fully quantified polynomial formulas:

Out[1]=1
Out[2]=2

Find conditions under which a polynomial equation has solutions:

Out[1]=1

Find conditions under which a polynomial system has solutions:

Out[1]=1

Find conditions under which a quantified polynomial formula is true:

Out[1]=1

Real Domain  (18)

Decide the existence of solutions of a univariate polynomial equation:

Out[1]=1

Decide the existence of solutions of a univariate polynomial inequality:

Out[1]=1

Decide the existence of solutions of a multivariate polynomial system:

Out[1]=1

Decide the truth value of fully quantified polynomial formulas:

Out[1]=1
Out[2]=2

Decide the existence of solutions of an exp-log equation:

Out[1]=1

Decide the existence of solutions of an exp-log inequality:

Out[1]=1

Decide the existence of solutions of an elementary function equation in a bounded interval:

Out[1]=1

Decide the existence of solutions of a holomorphic function equation in a bounded interval:

Out[1]=1

Decide the existence of solutions of a periodic elementary function equation:

Out[1]=1

Fully quantified formulas exp-log in the first variable and polynomial in the other variables:

Out[1]=1
Out[2]=2

Fully quantified formulas elementary and bounded in the first variable:

Out[1]=1
Out[2]=2

Fully quantified formulas holomorphic and bounded in the first variable:

Out[1]=1
Out[2]=2

Find conditions under which a linear system has solutions:

Out[1]=1

Find conditions under which a quadratic system has solutions:

Out[1]=1

Find conditions under which a polynomial system has solutions:

Out[1]=1

Find conditions under which a formula linear in quantified variables is true:

Out[1]=1

Find conditions under which a formula quadratic in quantified variables is true:

Out[1]=1

Find conditions under which a quantified polynomial formula is true:

Out[1]=1

Integer Domain  (10)

Decide the existence of solutions of a linear system of equations:

Out[1]=1

Decide the existence of solutions of a linear system of equations and inequalities:

Out[1]=1

Decide the existence of solutions of a univariate polynomial equation:

Out[1]=1

Decide the existence of solutions of a univariate polynomial inequality:

Out[1]=1

Decide the existence of solutions of Frobenius equations:

Out[1]=1
Out[2]=2

Decide the existence of solutions of binary quadratic equations:

Out[1]=1
Out[2]=2

Decide the existence of solutions of a Thue equation:

Out[1]=1

Decide the existence of solutions of a sum of squares equation:

Out[1]=1

Decide the existence of solutions of a bounded system of equations and inequalities:

Out[1]=1

Decide the existence of solutions of a system of congruences:

Out[1]=1

Boolean Domain  (2)

Decide the satisfiability of a Boolean formula:

Out[1]=1

Find conditions under which a quantified Boolean formula is true:

Out[1]=1

Finite Field Domains  (5)

Decide the existence of solutions of univariate equations:

Out[2]=2
Out[3]=3

Verify that a univariate equation is satisfied by all field elements:

Out[1]=1

Decide the existence of solutions of systems of linear equations:

Out[1]=1
Out[2]=2

Decide the existence of solutions of systems of polynomial equations:

Out[1]=1
Out[2]=2

Eliminate quantifiers:

Out[1]=1
Out[2]=2

Mixed Domains  (3)

Decide the existence of solutions of an equation involving a real and a complex variable:

Out[1]=1

Decide the existence of solutions of an inequality involving Abs[x]:

Out[1]=1

Find under what conditions a fourth power of a complex number is real:

Out[1]=1

Geometric Regions  (8)

Test :

Out[4]=4

Get conditions for :

Out[8]=8

Project a cone to the - plane:

Out[2]=2

Plot it:

Out[3]=3

An implicitly defined region:

Out[2]=2

A parametrically defined region:

Out[2]=2

Derived regions:

Out[2]=2

Plot it:

Out[3]=3

Regions dependent on parameters:

Out[2]=2

The conditions on indicate when the line intersects the circle:

Out[3]=3

A condition for :

Out[2]=2

The condition tells when :

Out[3]=3

Vector variables:

Out[2]=2

Options  (4)Common values & functionality for each option

Backsubstitution  (1)

Here the solutions for x are expressed in terms of y:

Out[1]=1

With Backsubstitution->True, Resolve gives explicit numeric values for x:

Out[2]=2

Cubics  (1)

By default, Resolve does not use general formulas for solving cubics in radicals:

Out[1]=1

With Cubics->True, Resolve expresses roots of cubics in terms of radicals:

Out[2]=2

Quartics  (1)

By default, Resolve does not use general formulas for solving quartics in radicals:

Out[1]=1

With Quartics->True, Resolve expresses roots of quartics in terms of radicals:

Out[2]=2

WorkingPrecision  (1)

This computation takes a long time due to high degrees of algebraic numbers involved:

Out[1]=1

With WorkingPrecision->100 you get an answer faster, but it may be incorrect:

Out[2]=2

Applications  (9)Sample problems that can be solved with this function

Polynomials  (2)

Find conditions for a quintic to have all roots equal:

Out[2]=2

Find conditions for a quadratic to be always positive:

Out[1]=1

Theorem Proving  (3)

Prove the inequality between the arithmetic mean and the geometric mean:

Out[1]=1

Prove a special case of Hölder's inequality:

Out[1]=1

Prove a special case of Minkowski's inequality:

Out[1]=1

Geometry  (4)

The region is a subset of , if is true. Show that Disk[{0,0},{2,1}] is a subset of Rectangle[{-2,-1},{2,1}]:

Out[3]=3

Plot it:

Out[4]=4

Show that Cylinder[]Ball[{0,0,0},2]:

Out[2]=2

Plot it:

Out[3]=3

A region is disjoint from if . Show that Circle[{0,0},2] and Disk[{0,0},1] are disjoint:

There are no points in the intersection, so they are disjoint:

Out[2]=2

Plot it:

Out[3]=3

A region intersects if . Show that Circle[{0,0},1] intersects Disk[{1/2,0},1]:

There are points in the intersection:

Out[2]=2

Plot it:

Out[3]=3

Properties & Relations  (5)Properties of the function, and connections to other functions

For fully quantified systems of equations and inequalities, Resolve is equivalent to Reduce:

Out[1]=1
Out[2]=2

A solution instance can be found with FindInstance:

Out[3]=3

For systems with free variables, Resolve may return an unsolved system:

Out[1]=1

Reduce eliminates quantifiers and solves the resulting system:

Out[2]=2

Eliminate can be used to eliminate variables from systems of complex polynomial equations:

Out[1]=1

Resolve gives the same equations, but may also give inequations:

Out[2]=2

Find a formula description of a TransformedRegion:

Out[1]=1
Out[2]=2

Compute a formula description of using RegionMember:

Out[3]=3

Check that the formulas are equivalent:

Out[4]=4

Resolve shows that the polynomial is non-negative:

Out[2]=2

Use PolynomialSumOfSquaresList to represent as a sum of squares:

Out[3]=3
Out[4]=4

The Motzkin polynomial is non-negative, but is not a sum of squares:

Out[6]=6
Out[7]=7

Possible Issues  (1)Common pitfalls and unexpected behavior

Because x appears in an inequality, it is assumed to be real:

Out[1]=1

This allows complex values of x for which both sides of the inequality are real:

Out[2]=2
Wolfram Research (2003), Resolve, Wolfram Language function, https://reference.wolfram.com/language/ref/Resolve.html (updated 2024).
Wolfram Research (2003), Resolve, Wolfram Language function, https://reference.wolfram.com/language/ref/Resolve.html (updated 2024).

Text

Wolfram Research (2003), Resolve, Wolfram Language function, https://reference.wolfram.com/language/ref/Resolve.html (updated 2024).

Wolfram Research (2003), Resolve, Wolfram Language function, https://reference.wolfram.com/language/ref/Resolve.html (updated 2024).

CMS

Wolfram Language. 2003. "Resolve." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2024. https://reference.wolfram.com/language/ref/Resolve.html.

Wolfram Language. 2003. "Resolve." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2024. https://reference.wolfram.com/language/ref/Resolve.html.

APA

Wolfram Language. (2003). Resolve. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/Resolve.html

Wolfram Language. (2003). Resolve. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/Resolve.html

BibTeX

@misc{reference.wolfram_2025_resolve, author="Wolfram Research", title="{Resolve}", year="2024", howpublished="\url{https://reference.wolfram.com/language/ref/Resolve.html}", note=[Accessed: 19-June-2025 ]}

@misc{reference.wolfram_2025_resolve, author="Wolfram Research", title="{Resolve}", year="2024", howpublished="\url{https://reference.wolfram.com/language/ref/Resolve.html}", note=[Accessed: 19-June-2025 ]}

BibLaTeX

@online{reference.wolfram_2025_resolve, organization={Wolfram Research}, title={Resolve}, year={2024}, url={https://reference.wolfram.com/language/ref/Resolve.html}, note=[Accessed: 19-June-2025 ]}

@online{reference.wolfram_2025_resolve, organization={Wolfram Research}, title={Resolve}, year={2024}, url={https://reference.wolfram.com/language/ref/Resolve.html}, note=[Accessed: 19-June-2025 ]}