Basic Invariants

Field(A): ArtRep -> FldNum

Number field \(K\) such that \(A\) factors through the Galois group of the normal closure of \(K\).

BaseField(A): ArtRep -> Fld

The field \(F\) over which \(A\) is a representation of \({\operatorname{Gal}}(\bar F/F)\). This is \({\mathbb{Q}}\) unless \(A\) was constructed as a relative Artin representation, in which case it is the base field of the defining relative extension.

Degree(A): ArtRep -> RngIntElt
Dimension(A): ArtRep -> RngIntElt

Degree (=dimension) of an Artin representation \(A\).

Group(A): ArtRep -> GrpPerm

The Galois group of the field through which \(A\) factors.

Character(A): ArtRep -> AlgChtrElt

Character of an Artin representation \(A\), represented as a complex-valued character of Group(A).

Conductor(A): ArtRep -> RngIntElt

Conductor of an Artin representation \(A\) (which must be a true representation, i.e. its character is not allowed to be a generalized character). Computes all the necessary local information if Artin representations were defined with Ramification:=false, so the first call to this function might take some time.

Decomposition(A): ArtRep -> SeqEnum[Tup]

Decompose an Artin representation \(A\) into irreducible constituents. Returns a sequence of tuples [...<A_i,n_i>...] with \(A_i\) irreducible and \(n_i\) its exponent in \(A\) (nonzero but possibly negative). If \(A\) is a relative Artin representation, the decomposition is taken in the Galois group over its base field, and the \(A_i\) are relative Artin representations over that same base field.

RationalDecomposition(A): ArtRep -> SeqEnum[Tup]

Decompose an Artin representation \(A\) into constituents with rational-valued characters, each corresponding to a Galois conjugacy class of irreducibles. Returns a sequence of tuples [...<A_i,n_i>...] with \(A_i\) having rational-valued character and \(n_i\) its exponent in \(A\) (nonzero but possibly negative). As with Decomposition, a relative Artin representation decomposes into relative Artin representations over the same base field.

Example: Decomposing Artin Representations (ex-12f333)

Run in calculator (opens in a new tab)

We give an example to show the difference between these decompositions.

> K := NumberField(PolynomialWithGaloisGroup(12,15));
> DefiningPolynomial(K);
x^12 - 24*x^10 + 216*x^8 - 896*x^6 + 1680*x^4 - 1152*x^2 + 48
> GroupName(GaloisGroup(K));
C3:D4
> c := PermutationCharacter(K);
> Decomposition(c);
[ <Artin representation C3:D4: (1,1,1,1,1,1,1,1,1) of K, 1>,
  <Artin representation C3:D4: (1,1,1,-1,1,-1,1,1,1) of K, 1>,
  <Artin representation C3:D4: (2,2,2,0,-1,0,-1,-1,-1) of K, 2>,
  <Artin representation C3:D4: (2,-2,0,0,2,0,0,0,-2) of K, 1>,
  <Artin representation C3:D4: (2,-2,0,0,-1,0,-1-2*J,1+2*J,1) of K, 1>,
  <Artin representation C3:D4: (2,-2,0,0,-1,0,1+2*J,-1-2*J,1) of K, 1> ]
> RationalDecomposition(c);
[ <Artin representation C3:D4: (1,1,1,1,1,1,1,1,1) of K, 1>,
  <Artin representation C3:D4: (1,1,1,-1,1,-1,1,1,1) of K, 1>,
  <Artin representation C3:D4: (2,2,2,0,-1,0,-1,-1,-1) of K, 2>,
  <Artin representation C3:D4: (2,-2,0,0,2,0,0,0,-2) of K, 1>,
  <Artin representation C3:D4: (4,-4,0,0,-2,0,0,0,2) of K, 1>];

Run in calculator (opens in a new tab)

DefiningPolynomial(A): ArtRep -> RngUPolElt

Returns the polynomial whose roots Group(A) permutes.

Minimize(A): ArtRep -> ArtRep
Optimize: BoolElt                    Default: true

Returns \(A\) attached to the smallest number field \(K\) such that \(A\) factors through its Galois closure. If Optimize := true, attempts to minimize the defining polynomial of \(K\) using OptimizedRepresentation. Raises an error when \(A\) is a relative Artin representation, as this is not implemented over a base field other than \(\Q\).

OptimizedRepresentation(A): ArtRep -> ArtRep

Returns the same Artin representation, but over an isomorphic version of the field that has had its representation optimized. Raises an error when \(A\) is a relative Artin representation, as this is not implemented over a base field other than \(\Q\).

Kernel(A): ArtRep -> FldNum

Smallest Galois extension \(K\) of the rationals through which \(A\) factors. Note that this field may be enormous and incomputable. For a relative Artin representation this is instead the smallest extension of the base field, Galois over it, through which \(A\) factors. In both cases the result is returned as a number field over \(\Q\).

Example: Minimising an Artin Representation (ex-9129cc)

Run in calculator (opens in a new tab)

We take an \(S_4\)-extension of \({\mathbb{Q}}\) and compute its Artin representations.

> R<x> := PolynomialRing(Rationals());
> K := NumberField(x^4+9*x-2);
> A := ArtinRepresentations(K);
> [Dimension(a): a in A];
[ 1, 1, 2, 3, 3 ]

Then we minimize the 2-dimensional one, which factors through an \(S_3\)-quotient.

> B := Minimize(A[3]); B;
Artin representation S3: (2,0,-1) of ext<Q|x^3+8*x+81>
> Kernel(B);
Number Field with defining polynomial x^6 + 48*x^4 + 576*x^2 + 179195
   over the Rational Field

