## Basic properties

DESCRIPTION : text
Description of the `topaz` object.
INPUT_FACES : array<set>
Any description of the faces of a simplicial complex. Redundancy allowed.
VERTEX_LABELS : array<label>
Labels of the vertices.
N_VERTICES : cardinal
Number of vertices.
FACETS : array<set>
Inclusion maximal faces of the (abstract) simplicial complex, encoded as their ordered set of vertices. The vertices must be numbered 0..n-1.
N_FACETS : cardinal
Number of FACETS.
DIM : cardinal
Maximal dimension of the FACETS, where the dimension of a facet is defined as the number of its vertices less one.
PURE : boolean
A simplicial complex is pure if all its facets have the same dimension.
GRAPH : graph
The subcomplex consisting of all 1-faces.
DUAL_GRAPH : graph
The graph of facet neighborhood. Two FACETS are neighbors if they share a d-1-dimensional face.
HASSE_DIAGRAM : face_lattice
The face lattice of the simplical complex organized as a directed graph. Each node corresponds to some face of the simplical complex. It is represented as the list of vertices comprising the face. The outgoing arcs point to the containing faces of the next dimension. An artificial top node is added to represent the entire complex.
BOUNDARY_OF_PSEUDO_MANIFOLD : array<set>
Co-dimension -1 faces of a PSEUDO_MANIFOLD which are contained in one facet only.

## Combinatorics

MINIMAL_NON_FACES : array<set>
Inclusion minimal non-faces (vertex subsets which are not faces of the simplicial complex).
N_MINIMAL_NON_FACES : cardinal
Number of MINIMAL_NON_FACES.
F_VECTOR : vector<cardinal>
fk is the number of k-faces, for k = 0,..,d, where d is the dimension.
F2_VECTOR : matrix<cardinal>
fik is the number of incident pairs of i-faces and k-faces; the main diagonal contains the F_VECTOR.
ODD_SUBCOMPLEX : array<set>
All faces of co-dimension -2 that are contained in an odd number of faces of co-dimension -1.
VERTEX_DEGREES : array<cardinal>
Degrees of vertices in the GRAPH.
CONNECTIVITY : cardinal
Node connectivity of the GRAPH, that is, the minimal number of nodes to be removed from the graph such that the result is disconnected.
DUAL_CONNECTIVITY : cardinal
Node connectivity of the DUAL_GRAPH. Dual to CONNECTIVITY.
PROJ_ORBITS : powerset
Orbit decomposition of the group of projectivities acting on the set of vertices of facet 0.
PROJ_DICTIONARY : array<cardinal>
For each vertex the corresponding vertex of facet 0 with respect to the action of the group of projectivities.

## Topology

The following properties are topological invariant to different triangulations of the same topological space.

