Documentation

TauCeti.NumberTheory.ModularForms.Newforms.Descent.Cosets

The descent matrices at a prime #

Miyake's level descent at a prime p runs over the p upper-triangular matrices [1, v; 0, p] together with, when p divides N but p² does not, one further matrix built from an element of Γ₀(N / p) reducing to S = [[0, -1], [1, 0]] modulo p and to the identity modulo N / p. This file supplies that extra matrix, assembles the family of p or p + 1 elements of GL₂(ℝ) the descent runs over, and computes their determinants.

The extra matrix comes from strong approximation at a coprime pair of levels, CongruenceSubgroup.exists_mem_Gamma_map_intCast_zmod_eq: for coprime d and d' the principal congruence subgroup Γ(d') still surjects onto SL₂(ℤ/dℤ). The descent is that statement at d = p and d' = N / p — a coprime pair exactly because p divides N while p² does not — with S as the prescribed reduction modulo p. Approximation returns membership in Γ(N / p), which is stronger than the Γ₀(N / p) the descent asks for, so the second reduction is the identity rather than merely lower-triangular.

Main definitions #

Main results #

Scope #

The family is defined and its determinants computed. That its members are a set of coset representatives, and that the associated slash sum descends the level, are separate statements about the double coset Γ₀(N) diag(1, p) Γ₀(N); neither is proved here. Until they are, the family is the intended list of representatives rather than a formalized one.

Follows the AINTLIB LeanModularForms project, whose descendExtraGamma, descendCosetCount, descendCosetList and descendCosetList_det are the counterparts of the declarations here — the names differ because nothing here proves these matrices are coset representatives — and specializes its descendExtraGamma_exists (LeanModularForms/StrongMultiplicityOne/DescentCosets.lean, Chris Birkbeck, commit 2baa76f742bdb4fb8ee323fabba41203bd390e08, Apache-2.0, https://github.com/CBirkbeck/AINTLIB/tree/main/projects/LeanModularForms), which proves the same existence directly; here it is read off the general coprime-level statement instead.

A matrix with prescribed reductions at p and at N / p. For a prime p with p ∣ N but p² ∤ N, there is a γ ∈ Γ₀(N / p) reducing to S = [[0, -1], [1, 0]] modulo p and to the identity modulo N / p.

p² ∤ N is exactly what makes p coprime to N / p; the target modulo p is S, and membership in Γ₀(N / p) comes from the stronger Γ(N / p) that CongruenceSubgroup.exists_mem_Gamma_map_intCast_zmod_eq already delivers.

This is the matrix Miyake's Lemma 4.5.11 takes as its extra coset representative for the level descent when p exactly divides N. Only existence and the two reductions are proved here: the coset system is not formalized, so nothing is claimed about enumerating or completing it.

The size of the descent family at p. Miyake's count: p when p² divides N, and p + 1 when it does not, the extra member being the one descendExtraGamma supplies.

Equations
Instances For
    @[simp]

    The descent family has p members when p² divides N.

    @[simp]

    The descent family has p + 1 members when p² does not divide N.

    The extra descent matrix. For a prime p exactly dividing N, an element of Γ₀(N / p) reducing to S modulo p and to the identity modulo N / p; the junk value 1 when those hypotheses fail, so that the definition is total. Its three defining properties are descendExtraGamma_mem_Gamma0, descendExtraGamma_map_intCast_zmod_eq_S and descendExtraGamma_map_intCast_zmod_div_eq_one.

    Equations
    Instances For
      theorem TauCeti.descendExtraGamma_mem_Gamma0 {p N : ℕ} (hp : Nat.Prime p) (hpN : p ∣ N) (hpsq : ¬p ^ 2 ∣ N) :

      The extra descent matrix lies in Γ₀(N / p).

      @[simp]

      The extra descent matrix reduces to S modulo p.

      @[simp]

      The extra descent matrix reduces to the identity modulo N / p.

      @[simp]

      Outside its guard the extra matrix is the identity. For p not prime, or not dividing N, or with p² dividing N, the choice is not available and descendExtraGamma takes its junk value.

      noncomputable def TauCeti.descendMatrixRat (p N : ℕ) [NeZero p] :

      The descent family at p, over ℚ (Miyake, Lemma 4.5.11): a family in GL₂(ℚ) made of the p upper-triangular matrices upperTriRep p v = [1, v; 0, p] for v < p — this repository's T_p representative family — together with, when p² does not divide N, so that descendMatrixCount is p + 1, the further matrix [1, 0; 0, p] * mapGL ℚ γ_p, where γ_p = descendExtraGamma p N is embedded into GL₂(ℚ) by mapGL ℚ.

      Neither p ∣ N nor primality of p is required: the construction uses only p ≠ 0, to name the zero index of Fin p. Those two hypotheses are what make the family the descent family at a prime — without p ∣ N the matrix descendExtraGamma p N is 1 and the extra member degenerates to [1, 0; 0, p], which the first branch already lists at v = 0 — so they belong on the later results that establish descent, not on the family itself.

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        noncomputable def TauCeti.descendMatrix (p N : ℕ) [NeZero p] :

        The descent family, the image of descendMatrixRat p N in GL₂(ℝ), where the slash action of a modular form lives.

        Equations
        Instances For

          The descent family is the image of the rational descent family.

          @[simp]

          The members of the rational descent family below index p are the upper-triangular matrices [1, v; 0, p].

          @[simp]

          The member of the rational descent family at index p, present exactly when p² does not divide N, is [1, 0; 0, p] times the extra matrix.

          @[simp]

          The members of the descent family below index p are the upper-triangular matrices [1, v; 0, p].

          @[simp]

          The member of the descent family at index p, present exactly when p² does not divide N, is [1, 0; 0, p] times the extra matrix.

          @[simp]
          theorem TauCeti.descendMatrixRat_det (p N : ℕ) [NeZero p] (v : Fin (descendMatrixCount p N)) :
          (↑(descendMatrixRat p N v)).det = ↑p

          Every member of the rational descent family has determinant p. Every element of the double coset Γ₀(N) diag(1, p) Γ₀(N) that the descent sum runs over has determinant p, so this is a necessary condition for lying in it, not a characterisation of it; that these matrices lie in the double coset is not proved here.

          @[simp]
          theorem TauCeti.descendMatrix_det (p N : ℕ) [NeZero p] (v : Fin (descendMatrixCount p N)) :
          (↑(descendMatrix p N v)).det = ↑p

          Every member of the descent family has determinant p: the image under algebraMap ℚ ℝ of descendMatrixRat_det.

          theorem TauCeti.descendMatrix_det_pos (p N : ℕ) [NeZero p] (v : Fin (descendMatrixCount p N)) :
          0 < (↑(descendMatrix p N v)).det

          Every member of the descent family has positive determinant, namely p.