Basic properties

POINTS : matrix
Points such that the polyhedron is their convex hull. Redundancies are allowed. Vector (x0 x1 .. xd) represents a point in (d+1)-space (homogeneous coordinates.) Affine points are identified by x0 > 0. Points with x0 = 0 can be interpreted as rays.
polymake automatically normalizes each coordinate vector, dividing them by the first non-zero element. The clients and rule subroutines can always assume that x0 is either 0 or 1. Dual to INEQUALITIES.
Input section only. Ask for VERTICES if you want to compute a V-representation from an H-representation.
VERTICES : matrix
Vertices of the polyhedron. No redundancies are allowed. The coordinates are normalized the same way as POINTS. Dual to FACETS.
INEQUALITIES : matrix
Inequalities that describe half-spaces such that the polyhedron is their intersection. Redundancies are allowed. Dual to POINTS.
A vector (A0 A1 .. Ad) defines the (closed affine) half-space of points (1,x1,..,xd) such that A0 + A1 x1 + .. + Ad xd >= 0.
Input section only. Ask for FACETS and AFFINE_HULL if you want to compute an H-representation from a V-representation.
FACETS : matrix
Facets of the polyhedron, encoded as INEQUALITIES. Dual to VERTICES.
EQUATIONS : matrix
Equations that hold for all points of the polyhedron.
A vector (A0 A1 .. Ad) describes the hyperplane of all points (1,x1,..,xd) such that A0 + A1 x1 + .. + Ad xd = 0.
Input section only. Ask for AFFINE_HULL if you want to see an irredundant description of the affine span.
AFFINE_HULL : matrix
Dual basis of the affine hull of the polyhedron.
VERTEX_NORMALS : matrix
The i-th row is the normal vector of a hyperplane separating the i-th vertex from the rest ones. This property is a by-product of redundant point elimination algorithm.
VALID_POINT : vector
Some point belonging to the polyhedron.
DIM : cardinal
Dimension of the affine hull of the polyhedron = dimension of the polyhedron. If the polytope is given purely combinatorically, it's the dimension of a minimal embedding space deduced from the combinatorial structure.
AMBIENT_DIM : cardinal
Dimension of the space where the polyhedron lives in.
FEASIBLE : boolean
True if the polyhedron is not empty.
POINTED : boolean
True if the polyhedron does not contain an affine line.
ONE_VERTEX : vector
A vertex of a pointed polyhedron.
FAR_FACE : set
Indices of vertices that are rays.
UNBOUNDED_FACETS : set
Indices of facets that are unbounded.
BOUNDED : boolean
True if the polyhedron is a bounded polytope.
BOUNDED_GRAPH : graph
Graph of the bounded subcomplex.
TOWARDS_FAR_FACE : vector
A LINEAR_OBJECTIVE function for which each unbounded edge is increasing; only defined for unbounded polyhedra.
SIMPLE_POLYHEDRON : boolean
True if each bounded vertex of a (possibly unbounded) d-polyhedron has vertex degree d in the GRAPH. The vertex degrees of the vertices on the FAR_FACE do not matter.
EDGE_COLORED_BOUNDED_GRAPH : graph
Graph of the bounded subcomplex. Additionally each edge indicates the maximal dimension of a bounded face containing it. Mainly used for visualization purposes.
CENTERED : boolean
True if (1,0,0,..) is a relative interior point. Polar to BOUNDED.
POSITIVE : boolean
True if all vertices of the polyhedron have non-negative coordinates, that is, it lies entirely in the positive orthant.
N_POINTS : cardinal
Number of points.
N_INEQUALITIES : cardinal
Number of inequalities.
VERTEX_BARYCENTER : vector
The center of gravity of the vertices of a bounded polytope.
MINIMAL_VERTEX_ANGLE : scalar
The minimum angle between any two vertices (seen from the VERTEX_BARYCENTER).
ZONOTOPE_INPUT_VECTORS : matrix
Contains the vector configuration for which a zonotope can be built.
REVERSE_TRANSFORMATION : matrix
Some invertible linear transformation that can be used to get back a previous coordinate repersentation of the polytope. It operates from the right on point row vectors (e.g. in properties like POINTS, VERTICES, REL_INT_POINT); its inverse operates from the left on hyperplane column vectors.
VERTEX_LABELS : array<label>
Unique names assigned to the VERTICES. If specified, they are shown by visualization tools instead of vertex indices.
For a polytope build from scratch, you should create this property by yourself, either manually in a text editor, or with a client program. If you build a polytope with a construction client taking some other input polytope(s), you can create the labels automatically if you call the client with a -relabel option. The exact format of the labels is dependent on the construction, and is described by the corresponding client.
FACET_LABELS : array<label>
Unique names assigned to the FACETS, analogous to VERTEX_LABELS.
GALE_TRANSFORM : matrix
Coordinates of the Gale transform.
STEINER_POINTS : matrix
A weighted inner point depending on the outer angle called Steiner point for all faces of dimensions 2 to d.

