# Can Mathematica Resolve this inequality?

I want Mathematica to Indicate this inequality is (hopefully) true for all values that meet the initial conditions:

a+b+c=1 and a,b,c are positive real numbers

Sqrt[ab]/Sqrt[c + ab] + Sqrt[bc]/Sqrt[a + bc] + Sqrt[ac]/Sqrt[b + ac] <= 1.5


I tried this:

Resolve[ForAll[{a, b, c}, a > 0 && b > 0 && c > 0 && a + b + c == 1, Sqrt[ab]/Sqrt[c + ab] + Sqrt[bc]/Sqrt[a + bc] + Sqrt[ac]/Sqrt[b + ac] <= 1.5], Reals]


But it keeps on Evaluating.Is there something that i did wrong or Mathematica is unable to resolve this?Please consider that im new to Mathematica.

• @Cesareo: This results in {0.,{a->0.333333,b->0.333333,c->0.333333}}. so this is not it. Apr 23 '20 at 17:36
• This result means that $1.5-\frac{\sqrt{a b}}{\sqrt{a b+c}}-\frac{\sqrt{a c}}{\sqrt{a c+b}}-\frac{\sqrt{b c}}{\sqrt{a+b c}}\ge 0$ and the equality is attained at $a=b=c=\frac 13$ Apr 23 '20 at 17:45
• @Cesareo: You deleted your comment with your suggestion to try Minimize[{1.5-Sqrt[a*b]/Sqrt[c + a*b] + Sqrt[b*c]/Sqrt[a + b*c] + Sqrt[a*c]/Sqrt[b + a*c] ,a > 0 && b > 0 && c > 0 && a + b + c == 1},{a,b,c}]. You are not right that its result does the job. Upgrade your math. Apr 23 '20 at 18:00
• I deleted it because it wasn't understood. No need to upgrade my maths. Apr 23 '20 at 18:38
• Resolve[ForAll[{a,b},a>0&&b>0&&1-a-b>0,Sqrt[a b]/Sqrt[c+a b]+Sqrt[b c]/Sqrt[a+b c]+Sqrt[a c]/Sqrt[b+a c]<=3/2/.c->1-a-b],Reals] returns True, it takes about 1 minutes on my PC. Apr 24 '20 at 6:18

Use conditions to reduce to two parameters to verify assumption.

cond1 = a > 0 && b > 0 && c > 0;
cond2 = a + b + c == 1;

eq1 = Sqrt[a b]/Sqrt[c + a b] + Sqrt[b c]/Sqrt[a + b c] +
Sqrt[a c]/Sqrt[b + a c] <= 3/2 //
PowerExpand[#, Assumptions -> cond1] &

(*   Sqrt[(a b)/(a b + c)] + Sqrt[(a c)/(b + a c)] +
Sqrt[(b c)/(a + b c)] <= 3/2   *)

sol = First@Solve[cond2, c]

(*   {c -> 1 - a - b}   *)

eq2 = eq1 /. sol

(*   Sqrt[(a (1 - a - b))/(a (1 - a - b) + b)] +
Sqrt[(a b)/(1 - a - b + a b)] +
Sqrt[((1 - a - b) b)/(a + (1 - a - b) b)] <= 3/2   *)


Combine the two conditions

red1 = Reduce[cond1 /. sol, {a, b}]

(*   0 < a < 1 && 0 < b < 1 - a   *)

Resolve[ForAll[{a, b}, red1, eq2], {a, b}]

(*   True   *)

• Thanks for your answer.Could you please explain why just solving for c and substituting works so much faster and why your code runs faster than Chyanog? Apr 24 '20 at 9:35
• You get the same result if you just solve for a or b. I think, it works, because Reduce has to test for only two variables. Code of Chyanog seem not so fast because not simplifying with PowerExpand. Test it. Apr 24 '20 at 9:51