documentation:master:tropical:polytope

Available versions of this document: latest release, 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

from application tropical

A tropical polytope is the tropical convex hull of finitely many points or the finite intersection of tropical halfspaces in a tropical projective space. Many combinatorial properties depend on POINTS. Note: VERTICES are used for POINTS if the tropical polytope is initialized by INEQUALITIES.

Type Parameters:

Addition: Either Min or Max. There is NO default for this, you have to choose!

Scalar: Rational by default. The underlying type of ordered group.

Example:

Constructing a tropical polygon from a fixed list of generators.

 > $P = new Polytope<Min>(POINTS=>[[0,1,0],[0,4,1],[0,3,3],[0,0,2]]); Example: Constructing the same tropical polygon from tropical linear inequalities.  >$A1 = new Matrix<TropicalNumber<Min>>([[0,-2,"inf"],["inf",-4,"inf"],["inf",-3,-1],["inf","inf",-3],[0,"inf","inf"]]);
> $A2 = new Matrix<TropicalNumber<Min>>([["inf","inf",-1],[0,"inf",-1],[0,"inf","inf"],[0,-1,"inf"],["inf",0,0]]); >$Q = new Polytope<Min>(INEQUALITIES=>[$A1,$A2]);
> print \$Q->VERTICES;
0 0 2
0 1 0
0 3 3
0 4 1
Permutations:
PointsPerm:

permuting the POINTS

VertexPerm:

permuting the VERTICES

These properties are for input only. They allow redundant information.

INEQUALITIES

Inequalities giving rise to the polytope; redundancies are allowed. They must be encoded as a pair of matrices. The pair (A,B) encodes the inequality Ax ~ Bx, where ~ is ⇐ for min and >= for max. All vectors in this section must be non-zero. Dual to POINTS. Input section only.

Type:
Pair<Matrix<TropicalNumber<Addition,Scalar>,NonSymmetric>,Matrix<TropicalNumber<Addition,Scalar>,NonSymmetric>>

These properties capture combinatorial information of the object. Combinatorial properties only depend on combinatorial data of the object like, e.g., the face lattice.

MAXIMAL_COVECTORS

The covectors of the maximal cells of the torus subdivision. Entries correspond to rows of MAXIMAL_COVECTOR_CELLS.

Type:
Array<IncidenceMatrix<NonSymmetric>>

MAXIMAL_COVECTOR_CELLS

These are the maximal cells of the covector decomposition of the tropical torus with respect to POINTS. Each row corresponds to a maximal cell, each column to an element of PSEUDOVERTICES.

Type:
IncidenceMatrix<NonSymmetric>

POLYTOPE_COVECTOR_DECOMPOSITION

This is a sublattice of TORUS_COVECTOR_DECOMPOSITION, containing only the cells that belong to the tropical span of POINTS.

Type:
CovectorLattice

POLYTOPE_MAXIMAL_COVECTORS

The covectors of the maximal cells of the polytope subdivision. Entries correspond to rows of POLYTOPE_MAXIMAL_COVECTOR_CELLS.

Type:
Array<IncidenceMatrix<NonSymmetric>>

POLYTOPE_MAXIMAL_COVECTOR_CELLS

This is a description of the tropical polytope as a polyhedral complex. Each row is a maximal cell of the covector subdivision of the tropical polytope. Indices refer to PSEUDOVERTICES.

Type:
IncidenceMatrix<NonSymmetric>

PSEUDOVERTEX_COARSE_COVECTORS

Coarse types of PSEUDOVERTICES relative to POINTS. Each row corresponds to a row of PSEUDOVERTICES and encodes at position i, how many POINTS contain that pseudovertex in the i-th sector.

Type:
Matrix<Int,NonSymmetric>

PSEUDOVERTEX_COVECTORS

Types of PSEUDOVERTICES relative to POINTS. Each type is encoded as an Incidence matrix, where rows correspond to coordinates and columns to POINTS. If the i-th row is a set S, that means that this pseudovertex is in the i-th sector of all points indexed by S. For bounded vertices, the type is computed as usual. For unbounded rays (i.e. starting with a 0), the type is computed as follows. Let g be a generator, with infinite entries at positions J and let the ray be e_J = sum_{j in J} +- e_j (the sign being the orientation of the addition). If J is contained in K, the ray is “contained” in all sectors of g. Otherwise, the ray is “contained” in the sectors indexed by g. NOTE: The latter is an artificial definition in the sense that it is not compatible with intersecting faces of the covector lattice. However, it is correct in the sense that faces spanned by a list of pseudovertices have as covector the intersection of the respective covectors.