Combinatorics

N_VERTICES : cardinal
Number of vertices.
N_BOUNDED_VERTICES : cardinal
Number of bounded vertices (non-rays).
N_FACETS : cardinal
Number of facets.
N_VERTEX_FACET_INC : cardinal
Number of pairs of incident vertices and facets.
VERTICES_IN_FACETS : incidence_matrix
Vertex-facet incidence matrix, with rows corresponding to facets and columns to vertices. Vertices and facets are numbered from 0 to N_VERTICES-1 rsp. N_FACETS-1, according to their order in VERTICES rsp. FACETS.
FACETS_THRU_VERTICES : incidence_matrix
transposed VERTICES_IN_FACETS
HASSE_DIAGRAM : face_lattice
The face lattice of the polytope organized as a directed graph. Each node corresponds to some proper face of the polytope. The nodes corresponding to the vertices and facets appear in the same order as the elements of VERTICES and FACETS properties.
Two special nodes represent the whole polytope and the empty face.
VERTEX_SIZES : array<cardinal>
Number of incident facets for each vertex.
FACET_SIZES : array<cardinal>
Number of incident vertices for each facet.
GRAPH : graph
Vertex-edge graph.
DUAL_GRAPH : graph
Facet-ridge graph. Dual to GRAPH.
N_EDGES : cardinal
Number of edges.
N_RIDGES : cardinal
Number of ridges.
VERTEX_DEGREES : array<cardinal>
Degrees of vertices in the GRAPH.
FACET_DEGREES : array<cardinal>
Degrees of facets in the DUAL_GRAPH.
TWO_FACE_SIZES : array< tuple<cardinal,cardinal> >
Lists for each occurring size (= number of incident vertices or edges) of a 2-face how many there are.
SUBRIDGE_SIZES : array< tuple<cardinal,cardinal> >
Lists for each occurring size (= number of incident facets or ridges) of a subridge how many there are.
DIAMETER : cardinal
Graph theoretical diameter of GRAPH.
DUAL_DIAMETER : cardinal
Graph theoretical diameter of DUAL_GRAPH.
TRIANGLE_FREE : boolean
True if GRAPH does not contain a triangle.
DUAL_TRIANGLE_FREE : boolean
True if DUAL_GRAPH does not contain a triangle.
ALTSHULER_DET : cardinal
Let M be the vertex-facet incidence matrix, then the Altshulter determinant is defined as max{det(MMT), det(MTM)}.
F_VECTOR : vector<cardinal>
fk is the number of k-faces.
F2_VECTOR : matrix<cardinal>
fik is the number of incident pairs of i-faces and k-faces; the main diagonal contains the F_VECTOR.
ESSENTIALLY_GENERIC : boolean
All intermediate polytopes (with respect to the given insertion order) in the beneath-and-beyond algorithm are simplicial. We have the implications: VERTICES in general position => ESSENTIALLY_GENERIC => SIMPLICIAL
SIMPLICIAL : boolean
True if the polytope is simplicial.
SIMPLE : boolean
True if the polytope is simple. Dual to SIMPLICIAL.
EVEN : boolean
True if the GRAPH of the polytope is bipartite.
DUAL_EVEN : boolean
True if the DUAL_GRAPH of the polytope is bipartite. Dual to EVEN.
SELF_DUAL : boolean
True if the polytope is self-dual.
CONNECTIVITY : cardinal
Node connectivity of the GRAPH of the polytope, 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 of the polytope. Dual to CONNECTIVITY.
SIMPLICIALITY : cardinal
Maximal dimension in which all faces are simplices.
SIMPLICITY : cardinal
Maximal dimension in which all dual faces are simplices.
FACE_SIMPLICITY : cardinal
Maximal dimension in which all faces are simple polytopes.
CUBICAL : boolean
True if all facets are cubes.
CUBICALITY : cardinal
Maximal dimension in which all facets are cubes.
COCUBICAL : boolean
Dual to CUBICAL.
COCUBICALITY : cardinal
Dual to CUBICALITY.
NEIGHBORLY : boolean
True if the polytope is neighborly.
NEIGHBORLINESS : cardinal
Maximal dimension in which all facets are neighborly.
BALANCED : boolean
Dual to NEIGHBORLY.
BALANCE : cardinal
Maximal dimension in which all facets are balanced.
FATNESS : scalar
Parameter describing the shape of the face-lattice of a 4-polytope.
COMPLEXITY : scalar
Parameter describing the shape of the face-lattice of a 4-polytope.
FLAG_VECTOR : vector<cardinal>
Condensed form of the flag vector, containing all entries indexed by sparse sets in {0,...,DIM-1} in the following order: (1, f0, f1, f2, f02, f3, f03, f13, f4, f04, f14, f24, f024, f5,...). Use Dehn-Sommerville equations, via user function N_FLAGS, to extend.
CD_INDEX_COEFFICIENTS : vector<cardinal>
Coefficients of the cd-index.
Contributed by Axel Werner
H_VECTOR : vector<cardinal>
h-vector, defined via recursion on the face lattice of a polytope. Coincides for simplicial (resp. simple) polytopes with the combinatorial definition of the h-vector via shellings (resp. orderings of vertices).
BOUNDED_H_VECTOR : vector<cardinal>
h-vector of the bounded subcomplex, defined for not necessarily bounded polyhedra which are simple (as polyhedra, i.e., VERTEX_DEGREES on the FAR_FACE do not matter). Coincides with the reverse h-vector of the dual simplicial ball. Note that this vector will usually start with a number of zero entries.
CUBICAL_H_VECTOR : vector<cardinal>
Cubical h-vector. Defined for cubical polytopes and their duals.
G_VECTOR : vector<cardinal>
(Toric) g-vector, defined via the (generalized) h-vector as gi = hi - hi-1.
Contributed by Axel Werner

