CuspΒΆ

qetacusp.spad line 110 [edit on github]

Cusp implements representatives of cusps of a subgroup of $SL2Z$

<=: (%, %) -> Boolean

from PartialOrder

<: (%, %) -> Boolean

from PartialOrder

=: (%, %) -> Boolean

from BasicType

>=: (%, %) -> Boolean

from PartialOrder

>: (%, %) -> Boolean

from PartialOrder

~=: (%, %) -> Boolean

from BasicType

coerce: % -> OutputForm

from CoercibleTo OutputForm

coerce: Fraction Integer -> %

coerce(a/c) returns the cusp (a:c).

cusp: (Integer, Integer) -> %

cusp(a, c) returns the cusp (a:c).

cusp: Matrix Integer -> %

cusp(mat) returns the cusp represented by the transformation matrix mat. It returns cusp(mat(1,1),mat(2,1)). cusp is a left-inverse of cuspToMatrix, i.e. cusp(cuspToMatrix(c))=c.

cuspToMatrix: % -> Matrix Integer

cuspToMatrix(x) returns a matrix gamma=[[a,b],[c,d]] corresponding to the cusp (a:c).

denom: % -> Integer

For x=(a:c) denom(x) returns c. We assure that denom(x)>=0.

hash: % -> SingleInteger

from Hashable

hashUpdate!: (HashState, %) -> HashState

from Hashable

infinity?: % -> Boolean

infinity?(x) returns true if and only if x is the cusp (1:0).

infinity: () -> %

infinity() returns the cusp (1:0).

latex: % -> String

from SetCategory

max: (%, %) -> %

from OrderedSet

min: (%, %) -> %

from OrderedSet

moebiusTransform: (Integer, Integer, Integer, Integer, %) -> %

moebiusTransform(a,b,c,d,tau) computes the Moebius transform of tau, i.e. (a*tau+b)/(c*tau+d). Input condition: a*d-b*c is nonzero.

moebiusTransform: (Matrix Integer, %) -> %

moebiusTransform(m, tau) computes the Moebius transform of tau. Input condition: not zero? determinant m,

numer: % -> Integer

For x=(a:c) numer(x) returns a.

rational: % -> Fraction Integer

If not infinity?(x) then rational(x) returns the rational number numer(x)/denom(x).

smaller?: (%, %) -> Boolean

from Comparable

BasicType

CoercibleTo OutputForm

Comparable

Hashable

OrderedSet

PartialOrder

SetCategory