Abstract 1 Introduction 2 Basic Definitions and Tools 3 Main Proof: the Hardness Reduction 4 Final Remarks References

Complexity of Anchored Crossing Number and Crossing Number of Almost Planar Graphs

Petr Hliněný ORCID Masaryk University, Brno, Czech republic
Abstract

We deal with the problem of computing the exact crossing number of almost planar graphs and the closely related problem of computing the exact anchored crossing number of a pair of planar graphs. It was shown by [Cabello and Mohar, 2013] that both problems are NP-hard; although they required an unbounded number of high-degree vertices (in the first problem) or an unbounded number of anchors (in the second problem) to prove their result. Somehow surprisingly, only three vertices of degree greater than 3 altogether, or only three anchors per each of the two graphs, are sufficient to maintain hardness of these problems, as we prove here. The new result also improves the previous result on hardness of joint crossing number on surfaces by [Hliněný and Salazar, 2015]. Our result is best possible in the anchored case since the anchored crossing number of a pair of planar graphs with two anchors each is trivial, and close to being best possible in the almost planar case since the crossing number is polytime computable for almost planar graphs of maximum degree 3 [Riskin 1996, Cabello and Mohar 2011]. The complexity of crossing number of almost planar graphs with one or two vertices of degree greater than 3 is, interestingly, still wide open.

Keywords and phrases:
Crossing number, Anchored drawing, Almost planar graph, NP-hardness
Copyright and License:
[Uncaptioned image] © Petr Hliněný; licensed under Creative Commons License CC-BY 4.0
2012 ACM Subject Classification:
Mathematics of computing Graph theory
; Theory of computation Computational complexity and cryptography
Related Version:
Full Version: https://arxiv.org/abs/2306.03490
Editors:
Paweł Gawrychowski, Filip Mazowiecki, and Michał Skrzypczak

1 Introduction

Determining the crossing number, i.e. the smallest possible number of pairwise transverse intersections (called crossings) of edges in a drawing in the plane, of a graph is among the most important optimization problems in topological graph theory. As such its general computational complexity is well-researched. Probably most famously, it is known that graphs with crossing number 0, i.e. planar graphs, can be recognized in linear time [10, 14]. On the other hand, computing the crossing number of a graph in general is 𝖭𝖯-hard, even in very restricted settings [4, 6, 12], and also 𝖠𝖯𝖷-hard [1]. It is rather surprising that problem stays hard even for almost planar graphs, which are the graphs composed of a planar graph and one more edge [3].

In this paper we are particularly attracted by the last mentioned problem of computing the exact crossing number of almost planar graphs (alternatively called near-planar graphs, e.g. in [3]). Closely related problems were in the focus of numerous papers including [13, 5, 8, 11, 2, 3, 7]. We shall denote an almost planar graph by G+e where G is a planar graph and e a (new) edge with both ends in V(G). The problem to compute the crossing number of G+e is polynomial-time solvable if G is planar of maximum degree 3, by Riskin [13] and by Cabello and Mohar [2] – as they proved, actually, the linear-time algorithm for edge insertion by Gutwenger et al. [5] can be used to solve it. On the other hand, the same problem to compute the crossing number of G+e with planar G and no degree bound (i.e., degrees growing with the graph size) is 𝖭𝖯-hard, as proved in Cabello and Mohar [3].

Hardness of the anchored crossing number.

The hardness proof in [3] importantly builds on the concept of anchored crossing number, which has already been, often just implicitly, used in numerous research works in the area. The anchored crossing number cr(H)a of an anchored graph H is defined the same way as the ordinary crossing number, with an additional restriction that allowed drawings of H (called anchored drawings) must be contained in a disk such that prescribed vertices of H (the anchors) are placed (“anchored”) in prescribed distinct points on the disk boundary. See Figure 1 a). A graph H is anchored planar if the anchored crossing number of H is 0 (note that a planar graph may not be anchored planar for some/all selections of the anchor vertices).

a)  b)

Figure 1: a) An example of an anchored graph. Although the graph itself is planar, its anchored crossing number equals 2. b) Another example made of a disjoint union of two anchored planar graphs. Its anchored crossing number equals 4.
Theorem 1.1 (Cabello and Mohar [3]).

Given an anchored graph H and an integer r, it is 𝖭𝖯-complete to decide whether the anchored crossing number of H is at most r. This holds even if H is the union of two vertex-disjoint anchored planar graphs.

The hard instances H in Theorem 1.1 have an additional property (cf. [3, Corollary 2.7]), which will be important later: Each of the two disjoint anchored planar subgraphs forming H has a unique anchored planar drawing (essentially), and every optimal solution to the anchored crossing number of H is a union of these unique anchored planar drawings.

The hardness construction in [3] had used an unbounded number of anchor vertices, but Hliněný and Salazar noted in [9], as a corollary of related research, that the conclusion of Theorem 1.1 remains true if the graph H moreover has a bounded number (namely at most 16) anchor vertices.111This result of Hliněný and Salazar was never explicitly published, and it was simply based on taking the “square frame” of [9, Fig. 4,5] and realizing it (turned inside out) with 8+8=16 anchors – see [9, p. 613]. We now discuss further details in this direction.

Let the anchored graph H from Theorem 1.1 be written as a disjoint union H=H1H2, where each Hi, i=1,2, is anchored planar with ai>0 anchors. Observe that if min{a1,a2}=1, or the anchors of H1 are placed consecutively within all anchors on the disk boundary, then, trivially, H is anchored planar as well. If min{a1,a2}=2=a1 (up to symmetry) and the anchors of H1 are not consecutive, then we can efficiently compute the smallest edge cut between the two anchors of H1, and multiply it by the smallest edge cut in H2 between the corresponding two groups (as separated by the anchors of H1) of the anchors of H2. This product equals, again quite trivially, the anchored crossing number of H. See Figure 1 b). This leaves a1=a2=3 as the simplest possibly nontrivial case of the special anchored crossing number problem.

We show that the latter case is already hard in our main result:

Theorem 1.2.

Assume that H is an anchored graph such that H=H1H2, where H1 and H2 are vertex-disjoint connected anchored planar graphs, each with 3 anchors, and given alongside with anchored planar drawings 𝒟1 and 𝒟2, respectively. Moreover, assume that H is such that in every optimal solution to the anchored crossing number of H, the subdrawing of Hi, i{1,2}, is equivalent (homeomorphic) up to permutations of parallel edges to the given drawing 𝒟i. Given such input H (alongside with 𝒟1 and 𝒟2) and an integer r, it is 𝖭𝖯-complete to decide whether the anchored crossing number of H is at most r.

Note that parallel edges do not play any essential role in the traditional crossing-number context, since they can be subdivided to make the graph simple, or modelled by integer-weighted simple edges as we do here later from Section 2.

