Let L > K be a field extension of finite degree. Then to each element a Î L, we can associate a K-linear mapping ja on L, and for a fixed K-basis of L, we can associate to a the matrix Ma (over K) of this mapping.
The norm of a is defined as the determinant of Ma, the trace of a is defined as the trace of Ma, the minimal polynomial ma and the trace polynomial ca of a are defined as the minimal polynomial (see MinimalPolynomial) and the characteristic polynomial (see CharacteristicPolynomial and TracePolynomial) of Ma. (Note that ma depends only on K whereas ca depends on both L and K.)
Thus norm and trace of a are elements of K, and ma and ca are polynomials over K, ca being a power of ma, and the degree of ca equals the degree of the field extension L > K.
The conjugates of a in L are those roots of ca (with multiplicity) that lie in L; note that if only L is given, there is in general no way to access the roots outside L.
Analogously, the Galois group of the extension L > K is defined as the group of all those field automorphisms of L that fix K pointwise.
If L > K is a Galois extension then the conjugates of a are all roots of ca (with multiplicity), the set of conjugates equals the roots of ma, the norm of a equals the product and the trace of a equals the sum of the conjugates of a, and the Galois group in the sense of the above definition equals the usual Galois group,
Note that MinimalPolynomial( F, z ) is a polynomial over F,
whereas Norm( F, z ) is the norm of the element z in F
w.r.t. the field extension F > LeftActingDomain( F ).
GaloisGroup( F ) A
The Galois group of a field F is the group of all field automorphisms of F that fix the subfield K = LeftActingDomain( F ) pointwise.
Note that the field extension F > K need not be a Galois extension.
gap> g:= GaloisGroup( AsField( GF(2^2), GF(2^12) ) );; gap> Size( g ); IsCyclic( g ); 6 true gap> h:= GaloisGroup( CF(60) );; gap> Size( h ); IsAbelian( h ); 16 true
MinimalPolynomial( F, z[, ind] ) O
returns the minimal polynomial of z over the field F.
This is a generator of the ideal in F [x] of all polynomials
which vanish on z.
(This definition is consistent with the general definition of
MinimalPolynomial for rings, see MinimalPolynomial.)
gap> MinimalPolynomial( Rationals, E(8) ); 1+x_1^4 gap> MinimalPolynomial( CF(4), E(8) ); -E(4)+x_1^2 gap> MinimalPolynomial( CF(8), E(8) ); -E(8)+x_1
TracePolynomial( L, K, z[, inum] ) O
returns the polynomial that is the product of (X - c) where c runs over the conjugates of z in the field extension L over K. The polynomial is returned as a univariate polynomial over K in the indeterminate number inum (defaulting to 1).
This polynomial is sometimes also called the characteristic polynomial
of z w.r.t. the field extension L > K .
Therefore methods are installed for CharacteristicPolynomial
(see CharacteristicPolynomial)
that call TracePolynomial in the case of field extensions.
gap> TracePolynomial( CF(8), Rationals, E(8) ); 1+x_1^4 gap> TracePolynomial( CF(16), Rationals, E(8) ); 1+2*x_1^4+x_1^8
Norm( z ) A
Norm( L, z ) O
Norm( L, K, z ) O
Norm returns the norm of the field element z.
If two fields L and K are given then the norm is computed
w.r.t. the field extension L > K ,
if only one field L is given then LeftActingDomain( L ) is taken as
default for the subfield K,
and if no field is given then DefaultField( z ) is taken as default
for L.
Trace( z ) A
Trace( mat ) A
Trace( L, z ) O
Trace( L, K, z ) O
Trace returns the trace of the field element z.
If two fields L and K are given then the trace is computed
w.r.t. the field extension L > K ,
if only one field L is given then LeftActingDomain( L ) is taken as
default for the subfield K,
and if no field is given then DefaultField( z ) is taken as default
for L.
The trace of a matrix is the sum of its diagonal entries.
Note that this is not compatible with the definition of Trace for
field elements,
so the one-argument version is not suitable when matrices shall be
regarded as field elements.
Conjugates( z ) A
Conjugates( L, z ) O
Conjugates( L, K, z ) O
Conjugates returns the list of conjugates of the field element z.
If two fields L and K are given then the conjugates are computed
w.r.t. the field extension L > K ,
if only one field L is given then LeftActingDomain( L ) is taken as
default for the subfield K,
and if no field is given then DefaultField( z ) is taken as default
for L.
The result list will contain duplicates if z lies in a proper subfield of L, respectively of the default field of z. The result list need not be sorted.
gap> Norm( E(8) ); Norm( CF(8), E(8) ); 1 1 gap> Norm( CF(8), CF(4), E(8) ); -E(4) gap> Norm( AsField( CF(4), CF(8) ), E(8) ); -E(4) gap> Trace( E(8) ); Trace( CF(8), CF(8), E(8) ); 0 E(8) gap> Conjugates( CF(8), E(8) ); [ E(8), E(8)^3, -E(8), -E(8)^3 ] gap> Conjugates( CF(8), CF(4), E(8) ); [ E(8), -E(8) ] gap> Conjugates( CF(16), E(8) ); [ E(8), E(8)^3, -E(8), -E(8)^3, E(8), E(8)^3, -E(8), -E(8)^3 ]
The default methods for field elements are as follows.
MinimalPolynomial solves a system of linear equations,
TracePolynomial computes the appropriate power of the minimal
polynomial,
Norm and Trace values are obtained as coefficients of the
characteristic polynomial,
and Conjugates uses the factorization of the characteristic polynomial.
For elements in finite fields and cyclotomic fields, one wants to do the
computations in a different way since the field extensions in question
are Galois extensions, and the Galois groups are well-known in these
cases.
More general,
if a field is in the category IsFieldControlledByGaloisGroup then
the default methods are the following.
Conjugates returns the sorted list of images (with multiplicity) of the
element under the Galois group,
Norm computes the product of the conjugates,
Trace computes the sum of the conjugates,
TracePolynomial and MinimalPolynomial compute the product of
linear factors x - c with c ranging over the conjugates and the set
of conjugates, respectively.
NormalBase( F ) A
NormalBase( F, elm ) O
Let F be a field that is a Galois extension of its subfield
LeftActingDomain( F ).
Then NormalBase returns a list of elements in F that form a normal
basis of F, that is, a vector space basis that is closed under the
action of the Galois group (see GaloisGroup.field) of F.
If a second argument elm is given, it is used as a hint for the algorithm to find a normal basis with the algorithm described in Art68.
gap> NormalBase( CF(5) ); [ -E(5), -E(5)^2, -E(5)^3, -E(5)^4 ] gap> NormalBase( CF(4) ); [ 1/2-1/2*E(4), 1/2+1/2*E(4) ]
GAP 4 manual