Documentation

Mathlib.NumberTheory.ModularForms.Cusps

Cusps #

We define the cusps of a subgroup of GL(2, ℝ) as the fixed points of parabolic elements.

The modular group SL(2, A) acts transitively on OnePoint K, if A is a PID whose fraction field is K. (This includes the case A = ℤ, K = ℚ.)

def IsCusp (c : OnePoint ) (𝒢 : Subgroup (GL (Fin 2) )) :

The cusps of a subgroup of GL(2, ℝ) are the fixed points of parabolic elements of g.

Equations
    Instances For
      theorem IsCusp.smul {c : OnePoint } {𝒢 : Subgroup (GL (Fin 2) )} (hc : IsCusp c 𝒢) (g : GL (Fin 2) ) :
      theorem IsCusp.smul_of_mem {c : OnePoint } {𝒢 : Subgroup (GL (Fin 2) )} (hc : IsCusp c 𝒢) {g : GL (Fin 2) } (hg : g 𝒢) :
      IsCusp (g c) 𝒢
      theorem isCusp_iff_of_relIndex_ne_zero {𝒢 𝒢' : Subgroup (GL (Fin 2) )} (h𝒢 : 𝒢' 𝒢) (h𝒢' : 𝒢'.relIndex 𝒢 0) (c : OnePoint ) :
      IsCusp c 𝒢' IsCusp c 𝒢
      @[deprecated isCusp_iff_of_relIndex_ne_zero (since := "2025-09-13")]
      theorem isCusp_iff_of_relindex_ne_zero {𝒢 𝒢' : Subgroup (GL (Fin 2) )} (h𝒢 : 𝒢' 𝒢) (h𝒢' : 𝒢'.relIndex 𝒢 0) (c : OnePoint ) :
      IsCusp c 𝒢' IsCusp c 𝒢

      Alias of isCusp_iff_of_relIndex_ne_zero.

      theorem Subgroup.Commensurable.isCusp_iff {𝒢 𝒢' : Subgroup (GL (Fin 2) )} (h𝒢 : 𝒢.Commensurable 𝒢') {c : OnePoint } :
      IsCusp c 𝒢 IsCusp c 𝒢'
      @[deprecated Subgroup.Commensurable.isCusp_iff (since := "2025-09-17")]
      theorem Commensurable.isCusp_iff {𝒢 𝒢' : Subgroup (GL (Fin 2) )} (h𝒢 : 𝒢.Commensurable 𝒢') {c : OnePoint } :
      IsCusp c 𝒢 IsCusp c 𝒢'

      Alias of Subgroup.Commensurable.isCusp_iff.

      theorem IsCusp.mono {𝒢 : Subgroup (GL (Fin 2) )} {c : OnePoint } (hGH : 𝒢 ) (hc : IsCusp c 𝒢) :
      IsCusp c
      theorem IsCusp.of_isFiniteRelIndex {𝒢 : Subgroup (GL (Fin 2) )} {c : OnePoint } [𝒢.IsFiniteRelIndex ] (hc : IsCusp c ) :
      IsCusp c 𝒢
      theorem IsCusp.of_isFiniteRelIndex_conj {𝒢 : Subgroup (GL (Fin 2) )} {c : OnePoint } [𝒢.IsFiniteRelIndex ] (hc : IsCusp c ) {h : GL (Fin 2) } (hh : h ) :

      Variant version of IsCusp.of_isFiniteRelIndex.

      The cusps of SL(2, ℤ) are precisely the elements of ℙ¹(ℚ).

      The cusps of SL(2, ℤ) are precisely the SL(2, ℤ) orbit of .

      The cusps of any arithmetic subgroup are the same as those of SL(2, ℤ).

      Cusp orbits #

      We consider the orbits for the action of 𝒢 on its own cusps. The main result is that if [𝒢.IsArithmetic] holds, then this set is finite.

      def cusps_subMulAction (𝒢 : Subgroup (GL (Fin 2) )) :

      The action of 𝒢 on its own cusps.

      Equations
        Instances For
          @[reducible, inline]
          abbrev CuspOrbits (𝒢 : Subgroup (GL (Fin 2) )) :

          The type of cusp orbits of 𝒢, i.e. orbits for the action of 𝒢 on its own cusps.

          Equations
            Instances For

              Surjection from SL(2, ℤ) / (𝒢 ⊓ SL(2, ℤ)) to cusp orbits of 𝒢. Mostly useful for showing that CuspOrbits 𝒢 is finite for arithmetic subgroups.

              Equations
                Instances For

                  An arithmetic subgroup has finitely many cusp orbits.

                  Width of a cusp #

                  We define the strict width of 𝒢 at to be the smallest h > 0 such that [1, h; 0, 1] ∈ 𝒢, or 0 if no such h exists; and the width of 𝒢 to be the strict width of the subgroup generated by 𝒢 and -1, or equivalently the smallest h > 0 such that ±[1, h; 0, 1] ∈ 𝒢 (again, if it exists). We show both widths exist when 𝒢 is discrete and has det ± 1.

                  def Subgroup.strictPeriods {R : Type u_1} [Ring R] (𝒢 : Subgroup (GL (Fin 2) R)) :

                  For a subgroup 𝒢 of GL(2, R), this is the additive group of x : R such that [1, x; 0, 1] ∈ 𝒢.

                  Equations
                    Instances For
                      @[simp]
                      noncomputable def Subgroup.periods {R : Type u_1} [Ring R] (𝒢 : Subgroup (GL (Fin 2) R)) :

                      For a subgroup 𝒢 of GL(2, R), this is the additive group of x : R such that ±[1, x; 0, 1] ∈ 𝒢.

                      Equations
                        Instances For
                          theorem Subgroup.strictPeriods_le_periods {R : Type u_1} [Ring R] (𝒢 : Subgroup (GL (Fin 2) R)) :
                          def Subgroup.IsRegularAtInfty {R : Type u_1} [Ring R] (𝒢 : Subgroup (GL (Fin 2) R)) :

                          A subgroup is regular at ∞ if its periods and strict periods coincide.

                          Equations
                            Instances For
                              theorem Subgroup.IsRegularAtInfty.eq {R : Type u_1} [Ring R] (𝒢 : Subgroup (GL (Fin 2) R)) (h : 𝒢.IsRegularAtInfty) :
                              theorem Subgroup.strictPeriods_eq_periods_of_neg_one_mem {R : Type u_1} [Ring R] {𝒢 : Subgroup (GL (Fin 2) R)} (h𝒢 : -1 𝒢) :
                              theorem Subgroup.isRegularAtInfty_of_neg_one_mem {R : Type u_1} [Ring R] {𝒢 : Subgroup (GL (Fin 2) R)} (h𝒢 : -1 𝒢) :

                              If 𝒢 is discrete, so is its strict period subgroup.

                              If 𝒢 is discrete, so is its period subgroup.

                              noncomputable def Subgroup.strictWidthInfty (𝒢 : Subgroup (GL (Fin 2) )) :

                              The strict width of the cusp , i.e. the x such that 𝒢.strictPeriods = zmultiples x, or 0 if no such x exists.

                              Equations
                                Instances For
                                  noncomputable def Subgroup.widthInfty (𝒢 : Subgroup (GL (Fin 2) )) :

                                  The width of the cusp , i.e. the x such that 𝒢.periods = zmultiples x, or 0 if no such x exists.

                                  Equations
                                    Instances For
                                      theorem Subgroup.isCusp_of_mem_strictPeriods {𝒢 : Subgroup (GL (Fin 2) )} {h : } (hh : 0 < h) (h𝒢 : h 𝒢.strictPeriods) :