Theorem 1.2 is proved later in the paper, and we remark that its proof is based on some implicit ideas of the proof in [9], which are highly refined with a new overall approach.

Back to the crossing number of almost planar graphs.

The special conditions on hard instances formulated in Theorem 1.2 have an interesting consequence which we informally outline next. We first recall a trick introduced in [3]: Having an instance H=H1H2 of the anchored crossing number problem as in Theorem 1.2, we can construct a planar graph G0:=HC+ where C+ is a (multi)cycle on the 6 anchor vertices of H in the natural cyclic order, with “sufficiently many” parallel edges between consecutive pairs of the vertices of C+. See Figure 2. Now we choose vertices viV(Hi)V(C+), i=1,2, and add a new edge f=v1v2 to G0. Then any optimal solution to the (now ordinary) crossing number of G0+f must leave C+ uncrossed, and so it is actually an anchored drawing of G0+f with the anchors V(C+).

Assuming we choose in the previous v1 and v2 such that the anchored crossing number of G0+v1v2 equals that of H (which is quite easy under the assumption of given drawings 𝒟1 and 𝒟2 in Theorem 1.2), we continue as in Figure 2 c). We modify the graph G0 into G¯0 by blowing up every vertex of V(H1) and every vertex of V(H2)V(C+) into a “sufficiently large” cubic grid (also known as a wall). Then every vertex of G¯0, except the three anchor vertices of H2, is of degree at most 3, and G¯0 is still planar (since flexibility of the anchors of H2 – the reason why these anchors are not blown up as other vertices, allows to flip the modified H2 “inside out” within G¯0). Furthermore, the crossing number of G¯0+v1v2 equals the anchored crossing number of H.

a) b) c)

Figure 2: An illustration to Corollary 1.3; how to translate the problem of the anchored crossing number (of a suitable instance as in Theorem 1.2) to that of the ordinary crossing number of an almost planar graph. a) The depicted instance consists of a disjoint union of two (blue P and red R) anchored planar graphs. b) Turning the previous into an almost planar instance of the ordinary crossing number problem, with a “heavy” cycle on the former anchor vertices, a “flipped out” subdrawing of the component R, and an added edge f which effectively forces P and R to stay together inside the cycle in an optimal drawing. c) Blowing up every vertex except the 3 former red anchors into a large cubic grid (a wall), which keeps the drawing properties and stays almost planar.

Hence, in contrast to the efficiently computable case of the crossing number cr(G+e) where G is planar of maximum degree 3 [2], we prove the following:

Corollary 1.3 (of Theorem 1.2).

Given a planar graph G such that at most three vertices of G are of degree greater than 3, vertices u,vV(G) and an integer r, it is 𝖭𝖯-complete to decide whether the crossing number of the (almost planar) graph G+uv is at most r.

Corollary 1.3 brings a natural question of whether we can efficiently compute the exact crossing number cr(G+e) of almost planar graphs G+e where G has one or two vertices of degree greater than 3, and we discuss this in Section 4.

Consequences of Theorem 1.2 are not restricted only to the crossing number of almost planar graphs, but include, for instance, also the following problem [9] of the joint crossing number in a surface: Given are two disjoint graphs G1 and G2, each one embedded on a fixed surface 𝒮, and the task is to find a drawing (called simultaneous or joint) of G1G2 in 𝒮 which preserves each of the given embeddings of G1 and G2, and the number of crossings between E(G1) and E(G2) is minimized. While Hliněný and Salazar [9] proved that this problem is hard for the orientable surface with 6 handles, we easily improve the result to:

Corollary 1.4 (of Theorem 1.2).

Given two disjoint graphs G1 and G2, each embedded in the triple-torus, and an integer r, it is 𝖭𝖯-complete to decide whether the joint crossing number of G1 and G2 in the triple-torus is at most r.

We leave formal proofs of the   -marked statements for the full preprint.

2 Basic Definitions and Tools

In this paper we consider multigraphs by default, i.e., our graphs are allowed to have multiple edges (while loops are irrelevant here), with understanding that we can always subdivide parallel edges without changing the crossing number(s) considered here.

Drawings.

A drawing 𝒢 of a graph G in the Euclidean plane 2 is a function that maps each vertex vV(G) to a distinct point 𝒢(v)2 and each edge e=uvE(G) to a simple open curve 𝒢(e)2 with the ends 𝒢(u) and 𝒢(v). We require that 𝒢(e) is disjoint from 𝒢(w) for all wV(G){u,v}. In a slight abuse of notation we often identify a vertex v with its image 𝒢(v) and an edge e with 𝒢(e). Throughout the paper we will moreover assume that: there are finitely many points which are in an intersection of two edges, no more than two edges intersect in any single point other than a vertex, and whenever two edges intersect in a point, they do so transversely (i.e., not tangentially).

The intersection (a point) of two edges is called a crossing of these edges. A drawing 𝒢 is planar (or a plane graph) if 𝒢 has no crossings, and a graph is planar if it has a planar drawing. The number of crossings in a drawing 𝒢 is denoted by cr(𝒢). The crossing number cr(G) of G is defined as the minimum of cr(𝒢) over all drawings 𝒢 of G.

The following is a useful artifice in crossing numbers research. In a weighted graph, each edge is assigned a positive number (the weight or thickness of the edge, usually an integer). Now the weighted crossing number is defined as the ordinary crossing number, but a crossing between edges e1 and e2, say of weights t1 and t2, contributes the product t1t2 to the weighted crossing number. For the purpose of computing the crossing number, an edge of integer weight t can be equivalently replaced by a bunch of t parallel edges of weights 1; this is since we can easily redraw every edge of the bunch tightly along the “cheapest” edge of the bunch. Hence, from now on, we will use weighted edges instead of parallel edges, and shortly say crossing number to the weighted crossing number. (Note, though, that when we say a graph G+e is almost planar, then we strictly mean that the added edge e is of weight 1.)

Anchored drawings.

Assume now a closed disk D2. An anchored graph [3] is a pair (H,A) where AV(H) is a cyclic permutation of some of its vertices; the vertices in A are called the anchors of H. An anchored drawing of (H,A) is a drawing of H such that D and intersects the boundary of D exactly in the vertices of A in the prescribed cyclic order. The anchored crossing number of (H,A), denoted by cr(H,A)a, equals the minimum of cr() over all anchored drawings of (H,A). An anchored graph (H,A) is anchored planar if cr(H,A)a=0.

We shall study the following special case of an anchored graph (H,A), which we call an anchored pair of planar graphs, or shortly a PP anchored graph: It is the case of H=H1H2 such that (H1,A1) and (H2,A2) are vertex-disjoint anchored planar graphs, where Ai, i=1,2, is the restriction of the permutation A to the anchor set of Hi. (Note that we often see instances in which the anchors of A1 alternate with those of A2, but this is not a requirement of our definition.)

