# Calculate minimum subject to conditions

What is the lowest value of $c$ such that

$\qquad a^2 + b^2 = c^2$

and

$\qquad ab + ac + bc = 100$

I want to solve this problem with Mathematica

### Edit

These conditions are generated from a right triangle with sides $a$ and $b$ and hypotenuse $c$.

This is not a not homework, but part of a personal research project.

• Please show us what you have tried so far. We aren't people who do homework for you! – JungHwan Min Jul 28 '16 at 17:07
• Welcome to Mathematica.SE! I suggest the following: 1) As you receive help, try to give it too, by answering questions in your area of expertise. 2) Take the tour! 3) When you see good questions and answers, vote them up by clicking the gray triangles, because the credibility of the system is based on the reputation gained by users sharing their knowledge. Also, please remember to accept the answer, if any, that solves your problem, by clicking the checkmark sign! – Michael E2 Jul 28 '16 at 17:32
• People here generally like users to post code as Mathematica code instead of images or TeX, so they can copy-paste it. It makes it convenient for them and more likely you will get someone to help you. You may find this this meta Q&A helpful – Michael E2 Jul 28 '16 at 17:33
• Have you seen Minimize[]? – Michael E2 Jul 28 '16 at 19:29

eqns = {a^2 + b^2 == c^2, a*b + a*c + b*c == 100, a > 0, b > 0, c > 0};

sol = Minimize[{c, eqns}, {a, b, c}] // ToRadicals // FullSimplify

(*  {10 Sqrt[2/7 (-1 + 2 Sqrt[2])], {a -> 10 Sqrt[1/7 (-1 + 2 Sqrt[2])],
b -> 10 Sqrt[1/7 (-1 + 2 Sqrt[2])], c -> 10 Sqrt[2/7 (-1 + 2 Sqrt[2])]}}  *)


The approximate numerical values are

sol // N

(*  {7.22778, {a -> 5.11081, b -> 5.11081, c -> 7.22778}}  *)


Verifying that the solution satisfies the equations and constraints

eqns /. sol[[-1]]

(*  {True, True, True, True, True}  *)


EDIT: Since a and b are interchangeable this can be simplified to

eqns2 = {2 a^2 == c^2, a^2 + 2*a*c == 100, a > 0, c > 0};

sol2 = Minimize[{c, eqns2}, {a, c}] // ToRadicals // FullSimplify

(*  {10 Sqrt[2/7 (-1 + 2 Sqrt[2])], {a -> 10 Sqrt[1/7 (-1 + 2 Sqrt[2])],
c -> 10 Sqrt[2/7 (-1 + 2 Sqrt[2])]}}  *)

sol[[1]] === sol2[[1]]

(*  True  *)