Type:
Array<IncidenceMatrix<NonSymmetric>>

TORUS_COVECTOR_DECOMPOSITION

This is the face lattice of the polyhedral complex, whose vertices are PSEUDOVERTICES and whose cells are the cells of the covector decomposition. For each face in this lattice, we save the following information: 1) What PSEUDOVERTICES make up this face, i.e. a Set<Int> 2) What is the covector of this face, i.e. an IncidenceMatrix (whose rows correspond to coordinates and whose columns to POINTS). NOTE: This lattice does not contain any far faces of the polyhedral cells, as they do not have well-defined covectors.

Type:
CovectorLattice

These properties capture geometric information of the object. Geometric properties depend on geometric information of the object, like, e.g., vertices or facets.

DOME

This is the dome of the tropical hyperplane arrangement defined by the POINTS. I.e. we take as function the (tropical) product of the tropical linear polynomials defined in the following manner: For each point (p_0,…,p_d) we get the linear polynomial sum_{i=1}^d (1/p_i) * x_i, where sum is the DUAL tropical addition and * and / is regular addition and subtraction, respectively.

Type:
Polytope<Scalar>

ENVELOPE

Tropical polytopes have a natural description as the complex of certain faces of their envelopes. This envelope depends on the choice of the POINTS that generate the tropical polytope.

Type:
Polytope<Scalar>

FAR_PSEUDOVERTICES

Subset of the PSEUDOVERTICES which are not contained in the tropical projective torus.

Type:
Set<Int>

FEASIBLE

True if the polyhedron is not empty.

Type:
Bool

POINTS

Input points in tropical homogeneous coordinates. This is the fixed system of generators with respect to which many combinatorial properties are expressed.

Type:
Matrix<TropicalNumber<Addition,Scalar>,NonSymmetric>

PROJECTIVE_AMBIENT_DIM

Dimension of the tropical projective space which contains the tropical polytope.

Type:
Int

PSEUDOVERTICES

Pseudovertices are the vertices of the type decomposition of the tropical torus induced by POINTS. They are projections of the vertices of ENVELOPE. Note that each pseudovertex is given in tropical homogeneous coordinates with a leading 1 or 0, depending on whether it is a vertex or a ray.

Type:
Matrix<Scalar,NonSymmetric>

VALID_POINT

Some point belonging to the polyhedron.

Type:
Vector<TropicalNumber<Addition,Scalar>>

VERTICES

Vertices of the tropical convex hull, a submatrix of POINTS

Type:
Matrix<TropicalNumber<Addition,Scalar>,NonSymmetric>

VERTICES_IN_POINTS

Entries correspond to VERTICES. They describe for each vertex, what its row index in POINTS is.

Type:
Array<Int>

These methods capture geometric information of the object. Geometric properties depend on geometric information of the object, like, e.g., vertices or facets.

polytope_subdivision_as_complex(Int chart)

This returns the subdivision of the polytope induced by POINTS as a polyhedral complex on a chosen affine chart.

Parameters:

Int chart: Which coordinate to normalize to 0. This is 0 by default.

Returns:
PolyhedralComplex

torus_subdivision_as_complex(Int chart)

This returns the subdivision of the tropical torus induced by POINTS as a polyhedral complex on a chosen affine chart

Parameters:

Int chart: Which coordinate to normalize to 0. This is 0 by default.

Returns:
PolyhedralComplex

These methods are for visualization.

VISUAL()

Visualize the subdivision of the polytope induced by POINTS.

Returns:
Visual::PolyhedralFan

VISUAL_HYPERPLANE_ARRANGEMENT()

Visualize the arrangement of hyperplanes with apices in the POINTS of the tropical polytope.

Options:
option list Visual::Polygons::decorations
Returns:
Visual::PolyhedralFan

VISUAL_SUBDIVISION()

Visualize the subdivision of the torus induced by POINTS.

Returns:
Visual::PolyhedralFan

• documentation/master/tropical/polytope.txt