# Steinitz's theorem

In polyhedral combinatorics, a branch of mathematics, Steinitz's theorem is a characterization of the undirected graphs formed by the edges and vertices of three-dimensional convex polyhedra: they are exactly the 3-vertex-connected planar graphs. That is, every convex polyhedron forms a 3-connected planar graph, and every 3-connected planar graph can be represented as the graph of a convex polyhedron. For this reason, the 3-connected planar graphs are also known as polyhedral graphs.
This result provides a classification theorem for the three-dimensional convex polyhedra, something that is not known in higher dimensions. It provides a complete and purely combinatorial description of the graphs of these polyhedra, allowing other results on them, such as Eberhard's theorem on the realization of polyhedra with given types of faces, to be proven more easily, without reference to the geometry of these shapes. Additionally, it has been applied in graph drawing, as a way to construct three-dimensional visualizations of abstract graphs. Branko Grünbaum has called this theorem "the most important and deepest known result on 3-polytopes."
The theorem appears in a 1922 publication of Ernst Steinitz, after whom it is named. It can be proven by mathematical induction (as Steinitz did), by finding the minimum-energy state of a two-dimensional spring system and lifting the result into three dimensions, or by using the circle packing theorem. Several extensions of the theorem are known, in which the polyhedron that realizes a given graph has additional constraints; for instance, every polyhedral graph is the graph of a convex polyhedron with integer coordinates, or the graph of a convex polyhedron all of whose edges are tangent to a common midsphere.

## Definitions and statement of the theorem

An undirected graph is a system of vertices and edges, each edge connecting two of the vertices. As is common in graph theory, for the purposes of Steinitz's theorem these graphs are restricted to being finite (the vertices and edges are finite sets) and simple (no two edges connect the same two vertices, and no edge connects a vertex to itself). From any polyhedron one can form a graph, by letting the vertices of the graph correspond to the vertices of the polyhedron and by connecting any two graph vertices by an edge whenever the corresponding two polyhedron vertices are the endpoints of an edge of the polyhedron. This graph is known as the skeleton of the polyhedron.
A graph is planar if it can be drawn with its vertices as points in the Euclidean plane, and its edges as curves that connect these points, such that no two edge curves cross each other and such that the point representing a vertex lies on the curve representing an edge only when the vertex is an endpoint of the edge. By Fáry's theorem, every planar drawing can be straightened so that the curves representing the edges are line segments. A graph is 3-connected if it has more than three vertices and, after the removal of any two of its vertices, any other pair of vertices remain connected by a path. Steinitz's theorem states that these two conditions are both necessary and sufficient to characterize the skeletons of three-dimensional convex polyhedra: a given graph $G$ is the graph of a convex three-dimensional polyhedron, if and only if $G$ is planar and 3-vertex-connected.

## Proofs

One direction of Steinitz's theorem (the easier direction to prove) states that the graph of every convex polyhedron is planar and 3-connected. As shown in the illustration, planarity can be shown by using a Schlegel diagram: if one places a light source near one face of the polyhedron, and a plane on the other side, the shadows of the polyhedron edges will form a planar graph, embedded in such a way that the edges are straight line segments. The 3-connectivity of a polyhedral graph is a special case of Balinski's theorem that the graph of any $k$-dimensional convex polytope is $k$-connected. The connectivity of the graph of a polytope, after removing any $k-1$ of its vertices, can be proven by choosing one more vertex $v$, finding a linear function that is zero on the resulting set of $k$ vertices, and following the paths generated by the simplex method to connect every vertex to one of two extreme vertices of the linear function, with the chosen vertex $v$ connected to both.
The other, more difficult, direction of Steinitz's theorem states that every planar 3-connected graph is the graph of a convex polyhedron. There are three standard approaches for this part: proofs by induction, lifting two-dimensional Tutte embeddings into three dimensions using the Maxwell–Cremona correspondence, and methods using the circle packing theorem to generate a canonical polyhedron.

### Induction

