Re: algebraic numbers
- To: mathgroup at smc.vnet.net
- Subject: [mg106011] Re: [mg105989] algebraic numbers
- From: Robert Coquereaux <robert.coquereaux at gmail.com>
- Date: Wed, 30 Dec 2009 04:14:16 -0500 (EST)
- References: <200912290620.BAA02732@smc.vnet.net>
What about
z= 5.3823323474417620387383087344468466809530954887989;
In[1]:= RootApproximant[z,8]
Out[1]= Root[576-960 #1^2+352 #1^4-40 #1^6+#1^8&,8] (* you get back
your minimal polynomial in one stroke *)
In[2]:= ToRadicals[%,8]]
Out[2]= Sqrt[2 (5+Sqrt[15]+2 Sqrt[4+Sqrt[15]])]
In[3]:= RootReduce[% ==Sqrt[2]+Sqrt[3]+Sqrt[5]] (* check *)
Out[3]= True
Notice that RootApproximant stabilizes after s=8
In[4]:= Table[RootApproximant[z, s], {s, 7, 10}]
Out[4]= {Root[421813 + 165807 #1 + 636917 #1^2 + 855877 #1^3 - 1050961
#1^4 -
172764 #1^5 - 22412 #1^6 + 15697 #1^7 &, 3],
Root[576 - 960 #1^2 + 352 #1^4 - 40 #1^6 + #1^8 &, 8],
Root[576 - 960 #1^2 + 352 #1^4 - 40 #1^6 + #1^8 &, 8],
Root[576 - 960 #1^2 + 352 #1^4 - 40 #1^6 + #1^8 &, 8]}
However there are many (!) algebraic numbers that share the same first
N digits...
If you give less digits for z, you will get another candidate for the
minimal polynomial.
In[5]:= Table[RootApproximant[N[z,s],8],{s,25,27}]
Out[5]= {
Root[443+275 #1+146 #1^2-261 #1^3+234 #1^4-13 #1^5-340 #1^6-126
#1^7+35 #1^8&,2],
Root[576-960 #1^2+352 #1^4-40 #1^6+#1^8&,8],
Root[576-960 #1^2+352 #1^4-40 #1^6+#1^8&,8]}
In any case, you will get get an answer (a polynomial) even if x is
not algebraic, whatever the number of digits you give.
In[6]:= Table[RootApproximant[N[Pi,10],s],{s,8,10}]
Out[6]= {Root[5-#1+7 #1^2-14 #1^3-3 #1^4-#1^5+#1^6&,2],Root[1+#1+6
#1^2+#1^3-5 #1^4-5 #1^5+2 #1^6&,2],Root[1+#1+6 #1^2+#1^3-5 #1^4-5
#1^5+2 #1^6&,2]}
To recognize a number x as algebraic, from its N first figures, is
impossible.
And to recognize it as "probably algebraic", as you write, does not
make much sense to me (using measure theory would give probability 0,
anyway).
Now, if you already know that, for some reason, x is algebraic, like
in your example, using RootApproximant may help you to recognize it.
Robert
Le 29 d=E9c. 09 =E0 07:20, Andre Hautot a =E9crit :
> x= Sqrt[2] + Sqrt[3] + Sqrt[5] is an algebraic number
>
> MinimalPolynomial[Sqrt[2] + Sqrt[3] + Sqrt[5], x]
>
> returns the polynomial : 576 - 960 x^2 + 352 x^4 - 40 x^6 + x^8 as
> expected
>
> Now suppose we only know the N first figures of x (N large enough), =
> say
> : N[x,50] = 5.3823323474417620387383087344468466809530954887989
>
> is it possible to recognize x as a probably algebraic number and to
> deduce its minimal polynomial ?
>
> Thanks for a hint,
> ahautot
>
>
- References:
- algebraic numbers
- From: Andre Hautot <ahautot@ulg.ac.be>
- algebraic numbers