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