CongruenceSubgroup¶
qetagamma.spad line 87 [edit on github]
CongruenceSubgroup is the category of congruence subgroups $Gamma$ of $L2Z such as $Gamma_0(N) and $Gamma_1(N)$.
- cusps: () -> List Cusp
If $Gamma$ denotes this domain, then cusps() returns representatives for all the (inequivalent) cusps for GAMMA sorted by their size as rational numbers with infinity being the biggest cusp. Note that cusps()=[cusp(
x(1,1),x(2,1)) forxin doubleCosetRepresentatives()].
- cuspToMatrix: Cusp -> Matrix Integer
For cusp=(a:c), cuspToMatrix(cusp) returns a matrix gamma=[[a,
b],[c,d]] corresponding to the cusp (a:c) of this domain. We assume that a/c is a normalized cusp, i.e. cusp=normalizeCusp(cusp).
- dimensionOfCuspForms: Integer -> NonNegativeInteger
dimensionOfCuspForms(w)computes the dimension of $S_w(Gamma)$. See https://www.wstein.org/books/modform/modform/dimension_formulas.html
- dimensionOfEisensteinSubspace: Integer -> NonNegativeInteger
dimensionOfEisensteinSubspace(w)computes the dimension of $E_w(Gamma)$, the Eisenstein subspace of modular forms. See https://www.wstein.org/books/modform/modform/dimension_formulas.html
- dimensionOfModularForms: Integer -> NonNegativeInteger
dimensionOfModularForms(w)computes the dimension of $M_w(Gamma)$. See https://www.wstein.org/books/modform/modform/dimension_formulas.html
- doubleCosetRepresentatives: () -> List Matrix Integer
doubleCosetRepresentatives()returns a list of double coset representatives of $Gamma backslashSL_2(ZZ) /SL_2(ZZ)_infty$ where $SL_2(ZZ)_infty$ are matrices of the form [[1,h],[0,1]] (or [[-1,h],[0,-1]] withhbeing an integer. Note that cusps()=[cusp(x(1,1),x(2,1)) forxin doubleCosetRepresentatives()].
- equivalentCusps?: (Cusp, Cusp) -> Boolean
equivalentCusps?(cusp1, cusp2)returnstrueiff the cusp cusp1=(a:c) is equivalent to cusp2=(u:w) modulo the action of this domain.
- even?: () -> Boolean
even?()returns member?(matrix [[-1,0],[0,-1]]).
- genus: () -> NonNegativeInteger
genus()returns the genus of the congruence subgroup $Gamma$. For $Gamma_0(nn)$, it corresponds to the series https://oeis.org/A001617. cite[p.~25]{Shimura_ArithmeticTheory_1994} and Proposition 1.40. See also https://www.wstein.org/books/modform/modform/dimension_formulas.html See Section “Modular Formas for $Gamma_1(N)$” in cite{Stein_ModularForms_2007}. level: ()->PPlevel() returns the level of the congruence subgroup.
- index: () -> PositiveInteger
If $Gamma$ denotes this domain, then index() computes the index of $Gamma$ in SL2Z.
- member?: Matrix Integer -> Boolean
member?(mat)returnstrueifmatis an element of $Gamma$. It is assumed that determinant(mat)=1.
- normalizeCusp: Cusp -> Cusp
normalizeCusp(cusp)normalizes thecuspto another (equivalent modulo $Gamma$cusp(u:w) such that ifcuspis equivalent to infinity, then infinity() is returned; ifcuspis equivalent to (0:1), (0:1) is returned. Otherwise the numerator and denominator are positive and small and coprime.
- nu2: () -> Integer
nu2()returns the number of $Gamma$ inequivalent elliptic points of order 2. See cite[p.~25]{Shimura_ArithmeticTheory_1994} and Proposition 1.40 and mu_{1,3}(n) of https://www.wstein.org/books/modform/modform/dimension_formulas.html.
- nu3: () -> Integer
nu3()returns the number of $Gamma$ inequivalent elliptic points of order 3. See See cite[p.~25]{Shimura_ArithmeticTheory_1994} and Proposition 1.40 and mu_{1,3}(n) of https://www.wstein.org/books/modform/modform/dimension_formulas.html.
- numberOfCusps: () -> PositiveInteger
numberOfCusps()returns the number of cusps of $Gamma$. cite[p.~25]{Shimura_ArithmeticTheory_1994} and Proposition 1.40 and also https://www.wstein.org/books/modform/modform/dimension_formulas.html#id2.
- projectiveIndex: () -> PositiveInteger
projectivIndex() computes the index of the image of $Gamma$ in PSL2Z.
- rightCosetRepresentatives: () -> List Matrix Integer
rightCosetRepresentatives()returns a list of right coset representatives of $Gamma backslashSL_2(ZZ)$.
- width: Cusp -> PositiveInteger
If GAMMA denotes this domain, then width(cusp) returns the width of the cusp=(a:c) of GAMMA.
- width: Matrix Integer -> PositiveInteger
width(gamma)=width(cusp(gamma)).