[Next][Prev] [Right] [Left] [Up] [Index] [Root]

ARITHMETIC FUCHSIAN GROUPS AND SHIMURA CURVES

In this chapter, we document algorithms for arithmetic Fuchsian groups. Let F be a totally real number field. Let A be a quaternion algebra over F, a central simple algebra of dimension 4 (see Chapter QUATERNION ALGEBRAS), such that A is split at exactly one real place, corresponding to the injective map ι_∞:A to M2(R). Let O be a maximal order in A (see also Section Orders), let O^ * denote the group of elements of O of reduced norm 1, and let Γ(1)=ι_∞(O^ * )/{+- 1} ⊂PSL2(R). An arithmetic Fuchsian group Γis a discrete subgroup of PSL2(R) which is commensurable with Γ(1) (for some choice of F and A).

The classical case of the modular groups corresponds to F=Q, A=M2(Q), O=M2(Z), and Γ(1)=PSL2(Z). Specialized algorithms for this case apply, and they are treated in detail in Chapter CONGRUENCE SUBGROUPS OF PSL2(R). To exclude this case, we assume throughout that A is a division ring, or equivalently A not isomorphic to M2(Q).

The group Γacts properly and discontinuously on the upper half-plane Hh, and the quotient Γ\ Hh = X(Γ) can be given the structure of a compact Riemann surface, called a Shimura curve.

We exhibit methods for computing with arithmetic Fuchsian groups Γ, including the basic invariants of Γand a fundamental domain for X(Γ). We provide further specialized algorithms for triangle groups. Along the way, we also present an interface for computing with the unit disc, parallel to that for the upper half-plane (see Chapter CONGRUENCE SUBGROUPS OF PSL2(R)).

The algorithm used to compute fundamental domains is described in [Voi09]. We recommend the following additional reading concerning the algorithms in this section. For an introduction to Fuchsian groups, see Katok [Kat92] and Beardon [Bea77], and for their relationship to quaternion algebras, see also Vignéras [Vig80]. For a computational perspective on arithmetic Fuchsian groups and Shimura curves, see Alsina-Bayer [AB04], Elkies [Elk98], and Voight [Voi05], and for a discussion of triangle groups, see Voight [Voi06].  
Acknowledgements
 
Arithmetic Fuchsian Groups
      Creation
      Quaternionic Functions
      Basic Invariants
      Group Structure
 
Unit Disc
      Creation
      Basic Operations
      Access Operations
      Distance and Angles
      Structural Operations
 
Fundamental Domains
 
Triangle Groups
      Creation of Triangle Groups
      Fundamental Domain
      CM Points
 
Bibliography







DETAILS

 
Arithmetic Fuchsian Groups

      Creation
            FuchsianGroup(O) : AlgQuatOrd -> GrpPSL2
            FuchsianGroup(A) : AlgQuat -> GrpPSL2
            FuchsianGroup(A, N) : AlgQuat, RngOrdIdl -> GrpPSL2
            Example GrpPSL2Shim_ConstructAFG1 (H131E1)

      Quaternionic Functions
            QuaternionOrder(G) : GrpPSL2 -> AlgQuatOrd
            QuaternionAlgebra(G) : GrpPSL2 -> AlgQuat
            SplitRealPlace(A) : AlgQuat -> PlcNum
            FuchsianMatrixRepresentation(A) : AlgQuat -> Map
            DefiniteNorm(gamma) : AlgQuatElt -> FldReElt
            DefiniteGramMatrix(B) : SeqEnum[AlgQuatElt] -> FldReElt
            Example GrpPSL2Shim_QuaternionicFunctions (H131E2)
            MultiplicativeOrder(gamma) : AlgAssVOrdElt -> SeqEnum
            Quaternion(g) : GrpPSL2Elt -> AlgQuatElt

      Basic Invariants
            ArithmeticVolume(G) : GrpPSL2 -> FldRatElt
            EllipticInvariants(G) : GrpPSL2 -> SeqEnum
            Signature(G) : GrpPSL2 -> SeqEnum

      Group Structure
            Group(G) : GrpPSL2 -> GrpFP, Map, Map
            Example GrpPSL2Shim_BasicInvariants (H131E3)

 