Although Steinitz's original proof was not expressed in terms of graph theory, it can be rewritten in those terms, and involves finding a sequence of ΔY- and YΔ-transformations that reduce any 3-connected planar graph to $K_{4}$, the graph of the tetrahedron. A YΔ-transformation removes a degree-three vertex from a graph, adding edges between all of its former neighbors if those edges did not already exist; the reverse transformation, a ΔY-transformation, removes the edges of a triangle from a graph and replaces them by a new degree-three vertex adjacent to the same three vertices. Once such a sequence is found, it can be reversed and converted into geometric operations that build up the desired polyhedron step by step starting from a tetrahedron. Each YΔ-transformation in the reversed sequence can be performed geometrically by slicing off a degree-three vertex from a polyhedron. A ΔY-transformation in the reversed sequence can be performed geometrically by removing a triangular face from a polyhedron and extending its neighboring faces until the point where they meet, but only when that triple intersection point of the three neighboring faces is on the far side of the removed face from the polyhedron. When the triple intersection point is not on the far side of this face, a projective transformation of the polyhedron suffices to move it to the correct side. Therefore, by induction on the number of ΔY- and YΔ-transformations needed to reduce a given graph to $K_{4}$, every polyhedral graph can be realized as a polyhedron.
A later work by Epifanov strengthened Steinitz's proof that every polyhedral graph can be reduced to $K_{4}$ by ΔY- and YΔ-transformations. Epifanov proved that if two vertices are specified in a planar graph, then the graph can be reduced to a single edge between those terminals by combining ΔY- and YΔ-transformations with series–parallel reductions. Epifanov's proof was complicated and non-constructive, but it was simplified by Truemper using methods based on graph minors. Truemper observed that every grid graph is reducible by ΔY- and YΔ-transformations in this way, that this reducibility is preserved by graph minors, and that every planar graph is a minor of a grid graph. This idea can be used to replace Steinitz's lemma that a reduction sequence exists. After this replacement, the rest of the proof can be carried out using induction in the same way as Steinitz's original proof. For these proofs, carried out using any of the ways of finding sequences of ΔY- and YΔ-transformations, there exist polyhedral graphs that require a nonlinear number of steps. More precisely, every planar graph can be reduced using a number of steps at most proportional to $n^{3/2}$, and infinitely many graphs require a number of steps at least proportional to $n^{3/2}$, where $n$ is the number of vertices in the graph.
An alternative form of induction proof is based on removing edges (and compressing out the degree-two vertices that might be left after this removal) or contracting edges and forming a minor of the given planar graph. Any polyhedral graph can be reduced to $K_{4}$ by a linear number of these operations, and again the operations can be reversed and the reversed operations performed geometrically, giving a polyhedral realization of the graph. However, while it is simpler to prove that a reduction sequence exists for this type of argument, and the reduction sequences are shorter, the geometric steps needed to reverse the sequence are more complicated.

### Lifting

If a graph is drawn in the plane with straight line edges, then an equilibrium stress is defined as an assignment of nonzero real numbers (weights) to the edges, with the property that each vertex is in the position given by the weighted average of its neighbors. According to the Maxwell–Cremona correspondence, an equilibrium stress can be lifted to a piecewise linear continuous three-dimensional surface such that the edges forming the boundaries between the flat parts of the surface project to the given drawing. The weight and length of each edge determines the difference in slopes of the surface on either side of the edge, and the condition that each vertex is in equilibrium with its neighbors is equivalent to the condition that these slope differences cause the surface to meet up with itself correctly in the neighborhood of the vertex. Positive weights translate to convex dihedral angles between two faces of the piecewise linear surface, and negative weights translate to concave dihedral angles. Conversely, every continuous piecewise-linear surface comes from an equilibrium stress in this way. If a finite planar graph is drawn and given an equilibrium stress in such a way that all interior edges of the drawing have positive weights, and all exterior edges have negative weights, then by translating this stress into a three-dimensional surface in this way, and then replacing the flat surface representing the exterior of the graph by its complement in the same plane, one obtains a convex polyhedron, with the additional property that its perpendicular projection onto the plane has no crossings.
The Maxwell–Cremona correspondence has been used to obtain polyhedral realizations of polyhedral graphs by combining it with a planar graph drawing method of W. T. Tutte, the Tutte embedding. Tutte's method begins by fixing one face of a polyhedral graph into convex position in the plane. This face will become the outer face of a drawing of a graph. The method continues by setting up a system of linear equations in the vertex coordinates, according to which each remaining vertex should be placed at the average of its neighbors. Then as Tutte showed, this system of equations will have a unique solution in which each face of the graph is drawn as a convex polygon. Intuitively, this solution describes the pattern that would be obtained by replacing the interior edges of the graph by ideal springs and letting them settle to their minimum-energy state. The result is almost an equilibrium stress: if one assigns weight one to each interior edge, then each interior vertex of the drawing is in equilibrium. However, it is not always possible to assign negative numbers to the exterior edges so that they, too, are in equilibrium. Such an assignment is always possible when the outer face is a triangle, and so this method can be used to realize any polyhedral graph that has a triangular face. If a polyhedral graph does not contain a triangular face, its dual graph does contain a triangle and is also polyhedral, so one can realize the dual in this way and then realize the original graph as the polar polyhedron of the dual realization. An alternative method for realizing polyhedra using liftings avoids duality by choosing any face with at most five vertices as the outer face. Every polyhedral graph has such a face, and by choosing the fixed shape of this face more carefully, the Tutte embedding of the rest of the graph can be lifted.

