4 SCO methods and functions 4.1 Methods and functions for orbifold triangulations 4.1-1 OrbifoldTriangulation OrbifoldTriangulation( M[, I, mu_data, info] )  function Returns: OrbifoldTriangulation The constructor for OrbifoldTriangulations. Needs the list M of maximal simplices, the Isotropy at certain vertices as a record I, and the list mu_data that encodes the function mu. If only one argument is given, I and mu_data are supposed to be empty. In case of two arguments, mu_data is supposed to be empty. If the last argument info is given as a string, it is stored in the info component of the orbifold triangulation and does not count towards the total number of arguments.  Example  gap> M := [ [1,2,3], [1,2,4], [1,3,4], [2,3,4] ];; gap> S2 := OrbifoldTriangulation( M, "S^2" );  gap> I := rec( 1 := Group( (1,2) ) );; gap> mu_data := [ > [ [2], [1,2], [1,2,3], [1,2,4], x->x*(1,2) ], > [ [2], [1,2], [1,2,4], [1,2,3], x->x*(1,2) ] > ];; gap> Teardrop := OrbifoldTriangulation( M, I, mu_data, "Teardrop" );   4.1-2 Vertices Vertices( ot )  method Returns: List V This returns the list of vertices V of the orbifold triangulation ot. Should be preferred to the equivalent ot!.vertices. 4.1-3 Simplices Simplices( ot )  method Returns: List M This returns the list of maximal simplices M of the orbifold triangulation ot. Should be preferred to the equivalent ot!.max_simplices. 4.1-4 Isotropy Isotropy( ot )  method Returns: Record I This returns the isotropy record I of the orbifold triangulation ot. Should be preferred to the equivalent ot!.isotropy. 4.1-5 Mu Mu( ot )  method Returns: Function mu This returns the function mu of the orbifold triangulation ot. Should be preferred to the equivalent ot!.mu. 4.1-6 MuData MuData( ot )  method Returns: List mu_data This returns the list mu_data that encodes the function mu of the orbifold triangulation ot. Should be preferred to the equivalent ot!.mu_data. 4.1-7 InfoString InfoString( ot )  method Returns: String info This return the string info of the orbifold triangulation ot. Should be preferred to the equivalent ot!.info. 4.2 Methods and functions for simplicial sets 4.2-1 SimplicialSet SimplicialSet( ot )  method Returns: SimplicialSet The constructor for simplicial sets based on an orbifold triangulation ot. This just sets up the object without any computations. These can be triggered later, either explicitly or by SimplicialSet (4.2-2).  Example  gap> Teardrop;  gap> S := SimplicialSet( Teardrop );   4.2-2 SimplicialSet SimplicialSet( S, i )  method Returns: List S_i This returns the components of dimension i of the simplicial set S. Should be used to access existing data instead of using S!.simplicial_set[ i + 1 ], as it has the additional side effect of computing S up to dimension i, thus always returning the desired result.  Example  gap> S := SimplicialSet( Teardrop );  gap> S!.simplicial_set[1]; [ [ [ 1, 2, 3 ] ], [ [ 1, 2, 4 ] ], [ [ 1, 3, 4 ] ], [ [ 2, 3, 4 ] ] ] gap> S!.simplicial_set[2];; Error, List Element: [2] must have an assigned value gap> SimplicialSet( S, 0 ); [ [ [ 1, 2, 3 ] ], [ [ 1, 2, 4 ] ], [ [ 1, 3, 4 ] ], [ [ 2, 3, 4 ] ] ] gap> SimplicialSet( S, 1 );; gap> S;   4.2-3 ComputeNextDimension ComputeNextDimension( S )  method Returns: S This computes the component of the next dimension of the simplicial set S. S is extended as a side effect.  Example  gap> S;  gap> ComputeNextDimension( S );   4.2-4 Extend Extend( S, i )  method Returns: S This computes the components of the simplicial set S up to dimension i. S is extended as a side effect. This method is equivalent to calling ComputeNextDimension (4.2-3) the appropriate number of times.  Example  gap> S;  gap> Extend( S, 5 );   4.3 Methods and functions for matrix creation and computation 4.3-1 BoundaryOperator BoundaryOperator( i, L, mu )  function Returns: List B This returns the ith boundary of L, which has to be an element of a simplicial set. mu is the function μ that has to be taken into account when computing orbifold boundaries. This function is used for matrix creation, there should not be much reason for calling it independently. 4.3-2 CreateBoundaryMatrices CreateBoundaryMatrices( S, d, R )  method Returns: List M This returns the list M of homalg matrices over the homalg ring R up to dimension d, corresponding to the boundary matrices induced by the simplicial set S. If d is not given, the current dimension of S is used.  Example  gap> S := SimplicialSet( Teardrop );  gap> M := CreateBoundaryMatrices( S, 4, HomalgRingOfIntegers() );; gap> S;   4.3-3 Homology Homology( M[, R] )  method Returns: a homalg complex This returns the homology complex of a list M of homalg matrices over the homalg ring R.  Example  gap> S := SimplicialSet( Teardrop );  gap> R := HomalgRingOfIntegers(); Z gap> M := CreateBoundaryMatrices( S, 4, R );; gap> Homology( M, R ); ----------------------------------------------->>>> Z^(1 x 1) ----------------------------------------------->>>> 0 ----------------------------------------------->>>> Z^(1 x 1) ----------------------------------------------->>>> Z/< 2 > ----------------------------------------------->>>> 0   4.3-4 CreateCoboundaryMatrices CreateCoboundaryMatrices( S[, d], R )  method Returns: List M This returns the list M of homalg matrices over the homalg ring R up to dimension d, corresponding to the coboundary matrices induced by the simplicial set S. If d is not given, the current dimension of S is used.  Example  gap> S := SimplicialSet( Teardrop );  gap> M := CreateCoboundaryMatrices( S, 4, HomalgRingOfIntegers() );; gap> S;   4.3-5 Cohomology Cohomology( M[, R] )  method Returns: a homalg complex This returns the cohomology complex of a list M of homalg matrices over the homalg ring R.  Example  gap> S := SimplicialSet( Teardrop );  gap> R := HomalgRingOfIntegers(); Z gap> M := CreateCoboundaryMatrices( S, 4, R );; gap> Cohomology( M, R ); ----------------------------------------------->>>> Z^(1 x 1) ----------------------------------------------->>>> 0 ----------------------------------------------->>>> Z^(1 x 1) ----------------------------------------------->>>> 0 ----------------------------------------------->>>> Z/< 2 >   4.3-6 SCO_Examples SCO_Examples( )  function Returns: nothing This is just an easy way to call the script examples.g, which is located in gap/pkg/SCO/examples/.  Example  gap> SCO_Examples(); @@@@@@@@ SCO @@@@@@@@  Select base ring:  1) Integers (default)  2) Rationals  3) Z/nZ :1  Select Computer Algebra System:  1) GAP (default)  2) External GAP  3) MAGMA  4) Maple  5) Sage :3 --------------------------------------------------------------- Magma V2.14-14 Tue Aug 19 2008 08:36:19 on evariste [Seed = 1054613462] Type ? for help. Type -D to quit. ----------------------------------------------------------------   Select Method:  1) Full syzygy computation (default)  2) matrix creation and rank computation only :1  Select orbifold (default="C2") :Torus   Select mode:  1) Cohomology (default)  2) Homology :1  Select dimension (default = 4) :4 Creating the coboundary matrices ... Starting cohomology computation ... ----------------------------------------------->>>> Z^(1 x 1) ----------------------------------------------->>>> Z^(1 x 2) ----------------------------------------------->>>> Z^(1 x 1) ----------------------------------------------->>>> 0 ----------------------------------------------->>>> 0