Documentation

TauCeti.NumberTheory.ModularForms.CuspDescent

Cusp forms descend through the level-raising operator #

Degeneracy.lean has a Descent section, which answers the question the conductor theorem asks: given only that the level-raise V_d f is a form, what can be said about f itself? Two of the three conditions a form must satisfy are answered there — the transformation law by slash_conjScale_eq_smul_of_slash_scaleGL, and holomorphy by mdifferentiable_of_comp_scaleGL_smul. The third, vanishing at the cusps, is not: the whole file mentions IsCusp once. This file supplies that missing third member, and then closes the loop: with all three conditions in hand, f itself bundles into a CuspForm of the lowered level Γ₁(N / l).

The one geometric input #

Everything rests on the fact that diag(d, 1)⁻¹ · A carries ∞ to a cusp, for any A ∈ SL(2, ℤ). That is not a computation: the matrix is rational, and rational matrices carry cusps to cusps — IsCusp.smul_map_ratCast, already in Cusps/Rat/Basic.lean. Degeneracy.lean supplies scaleGLRat d, the matrix diag(d, 1) over ℚ, and its pushforward to scaleGL d.

Main results #

Provenance #

Adapted from the AINTLIB LeanModularForms project (LeanModularForms/Eigenforms/ConductorTheorem.lean, Chris Birkbeck, Apache-2.0, https://github.com/CBirkbeck/AINTLIB @ 2baa76f742bdb4fb8ee323fabba41203bd390e08), lines 354–486 and 500–541, whose zero_at_cusps_of_levelRaiseFun_eq (:471) and conductorTheoremCaseA_cuspForm (:511) are the two theorems this file is built around.

Statements only, and four of the first window's nine declarations are not reproduced at all:

Of the second window's three declarations, one is likewise not reproduced:

The source is phrased over its own levelRaiseFun and levelRaiseMatrix, neither of which exists here; the statements below use scaleGL and the hypothesis shape ⇑g = d ^ (1 - k) • (f ∣[k] scaleGL d) that smul_slash_scaleGL_eq was written to be rewritten with. The source also carries its character as a DirichletCharacter ℂ N and phrases Case A over χ.FactorsThrough (N / l); here the character is the units homomorphism (ZMod N)ˣ →* ℂˣ that cuspFormCharSpace is indexed by, and the descent hypothesis is triviality on the kernel of ZMod.unitsMap, which is the form slash_mapGL_eq_self_of_mem_Gamma1_div already takes.

References #

diag(d, 1)⁻¹ · A carries ∞ to a cusp. For any A ∈ SL(2, ℤ) and any arithmetic subgroup, the point (diag(d, 1)⁻¹ · A) • ∞ is a cusp.

The matrix is rational, and that is the whole proof: IsCusp.smul_map_ratCast carries the cusp ∞ along it. The source instead exhibits an explicit SL(2, ℤ) matrix with the same first column; nothing here needs one.

A cusp form vanishes at i∞ after slashing by diag(d, 1)⁻¹ · A, because that matrix sends ∞ to a cusp and CuspFormClass.zero_at_cusps covers every cusp.

Nothing here is specific to a level: the cusp condition above holds for any arithmetic subgroup, and zero_at_cusps asks only that g be a cusp form for the same one. Stated over CuspFormClass so it applies to CuspForm and to anything else carrying that class.

theorem TauCeti.isZeroAt_of_smul_slash_scaleGL_eq {k : ℤ} {F : Type u_1} [FunLike F UpperHalfPlane ℂ] {Γ' : Subgroup (GL (Fin 2) ℝ)} [Γ'.IsArithmetic] [CuspFormClass F Γ' k] (d : ℕ) [NeZero d] (f : UpperHalfPlane → ℂ) (g : F) (hg : ⇑g = ↑d ^ (1 - k) • SlashAction.map k (scaleGL d) f) (Γ : Subgroup (GL (Fin 2) ℝ)) [Γ.IsArithmetic] {c : OnePoint ℝ} (hc : IsCusp c Γ) :
c.IsZeroAt f k

Vanishing at the cusps descends through V_d. If the level-raise of f is a cusp form — for any arithmetic subgroup — then f vanishes at every cusp of any arithmetic subgroup.

The two subgroups are independent and neither is a level of f: Γ' is where g is a cusp form, and Γ is where the cusp c lives. f itself is only a function, which is the situation the conductor theorem is in.

With the transformation law (slash_conjScale_eq_smul_of_slash_scaleGL) and holomorphy (mdifferentiable_of_comp_scaleGL_smul) of Degeneracy.lean's Descent section, this is the third and last condition needed to exhibit f as a cusp form of the lower level.

The descent bundle #

The nebentypus relation descends to the level-raised function. If a cusp form g of level N lies in the χ-eigenspace and is the level-raise of f, then f ∣[k] diag(l, 1) satisfies the classical nebentypus relation for χ on the nose.

This is the hypothesis slash_mapGL_eq_self_of_mem_Gamma1_div asks for.

The conductor descent, bundled. If the level-raise of f is a cusp form g of level N whose nebentypus χ is trivial on the kernel of (ZMod N)ˣ → (ZMod (N / l))ˣ, and if f is T-periodic, then f is itself a cusp form of the lowered level Γ₁(N / l).

Equations
Instances For
    @[simp]
    theorem TauCeti.coe_cuspFormOfSmulSlashScaleGL (l N : ℕ) [NeZero l] [NeZero N] (hlN : l ∣ N) (k : ℤ) (χ : (ZMod N)ˣ →* ℂˣ) (hχ : ∀ (u : (ZMod N)ˣ), (ZMod.unitsMap ⋯) u = 1 → χ u = 1) (f : UpperHalfPlane → ℂ) (g : CuspForm (Subgroup.map (Matrix.SpecialLinearGroup.mapGL ℝ) (CongruenceSubgroup.Gamma1 N)) k) (hgχ : g ∈ cuspFormCharSpace k χ) (hg : ⇑g = ↑l ^ (1 - k) • SlashAction.map k (scaleGL l) f) (hT : SlashAction.map k ((Matrix.SpecialLinearGroup.mapGL ℝ) ModularGroup.T) f = f) :
    ⇑(cuspFormOfSmulSlashScaleGL l N hlN k χ hχ f g hgχ hg hT) = f

    The bundled cuspFormOfSmulSlashScaleGL has underlying function f.