[GAP Forum] Alnuth: FactorsPolynomialKant

Alexander Hulpke ahulpke at gmail.com
Thu Mar 31 00:05:07 BST 2011


Dear Forum, Dear Anja Heinisch,

I don't know about the KANT interface, but here is a way to do it in GAP:

First note that the polynomial is reducible and get the interesting factors

gap> Factors(pol);
[ 2*x, x, x^2+1, x^3+4 ]
gap> fp:=Filtered(Factors(pol),a->DegreeOfUnivariateLaurentPolynomial(a)>1);
[ x^2+1, x^3+4 ]

and that the polynomial for the next extension is still irreducible over the first (one could have seen this also from teh coprime degrees):

gap> L1:=AlgebraicExtension(Rationals,fp[1]);
<algebraic extension over the Rationals of degree 2>
gap> y:=X(L1,"y");
y
gap> Factors(Value(fp[2],y));
[ y^3+!4 ]

So now we want to construct a composite extension. For this we try the primitive element  i+\sqrt[3]{-4}, the sum of roots of both factors:
The A polynomial for this can be computed using resultants:

gap> z:=X(Rationals,"z");
z
gap> res:=Resultant(fp[1],Value(fp[2],z-x),x);
z^6+3*z^4+8*z^3+3*z^2-24*z+17

Check that the resultant is irreducible, i.e. it really is a priomitive element (if not, use z-2*x above and so on):

gap> Factors(res);
[ z^6+3*z^4+8*z^3+3*z^2-24*z+17 ]

Now factor over the extension:
gap> L:=AlgebraicExtension(Rationals,res);   
<algebraic extension over the Rationals of degree 6>
gap> y:=X(L,"y"); 
y
gap> Factors(Value(pol,y));
[ !2*y, y, y+(3/46*a^5+9/92*a^4+5/23*a^3+39/46*a^2+33/46*a-91/92), 
  y+(-3/46*a^5-9/92*a^4-5/23*a^3-39/46*a^2-79/46*a+91/92), 
  y+(-3/46*a^5-9/92*a^4-5/23*a^3-39/46*a^2-33/46*a+91/92), 
  y^2+(3/46*a^5+9/92*a^4+5/23*a^3+39/46*a^2+79/46*a-91/92)*y+(9/46*a^5+1/23*a^\
4+15/23*a^3+47/23*a^2+53/46*a-74/23) ]

Here `a' is a root of `res'.

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