Convex hull computation

POINTS_IN_FACETS : incidence_matrix
Similar to VERTICES_IN_FACETS, but with columns corresponding to POINTS instead of VERTICES. This property is a byproduct of convex hull computation algorithms. It is discarded as soon as VERTICES_IN_FACETS is computed.
VERTICES_IN_INEQUALITIES : incidence_matrix
Similar to VERTICES_IN_FACETS, but with rows corresponding to INEQUALITIES instead of FACETS. This property is a byproduct of convex hull computation algorithms. It is discarded as soon as VERTICES_IN_FACETS is computed.

Topology

GRAPH_SIGNATURE : integer
Difference 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.

Triangulation and volume

Everything in this group is defined for BOUNDED polytopes only.

VOLUME : scalar
Volume of the polytope.
TRIANGULATION : array<set>
Some triangulation of the polytope using only its vertices. Each line contains indices from VERTICES comprising a simplex.
TRIANGULATION_INT : array<set>
Similar to TRIANGULATION, but using POINTS.
TRIANGULATION_BOUNDARY : array<powerset>
Intersection of TRIANGULATION with polytope boundary. Each line describes the triangulation of the corresponding facet as a list of simplices.
TRIANGULATION_SIGNS : vector<integer>
For each simplex in TRIANGULATION, contains the sign of determinant of its coordinate matrix, telling about its orientation.
TRIANGULATION_INT_SIGNS : vector<integer>
Similar to TRIANGULATION_SIGNS, but relates to TRIANGULATION_INT.
WEIGHTS : vector
Weight vector to construct a regular TRIANGULATION.

