# Way to simplify an inequality with many variables

my problem is the following:

I have three inequalities in five variables $x,u,a,b,c\in \mathbb{R},x>0$:

a/x >= +c + (1/(x))*Sqrt[a^2*(u^2 + 1) - 2*a*(b*u + c)*x + (b^2 + c^2)*x^2]

2*(u*b + c)/(u^2 + 1) >=  a/x + c + (1/(x))* Sqrt[a^2*(u^2 + 1)
- 2*a*(b*u + c)*x + (b^2 + c^2)*x^2]

2*((u - x)*(b - a) + c)/((u - x)^2 + 1) >=  a/x + c + (1/(x))* Sqrt[a^2*(u^2 + 1)
- 2*a*(b*u + c)*x + (b^2 + c^2)*x^2]


I need to find conditions on $x$ and $u$ such that for every value of $a,b,c$ the following inequality is satisfied:

  Max[2*a/x,2*(u*b + c)/(u^2 + 1), 2*((u - x)*(b - a)
+ c)/((u - x)^2 + 1)] >= a/x+ c + (1/(x))* Sqrt[a^2*(u^2 + 1)
- 2*a*(b*u + c)*x + (b^2 + c^2)*x^2]


My idea was to use the command

Simplify[Reduce[{Max[2*a/x,2*(u*b + c)/(u^2 + 1), 2*((u - x)*(b - a)
+ c)/((u - x)^2 + 1)] >= a/x+ c + (1/(x))* Sqrt[a^2*(u^2 + 1)
- 2*a*(b*u + c)*x + (b^2 + c^2)*x^2],x>0}, {x, u, a, b, c}]]


and search for a condition only with $x$ and $u$.

The only problem is that Mathematica seems to run out of memory: it starts running and computing and never ends.. I guess the condition with the Max is too hard to compute. Do you know if there is a lighter (in terms of computational power) way to solve the problem?

EDIT: x<0 is not acceptable as an answer because I consider only x>0

• Please post the expressions as copyable code snippets, so we can try. – Marius Ladegård Meyer May 31 '16 at 10:55
• ok, now it is better? – user294185 May 31 '16 at 10:58
• If you wrap the inequalities in backticks like this its perfect :) Or you can highlight the expressions and press the {} button in the question editor. – Marius Ladegård Meyer May 31 '16 at 11:00
• I find your question is not quite clear. ...to find conditions on u and v? There is x , not v. Moreover expressions could be simplified at least a bit. No condition on u? Where does this problem come from? – Artes May 31 '16 at 12:13
• sorry, it was "conditions on $x$ and $u$. I need to find $x$ and $u$ such that at least one of the inequalities is satisfied for every value of $a$ and $b$ and $c$. Is it clear now? – user294185 May 31 '16 at 12:17

I think it will work much faster if you define a domain for a,b,c. Otherwise you will end up with a lot of Conditionals.

for example

con1 = (2*a/x >=  a/x + c + (1/(x))*Sqrt[a^2*(u^2 + 1)
- 2*a*(b*u + c)*x + (b^2 + c^2)*x^2])
con2 = (2*(u*b + c)/(u^2 + 1) >= a/x + c + (1/(x))* Sqrt[a^2*(u^2 + 1)
- 2*a*(b*u + c)*x + (b^2 + c^2)*x^2])
con3 = (2*((u - x)*(b - a) + c)/((u - x)^2 + 1) >=  a/x + c
+ (1/(x))* Sqrt[a^2*(u^2 + 1) - 2*a*(b*u + c)*x + (b^2 + c^2)*x^2])


And what you are asking is

Reduce[con1 || con2 || con3, {x, u}, Reals]


I am not sure if there is a global solution and running for ages. So next best think I can do is define a domain. Lets take two conditions at a time

s2 = Reduce[con1 || con2, {x, u}, Reals]


will give you a large numbers of conditions and you can see that their is no unique result. So I define a domain, say a>b>c>0

Assuming[{a > b > c > 0}, Simplify[s2]]


Gives you a definite result. You can scan different ranges to get a full picture.

Visual Solution

Sometimes a visual method comes handy (it is a quack indeed). You just plot and check the solution.

Manipulate[
Row[{
RegionPlot[Block[{a = a0, b = b0, c = c0}, con1], {x, -10, 10}, {u, -10, 10}
,ImageSize -> 200],
RegionPlot[Block[{a = a0, b = b0, c = c0}, con2], {x, -10, 10}, {u, -10, 10}
,ImageSize -> 200],
RegionPlot[Block[{a = a0, b = b0, c = c0}, con3], {x, -10, 10}, {u, -10, 10}
,ImageSize -> 200]
}] , {a0, 0, 1}, {b0, 0, 1}, {c0, 0, 1}]


As you can see x<0 satisfy all cases. You can further verify with Reduce.

Reduce[Block[{a = 0.1, b = 0.1, c = 0.2}, {con1 || con2 || con3}], {x, u}, Reals]


x<0

or you can put it in Manipulate.

• At least one of ineaqualities has to be satisfied for any real a, b, c. Conditions are to be imposed on x and u and not on a, b, c. It seems you've misunderstood the question. – Artes May 31 '16 at 13:06
• Yes, Artes is right. Also, I'm sorry but I edited the question, because actually I need the Max to be greater than the expression with the square root – user294185 May 31 '16 at 13:26
• I am not sure if a global solution exists in this case. So probably the best choice is scanning different region and combine them. This is the best I can do in that case :| – Sumit May 31 '16 at 13:27
• Defining regions for $a$, $b$ and $c$ is not a problem. But what I do need is a result with conditions only for x and u, in which a,b,c don't appear. If I compile the code you wrote I get conditions with $a,b,c$ – user294185 May 31 '16 at 13:36
• Another problem is that if I try to do s2 = Reduce[con1 || con2 || con3, {x, u}, Reals] I get the same problem of Mathematica running indefinitely.. – user294185 May 31 '16 at 15:55