MathGroup Archive 2002

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

Search the Archive

Re: PrimitiveElement doesn't work much.

  • To: mathgroup at smc.vnet.net
  • Subject: [mg33347] Re: [mg33325] PrimitiveElement doesn't work much.
  • From: Andrzej Kozlowski <andrzej at lineone.net>
  • Date: Sat, 16 Mar 2002 01:40:36 -0500 (EST)
  • Sender: owner-wri-mathgroup at wolfram.com

The reason seems to be that your way of representing these numbers is, 
at least in Mathematica's sense, analytic rather than  algebraic (square 
roots are somewhat special...)   The right way is to represent algebraic 
numbers as Root objects and then apply the PrimitiveElement function:

<< NumberTheory`PrimitiveElement`

In[2]:=
PrimitiveElement[z,{Root[#^3-2&,1],Root[#^3-3&,1]}]

Out[2]=
{Root[-125 - 87*#1^3 - 15*#1^6 + #1^9 & , 1],
   {(109*z)/45 + (7*z^4)/9 - (2*z^7)/45,
    -((64*z)/45) - (7*z^4)/9 + (2*z^7)/45}}

You can check that the root objects represent {2^(1/3), 3^(1/3)} with:

In[3]:=
ToRadicals[{Root[#^3-2&,1],Root[#^3-3&,1]}]

Out[3]=
{2^(1/3), 3^(1/3)}

You can also convert the answer to radicals:

In[4]:=
ToRadicals[Root[-125-87*#1^3-15*#1^6+#1^9&,1]]

Out[4]=
(5 + 3*2^(2/3)*3^(1/3) + 3*2^(1/3)*3^(2/3))^(1/3)

Andrzej Kozlowski
Toyama International University
JAPAN
http://platon.c.u-tokyo.ac.jp/andrzej/

On Friday, March 15, 2002, at 12:51  AM, Richard Fateman wrote:

> << NumberTheory`PrimitiveElement`
> PrimitiveElement[z, {Sqrt[2], Sqrt[3]}]
>   which is the example given, works fine.
>
>
> but
> PrimitiveElement[z, {2^(1/3), 3^(1/3)}]
> returns unchanged.
>
> There are algebraic numbers other than square roots.
> RJF
>
>
>
>



  • Prev by Date: RE: Shadow a part of plot without affecting frame ticks.
  • Next by Date: RE: Variable number of parameters
  • Previous by thread: Re: PrimitiveElement doesn't work much.
  • Next by thread: Mathematica and Microsoft.net