Simplicial Complexes

Homology(T,n)
Homology(T)

Inputs a pure cubical complex, or cubical complex, or simplicial complex T and a non-negative integer n. It returns the n-th integral homology of T as a list of torsion integers. If no value of n is input then the list of all homologies of T in dimensions 0 to Dimension(T) is returned .
RipsHomology(G,n)
RipsHomology(G,n,p)

Inputs a graph G, a non-negative integer n (and optionally a prime number p). It returns the integral homology (or mod p homology) in degree n of the Rips complex of G.
Bettinumbers
Bettinumbers(T,n)
Bettinumbers(T)

Inputs a pure cubical complex, or cubical complex, simplicial complex or chain complex T and a non-negative integer n. The rank of the n-th rational homology group H_n(T,\mathbb Q) is returned. If no value for n is input then the list of Betti numbers in dimensions 0 to Dimension(T) is returned .
ChainComplex(T)

Inputs a pure cubical complex, or cubical complex, or simplicial complex T and returns the (often very large) cellular chain complex of T.
CechComplexOfPureCubicalComplex
CechComplexOfPureCubicalComplex(T)

Inputs a d-dimensional pure cubical complex T and returns a simplicial complex S. The simplicial complex S has one vertex for each d-cube in T, and an n-simplex for each collection of n+1 d-cubes with non-trivial common intersection. The homotopy types of T and S are equal.
PureComplexToSimplicialComplex
PureComplexToSimplicialComplex(T,k)

Inputs either a d-dimensional pure cubical complex T or a d-dimensional pure permutahedral complex T together with a non-negative integer k. It returns the first k dimensions of a simplicial complex S. The simplicial complex S has one vertex for each d-cell in T, and an n-simplex for each collection of n+1 d-cells with non-trivial common intersection. The homotopy types of T and S are equal.

For a pure cubical complex T this uses a slightly different algorithm to the function CechComplexOfPureCubicalComplex(T) but constructs the same simplicial complex.
RipsChainComplex
RipsChainComplex(G,n)

Inputs a graph G and a non-negative integer n. It returns n+1 terms of a chain complex whose homology is that of the nerve (or Rips complex) of the graph in degrees up to n.
VectorsToSymmetricMatrix
VectorsToSymmetricMatrix(M)
VectorsToSymmetricMatrix(M,distance)

Inputs a matrix M of rational numbers and returns a symmetric matrix S whose (i,j) entry is the distance between the i-th row and j-th rows of M where distance is given by the sum of the absolute values of the coordinate differences.

Optionally, a function distance(v,w) can be entered as a second argument. This function has to return a rational number for each pair of rational vectors v,w of length Length(M[1]).
EulerCharacteristic
EulerCharacteristic(T)

Inputs a pure cubical complex, or cubical complex, or simplicial complex T and returns its Euler characteristic.
MaximalSimplicesToSimplicialComplex
MaximalSimplicesToSimplicialComplex(L)

Inputs a list L whose entries are lists of vertices representing the maximal simplices of a simplicial complex. The simplicial complex is returned. Here a "vertex" is a GAP object such as an integer or a subgroup.
SkeletonOfSimplicialComplex
SkeletonOfSimplicialComplex(S,k)

Inputs a simplicial complex S and a positive integer k less than or equal to the dimension of S. It returns the truncated k-dimensional simplicial complex S^k (and leaves S unchanged).
GraphOfSimplicialComplex
GraphOfSimplicialComplex(S)

Inputs a simplicial complex S and returns the graph of S.
ContractibleSubcomplexOfSimplicialComplex
ContractibleSubcomplexOfSimplicialComplex(S)

Inputs a simplicial complex S and returns a (probably maximal) contractible subcomplex of S.
PathComponentsOfSimplicialComplex
PathComponentsOfSimplicialComplex(S,n)

Inputs a simplicial complex S and a nonnegative integer n. If n=0 the number of path components of S is returned. Otherwise the n-th path component is returned (as a simplicial complex).
QuillenComplex
QuillenComplex(G)

Inputs a finite group G and returns, as a simplicial complex, the order complex of the poset of non-trivial elementary abelian subgroups of G.
SymmetricMatrixToIncidenceMatrix
SymmetricMatrixToIncidenceMatrix(S,t)
SymmetricMatrixToIncidenceMatrix(S,t,d)

Inputs a symmetric integer matrix S and an integer t. It returns the matrix M with M_{ij}=1 if I_{ij} is less than t and I_{ij}=1 otherwise.

An optional integer d can be given as a third argument. In this case the incidence matrix should have roughly at most d entries in each row (corresponding to the $d$ smallest entries in each row of S).
IncidenceMatrixToGraph
IncidenceMatrixToGraph(M)

Inputs a symmetric 0/1 matrix M. It returns the graph with one vertex for each row of M and an edges between vertices i and j if the (i,j) entry in M equals 1.
CayleyGraphOfGroup
CayleyGraphOfGroup(G,A)

Inputs a group G and a set A of generators. It returns the Cayley graph.
PathComponentsOfGraph
PathComponentsOfGraph(G,n)

Inputs a graph G and a nonnegative integer n. If n=0 the number of path components is returned. Otherwise the n-th path component is returned (as a graph).
ContractGraph
ContractGraph(G)

Inputs a graph G and tries to remove vertices and edges to produce a smaller graph G' such that the indlusion G' \rightarrow G induces a homotopy equivalence RG \rightarrow RG' of Rips complexes. If the graph G is modified the function returns true, and otherwise returns false.
GraphDisplay
GraphDisplay(G)

This function uses GraphViz software to display a graph G.
SimplicialMap
SimplicialMapNC
SimplicialMap(K,L,f)
SimplicialMapNC(K,L,f)

Inputs simplicial complexes K , L and a function f\colon K!.vertices \rightarrow L!.vertices representing a simplicial map. It returns a simplicial map K \rightarrow L. If f does not happen to represent a simplicial map then SimplicialMap(K,L,f) will return fail; SimplicialMapNC(K,L,f) will not do any check and always return something of the data type "simplicial map".
ChainMapOfSimplicialMap
ChainMapOfSimplicialMap(f)

Inputs a simplicial map f\colon K \rightarrow L and returns the corresponding chain map C_\ast(f) \colon C_\ast(K) \rightarrow C_\ast(L) of the simplicial chain complexes..
SimplicialNerveOfGraph
SimplicialNerveOfGraph(G,d)

Inputs a graph G and returns a d-dimensional simplicial complex K whose 1-skeleton is equal to G. There is a simplicial inclusion K \rightarrow RG where: (i) the inclusion induces isomorphisms on homotopy groups in dimensions less than d; (ii) the complex RG is the Rips complex (with one n-simplex for each complete subgraph of G on n+1 vertices).