Documentation

Mathlib.NumberTheory.ModularForms.EisensteinSeries.Summable

Summability of Eisenstein series #

We gather results about the summability of Eisenstein series, particularly the summability of the Eisenstein series summands, which are used in the proof of the boundedness of Eisenstein series at infinity.

theorem EisensteinSeries.norm_eq_max_natAbs (x : Fin 2 โ†’ โ„ค) :
โ€–xโ€– = โ†‘(max (x 0).natAbs (x 1).natAbs)
theorem EisensteinSeries.abs_norm_eq_max_natAbs (n : โ„•) :
โ€–![1, โ†‘n + 1]โ€– = โ†‘n + 1
noncomputable def EisensteinSeries.r1 (z : UpperHalfPlane) :

Auxiliary function used for bounding Eisenstein series, defined as z.im ^ 2 / (z.re ^ 2 + z.im ^ 2).

Instances For
    theorem EisensteinSeries.r1_eq (z : UpperHalfPlane) :
    r1 z = 1 / ((z.re / z.im) ^ 2 + 1)
    theorem EisensteinSeries.r1_aux_bound (z : UpperHalfPlane) (c : โ„) {d : โ„} (hd : 1 โ‰ค d ^ 2) :
    r1 z โ‰ค (c * z.re + d) ^ 2 + (c * z.im) ^ 2

    For c, d โˆˆ โ„ with 1 โ‰ค d ^ 2, we have r1 z โ‰ค |c * z + d| ^ 2.

    noncomputable def EisensteinSeries.r (z : UpperHalfPlane) :

    This function is used to give an upper bound on the summands in Eisenstein series; it is defined by z โ†ฆ min z.im โˆš(z.im ^ 2 / (z.re ^ 2 + z.im ^ 2)).

    Instances For
      theorem EisensteinSeries.r_lower_bound_on_verticalStrip (z : UpperHalfPlane) {A B : โ„} (h : 0 < B) (hz : z โˆˆ UpperHalfPlane.verticalStrip A B) :
      r { coe := { re := A, im := B }, coe_im_pos := h } โ‰ค r z
      theorem EisensteinSeries.auxbound1 (z : UpperHalfPlane) {c : โ„} (d : โ„) (hc : 1 โ‰ค c ^ 2) :
      r z โ‰ค โ€–โ†‘c * โ†‘z + โ†‘dโ€–
      theorem EisensteinSeries.auxbound2 (z : UpperHalfPlane) (c : โ„) {d : โ„} (hd : 1 โ‰ค d ^ 2) :
      r z โ‰ค โ€–โ†‘c * โ†‘z + โ†‘dโ€–
      theorem EisensteinSeries.div_max_sq_ge_one (x : Fin 2 โ†’ โ„ค) (hx : x โ‰  0) :
      1 โ‰ค (โ†‘(x 0) / โ€–xโ€–) ^ 2 โˆจ 1 โ‰ค (โ†‘(x 1) / โ€–xโ€–) ^ 2
      theorem EisensteinSeries.r_mul_max_le (z : UpperHalfPlane) {x : Fin 2 โ†’ โ„ค} (hx : x โ‰  0) :
      r z * โ€–xโ€– โ‰ค โ€–โ†‘(x 0) * โ†‘z + โ†‘(x 1)โ€–
      theorem EisensteinSeries.summand_bound (z : UpperHalfPlane) {k : โ„} (hk : 0 โ‰ค k) (x : Fin 2 โ†’ โ„ค) :
      โ€–โ†‘(x 0) * โ†‘z + โ†‘(x 1)โ€– ^ (-k) โ‰ค r z ^ (-k) * โ€–xโ€– ^ (-k)

      Upper bound for the summand |c * z + d| ^ (-k), as a product of a function of z and a function of c, d.

      theorem EisensteinSeries.summand_bound_of_mem_verticalStrip {z : UpperHalfPlane} {k : โ„} (hk : 0 โ‰ค k) (x : Fin 2 โ†’ โ„ค) {A B : โ„} (hB : 0 < B) (hz : z โˆˆ UpperHalfPlane.verticalStrip A B) :
      โ€–โ†‘(x 0) * โ†‘z + โ†‘(x 1)โ€– ^ (-k) โ‰ค r { coe := { re := A, im := B }, coe_im_pos := hB } ^ (-k) * โ€–xโ€– ^ (-k)
      theorem EisensteinSeries.linear_isTheta_right_add (c e : โ„ค) (z : โ„‚) :
      (fun (d : โ„ค) => โ†‘c * z + โ†‘d + โ†‘e) =ฮ˜[Filter.cofinite] fun (n : โ„ค) => โ†‘n
      @[deprecated EisensteinSeries.linear_isTheta_right_add (since := "2025-12-27")]
      theorem EisensteinSeries.linear_isTheta_right (c : โ„ค) (z : โ„‚) :
      (fun (d : โ„ค) => โ†‘c * z + โ†‘d) =ฮ˜[Filter.cofinite] fun (n : โ„ค) => โ†‘n
      theorem EisensteinSeries.linear_isTheta_left (d : โ„ค) {z : โ„‚} (hz : z โ‰  0) :
      (fun (c : โ„ค) => โ†‘c * z + โ†‘d) =ฮ˜[Filter.cofinite] fun (n : โ„ค) => โ†‘n
      theorem EisensteinSeries.linear_inv_isBigO_right_add (c e : โ„ค) (z : โ„‚) :
      (fun (d : โ„ค) => (โ†‘c * z + โ†‘d + โ†‘e)โปยน) =O[Filter.cofinite] fun (n : โ„ค) => (โ†‘n)โปยน
      theorem EisensteinSeries.linear_inv_isBigO_right (c : โ„ค) (z : โ„‚) :
      (fun (d : โ„ค) => (โ†‘c * z + โ†‘d)โปยน) =O[Filter.cofinite] fun (n : โ„ค) => (โ†‘n)โปยน
      theorem EisensteinSeries.linear_inv_isBigO_left (d : โ„ค) {z : โ„‚} (hz : z โ‰  0) :
      (fun (c : โ„ค) => (โ†‘c * z + โ†‘d)โปยน) =O[Filter.cofinite] fun (n : โ„ค) => (โ†‘n)โปยน
      theorem EisensteinSeries.tendsto_zero_inv_linear (z : โ„‚) (b : โ„ค) :
      Filter.Tendsto (fun (d : โ„•) => 1 / (โ†‘b * z + โ†‘d)) Filter.atTop (nhds 0)
      theorem EisensteinSeries.tendsto_zero_inv_linear_sub (z : โ„‚) (b : โ„ค) :
      Filter.Tendsto (fun (d : โ„•) => 1 / (โ†‘b * z - โ†‘d)) Filter.atTop (nhds 0)
      theorem EisensteinSeries.summable_one_div_norm_rpow {k : โ„} (hk : 2 < k) :
      Summable fun (x : Fin 2 โ†’ โ„ค) => โ€–xโ€– ^ (-k)

      The function โ„ค ^ 2 โ†’ โ„ given by x โ†ฆ โ€–xโ€– ^ (-k) is summable if 2 < k. We prove this by splitting into boxes using Finset.box.

      theorem EisensteinSeries.summable_inv_of_isBigO_rpow_inv {ฮฑ : Type u_1} [NormedField ฮฑ] [CompleteSpace ฮฑ] {f : โ„ค โ†’ ฮฑ} {a : โ„} (hab : 1 < a) (hf : (fun (n : โ„ค) => (f n)โปยน) =O[Filter.cofinite] fun (n : โ„ค) => (|โ†‘n| ^ a)โปยน) :
      Summable fun (n : โ„ค) => (f n)โปยน

      If the inverse of a function isBigO to (|(n : โ„)| ^ a)โปยน for 1 < a, then the function is Summable.

      theorem EisensteinSeries.linear_right_summable (z : โ„‚) (c : โ„ค) {k : โ„ค} (hk : 2 โ‰ค k) :
      Summable fun (d : โ„ค) => ((โ†‘c * z + โ†‘d) ^ k)โปยน

      For z : โ„‚ the function d : โ„ค โ†ฆ ((c z + d) ^ k)โปยน is Summable for 2 โ‰ค k.

      theorem EisensteinSeries.linear_left_summable {z : โ„‚} (hz : z โ‰  0) (d : โ„ค) {k : โ„ค} (hk : 2 โ‰ค k) :
      Summable fun (c : โ„ค) => ((โ†‘c * z + โ†‘d) ^ k)โปยน

      For z : โ„‚ the function c : โ„ค โ†ฆ ((c z + d) ^ k)โปยน is Summable for 2 โ‰ค k.

      theorem EisensteinSeries.summable_linear_sub_mul_linear_add (z : โ„‚) (cโ‚ cโ‚‚ : โ„ค) :
      Summable fun (n : โ„ค) => ((โ†‘cโ‚ * z - โ†‘n) * (โ†‘cโ‚‚ * z + โ†‘n))โปยน
      theorem EisensteinSeries.summable_linear_right_add_one_mul_linear_right (z : โ„‚) (cโ‚ cโ‚‚ : โ„ค) :
      Summable fun (n : โ„ค) => ((โ†‘cโ‚ * z + โ†‘n + 1) * (โ†‘cโ‚‚ * z + โ†‘n))โปยน
      theorem EisensteinSeries.summable_linear_left_mul_linear_left {z : โ„‚} (hz : z โ‰  0) (cโ‚ cโ‚‚ : โ„ค) :
      Summable fun (n : โ„ค) => ((โ†‘n * z + โ†‘cโ‚) * (โ†‘n * z + โ†‘cโ‚‚))โปยน
      theorem EisensteinSeries.vec_add_const_isTheta (a b : โ„ค) :
      (fun (m : Fin 2 โ†’ โ„ค) => โ€–![m 0 + a, m 1 + b]โ€–โปยน) =ฮ˜[Filter.cofinite] fun (m : Fin 2 โ†’ โ„ค) => โ€–mโ€–โปยน
      theorem EisensteinSeries.isBigO_linear_add_const_vec (z : UpperHalfPlane) (a b : โ„ค) :
      (fun (m : Fin 2 โ†’ โ„ค) => ((โ†‘(m 0) + โ†‘a) * โ†‘z + โ†‘(m 1) + โ†‘b)โปยน) =O[Filter.cofinite] fun (m : Fin 2 โ†’ โ„ค) => โ€–mโ€–โปยน
      theorem EisensteinSeries.summable_of_isBigO_rpow_norm {E : Type u_1} [NormedAddCommGroup E] [CompleteSpace E] {f : (Fin 2 โ†’ โ„ค) โ†’ E} {a : โ„} (hab : 2 < a) (hf : f =O[Filter.cofinite] fun (n : Fin 2 โ†’ โ„ค) => (โ€–nโ€– ^ a)โปยน) :

      If a function โ„คยฒ โ†’ โ„‚ is O (โ€–nโ€– ^ a)โปยน for 2 < a, then the function is summable.