### Circle packing

According to one variant of the circle packing theorem, for every polyhedral graph, there exists a system of circles in the plane or on any sphere, representing the vertices and faces of the graph, so that:
* each two adjacent vertices of the graph are represented by tangent circles,
* each two adjacent faces of the graph are represented by tangent circle,
* each pair of a vertex and a face that it touches are represented by circles that cross at a right angle, and
* all other pairs of circles are separated from each other.
The same system of circles forms a representation of the dual graph by swapping the roles of circles that represent vertices, and circles that represent faces. From any such representation on a sphere, embedded into three-dimensional Euclidean space, one can form a convex polyhedron that is combinatorially equivalent to the given graph, as an intersection of half-spaces whose boundaries pass through the face circles. From each vertex of this polyhedron, the horizon on the sphere, seen from that vertex, is the circle that represents it. This horizon property determines the three-dimensional position of each vertex, and the polyhedron can be equivalently defined as the convex hull of the vertices, positioned in this way. The sphere becomes the midsphere of the realization: each edge of the polyhedron is tangent to the sphere, at a point where two tangent vertex circles cross two tangent face circles.

## Realizations with additional properties
### Integer coordinates

It is possible to prove a stronger form of Steinitz's theorem, that any polyhedral graph can be realized by a convex polyhedron whose coordinates are integers. For instance, Steinitz's original induction-based proof can be strengthened in this way. However, the integers that would result from Steinitz's construction are doubly exponential in the number of vertices of the given polyhedral graph. Writing down numbers of this magnitude in binary notation would require an exponential number of bits. Geometrically, this means that some features of the polyhedron may have size doubly exponentially larger than others, making the realizations derived from this method problematic for applications in graph drawing.
Subsequent researchers have found lifting-based realization algorithms that use only a linear number of bits per vertex. It is also possible to relax the requirement that the coordinates be integers, and assign coordinates in such a way that the $x$-coordinates of the vertices are distinct integers in the range from 0 to $2n-4$ and the other two coordinates are real numbers in the unit interval, so that each edge has length at least one while the overall polyhedron has linear volume. Some polyhedral graphs are known to be realizable on grids of only polynomial size; in particular this is true for the pyramids (realizations of wheel graphs), prisms (realizations of prism graphs), and stacked polyhedra (realizations of Apollonian networks).
Another way of stating the existence of integer realizations is that every three-dimensional convex polyhedron has a combinatorially equivalent integer polyhedron. For instance, the regular dodecahedron is not itself an integer polyhedron, because of its regular pentagon faces, but it can be realized as an equivalent integer pyritohedron. This is not always possible in higher dimensions, where there exist polytopes (such as the ones constructed from the Perles configuration) that have no integer equivalent.

### Equal slopes