Unit Disc

      Creation
            UnitDisc() : -> SpcHyd

      Basic Operations
            D ! x : SpcHyd, . -> SeqEnum
            x eq y : SpcHydElt, SpcHydElt -> BoolElt
            a * x : RngElt, SpcHydElt -> RngElt
            x + y : SpcHydElt, RngElt -> RngElt
            x - y : SpcHydElt, RngElt -> RngElt
            x / a : SpcHydElt, RngElt -> RngElt

      Access Operations
            IsExact(z) : SpcHydElt -> BoolElt, .
            ExactValue(z) : SpcHydElt -> .
            ComplexValue(z) : SpcHydElt -> FldComElt
            Im(z) : SpcHydElt -> FldReElt
            Re(z) : SpcHydElt -> FldReElt
            Argument(z) : SpcHydElt -> FldReElt
            Abs(z) : SpcHydElt -> FldReElt
            Example GrpPSL2Shim_UnitDiscBasics (H131E4)

      Distance and Angles
            Distance(z,w) : SpcHydElt, SpcHydElt -> FldReElt
            Geodesic(z,w) : SpcHydElt, SpcHydElt -> RngElt, RngElt
            TangentAngle(x,y) : SpcHydElt, SpcHydElt -> FldReElt
            Angle(e1,e2) : [SpcHydElt], [SpcHydElt] -> FldReElt
            ArithmeticVolume(P) : [SpcHydElt] -> FldReElt
            Example GrpPSL2Shim_UnitDiscAngle (H131E5)

      Structural Operations
            T * x : GrpPSL2Elt, SpcHydElt -> SpcHydElt
            Center(D) : SpcHyd -> RngElt
            DiscToPlane(H,z) : SpcHyp, SpcHydElt -> SpcHypElt
            PlaneToDisc(D,z) : SpcHyd, SpcHypElt -> SpcHydElt
            Matrix(g,D) : GrpPSL2Elt, SpcHyd -> AlgMatElt
            FixedPoints(g,D) : GrpPSL2Elt, SpcHyd -> SeqEnum
            IsometricCircle(g) : GrpPSL2Elt -> RngElt, RngElt
            IsometricCircle(g,D) : GrpPSL2Elt, SpcHyd -> RngElt, RngElt
            GeodesicsIntersection(x1,x2) : [SpcHydElt], [SpcHydElt]) -> .
            BoundaryIntersection(x) : [SpcHydElt] -> [FldComElt]
            Example GrpPSL2Shim_UnitDiscPractice2 (H131E6)

 
Fundamental Domains
      FundamentalDomain(G,D) : GrpPSL2, SpcHyd -> SeqEnum
      FundamentalDomain(G) : GrpPSL2 -> SeqEnum
      Example GrpPSL2Shim_FundamentalDomains (H131E7)
      ShimuraReduceUnit(delta, gammagens, G, D) : AlgAssVOrdElt, SeqEnum[AlgAssVOrdElt], GrpPSL2, SpcHyd -> SeqEnum

 
Triangle Groups

      Creation of Triangle Groups
            ArithmeticTriangleGroup(p,q,r) : RngIntElt, RngIntElt, RngIntElt -> GrpPSL2, Rng
            AdmissableTriangleGroups() : -> SeqEnum
            IsTriangleGroup(G) : GrpPSL2 -> BoolElt

      Fundamental Domain
            ReduceToTriangleVertices(G,z) : GrpPSL2, SpcHypElt -> SpcHypElt

      CM Points
            HypergeometricSeries2F1(A,B,C,z) : FldRatElt, FldRatElt, FldRatElt, FldComElt -> FldComElt
            Example GrpPSL2Shim_Hypergeometric2F1 (H131E8)
            ShimuraConjugates(mu) : AlgAssVOrdElt -> SeqEnum
            jParameter(G,z) : GrpPSL2, SpcHypElt -> FldComElt, SeqEnum
            Example GrpPSL2Shim_Triangle239CMPoints1 (H131E9)
            CMPoints(G,mu) : GrpPSL2, AlgAssVOrdElt -> RngUPolElt, SeqEnum
            Example GrpPSL2Shim_Triangle239CMPoints2 (H131E10)

 
Bibliography

[Next][Prev] [Right] [____] [Up] [Index] [Root]
Version: V2.19 of Wed Apr 24 15:09:57 EST 2013