1
$\begingroup$

Is there any a nice looking solution to the following equation?

eq[x_] := 2 x q1 - 2 q2/x^3 - (4 x^3 q3 - 4 q5/x^5)/(4 Sqrt[x^4 q3 + q4 + q5/x^4])

Better than the one Mathematica gives as output?

 Solve[ eq[x] == 0, x]
$\endgroup$
  • $\begingroup$ If you simplify it to the form of polynomial, you will find that it has degree 16. Since there is no formula for the solution of polynomial with degree bigger than 4, I think there is no nice look solution. $\endgroup$ – MMM Mar 15 '14 at 6:09
4
$\begingroup$

One can ask what is a nice solution, should it be as simple as possible? Isn't it a bit vague concept?

Whatever that means there is a plenty of simple (and nice) solutions, e.g. simply x == 1 for all parameters equal to 1:

eq[1] /. {q1 -> 1, q2 -> 1, q3 -> 1, q4 -> 1, q5 -> 1}
0

Here we can provide appropriate conditions for parameters ensuring that x == 1 is a solution:

Solve[ eq[1] == 0 && (q1 | q2 | q3 | q4 | q5)  ∈  Reals, {q1}]
{{q1 -> 
  ConditionalExpression[ q2 - 1/2 Sqrt[(q3^2 - 2 q3 q5 + q5^2)/(q3 + q4 + q5)],
                         (q2 | q5) ∈ Reals && q3 - q5 <= 0 && q3 + q4 + q5 > 0]},
 {q1 -> 
  ConditionalExpression[ q2 + 1/2 Sqrt[(q3^2 - 2 q3 q5 + q5^2)/(q3 + q4 + q5)],
                         (q2 | q5) ∈ Reals && q3 - q5 > 0 && q3 + q4 + q5 > 0]}}

So I have answered the question (as it is).

Edit

Similarily we can find many solutions using FindInstance with some conditions restricting the solution space like e.g. searching for integer solutions, here we want to find $5$ of such solutions:

FindInstance[ eq[x] == 0 && -5 < x < 5, {x, q1, q2, q3, q4, q5}, Integers, 5]
 {{x -> -4, q1 -> 241, q2 -> 61715, q3 -> 13, q4 -> -6656, q5 -> 853412},
  {x -> -1, q1 -> -103, q2 -> -103, q3 -> 38, q4 -> 3, q5 -> 38},
  {x -> 3, q1 -> -39, q2 -> -3159, q3 -> -50, q4 -> 8153, q5 -> -328050},
  {x -> -3, q1 -> 159, q2 -> 12879, q3 -> -50, q4 -> 8168, q5 -> -328050}, 
  {x -> 2, q1 -> 113, q2 -> 1813, q3 -> -46, q4 -> 1516, q5 -> -11456}}

In case one prefers a general representation of solutions in terms of symbolic parameters we can proceed a different way. For the sake of simplicity at first we restrict our searching to the real domain. Suppressing conditional expressions with Normal and evaluating

x /. Solve[ eq[x] == 0, x, Reals] // Normal

we find that all these solutions are simple root objects

Table[
  Root[ 4 q2^2 q5 - q5^2 + (4 q2^2 q4 - 8 q1 q2 q5) #1^4 + 
       (4 q2^2 q3 - 8 q1 q2 q4 + 4 q1^2 q5 + 2 q3 q5) #1^8 + 
       (-8 q1 q2 q3 + 4 q1^2 q4) #1^12 + (4 q1^2 q3 - q3^2) #1^16 &, k], {k, 8}] 
 == Normal[ x /. Solve[ eq[x] == 0, x, Reals]]
True

We can represent these solutions in terms of radicals (use ToRadicals), however formulae would be quite involved. On the other hand we can find simpler solutions assuming certain special conditions, one can observe that it would be reasonable to supplement eq[x] == 0 with another equations expressing that two highest order coefficients (of Root expressions) vanish and then eliminating appropriate parameters from radicals, e.g.:

x /. Solve[ eq[x] == 0 && q3 == 4 q1^2 && -8 q1 q2 q3 + 4 q1^2 q4 == 0, 
            {x}, {q3, q4}] // TraditionalForm

enter image description here

$\endgroup$
  • $\begingroup$ congrats Artes, I didn't know that this is possible to do. But I think in any case big knowledge is necessary for this $\endgroup$ – Pipe Mar 15 '14 at 17:43
  • $\begingroup$ @Pipe You should remember that the last output is a solution under these assumptions q3 == 4 q1^2 && -8 q1 q2 q3 + 4 q1^2 q4 == 0. If they are not satisfied you have to rely on Solve and Reduce which produce rather involved results in this case. $\endgroup$ – Artes Mar 16 '14 at 0:56

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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