A Halin graph is a special case of a polyhedral graph, formed from a planar-embedded tree (with no degree-two vertices) by connecting the leaves of the tree into a cycle. For Halin graphs, one can choose polyhedral realizations of a special type: the outer cycle forms a horizontal convex base face, and every other face lies directly above the base face (as in the polyhedra realized through lifting), with all of these upper faces having the same slope. Polyhedral surfaces with equal-slope faces over any base polygon (not necessarily convex) can be constructed from the polygon's straight skeleton, and an equivalent way of describing this realization is that the two-dimensional projection of the tree onto the base face forms its straight skeleton. The proof of this result uses induction: any rooted tree may reduced to a smaller tree by removing the leaves from an internal node whose children are all leaves, the Halin graph formed from the smaller tree has a realization by the induction hypothesis, and it is possible to modify this realization in order to add any number of leaf children to the tree node whose children were removed.

### Specifying the shape of a face

In any polyhedron that represents a given polyhedral graph $G$, the faces of $G$ are exactly the cycles in $G$ that do not separate $G$ into two components: that is, removing a facial cycle from $G$ leaves the rest of $G$ as a connected subgraph. Such cycles are called peripheral cycles. Thus, the combinatorial structure of the faces (but not their geometric shapes) is uniquely determined from the graph structure. Another strengthening of Steinitz's theorem, by Barnette and Grünbaum, states that for any polyhedral graph, any face of the graph, and any convex polygon representing that face, it is possible to find a polyhedral realization of the whole graph that has the specified shape for the designated face. This is related to a theorem of Tutte, that any polyhedral graph can be drawn in the plane with all faces convex and any specified shape for its outer face. However, the planar graph drawings produced by Tutte's method do not necessarily lift to convex polyhedra. Instead, Barnette and Grünbaum prove this result using an inductive method. It is also always possible, given a polyhedral graph $G$ and an arbitrary cycle $C$ in $G$, to find a realization for which $C$ forms the silhouette of the realization under parallel projection.

### Tangent spheres

The realization of polyhedra using the circle packing theorem provides another strengthening of Steinitz's theorem: every 3-connected planar graph may be represented as a convex polyhedron in such a way that all of its edges are tangent to the same unit sphere, the midsphere of the polyhedron. By performing a carefully chosen Möbius transformation of a circle packing before transforming it into a polyhedron, it is possible to find a polyhedral realization that realizes all the symmetries of the underlying graph, in the sense that every graph automorphism is a symmetry of the polyhedral realization. More generally, if $G$ is a polyhedral graph and $K$ is any smooth three-dimensional convex body, it is possible to find a polyhedral representation of $G$ in which all edges are tangent to $K$.
Circle packing methods can also be used to characterize the graphs of polyhedra that have a circumsphere through all their vertices, or an insphere tangent to all of their faces. (The polyhedra with a circumsphere are also significant in hyperbolic geometry as the ideal polyhedra.) In both cases, the existence of a sphere is equivalent to the solvability of a system of linear inequalities on positive real variables associated with each edge of the graph. In the case of the insphere, these variables must sum to exactly one on each face cycle of the graph, and to more than one on each non-face cycle. Dually, for the circumsphere, the variables must sum to one at each vertex, and more than one across each cut with two or more vertices on each side of the cut. Although there may be exponentially many linear inequalities to satisfy, a solution (if one exists) can be found in polynomial time using the ellipsoid method. The values of the variables from a solution determine the angles between pairs of circles in a circle packing whose corresponding polyhedron has the desired relation to its sphere.

## Related results