Run in calculator (opens in a new tab)

IsIrreducible(A): ArtRep -> BoolElt

Return true iff a given Artin representation is irreducible as a complex representation.

IsRamified(A, p): ArtRep, RngIntElt -> BoolElt

Return true iff a given Artin representation is ramified at \(p\). Raises an error when \(A\) is a relative Artin representation, as this is not implemented over a base field other than \(\Q\).

IsWildlyRamified(A, p): ArtRep, RngIntElt -> BoolElt

Return true iff a given Artin representation is wildly ramified at \(p\). Raises an error when \(A\) is a relative Artin representation, as this is not implemented over a base field other than \(\Q\).

EulerFactor(A, p): ArtRep, RngIntElt -> RngUPolElt
R: Fld                    Default: ComplexField()

The local polynomial (Euler factor) of an Artin representation \(A\) at the prime \(p\). It is a polynomial with coefficients in the field \(R\), which is complex numbers by default, and it is the inverse characteristic polynomial of (arithmetic) Frobenius at \(p\) on the inertia invariant subspace of \(A\).

EpsilonFactor(A): ArtRep -> FldComElt

Global epsilon-factor \(\epsilon(A)\) of an Artin representation. Currently only implemented in a few basic cases, and raises an error otherwise. See Example Example: Local and Global Epsilon Factors for Dirichlet Characters.

RootNumber(A): ArtRep -> FldComElt

Global root number \(\epsilon(A)/|\epsilon(A)|\) of an Artin representation. Currently only implemented in a few basic cases, and raises an error otherwise. See Example Example: Local and Global Epsilon Factors for Dirichlet Characters.

EpsilonFactor(A, p): ArtRep, RngIntElt -> FldComElt

Local epsilon-factor \(\epsilon(A)\) of an Artin representation at \(p\). Currently only implemented in a few basic cases, and raises an error otherwise. See Example Example: Local and Global Epsilon Factors for Dirichlet Characters.

RootNumber(A, p): ArtRep, RngIntElt -> FldComElt

Local root number \(\epsilon_p(A)/|\epsilon_p(A)|\) of an Artin representation at \(p\). Currently only implemented in a few basic cases, and raises an error otherwise. See Example Example: Local and Global Epsilon Factors for Dirichlet Characters.

EpsilonFactor(A, infty): ArtRep, Infty -> FldComElt
RootNumber(A, infty): ArtRep, Infty -> FldComElt

Local root number \(w_\infty(A)\) of an Artin representation at infinity. See Example Example: Local and Global Epsilon Factors for Dirichlet Characters.

Example: Invariants of Artin Representations (ex-2bf31b)

Run in calculator (opens in a new tab)

Here are the invariants of Artin representations that factor through the splitting field of \(x^4-3\), a \(D_4\)-extension of \({\mathbb{Q}}\).

> R<x> := PolynomialRing(Rationals());
> K := NumberField(x^4-3);
> A := ArtinRepresentations(K);
> Degree(Kernel(A[5]),Rationals());
8
> [Dimension(a): a in A];
[ 1, 1, 1, 1, 2 ]
> Character(A[5]);
( 2, -2, 0, 0, 0 )
> [Conductor(a): a in A];
[ 1, 12, 3, 4, 576 ]
> [IsRamified(a,3): a in A];
[ false, true, true, false, true ]
> [IsWildlyRamified(a,3): a in A];
[ false, false, false, false, false ]
> EulerFactor(A[5],5);
x^2 + 1
> EpsilonFactor(A[5],3);
-3

Run in calculator (opens in a new tab)

DirichletCharacter(A): ArtRep -> GrpDrchElt

Convert a one-dimensional Artin representation to a Dirichlet character. Raises an error when \(A\) is a relative Artin representation, as this is not implemented over a base field other than \(\Q\).

HeckeCharacter(A): ArtRep -> GrpHeckeElt

Convert a one-dimensional Artin representation \(A\) to a Hecke character. This is more natural than the previous, as in general Hecke characters will have \(L\)-functions matching that of the Artin representation, while Dirichlet characters only necessarily have \(L\)-functions when defined over the rationals. Raises an error when \(A\) is a relative Artin representation, as this is not implemented over a base field other than \(\Q\).

ArtinRepresentation(ch): GrpDrchElt -> ArtRep
field: FldNum                    Default: 

Convert a Dirichlet character ch to a one-dimensional Artin representation \(A\). To avoid recomputation, the minimal field through which \(A\) factors may be supplied by the field parameter. This now uses class field theory (thanks to C. Fieker).

Example: One-Dimensional Artin Representations (ex-db71ab)

Run in calculator (opens in a new tab)

An example that goes back and forth between the Dirichlet character and the Artin representation.

> load galpols;
> f := PolynomialWithGaloisGroup(8,46); // order 576
> K := NumberField(f); // octic field
> A := ArtinRepresentations(K);
> [Degree(a) : a in A];
[ 1, 1, 1, 1, 4, 4, 6, 6, 9, 9, 9, 9, 12 ]
> [Order(Character(Determinant(a))) : a in A];
[ 1, 2, 4, 4, 2, 2, 2, 1, 1, 2, 4, 4, 2 ]
> chi := DirichletCharacter(A[3]); // order 4
> Conductor(chi), Conductor(chi^2);
215 5
> Minimize(ArtinRepresentation(chi)); // disc = N(chi)^2*N(chi^2)
Artin representation C4: (1,-1,-I,I) of ext<Q|x^4+x^3-54*x^2-54*x+551>
> Factorization(Discriminant(Integers(Field($1))));
[ <5, 3>, <43, 2> ]

Run in calculator (opens in a new tab)