We consider the extension obtained by adjoining a root of the irreducible
polynomial x
+ 1 to Q.
We will demonstrate the various groups and fields. In order to do so,
we first construct a non-trivial normal field.
> o := MaximalOrder(ext<Rationals()|>.1^4-3);
> os := MaximalOrder(SplittingField(NumberField(o)));
> P := Decomposition(os, 2)[1][1];
> G, M := RayClassGroup(P^3);
> G;
Abelian Group isomorphic to Z/2
Defined on 1 generator
Relations:
2*G.1 = 0
Since G is cyclic and the module P invariant under the
automorphisms of os, the class field corresponding to G
will be normal over Q. It Galois group over Q will
be an extension of D
4 by C
2.
> A := AbelianExtension(M);
> O := MaximalOrder(EquationOrder(A));
> Oa := AbsoluteOrder(O);
> Ka := NumberField(Oa);
> Gal, _, Map := AutomorphismGroup(Ka);
> Gal;
Permutation group Gal acting on a set of cardinality 16
Order = 16 = 2^4
(1, 2, 7, 5)(3, 8, 6, 10)(4, 12, 14, 9)(11, 16, 13, 15)
(1, 3, 7, 6)(2, 8, 5, 10)(4, 13, 14, 11)(9, 16, 12, 15)
(1, 4)(2, 9)(3, 11)(5, 12)(6, 13)(7, 14)(8, 15)(10, 16)
Now, let us pick some ideals. The only interesting primes are the primes
dividing the discriminant, which in this case will be the primes
over 2 and 3.
> P2 := Decomposition(Oa, 2)[1][1];
> P3 := Decomposition(Oa, 3)[1][1];
First, the valuation of the different of Oa at P2 should be
∑
i=0^∞(#G(P2, i) - 1) where G(P2, i) is the i-th
ramification group.
> s := 0; i := 0;
> repeat
> G := RamificationGroup(P2, i);
> s +:= #G-1;
> print i, "-th ramification group is of order ", #G;
> i +:= 1;
> until #G eq 1;
0 -th ramification group is of order 8
1 -th ramification group is of order 8
2 -th ramification group is of order 2
3 -th ramification group is of order 2
4 -th ramification group is of order 2
5 -th ramification group is of order 2
6 -th ramification group is of order 1
> s;
18
> Valuation(Different(Oa), P2);
18
According to the theory, P2 should be totally ramified over the
inertia field and unramified over Q:
> K2 := InertiaField(P2);
> M2 := MaximalOrder(K2);
> K2r := RelativeField(K2, Ka);
> M2r := MaximalOrder(K2r);
> p2 := M2 meet (MaximalOrder(K2r)!!P2);
> IsInert(p2);
true
> IsTotallyRamified(M2r!!P2);
true
Now we try the same for P3. Since 3 is split in Ka, we may
consider an additional field: the decomposition field.
It should be the maximal subfield if K such that 3 is neither
inert (f=1) nor ramified (e=1),
therefore 3 has to split totally.
> D3 := DecompositionField(P3);
> D3M := MaximalOrder(D3);
> IsTotallySplit(3, D3M);
true
The inertia field is the maximal subfield such that 3 is unramified.
It has to be an extension of D3.
> I3 := InertiaField(P3);
> I3;
Number Field with defining polynomial $.1^4 +
80346384509631057182412*$.1^3 +
2256835583037881432653115137736209396615693022*$.\
1^2 + 2795818092855476469056989739955845736579291605177\
3809455107173769804*$.1 +
2207787685682553980385342263526644079975418801375161428\
41147104301325760481728833650060994 over the Rational
Field
> Discriminant($1);
10700005925626216180895747020647047166414333000723923591882\
57829873417638072117114945163507537844711544617147344227643\
21408503489566949866295669400825222748660907808235401444104\
29329493645714658394673579309893726532999745496689571082958\
8286937125090034449967033769822464
This (polynomial) discriminant is huge, in fact it is so large
that we should avoid the factorisation. We already know
the discriminant of Ka. The discriminant of I3 has to be
a divisor - so we can use the
Discriminant parameter to
MaximalOrder:
(We are going to need the
MaximalOrder for the following embedding.)
> I3M := MaximalOrder(EquationOrder(I3):
> Discriminant := Discriminant(Oa));
> I3M := MaximalOrder(I3);
D3 should be a subfield of I3, so lets verify it:
> IsSubfield(D3, I3);
true Mapping from: FldNum: D3 to FldNum: I3
As a side-effect, Magma is now aware of the embedding and will use it.
Without the
IsSubfield call, the
RelativeField function
will fail.
> I3r := RelativeField(D3, I3);
> I3rM := MaximalOrder(I3r);
> K3r := RelativeField(D3, Ka);
> K3rM := MaximalOrder(K3r);
> IsInert(K3rM!!P3 meet D3M, I3rM);
true
The last step: verify that P3 is totally ramified over I3:
> K3r := RelativeField(I3, Ka);
> K3rM := MaximalOrder(K3r);
> IsTotallyRamified(K3rM!!P3 meet I3M, K3rM);
true
Using the decomposition group, we can get the splitting behaviour of
any prime in any subfield of Ka.
> L := SubgroupLattice(Gal);
> [ IsNormal(Gal, L[x]) : x in [1..#L]];
[ true, true, true, true, false, false, false, false, true,
true, true, true, true, true, true, false, false, false,
false, true, true, true, true, true, true, true, true ]
> U := L[5];
> k := FixedField(Ka, U);
> kM := MaximalOrder(EquationOrder(k) :
> Discriminant := Discriminant(Oa));
> kM := MaximalOrder(k);
> Kr := RelativeField(k, Ka);
> KrM := MaximalOrder(Kr);
> P43 := Decomposition(Oa, 43)[1][1];
> V := DecompositionGroup(P43);
The splitting behaviour is determined by the double coset decomposition
of Gal with respect to U and V:
> f, I := CosetAction(Gal, U);
> orbs := Orbits(f(V));
> reps := [];
> for o in orbs do
> _, x := IsConjugate(I, 1, Rep(o));
> Append(~reps, x @@ f);
> end for;
> reps;
[
Id(G),
(1, 2, 7, 5)(3, 8, 6, 10)(4, 12, 14, 9)(11, 16, 13, 15),
(1, 7)(2, 5)(3, 6)(4, 14)(8, 10)(9, 12)(11, 13)(15, 16),
(1, 8)(2, 6)(3, 5)(4, 15)(7, 10)(9, 13)(11, 12)(14, 16),
]
> #reps;
4
So there will be at least 4 prime ideals over 43 in k:
> L := [ ];
> for i in reps do
> Append(~L, kM meet KrM !! Map(i)(P43));
> end for;
> [ IsPrime(x) : x in L];
[ true, true, true, true ]
> LL := Decomposition(kM, 43);#LL;
4
> [ Position(L, x[1]) : x in LL];
[ 4, 3, 1, 2 ]
Compute a Frobenius element at p in the Galois group of the Galois closure
of K. This is a permutation on the roots of a polynomial defining K,
which can be recovered as DefiningPolynomial(A) for any Artin
representation A of K; the Frobenius element is well-defined
up to conjugacy and modulo inertia.
We take a polynomial whose Galois group is D
5 and compute
Frobenius elements at p=2 and p=5.
They in two different conjugacy classes of 5-cycles in the Galois group.
> load galpols;
> f:=PolynomialWithGaloisGroup(5,2);
> assert IsIsomorphic(GaloisGroup(f),DihedralGroup(5));
> K:=NumberField(f);
> FrobeniusElement(K,2);
(1, 5, 4, 3, 2)
> FrobeniusElement(K,5);
(1, 3, 5, 2, 4)
[Next][Prev] [Right] [____]
[Up] [Index] [Root]