In geometry, a simplex (plural simplexes or simplices) or n-simplex is an n-dimensional analogue of a triangle. Specifically, a simplex is the convex hull of a set of (n + 1) affinely independent points in some Euclidean space of dimension n or higher (i.e., a set of points such that no m-plane contains more than (m + 1) of them; such points are said to be in general position).
For example, a 0-simplex is a point, a 1-simplex is a line segment, a 2-simplex is a triangle, a 3-simplex is a tetrahedron, and a 4-simplex is a pentachoron (in each case with interior).
A regular simplex is a simplex that is also a regular polytope. A regular n-simplex may be constructed from a regular (n − 1)-simplex by connecting a new vertex to all original vertices by the common edge length.
Contents |
The convex hull of any nonempty subset of the n+1 points that define an n-simplex is called a face of the simplex. Faces are simplices themselves. In particular, the convex hull of a subset of size m+1 (of the n+1 defining points) is an m-simplex, called an m-face of the n-simplex. The 0-faces (i.e., the defining points themselves as sets of size 1) are called the vertices (singular: vertex), the 1-faces are called the edges, the (n − 1)-faces are called the facets, and the sole n-face is the whole n-simplex itself. In general, the number of m-faces is equal to the binomial coefficient C(n + 1, m + 1). Consequently, the number of m-faces of an n-simplex may be found in column (m + 1) of row (n + 1) of Pascal's triangle. Face and facet can have different meanings when describing types of simplices in a simplicial complex. See Simplicial_complex#Definitions
The regular simplex family is the first of three regular polytope families, labeled by Coxeter as αn, the other two being the cross-polytope family, labeled as βn, and the hypercubes, labeled as γn. A fourth family, the infinite tessellation of hypercubes he labeled as δn.
Δn | αn | n-polytope | Graph | Name | Schläfli symbol Coxeter-Dynkin |
Vertices 0-faces |
Edges 1-faces |
Faces 2-faces |
Cells 3-faces |
4-faces | 5-faces | 6-faces | 7-faces | 8-faces | 9-faces |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Δ0 | α0 | 0-polytope | ![]() |
Point (0-simplex) |
- | 1 | |||||||||
Δ1 | α1 | 1-polytope | ![]() |
Line segment (1-simplex) |
{}![]() |
2 | 1 | ||||||||
Δ2 | α2 | 2-polytope | ![]() |
Triangle (2-simplex) |
{3}![]() ![]() ![]() |
3 | 3 | 1 | |||||||
Δ3 | α3 | 3-polytope | ![]() |
Tetrahedron (3-simplex) |
{3,3}![]() ![]() ![]() ![]() ![]() |
4 | 6 | 4 | 1 | ||||||
Δ4 | α4 | 4-polytope | ![]() |
Pentachoron (4-simplex) |
{3,3,3}![]() ![]() ![]() ![]() ![]() ![]() ![]() |
5 | 10 | 10 | 5 | 1 | |||||
Δ5 | α5 | 5-polytope | ![]() |
Hexateron Hexa-5-tope (5-simplex) |
{3,3,3,3}![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
6 | 15 | 20 | 15 | 6 | 1 | ||||
Δ6 | α6 | 6-polytope | ![]() |
Heptapeton Hepta-6-tope (6-simplex) |
{3,3,3,3,3}![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
7 | 21 | 35 | 35 | 21 | 7 | 1 | |||
Δ7 | α7 | 7-polytope | ![]() |
Octaexon Octa-7-tope (7-simplex) |
{3,3,3,3,3,3}![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
8 | 28 | 56 | 70 | 56 | 28 | 8 | 1 | ||
Δ8 | α8 | 8-polytope | ![]() |
Enneazetton Ennea-8-tope (8-simplex) |
{3,3,3,3,3,3,3}![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
9 | 36 | 84 | 126 | 126 | 84 | 36 | 9 | 1 | |
Δ9 | α9 | 9-polytope | ![]() |
Decayotton Deca-9-tope (9-simplex) |
{3,3,3,3,3,3,3,3}![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
10 | 45 | 120 | 210 | 252 | 210 | 120 | 45 | 10 | 1 |
Δ10 | α10 | 10-polytope | ![]() |
Hendeca-10-tope (10-simplex) |
{3,3,3,3,3,3,3,3,3}![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
11 | 55 | 165 | 330 | 462 | 462 | 330 | 165 | 55 | 11 |
In some conventions, the empty set is defined to be a (−1)-simplex. The definition of the simplex above still makes sense if n = −1. This convention is more common in applications to algebraic topology (such as simplicial homology) than to the study of polytopes.
The standard n-simplex (or unit n-simplex) is the subset of Rn+1 given by
The simplex Δn live in the affine hyperplane obtained by removing the restriction ti ≥ 0 in the above definition. The standard simplex is clearly regular.
The vertices of the standard n-simplex are the points
There is a canonical map from the standard n-simplex to an arbitrary n-simplex with vertices (v0, …, vn) given by
The coefficients ti are called the barycentric coordinates of a point in the n-simplex. Such a general simplex is often called an affine n-simplex, to emphasize that the canonical map is an affine transformation. It is also sometimes called an oriented affine n-simplex to emphasize that the canonical map may be orientation preserving or reversing.
The oriented volume of an n-simplex in n-dimensional space with vertices (v0, ..., vn) is
where each column of the n × n determinant is the difference between the vectors representing two vertices. Without the 1/n! it is the formula for the volume of an n-parallelepiped. One way to understand the 1/n! factor is as follows. If the coordinates of a point in a unit n-box are sorted, together with 0 and 1, and successive differences are taken, then since the results add to one, the result is a point in an n simplex spanned by the origin and the closest n vertices of the box. The taking of differences was an orthogonal (volume-preserving) transformation, but sorting compressed the space by a factor of n!.
The volume under a standard n-simplex (i.e. between the origin and the simplex in Rn+1) is
The volume of a regular n-simplex with unit side length is
as can be seen by multiplying the previous formula by xn+1, to get the volume under the n-simplex as a function of its vertex distance x from the origin, differentiating with respect to x, at (where the n-simplex side length is 1), and normalizing by the length
of the increment,
, along the normal vector.
Orthogonal corner means here, that there is a vertex at which all adjacent hyperfaces are pairwise orthogonal. Such simplexes are generalizations of right angle triangles and for them there exists an n-dimensional version of the Pythagorean theorem:
The sum of the squared n-dimensional volumes of the hyperfaces adjacent to the orthogonal corner equals the squared n-dimensional volume of the hyperface opposite of the orthogonal corner.
where are hyperfaces being pairwise orthogonal to each other but not orthogonal to
, which is the hyperface opposite of the orthogonal corner.
For a 2-simplex the theorem is the Pythagorean theorem for triangles with a right angle and for a 3-simplex it is de Gua's theorem for a tetrahedron with a cube corner.
The Hasse diagram of the face lattice of an n-simplex is isomorphic to the graph of the (n+1)-hypercube's edges, with the hypercube's vertices mapping to each of the n-simplex's elements, including the entire simplex and the null polytope as the extreme points of the lattice (mapped to two opposite vertices on the hypercube). This fact may be used to efficiently enumerate the simplex's face lattice, since more general face lattice enumeration algorithms are more computationally expensive.
The n-simplex is also the vertex figure of the (n+1)-hypercube.
Topologically, an n-simplex is equivalent to an n-ball. Every n-simplex is an n-dimensional manifold with boundary.
In algebraic topology, simplices are used as building blocks to construct an interesting class of topological spaces called simplicial complexes. These spaces are built from simplices glued together in a combinatorial fashion. Simplicial complexes are used to define a certain kind of homology called simplicial homology.
A finite set of k-simplexes embedded in an open subset of Rn is called an affine k-chain. The simplexes in a chain need not be unique; they may occur with multiplicity. Rather than using standard set notation to denote an affine chain, it is instead the standard practice to use plus signs to separate each member in the set. If some of the simplexes have the opposite orientation, these are prefixed by a minus sign. If some of the simplexes occur in the set more than once, these are prefixed with an integer count. Thus, an affine chain takes the symbolic form of a sum with integer coefficients.
Note that each face of an n-simplex is an affine n-1-simplex, and thus the boundary of an n-simplex is an affine n-1-chain. Thus, if we denote one positively-oriented affine simplex as
with the denoting the vertices, then the boundary
of σ is the chain
More generally, a simplex (and a chain) can be embedded into a manifold by means of smooth, differentiable map . In this case, both the summation convention for denoting the set, and the boundary operation commute with the embedding. That is,
where the are the integers denoting orientation and multiplicity. For the boundary operator
, one has:
where φ is a chain. The boundary operation commutes with the mapping because, in the end, the chain is defined as a set and little more, and the set operation always commutes with the map operation (by definition of a map).
A continuous map to a topological space X is frequently referred to as a singular n-simplex.
(Also called Simplex Point Picking) There are at least two efficient ways to generate uniform random samples from the unit simplex.
The first method is based on the fact that sampling from the K-dimensional unit simplex is equivalent to sampling from a Dirichlet distribution with parameters α = (α1, ..., αK) all equal to one. The exact procedure would be as follows:
The second method to generate a random point on the unit simplex is based on the order statistics of the uniform distribution on the unit interval (see Devroye, p.568). The algorithm is as follows:
Sometimes, rather than picking a point on the simplex at random we need to perform a uniform random walk on the simplex. Such random walks are frequently required for Monte Carlo method computations such as Markov chain Monte Carlo over the simplex domain.
An efficient algorithm to do the walk can be derived from the fact that the normalized sum of K unit-exponential random variables is distributed uniformly over the simplex. We begin by defining a univariate function that "walks" a given sample over the positive real line such that the stationary distribution of its samples is the unit-exponential distribution. The function makes use of the Metropolis-Hastings algorithm to sample the new point given the old point. Such a function can be written as the following, where h is the relative step-size:
next_point <- function(x_old)
{
repeat {
x_new <- x_old * exp( Random_Normal(0,h) )
metropolis_ratio <- exp(-x_new) / exp(-x_old)
hastings_ratio <- ( x_new / x_old )
acceptance_probability <- min( 1 , metropolis_ratio * hastings_ratio )
if ( acceptance_probability > Random_Uniform(0,1) ) break
}
return(x_new)
}
Then to perform a random walk over the simplex:
The set of ti will be restricted to the simplex, and will walk ergodically over over the domain with a uniform stationary density. Note that it is important not to re-normalize the xi at each step; doing so will result in a non-uniform stationary distribution. Instead, think of the xi as "hidden" parameters, with the simplex coordinates given by the set of ti.