Documentation

Mathlib.NumberTheory.DirichletCharacter.Basic

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:

TODO #

Tags #

dirichlet character, multiplicative character

@[inline, reducible]
abbrev DirichletCharacter (R : Type u_1) [CommMonoidWithZero R] (n : ) :
Type u_1

The type of Dirichlet characters of level n.

Equations
Instances For
    theorem DirichletCharacter.toUnitHom_eq_char' {R : Type u_1} [CommMonoidWithZero R] {n : } (χ : DirichletCharacter R n) {a : ZMod n} (ha : IsUnit a) :
    χ a = ((MulChar.toUnitHom χ) (IsUnit.unit ha))
    theorem DirichletCharacter.eval_modulus_sub {R : Type u_1} [CommMonoidWithZero R] {n : } (χ : DirichletCharacter R n) (x : ZMod n) :
    χ (n - x) = χ (-x)
    theorem DirichletCharacter.periodic {R : Type u_1} [CommMonoidWithZero R] {n : } (χ : DirichletCharacter R n) {m : } (hm : n m) :
    noncomputable def DirichletCharacter.changeLevel {R : Type u_2} [CommMonoidWithZero R] {n : } {m : } (hm : n m) :

    A function that modifies the level of a Dirichlet character to some multiple of its original level.

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      theorem DirichletCharacter.changeLevel_eq_cast_of_dvd {R : Type u_1} [CommMonoidWithZero R] {n : } (χ : DirichletCharacter R n) {m : } (hm : n m) (a : (ZMod m)ˣ) :
      ((DirichletCharacter.changeLevel hm) χ) a = χ (ZMod.cast a)

      χ of level n factors through a Dirichlet character χ₀ of level d if d ∣ n and χ₀ = χ ∘ (ZMod n → ZMod d).

      Equations
      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
        Instances For
          theorem DirichletCharacter.level_one' {R : Type u_1} [CommMonoidWithZero R] {n : } (χ : DirichletCharacter R n) (hn : n = 1) :
          χ = 1
          Equations
          • DirichletCharacter.instInhabitedDirichletCharacter = { default := 1 }
          Equations

          The set of natural numbers for which a Dirichlet character is periodic.

          Equations
          Instances For
            noncomputable def DirichletCharacter.conductor {R : Type u_1} [CommMonoidWithZero R] {n : } (χ : DirichletCharacter R n) :

            The minimum natural number n for which a Dirichlet character is periodic. The Dirichlet character χ can then alternatively be reformulated on ℤ/nℤ.

            Equations
            Instances For

              A character is primitive if its level is equal to its conductor.

              Equations
              Instances For

                The primitive character associated to a Dirichlet character.

                Equations
                Instances For
                  noncomputable def DirichletCharacter.mul {R : Type u_1} [CommMonoidWithZero R] {n : } {m : } (χ₁ : DirichletCharacter R n) (χ₂ : DirichletCharacter R m) :

                  Dirichlet character associated to multiplication of Dirichlet characters, after changing both levels to the same

                  Equations
                  Instances For

                    Primitive character associated to multiplication of Dirichlet characters, after changing both levels to the same

                    Equations
                    Instances For

                      A Dirichlet character is odd if its value at -1 is -1.

                      Equations
                      Instances For

                        A Dirichlet character is even if its value at -1 is 1.

                        Equations
                        Instances For
                          theorem DirichletCharacter.Odd.eval_neg {S : Type} [CommRing S] {m : } (ψ : DirichletCharacter S m) (x : ZMod m) (hψ : DirichletCharacter.Odd ψ) :
                          ψ (-x) = -ψ x
                          theorem DirichletCharacter.Even.eval_neg {S : Type} [CommRing S] {m : } (ψ : DirichletCharacter S m) (x : ZMod m) (hψ : DirichletCharacter.Even ψ) :
                          ψ (-x) = ψ x