# Circle graph

In graph theory, a circle graph is the intersection graph of a chord diagram. That is, it is an undirected graph whose vertices can be associated with a finite system of chords of a circle such that two vertices are adjacent if and only if the corresponding chords cross each other.

## Algorithmic complexity

After earlier polynomial time algorithms, Gioan et al. (2013) presented an algorithm for recognizing circle graphs in near-linear time. Their method is slower than linear by a factor of the inverse Ackermann function, and is based on lexicographic breadth-first search. The running time comes from a method for maintaining the split decomposition of a graph incrementally, as vertices are added, used as a subroutine in the algorithm.
A number of other problems that are NP-complete on general graphs have polynomial time algorithms when restricted to circle graphs. For instance, Kloks (1996) showed that the treewidth of a circle graph can be determined, and an optimal tree decomposition constructed, in O(n$^3$) time. Additionally, a minimum fill-in (that is, a chordal graph with as few edges as possible that contains the given circle graph as a subgraph) may be found in O(n$^3$) time. Tiskin (2010) has shown that a maximum clique of a circle graph can be found in O(n log$^2$ n) time, while Nash & Gregg (2010) have shown that a maximum independent set of an unweighted circle graph can be found in O(n min{d, α}) time, where d is a parameter of the graph known as its density, and α is the independence number of the circle graph.
However, there are also problems that remain NP-complete when restricted to circle graphs. These include the minimum dominating set, minimum connected dominating set, and minimum total dominating set problems.

## Chromatic number

The chromatic number of a circle graph is the minimum number of colors that can be used to color its chords so that no two crossing chords have the same color. Since it is possible to form circle graphs in which arbitrarily large sets of chords all cross each other, the chromatic number of a circle graph may be arbitrarily large, and determining the chromatic number of a circle graph is NP-complete. It remains NP-complete to test whether a circle graph can be colored by four colors. Unger (1992) claimed that finding a coloring with three colors may be done in polynomial time but his writeup of this result omits many details.
Several authors have investigated problems of coloring restricted subclasses of circle graphs with few colors. In particular, for circle graphs in which no sets of k or more chords all cross each other, it is possible to color the graph with as few as $7k^{2}$ colors. One way of stating this is that the circle graphs are $\chi$-bounded. In the particular case when k = 3 (that is, for triangle-free circle graphs) the chromatic number is at most five, and this is tight: all triangle-free circle graphs may be colored with five colors, and there exist triangle-free circle graphs that require five colors. If a circle graph has girth at least five (that is, it is triangle-free and has no four-vertex cycles) it can be colored with at most three colors. The problem of coloring triangle-free squaregraphs is equivalent to the problem of representing squaregraphs as isometric subgraphs of Cartesian products of trees; in this correspondence, the number of colors in the coloring corresponds to the number of trees in the product representation.

## Applications

Circle graphs arise in VLSI physical design as an abstract representation for a special case for wire routing, known as "two-terminal switchbox routing". In this case the routing area is a rectangle, all nets are two-terminal, and the terminals are placed on the perimeter of the rectangle. It is easily seen that the intersection graph of these nets is a circle graph. Among the goals of wire routing step is to ensure that different nets stay electrically disconnected, and their potential intersecting parts must be laid out in different conducting layers. Therefore circle graphs capture various aspects of this routing problem.
Colorings of circle graphs may also be used to find book embeddings of arbitrary graphs: if the vertices of a given graph G are arranged on a circle, with the edges of G forming chords of the circle, then the intersection graph of these chords is a circle graph and colorings of this circle graph are equivalent to book embeddings that respect the given circular layout. In this equivalence, the number of colors in the coloring corresponds to the number of pages in the book embedding.

## Related graph classes

A graph is a circle graph if and only if it is the overlap graph of a set of intervals on a line. This is a graph in which the vertices correspond to the intervals, and two vertices are connected by an edge if the two intervals overlap, with neither containing the other.
The intersection graph of a set of intervals on a line is called the interval graph.
String graphs, the intersection graphs of curves in the plane, include circle graphs as a special case.
Every distance-hereditary graph is a circle graph, as is every permutation graph and every indifference graph. Every outerplanar graph is also a circle graph.
The circle graphs are generalized by the polygon-circle graphs, intersection graphs of polygons all inscribed in the same circle.