From the fine details of [3] one can derive the following refined statement. In view of weighted graphs representing parallel edges (as mentioned above), we say that a graph G contains a path PG of weight t if every edge of P in G is of weight at least t.

Figure 3: A high-level illustration of the assumptions on the PP anchored graph (H,A) in Theorem 2.1; the drawing 𝒟1 of (H1,A1) is sketched in red, and the drawing 𝒟2 of (H2,A2) is in blue. The blue sketch emphasizes only the “heavy” path RH2, while the red sketch shows all paths of the family 𝒬. The solid red paths are all of weight w and the dashed red paths are of minimum weight w1 (but some edges of these paths are also of weight w). Note that every vertex of the graph H1 is either a red anchor, or in the intersection of some two paths from 𝒬.
Theorem 2.1 (extension of Theorem 1.1 [3]).

Assume a PP anchored graph (H,A), i.e., H=H1H2 is a union of vertex-disjoint connected graphs, and denoting by Ai, i=1,2, the restriction of A to the anchors of Hi, the graphs (H1,A1) and (H2,A2) are anchored planar. Let 𝒟i, i=1,2, be an anchored planar drawing of (Hi,Ai). Let w be any sufficiently large integer parameter, which grows polynomially in the size of H. Furthermore, assume the following (as informally illustrated in Figure 3):

  1. a)

    For H1 and the restricted cyclic permutation A1=(a1,,a4k) where k, there are

    • for i=1,,k1, a path Qi1 in H1 from ai to a3k+1i of weight w1, such that the edges of Qi1 incident to vertices in A1 are of weight w,

    • a path Qk1 from ak to a2k+1 of weight w, and

    • for i=1,,k, paths Qi2 and Qi3 in H1 from ai+k to a4k+1i of weight w.

    All paths 𝒬={Qi1,Qi2,Qi3:i=1,,k} are pairwise edge-disjoint, and each of the unions i[k]Qi1 and i[k]Qi2Qi3 spans V(H1)A1.

  2. b)

    In H2, there exist b,bA2 such that b is positioned between a1 and a4k within the cyclic permutation A, and b is positioned between a2k and a2k+1 within A. The graph H2 contains a path RH2 of weight w12 from b to b.

  3. c)

    All edges of H1, and all edges of H2 except those of R, have weight at most w4, and the edges of R in H2 have weight at most w12+w4.

  4. d)

    In every optimal solution to the anchored crossing number of (H,A);

    • the subdrawing of Hi, i{1,2}, is homeomorphic to the drawing 𝒟i,

    • the path R crosses the path Qi1, 1i<k, in an edge of weight w1, and R crosses the path Qk1 and the paths Qi2 and Qi3, 1ik, in edges of weight w.

Then it is 𝖭𝖯-hard to compute the anchored crossing number of (H,A).

3 Main Proof: the Hardness Reduction

Informal outline.

Our proof of Theorem 1.2 is a bit complex, and we first informally explain what we want to achieve. In a nutshell, we are going to “embed” the gadget (H,A) of Theorem 2.1 as an ordinary subgraph within a special “frame” PP anchored graph Fk, parameterized by the gadget size, such that Fk forces the vertices of A to be placed as expected in (H,A). By the informal word “forces” we mean that any (other) drawing of Fk violating the placement of the former anchors A would require increasing the number of crossings of Fk higher than what is the difference between the best-case and the worst-case scenarios in Theorem 2.1.

We adopt the following “colour coding”; the subgraph H1 in Theorem 2.1 will be called red and the subgraph H2 blue, and these colours will be correspondingly used also within the frame Fk which will include some of the vertices and edges of H (precisely, the special paths of H claimed by Theorem 2.1(a, b)).

Figure 4: A schematic picture of the frame PP anchored graph (Fk,B) used for the reduction in Section 3 with k=4. The solid lines depict edges, while the dashed lines represent paths in general. The thin dashed red paths pairwise intersect in red vertices which are not (and do not need to be) explicitly specified. The red and the blue graphs are vertex-disjoint and each one has three anchors (r0,r2,r4 of the red graph, and b0,d1,b4 of the blue graph) and is anchored planar. The bracketed numbers represent edge weights, where [t] means weight ωt.
Weights of the edges emphasized with gray shade are treated specially (see a closer detail in Figure 5). The horizontal red path P0 from r0 to r4 has edges of weight ω41+𝒪(kω30), the horizontal blue path P1 connecting b0 to b4 has, in the subpath from b1 to b3, edges of weight ω49+𝒪(kω30), and elsewhere edges of weight ω49+25ω35+𝒪(kω30); these weights are precisely specified later in the proof. The horizontal blue path P2 connecting c0 to c4 has edges of weight exactly ω38 in the subpath from c1 to c3, and of weight ω38+45ω35 elsewhere. The vertical blue edge b2c2 is of weight exactly ω48+2ω38ω34, and the vertical red edges r1r1 and r3r3 are of weight ω41ω40.

For the sole purpose of this informal outline, it is enough to “define” the frame PP anchored graph (Fk,B) via a detailed sketch in Figure 4. The key feature of (Fk,B) is the use of “heavy-weight” edges, whose weight is of the form ωt where t is specified at each edge in the picture and ω is now seen as a variable base. Later, ω is chosen as a “sufficiently large” integer such that for every t, ωt+1 is always larger than the sum of a collection of crossings of weight at most ωt in the reduction (with a slight abuse of traditional notation, ωt+1>Θ(ωt)), and that all weights are integers.

Briefly, the blue graph of Fk has 3 anchors B2={b0,b4,d1}B, and consists of the vertices lying on two horizontal paths P1 from b0 to b4 of length 4k+4 and P2 from c0 to c4 of length 4k+2, four special vertices d0,d1,d2,d4, and the vertices of a vertical path R from c2 to d2 of weight exactly ω48 (cf. Theorem 2.1(b) with w=ω4). Additional edges exist in Fk between the specified blue vertices as sketched in Figure 4 and detailed in the full definition. The red graph of Fk has again 3 anchors B1={r0,r2,r4}B, and consists of the vertices lying on a cycle C0 of length 4k+3 passing through r2, the vertices on a horizontal path P0 from r0 to r4 of length 4k+3, and (the vertices of) a collection 𝒬 of k+2k=3k edge-disjoint paths of weight ω41 or ω4 (as in Theorem 2.1(a) with w=ω4) which connect pairs of vertices of P0. Again, further edges exist in Fk between vertices of the red path P0 and the red cycle C0, as sketched in Figure 4 and detailed later. Moreover, all end-edges of the paths in 𝒬 (i.e., those incident to P0) are of weight ω4, and the second condition of Theorem 2.1(d) is met by the paths in 𝒬.

