IsSolvable(
f )
IsSolvablePolynomial(
f )
returns true
if the rational polynomial f has a solvable Galois group and
false
otherwise. It signals an error if there exists an irreducible factor
with degree greater than 15.
SplittingField(
f )
returns the smallest field, constructed with FieldByPolynomial
(see Creation
of number fields in Alnuth), that contains all roots of f.
gap> x := Indeterminate( Rationals, "x" );; gap> f := UnivariatePolynomial( Rationals, [1,3,4,1] ); x^3+4*x^2+3*x+1 gap> L := SplittingField( f ); <field in characteristic 0> gap> y := Indeterminate( L, "y" );; gap> g := UnivariatePolynomial( L, One(L) * [1,3,4,1] ); y^3+!4*y^2+!3*y+!1 gap> Factors( g ); [ y+(-168/47-535/94*a-253/94*a^2-24/47*a^3-3/94*a^4), y+(336/47+488/47*a+253/47*a^2+48/47*a^3+3/47*a^4), y+(20/47-441/94*a-253/94*a^2-24/47*a^3-3/94*a^4) ] gap> FactorsPolynomialKant( f, L ); [ y+(-168/47-535/94*a-253/94*a^2-24/47*a^3-3/94*a^4), y+(20/47-441/94*a-253/94*a^2-24/47*a^3-3/94*a^4), y+(336/47+488/47*a+253/47*a^2+48/47*a^3+3/47*a^4) ]To factorize a polynomial over its splitting field one has to embed the polynomial first, as seen in the example, or use
FactorsPolynomialKant
(see
Alnuth) instead of Factors
. The primitive elment of the splitting field is
always denoted by a
.
GaloisGroupOnRoots(
f )
calculates the Galois group G of the rational polynomial f as a permutation group with respect to the ordering of the roots of f given as matrices in G!.roots.
If you only want to get the Galois group itself it is often better to use
the function GaloisType
(see Chapter Polynomials over the Rationals in
the GAP reference manual).
RootsOfPolynomialAsRadicals(
f )
computes a solution by radicals for the irreducible, rational polynomial f
up to degree 15 if this is possible, i. e. if the Galoisgroup of f is
solvable, and returns fail
otherwise. The result is displayed in form of a
dvi-file. Additionally a record rec is returned which contains the Galois
group of f in the component galgrp
and the splitting field. The Galois
group is presented as permutation group on the roots which are available as
list of matrices in rec
.galgrp!.roots
. The splitting field is given in two
forms; on the one hand the matrix field K
generated by the roots and on the
other hand an algebraic number field H
created by the defining polynomial of
the matrix field. The component rec
.K!.cyclics
provides a list of pairs
whose first entries are matrices which define the splitting field by gradual,
cyclic extensions and whose second entries give the degree of the according
extension. For the computation a root of unity that lies in the matrix field
is used and can be found in rec
.K!.unity
The computation may last very long and doesn't finish for every example if the degree of f is greater than 7.
RootsOfPolynomialAsRadicalsNC(
f,
display )
has the advantage that it can be used for polynomials with arbitrary
degree. It does essentially the same as RootsOfPolynomialAsRadicals
except
that you can choose whether you want to create a dvi-file and display it or not
by setting the boolean display. The function performs no test whether the
polynomial f is irreducible. It also doesn't check at the beginning if f is
solvable.
[Up] [Previous] [Next] [Index]
Radiroot manual