MathGroup Archive 2005

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: finding roots of 1 + 6*x - 8*x^3

Kennedy wrote:

>Hello All,
>I am trying to find the roots of
>1 + 6*x - 8*x^3.
>Roots[1+6*x-8*x^3==0,x] yields this ugly thing:
>(made uglier by my converting to InputForm)
>x == ((1 + I*Sqrt[3])/2)^(1/3)/2 +
>   1/(2^(2/3)*(1 + I*Sqrt[3])^(1/3)) ||
> x == -((1 - I*Sqrt[3])*((1 + I*Sqrt[3])/2)^(1/3))/4 -
>   ((1 + I*Sqrt[3])/2)^(2/3)/2 ||
> x == -(1 - I*Sqrt[3])/(2*2^(2/3)*(1 + I*Sqrt[3])^
>      (1/3)) - (1 + I*Sqrt[3])^(4/3)/(4*2^(1/3))
>This monstrosity is chock full of imaginaries,
>even though I know all three roots are real.
>I tried Solve too but got the same thing, except
>in the form of a set of replacements. My guess is
>that Solve just calls Roots when handed a poly-
>When I ran the above through FullSimplify, I
>got three "Root" objects, the upshot of which is
>that the roots of the polynomial are indeed the
>Roots of said polynomial. Huh.
>What command can I use to get the roots into
>a form that are
>(a)  purely real, and
>(b)  in radical form?
>PS.  Mathematica 4.2

It is a classical result of mathematics that this cannot be done:

That "monstrosity" you saw is simply the Cardano (or Tartaglia, I 
suppose) formulation for roots of a cubic. The Root[] form is often more 
convenient for various purposes than is the radical form. To get it 
directly one can do

SetOptions[Roots, Cubics->False, Quartics->False]

This will have the effect of disabling use of the Cardano formulas. Then 
real roots will indeed be explicitly real for purposes of e.g. the 
funtions N, Re, and Im.

Daniel Lichtblau
Wolfram Research

  • Prev by Date: Re: Re: SparseArray, DensityGraphics, ContourGraphics, and SurfaceGraphics
  • Next by Date: Re: comparing two lists
  • Previous by thread: finding roots of 1 + 6*x - 8*x^3
  • Next by thread: Re: finding roots of 1 + 6*x - 8*x^3