# Combinatorial map

A combinatorial map is a combinatorial representation of a graph on an orientable surface. A combinatorial map may also be called a combinatorial embedding, a rotation system, an orientable ribbon graph, a fat graph, or a cyclic graph. More generally, an $n$-dimensional combinatorial map is a combinatorial representation of a graph on an $n$-dimensional orientable manifold.
Combinatorial maps are used as efficient data structures in image representation and processing, in geometrical modeling. This model is related to simplicial complexes and to combinatorial topology. A combinatorial map is a boundary representation model; it represents object by its boundaries.

## History

The concept of a combinatorial map was introduced informally by J. Edmonds for polyhedral surfaces which are planar graphs. It was given its first definite formal expression under the name "Constellations" by A. Jacques but the concept was already extensively used under the name "rotation" by Gerhard Ringel and J.W.T. Youngs in their famous solution of the Heawood map-coloring problem. The term "constellation" was not retained and instead "combinatorial map" was favored.
Combinatorial maps were later generalized to represent higher-dimensional orientable subdivided objects.

## Motivation

Several applications require a data structure to represent the subdivision of an object. For example, a 2D object can be decomposed into vertices (0-cells), edges (1-cells), and faces (2-cells). More generally, an n-dimensional object is composed with cells of dimension 0 to n. Moreover, it is also often necessary to represent neighboring relations between these cells.
Thus, we want to describe all the cells of the subdivision, plus all the incidence and adjacency relations between these cells. When all the represented cells are simplexes, a simplicial complex may be used, but when we want to represent any type of cells, we need to use cellular topological models like combinatorial maps or generalized maps.

## Definition

A combinatorial map is a triplet M = (D, σ, α) such that:
* D is a finite set of darts;
* σ is a permutation on D;
* α is an involution on D with no fixed point.
Intuitively, a combinatorial map corresponds to a graph where each edge is subdivided into two darts (sometimes also called half-edges). The permutation σ gives, for each dart, the next dart by turning around the vertex in the positive orientation; the other permutation α gives, for each dart, the other dart of the same edge.
α allows one to retrieve edges (alpha for arête in French), and σ allows one to retrieve vertices (sigma for sommet in French). We define φ = σ ∘ α which gives, for each dart, the next dart of the same face (phi for face also in French).
So, there are two ways to represent a combinatorial map depending if the permutation is σ or φ (see example below). These two representations are dual to each other: vertices and faces are exchanged.
Combinatorial maps example: a plane graph and the two combinatorial maps depending if we use the notation (D, σ, α) or (D, φ, α). :
| A plane graph | Corresponding combinatorial map (D, σ, α). Darts are represented by numbered segments, σ by gray arrows (example σ(1) = 7), two darts linked by α are drawn consecutively and separated by a small bar (example α(1) = 2). | Corresponding combinatorial map (D, φ, α). Darts are represented by numbered arrows, two darts linked by φ are drawn consecutively (example φ(1) = 3) and two darts linked by α are drawn parallel and in reverse orientation (example α(1) = 2). |

## Higher-dimensional generalization

An n-dimensional combinatorial map (or n-map) is a (n + 1)-tuple M = (D, β$_1$, ..., β$_n$) such that:
* D is a finite set of darts;
* β$_1$ is a permutation on D;
* β$_2$, ..., β$_n$ are involutions on D;
* β$_i$ ∘ β$_j$ is an involution if i + 2 ≤ j (i, j ∈ { 1, ,..., n }).
An n-dimensional combinatorial map represents the subdivision of a closed orientable n-dimensional space. The constraint on β$_i$ ∘ β$_j$ guarantees the topological validity of the map as a quasi-manifold subdivision. Two-dimensional combinatorial maps can be retrieved by fixing n = 2 and renaming σ by β$_1$ and α by β$_2$.
Spaces that are not necessarily closed or orientable may be represented using (n-dimensional) generalized maps.

## Rotation systems

In combinatorial mathematics, rotation systems (also called combinatorial embeddings or combinatorial maps) encode embeddings of graphs onto orientable surfaces by describing the circular ordering of a graph's edges around each vertex. A more formal definition of a rotation system involves pairs of permutations; such a pair is sufficient to determine a multigraph, a surface, and a 2-cell embedding of the multigraph onto the surface.
Every rotation scheme defines a unique 2-cell embedding of a connected multigraph on a closed oriented surface (up to orientation-preserving topological equivalence). Conversely, any embedding of a connected multigraph G on an oriented closed surface defines a unique rotation system having G as its underlying multigraph. This fundamental equivalence between rotation systems and 2-cell-embeddings was first settled in a dual form by Lothar Heffter in the 1890s and extensively used by Ringel during the 1950s. Independently, Edmonds gave the primal form of the theorem and the details of his study have been popularized by Youngs. The generalization to multigraphs was presented by Gross and Alpert.
Rotation systems are related to, but not the same as, the rotation maps used by Reingold et al. (2002) to define the zig-zag product of graphs. A rotation system specifies a circular ordering of the edges around each vertex, while a rotation map specifies a (non-circular) permutation of the edges at each vertex. In addition, rotation systems can be defined for any graph, while as Reingold et al. define them rotation maps are restricted to regular graphs.

### Characterizing the surface of the embedding

According to the Euler formula we can deduce the genus g of the closed orientable surface defined by the rotation system $(\sigma ,\theta )$ (that is, the surface on which the underlying multigraph is 2-cell embedded). Notice that $V=|Z(\sigma )|$, $E=|Z(\theta )|$ and $F=|Z(\sigma \theta )|$. We find that
    $g=1-{\frac {1}{2}}(V-E+F)=1-{\frac {1}{2}}(|Z(\sigma )|-|Z(\theta )|+|Z(\sigma \theta )|)$
where $Z(\phi )$ denotes the set of the orbits of permutation $\phi$.