[GAP Forum] construction of an AlgebraicExtension

Alexander Hulpke hulpke at math.colostate.edu
Wed Dec 9 20:04:50 GMT 2009



Dear Forum, Dear Xialoei Zhang,

> I want to make a field, such as Q(2^(1/3), 2^(1/3)i), where Q is
> Rationals, and i^2=-1.
> 
> I am fail to describe 2^(1/3) and 2^(1/3) i.  2^(1/3) does not work.
> 
> i is E(4), and  Q(2^(1/3))=Q[x]/(x^3-2), but how to describe 2^(1/3)i
> ? Can gap help me to find out the minimal polynomial of 2^(1/3) i ?

You can get polynomials that have sums (or products) of roots of existing polynomials via resultants:

For example
gap> x:=X(Rationals,"x");
gap> p1:=x^3-2; # 2^1/3
gap> p2:=x^2+1; #i

Now create a second variable, and replace x by y/x in one of the polynomials, multiplying through to make the result a polynomial
gap> y:=X(Rationals,"y"); 
gap> p3:=x^2*Value(p2,y/x);
x^2+y^2

The resultant (eliminating the old variable) is a polynomial that has the product as roots. (You can do similar things for sums by taking y-x in the definition of p3.)

gap> r:=Resultant(p1,p3,x);
y^6+4

(Careful: The resultant is not guaranteed to be irreducible: For example for p1=x^2-3 and p2=x^2-5 you get as resultant (y^2-15)^2.)


To generate an extension generated by elements a and b, you first need to find a primitive element, e.g. a+zb for  a suitable integer z, again you can calculate the minimal polynomial as resultant of p(x) with q(y-zx).

Hope this helps,

    Alexander Hulpke




-- Colorado State University, Department of Mathematics,
Weber Building, 1874 Campus Delivery, Fort Collins, CO 80523-1874, USA
email: hulpke at math.colostate.edu, Phone: ++1-970-4914288
http://www.math.colostate.edu/~hulpke






More information about the Forum mailing list