# Graph embedding

In topological graph theory, an embedding (also spelled imbedding) of a graph $G$ on a surface Σ is a representation of $G$ on Σ in which points of Σ are associated to vertices and simple arcs (homeomorphic images of [0,1]) are associated to edges in such a way that:

• the endpoints of the arc associated to an edge $e$ are the points associated to the end vertices of $e$,
• no arcs include points associated with other vertices,
• two arcs never intersect at a point which is interior to either of the arcs.

Here a surface is a compact, connected 2-manifold.

Informally, an embedding of a graph into a surface is a drawing of the graph on the surface in such a way that its edges may intersect only at their endpoints. It is well known that any graph can be embedded in 3-dimensional Euclidean space $\mathbb{R}^3$ and planar graphs can be embedded in 2-dimensional Euclidean space $\mathbb{R}^2$.

Often, an embedding is regarded as an equivalence class (under homeomorphisms of Σ) of representations of the kind just described.

Some authors define a weaker version of the definition of "graph embedding" by omitting the non-intersection condition for edges. In such contexts the stricter definition is described as "non-crossing graph embedding".[1]

This article deals only with the strict definition of graph embedding. The weaker definition is discussed in the articles "graph drawing" and "crossing number".

## Terminology

If a graph $G$ is embedded on a closed surface Σ, the complement of the union of the points and arcs associated to the vertices and edges of $G$ is a family of regions (or faces).[2] A 2-cell embedding or map is an embedding in which every face is homeomorphic to an open disk.[3] A closed 2-cell embedding is an embedding in which the closure of every face is homeomorphic to a closed disk.

The genus of a graph is the minimal integer n such that the graph can be embedded in a surface of genus n. In particular, a planar graph has genus 0, because it can be drawn on a sphere without self-crossing. The non-orientable genus of a graph is the minimal integer n such that the graph can be embedded in a non-orientable surface of (non-orientable) genus n.[2]

The Euler genus of a graph is the minimal integer n such that the graph can be embedded in an orientable surface of (orientable) genus n/2 or in a non-orientable surface of (non-orientable) genus n. A graph is orientably simple if its Euler genus is smaller than its non-orientable genus.

The maximum genus of a graph is the maximal integer n such that the graph can be 2-cell embedded in an orientable surface of genus n.

## Combinatorial embedding

Main article: Rotation system

An embedded graph uniquely defines cyclic orders of edges incident to the same vertex. The set of all these cyclic orders is called a rotation system. Embeddings with the same rotation system are considered to be equivalent and the corresponding equivalence class of embeddings is called combinatorial embedding (as opposed to the term topological embedding, which refers to the previous definition in terms of points and curves). Sometimes, the rotation system itself is called a "combinatorial embedding".[4][5][6]

An embedded graph also defines natural cyclic orders of edges which constitutes the boundaries of the faces of the embedding. However handling these face-based orders is less straightforward, since in some cases some edges may be traversed twice along a face boundary. For example this is always the case for embeddings of trees, which have a single face. To overcome this combinatorial nuisance, one may consider that every edge is "split" lengthwise in two "half-edges", or "sides". Under this convention in all face boundary traversals each half-edge is traversed only once and the two half-edges of the same edge are always traversed in opposite directions.

## Computational complexity

The problem of finding the graph genus is NP-hard (the problem of determining whether an n-vertex graph has genus g is NP-complete).[7]

At the same time, the graph genus problem is fixed-parameter tractable, i.e., polynomial time algorithms are known to check whether a graph can be embedded into a surface of a given fixed genus as well as to find the embedding.

The first breakthrough in this respect happened in 1979, when algorithms of time complexity O(nO(g)) were independently submitted to the Annual ACM Symposium on Theory of Computing: one by I. Filotti and G.L. Miller and another one by John Reif. Their approaches were quite different, but upon the suggestion of the program committee they presented a joint paper.[8]

In 1999 it was reported that the fixed-genus case can be solved in time linear in the graph size and doubly exponential in the genus.[9]

## Embeddings of graphs into higher-dimensional spaces

It is known that any graph can be embedded into a three-dimensional space.

One method for doing this is to place the points on any line in space and to draw the m edges as curves each of which lies in one of m distinct halfplanes having that line as their common boundary. An embedding like this in which the edges are drawn on halfplanes is called a book embedding of the graph. This metaphor comes from imagining that each of the planes where an edge is drawn is like a page of a book. It was observed that in fact several edges may be drawn in the same "page"; the book thickness of the graph is the minimum number of halfplanes needed for such a drawing.

Alternatively, any graph can be drawn with straight-line edges in three dimensions without crossings by placing its vertices in general position so that no four are coplanar. For instance, this may be achieved by placing the ith vertex at the point (i,i2,i3) of the moment curve.

An embedding of a graph into three-dimensional space in which no two of the cycles are topologically linked is called a linkless embedding. A graph has a linkless embedding if and only if it does not have one of the seven graphs of the Petersen family as a minor.