# Inequalities

Just as the *equation* x^2+3x==2 asserts that x^2+3x is equal to 2, so also the *inequality* x^2+3x>2 asserts that x^2+3x is greater than 2. In the Wolfram Language, Reduce works not only on equations, but also on inequalities.

Reduce[{ineq_{1},ineq_{2},…},x] | reduce a collection of inequalities in x |

Manipulating univariate inequalities.

When applied to an equation, Reduce[eqn,x] tries to get a result consisting of simple equations for x of the form x==r_{1}, …. When applied to an inequality, Reduce[ineq,x] does the exactly analogous thing, and tries to get a result consisting of simple inequalities for x of the form l_{1}<x<r_{1}, ….

You can think of the result generated by Reduce[ineq,x] as representing a series of intervals, described by inequalities. Since the graph of a polynomial of degree can go up and down as many as times, a polynomial inequality of degree can give rise to as many as distinct intervals.

Transcendental functions like have graphs that go up and down infinitely many times, so that infinitely many intervals can be generated.

If you have inequalities that involve <= as well as <, there may be isolated points where the inequalities can be satisfied. Reduce represents such points by giving equations.

Reduce[{ineq_{1},ineq_{2},…},{x_{1}, x_{2}, … }] | reduce a collection of inequalities in several variables |

For inequalities involving several variables, Reduce in effect yields nested collections of interval specifications, in which later variables have bounds that depend on earlier variables.

In geometrical terms, any linear inequality divides space into two halves. Lists of linear inequalities thus define polyhedra, sometimes bounded, sometimes not. Reduce represents such polyhedra in terms of nested inequalities. The corners of the polyhedra always appear among the endpoints of these inequalities.

Lists of inequalities in general represent regions of overlap between geometrical objects. Often the description of these can be quite complicated.

If you have inequalities that involve parameters, Reduce automatically handles the different cases that can occur, just as it does for equations.

Reduce tries to give you a complete description of the region defined by a set of inequalities. Sometimes, however, you may just want to find individual instances of values of variables that satisfy the inequalities. You can do this using FindInstance.

FindInstance[ineqs,{x_{1},x_{2},…}] | try to find an instance of the x_{i} satisfying ineqs |

FindInstance[ineqs,vars,n] | try to find n instances |

Finding individual points that satisfy inequalities.

FindInstance is in some ways an analog for inequalities of Solve for equations. For like Solve, it returns a list of rules giving specific values for variables. But while for equations these values can generically give an accurate representation of all solutions, for inequalities they can only correspond to isolated sample points within the regions described by the inequalities.

Every time you call FindInstance with specific input, it will give the same output. And when there are instances that correspond to special, limiting, points of some kind, it will preferentially return these. But in general, the distribution of instances returned by FindInstance will typically seem somewhat random. Each instance is, however, in effect a constructive proof that the inequalities you have given can in fact be satisfied.

In[25]:= |