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
)$.
- cuspOf: Matrix Integer -> Cusp
cuspOf(mat)
returns the cusp represented by the transformation matrixmat
. It returns cusp(mat
(1,1),mat
(2,1)). cuspOf is a left-inverse of cuspToMatrix, i.e. cuspOf(cuspToMatrix(c
))=c
.
- 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)) forx
in 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
]] withh
being an integer. Note that cusps()=[cusp(x
(1,1),x
(2,1)) forx
in doubleCosetRepresentatives()].
- equivalentCusps?: (Cusp, Cusp) -> Boolean
equivalentCusps?(cusp1, cusp2)
returnstrue
iff the cusp cusp1=(a:c) is equivalent to cusp2=(u:w) modulo the action of this domain.
- 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: ()->
PP
level() 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)
returnstrue
ifmat
is an element of $Gamma$. It is assumed that determinant(mat
)=1
.
- normalizeCusp: Cusp -> Cusp
normalizeCusp(cusp)
normalizes thecusp
to another (equivalent modulo $Gamma$cusp
(u:w) such that ifcusp
is equivalent to infinity, then infinity() is returned; ifcusp
is 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(cuspOf(gamma
)).