Algebraic Numbers

Root[f,k]the k^(th) root of the polynomial equation

The representation of algebraic numbers.

When you enter a Root object, the polynomial that appears in it is automatically reduced to a minimal form.
In[1]:=
Click for copyable input
Out[1]=
This extracts the pure function which represents the polynomial, and applies it to .
In[2]:=
Click for copyable input
Out[2]=

Root objects are the way that Mathematica represents algebraic numbers. Algebraic numbers have the property that when you perform algebraic operations on them, you always get a single algebraic number as the result.

Here is the square root of an algebraic number.
In[3]:=
Click for copyable input
Out[3]=
RootReduce reduces this to a single Root object.
In[4]:=
Click for copyable input
Out[4]=
Here is a more complicated expression involving an algebraic number.
In[5]:=
Click for copyable input
Out[5]=
Again this can be reduced to a single Root object, albeit a fairly complicated one.
In[6]:=
Click for copyable input
Out[6]=
RootReduce[expr]attempt to reduce expr to a single Root object
ToRadicals[expr]attempt to transform Root objects to explicit radicals

Operations on algebraic numbers.

In this simple case the Root object is automatically expressed in terms of radicals.
In[7]:=
Click for copyable input
Out[7]=
When cubic polynomials are involved, Root objects are not automatically expressed in terms of radicals.
In[8]:=
Click for copyable input
Out[8]=
ToRadicals attempts to express all Root objects in terms of radicals.
In[9]:=
Click for copyable input
Out[9]=

If Solve and ToRadicals do not succeed in expressing the solution to a particular polynomial equation in terms of radicals, then it is a good guess that this fundamentally cannot be done. However, you should realize that there are some special cases in which a reduction to radicals is in principle possible, but Mathematica cannot find it. The simplest example is the equation , but here the solution in terms of radicals is very complicated. The equation is another example, where now is a solution.

This gives a Root object involving a degree six polynomial.
In[10]:=
Click for copyable input
Out[10]=
Even though a simple form in terms of radicals does exist, ToRadicals does not find it.
In[11]:=
Click for copyable input
Out[11]=

Beyond degree four, most polynomials do not have roots that can be expressed at all in terms of radicals. However, for degree five it turns out that the roots can always be expressed in terms of elliptic or hypergeometric functions. The results, however, are typically much too complicated to be useful in practice.

RootSum[f,form]the sum of for all satisfying the polynomial equation
Normal[expr]the form of expr with RootSum replaced by explicit sums of Root objects

Sums of roots.

This computes the sum of the reciprocals of the roots of .
In[12]:=
Click for copyable input
Out[12]=
Now no explicit result can be given in terms of radicals.
In[13]:=
Click for copyable input
Out[13]=
This expands the RootSum into an explicit sum involving Root objects.
In[14]:=
Click for copyable input
Out[14]=
RootApproximant[x]converts the number x to one of the "simplest" algebraic numbers that approximates it well
RootApproximant[x,n]finds an algebraic number of degree at most n that approximates x
This recovers from a numerical approximation.
In[15]:=
Click for copyable input
Out[15]=
In this case, the result has degree at most 4.
In[16]:=
Click for copyable input
Out[16]=
This confirms that the Root expression does correspond to .
In[17]:=
Click for copyable input
Out[17]=
New to Mathematica? Find your learning path »
Have a question? Ask support »