MathOverflow is a question and answer site for professional mathematicians. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have a bunch of inequalities, and I'm trying to see if another inequality can be deduced from the first bunch. For example, assuming that $a \leq b$ and $c \leq d$, we can deduce that $a + c \leq b + d$, but we cannot deduce that $a + d \leq b + c$. Is there some software that allows me to take some inequalities which are assumed to be true as input, and to check if another input inequality can be deduced or proved from these earlier inequalities?

I am most familiar with MATLAB and it doesn't seem to do this. I realized that I could hack it and say for example $b = a + p$, $d = c + q$ with $p, q \geq 0$, then just writing $b + d - (a + c)$ and asking MATLAB to simplify the expression, and noticing that all the $p, q$ terms are nonnegative. But is there a more natural way to do this?

share|cite|improve this question
There is the Coq software. See – Damian Rössler Jul 31 '12 at 14:29
Use the Reduce function in mathematica...maybe that'll help. – Suvrit Jul 31 '12 at 17:42
If you're talking about linear inequalities (as in your examples), this can be written as a feasibility problem of linear programming. The nonlinear case is much more difficult. Still, numerical optimization software may be helpful. – Robert Israel Jul 31 '12 at 18:41
up vote 6 down vote accepted

As @Robert Israel points out, the linear case is MUCH easier than the general case, and the really general case (arbitrary inequalities of the form $f(\mathbf{x}) \geq 0$) is clearly undecidable, but if the inequalities are polynomial, this is the problem of "quantifier elimination over real closed fields", which you can google. The first algorithm was "Tarski's algorithm", there have been many improvements since, most of them used by computer algebra systems (Mathematica, Maple, etc).

share|cite|improve this answer
In particular, Maple 16 has new features for solving polynomial systems, including polynomial equations, inequations and inequalities. See, for instance,… – J W Jul 31 '12 at 20:24
Thank you for your answer. My case is linear, so I will be solving a feasibility problem for linear programming to find if the inequality is implied. But this is definitely useful information for me to keep in mind. – user25446 Aug 2 '12 at 17:15

According Wolfran,

Mathematica uses a large number of original algorithms to provide automatic systemwide support for inequalities and inequality constraints. Whereas equations can often be solved in terms of numbers, even representing solution sets for inequalities is only made possible by Mathematica's symbolic capabilities.

share|cite|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.