Basic Invariants

Field(A) : ArtRep -> FldNum
Number field K such that A factors through the Galois group of the normal closure of K.

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 [...<Ai,ni>...] with Ai irreducible and ni its exponent in A (nonzero but possibly negative).

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 [...<Ai,ni>...] with Ai having rational-valued character and ni its exponent in A (nonzero but possibly negative).

Example ArtRep_artin-decompose (H47E2)

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>];
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.

OptimizedRepresentation(A) : ArtRep -> ArtRep
Returns the same Artin representation, but over an isomorphic version of the field that has had its representation optimized.

Kernel(A) : ArtRep -> FldNum
Smallest Galois extension K of the rationals through which A factors. Note that this field may be enormous and incomputable.

Example ArtRep_artin-minimize (H47E3)

We take an S4-extension of 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 S3-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
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.

IsWildlyRamified(A, p) : ArtRep, RngIntElt -> BoolElt
Return true iff a given Artin representation is wildly ramified at p.

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 ε(A) of an Artin representation. Currently only implemented in a few basic cases, and returns 0 otherwise. See Example Example: Local and Global Epsilon Factors for Dirichlet Characters.

RootNumber(A) : ArtRep -> FldComElt
Global root number ε(A)/|ε(A)| of an Artin representation. Currently only implemented in a few basic cases, and returns 0 otherwise. See Example Example: Local and Global Epsilon Factors for Dirichlet Characters.

EpsilonFactor(A,p) : ArtRep, RngIntElt -> FldComElt
Local epsilon-factor ε(A) of an Artin representation at p. Currently only implemented in a few basic cases, and returns 0 otherwise. See Example Example: Local and Global Epsilon Factors for Dirichlet Characters.

RootNumber(A,p) : ArtRep, RngIntElt -> FldComElt
Local root number εp(A)/|εp(A)| of an Artin representation at p. Currently only implemented in a few basic cases, and returns 0 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_∞(A) of an Artin representation at infinity. See Example Example: Local and Global Epsilon Factors for Dirichlet Characters.

Example ArtRep_artin-invariants (H47E4)

Here are the invariants of Artin representations that factor through the splitting field of x4 - 3, a D4-extension of 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
DirichletCharacter(A) : ArtRep -> GrpDrchElt
Convert a one-dimensional Artin representation to a Dirichlet character.

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.

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 ArtRep_one-dim-artin-reps (H47E5)

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> ]
V2.28, 13 July 2023