I am trying to obtain some exact analytical results without resorting to numerical approximations, and I ended up with a pretty huge expression that Mathematica is really struggling with. It has no variables, no crazy things like 17th degree polynomials etc. but Mathematica still can't FullSimplify it.

I uploaded it on pastebin so you can just Import it and see. You can check numerically that it's just a real expression, it gives -0.075865.

I have tried a few methods that worked for me before — expanding it in different ways or trying FullSimplify with a very short TimeConstraint to obtain even a slightly simplified form. However, nothing works and Mathematica keeps running out of memory or the kernel simply quits while evaluating the expression (Mathematica 10.3, OS X).

Are there any tricks or methods to obtain a simplified expression for complicated analytical results like that? What else can I try?

  • $\begingroup$ Do you have any steps before, where you might simplify? $\endgroup$
    – kiara
    Commented Mar 23, 2016 at 15:29
  • $\begingroup$ @Fabian Not really. The expression comes from the normalized eigenvectors of a (fully simplified) matrix. It applies a very simple function (2nd degree polynomial) to their coefficients, and simplifying the eigenvectors themselves is basically equivalent to simplifying this. I also get no results there. $\endgroup$
    – Mmmm
    Commented Mar 23, 2016 at 15:37
  • $\begingroup$ I don't think FullSimplify can handle it because the way it operates. $\endgroup$
    – Al Guy
    Commented Mar 23, 2016 at 18:25
  • $\begingroup$ What do you mean by "simplify"? The final numerical value is the "simplification" of that enormous term. Why isn't N[ ] sufficient? In your terminology, what would be the "simplification" of $3 + 5$? $\endgroup$ Commented Mar 23, 2016 at 18:52
  • $\begingroup$ You probably have to to it by hand. So pick terms and simplify them individually, step by step. $\endgroup$
    – kiara
    Commented Mar 24, 2016 at 10:15

1 Answer 1


You can use

RootApproximant[N[val, 10000], 20]

(14700 - 12000 Sqrt[2])/29929


newval=(14700 - 12000 Sqrt[2])/29929;

To test it:

N[newval, 100000] - N[val, 100000]


but strangely:

N[newval - val]


  • $\begingroup$ the last result is not strange. It is doing a machine precision evaluation of that whole mess, so unlikely to be exact zero even if your newval is the exact correct expression. $\endgroup$
    – george2079
    Commented Mar 24, 2016 at 17:38
  • 1
    $\begingroup$ maybe want to look at this: mathematica.stackexchange.com/q/18381/2079 $\endgroup$
    – george2079
    Commented Mar 24, 2016 at 17:46

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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