Visualization

VIF_CYCLIC_NORMAL : array< list<cardinal> >
Reordered VERTICES_IN_FACETS for 2-d and 3-d polytopes. Vertices are listed in the order of their appearance when traversing the facet border counterclockwise seen from outside of the polytope.
For a 2-d polytope (which is a closed polygon), lists all vertices in the border traversing order.
NEIGHBOR_FACETS_CYCLIC_NORMAL : array< list<cardinal> >
Reordered DUAL_GRAPH for 3-d polytopes. The neighbor facets are listed in the order corresponding to VIF_CYCLIC_NORMAL, so that the first two vertices in VIF_CYCLIC_NORMAL make up the ridge to the first neighbor facet and so on.
FTV_CYCLIC_NORMAL : array< list<cardinal> >
Reordered transposed VERTICES_IN_FACETS. Dual to VIF_CYCLIC_NORMAL.
NEIGHBOR_VERTICES_CYCLIC_NORMAL : array< list<cardinal> >
Reordered GRAPH. Dual to NEIGHBOR_FACETS_CYCLIC_NORMAL.
SCHLEGEL_PARAMS : text
Set of stored parameters to create a Schlegel diagram. This is a temporary solution until the hierarchical objects are fully implemented.
GALE_VERTICES : matrix
Coordinates of points for an affine Gale diagram.

Lattice polytopes

LATTICE : boolean
This is the defining property: A polytope is lattice if each vertex has integer coordinates.

0/1-polytopes

N_01POINTS : cardinal
Number of points with 0/1-coordinates in a polytope.

Polarization

REL_INT_POINT : vector
Relatively interior point of the polyhedron.
FAR_HYPERPLANE : vector
Valid strict inequality for all affine points of the polyhedron.

Optimization

LINEAR_OBJECTIVE : vector
Linear objective function.
ABSTRACT_OBJECTIVE : vector
Abstract objective function. Defines a direction for each edge such that each non-empty face has a unique source and a unique sink. The i-th element is the value of the objective function at vertex number i. Only defined for bounded polytopes.
MAXIMAL_FACE : set
Indices of vertices at which the maximum of the objective function is attained.
MINIMAL_FACE : set
Similar to MAXIMAL_FACE.
MAXIMAL_VERTEX : vector
Coordinates of a (possible not unique) vertex at which the maximum of the objective function is attained.
MINIMAL_VERTEX : vector
Similar to MAXIMAL_VERTEX.
MAXIMAL_VALUE : scalar
Maximum value of the objective function. Negated if linear problem is unbounded.
MINIMAL_VALUE : scalar
Similar to MAXIMAL_VALUE.
DIRECTED_GRAPH : graph
Subgraph of GRAPH. Consists only of directed arcs along which the value of the objective function increases.
VERTEX_OUT_DEGREES : array<cardinal>
Number of outgoing arcs for each vertex in DIRECTED_GRAPH.
VERTEX_IN_DEGREES : array<cardinal>
Number of incoming arcs for each vertex in DIRECTED_GRAPH.
VERTEX_COLORS : array<RGB>
Approximate color encoding of objective function values. For each vertex, the color is chosen by linear interpolation in HSV system between fixed "maximal" and "minimal" colors, with the same ratio as the objective function value has in relation to the global maximum and mininum on the entire polytope.
RANDOM_EDGE_EPL : vector
Expected average path length for a simplex algorithm employing "random edge" pivoting strategy.
VARIABLE_NAMES : array<label>
You can give a list of variable names here (this amounts to naming the columns of the coordinate vectors for VERTICES). This is of not much use for polymake. But this information will be used by programs which convert polymake format to other formats (such as LP).

Oriented matroids

CHIROTOPE : chirotope
Chirotope corresponding to VERTICES
CHIROTOPE_INT : chirotope
Chirotope corresponding to POINTS.

Other properties

CENTROID : vector
Centroid (center of mass) of the polytope.
SPLITS : matrix
The splits of the polytope, i.e. hyperplanes cutting the polytope in two parts such that we have a regular subdivision.