EULER_CHARACTERISTIC : cardinal
Reduced Euler characteristic. Alternating sum of the F_VECTOR minus 1.
HOMOLOGY : array< tuple< list< tuple<cardinal,cardinal> >, cardinal> >
Reduced simplicial homology groups H0,...,Hd (integer coefficients), listed in increasing dimension order.
Each group G is encoded as a sequence ({ (t1 m1) ... (tn mn) } f) of non-negative integers, with t1 > t2 > ... > tn > 1, plus an extra non-negative integer f. The group G is isomorphic to (Z/t1)m_1 × ... × (Z/tn)m_n × Zf, where Z0 is the trivial group.
COHOMOLOGY : array< tuple< list< tuple<cardinal,cardinal> >, cardinal> >
Reduced cohomology groups, listed in increasing co-dimension order. Encoding similar to HOMOLOGY.
CYCLES : array< tuple< sparse_matrix<integer>, array<set> > >
Representatives of cycle groups, listed in increasing dimension order.
The first component in each dimension is a matrix of integer coefficients, the second component is a vector of faces. To obtain the chains, one must multiply (symbolically) both components.
COCYCLES : array< tuple< sparse_matrix<integer>, array<set> > >
Representatives of co-cycle groups, listed in increasing co-dimension order. Encoding similar to CYCLES.
INTERSECTION_FORM : tuple<cardinal,cardinal,cardinal>
Parity and signature of the intersection form of a closed oriented 4-manifold.
STIEFEL_WHITNEY : array<powerset>
Mod 2 cycle representation of Stiefel-Whitney classes. Each cycle is represented as a set of simplices.
PSEUDO_MANIFOLD : boolean
True if this is a PURE simplicial complex with the property that each ridge is contained in either one or two facets.
MANIFOLD : boolean
True if this is a compact simplicial manifold with boundary.
CLOSED_PSEUDO_MANIFOLD : boolean
True if this is a PURE simplicial complex with the property that each ridge is contained in exactly two facets.
ORIENTED_PSEUDO_MANIFOLD : boolean
True if this is a PSEUDO_MANIFOLD with top level homology isomorphic to Z.
ORIENTATION : array<boolean>
An orientation of the facets of an ORIENTED_PSEUDO_MANIFOLD, such that the induced orientations of a common ridge of two neighboring facets cancel each other out. Each facet is marked with true, iff the orientation is given by the increasing vertex ordering and is marked with false, if the orientation is obtained from the increasing vertex ordering by a transposition.
SPHERE : boolean
True if the topological space homeomorphic to a sphere.
BALL : boolean
True if the topological space homeomorphic to a ball.
CONNECTED : boolean
True if GRAPH is a connected graph.
BALANCED : boolean
True if GRAPH is (DIM + 1)-colorable.
Aliases: FOLDABLE
COLORING : array<cardinal>
Coloring of the nodes of GRAPH, such that adjacent nodes have different colors.
DUAL_COLORING : array<cardinal>
Coloring of the nodes of DUAL_GRAPH, such that adjacent nodes have different colors.
DUAL_CONNECTED : boolean
True if DUAL_GRAPH is a connected graph.
BIPARTITE : boolean
True if GRAPH is a bipartite.
DUAL_BIPARTITE : boolean
True if DUAL_GRAPH is a bipartite.
GRAPH_SIGNATURE : integer
Differenz of the black and white nodes if the GRAPH is BIPARTITE. Otherwise -1.
DUAL_GRAPH_SIGNATURE : integer
Differenz of the black and white nodes if the DUAL_GRAPH is BIPARTITE. Otherwise -1.
CONNECTED_COMPONENTS : array<set>
The connected components of the GRAPH, encoded as node sets.
N_CONNECTED_COMPONENTS : cardinal
Number of connected components of the GRAPH.
DUAL_CONNECTED_COMPONENTS : array<set>
The connected components of the DUAL_GRAPH, encoded as node sets.
MAX_CLIQUES : array<set>
The maximal cliques of the GRAPH, encoded as node sets.
DUAL_MAX_CLIQUES : array<set>
The maximal cliques of the DUAL_GRAPH, encoded as node sets.
SURFACE : boolean
True if this is a CONNECTED MANIFOLD of dimension 2.
GENUS : cardinal
The genus of a surface.
LOCALLY_STRONGLY_CONNECTED : boolean
True if the vertex star of each vertex is DUAL_CONNECTED.
FUNDAMENTAL_GROUP : tuple<cardinal, list< tuple<cardinal,integer> > >
A finite representation of the fundamental group. The fundamental group is represented as a pair of an integer, the number of generators, and a list of relations. The generators are numbered consecutively starting with zero. A relation is encoded as a list of pairs, each pair consisting of a generator and its exponent.
You may use the fundamental2gap method to produce a GAP file.
FUNDAMENTAL_GROUP_GEN_LABELS : array<label>
Labels of the generators of the FUNDAMENTAL_GROUP. The labels can be chosen freely. If the FUNDAMENTAL_GROUP is computed by the polymake system, the generators correspond to the edges of the complex. Hence they are labeled g followed by the vertices of the edge, e.g. g3_6 corresponds to the edge {3 6}.
MORSE_MATCHING : graph
A Morse matching is a reorientation of the arcs in the Hasse diagram of a simplicial complex such that at most one arc incident to each face is reoriented (matching condition) and the resulting orientation is acyclic (acyclicity condition). Morse matchings capture the main structure of discrete Morse functions, see

> Robin Forman: Morse Theory for Cell-Complexes,
> Advances in Math., 134 (1998), pp. 90-145.

This property is computed by one of two heuristics. The default heuristic is a simple greedy algorithm (greedy). The alternative is to use a canceling algorithm due to Forman (cancel). Note that the computation of a Morse matching of largest size is NP-hard. See

> Michael Joswig, Marc E. Pfetsch: Computing Optimal Morse Matchings
> SIAM J. Discrete Math., 2006, to appear

MORSE_MATCHING_SIZE : cardinal
Size of the computed Morse matching.
MORSE_MATCHING_CRITICAL_FACES : array<set>
The critical faces of the computed Morse matching, i.e., the faces not incident to any reoriented arc (not matched).
MORSE_MATCHING_CRITICAL_FACE_VECTOR : array<cardinal>
The vector of critical faces in each dimension.
MORSE_MATCHING_N_CRITICAL_FACES : cardinal
Number of critical faces of the computed Morse matching.

## Visualization

GEOMETRIC_REALIZATION : matrix
Coordinates for the vertices of the simplicial complex, such that the complex is embedded without crossings in some Re. Vector (x1 .. xe) represents a point in Euclidean e-space.
G_DIM : cardinal
Dimension e of the space the GEOMETRIC_REALIZATION of the complex is embedded in.
MIXED_GRAPH : graph
The nodes of the mixed graph are the nodes of the primal GRAPH and the DUAL_GRAPH. Additional to the primal and dual edges, there is an edge between a primal and a dual node iff the primal node represents a vertex of the corresponding facet of the dual node.

## Geometric Complexes

SIGNATURE : integer
Signature of a geometric simplicial complex embedded in the integer lattice. Like DUAL_GRAPH_SIGNATURE, but only simplices with odd normalized volume are counted.
VOLUME : scalar
Volume of a geometric simplicial complex.