Note that we do not require to exactly specify the paths of 𝒬, in particular they share their internal vertices in an unspecified way (and so, we rather construct a family of frame graphs Fk for each k than single Fk), but we do require the properties stated in Theorem 2.1 to hold for them. With respect to the drawing in Figure 4, we call the gadget region of (Fk,B) the region bounded by the blue horizontal path from c0 to c4 and the path (c0,d0,d2,d4,c4). Summarizing, our coming proof proceeds in the following points:

  • (Lemma 3.1) Let γω(k) denote the number of crossings in the drawing of (Fk,B) as in Figure 4 (see Lemma 3.1 for an exact formula). In the setting of weighted edges (cf. Section 2), we claim roughly the following; any drawing of (Fk,B) which is “different” from the one in Figure 4 or, specially, in which not all internal vertices of the edges of 𝒬 lie in the gadget region, has at least γω(k)+ω34ω30 crossings.

  • (Theorem 1.2) Based on the previous point, we can use the internal vertices of the red path P0 and of the blue path P2 and the vertex d2 as “firmly glued” emulated anchors A for the gadget anchored graph (H,A) of Theorem 2.1  –  if these emulated anchors A were not placed as required, then the increase in the number of crossings (ω34ω30) of the frame (Fk,B) would be strictly larger than the number of crossings used to draw (H,A) itself (on top of the crossings existing in the subdrawing of (Fk,B)). We thus reduce the problem of determining the anchored crossing number of (H,A) to that of (FkH,B).

The “frame” graph in detail.

As previously sketched in Figure 4, a PP anchored graph (Fk,B) is called a frame graph of the parameter k and weight ω if the following holds: (Fk,B) is constructed as a disjoint union Fk=Fk1Fk2 and B=B1B2, where the component Fk1 is coded as red and Fk2 as blue. In red Fk1, we have the anchors B1={r0,r2,r4}, a cycle C0 passing through r2, a path P0 from r0 to r4, and:

  • The vertices of P0 are in order V(P0)=(r0,r01,,r02k,r1,r3,r02k+1,,r04k,r4). The weights of its edges are ω41+𝒪(kω30) and are exactly specified below in the proof of Lemma 3.1. A collection of (red) paths 𝒬 satisfies the assumptions of Theorem 2.1, their ends are identified with vertices of P0 as ai=r0i for i=1,,4k, and their weights are set according to (the gadget (H,A) of) Theorem 2.1 and w:=ω4.

  • The vertices of C0 are in cyclic order V(C0)=(r2,s01,,s02k,r1,r3,s02k+1,, s04k,r2). The edges of C0 are all of weight ω49, and there are additional two edges r1r1 and r3r3 of weight ω41ω40 and 4k edges r0is0i of weight ω30 for i=1,,4k.

In blue Fk2, we have the anchors B2={b0,d1,b4}, a path P1 from b0 to b4, a path P2 from c0 to c4, a path R from c2 to d2, three vertices d0,d1,d4, and:

  • The vertices of P1 are in order V(P1)=(b0,b01,,b0k,b1,b0k+1,,b02k,b2,b02k+1,,b03k, b3,b03k+1,,b04k,b4). The vertices of P2 are in order V(P2)=(c0=c01,,c0k,c1, c0k+1,,c02k,c2,c02k+1,,c03k,c3,c03k+1,,c04k=c4). The edges of P1 are of weight ω49+𝒪(kω30) between b1 and b3 and of weight ω49+𝒪(kω34)+𝒪(kω30) elsewhere, and are exactly specified below in the proof. The edges of P2 are of weight ω38 between c1 and c3 and ω38+45ω35 elsewhere.

  • There is an edge b2c2 of weight ω48+2ω38ω34, two edges b1c1 and b3c3 of weight ω35, and 4k edges b0ic0i of weight ω30 for i=1,,4k.

  • There is a path R, as specified in Theorem 2.1(b), from c2 to d2 of weight ω48. There are seven additional edges c0d0, d0d1, d0d2, d1d4, d2d4, d4c4, each of weight ω49.

One can easily check from Figure 4 that each of (Fk1,B1) and (Fk2,B2) is anchored planar.

We have the following claim.

Lemma 3.1.

Let a PP anchored graph (Fk,B) be a frame graph for k and ω. For k2 and any sufficiently large ω (divisible by 5(5k+7) to maintain integrality), its anchored crossing number equals

cr(Fk,B)a=γω(k):= 2ω90ω89+(4k+2)ω79+2ω76ω75+4kω71
+ c1(k)ω65+c2(k)ω60+3kω52kω48+6kω42+125kω39,

where c1(k)=25(5k+7)(30k2+58k+20) and c2(k)=23(5k+7)(16k3+39k2+20k).

Any anchored drawing of (Fk,B) with at most γω+(k):=γω(k)+ω34ω301 crossings is homeomorphic, with a possible exception of the paths of 𝒬, to that in Figure 4, and specially the internal vertices of all paths of 𝒬 are drawn in the gadget region and their edges cross the path P2 from c0 to c4 and the path R as depicted.

Proof.

As for the first part of the statement, we organize arguments leading to each term of the formula for γω(k) stepwise from higher to lower order terms of edge weights. The proof steps, with details of (2) and (4) skipped till later parts of the proof, are as follows:

  1. (1)

    The blue path P1 of weight ω49 must not cross the red path P0 of weight ω41 since that would result in crossings of weight at least 2ω90>γω+(k), and likewise with P1 and C0. So, by the Jordan curve theorem, the two red edges r1r1 and r3r3 of weight ω41ω40 must cross P1, contributing crossing weight at least 2ω902ω89. The 4k red edges of weight ω30 from P0 to C0 similarly make 4kω79 crossings with P1. Further, there are edge-disjoint paths from b2 to d1 of combined weight ω48+2ω38; these are formed by the path b2c2+R of weight ω48, by a path from b2 through c2, c0 and d0 of weight ω38, by a path from b2 through c2, c4 and d4 of weight ω38ω34, and by a path from b2 through b3, c3 and c4 of weight ω34. These contribute weight ω89+2ω79 of crossings with P0. Summing up, we have so far accounted for at least 2ω90ω89+(4k+2)ω79>γω(k)2ω76+ω75 enforced crossings.

  2. (2)

    The next step is to prove that P2 is drawn disjoint from P0 and drawn above it, and all c1b1, c2b2, c3b3 cross P0. If, for an illustration, P0 was crossed by both b1c1 and b3c3, but not by b2c2, the lower bound from (1) would rise (thanks to full weight of b1c1 and b3c3) to 2ω90ω89+(4k+2)ω79+2ω76γω(k)+ω75ω72>γω+(k), which is impossible. If neither of b1c1, b3c3 crosses P0, then we (briefly) get subpaths of P1 and P2 of combined weight 225ω35+245ω35=(2+25)ω35 which cross the path P0 or edges r1r1, r3r3, and this contributes an additional weight (2+25)(ω76ω75) of crossings, again exceeding γω+(k). We leave the fine details and subcases for a later part of the proof.

  3. (3)

    Using (2), we may count crossings of P0 with the edges c1b1, c2b2, c3b3 and the 4k blue edges of weight ω30 between P1 and P2. At this point, our lower bound gets to 2ω90ω89+(4k+2)ω79+2ω76ω75+4kω71>γω+(k)ω66.

  4. (4)

    Next comes the crucial step of the reduction – at cost of additional c1(k)ω65+c2(k)ω60 weight of crossings, we “order” the vertical blue edges which stretch between the paths P1 and P2 as alternating with the internal vertices of the red path P0. This rather long technical step is detailed at the end of the proof, and here we only outline its core idea which is based on simple calculus as follows. Consider an arbitrary quadratic polynomial p(x) which is increasing on +. Then, for any a>0, the minimum of the function p(x)+p(y) conditioned by x+y=a is attained at x=y, that is when x=a/2. A slight adjustment (suitable for integer values of x) of this idea is used to determine fine weights of the edges of the paths P0 and P1 where, essentially, x means the index of an edge of P0 and y that of an edge of P1. Such fine weights then enforce precise mutual positions of the edges of P0 and P1, and in turn the desired alternating ordering of the vertical red and blue edges incident to P0 and P1. A closer idea of this principle can be obtained by looking at an example of concrete edge weights in Figure 5.

    Figure 5: A detail of the “ordering” of vertices on the paths P0 and P1 of the frame Fk from Figure 4, where k=4. Only the half to the right of b2c2 is shown, and the other half is symmetric. The edges of P0, going from r1 on the left to r4 on the right, have weights ω41+i(i+1)5k+7ω30 for i=0,1,,2k+1. The edges of P1, going from b2 on the left to b4 on the right, have weights ω49+i(i+2)5k+7ω30 for i=0,1,,k and ω49+25ω35+i(i+2)5k+7ω30 for i=k+1,,2k+1. Using straightforward calculus, one can compute that “sliding” vertices of P0 across the vertical edge b3c3 (in any direction) would increase the weight of crossings by 15(5k+7)ω65, and “sliding” with respect to other depicted vertical blue edges would increase the weight by 15k+7ω60.
  5. (5)

    Points (1)–(4) together imply that the weight of the crossings in (Fk,B) is at least γω(k)3kω52. So, none of the paths of 𝒬 may cross P1 since that would add ω49+4=ω53. Then each of the paths of 𝒬 crosses the blue edge c2b2 of weight ω48+2ω38ω34, or the path R plus two sections of the path P2 of combined weight ω48+2ω38. Since 2k of the paths of 𝒬 are of weight ω4 and k of them of weight ω41, by Theorem 2.1(a), we have at least (ω48+2ω38ω34)(3kω4k)3kω52kω48+6kω425kω38 more crossings from that. Moreover, each of the paths of 𝒬 crosses sections of P2 between c0c1 and c3c4 of weight 45ω35 (plus the edges b1c1 and b3c3), contributing another 45ω35(3kω4k)=125kω3945kω35. All these together raise the lower bound to at least γω(k)5kω3845kω35γω+(k)(5k+1)ω38.

  6. (6)

    Assume that some of the internal vertices of a path in 𝒬 lie outside of the gadget region (informally, below P2). That would force an additional crossing between such a path and c1b1 or c3b3 of weight (145)ω35+4 (or with e.g. P2 of even higher weight), exceeding γω+(k). Therefore, every path Q𝒬 crosses the path P2 in the two end-edges of Q which are of weight ω4 by the condition in Theorem 2.1(a), and the weights of the edges of P2 crossed by Q are ω38 and ω38+45ω35, respectively. Additionally, all paths of 𝒬 cross the path R of weight ω48 at least with their minimum edge weights ω41 or ω4. All this improves the estimate on the crossings carried by the paths of 𝒬 from (5) to ω48(3kω4k)+(2ω38+45ω35)3kω4=3kω52kω48+6kω42+125kω39, which raises our lower bound to the desired value γω(k).

A drawing with γω(k) crossings is as in Figure 4 with details as in Figure 5. Hence, we have finished a proof of cr(Fk,B)a=γω(k). Furthermore, if any of the assumptions of the previous analysis was violated, the crossing number would exceed γω+(k), and any one additional crossing not sketched in Figure 4 and not being only between paths of 𝒬 would add weight of at least ω30+4ω30, and again γω(k)+ω34ω30>γω+(k), which confirms the rest of Lemma 3.1.

We continue with additional proof details of the two sketched points.

Proof of (2).

Once we prove that all three edges c1b1, c2b2, c3b3 cross P0, we raise the lower bound from (1) to at least 2ω90ω89+(4k+2)ω79+2ω76ω75>γω+(k)ω72, and hence P2 could not cross P0 and had to be above it. It thus suffices to analyze all possibilities that some of c1b1, c2b2, c3b3 do not cross P0.

  1. i.

    Neither of c1b1, c3b3 cross P0. Then (regardless of c2b2) the weight of crossings of order ω76 sums to at least 245ω76 between P0 and P2, precisely, with the sections of P2 between c0c1 and c3c4. In addition to that, we have a path from b0 to b4, using the edges b1c1, b3c3 and the section of P2 between c1c3, of weight 25ω35. This path must cross twice the subgraph formed by P0+:=P0{r1r1,r3r3} and, importantly, the possible crossing(s) with P0 is in addition to the crossings between P0 and P2 counted in (1) if b2c2 does not cross P0. So, this adds (neglecting the lower-order terms) at least 225ω76 more crossings between P0+ and P2. Altogether, with the lower bound of (1), we get at least 2ω90ω89+(4k+2)ω79+125ω76ω75>γω+(k) crossings, which is impossible.

  2. ii.

    Exactly one of c1b1, c3b3 crosses P0. We reuse “one half” of the argument in (i.) plus the weight of the crossing of one of c1b1, c3b3 with P0 to derive an analogous contradiction.

  3. iii.

    Both of c1b1, c3b3 cross P0, but b2c2 does not. Then the lower bound from the arguments of (1) can be slightly improved, since the path R and twice the path P2 cross P0, and in addition to that, we count the crossings of c1b1 and c3b3 with P0. So, we improve it to at least 2ω90ω89+(4k+2)ω79+2ω76>γω(k)+ω75ω72>γω+(k), which is again impossible.

Proof of (4).

We first note that the graph (Fk,B) is symmetric along the vertical axis, except the paths of 𝒬. Since the paths of 𝒬 are handled only after point (4), we can now assume full symmetry and prove the claim only for the right-hand side of (Fk,B), as depicted in Figure 5, and then multiply the number of crossings by 2.

We recapitulate where we stand with our drawing of (Fk,B) after steps (1)–(3). We have got pairwise noncrossing cycle C0 and paths P1, P0 and P2 drawn in this order bottom up (Figure 4). All crossings of weight of order ω66 and higher have already been counted to equality with γω(k). There are two edges of weight ω41ω40 between C0 and P0 crossing P1, and 4k such edges of weight ω30. There is an edge of weight ω48+2ω38ω34 and two edges of weight ω35 between P1 and P2 crossing P0, and again 4k such edges of weight ω30. Besides the already counted weights, these listed edges contribute crossings of weights of order only ω65 and ω60 (including their possible mutual crossings).

Our proof strategy is the following; we will show a concrete drawing, called the normal drawing, in which the above described crossings contribute exactly as expected in the formula for γω(k) in the part c1(k)ω65+c2(k)ω60 (the drawing in Figure 5), and then we will argue that in any drawing in which the above listed edges (the vertical blue and red ones of weights ω35and ω30) are not as in our normal drawing, we can decrease the total crossing number by Ω(ω60). This possible drop in the crossing number in turn certifies that the arbitrary considered drawing would exceed γω+(k) crossings, and hence is impossible in our claim. In this setup of a proof, it also comes for free that all crossings potentially occuring in (Fk,B), which are not counted prior to this point and are not among the crossings listed above, are of weight of order strictly less than ω60.

The weights of the edges of P0 and P1 are precisely as follows (Figure 5):

  • For P0, V(P0)=(r0,r01,,r02k,r1,r3,r02k+1,,r04k,r4), the weight of r1r3 is exactly ω41, the weight of r02kr1 and of r3r02k+1 is ω41+25k+7ω30, the weight of r02k+i1r02k+i and of r02ki+1r02ki is ω41+i(i+1)5k+7ω30 for i=2,,2k, and the weight of r0r01 and of r04kr4 is ω41+(2k+1)(2k+2)5k+7ω30.

  • For P1, V(P1)=(b0,b01,,b0k,b1,b0k+1,,b02k,b2,b02k+1,,b03k,b3,b03k+1, ,b04k,b4), we resort to describing the weights only from b2 till b4. The weight of b2b02k+1 is exactly ω49, the weight of b02k+ib02k+i+1 is ω49+i(i+2)5k+7ω30 for i=1,,k1, the weight of b03kb3 is ω49+k(k+2)5k+7ω30, the weight of b3b03k+1 is ω49+25ω35+(k+1)(k+3)5k+7ω30, the weight of b03k+ib03k+i+1 is ω49+25ω35+(i+k+1)(i+k+3)5k+7ω30 for i=1,,k1, and the weight of b04kb4 is ω49+25ω35+(2k+1)(2k+3)5k+7ω30.

We count the crossings in a normal drawing as in Figure 5:

  • Concerning total crossings of weight of order ω65, we have 2k red edges of weight ω30 crossing the sections of P1 between b0b1 and b3b4, and two blue edges of weight ω35 crossing P0 in edges of weight (k+1)(k+2)5k+7. In total

    2kω3025ω35+2ω35(k+1)(k+2)5k+7ω30=25(5k+7)(30k2+58k+20)ω65=c1(k)ω65.
  • Concerning total crossings of weight of order ω60, and considering only the right-hand side as in Figure 5, we get crossings of 2k red edges of weight ω30 with the edges of P1 from b02k+1 to b04k, and crossings of 2k blue edges of weight ω30 with the edges of P0 from r3 to r4 except with the edge of weight (k+1)(k+2)5k+7 (counted in the previous point). These sum to

    ω30 i=12ki(i+2)5k+7ω30+ω30[i=12k+1i(i+1)5k+7(k+1)(k+2)5k+7]ω30
    =13(5k+7)(16k3+39k2+20k),

    which multiplied by 2 gives c2(k).

Now, we handle an arbitrary drawing of (Fk,B) which conforms to the bounds shown in (1)–(3), but is not our normal drawing described by Figure 5. As argued above, it is enough for this purpose to consider only edges depicted in Figure 5, and know that the depicted vertical edges indeed cross the horizontal paths P1 and P2 somewhere. Crossings of weight of order strictly higher than ω65 are not relevant in this analysis (as they are enforced and have been counted, and so new such ones cannot even arise), and crossings of weight of order strictly less than ω60 can be ignored at this stage (by the choice of sufficiently large ω).

We denote by ti0=i(i+1)5k+7 and ti1=i(i+2)5k+7, and refer to Figure 5. The i-th edge of the red path P0, counted from r3 towards r4, is of weight ω41+ti0ω30, and the (i+1)-th edge of the blue path P1, counted from b2 towards b4, is of weight ω49+ti1ω30, resp. of weight ω49+25ω35+ti1ω30 if i>k. We also denote the vertical red edges (of weight ω30) incident to the path P0 by f10,,f2k0 such that fi0 is incident to the vertex r02k+i, and the vertical blue edges (of weight again ω30) incident to the path P1 by f11,,f2k+11 such that fi1 is incident to the vertex b02k+i for ikfk+11 is incident to b3, and fi1 is incident to b02k+i1 for ik+2.

One can easily check that in our normal drawing, we have, naturally, fi0 crossing P1 in the edge of weight coefficient ti1,  fj1 crossing P0 in the edge of weight coefficient tj0, and no fi0 is crossing any fj1. Assume that the drawing of fi0 violates some of the previous conditions.

  1. i.

    Assume that fi0 crosses fj1 for some ji, and that ij is minimized with respect to that. The minimality assumption implies that fj1 crosses P0 in the edge of ti10. We may “slide” the vertex r02k+i along the drawing of P0 towards r02k+i1, such that the crossing of fj1 with P0 changes to the edge of weight coefficient ti0. This increases the crossing weight on P0 by (ti0ti10)ω30+304k5k+7ω60<(115)ω60 (resp., the same expression with ω65 if fj1=b3c3). On the other hand, this move saves ω60 (resp., ω65) weight of crossing between fi0 and fj1, hence decreasing the total number of crossings by at least 15ω60.

  2. ii.

    A case that fi0 crosses fj1 for some j>i is solved analogously, with “sliding” the vertex r02k+i along P0 towards r02k+i+1.

  3. iii.

    For the rest, we consider that no fi0 is crossing any fj1. Assume that fi0 crosses P1 in the edge of weight coefficient tj1 for j<i, and that ij is maximized with respect to that. Further assume that fj1b3c3. The maximality assumption, together with fj1 not crossing any fi0, imply that fj1 crosses P0 in the edge of ti+10. We now simultaneously “slide” the end of fi0 along the drawing of P0 to the right and the end of fj1 along the drawing of P1 to the left, such that fi0 and fj1 (informally) exchange positions.

    On the path P1, we gain crossings of weight (tj+11tj1)ω30+30=2j+35k+7ω60. On the path P0, we save crossings of weight (ti+10ti0)ω30+30=2i+25k+7ω60. And since ij+1, we decrease the total crossings by at least 15k+7ω60.

  4. iv.

    Under the same initial assumption as in (iii.), we consider the subcase that fj1=b3c3. Then the same modification of the drawing causes the following. On the path P1, we gain crossings of weight 25ω35+30, neglecting the lower order term. On the path P0, we save crossings of weight (ti+10ti0)ω30+35=2i+25k+7ω65. Since ik+1 in this case, we decrease the total crossings by at least (2(k+1)+25k+725)ω6515(5k+7)ω65.

  5. v.

    We analogously handle the cases as (iii.) and (iv.) with j>i. If fj1b3c3, we decrease the total crossings by at least (tj1tj11)ω30+30(ti+10ti0)ω30+30=(2j+15k+72i+25k+7)ω6015k+7ω60. If fj1=b3c3, we have ik and the saving is at least (252k+25k+7)ω6545(5k+7)ω65.

The whole proof of Lemma 3.1 is now finished.

Final arguments.

We are now ready to finish the proof of our main result and its corollary.

Proof of Theorem 1.2.

According to the (hard) instance (H,A) in Theorem 2.1, we choose k such that |A|=4k, and for a “sufficiently large” integer ω (see below), we set the weight w=ω4 in the statement of Theorem 2.1. We make the union (H¯,B):=H(Fk,B) such that the path R and the paths in 𝒬 get identified between H and Fk. Precisely, the red anchors in A1A are identified in the natural order with the internal vertices of the path P0Fk except r1,r3. The blue anchors in A2A are identified in the natural order with the internal vertices of the path P2Fk, except the two neighbours of c2, and with the vertex d2.

The core parameter ω of the reduction is handled precisely as follows; denoting by m the number of edges of the simplification of H¯ (i.e., counting parallel edges as one), we choose ω>m2 and such that the defined weights are all integers, for instance, that ω is a multiple of 5(5k+7). This choice means that ω is larger than the largest possible number of edge crossings (but not the summed weight of them) in an optimal drawing of (H¯,B), and so for every t, a crossing of weight ωt+1 is more than any sum of crossings of weights at most ωt in the expected solution, as needed in our reduction.

If cr(H,A)ar, then the witness drawing of (H,A) can be trivially combined with that of (Fk,B) in Figure 4, giving cr(H¯,B)aγω(k)+r(3kω52kω48) by Lemma 3.1 (we subtract the crossings between R and paths of 𝒬 which are counted twice).

On the other hand, if cr(H¯,B)aγω(k)+s, then s=𝒪(ω16+16)<ω33 since all edges of HE(R) are of weight w4=ω16, and so we have a drawing of (H¯,B) whose restriction to Fk conforms to Lemma 3.1. Since crossings of 𝒬 with R contribute 3kω52kω48 by the condition on 𝒬 in Lemma 3.1, we get that cr(H,A)acr(H¯,B)aγω(k)+(3kω52kω48)s+(3kω52kω48) (in the formula, we add back the crossings between R and paths of 𝒬 which still exist in the instance (H,A)).

Therefore, with r(3kω52kω48)=s, there is a drawing of (H,A) with r crossings if and only if there is a drawing of (H¯,B) with γω(k)+r(3kω52kω48) crossings.

Proof of Corollary 1.3.

As sketched in the main body of the paper and illustrated in Figure 2; we can take an instance H=H1H2 of anchored crossing number as in Theorem 1.2, and construct a planar graph G0:=HC+ where C+ is a (multi)cycle on the 6 anchor vertices of H in the natural cyclic order, with m parallel edges between consecutive pairs of the vertices of C+. The parameter m is chosen “sufficiently large”, e.g., m2|E(H1)||E(H2)|2cr(H)a+1 in the worst-case scenario of H.

Let e1E(H1) and e2E(H2) be edges incident to anchor vertices and sharing a face in some optimal solution to the anchor crossing number cr(H)a, and subdivide ei with a new vertex vi for i=1,2. For simplicity, we use the same names H=H1H2 also for the subdivided graphs. Then cr(H)a=cr(H+f)a where f=v1v2. We first claim that cr(G0+f)=cr(H+f)a=cr(H)a. Indeed, cr(G0+f)cr(H)a is trivial. Assume that there is a drawing D of G0+f with at most cr(H)a<m/2 crossings. Then there is an uncrossed cycle C0C+ in D, and so the drawing of C0 bounds a disk such that D is an anchored drawing of H+f with cr(D)cr(H)a crossings, proving the claim.

Second, we note that there exists a fixed rotation scheme of the edges of G0 which is defined by the given drawings 𝒟1 and 𝒟2 of Theorem 1.2, and all optimal solutions to cr(H+f)a by Theorem 1.2, and hence also all optimal solutions to cr(G0+f) by the previous paragraph, respect this rotation scheme. Furthermore, G0 has a planar drawing which respects the same rotation scheme up to mirroring and except at the three anchor vertices A1V(H1) (informally, the subdrawing of H1 is “flipped out” of the multicycle C+ in the drawing of G0, as shown in Figure 2).

The last step of the proof is to construct a planar graph G from G0 such that all vertices of G except A1V(G) are of degree at most 3, and cr(G+f)=cr(G0+f). For this we apply the technique of “cubic grids”, used for instance in [6, 12, 1] previously. Let a cylindrical cubic grid (also called a cylindrical “wall”) of height h and length  be the following graph H: Start with the union of h cycles of length each, C1,,Ch, such that V(Ci)=(v1i,,vi) in this cyclic order, and add all edges {vji,vji+1} where 1i<m, 1j and i+j is odd. Then H is planar and all vertices of H are of degree 3, except every second vertex of C1 and of Ch. Let C1 be called the outer cycle of the grid H.

Let h=|E(G0)|2. We do the following, as illustrated in Figure 2. For every vertex vV(G0)A1 of degree d>3, we take a copy Hv of the cylindrical cubic grid of height h and length 2d, and attach every edge formerly starting in v to a distinct degree-2 vertex of the outer cycle of Hv, in the appropriate cyclic order of the aforementioned rotation scheme of G0. For the resulting graph G we argue as follows. First, by the assumption on the rotation scheme of G0, we immediately get cr(G+f)cr(G0+f). Second, in any assumed optimal solution to cr(G+f) which has less than cr(G0+f)<h/2 crossings, and for any vV(G0) replaced by Hv, one of the h cycles CiHv is uncrossed since the crossings affect at most 2cr(G+f)<h of these cycles. So, we may prolong every edge of G0 attached to Hv along a disjoint path in Hv towards Ci, then contract uncrossed Ci into a vertex (former vV(G0)) and obtain a drawing certifying cr(G0+f)cr(G+f).

4 Final Remarks

We have completely answered a question of the computational complexity of the anchored crossing number problem in its perhaps most “innocent” looking form, in which the input consists of a disjoint union of anchored planar graphs (the PP anchored crossing number problem). We have proved that the computational complexity jumps straight from near triviality with two anchors to 𝖭𝖯-hardness with three anchors.

We may also slightly relax the conditions in the PP anchored crossing number instances (H,A); instead of requiring H to be a disjoint union of two anchored planar graphs, we only require H to be a union of two anchored planar graphs which are disjoint except possibly at the anchors. Then it makes sense to consider less than 3+3=6 anchors in total, and indeed, this problem stays hard with 5 anchors in total, as can be seen from our reduction in Figure 4 in which we identify r0=b0. We believe one can go down to 4 or even 3 anchors in total, but a different reduction would probably be necessary.

Our result closely relates to the analogous question of the crossing number of almost planar graphs. There we see a slight complexity gap, while for almost planar graphs G+e with Δ(G)3 we know a linear-time algorithm, our new result implies (Corollary 1.3) that the latter problem becomes 𝖭𝖯-hard when G has three vertices of degree greater than 3. A big question remains about graphs G with one or two vertices of degree greater than 3. This particular question turns out to be surprisingly difficult (we have tried hard to provide at least a partial answer), and we can so far only make a conjecture:

Conjecture 4.1.

Let G be a planar graph such that at most two vertices of G are of degree greater than 3, and u,vV(G). Then one can compute the crossing number of the almost planar graph G+uv in polynomial time.

Figure 6: An example construction of an almost planar graph G+uv, such that only the two encircled vertices are of degree higher than 3, and that the gray regions stand for very dense rigid patches. While cr(G+uv)=1 (there is a drawing in which only the green edges cross each other), the best way of inserting the (red) edge uv into a planar drawing of G can be arbitrarily costly.

To slightly demonstrate nontriviality of the problem in Conjecture 4.1, we remark that if only one vertex of G is of degree more than 3, the gap between the crossing number and the best insertion of uv into a planar drawing of G (recall that this gap is null when Δ(G)3 [2]) can be arbitrarily large for sufficiently high values of cr(G+uv). With two vertices of degree more than 3, the gap is not even proportional:

Claim 4.2.

For any m there is a planar graph G with all vertices except two of degree at most 3, and u,vV(G) (Figure 6), such that cr(G+uv)=1 and there is no planar drawing of G into which the edge uv could be inserted with less than m crossings.

At last, we can change our viewpoint on the studied problem. While the results show that the crossing number problem of almost planar graphs is para-𝖭𝖯-hard when taking the number of vertices of degree greater than 3, what about considering the maximum degree as the parameter instead?

 Problem 4.3.

Let G be a planar graph such that the maximum degree of G is d, and u,vV(G). What is the parameterized complexity of computing cr(G+uv) with respect to the parameter d?

We believe this problem belongs to the class 𝖷𝖯; one possible approach could be to “guess” the rotation system of edges of G in 𝖷𝖯-time, and then, say, reduce the problem to cubic graphs – unfortunately, this does not preserve planarity of the modified graph G. We are not aware of any results in the direction of Problem 4.3, besides approximations in [8, 2]. However, recall that it is 𝖭𝖯-hard to compute the crossing number of general cubic graphs [6].

References

  • [1] Sergio Cabello. Hardness of approximation for crossing number. Discrete Comput. Geom., 49(2):348–358, March 2013. doi:10.1007/S00454-012-9440-6.
  • [2] Sergio Cabello and Bojan Mohar. Crossing number and weighted crossing number of near-planar graphs. Algorithmica, 60(3):484–504, 2011. doi:10.1007/S00453-009-9357-5.
  • [3] Sergio Cabello and Bojan Mohar. Adding one edge to planar graphs makes crossing number and 1-planarity hard. SIAM J. Comput., 42(5):1803–1829, 2013. doi:10.1137/120872310.
  • [4] Michael R. Garey and David S. Johnson. Crossing number is NP-complete. SIAM J. Algebr. Discrete Methods, 4(3):312–316, September 1983.
  • [5] Carsten Gutwenger, Petra Mutzel, and René Weiskircher. Inserting an edge into a planar graph. Algorithmica, 41(4):289–308, 2005. doi:10.1007/S00453-004-1128-8.
  • [6] Petr Hliněný. Crossing number is hard for cubic graphs. Journal of Comb. Theory, Ser. B, 96(4):455–471, 2006. doi:10.1016/j.jctb.2005.09.009.
  • [7] Petr Hliněný and Marek Dernár. Crossing number is hard for kernelization. In SoCG, volume 51 of LIPIcs, pages 42:1–42:10. Schloss Dagstuhl – Leibniz-Zentrum für Informatik, 2016. doi:10.4230/LIPICS.SOCG.2016.42.
  • [8] Petr Hliněný and Gelasio Salazar. On the crossing number of almost planar graphs. In GD, volume 4372 of Lecture Notes in Computer Science, pages 162–173. Springer, 2006. doi:10.1007/978-3-540-70904-6_17.
  • [9] Petr Hliněný and Gelasio Salazar. On hardness of the joint crossing number. In ISAAC, volume 9472 of Lecture Notes in Computer Science, pages 603–613. Springer, 2015. doi:10.1007/978-3-662-48971-0_51.
  • [10] John Hopcroft and Robert Tarjan. Efficient planarity testing. J. ACM, 21(4):549–568, October 1974. doi:10.1145/321850.321852.
  • [11] Bojan Mohar. On the crossing number of almost planar graphs. Informatica (Slovenia), 30(3):301–303, 2006. URL: http://www.informatica.si/index.php/informatica/article/view/97.
  • [12] Michael J. Pelsmajer, Marcus Schaefer, and Daniel Stefankovic. Crossing numbers of graphs with rotation systems. Algorithmica, 60(3):679–702, 2011. doi:10.1007/S00453-009-9343-Y.
  • [13] Adrian Riskin. The crossing number of a cubic plane polyhedral map plus an edge. Stud. Sci. Math. Hung., 31(4):405–413, 1996.
  • [14] Shih Wei-Kuan and Hsu Wen-Lian. A new planarity test. Theoretical Computer Science, 223(1):179–191, 1999. doi:10.1016/S0304-3975(98)00120-0.