Documentation

Mathlib.NumberTheory.ModularForms.QExpansion

q-expansions of modular forms #

We show that a modular form of level Γ(n) can be written as τ ↦ F (𝕢 n τ) where F is analytic on the open unit disc, and 𝕢 n is the parameter τ ↦ exp (2 * I * π * τ / n). As an application, we show that cusp forms decay exponentially to 0 as im τ → ∞.

We also define the q-expansion of a modular form, either as a power series or as a FormalMultilinearSeries, and show that it converges to f on the upper half plane.

Main definitions and results #

noncomputable def UpperHalfPlane.valueAtInfty (f : UpperHalfPlane) :

The value of f at the cusp (or an arbitrary choice of value if this limit is not well-defined).

Equations
Instances For
    noncomputable def SlashInvariantFormClass.cuspFunction (h : ) (f : UpperHalfPlane) :

    The analytic function F such that f τ = F (exp (2 * π * I * τ / h)), extended by a choice of limit at 0.

    Equations
    Instances For
      theorem SlashInvariantFormClass.eq_cuspFunction {k : } {F : Type u_1} [FunLike F UpperHalfPlane ] {Γ : Subgroup (GL (Fin 2) )} {h : } (f : F) [SlashInvariantFormClass F Γ k] (τ : UpperHalfPlane) ( : h Γ.strictPeriods) (hh : h 0) :
      cuspFunction h (⇑f) (Function.Periodic.qParam h τ) = f τ
      theorem ModularFormClass.differentiableAt_cuspFunction {k : } {F : Type u_1} [FunLike F UpperHalfPlane ] {Γ : Subgroup (GL (Fin 2) )} {h : } (f : F) [ModularFormClass F Γ k] (hh : 0 < h) ( : h Γ.strictPeriods) {q : } (hq : q < 1) :

      The q-expansion of a level n modular form, bundled as a PowerSeries.

      Equations
      Instances For
        theorem ModularFormClass.qExpansion_coeff_zero {k : } {F : Type u_1} [FunLike F UpperHalfPlane ] {Γ : Subgroup (GL (Fin 2) )} {h : } (f : F) [ModularFormClass F Γ k] (hh : 0 < h) ( : h Γ.strictPeriods) :
        theorem ModularFormClass.hasSum_qExpansion_of_norm_lt {k : } {F : Type u_1} [FunLike F UpperHalfPlane ] {Γ : Subgroup (GL (Fin 2) )} {h : } (f : F) [ModularFormClass F Γ k] (hh : 0 < h) ( : h Γ.strictPeriods) {q : } (hq : q < 1) :
        HasSum (fun (m : ) => (PowerSeries.coeff m) (qExpansion h f) q ^ m) (SlashInvariantFormClass.cuspFunction h (⇑f) q)
        @[deprecated ModularFormClass.hasSum_qExpansion_of_norm_lt (since := "2025-12-04")]
        theorem ModularFormClass.hasSum_qExpansion_of_abs_lt {k : } {F : Type u_1} [FunLike F UpperHalfPlane ] {Γ : Subgroup (GL (Fin 2) )} {h : } (f : F) [ModularFormClass F Γ k] (hh : 0 < h) ( : h Γ.strictPeriods) {q : } (hq : q < 1) :
        HasSum (fun (m : ) => (PowerSeries.coeff m) (qExpansion h f) q ^ m) (SlashInvariantFormClass.cuspFunction h (⇑f) q)

        Alias of ModularFormClass.hasSum_qExpansion_of_norm_lt.

        theorem ModularFormClass.hasSum_qExpansion {k : } {F : Type u_1} [FunLike F UpperHalfPlane ] {Γ : Subgroup (GL (Fin 2) )} {h : } (f : F) [ModularFormClass F Γ k] (hh : 0 < h) ( : h Γ.strictPeriods) (τ : UpperHalfPlane) :
        HasSum (fun (m : ) => (PowerSeries.coeff m) (qExpansion h f) Function.Periodic.qParam h τ ^ m) (f τ)

        The q-expansion of a modular form, bundled as a FormalMultilinearSeries.

        TODO: Maybe get rid of this and instead define a general API for converting PowerSeries to FormalMultilinearSeries.

        Equations
        Instances For

          The q-expansion of f is an FPowerSeries representing cuspFunction n f.

          theorem ModularFormClass.qExpansion_coeff_eq_circleIntegral {k : } {F : Type u_1} [FunLike F UpperHalfPlane ] {Γ : Subgroup (GL (Fin 2) )} {h : } (f : F) [ModularFormClass F Γ k] (hh : 0 < h) ( : h Γ.strictPeriods) (n : ) {R : } (hR : 0 < R) (hR' : R < 1) :

          The q-expansion coefficient can be expressed as a circleIntegral for any radius 0 < R < 1.

          theorem ModularFormClass.qExpansion_coeff_eq_intervalIntegral {k : } {F : Type u_1} [FunLike F UpperHalfPlane ] {Γ : Subgroup (GL (Fin 2) )} {h : } (f : F) [ModularFormClass F Γ k] (hh : 0 < h) ( : h Γ.strictPeriods) (n : ) {t : } (ht : 0 < t) :
          (PowerSeries.coeff n) (qExpansion h f) = 1 / h * (u : ) in 0..h, 1 / Function.Periodic.qParam h (u + t * Complex.I) ^ n * f { coe := u + t * Complex.I, coe_im_pos := }

          If h is a positive strict period of f, then the q-expansion coefficient can be expressed as an integral along a horizontal line in the upper half-plane from t * I to h + t * I, for any 0 < t.

          theorem ModularFormClass.exp_decay_sub_atImInfty {k : } {F : Type u_1} [FunLike F UpperHalfPlane ] {Γ : Subgroup (GL (Fin 2) )} {h : } (f : F) [ModularFormClass F Γ k] (hh : 0 < h) ( : h Γ.strictPeriods) :

          Version of exp_decay_sub_atImInfty stating a less precise result but easier to apply in practice (not specifying the growth rate precisely).

          Note that the Fact hypothesis is automatically synthesized for arithmetic subgroups. The discreteness hypothesis may be unnecessary, but it is satisfied in the cases of interest.

          theorem UpperHalfPlane.IsZeroAtImInfty.exp_decay_atImInfty {k : } {F : Type u_1} [FunLike F UpperHalfPlane ] {Γ : Subgroup (GL (Fin 2) )} {h : } {f : F} [ModularFormClass F Γ k] (hf : IsZeroAtImInfty f) (hh : 0 < h) ( : h Γ.strictPeriods) :
          f =O[atImInfty] fun (τ : UpperHalfPlane) => Real.exp (-2 * Real.pi * τ.im / h)

          Version of exp_decay_atImInfty stating a less precise result but easier to apply in practice (not specifying the growth rate precisely). Note that the Fact hypothesis is automatically synthesized for arithmetic subgroups.

          theorem CuspFormClass.cuspFunction_apply_zero {k : } {F : Type u_1} [FunLike F UpperHalfPlane ] {Γ : Subgroup (GL (Fin 2) )} {h : } (f : F) [CuspFormClass F Γ k] (hh : 0 < h) ( : h Γ.strictPeriods) :
          theorem CuspFormClass.exp_decay_atImInfty {k : } {F : Type u_1} [FunLike F UpperHalfPlane ] {Γ : Subgroup (GL (Fin 2) )} {h : } (f : F) [CuspFormClass F Γ k] (hh : 0 < h) ( : h Γ.strictPeriods) :
          theorem qExpansion_add {F : Type u_1} [FunLike F UpperHalfPlane ] {Γ : Subgroup (GL (Fin 2) )} {h : } {G : Type u_2} [FunLike G UpperHalfPlane ] (hh : 0 < h) ( : h Γ.strictPeriods) {a b : } (f : F) [ModularFormClass F Γ a] (g : G) [ModularFormClass G Γ b] :
          theorem qExpansion_smul {k : } {F : Type u_1} [FunLike F UpperHalfPlane ] {Γ : Subgroup (GL (Fin 2) )} {h : } (hh : 0 < h) ( : h Γ.strictPeriods) (a : ) (f : F) [ModularFormClass F Γ k] :
          theorem qExpansion_neg {k : } {F : Type u_1} [FunLike F UpperHalfPlane ] {Γ : Subgroup (GL (Fin 2) )} {h : } (hh : 0 < h) ( : h Γ.strictPeriods) (f : F) [ModularFormClass F Γ k] :
          theorem qExpansion_sub {Γ : Subgroup (GL (Fin 2) )} {h : } (hh : 0 < h) ( : h Γ.strictPeriods) {a b : } (f : ModularForm Γ a) (g : ModularForm Γ b) :
          theorem qExpansion_eq_zero_iff {Γ : Subgroup (GL (Fin 2) )} {h : } (hh : 0 < h) ( : h Γ.strictPeriods) {k : } (f : ModularForm Γ k) :
          noncomputable def qExpansionAddHom {Γ : Subgroup (GL (Fin 2) )} {h : } (hh : 0 < h) ( : h Γ.strictPeriods) (k : ) :

          The qExpansion map as an additive group hom. to power series over .

          Equations
          Instances For
            noncomputable def qExpansionRingHom {Γ : Subgroup (GL (Fin 2) )} (h : ) [Γ.HasDetPlusMinusOne] (hh : 0 < h) ( : h Γ.strictPeriods) :

            The qExpansion map as a map from the graded ring of modular forms to power series over .

            Equations
            Instances For
              @[simp]
              theorem qExpansionRingHom_apply {Γ : Subgroup (GL (Fin 2) )} {h : } [Γ.HasDetPlusMinusOne] (hh : 0 < h) ( : h Γ.strictPeriods) (k : ) (f : ModularForm Γ k) :
              theorem qExpansion_of_mul {Γ : Subgroup (GL (Fin 2) )} {h : } [Γ.HasDetPlusMinusOne] (hh : 0 < h) ( : h Γ.strictPeriods) (a b : ) (f : ModularForm Γ a) (g : ModularForm Γ b) :
              theorem qExpansion_of_pow {k : } {Γ : Subgroup (GL (Fin 2) )} {h : } [Γ.HasDetPlusMinusOne] (hh : 0 < h) ( : h Γ.strictPeriods) (f : ModularForm Γ k) (n : ) :
              theorem hasFPowerSeriesOnBall_cuspFunction {k : } {F : Type u_1} [FunLike F UpperHalfPlane ] {Γ : Subgroup (GL (Fin 2) )} {h : } {c : } (hh : 0 < h) ( : h Γ.strictPeriods) {f : F} [ModularFormClass F Γ k] (hf : ∀ (τ : UpperHalfPlane), HasSum (fun (m : ) => c m Function.Periodic.qParam h τ ^ m) (f τ)) :
              theorem qExpansion_coeff_unique {k : } {F : Type u_1} [FunLike F UpperHalfPlane ] {Γ : Subgroup (GL (Fin 2) )} {h : } {c : } (hh : 0 < h) ( : h Γ.strictPeriods) {f : F} [ModularFormClass F Γ k] (hf : ∀ (τ : UpperHalfPlane), HasSum (fun (m : ) => c m Function.Periodic.qParam h τ ^ m) (f τ)) (m : ) :