Available versions of this document: latest release, release 4.15, release 4.14, release 4.13, release 4.12, release 4.11, release 4.10, release 4.9, release 4.8, release 4.7, release 4.6, release 4.5, release 4.4, release 4.3, release 4.2, release 4.1, release 4.0, release 3.6, release 3.5, nightly master
Reference documentation for older polymake versions: release 3.4, release 3.3, release 3.2
BigObject Cone<Scalar>
from application polytope
A polyhedral cone, not necessarily pointed. Note that in contrast to the vertices of a polytope, the RAYS are given in affine coordinates.
- Type Parameters:
Scalar: numeric data type used for the coordinates, must be an ordered field. Default isRational.- Specializations:
Cone::ExactCoord: An affine cone with an exact coordinate type, like Rational.Cone<Float>: An affine cone with float coordinates realized in Rd.Cone<Rational>: An affine rational cone realized in Rd.- Permutations:
Properties
Input property
These properties are for input only. They allow redundant information.
-
EQUATIONS Equations that hold for all
INPUT_RAYSof the cone. All vectors in this section must be non-zero. Input section only. Ask forLINEAR_SPANif you want to see an irredundant description of the linear span.- Type:
Matrix<Scalar,NonSymmetric>
-
INEQUALITIES Inequalities giving rise to the cone; redundancies are allowed. All vectors in this section must be non-zero. Dual to
INPUT_RAYS. Input section only. Ask forFACETSif you want to compute an H-representation from a V-representation.- Type:
Matrix<Scalar,NonSymmetric>
-
INPUT_LINEALITY (Non-homogenous) vectors whose linear span defines a subset of the lineality space of the cone; redundancies are allowed. All vectors in the input must be non-zero. Dual to
EQUATIONS. Input section only. Ask forLINEALITY_SPACEif you want to compute a V-representation from an H-representation.- Type:
Matrix<Scalar,NonSymmetric>
-
INPUT_RAYS (Non-homogenous) vectors whose positive span form the cone; redundancies are allowed. Dual to
INEQUALITIES. All vectors in the input must be non-zero. Input section only. Ask forRAYSif you want to compute a V-representation from an H-representation.- Type:
Matrix<Scalar,NonSymmetric>
Algebraic Geometry
Properties from algebraic geometry.
-
TORIC_IDEAL The matrix containing the exponent vectors of the binomials whose vanishing set is the affine toric variety given by the cone. In other words the rows of this matrix give the relations between the Hilbert basis elements.
- Type:
- depends on extension:
Combinatorics
These properties capture combinatorial information of the object. Combinatorial properties only depend on combinatorial data of the object like, e.g., the face lattice.
-
ALTSHULER_DET Let M be the vertex-facet incidence matrix, then the Altshuler determinant is defined as max{det(M ∗ MT), det(MT ∗ M)}.
- Type:
- Example:
This prints the Altshuler determinant of the built-in pentagonal pyramid (Johnson solid 2):
> print johnson_solid("pentagonal_pyramid")->ALTSHULER_DET; 25
-
COCIRCUIT_EQUATIONS A matrix whose rows contain the cocircuit equations of P. The columns correspond to the
MAX_INTERIOR_SIMPLICES.- Type:
-
COMBINATORIAL_DIM Combinatorial dimension This is the dimension all combinatorial properties of the cone like e.g.
RAYS_IN_FACETSor theHASSE_DIAGRAMrefer to. Geometrically, the combinatorial dimension is the dimension of the intersection of the pointed part of the cone with a hyperplane that creates a bounded intersection.- Type:
-
DUAL_GRAPH Facet-ridge graph. Dual to
GRAPH.- Type:
-
ESSENTIALLY_GENERIC All intermediate polytopes (with respect to the given insertion order) in the beneath-and-beyond algorithm are simplicial. We have the implications:
RAYSin general position ⇒ ESSENTIALLY_GENERIC ⇒SIMPLICIAL- Type:
-
EXCESS_FACET_DEGREE Measures the deviation of the cone from being simple in terms of the
DUAL_GRAPH.- Type:
-
EXCESS_RAY_DEGREE Measures the deviation of the cone from being simple in terms of the
GRAPH.- Type:
-
F2_VECTOR The vector counting the number of incidences between pairs of faces. `fik` is the number of incident pairs of `(i+1)`-faces and `(k+1)`-faces. The main diagonal contains the
F_VECTOR.- Type:
-
FACETS_THRU_RAYS Transposed to
RAYS_IN_FACETS. Notice that this is a temporary property; it will not be stored in any file.- Type:
-
FACET_SIZES Number of incident rays for each facet.
- Type:
-
FLAG_VECTOR Condensed form of the flag vector, containing all entries indexed by sparse sets in {0, …,
COMBINATORIAL_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 functionN_FLAGS, to extend.- Type:
-
FOLDABLE_COCIRCUIT_EQUATIONS A matrix whose rows contain the foldable cocircuit equations of P. The columns correspond to 2 *
MAX_INTERIOR_SIMPLICES. col 0 = 0, col 1 = first simplex (black copy), col 2 = first simplex (white copy), col 3 = second simplex (black copy), …- Type:
-
F_VECTOR The vector counting the number of faces (`fk` is the number of `(k+1)`-faces).
- Type:
-
GRAPH Vertex-edge graph obtained by intersecting the cone with a transversal hyperplane.
- Type:
-
HASSE_DIAGRAM - Type:
- Methods of HASSE_DIAGRAM:
-
dim() The dimension of the underlying object
- Returns:
-
nodes_of_dim(Int d) The indices of nodes in the
HASSE_DIAGRAMcorresponding to faces of dimension d in the underlying object- Parameters:
Intd: dimension- Returns:
-
nodes_of_dim_range(Int d1, Int d2) The indices of nodes in the
HASSE_DIAGRAMcorresponding to faces with dimension in the range (d1,d2) in the underlying object
-
-
INTERIOR_RIDGE_SIMPLICES The (d-1)-dimensional simplices in the interior.
- Type:
-
MAX_BOUNDARY_SIMPLICES The boundary (d-1)-dimensional simplices of a cone of combinatorial dimension d
- Type:
-
MAX_INTERIOR_SIMPLICES The interior d-dimensional simplices of a cone of combinatorial dimension d
- Type:
-
N_EDGES The number of edges of the
GRAPH- Type:
-
N_FACETS The number of
FACETS.- Type:
-
N_RAYS The number of
RAYS- Type:
-
N_RAY_FACET_INC Number of pairs of incident vertices and facets.
- Type:
-
N_RIDGES The number of ridges (faces of codimension 2) equals the number of edges of the
DUAL_GRAPH- Type:
-
RAYS_IN_FACETS Ray-facet incidence matrix, with rows corresponding to facets and columns to rays. Rays and facets are numbered from 0 to
N_RAYS-1 rsp.N_FACETS-1, according to their order inRAYSrsp.FACETS.- Type:
-
RAYS_IN_RIDGES Ray-ridge incidence matrix, with rows corresponding to ridges and columns to rays. Rays and ridges are numbered from 0 to
N_RAYS-1 rsp.N_RIDGES-1, according to their order inRAYSrsp.RIDGES.- Type:
-
RAY_SIZES Number of incident facets for each ray.
- Type:
-
SELF_DUAL True if the cone is self-dual.
- Type:
-
SIMPLE True if the facets of the cone are simple. Dual to
SIMPLICIAL.- Type:
-
SIMPLICIAL True if the facets of the cone are simplicial.
- Type:
-
SIMPLICIAL_CONE True if the cone is simplicial.
- Type:
Geometry
These properties capture geometric information of the object. Geometric properties depend on geometric information of the object, like, e.g., vertices or facets.
-
CONE_AMBIENT_DIM The dimension of the space in which the cone lives.
- Type:
-
CONE_DIM Dimension of the linear span of the cone = dimension of the cone. If the cone is given purely combinatorially, this is the dimension of a minimal embedding space deduced from the combinatorial structure.
- Type:
-
EPSILON Threshold for zero test for scalar products (e.g. vertex * facet normal)
- Type:
-
FACETS Facets of the cone, encoded as inequalities. All vectors in this section must be non-zero. Dual to
RAYS. This section is empty if and only if the cone is trivial (e.g. if it encodes an empty polytope). Notice that a polytope which is a single point defines a one-dimensional cone, the face at infinity is a facet. The propertyFACETSappears only in conjunction with the propertyLINEAR_SPAN, orAFFINE_HULL, respectively. The specification of the propertyFACETSrequires the specification ofLINEAR_SPAN, orAFFINE_HULL, respectively, and vice versa.- Type:
Matrix<Scalar,NonSymmetric>
-
FACETS_THRU_INPUT_RAYS Transposed to
INPUT_RAYS_IN_FACETS. Notice that this is a temporary property; it will not be stored in any file.- Type:
-
FULL_DIM CONE_AMBIENT_DIMandCONE_DIMcoincide. Notice that this makes sense also for the derived Polytope class.- Type:
-
INEQUALITIES_THRU_RAYS transposed
RAYS_IN_INEQUALITIESNotice that this is a temporary property; it will not be stored in any file.- Type:
-
INPUT_RAYS_IN_FACETS Input ray-facet incidence matrix, with rows corresponding to facet and columns to input rays. Input_rays and facets are numbered from 0 to
N_INPUT_RAYS-1 rsp.N_FACETS-1, according to their order inINPUT_RAYSrsp.FACETS.- Type:
-
LINEALITY_DIM Dimension of the
LINEALITY_SPACE(>0 in the non-POINTED case)- Type:
-
LINEALITY_SPACE Basis of the linear subspace orthogonal to all
INEQUALITIESandEQUATIONSAll vectors in this section must be non-zero. The propertyLINEALITY_SPACEappears only in conjunction with the propertyRAYS, orVERTICES, respectively. The specification of the propertyRAYSorVERTICESrequires the specification ofLINEALITY_SPACE, and vice versa.- Type:
Matrix<Scalar,NonSymmetric>
-
LINEAR_SPAN Dual basis of the linear span of the cone. All vectors in this section must be non-zero. The property
LINEAR_SPANappears only in conjunction with the propertyFACETS. The specification of the propertyFACETSrequires the specification ofLINEAR_SPAN, orAFFINE_HULL, respectively, and vice versa.- Type:
Matrix<Scalar,NonSymmetric>
-
N_EQUATIONS The number of
EQUATIONS.- Type:
-
N_INPUT_LINEALITY The number of
INPUT_LINEALITY.- Type:
-
N_INPUT_RAYS The number of
INPUT_RAYS.- Type:
-
ONE_RAY A ray of a pointed cone.
- Type:
Vector<Scalar>
-
POINTED True if the cone does not contain a non-trivial linear subspace.
- Type:
-
POSITIVE True if all
RAYSof the cone have non-negative coordinates, that is, if the pointed part of the cone lies entirely in the positive orthant.- Type:
-
RAYS Rays of the cone. No redundancies are allowed. All vectors in this section must be non-zero. The property
RAYSappears only in conjunction with the propertyLINEALITY_SPACE. The specification of the propertyRAYSrequires the specification ofLINEALITY_SPACE, and vice versa.- Type:
Matrix<Scalar,NonSymmetric>
-
RAYS_IN_INEQUALITIES Ray-inequality incidence matrix, with rows corresponding to facets and columns to rays. Rays and inequalities are numbered from 0 to
N_RAYS-1 rsp. number ofINEQUALITIES-1, according to their order inRAYSrsp.INEQUALITIES.- Type:
-
RAY_SEPARATORS The i-th row is the normal vector of a hyperplane separating the i-th vertex from the others. This property is a by-product of redundant point elimination algorithm.
- Type:
Matrix<Scalar,NonSymmetric>
-
REL_INT_POINT A point in the relative interior of the cone.
- Type:
Vector<Scalar>
-
TRIVIAL True if the only valid point in the cone is the unique non-sensical point (0,…,0)
- Type:
Lattice points in cones
These properties capture information that depends on the lattice structure of the cone. polymake always works with the integer lattice.
-
DEGREE_ONE_GENERATORS Elements of the
HILBERT_BASISfor the cone of degree 1 with respect to theMONOID_GRADING.- Type:
-
GORENSTEIN_CONE A cone is Gorenstein if it is Q-Gorenstein with index one
- Type:
-
HILBERT_BASIS_GENERATORS Generators for the
HILBERT_BASISof a posiibly non-pointed cone the first matrix is a Hilbert basis of a pointed part of the cone the second matrix is a lattice basis of the lineality space note: the pointed part used in this property need not be the same as the one described byRAYSorINPUT_RAYSit will be if the cone is pointed (the polytope is bounded)- Type:
- depends on extension:
-
HILBERT_SERIES Hilbert series of the monoid, given by the intersection of the cone with the lattice Z^d with respect to the
MONOID_GRADING- Type:
- depends on extension:
-
HOMOGENEOUS True if the primitive generators of the rays lie on an affine hyperplane in the span of the rays.
- Type:
-
H_STAR_VECTOR The coefficients of the Hilbert polynomial, the h^*-polynomial for lattice polytopes, with respect to the
MONOID_GRADINGstarting at the constant coefficient. For lattice polytopes the length of this vector isCONE_DIM. In general the length is one less than the degree of the denominator of theHILBERT_SERIES.- Type:
- depends on extension:
-
MONOID_GRADING A grading for the monoid given by the intersection of the cone with the lattice Z^d, should be positive for all generators. If this property is not specified by the user there are two defaults: For rational polytopes the affine hyperplane defined by (1,0,\ldots,0) will be used. For
HOMOGENEOUScones the affine hyperplane containing the primitive generators will be used.- Type:
-
N_HILBERT_BASIS The number of elements of the
HILBERT_BASIS.- Type:
-
Q_GORENSTEIN_CONE A cone is Q-Gorenstein if all primitive generators of the cone lie in an affine hyperplane spanned by a lattice functional in the dual cone (but not in the lineality space of the dual cone).
- Type:
-
Q_GORENSTEIN_CONE_INDEX If a cone is Q-Gorenstein, then its index is the common lattice height of the primitive generators with respect to the origin. Otherwise Q_GORENSTEIN_CONE_INDEX is undefined.
- Type:
-
SMOOTH_CONE A cone is smooth if the primitive generators are part of a lattice basis.
- Type:
Symmetry
These properties capture information of the object that is concerned with the action of permutation groups.
-
GROUP - Type:
- Methods of GROUP:
-
REPRESENTATIVE_INEQUALITIES() explicit representatives of equivalence classes of INEQUALITIES under a group action
- Returns:
-
REPRESENTATIVE_INPUT_RAYS() explicit representatives of equivalence classes of
INPUT_RAYSunder a group action- Returns:
-
- Properties of GROUP:
-
BITSET_ACTION - Type:
-
MATRIX_ACTION - Type:
MatrixActionOnVectors<Scalar>- Properties of MATRIX_ACTION:
-
RAYS_ORBITS Alias for property
VECTORS_ORBITS.- Type:
-
-
REPRESENTATIVE_BOUNDARY_RIDGE_SIMPLICES One representative for each orbit of boundary ridge simplices
- Type:
-
REPRESENTATIVE_FACETS - Type:
Matrix<Scalar,NonSymmetric>
-
REPRESENTATIVE_INTERIOR_RIDGE_SIMPLICES One representative for each orbit of interior ridge simplices
- Type:
-
REPRESENTATIVE_MAX_BOUNDARY_SIMPLICES One representative for each orbit of maximal-dimensional boundary simplices
- Type:
-
REPRESENTATIVE_MAX_INTERIOR_SIMPLICES One representative for each orbit of maximal-dimensional interior simplices
- Type:
-
REPRESENTATIVE_RAYS - Type:
Matrix<Scalar,NonSymmetric>
-
Triangulation and volume
These properties collect information about triangulations of the object and properties usually computed from such, as the volume.
-
TRIANGULATION - Type:
GeometricSimplicialComplex<Scalar>- Properties of TRIANGULATION:
-
BOUNDARY - derived from:
- Type:
- Properties of BOUNDARY:
-
FACET_TRIANGULATIONS For each facet the set of simplex indices of
BOUNDARYthat triangulate it.- Type:
-
-
REFINED_SPLITS The splits that are coarsenings of the current
TRIANGULATION. If the triangulation is regular these form the unique split decomposition of the corresponding weight function.- Type:
-
WEIGHTS Weight vector to construct a regular
TRIANGULATION. Must be generic.- Type:
Vector<Scalar>
-
-
TRIANGULATION_INT Conceptually, similar to
TRIANGULATION, but usingINPUT_RAYS. However, here we use a small object type. The main reason for the existence of this property (in this form) is the beneath_beyond algorithm, which automatically produces this data as a by-product of the conversion fromINPUT_RAYStoFACETS. And that data is too valuable to throw away. Use big objects of typeVectorConfigurationif you want to work with triangulations using redundant points.- Type:
Visualization
These properties are for visualization.
-
COORDINATE_LABELS Unique names assigned to the coordinate directions, analogous to
RAY_LABELS. For Polytopes this should contain “inhomog_var” for the homogenization coordinate and this will be added automatically if necessary andCONE_AMBIENT_DIMcan be computed.- Type:
-
FACET_LABELS Unique names assigned to the
FACETS, analogous toRAY_LABELS.- Type:
-
FTR_CYCLIC_NORMAL Reordered transposed
RAYS_IN_FACETS. Dual toRIF_CYCLIC_NORMAL.- Type:
-
INEQUALITY_LABELS Unique names assigned to the
INEQUALITIES, analogous toRAY_LABELS.- Type:
-
INPUT_RAY_LABELS Unique names assigned to the
INPUT_RAYS, analogous toRAY_LABELS.- Type:
-
NEIGHBOR_FACETS_CYCLIC_NORMAL Reordered
DUAL_GRAPHfor 3d-cones. The neighbor facets are listed in the order corresponding toRIF_CYCLIC_NORMAL, so that the first two vertices in RIF_CYCLIC_NORMAL make up the ridge to the first neighbor facet and so on.- Type:
-
NEIGHBOR_RAYS_CYCLIC_NORMAL Reordered
GRAPH. Dual toNEIGHBOR_FACETS_CYCLIC_NORMAL.- Type:
-
RAY_LABELS Unique names assigned to the
RAYS. If specified, they are shown by visualization tools instead of ray indices. For a cone built from scratch, you should create this property by yourself, either manually in a text editor, or with a client program. If you build a cone with a construction client taking some other input cone(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.- Type:
-
RIF_CYCLIC_NORMAL Reordered
RAYS_IN_FACETSfor 2d and 3d-cones. Rays are listed in the order of their appearance when traversing the facet border counterclockwise seen from outside of the origin.- Type:
Methods
Backward compatibility
These methods are provided for backward compatibility with older versions of polymake only. They should not be used in new code.
-
DIAMETER() The diameter of the
GRAPHof the cone- Returns:
-
DUAL_DIAMETER() The diameter of the
DUAL_GRAPH- Returns:
-
DUAL_TRIANGLE_FREE() True if the
DUAL_GRAPHcontains no triangle- Returns:
-
TRIANGLE_FREE() True if the
GRAPHcontains no triangle- Returns:
Combinatorics
These methods capture combinatorial information of the object. Combinatorial properties only depend on combinatorial data of the object like, e.g., the face lattice.
-
CONNECTIVITY() Connectivity of the
GRAPHthis is the minimum number of nodes that have to be removed from theGRAPHto make it disconnected- Returns:
-
DUAL_CONNECTIVITY() Connectivity of the
DUAL_GRAPHthis is the minimum number of nodes that have to be removed from theDUAL_GRAPHto make it disconnected- Returns:
-
DUAL_EVEN() True if the
DUAL_GRAPHis bipartite- Returns:
-
EVEN() True if the
GRAPHis bipartite- Returns:
-
FACET_DEGREES() Facet degrees of the polytope. The degree of a facet is the number of adjacent facets.
- Returns:
-
N_FLAGS(Int type …) Determine the number of flags of a given type. type must belong to {0,…,
COMBINATORIAL_DIM-1}. Example: “N_FLAGS(0,3,4)” determines the entry f034 of the flag vector.- Parameters:
Inttype …: flag type- Returns:
-
VERTEX_DEGREES() Ray degrees of the cone
- Returns:
-
faces_of_dim(Cone c) Output the faces of a given dimension
- Parameters:
Conec: the input cone- Returns:
Geometry
These methods capture geometric information of the object. Geometric properties depend on geometric information of the object, like, e.g., vertices or facets.
-
AMBIENT_DIM() returns the dimension of the ambient space of the cone
- Returns:
-
DIM() returns the geometric dimension of the cone (including the lineality space) for the dimension of the pointed part ask for
COMBINATORIAL_DIM- Returns:
-
contains(Vector<Scalar> v) checks whether a given point is contained in a cone
- Parameters:
Vector<Scalar>v: point- Returns:
-
contains_in_interior(Vector<Scalar> v) checks whether a given point is contained in the strict interior of a cone
- Parameters:
Vector<Scalar>v: point- Returns:
Lattice points in cones
These methods capture information that depends on the lattice structure of the cone. polymake always works with the integer lattice.
-
HILBERT_BASIS() for a cone this method returns a Hilbert basis of the cone for a polytope this method returns a Hilbert basis of the homogenization cone of the polytope note: if the cone is not pointed (the polytope is not bounded) then the returned basis is not unique and usually not minimal
- Returns:
Topology
The following methods compute topological invariants.
-
DUAL_GRAPH_SIGNATURE() Difference of the black and white nodes if the
DUAL_GRAPHisBIPARTITE. Otherwise -1.- Returns:
-
GRAPH_SIGNATURE() - Returns:
Visualization
These methods are for visualization.
-
VISUAL() Visualizes the cone, intersected with the unit ball.
- Options:
- option list
Visual::Polygons::decorations - option list
geometric_options_linear - Returns: