Documentation

Mathlib.NumberTheory.ModularForms.QExpansion

q-expansions of functions on the upper half plane #

We show that a function on the upper half plane with strict period 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 function f on the upper half plane, either as a power series or as a FormalMultilinearSeries, and show that it converges to f if f is periodic, holomorphic and bounded at infinity.

Main definitions and results #

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 UpperHalfPlane.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 UpperHalfPlane.eq_cuspFunction {h : ā„} {f : UpperHalfPlane → ā„‚} (Ļ„ : UpperHalfPlane) (hh : h ≠ 0) (hfper : Function.Periodic (f ∘ ↑ofComplex) ↑h) :
      cuspFunction h f (Function.Periodic.qParam h ↑τ) = f Ļ„
      theorem UpperHalfPlane.differentiableAt_cuspFunction {h : ā„} {f : UpperHalfPlane → ā„‚} (hh : 0 < h) (hfper : Function.Periodic (f ∘ ↑ofComplex) ↑h) (hfhol : MDiff f) (hfbdd : IsBoundedAtImInfty f) {q : ā„‚} (hq : ‖q‖ < 1) :
      theorem UpperHalfPlane.differentiableOn_cuspFunction_ball {h : ā„} {f : UpperHalfPlane → ā„‚} (hh : 0 < h) (hfper : Function.Periodic (f ∘ ↑ofComplex) ↑h) (hfhol : MDiff f) (hfbdd : IsBoundedAtImInfty f) :
      theorem UpperHalfPlane.analyticAt_cuspFunction_zero {h : ā„} {f : UpperHalfPlane → ā„‚} (hh : 0 < h) (hfper : Function.Periodic (f ∘ ↑ofComplex) ↑h) (hfhol : MDiff f) (hfbdd : IsBoundedAtImInfty f) :
      theorem UpperHalfPlane.cuspFunction_apply_zero {h : ā„} {f : UpperHalfPlane → ā„‚} (hh : 0 < h) (hfanalytic : AnalyticAt ā„‚ (cuspFunction h f) 0) (hfper : Function.Periodic (f ∘ ↑ofComplex) ↑h) :
      theorem SlashInvariantFormClass.eq_cuspFunction {k : ℤ} {F : Type u_1} [FunLike F UpperHalfPlane ā„‚] {Ī“ : Subgroup (GL (Fin 2) ā„)} {h : ā„} (f : F) [SlashInvariantFormClass F Ī“ k] (Ļ„ : UpperHalfPlane) (hĪ“ : h ∈ Ī“.strictPeriods) (hh : h ≠ 0) :
      UpperHalfPlane.cuspFunction h (⇑f) (Function.Periodic.qParam h ↑τ) = f Ļ„
      @[deprecated ModularFormClass.bdd_at_infty (since := "2026-04-19")]
      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Ī“ : h ∈ Ī“.strictPeriods) {q : ā„‚} (hq : ‖q‖ < 1) :
      theorem ModularFormClass.analyticAt_cuspFunction_zero {k : ℤ} {F : Type u_1} [FunLike F UpperHalfPlane ā„‚] {Ī“ : Subgroup (GL (Fin 2) ā„)} {h : ā„} (f : F) [ModularFormClass F Ī“ k] (hh : 0 < h) (hĪ“ : h ∈ Ī“.strictPeriods) :

      The q-expansion of a function on the upper half plane with strict period h, bundled as a PowerSeries. The m-th coefficient is the Taylor coefficient of the cuspFunction at q = 0, where q = exp(2πiτ/h) is the local parameter at the cusp.

      Equations
      Instances For
        theorem UpperHalfPlane.qExpansion_coeff_zero {h : ā„} {f : UpperHalfPlane → ā„‚} (hh : 0 < h) (hfanalytic : AnalyticAt ā„‚ (cuspFunction h f) 0) (hfper : Function.Periodic (f ∘ ↑ofComplex) ↑h) :
        theorem UpperHalfPlane.hasSum_qExpansion_of_norm_lt {h : ā„} {f : UpperHalfPlane → ā„‚} (hh : 0 < h) (hfper : Function.Periodic (f ∘ ↑ofComplex) ↑h) (hfhol : MDiff f) (hfbdd : IsBoundedAtImInfty f) {q : ā„‚} (hq : ‖q‖ < 1) :
        HasSum (fun (m : ā„•) => (PowerSeries.coeff m) (qExpansion h f) • q ^ m) (cuspFunction h f q)
        theorem UpperHalfPlane.hasSum_qExpansion {h : ā„} {f : UpperHalfPlane → ā„‚} (hh : 0 < h) (hfper : Function.Periodic (f ∘ ↑ofComplex) ↑h) (hfhol : MDiff f) (hfbdd : IsBoundedAtImInfty f) (Ļ„ : UpperHalfPlane) :
        HasSum (fun (m : ā„•) => (PowerSeries.coeff m) (qExpansion h f) • Function.Periodic.qParam h ↑τ ^ m) (f Ļ„)

        The q-expansion of a function on the upper half plane, bundled as a FormalMultilinearSeries.

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

        Equations
        Instances For
          theorem UpperHalfPlane.qExpansionFormalMultilinearSeries_radius {F : Type u_1} [FunLike F UpperHalfPlane ā„‚] {h : ā„} (f : F) (hh : 0 < h) (hfper : Function.Periodic (⇑f ∘ ↑ofComplex) ↑h) (hfhol : MDiff ⇑f) (hfbdd : IsBoundedAtImInfty ⇑f) :
          theorem UpperHalfPlane.hasFPowerSeriesOnBall_cuspFunction {h : ā„} {f : UpperHalfPlane → ā„‚} {c : ā„• → ā„‚} (hh : 0 < h) (hfanalytic : AnalyticAt ā„‚ (cuspFunction h f) 0) (hf : āˆ€ (Ļ„ : UpperHalfPlane), HasSum (fun (m : ā„•) => c m • Function.Periodic.qParam h ↑τ ^ m) (f Ļ„)) :
          theorem UpperHalfPlane.qExpansion_coeff_eq_circleIntegral {h : ā„} {f : UpperHalfPlane → ā„‚} (hh : 0 < h) (hfper : Function.Periodic (f ∘ ↑ofComplex) ↑h) (hfhol : MDiff f) (hfbdd : IsBoundedAtImInfty f) (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 UpperHalfPlane.qExpansion_coeff_eq_intervalIntegral {h : ā„} {f : UpperHalfPlane → ā„‚} (hh : 0 < h) (hfper : Function.Periodic (f ∘ ↑ofComplex) ↑h) (hfhol : MDiff f) (hfbdd : IsBoundedAtImInfty f) (n : ā„•) {t : ā„} (ht : 0 < t) :
          (PowerSeries.coeff n) (qExpansion h f) = 1 / ↑h * ∫ (u : ā„) in 0..h, 1 / Function.Periodic.qParam h (↑u + ↑t * ↑I) ^ n * f { coe := ↑u + ↑t * ↑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 UpperHalfPlane.exp_decay_sub_atImInfty {h : ā„} {f : UpperHalfPlane → ā„‚} (hh : 0 < h) (hfper : Function.Periodic (f ∘ ↑ofComplex) ↑h) (hfhol : MDiff f) (hfbdd : IsBoundedAtImInfty f) :
          (fun (Ļ„ : UpperHalfPlane) => f Ļ„ - valueAtInfty f) =O[atImInfty] fun (Ļ„ : UpperHalfPlane) => Real.exp (-2 * Real.pi * Ļ„.im / h)
          theorem UpperHalfPlane.IsZeroAtImInfty.exp_decay_atImInfty {h : ā„} {f : UpperHalfPlane → ā„‚} (hf : IsZeroAtImInfty f) (hh : 0 < h) (hfper : Function.Periodic (f ∘ ↑ofComplex) ↑h) (hfhol : MDiff f) (hfbdd : IsBoundedAtImInfty f) :
          f =O[atImInfty] fun (Ļ„ : UpperHalfPlane) => Real.exp (-2 * Real.pi * Ļ„.im / h)
          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Ī“ : h ∈ Ī“.strictPeriods) (n : ā„•) {t : ā„} (ht : 0 < t) :
          (PowerSeries.coeff n) (UpperHalfPlane.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 := ⋯ }
          theorem ModularFormClass.exp_decay_sub_atImInfty' {k : ℤ} {F : Type u_1} [FunLike F UpperHalfPlane ā„‚] {Ī“ : Subgroup (GL (Fin 2) ā„)} (f : F) [ModularFormClass F Ī“ k] [Ī“.HasDetPlusMinusOne] [DiscreteTopology ↄΓ] [Fact (IsCusp OnePoint.infty Ī“)] :
          ∃ c > 0, (fun (Ļ„ : UpperHalfPlane) => f Ļ„ - UpperHalfPlane.valueAtInfty ⇑f) =O[UpperHalfPlane.atImInfty] fun (Ļ„ : UpperHalfPlane) => Real.exp (-c * Ļ„.im)

          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 ModularFormClass.exp_decay_atImInfty' {k : ℤ} {F : Type u_1} [FunLike F UpperHalfPlane ā„‚] {Ī“ : Subgroup (GL (Fin 2) ā„)} (f : F) [ModularFormClass F Ī“ k] [Ī“.HasDetPlusMinusOne] [DiscreteTopology ↄΓ] [Fact (IsCusp OnePoint.infty Ī“)] (hf : UpperHalfPlane.IsZeroAtImInfty ⇑f) :
          ∃ c > 0, ⇑f =O[UpperHalfPlane.atImInfty] fun (Ļ„ : UpperHalfPlane) => Real.exp (-c * Ļ„.im)

          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Ī“ : h ∈ Ī“.strictPeriods) :
          theorem CuspFormClass.qExpansion_coeff_zero {k : ℤ} {F : Type u_1} [FunLike F UpperHalfPlane ā„‚] {Ī“ : Subgroup (GL (Fin 2) ā„)} {h : ā„} (f : F) [CuspFormClass F Ī“ k] (hh : 0 < h) (hĪ“ : h ∈ Ī“.strictPeriods) :

          The zeroth coefficient of the q-expansion of a cusp form vanishes.

          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Ī“ : h ∈ Ī“.strictPeriods) :
          ⇑f =O[UpperHalfPlane.atImInfty] fun (Ļ„ : UpperHalfPlane) => Real.exp (-2 * Real.pi * Ļ„.im / h)
          theorem CuspFormClass.exp_decay_atImInfty' {k : ℤ} {F : Type u_1} [FunLike F UpperHalfPlane ā„‚] {Ī“ : Subgroup (GL (Fin 2) ā„)} (f : F) [CuspFormClass F Ī“ k] [Ī“.HasDetPlusMinusOne] [DiscreteTopology ↄΓ] [Fact (IsCusp OnePoint.infty Ī“)] :
          ∃ c > 0, ⇑f =O[UpperHalfPlane.atImInfty] fun (Ļ„ : UpperHalfPlane) => Real.exp (-c * Ļ„.im)
          theorem UpperHalfPlane.qExpansion_eq_zero_iff {h : ā„} {f : UpperHalfPlane → ā„‚} (hh : 0 < h) (hfper : Function.Periodic (f ∘ ↑ofComplex) ↑h) (hfhol : MDiff f) (hfbdd : IsBoundedAtImInfty f) :
          qExpansion h f = 0 ↔ f = 0
          theorem ModularForm.cuspFunction_smul {k : ℤ} {F : Type u_1} [FunLike F UpperHalfPlane ā„‚] {Ī“ : Subgroup (GL (Fin 2) ā„)} {h : ā„} (hh : 0 < h) (hĪ“ : h ∈ Ī“.strictPeriods) (a : ā„‚) (f : F) [ModularFormClass F Ī“ k] :
          theorem ModularForm.cuspFunction_neg {k : ℤ} {F : Type u_1} [FunLike F UpperHalfPlane ā„‚] {Ī“ : Subgroup (GL (Fin 2) ā„)} {h : ā„} (hh : 0 < h) (hĪ“ : h ∈ Ī“.strictPeriods) (f : F) [ModularFormClass F Ī“ k] :
          theorem ModularForm.cuspFunction_add {F : Type u_1} [FunLike F UpperHalfPlane ā„‚] {Ī“ : Subgroup (GL (Fin 2) ā„)} {h : ā„} {G : Type u_2} [FunLike G UpperHalfPlane ā„‚] (hh : 0 < h) (hĪ“ : h ∈ Ī“.strictPeriods) {a b : ℤ} (f : F) [ModularFormClass F Ī“ a] (g : G) [ModularFormClass G Ī“ b] :
          theorem ModularForm.cuspFunction_sub {F : Type u_1} [FunLike F UpperHalfPlane ā„‚] {Ī“ : Subgroup (GL (Fin 2) ā„)} {h : ā„} {G : Type u_2} [FunLike G UpperHalfPlane ā„‚] (hh : 0 < h) (hĪ“ : h ∈ Ī“.strictPeriods) {a b : ℤ} (f : F) [ModularFormClass F Ī“ a] (g : G) [ModularFormClass G Ī“ b] :
          theorem ModularForm.cuspFunction_mul {Ī“ : Subgroup (GL (Fin 2) ā„)} {h : ā„} [Ī“.HasDetPlusMinusOne] (hh : 0 < h) (hĪ“ : h ∈ Ī“.strictPeriods) {a b : ℤ} (f : ModularForm Ī“ a) (g : ModularForm Ī“ b) :
          theorem ModularForm.qExpansion_smul {k : ℤ} {F : Type u_1} [FunLike F UpperHalfPlane ā„‚] {Ī“ : Subgroup (GL (Fin 2) ā„)} {h : ā„} (hh : 0 < h) (hĪ“ : h ∈ Ī“.strictPeriods) (a : ā„‚) (f : F) [ModularFormClass F Ī“ k] :
          theorem ModularForm.qExpansion_neg {k : ℤ} {F : Type u_1} [FunLike F UpperHalfPlane ā„‚] {Ī“ : Subgroup (GL (Fin 2) ā„)} {h : ā„} (hh : 0 < h) (hĪ“ : h ∈ Ī“.strictPeriods) (f : F) [ModularFormClass F Ī“ k] :
          theorem ModularForm.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Ī“ : h ∈ Ī“.strictPeriods) {a b : ℤ} (f : F) [ModularFormClass F Ī“ a] (g : G) [ModularFormClass G Ī“ b] :
          theorem ModularForm.qExpansion_sub {F : Type u_1} [FunLike F UpperHalfPlane ā„‚] {Ī“ : Subgroup (GL (Fin 2) ā„)} {h : ā„} {G : Type u_2} [FunLike G UpperHalfPlane ā„‚] (hh : 0 < h) (hĪ“ : h ∈ Ī“.strictPeriods) {a b : ℤ} (f : F) [ModularFormClass F Ī“ a] (g : G) [ModularFormClass G Ī“ b] :
          theorem ModularForm.qExpansion_mul_coe {F : Type u_1} [FunLike F UpperHalfPlane ā„‚] {Ī“ : Subgroup (GL (Fin 2) ā„)} {h : ā„} {G : Type u_2} [FunLike G UpperHalfPlane ā„‚] (hh : 0 < h) (hĪ“ : h ∈ Ī“.strictPeriods) {a b : ℤ} (f : F) [ModularFormClass F Ī“ a] (g : G) [ModularFormClass G Ī“ b] :

          The q-expansion of a pointwise product of two modular-form-class objects is the product of their q-expansions. Works for any ModularFormClass (e.g. a CuspForm times a ModularForm).

          theorem ModularForm.qExpansion_mul {Ī“ : Subgroup (GL (Fin 2) ā„)} {h : ā„} [Ī“.HasDetPlusMinusOne] (hh : 0 < h) (hĪ“ : h ∈ Ī“.strictPeriods) {a b : ℤ} (f : ModularForm Ī“ a) (g : ModularForm Ī“ b) :
          theorem ModularForm.qExpansion_eq_zero_iff {Ī“ : Subgroup (GL (Fin 2) ā„)} {h : ā„} (hh : 0 < h) (hĪ“ : h ∈ Ī“.strictPeriods) {k : ℤ} (f : ModularForm Ī“ k) :
          @[simp]
          theorem ModularForm.qExpansion_mcast {Ī“ : Subgroup (GL (Fin 2) ā„)} {h : ā„} {a b : ℤ} {Ī“' : Subgroup (GL (Fin 2) ā„)} (heq : a = b) (hĪ“ : Ī“' = Ī“) (f : ModularForm Ī“ a) :
          theorem ModularForm.qExpansion_pow {k : ℤ} {Ī“ : Subgroup (GL (Fin 2) ā„)} {h : ā„} [Ī“.HasDetPlusMinusOne] (hh : 0 < h) (hĪ“ : h ∈ Ī“.strictPeriods) (f : ModularForm Ī“ k) (n : ā„•) :
          noncomputable def ModularForm.qExpansionAddHom {Ī“ : Subgroup (GL (Fin 2) ā„)} {h : ā„} (hh : 0 < h) (hĪ“ : h ∈ Ī“.strictPeriods) (k : ℤ) :

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

          Equations
          Instances For
            noncomputable def ModularForm.qExpansionRingHom {Ī“ : Subgroup (GL (Fin 2) ā„)} (h : ā„) [Ī“.HasDetPlusMinusOne] (hh : 0 < h) (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 ModularForm.qExpansionRingHom_apply {Ī“ : Subgroup (GL (Fin 2) ā„)} {h : ā„} [Ī“.HasDetPlusMinusOne] (hh : 0 < h) (hĪ“ : h ∈ Ī“.strictPeriods) (k : ℤ) (f : ModularForm Ī“ k) :
              theorem ModularForm.qExpansion_of_mul {Ī“ : Subgroup (GL (Fin 2) ā„)} {h : ā„} [Ī“.HasDetPlusMinusOne] (hh : 0 < h) (hĪ“ : h ∈ Ī“.strictPeriods) (a b : ℤ) (f : ModularForm Ī“ a) (g : ModularForm Ī“ b) :
              theorem ModularForm.qExpansion_of_pow {k : ℤ} {Ī“ : Subgroup (GL (Fin 2) ā„)} {h : ā„} [Ī“.HasDetPlusMinusOne] (hh : 0 < h) (hĪ“ : h ∈ Ī“.strictPeriods) (f : ModularForm Ī“ k) (n : ā„•) :
              UpperHalfPlane.qExpansion h ⇑(((DirectSum.of (ModularForm Ī“) k) f ^ n) (↑n * k)) = UpperHalfPlane.qExpansion h ⇑f ^ n
              @[deprecated ModularForm.cuspFunction_smul (since := "2026-05-05")]
              theorem ModularFormClass.cuspFunction_smul {k : ℤ} {F : Type u_1} [FunLike F UpperHalfPlane ā„‚] {Ī“ : Subgroup (GL (Fin 2) ā„)} {h : ā„} (hh : 0 < h) (hĪ“ : h ∈ Ī“.strictPeriods) (a : ā„‚) (f : F) [ModularFormClass F Ī“ k] :

              Alias of ModularForm.cuspFunction_smul.

              @[deprecated ModularForm.cuspFunction_neg (since := "2026-05-05")]
              theorem ModularFormClass.cuspFunction_neg {k : ℤ} {F : Type u_1} [FunLike F UpperHalfPlane ā„‚] {Ī“ : Subgroup (GL (Fin 2) ā„)} {h : ā„} (hh : 0 < h) (hĪ“ : h ∈ Ī“.strictPeriods) (f : F) [ModularFormClass F Ī“ k] :

              Alias of ModularForm.cuspFunction_neg.

              @[deprecated ModularForm.cuspFunction_add (since := "2026-05-05")]
              theorem ModularFormClass.cuspFunction_add {F : Type u_1} [FunLike F UpperHalfPlane ā„‚] {Ī“ : Subgroup (GL (Fin 2) ā„)} {h : ā„} {G : Type u_2} [FunLike G UpperHalfPlane ā„‚] (hh : 0 < h) (hĪ“ : h ∈ Ī“.strictPeriods) {a b : ℤ} (f : F) [ModularFormClass F Ī“ a] (g : G) [ModularFormClass G Ī“ b] :

              Alias of ModularForm.cuspFunction_add.

              @[deprecated ModularForm.cuspFunction_sub (since := "2026-05-05")]
              theorem ModularFormClass.cuspFunction_sub {F : Type u_1} [FunLike F UpperHalfPlane ā„‚] {Ī“ : Subgroup (GL (Fin 2) ā„)} {h : ā„} {G : Type u_2} [FunLike G UpperHalfPlane ā„‚] (hh : 0 < h) (hĪ“ : h ∈ Ī“.strictPeriods) {a b : ℤ} (f : F) [ModularFormClass F Ī“ a] (g : G) [ModularFormClass G Ī“ b] :

              Alias of ModularForm.cuspFunction_sub.

              @[deprecated ModularForm.qExpansion_smul (since := "2026-05-05")]
              theorem ModularFormClass.qExpansion_smul {k : ℤ} {F : Type u_1} [FunLike F UpperHalfPlane ā„‚] {Ī“ : Subgroup (GL (Fin 2) ā„)} {h : ā„} (hh : 0 < h) (hĪ“ : h ∈ Ī“.strictPeriods) (a : ā„‚) (f : F) [ModularFormClass F Ī“ k] :

              Alias of ModularForm.qExpansion_smul.

              @[deprecated ModularForm.qExpansion_neg (since := "2026-05-05")]
              theorem ModularFormClass.qExpansion_neg {k : ℤ} {F : Type u_1} [FunLike F UpperHalfPlane ā„‚] {Ī“ : Subgroup (GL (Fin 2) ā„)} {h : ā„} (hh : 0 < h) (hĪ“ : h ∈ Ī“.strictPeriods) (f : F) [ModularFormClass F Ī“ k] :

              Alias of ModularForm.qExpansion_neg.

              @[deprecated ModularForm.qExpansion_add (since := "2026-05-05")]
              theorem ModularFormClass.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Ī“ : h ∈ Ī“.strictPeriods) {a b : ℤ} (f : F) [ModularFormClass F Ī“ a] (g : G) [ModularFormClass G Ī“ b] :

              Alias of ModularForm.qExpansion_add.

              @[deprecated ModularForm.qExpansion_sub (since := "2026-05-05")]
              theorem ModularFormClass.qExpansion_sub {F : Type u_1} [FunLike F UpperHalfPlane ā„‚] {Ī“ : Subgroup (GL (Fin 2) ā„)} {h : ā„} {G : Type u_2} [FunLike G UpperHalfPlane ā„‚] (hh : 0 < h) (hĪ“ : h ∈ Ī“.strictPeriods) {a b : ℤ} (f : F) [ModularFormClass F Ī“ a] (g : G) [ModularFormClass G Ī“ b] :

              Alias of ModularForm.qExpansion_sub.

              theorem UpperHalfPlane.hasFPowerSeries_cuspFunction {F : Type u_1} [FunLike F UpperHalfPlane ā„‚] {h : ā„} (f : F) {c : ā„• → ā„‚} (hh : 0 < h) (hfanalytic : AnalyticAt ā„‚ (cuspFunction h ⇑f) 0) (hf : āˆ€ (Ļ„ : UpperHalfPlane), HasSum (fun (m : ā„•) => c m • Function.Periodic.qParam h ↑τ ^ m) (f Ļ„)) :

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

              theorem UpperHalfPlane.qExpansion_coeff_unique {F : Type u_1} [FunLike F UpperHalfPlane ā„‚] {h : ā„} (f : F) {c : ā„• → ā„‚} (hh : 0 < h) (hfanalytic : AnalyticAt ā„‚ (cuspFunction h ⇑f) 0) (hf : āˆ€ (Ļ„ : UpperHalfPlane), HasSum (fun (m : ā„•) => c m • Function.Periodic.qParam h ↑τ ^ m) (f Ļ„)) (m : ā„•) :
              c m = (PowerSeries.coeff m) (qExpansion h ⇑f)
              theorem ModularFormClass.qExpansion_coeff_unique {k : ℤ} {F : Type u_1} [FunLike F UpperHalfPlane ā„‚] {Ī“ : Subgroup (GL (Fin 2) ā„)} {h : ā„} {c : ā„• → ā„‚} (hh : 0 < h) (hĪ“ : h ∈ Ī“.strictPeriods) {f : F} [ModularFormClass F Ī“ k] (hf : āˆ€ (Ļ„ : UpperHalfPlane), HasSum (fun (m : ā„•) => c m • Function.Periodic.qParam h ↑τ ^ m) (f Ļ„)) (m : ā„•) :