Galois group and action

If it is possible to obtain the full factorization of an integer polynomial over its splitting field, the Galois action of the group of the splitting field can be made entirely explicit. In this example we show how it can be done in Magma, and how to find the Galois correspondence (between subgroups and subfields). Although there exists a polynomial-time algorithm for the factorization of polynomials over number fields, in practice this is the bottleneck for our approach to Galois theory. Only in small examples we will be able to construct the splitting field as below.

We begin with a cubic polynomial f and determine its Galois group using the intrinsic function GaloisGroup(f). This will be a degree-3 representation.

> R<x> := PolynomialRing(RationalField());
> f := x^3 - x - 1;
> GaloisGroup(f);
Permutation group G acting on a set of cardinality 3
Order = 6 = 2 * 3
    (1, 2)
    (1, 2, 3)

Next, we find the Galois group in two degree-6 representations. Firstly, we construct it bare-handed. We start by obtaining the splitting field for f as a two-step extension of .

> N<n> := NumberField(f);
> ff := Factorization( PolynomialRing(N) ! f );
> ff;
[
    <$.1 - n, 1>,
    <$.1^2 + n*$.1 + n^2 - 1, 1>
]
> M<m> := ext< N | ff[2][1] >;
> A<a> := AbsoluteField(M);
> A;
Number Field with defining polynomial x^6 - 6*x^4 + 9*x^2 + 23
over the Rational Field
We factorize f over the splitting field, and obtain all its roots from the linear factors.
> S<s> := PolynomialRing(A);
> factn := Factorization( S ! DefiningPolynomial(A) );
> factn;
[
    <s - a, 1>,
    <s + a, 1>,
    <s - 1/6*a^4 + 5/6*a^2 - 1/2*a - 2/3, 1>,
    <s - 1/6*a^4 + 5/6*a^2 + 1/2*a - 2/3, 1>,
    <s + 1/6*a^4 - 5/6*a^2 - 1/2*a + 2/3, 1>,
    <s + 1/6*a^4 - 5/6*a^2 + 1/2*a + 2/3, 1>
]
> C := [ -Coefficient(factr[1], 0) : factr in factn];   
> C;
[
    a,
    -a,
    1/6*a^4 - 5/6*a^2 + 1/2*a + 2/3,
    1/6*a^4 - 5/6*a^2 - 1/2*a + 2/3,
    -1/6*a^4 + 5/6*a^2 + 1/2*a - 2/3,
    -1/6*a^4 + 5/6*a^2 - 1/2*a - 2/3
]
Each of the roots is an algebraic conjugate of the primitive element a of the field. The elements of the Galois group of A over are obtained by sending a to one of its conjugates. Thus the action on A of such an element of the Galois group is determined by the polynomial (with rational coefficients) expressing the conjugate in a. These polynomials are stored in P below. We (again) determine the Galois group: by numbering the algebraic conjugates tex2html_wrap_inline1603 and finding all images of tex2html_wrap_inline1603 under a given tex2html_wrap_inline1607 , we obtain the permutation associated with tex2html_wrap_inline1607 . The Galois group H consists of these permutations on 6 letters.
> P := [ R ! Eltseq(x) : x in C];
> P;
[
    x,
    -x,
    1/6*x^4 - 5/6*x^2 + 1/2*x + 2/3,
    1/6*x^4 - 5/6*x^2 - 1/2*x + 2/3,
    -1/6*x^4 + 5/6*x^2 + 1/2*x - 2/3,
    -1/6*x^4 + 5/6*x^2 - 1/2*x - 2/3
]
> I := [ [ Index(C, Evaluate(p, c)) : p in P ] : c in C];   
> I;
[
    [ 1, 2, 3, 4, 5, 6 ],
    [ 2, 1, 4, 3, 6, 5 ],
    [ 3, 6, 1, 5, 4, 2 ],
    [ 4, 5, 2, 6, 3, 1 ],
    [ 5, 4, 6, 2, 1, 3 ],
    [ 6, 3, 5, 1, 2, 4 ]
]
> H := sub< Sym(6) | I >;
> H;
Permutation group H acting on a set of cardinality 6
    (1, 2)(3, 4)(5, 6)
    (1, 3)(2, 6)(4, 5)
    (1, 4, 6)(2, 5, 3)
    (1, 5)(2, 4)(3, 6)
    (1, 6, 4)(2, 3, 5)

Lastly, we find the Galois group G using the intrinsic function once more, but in terms of the degree-6 defining polynomial of the splitting field. It will be conjugate to H: a simple renumbering of roots makes them equal. As we see, we only need to cyclically permute three roots.

> G := GaloisGroup(DefiningPolynomial(A));
> fl, el := IsConjugate(Sym(6), G, H);
> fl, el;
true (3, 4, 5)

Since we have the explicit action of the Galois group, we can now find the quadratic subfield of A corresponding to the subgroup K of H of order 3. We create the sequence of automorphisms of A contained in K and see that the trace of tex2html_wrap_inline993 generates the required quadratic field.

> S := Subgroups(H);
> S;
Conjugacy classes of subgroups
------------------------------

[1]     Order 1            Length 1
	Permutation group acting on a set of cardinality 6
	Order = 1
	    Id($)
[2]     Order 2            Length 3
	Permutation group acting on a set of cardinality 6
	    (1, 2)(3, 4)(5, 6)
[3]     Order 3            Length 1
	Permutation group acting on a set of cardinality 6
	    (1, 6, 4)(2, 3, 5)
[4]     Order 6            Length 1
	Permutation group acting on a set of cardinality 6
	    (1, 2)(3, 4)(5, 6)
	    (1, 6, 4)(2, 3, 5)

> K := S[3]`subgroup; // extract subgroup from the record S[3]
> J := [ hom< A -> A | C[1^k] > : k in K ];
> tra := &+[ h(C[1]^3) : h in J ];  
> tra, MinimalPolynomial(tra); 
3*a^3 - 9*a
x^2 + 207
> SquareFree(-207);
-23 3
Therefore the quadratic subfield is tex2html_wrap_inline1631 .



Next: Modules Previous: An octic field and its units

Previous Group: An octic field and its units

Up: Number fields