The SageMath package surface_dynamics by Vincent Delecroix [VDCF] implements functions to study origamis in Sage. We provide a small interface to use these methods from GAP. An installation of Sage together with the surface_dynamics package and the GAP packages HomalgToCAS, IO_ForHomalg, IO and RingsForHomalg are needed.
The following descriptions and examples are mainly taken from the manual of [VDCF].
‣ VeechgroupBySage ( O ) | ( function ) |
Returns: A subgroup of SL_2( Z).
This function executes the SageMath method veech_group
and returns its result as a GAP object.
‣ IsHyperellipticBySage ( O ) | ( function ) |
Returns: A boolean.
Checks whether or not the origami O is hyperelliptic.
‣ IsPrimitiveBySage ( O ) | ( function ) |
Returns: A boolean.
Checks whether or not the origami O is primitive. An origami is called primitive, if it does not cover another origami, or equivalently if the action of the monodromy group has no non-trivial block.
‣ ReduceBySage ( O ) | ( function ) |
Returns: An Origami.
Returns a reduced origami isomorphic (up to SL(2,Q) action) to O.
gap> ReduceBySage(Origami((1,2)(3,4), (1,3,5,6)(2,4) )); Origami((1,2), (1,3), 6)
‣ AbsolutePeriodGeneratorsBySage ( O ) | ( function ) |
Returns: A list of lists of integers.
Returns a generating set of the absolute periods of O. To each curve on an origami, we can associate its holonomy (that is an element of Z × Z). This function returns a generating set of the module generated by holonomies of closed curves.
gap> AbsolutePeriodGeneratorsBySage(Origami((1,2,3,4)(5,6), (1,5)(2,6) )); [ [ 2, 0 ], [ 2, 0 ], [ 0, 1 ], [ 0, 1 ] ]
‣ LatticeOfAbsolutePeriodsBySage ( O ) | ( function ) |
Returns: A list of lists of integers.
Returns (a,t,u) where ((a,0),(t,u)) is a standard basis for the lattice of the absolute periods of O. The lattice of periods of an origami is the sublattice of Z^2 generated by the holonomy vectors of its saddle connections. Any sublattice of Z^2 has a standard basis consisting of a horizontal vector (a,0) and a non horizontal vector (t,u), where a, t, u are integers satisfying 0 < t < a and 0 < t.
gap> LatticeOfAbsolutePeriodsBySage(Origami((1,2)(3,4), (2,3) )); [ [ 2, 0 ], [ 0, 1 ] ]
‣ OptimalDegreeBySage ( O ) | ( function ) |
Returns: An integer.
Computes the optimal degree of O. The optimal degree of an origami is the degree of the map to the largest torus. Any origami X → T factors as i ∘ π_opt where i is an isogeny. The optimal degree is the degree of π_opt.
gap> OptimalDegreeBySage(Origami((1,2)(3,4), (2,3) )); 2
‣ PeriodGeneratorsBySage ( O ) | ( function ) |
Returns: A list of lists of integer.
Return a list of periods that generate the lattice of periods.
gap> PeriodGeneratorsBySage(Origami((1,3,6)(2,5,7)(4),(1,2,4,3,5,6,7) )); [ [ 2, 0 ], [ 1, 0 ], [ 1, 0 ], [ 0, 2 ], [ -1, 2 ], [ 0, 1 ] ]
‣ WidthsAndHeightsBySage ( O ) | ( function ) |
Returns: A list of lists of integers.
Return the list of widths and heights of cylinders in O.
gap> WidthsAndHeightsBySage(Origami((1,2)(3,4),(1,3,5,6)(2,4) )); [ [ 1, 2 ], [ 2, 2 ] ]
‣ SumOfLyapunovExponentsBySage ( O ) | ( function ) |
Returns: A rational number.
Computes the sum of Lyapunov exponents for O.
gap> SumOfLyapunovExponentsBySage(Origami((1,2)(3,4),(2,3) )); 3/2
‣ IntermediateCoversBySage ( O ) | ( function ) |
Returns the list of intermediate covers of this origami. Not yet implemented.
generated by GAPDoc2HTML