Dirichlet Characters #
Let R be a commutative monoid with zero. A Dirichlet character χ of level n over R is a
multiplicative character from ZMod n to R sending non-units to 0. We then obtain some properties
of toUnitHom χ, the restriction of χ to a group homomorphism (ZMod n)ˣ →* Rˣ.
Main definitions:
DirichletCharacter: The type representing a Dirichlet character.changeLevel: Extend the Dirichlet character χ of levelnto levelm, wherendividesm.conductor: The conductor of a Dirichlet character.IsPrimitive: If the level is equal to the conductor.
Tags #
dirichlet character, multiplicative character
Definitions #
The type of Dirichlet characters of level n.
Equations
- DirichletCharacter R n = MulChar (ZMod n) R
Instances For
Changing levels #
A function that modifies the level of a Dirichlet character to some multiple of its original level.
Equations
- DirichletCharacter.changeLevel hm = { toFun := fun (ψ : DirichletCharacter R n) => MulChar.ofUnitHom ((MulChar.toUnitHom ψ).comp (ZMod.unitsMap hm)), map_one' := ⋯, map_mul' := ⋯ }
Instances For
The changeLevel map is injective (except in the degenerate case m = 0).
χ of level n factors through a Dirichlet character χ₀ of level d if d ∣ n and
χ₀ = χ ∘ (ZMod n → ZMod d).
Equations
- χ.FactorsThrough d = ∃ (h : d ∣ n) (χ₀ : DirichletCharacter R d), χ = (DirichletCharacter.changeLevel h) χ₀
Instances For
The fact that d divides n when χ factors through a Dirichlet character at level d
The Dirichlet character at level d through which χ factors
Equations
- h.χ₀ = Classical.choose ⋯
Instances For
The fact that χ factors through χ₀ of level d
The character of level d through which χ factors is uniquely determined.
A Dirichlet character χ factors through d | n iff its associated unit-group hom is trivial
on the kernel of ZMod.unitsMap.
Edge cases #
Equations
A Dirichlet character of modulus ≠ 1 maps 0 to 0.
The conductor #
The set of natural numbers d such that χ factors through a character of level d.
Equations
- χ.conductorSet = {d : ℕ | χ.FactorsThrough d}
Instances For
The minimum natural number level n through which χ factors.
Equations
- χ.conductor = sInf χ.conductorSet
Instances For
The conductor of the trivial character is 1.
A character is primitive if its level is equal to its conductor.
Equations
- χ.IsPrimitive = (χ.conductor = n)
Instances For
The primitive character associated to a Dirichlet character.
Equations
Instances For
Dirichlet character associated to multiplication of Dirichlet characters, after changing both levels to the same
Equations
- χ₁.mul χ₂ = (DirichletCharacter.changeLevel ⋯) χ₁ * (DirichletCharacter.changeLevel ⋯) χ₂
Instances For
Primitive character associated to multiplication of Dirichlet characters, after changing both levels to the same
Equations
- χ₁.primitive_mul χ₂ = (χ₁.mul χ₂).primitiveCharacter
Instances For
A Dirichlet character is odd if its value at -1 is -1.
Instances For
A Dirichlet character is even if its value at -1 is 1.
Instances For
An even Dirichlet character is an even function.
An odd Dirichlet character is an odd function.