# Bipartite double cover

In graph theory, the bipartite double cover of an undirected graph G is a bipartite, covering graph of G, with twice as many vertices as G. It can be constructed as the tensor product of graphs, G × K$_2$. It is also called the Kronecker double cover, canonical double cover or simply the bipartite double of G.
It should not be confused with a cycle double cover of a graph, a family of cycles that includes each edge twice.

## Construction

The bipartite double cover of G has two vertices u$_i$ and w$_i$ for each vertex v$_i$ of G. Two vertices u$_i$ and w$_j$ are connected by an edge in the double cover if and only if v$_i$ and v$_j$ are connected by an edge in G. For instance, below is an illustration of a bipartite double cover of a non-bipartite graph G. In the illustration, each vertex in the tensor product is shown using a color from the first term of the product (G) and a shape from the second term of the product (K$_2$); therefore, the vertices u$_i$ in the double cover are shown as circles while the vertices w$_i$ are shown as squares.
The bipartite double cover may also be constructed using adjacency matrices (as described below) or as the derived graph of a voltage graph in which each edge of G is labeled by the nonzero element of the two-element group.

## Examples

The bipartite double cover of the Petersen graph is the Desargues graph: K$_2$ × G(5,2) = G(10,3).
The bipartite double cover of a complete graph K$_n$ is a crown graph (a complete bipartite graph K$_{n,n}$ minus a perfect matching). In particular, the bipartite double cover of the graph of a tetrahedron, K$_4$, is the graph of a cube.
The bipartite double cover of an odd-length cycle graph is a cycle of twice the length, while the bipartite double of any bipartite graph (such as an even length cycle, shown in the following example) is formed by two disjoint copies of the original graph.

## Matrix interpretation

If an undirected graph G has a matrix A as its adjacency matrix, then the adjacency matrix of the double cover of G is
    $\left[{\begin{matrix}0&A\\A^{T}&0\end{matrix}}\right],$
and the biadjacency matrix of the double cover of G is just A itself. That is, the conversion from a graph to its double cover can be performed simply by reinterpreting A as a biadjacency matrix instead of as an adjacency matrix. More generally, the reinterpretation the adjacency matrices of directed graphs as biadjacency matrices provides a combinatorial equivalence between directed graphs and balanced bipartite graphs.

## Properties

The bipartite double cover of any graph G is a bipartite graph; both parts of the bipartite graph have one vertex for each vertex of G. A bipartite double cover is connected if and only if G is connected and non-bipartite.
The bipartite double cover is a special case of a double cover (a 2-fold covering graph). A double cover in graph theory can be viewed as a special case of a topological double cover.
If G is a non-bipartite symmetric graph, the double cover of G is also a symmetric graph; several known cubic symmetric graphs may be obtained in this way. For instance, the double cover of K$_4$ is the graph of a cube; the double cover of the Petersen graph is the Desargues graph; and the double cover of the graph of the dodecahedron is a 40-vertex symmetric cubic graph.
It is possible for two different graphs to have isomorphic bipartite double covers. For instance, the Desargues graph is not only the bipartite double cover of the Petersen graph, but is also the bipartite double cover of a different graph that is not isomorphic to the Petersen graph. Not every bipartite graph is a bipartite double cover of another graph; for a bipartite graph G to be the bipartite cover of another graph, it is necessary and sufficient that the automorphisms of G include an involution that maps each vertex to a distinct and non-adjacent vertex. For instance, the graph with two vertices and one edge is bipartite but is not a bipartite double cover, because it has no non-adjacent pairs of vertices to be mapped to each other by such an involution; on the other hand, the graph of the cube is a bipartite double cover, and has an involution that maps each vertex to the diametrally opposite vertex. An alternative characterization of the bipartite graphs that may be formed by the bipartite double cover construction was obtained by Sampathkumar (1975).

## Name

In a connected graph that is not bipartite, only one double cover is bipartite, but when the graph is bipartite or disconnected there may be more than one. For this reason, Tomaž Pisanski has argued that the name "bipartite double cover" should be deprecated in favor of the "canonical double cover" or "Kronecker cover", names which are unambiguous.

## Other double covers

In general, a graph may have multiple double covers that are different from the bipartite double cover.
* The graph C is a covering graph of H if there is a surjective local isomorphism f from C to H. In the figure, the surjection is indicated by the colours. For example, f maps both blue nodes in C to the blue node in H. Furthermore, let X be the neighbourhood of a blue node in C and let Y be the neighbourhood of the blue node in H; then the restriction of f to X is a bijection from X to Y. In particular, the degree of each blue node is the same. The same applies to each colour.
* The graph C is a double cover (or 2-fold cover or 2-lift) of H if the preimage of each node in H has size 2. In the example, there are exactly 2 nodes in C that are mapped to the blue node in H.
In the following figure, the graph C is a double cover of the graph H:
However, C is not the bipartite double cover of H or any other graph; it is not a bipartite graph.
If we replace one triangle by a square in H the resulting graph has four distinct double covers. Two of them are bipartite but only one of them is the Kronecker cover.
As another example, the graph of the icosahedron is a double cover of the complete graph K$_6$; to obtain a covering map from the icosahedron to K$_6$, map each pair of opposite vertices of the icosahedron to a single vertex of K$_6$. However, the icosahedron is not bipartite, so it is not the bipartite double cover of K$_6$. Instead, it can be obtained as the orientable double cover of an embedding of K$_6$ on the projective plane.
The double covers of a graph correspond to the different ways to sign the edges of the graph.