Crossing number (graph theory)

From Infogalactic: the planetary knowledge core
Jump to: navigation, search
A drawing of the Heawood graph with three crossings. This is the minimum number of crossings among all drawings of this graph, so the graph has crossing number cr(G) = 3.

In graph theory, the crossing number cr(G) of a graph G is the lowest number of edge crossings of a plane drawing of the graph G. For instance, a graph is planar if and only if its crossing number is zero.

The mathematical origin of the study of crossing numbers is in Turán's brick factory problem, in which Pál Turán asked to determine the crossing number of the complete bipartite graph Km,n.[1] However, the same problem of minimizing crossings was also considered in sociology at approximately the same time as Turán, in connection with the construction of sociograms.[2] It continues to be of great importance in graph drawing.

Without further qualification, the crossing number allows drawings in which the edges may be represented by arbitrary curves; the rectilinear crossing number requires all edges to be straight line segments, and may differ from the crossing number. In particular, the rectilinear crossing number of a complete graph is essentially the same as the minimum number of convex quadrilaterals determined by a set of n points in general position, closely related to the Happy Ending problem.[3]

History

During World War II, Hungarian mathematician Pál Turán was forced to work in a brick factory, pushing wagon loads of bricks from kilns to storage sites. The factory had tracks from each kiln to each storage site, and the wagons were harder to push at the points where tracks crossed each other, from which Turán was led to ask his brick factory problem: what is the minimum possible number of crossings in a drawing of a complete bipartite graph?[4]

Zarankiewicz attempted to solve Turán's brick factory problem;[5] his proof contained an error, but he established a valid upper bound of

\textrm{cr}(K_{m,n}) \le \left\lfloor\frac{n}{2}\right\rfloor\left\lfloor\frac{n-1}{2}\right\rfloor\left\lfloor\frac{m}{2}\right\rfloor\left\lfloor\frac{m-1}{2}\right\rfloor

for the crossing number of the complete bipartite graph Km,n. The conjecture that this inequality is actually an equality is now known as Zarankiewicz' crossing number conjecture. The gap in the proof of the lower bound was not discovered until eleven years after publication, nearly simultaneously by Gerhard Ringel and Paul Kainen.[6]

The problem of determining the crossing number of the complete graph was first posed by Anthony Hill, and appears in print in 1960.[7] Hill and his collaborator John Ernest were two constructionist artists fascinated by mathematics, who not only formulated this problem but also originated a conjectural upper bound for this crossing number, which Richard K. Guy published in 1960.[7] Namely, the conjecture is that

\textrm{cr}(K_p) \le \tfrac{1}{4} \left\lfloor\tfrac{p}{2}\right\rfloor\left\lfloor\tfrac{p-1}{2}\right\rfloor\left\lfloor\tfrac{p-2}{2}\right\rfloor\left\lfloor\tfrac{p-3}{2}\right\rfloor,

which gives values of 1, 3, 9, 18, 36, 60, 100, 150 for p = 5, ..., 12; see sequence (A000241) in the OEIS. An independent formulation of the conjecture was made by Thomas L. Saaty in 1964.[8] Saaty further verified that the upper bound is achieved for p ≤ 10 and Pan and Richter showed that it also is achieved for p = 11, 12.

If only straight-line segments are permitted, then one needs more crossings. The rectilinear crossing numbers for K5 through K12 are 1, 3, 9, 19, 36, 62, 102, 153, (A014540) and values up to K27 are known, with K28 requiring either 7233 or 7234 crossings. Further values are collected by the Rectilinear Crossing Number project.[9] Interestingly, it is not known whether the ordinary and rectilinear crossing numbers are the same for bipartite complete graphs. If the Zarankiewicz conjecture is correct, then the formula for the crossing number of the complete graph is asymptotically correct;[10] that is,

 \lim_{p \to \infty} \textrm{cr}(K_p) \tfrac{64}{p^4} = 1.

As of April 2015, crossing numbers are known for very few graph families. In particular, except for a few initial cases, the crossing number of complete graphs, bipartite complete graphs, and products of cycles all remain unknown. There has been some progress on lower bounds, as reported by de Klerk et al. (2006).[11] An extensive survey on the various crossing-number variants, including references to recently recognized subtleties in the definition, is available. [12]

The Albertson conjecture, formulated by Michael O. Albertson in 2007, states that, among all graphs with chromatic number n, the complete graph Kn has the minimum number of crossings. That is, if the Guy-Saaty conjecture on the crossing number of the complete graph is valid, every n-chromatic graph has crossing number at least equal to the formula in the conjecture. It is now known to hold for n ≤ 16.[13]

Complexity

In general, determining the crossing number of a graph is hard; Garey and Johnson showed in 1983 that it is an NP-hard problem.[14] In fact the problem remains NP-hard even when restricted to cubic graphs[15] and to near-planar graphs[16] (graphs that become planar after removal of a single edge). More specifically, determining the rectilinear crossing number is complete for the existential theory of the reals.[17]

On the positive side, there are efficient algorithms for determining if the crossing number is less than a fixed constant k — in other words, the problem is fixed-parameter tractable.[18][19] It remains difficult for larger k, such as |V|/2. There are also efficient approximation algorithms for approximating cr(G) on graphs of bounded degree.[20] In practice heuristic algorithms are used, such as the simple algorithm which starts with no edges and continually adds each new edge in a way that produces the fewest additional crossings possible. These algorithms are used in the Rectilinear Crossing Number[21] distributed computing project.

Crossing numbers of cubic graphs

The smallest cubic graphs with crossing numbers 1–8 are known (sequence A110507 in OEIS). The smallest 1-crossing cubic graph is the complete bipartite graph K3,3, with 6 vertices. The smallest 2-crossing cubic graph is the Petersen graph, with 10 vertices. The smallest 3-crossing cubic graph is the Heawood graph, with 14 vertices. The smallest 4-crossing cubic graph is the Möbius-Kantor graph, with 16 vertices. The smallest 5-crossing cubic graph is the Pappus graph, with 18 vertices. The smallest 6-crossing cubic graph is the Desargues graph, with 20 vertices. None of the four 7-crossing cubic graphs, with 22 vertices, are well known.[22] The smallest 8-crossing cubic graphs include the Nauru graph and the McGee graph or (3,7)-cage graph, with 24 vertices.

In 2009, Exoo conjectured that the smallest cubic graph with crossing number 11 is the Coxeter graph, the smallest cubic graph with crossing number 13 is the Tutte–Coxeter graph and the smallest cubic graph with crossing number 170 is the Tutte 12-cage.[23][24]

The crossing number inequality

The very useful crossing number inequality, discovered independently by Ajtai, Chvátal, Newborn, and Szemerédi[25] and by Leighton,[26] is as follows:

For an undirected simple graph G with n vertices and e edges such that e > 7n we have:
\operatorname{cr}(G) \geq \frac{e^3}{29 n^2}.

The constant 29 is the best known to date, and is due to Ackerman;[27] the constant 7 can be lowered to 4, but at the expense of replacing 29 with the worse constant of 64.

The motivation of Leighton in studying crossing numbers was for applications to VLSI design in theoretical computer science. Later, Székely[28] also realized that this inequality yielded very simple proofs of some important theorems in incidence geometry, such as Beck's theorem and the Szemerédi-Trotter theorem, and Tamal Dey used it to prove upper bounds on geometric k-sets.[29]

For graphs with girth larger than 2r and e ≥ 4n, Pach, Spencer and Tóth[30] demonstrated an improvement of this inequality to

\operatorname{cr}(G) \geq c_r\frac{e^{r+2}}{n^{r+1}}.

Proof of crossing number inequality

We first give a preliminary estimate: for any graph G with n vertices and e edges, we have

\operatorname{cr}(G) \geq e - 3n.

To prove this, consider a diagram of G which has exactly cr(G) crossings. Each of these crossings can be removed by removing an edge from G. Thus we can find a graph with at least e − cr(G) edges and n vertices with no crossings, and is thus a planar graph. But from Euler's formula we must then have e − cr(G) ≤ 3n, and the claim follows. (In fact we have e − cr(G) ≤ 3n − 6 for n ≥ 3).

To obtain the actual crossing number inequality, we now use a probabilistic argument. We let 0 < p < 1 be a probability parameter to be chosen later, and construct a random subgraph H of G by allowing each vertex of G to lie in H independently with probability p, and allowing an edge of G to lie in H if and only if its two vertices were chosen to lie in H. Let eH, nH and crH denote the number of edges, vertices and crossings of H, respectively. Since H is a subgraph of G, this diagram contains a diagram of H. By the preliminary crossing number inequality, we have

\operatorname{cr}_H \geq e_H - 3n_H.

Taking expectations we obtain

\mathbf{E}[\operatorname{cr}_H] \geq \mathbf{E}[e_H] - 3 \mathbf{E}[n_H].

Since each of the n vertices in G had a probability p of being in H, we have E[nH] = pn. Similarly, each of the edges in G has a probability p2 of remaining in H since both endpoints need to stay in H, theerefore E[eH] = p2e. Finally, every crossing in the diagram of G has a probability p4 of remaining in H, since every crossing involves four vertices. To see this consider a diagram of G with cr(G) crossings. We may assume that any two edges in this diagram with a common vertex are disjoint, otherwise we could interchange the intersecting parts of the two edges and reduce the crossing number by one. Thus every crossing in this diagram involves four distinct vertices of G. Therefore E[crH] = p4cr(G) and we have

 p^4 \operatorname{cr}(G) \geq p^2 e - 3 p n.

Now if we set p = 4n/e < 1 (since we assumed that e > 4n), we obtain after some algebra

 \operatorname{cr}(G) \geq \frac{e^3}{64 n^2}.

A slight refinement of this argument allows one to replace 64 by 33.75 for e > 7.5n.[27]

See also

Notes

  1. Lua error in package.lua at line 80: module 'strict' not found.
  2. Lua error in package.lua at line 80: module 'strict' not found.
  3. Lua error in package.lua at line 80: module 'strict' not found.
  4. Lua error in package.lua at line 80: module 'strict' not found.
  5. Lua error in package.lua at line 80: module 'strict' not found.
  6. Lua error in package.lua at line 80: module 'strict' not found.
  7. 7.0 7.1 Lua error in package.lua at line 80: module 'strict' not found.
  8. Lua error in package.lua at line 80: module 'strict' not found.
  9. Lua error in package.lua at line 80: module 'strict' not found.
  10. Lua error in package.lua at line 80: module 'strict' not found.
  11. Lua error in package.lua at line 80: module 'strict' not found..
  12. Lua error in package.lua at line 80: module 'strict' not found..
  13. Lua error in package.lua at line 80: module 'strict' not found.
  14. Lua error in package.lua at line 80: module 'strict' not found.
  15. Lua error in package.lua at line 80: module 'strict' not found.
  16. Lua error in package.lua at line 80: module 'strict' not found.
  17. Lua error in package.lua at line 80: module 'strict' not found..
  18. Lua error in package.lua at line 80: module 'strict' not found.
  19. Lua error in package.lua at line 80: module 'strict' not found.
  20. Lua error in package.lua at line 80: module 'strict' not found.
  21. Rectilinear Crossing Number on the Institute for Software Technology at Graz, University of Technology (2009).
  22. Weisstein, Eric W., "Graph Crossing Number", MathWorld.
  23. Lua error in package.lua at line 80: module 'strict' not found.
  24. Lua error in package.lua at line 80: module 'strict' not found..
  25. Lua error in package.lua at line 80: module 'strict' not found.
  26. Lua error in package.lua at line 80: module 'strict' not found.
  27. 27.0 27.1 Lua error in package.lua at line 80: module 'strict' not found.. For earlier results with worse constants see Lua error in package.lua at line 80: module 'strict' not found.; Lua error in package.lua at line 80: module 'strict' not found..
  28. Lua error in package.lua at line 80: module 'strict' not found.
  29. Lua error in package.lua at line 80: module 'strict' not found.
  30. Lua error in package.lua at line 80: module 'strict' not found.