This page summarizes properties and methods defined for lattice polytopes in polymake. For an introductory example see here.
Up to release 2.14, a lattice polytope in polymake used to be a subclass of a rational polytope, and all basic properties were derived from that. Starting with release 2.15 (or 3.0, not decided yet), there is no distinct type LatticePolytope anymore. A lattice polytope is an instance of rational polytope having the property LATTICE=1. All properties and methods described below have not changed.
As facet inequalities are standardized automatically, they usually do not appear as integer vectors. polymake
provides the primitive(Vector)
to transform a rational or integral vector into an integral vector such that the gcd of all entries is 1 (as a return vector, the input remains unchanged). primitive(Matrix)
applies this function to all rows of the matrix.
Name | Description |
---|---|
LATTICE | The polytope has integer vertices |
LATTICE_POINTS | List of lattice points in the polytope |
N_LATTICE_POINTS | Number of lattice points in the polytope |
INTERIOR_LATTICE_POINTS | List of lattice points in the interior of the polytope |
N_INTERIOR_LATTICE_POINTS | Number of lattice points in the interior of the polytope |
BOUNDARY_LATTICE_POINTS | List of lattice points on the boundary of the polytope |
N_BOUNDARY_LATTICE_POINTS | Number of lattice points on the boundary of the polytope |
HILBERT_BASIS | The Hilbert Basis of the cone spanned by P x {1} |
N_HILBERT_BASIS | Number of elements of the Hilbert Basis |
MINKOWSKI_SUMMAND_CONE | the cone of all Minkowski summands of P . This has connected user_methods MINKOWSKI_SUMMAND_COEFF and MINKOWSKI_SUMMAND_POINT . The first returns the polytope correspondong to a point in the cone given by coefficients in the rays, the second for a point given in the coordiantes of the ambient space. |
Name | Description |
---|---|
REFLEXIVE | The polytope and it's dual have integral vertices |
GORENSTEIN | A dilation of the polytope is reflexive up to translation |
GORENSTEIN_INDEX | If P is Gorenstein, then this is the integer k such that the dilation k*P is reflexive |
GORENSTEIN_VECTOR | If P is Gorenstein, then this is the unique interior lattice point in k*P |
CANONICAL | There is exactly one interior lattice point |
TERMINAL | There is exactly one interior lattice point and all other lattice points are vertices |
LATTICE_EMPTY | The polytope contains no lattice points other than the vertices |
LATTICE_VOLUME | The normalized volume of the polytope VOLUME * dim! |
LATTICE_DEGREE | The degree of the h*-polynomial or Ehrhart polynomial |
LATTICE_CODEGREE | dim+1-degree or the smallest integer k such that k*P has an interior lattice point |
EHRHART_POLYNOMIAL_COEFF | The coefficients of the Ehrhart polynomial starting at the constant coefficient |
H_STAR_VECTOR | The coefficients of the h*-polynomial starting at the constant coefficient |
NORMAL | The cone spanned by P x {1} is generated in height 1 |
FACET_WIDTHS | The integral width of the polytope with respect to each facet normal |
FACET_WIDTH | The maximal integral width of the polytope with respect to the facet normals |
FACET_VERTEX_LATTICE_DISTANCES | The matrix of lattice distances between facets and vertices, rows: facets, columns: vertices |
COMPRESSED | FACET_WIDTH is 1 |
SMOOTH | The associated projective variety is smooth; the determinant of the edge directions is +/-1 at every vertex |
VERY_AMPLE | The Hilbert Basis of the cone spanned by the edge-directions of any vertex lies inside the polytope |
GRAPH.LATTICE_EDGE_LENGTHS | the lattice lengths of the edges of the graph |
Name | Description |
---|---|
N_LATTICE_POINTS_IN_DILATION(n) | The number of lattice points in the n-th dilation of the polytope |
FACET_POINT_LATTICE_DISTANCES(Vector<int>) | The lattice distance of an integral vector from the facets of the polytope |
Name | Description |
---|---|
ambient_lattice_normalization(Polytope) | transforms a LatticePolytope into a full dimensional polytope in the lattice given by the intersection of Zn and the affine hull |
vertex_lattice_normalization(Polytope) | transforms a LatticePolytope into a full dimensional polytope in the lattice spanned by the vertices of the polytope |
induced_lattice(Polytope) | returns a basis of the lattice spanned by the vertices of the polytope |
lattice_pyramid(Polytope) | returns a pyramid over the polytope where the apex sits at a lattice point at height one above the base |
lattice_bypyramid(Polytope) | returns a lattice bipyramid over the polytope with apices at height one above the base (this does not work for a simplex without interior lattice points) |
transportation_polytope(row_margin,column_margin) | returns the transportation polytope defined by the given row and column margins |
lattice_isomorphic_smooth_polytopes(Polytope,Polytope) | checks for two smooth polytopes whether they are lattice equivalent in the ambient lattice |
Name | Description |
---|---|
HILBERT_BASIS | The Hilbert Basis of the cone C |
N_HILBERT_BASIS | Number of elements of the Hilbert Basis |
SMOOTH_CONE | true, if the primitive generators of the cone are a basis of Z^n |
Q_GORENSTEIN_CONE | true, 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 |
Q_GORENSTEIN_INDEX | the height of the primitive generators, if the cone is Q_GORENSTEIN |
GORENSTEIN | true, if Q_GORENSTEIN with index 1 |
HOMOGENEOUS | true if the primitive generators of the rays lie on a hyperplane |
Name | Description |
---|---|
SMOOTH_FAN | true, if all cones are smooth |
Q_GORENSTEIN_CONE | true, if all maximal cones are Q_GORENSTEIN |
Q_GORENSTEIN_INDEX | the lcm of the indices of all maixmal cones |
GORENSTEIN | true, if Q_GORENSTEIN with index 1 |