In any dimension higher than three, the algorithmic Steinitz problem consists of determining whether a given lattice is the face lattice of a convex polytope. It is unlikely to have polynomial time complexity, as it is NP-hard and more strongly complete for the existential theory of the reals, even for four-dimensional polytopes, by Richter-Gebert's universality theorem. Here, the existential theory of the reals is a class of computational problems that can be formulated in terms of finding real variables that satisfy a given system of polynomial equations and inequalities. For the algorithmic Steinitz problem, the variables of such a problem can be the vertex coordinates of a polytope, and the equations and inequalities can be used to specify the flatness of each face in the given face lattice and the convexity of each angle between faces. Completeness means that every other problem in this class can be transformed into an equivalent instance of the algorithmic Steinitz problem, in polynomial time. The existence of such a transformation implies that, if the algorithmic Steinitz problem has a polynomial time solution, then so does every problem in the existential theory of the reals, and every problem in NP. However, because a given graph may correspond to more than one face lattice, it is difficult to extend this completeness result to the problem of recognizing the graphs of 4-polytopes. Determining the computational complexity of this graph recognition problem remains open.
Researchers have also found graph-theoretic characterizations of the graphs of certain special classes of three-dimensional non-convex polyhedra and four-dimensional convex polytopes. However, in both cases, the general problem remains unsolved. Indeed, even the problem of determining which complete graphs are the graphs of non-convex polyhedra (other than $K_{4}$ for the tetrahedron and $K_{7}$ for the Császár polyhedron) remains unsolved.
Eberhard's theorem partially characterizes the multisets of polygons that can be combined to form the faces of a convex polyhedron. It can be proven by forming a 3-connected planar graph with the given set of polygon faces, and then applying Steinitz's theorem to find a polyhedral realization of that graph.
László Lovász has shown a correspondence between polyhedral representations of graphs and matrices realizing the Colin de Verdière graph invariants of the same graphs. The Colin de Verdière invariant is the maximum corank of a weighted adjacency matrix of the graph, under some additional conditions that are irrelevant for polyhedral graphs. These are square symmetric matrices indexed by the vertices, with the weight of vertex $i$ in the diagonal coefficient $M_{i,i}$ and with the weight of edge $i,j$ in the off-diagonal coefficients $M_{i,j}$ and $M_{j,i}$. When vertices $i$ and $j$ are not adjacent, the coefficient $M_{i,j}$ is required to be zero. This invariant is at most three if and only if the graph is a planar graph. As Lovász shows, when the graph is polyhedral, a representation of it as a polyhedron can be obtained by finding a weighted adjacency matrix of corank three, finding three vectors forming a basis for its nullspace, using the coefficients of these vectors as coordinates for the vertices of a polyhedron, and scaling these vertices appropriately.

## History

The history of Steinitz's theorem is described by Grünbaum (2007), who notes its first appearance in a cryptic form in a publication of Ernst Steinitz, originally written in 1916. Steinitz provided more details in later lecture notes, published after his 1928 death. Although modern treatments of Steinitz's theorem state it as a graph-theoretic characterization of polyhedra, Steinitz did not use the language of graphs. The graph-theoretic formulation of the theorem was introduced in the early 1960s by Branko Grünbaum and Theodore Motzkin, with its proof also converted to graph theory in Grünbaum's 1967 text Convex Polytopes. The work of Epifanov on ΔY- and YΔ-transformations, strengthening Steinitz's proof, was motivated by other problems than the characterization of polyhedra. Truemper (1989) credits Grünbaum with observing the relevance of this work for Steinitz's theorem.
The Maxwell-Cremona correspondence between stress diagrams and polyhedral liftings was developed in a series of papers by James Clerk Maxwell from 1864 to 1870, based on earlier work of Pierre Varignon, William Rankine, and others, and was popularized in the late 19th century by Luigi Cremona. The observation that this correspondence can be used with the Tutte embedding to prove Steinitz's theorem comes from Eades & Garvan (1995); see also Richter-Gebert (1996).
The circle packing theorem was proved by Paul Koebe in 1936 and (independently) by E. M. Andreev in 1970; it was popularized in the mid-1980s by William Thurston, who (despite citing Koebe and Andreev) is often credited as one of its discoverers. Andreev's version of the theorem was already formulated as a Steinitz-like characterization for certain polyhedra in hyperbolic space, and the use of circle packing to realize polyhedra with midspheres comes from the work of Thurston. The problem of characterizing polyhedra with inscribed or circumscribed spheres, eventually solved using a method based on circle packing realizations, goes back to unpublished work of René Descartes circa 1630 and to Jakob Steiner in 1832; the first examples of polyhedra that have no realization with a circumsphere or insphere were given by Steinitz in 1928.