# Convex polytope

Convex polytopes play an important role both in various branches of mathematics and in applied areas, most notably in linear programming.

In the influential textbooks of Grünbaum^{[1]} and Ziegler^{[2]} on the subject, as well as in many other texts in discrete geometry, convex polytopes are often simply called "polytopes". Grünbaum points out that this is solely to avoid the endless repetition of the word "convex", and that the discussion should throughout be understood as applying only to the convex variety (p. 51).

A convex polytope may be defined in a number of ways, depending on what is more suitable for the problem at hand. Grünbaum's definition is in terms of a convex set of points in space. Other important definitions are: as the intersection of half-spaces (half-space representation) and as the convex hull of a set of points (vertex representation).

In his book *Convex Polytopes*, Grünbaum defines a convex polytope as a **compact convex set with a finite number of extreme points**:

This is equivalent to defining a bounded convex polytope as the convex hull of a finite set of points, where the finite set must contain the set of extreme points of the polytope. Such a definition is called a **vertex representation** (**V-representation** or **V-description**).^{[1]} For a compact convex polytope, the minimal V-description is unique and it is given by the set of the vertices of the polytope.^{[1]} A convex polytope is called an integral polytope if all of its vertices have integer coordinates.

A convex polytope may be defined as an intersection of a finite number of half-spaces. Such definition is called a **half-space representation** (**H-representation** or **H-description**).^{[1]} There exist infinitely many H-descriptions of a convex polytope. However, for a full-dimensional convex polytope, the minimal H-description is in fact unique and is given by the set of the facet-defining halfspaces.^{[1]}

An **open convex polytope** is defined in the same way, with strict inequalities used in the formulas instead of the non-strict ones.

The foregoing definition assumes that the polytope is full-dimensional. In this case, there is a *unique* minimal set of defining inequalities (up to multiplication by a positive number). Inequalities belonging to this unique minimal system are called **essential**. The set of points of a polytope which satisfy an essential inequality with equality is called a **facet**.

In general the intersection of arbitrary half-spaces need not be bounded. However if one wishes to have a definition equivalent to that as a convex hull, then bounding must be explicitly required.

The two representations together provide an efficient way to decide whether a given vector is included in a given convex polytope: to show that it is in the polytope, it is sufficient to present it as a convex combination of the polytope vertices (the V-description is used); to show that it is not in the polytope, it is sufficient to present a single defining inequality that it violates.^{[4]}^{:256}

A subtle point in the representation by vectors is that the number of vectors may be exponential in the dimension, so the proof that a vector is in the polytope might be exponentially long. Fortunately, Carathéodory's theorem guarantees that every vector in the polytope can be represented by at most *d*+1 defining vectors, where *d* is the dimension of the space.

For an unbounded polytope (sometimes called: polyhedron), the H-description is still valid, but the V-description should be extended. Theodore Motzkin (1936) proved that any unbounded polytope can be represented as a sum of a *bounded polytope* and a *convex polyhedral cone*.^{[5]} In other words, every vector in an unbounded polytope is a convex sum of its vertices (its "defining points"), plus a conical sum of the Euclidean vectors of its infinite edges (its "defining rays"). This is called the **finite basis theorem**.^{[3]}

Every (bounded) convex polytope is the image of a simplex, as every point is a convex combination of the (finitely many) vertices. However, polytopes are not in general isomorphic to simplices. This is in contrast to the case of vector spaces and linear combinations, every finite-dimensional vector space being not only an image of, but in fact isomorphic to, Euclidean space of some dimension (or analog over other fields).

A **face** of a convex polytope is any intersection of the polytope with a halfspace such that none of the interior points of the polytope lie on the boundary of the halfspace. Equivalently, a face is the set of points giving equality in some valid inequality of the polytope.^{[4]}^{:258}

If a polytope is *d*-dimensional, its facets are its (*d* − 1)-dimensional faces, its vertices are its 0-dimensional faces, its edges are its 1-dimensional faces, and its ridges are its (*d* − 2)-dimensional faces.

In general, an (*n* − *j*)-dimensional face satisfies equality in *j* specific rows of *A*. These rows form a **basis** of the face. Geometrically speaking, this means that the face is the set of points on the polytope that lie in the intersection of *j* of the polytope's bounding hyperplanes.

The faces of a convex polytope thus form an Eulerian lattice called its **face lattice**, where the partial ordering is by set containment of faces. The definition of a face given above allows both the polytope itself and the empty set to be considered as faces, ensuring that every pair of faces has a join and a meet in the face lattice. The whole polytope is the unique maximum element of the lattice, and the empty set, considered to be a (−1)-dimensional face (a **null polytope**) of every polytope, is the unique minimum element of the lattice.

Two polytopes are called **combinatorially isomorphic** if their face lattices are isomorphic.

The **polytope graph** (**polytopal graph**, **graph of the polytope**, **1-skeleton**) is the set of vertices and edges of the polytope only, ignoring higher-dimensional faces. For instance, a polyhedral graph is the polytope graph of a three-dimensional polytope. By a result of Whitney^{[6]} the face lattice of a three-dimensional polytope is determined by its graph. The same is true for simple polytopes of arbitrary dimension (Blind & Mani-Levitska 1987, proving a conjecture of Micha Perles).^{[7]} Kalai (1988)^{[8]} gives a simple proof based on unique sink orientations. Because these polytopes' face lattices are determined by their graphs, the problem of deciding whether two three-dimensional or simple convex polytopes are combinatorially isomorphic can be formulated equivalently as a special case of the graph isomorphism problem. However, it is also possible to translate these problems in the opposite direction, showing that polytope isomorphism testing is graph-isomorphism complete.^{[9]}

A convex polytope, like any compact convex subset of **R**^{n}, is homeomorphic to a closed ball.^{[10]} Let *m* denote the dimension of the polytope. If the polytope is full-dimensional, then *m* = *n*. The convex polytope therefore is an *m*-dimensional manifold with boundary, its Euler characteristic is 1, and its fundamental group is trivial. The boundary of the convex polytope is homeomorphic to an (*m* − 1)-sphere. The boundary's Euler characteristic is 0 for even *m* and 2 for odd *m*. The boundary may also be regarded as a tessellation of (*m* − 1)-dimensional spherical space — i.e. as a spherical tiling.

A convex polytope can be decomposed into a simplicial complex, or union of simplices, satisfying certain properties.

Given a convex *r*-dimensional polytope *P*, a subset of its vertices containing (*r*+1) affinely independent points defines an *r*-simplex. It is possible to form a collection of subsets such that the union of the corresponding simplices is equal to *P*, and the intersection of any two simplices is either empty or a lower-dimensional simplex. This simplicial decomposition is the basis of many methods for computing the volume of a convex polytope, since the volume of a simplex is easily given by a formula.^{[11]}

Different representations of a convex polytope have different utility, therefore the construction of one representation given another one is an important problem. The problem of the construction of a V-representation is known as the vertex enumeration problem and the problem of the construction of a H-representation is known as the **facet enumeration problem**. While the vertex set of a bounded convex polytope uniquely defines it, in various applications it is important to know more about the combinatorial structure of the polytope, i.e., about its face lattice. Various convex hull algorithms deal both with the facet enumeration and face lattice construction.

The task of computing the volume of a convex polytope has been studied in the field of computational geometry. The volume can be computed approximately, for instance, using the convex volume approximation technique, when having access to a membership oracle. As for exact computation, one obstacle is that, when given a representation of the convex polytope as an equation system of linear inequalities, the volume of the polytope may have a bit-length which is not polynomial in this representation.^{[14]}