Link Crossing Number is NP-hard

08/12/2019 ∙ by Arnaud de Mesmay, et al. ∙ DePaul University GIPSA-Lab 0

We show that determining the crossing number of a link is NP-hard. For some weaker notions of link equivalence, we also show NP-completeness.



There are no comments yet.


page 1

page 2

page 3

page 4

This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

1 Introduction

A knot is a simple closed curve in . A link is a collection of (disjoint) knots in , which we call components of the link. Two knots or links are called (link)-equivalent if there is an ambient isotopy between the two. From the very beginning, knots and links have been represented in using link diagrams, projections of the three-dimensional links to which are mostly injective, except for finitely many crossings which are labeled to distinguish which arc crosses over/under the other arc at the crossing. In drawings of link diagrams, the arc passing under is typically shown with a small gap, while the arc passing over the crossing is uninterrupted. Figure 1 shows crossing-minimal drawings of the unknot, a trefoil knot, which is a knot with at most three crossings which is not equivalent to the unknot, and the Hopf link, which has two crossings, but consists of two components (so is not a knot).

Figure 1: The unknot, a trefoil knot, and the Hopf Link.

Two of the fundamental problems of the theory of knots and links is determining whether two diagrams represent equivalent links, and finding a crossing-minimal drawing of a link. Both problems are hard in practice, P.G. Tait wrote in 1877 that “it appears that the problem of finding all the absolutely distinct forms of knots with a given number of intersections is a much more difficult one than I at first thought” [10, pg. 315]

, and the sentiment still resonates even though many more knots and links have been classified in the meantime.

Since the initial investigations into knots and links much research has been focussed on finding improved solutions to the equivalence and crossing number problem—see, for example, Sections 2 and 5 of Lackenby’s “Elementary Knot Theory” [5], but as far as we know there are no results formally showing that either of these problems is computationally hard.

In the current paper we show that determining the link crossing number is -hard. More precisely, given a link and an integer , determining whether , where is the smallest number of crossings in a link diagram representing a link equivalent to is -hard. Lackenby writes “[a]lthough there seems little hope of anything more than using a brute-force search to determine the crossing number of an arbitrary link,” [5, Section 52]. Our main result gives a theoretical justification to this claim.

Theorem 1.1.

Testing whether a link represented by a link diagram is equivalent to a link with at most crossings is -hard.

The theorem shows that the link crossing number problem is hard, but it does not classify the complexity of the problem exactly. The main hurdle towards an upper bound for the link crossing number problem seems to be that, at least on the surface of it, it requires to check whether two link diagrams are equivalent. While it is known that the equivalence problem for link diagrams is decidable, the best computational upper bound is not elementary (the best upper bound on the number of Reidemeister moves turning one diagram into the other is a tower of exponentials of depth depending on the total number of crossings [1], which is not an elementary function).

Remark 1.

Does the link crossing number problem remain -hard if the number of crossings is fixed? For , testing corresponds to recognizing the unknot (or unlink), as observed by Lackenby [5, Section 5.1], which places the problem in  [5, Section 3], making it unlikely to be -hard (since then and the polynomial hierarchy collapses). There is no link with .

More generally, if is a fixed number, then, by a result announced by Lackenby [5, Section 4.4], there is a polynomial so that a link diagram with crossings is equivalent to a link diagram with at most crossings if and only if there is a sequence of at most Reidemeister moves turning the diagram with crossings into a diagram with at most crossings. This implies that for any fixed , the problem of testing whether lies in . Since depends on , this is no longer true if is not bounded. ∎

We can weaken the notion of link equivalence to obtain various versions of the link crossing number problem which are still -hard, and some will be -complete. These results will be a corollary to the proof of Theorem 1.1. We use the notion of linking number, defined in Section 2.2.

We introduce the following link equivalencies: two links and are

  • parity-linking-number equivalent if there is a bijection between the components of and so that the parity of the linking number between any two components in is the same as the parity of the linking number between the corresponding components of (orientation does not matter because of parity),

  • linking-number equivalent if there is a bijection between the components of and so that the linking number between any two components in is the same as the linking number between the corresponding components of (for appropriate orientations),

  • link-homotopic if there exists a homotopy between and during which each component of is allowed to cross itself but such that no two distinct components are allowed to intersect.

  • link-concordant if there exists an embedding such that and .

Linking-number and parity-linking number equivalence are natural relaxations of link isotopy where one focuses on preserving the homology (respectively homology mod ) of the components with respect to each other. Link homotopy was introduced by Milnor [6] as a coarser way to compare and understand links. Link concordance was first introduced for knots by Fox and Milnor [2] and endows links with a stronger algebraic structure than the usual notion of isotopy. It is easy to see that link homotopy and link concordance preserve linking numbers, and thus parity-linking-number equivalence is coarser than all the other equivalence relations.

Corollary 1.2.

Testing whether a link represented by a link diagram is link-homotopic or concordant to a link with crossing number at most is -hard. Testing whether a link represented by a link diagram has a linking-number/parity-linking number equivalent link diagram with at most crossings is -complete.

One way to interpret the corollary is that the parity-linking structure of a link is what makes the link crossing number problem -hard in our proof.

The paper continues with a section on preliminaries on graph crossing number and knots, Section 2, followed by Section 3 containing proofs of Theorem 1.1, as well as Corollary 1.2.

2 Preliminaries

2.1 Graph Crossing Number

To show that the link crossing number problem is -hard, we use an -complete crossing number problem for graphs. In a drawing of a graph , vertices of are placed at distinct locations in the plane, and every edge is drawn as a simple curve connecting its endpoints. We assume that edges do not pass through vertices, at most two edges are involved in any crossing, and no two edges touch (intersect without crossing).

For a bipartite graph with , a bipartite drawing is a drawing of in which all vertices of lie on one line, all vertices of on a parallel line, and all edges lie strictly between those two lines. For a sample bipartite graph and a drawing, with crossings, see Figure 4. The bipartite crossing number of , , is the smallest number of crossings in any bipartite drawing of . The bipartite crossing number problem is -complete, and remains so under various restrictions (see entry on bipartite crossing number in [8]). To simplify the reduction, we work with a version of the problem in which is the disjoint union of graphs, consists of all degree vertices, and the order of the -vertices along their line is fixed.

Theorem 2.1 (Muñoz, Unger, and Vrťo [7, Theorem 1]).

Determining the bipartite crossing number of a bipartite graph in which all vertices in have degree , all vertices in have degree , and the order of the -vertices along their line is fixed, is -complete.

2.2 Linking and Weights

Two oriented knots have a linking number, a link invariant first introduced by Gauss. For a given link diagram with two oriented components and , the linking number is computed as follows: trace one of the components (in the direction of its orientation); start with a count of ; every time you cross : add if crosses under you from right to left, or crosses above you, from left to right. Otherwise, subtract . The resulting number divided by two is the linking number of and and it is a link-invariant, that is, it is the same for all diagrams realizing the oriented link.

Suppose that a component in a link diagram has a self-crossing. We can remove the self-crossing by smoothing it, i.e., cutting the component at the self-crossing, and reconnecting the ends locally so as to avoid the crossing. There are two ways of reconnecting the ends, but only one will result in a single component , we call that one the connected smoothing. If the component is oriented, we must reverse the orientation of part of the component when reconnecting it. There are two ways of doing this, but both result in the same underlying knot, with reverse orientations. In general, and will not be isotopic, but we do have the following lemma.

Lemma 2.2.

Given a link diagram realizing a link consisting of two oriented components and , the linking number of the two components does not change modulo if the orientation of either or both components is changed, or if one does a connected smoothing.

The lemma allows us to remove self-crossings in link diagrams, as long as we are only interested in maintaining the link crossing number modulo as an invariant.


Changing the orientation of a component does not affect the absolute value of the linking number, so is true in particular. To see we perform a connected smoothing in two steps. Suppose we have and so that has a self-crossing. Remove that self-crossing of and reconnect the ends at the self-crossing so now consists of two components and , both maintaining the original orientation of . Suppose has linking number with . If we reconnect to at the former self-crossing so that and form a new, single component, with the orientation along reversed, the linking number of with the former -part changes from to , while the linking number with remains unchanged. Therefore, the overall linking number changes by , which is zero modulo . ∎

We say two components in a link are unlinked (also called split) if the link is equivalent to a link diagram in which the components are disjoint. Otherwise, the knots are linked.

Since two disjoint components have linking number , we have the following result.

Lemma 2.3.

If the linking number of two components is different from modulo , then the two components are linked.

It is easy to construct two linked unknots whose linking number is , so the converse of the lemma is not true.

We also want to assign a linking number to two unoriented knots; to avoid confusion we call this the unsigned linking number, and we define it as the absolute value of the linking number of the two knots, for any orientation of the knots (since changing the orientation of a link only affects the sign of the linking number, this notion is well-defined).

To simplify the proof of the main result, we work with weighted links, that is, each component of the link is assigned an (integer) weight . A crossing between a component of weight with a component of weight is assigned a weight of (in the case of self-crossings, the two components are the same, so ). The weighted link crossing number of a weighted link diagram is the sum of the weights of all its crossings. For a weighted link given by a link diagram , the weighted link crossing number is the smallest weighted link crossing number of any diagram equivalent to .

While weights simplify the argument, we also need to be able to get rid of them. In graph drawing it is typically easy to replace a weighted curve by multiple, close, copies of the curve. With links we have the added complication that if a component contains a self-crossing (which it must if it is not the unknot), replacing it with multiple copies of the same component close-by will force crossings between the components, which will introduce crossings, throwing off the accounting. For this reason, we work with links made up of unknots drawn without self-crossings.

Lemma 2.4.

Given a weighted link with a link diagram in which all components are free of self-crossings (in particular, all components are unknots), we can (efficiently) construct a link , without weights, so that and there is a mapping from the components of to the components of so that and in are linked if and only if and are linked in and the linking number of and is the same as the linking number of and . Furthermore, the isotopy class of does not depend on the link diagram and only on the weighted link .


By assumption, all the components of are drawn as crossing-free unknots in . Construct by replacing each component of with parallel (concentric) copies. Since is drawn without crossings, we can draw each copy very close to and so that it behaves exactly the same way as with respect to all other components. The resulting drawing witnesses that . The mapping assigns to each copy in its original in .

The isotopy class of does not depend on the link diagram : topologically, the construction amounts to locally replacing (cabling) each component of with parallel copies so that they form a -component unlink, and there is a unique (up to isotopy) way to do so. ∎

2.3 Framework Gadgets

For the construction we need a device for enforcing order in a link diagram. We make use of a linked chain of unknots: an -chain is a link consisting of unknots equivalent to the link pictured in Figure 2, for the case , up to switching both the crossing types of successive crossings of two adjacent unknots. More precisely, an -chain is a link with components that has a diagram with crossings so that 1) no component has a self-crossing, 2) the -th and (modulo ) unknot have two crossings, one over and one under (in particular they have unsigned number ), and 3) there are no other crossings. See Figure 2 for a crossing-minimal drawing of a -chain.

Figure 2: An -chain, for .
Lemma 2.5.

Let be an -chain, . Then . If is a crossing-minimal link diagram of , then

  • any two consecutive components (in the chain) cross each other exactly twice,

  • there are no other crossings,

  • the two crossings a component has with another component are consecutive; that is, along each component, the four crossings with its two neighboring components do not interleave, and

  • there are two faces of each bounded by arcs, one arc from each component of , occurring in the reverse order as they do along the chain. We call these the inner and outer face of .

In other words, the diagram shown in Figure 2 is unique (up to a homeomorphism of the surface, and a change in crossing types).


Any two consecutive components of the chain have to cross, and, since they are closed curves, have to cross at least twice, so the crossings shown in Figure 2 are unavoidable. Since we are assuming that , there can be no additional crossings in , establishing both and . In particular, , and there are no self-crossings in .

Since , each component is involved in four crossings along its boundary with two other components along the chain, say and . If the four crossings interleave, then and must cross each other, which means, by , that they must be consecutive along the chain; since they both cross the same component this is not possible, since we assumed that . This establishes .

The two crossings between two consecutive components form a bigon. If we remove all the arcs involved in such bigons, we are left with two disjoint sequences of arcs, both in the same order as along the chain, and both bounding a (different) face of the diagram. ∎

We make use of -chains to build the framework for the reduction. Lemma 2.6 shows how we connect layers of the framework.

Suppose we have a sequence of chains of length , and one chain, , of length . Let , , , be the components in chain for and, for , any four consecutive components of . Add an unknot linking to for every , and in the way pictured in Figure 3. We call the resulting link a framework, the components belonging to chains are rings and the additional unknots linking them we call hinges. See Figure 3 for a sample framework with , and .

Figure 3: A framework, for and .
Lemma 2.6.

Let be a crossing-minimal drawing of a framework , with , and . Then . Moreover, up to a homeomorphism of the surface we can assume that

  • chain is drawn in the outer face of , for ,

  • we can draw an (open, simple) curve that crosses in that order, crossing each exactly twice; can be made to cross in any component not crossing a hinge if .

In other words, up to a homeomorphism and changes in crossing types, we can assume that the diagram looks as pictured in Figure 3.


Figure 3 illustrates how to draw . The rings contribute crossings between themselves, and the hinges add crossings to that. All of these crossings are unavoidable, so . In particular, there cannot be any additional crossings (including self-crossings).

By Lemma 2.5 that implies that each chain is drawn as described there, bounding two faces, and there is no crossing between two distinct chains. We cannot immediately assume that the two faces of each chain are inner and outer faces with regard to all chains, since the homeomorphisms for that may differ for each chain. The presence of the hinges resolves this issue, by forcing the chains to be laid out compatibly. Consider two consecutive chains, and , of the framework. Apply a homeomorphism so that bounds an inner and an outer face, and so that does not lie in the inner face. Then must lie in the outer face of , since otherwise the four hinges linking and cannot be drawn with at most crossings. We need to argue that lies in the inner face of . Because of the hinges, it must lie either in the inner or the outer face of , so let us consider, for a contradiction, that both and lie in the outer face of . Contracting arcs, it is easy to see that this would result in a planar drawing of the complete bipartite graph in which the four vertices of degree lie in the same face; this is not possible, since we could then add a vertex to that face, and connect it to each of the four vertices, yielding a planar drawing of a .111For this part of the proof, three hinges would be sufficient, however, we need the fourth hinge to ensure that does not lie inside a face bounded by arcs from three components only.

We conclude that the are drawn as concentric, disjoint chains, with being the outermost chain (this is arbitrary, of course, it could be innermost as well).

We can now start in the outer face of ; if , there is a knot in the chain which does not cross a hinge. Let cross through two arcs of that knot to reach the inner face of . This is also the outer face of . The hinges are disjoint, so can be continued to cross and so on, until it has reached the inner face of . ∎

3 NP-hardness of Link Crossing Number

In this section we prove Theorem 1.1 and Corollary 1.2. We start with the theorem.

Suppose we are given a bipartite graph in which all vertices in have degree , all vertices in have degree . We are also given an order of the -vertices and an integer . We want to efficiently construct a link diagram of a weighted link and a number so that the bipartite crossing number of is at most if and only if the weighted link crossing number of is at most if and only if the link crossing number of the unweighted link associated with is at most .

Figure 4: A sample bipartite graph in which all vertices of have degree , all vertices of have degree , and the order of the vertices in is fixed. The bipartite drawing has crossings. This is optimal for this graph (as long as the order of vertices in is unchanged).

We begin by constructing the framework for the reduction. Let and . Let , and let be the vertices of in the given order. We start with the framework . All components in , both ring-components and hinges, are assigned weight (all weights to be determined later). By Lemma 2.6, the weighted framework itself has crossing number .

We next add -guards which are (crossing-free) unknots linking the -th ring in to the -th ring in for . Within both rings we link the components crossed by (guaranteed to exist by Lemma 2.6). If we think of the rings and as having -height in the drawing, this determines how the guards cross over/under other rings: The guard linking and will pass under for and over for . The ring contains consecutive components which do not cross a hinge, we link a distinct unknot, called a -guard, with each such component. We number the -guards in the order that the chain-components they are linked to occur along the ring . We assign weight to all guard components.

Figure 5 illustrates that the framework, together with both types of guards, can be realized with , crossings, where .

Finally, we link the -th -guard with the -th -guard via an unknot if there is an edge in . We call the added unknots edge-links. Edge-links have weight each. The -height of the rings , again determines the over/under of crossings between the edge-links as well as edge-links and rings. Any part of the edge-link belonging to edge lies below any part of the edge-link belonging to for , and edge-links cross above the rings they cross. Call the resulting weighted link .

Figure 5: Link diagram of for the sample graph from Figure 4. Some underedges under two adjacent subarcs of the edge links have been omitted for clarity.

Consider an arbitrary ordering of the vertices in . Together with the fixed ordering of this determines a bipartite drawing of with a number of crossings. We can slide the -guards along the rings so their order (as seen along , the ring that all -guards have to cross) agrees with the ordering of vertices in ; here it matters that we can think of the rings as having -height, so and are at the same -height, and above later pairs of rings, that is, and with . The resulting diagram of has a weighted link crossing number of

where we use that for counting the crossings between edge-links and rings (we also need that extends to ); there are edge-links each resulting in four crossings with guards (two with each type); and every two edge-links that cross in result in four crossings in the diagram.

In summary: if has a bipartite drawing with crossing number at most , then there is a weighted link diagram of with at most crossings. The components of are drawn without self-crossings in this diagram, so we can apply Lemma 2.4 to obtain an unweighted link , and a drawing of with at most crossings. By construction, does not depend on the specific diagram of , but only on , and, thereby, on . This completes the description of the reduction from to (unweighted) link .

We would like to argue, for the other direction, that if has a drawing with at most crossings, then has a bipartite drawing with crossing number at most . We cannot directly argue that has a drawing with at most weighted crossings, since the typical graph-drawing arguments do not work (it is not immediately clear, for example, that the various components in corresponding to the same weighted component in can be combined so that they can be merged into a drawing of the weighted component; there may be self-crossings, and crossings between components, that make such arguments impossible).

Instead, we work with a different notion of link equivalence. Let be a drawing of a link which is parity-link equivalent to and having the smallest number of crossings. By assumption, that number is at most , since the drawing of qualifies.

By Lemma 2.2 we can assume that every component in is free of self-crossings (otherwise smoothing it would decrease the number of crossings without affecting parity-linking number equivalence). Let be a weighted component in . This component corresponds to (unweighted) components in . From each such group, pick the component with the fewest number of crossings, assign to it weight and remove all other components belonging to the group. This yields a weighted drawing which is parity-link-equivalent to , and with the same weights. Moreover, the weighted crossing number of is at most , since the crossing number did not increase.

While will not, in general, be a diagram of , we will now show that it is close enough to obtain a drawing of with at most crossings. Consider any two components , and of weight in

. If the parity of the linking number is odd, then

and must cross at least twice. Since and must also have crossed in , this means the weight components contribute at least crossings between each other to . Without these crossings, there remain at most weighted crossings. If we ensure that this number is less than , there can be no other crossings between two components of weight . In particular, any two weight- components cross either twice or not at all, exactly as they did in (as pictured in Figure 5).

Lemma 2.6 then allows us to conclude that the frame is drawn exactly as described (and shown in Figure 3). We next turn our attention to the guards. We know there are at most weighted crossing left, where . If we ensure that there can be no other crossings between rings and guards than the intended ones. That implies that rings and guards which cross, must cross two or four times: two times if they are linked, and four times if the guard passes under the ring, exactly as in the original . In particular, the framework is drawn as shown in Figure 5 (up to homeomorphism and crossing changes), for some ordering of the -guards. We are left with the contribution of the edge-links; as earlier, the crossings between edge links and rings and guards shown in Figure 5 are unavoidable, so they occur in the same way, contributing to the crossing number, leaving crossings involving edge-links. Thus, if , there can be no additional crossings between edge links and anything in the framework, and if , there can be no additional crossings between edge links and guards.

We can now use the drawing to read off a bipartite drawing of : Consider , and take the subarc that crosses each -guard exactly twice, and nothing else. Shrink each -guard to a vertex lying on the subarc . Similarly, shrink the -guards to vertices on a subarc of . Since -guards only cross the edge-links that are linked to them, these shrinkings do not create additional crossings between edge-links. And since edge-links do not cross nor , this yields a bipartite drawing of , where and are the the lines and where each edge is drawn using two arcs (the two arcs of the edge-link). Picking, for each edge, the arc with fewer crossings, we obtain a bipartite drawing of with at most crossings, which is what we had to show.

We still need to show that we can choose and satisfy the following four conditions:

  • ,

  • ,

  • , and

  • .

Using that and , we can upper bound the right-hand side of as , assuming that , so we can let to satisfy . The right-hand side of can be upper-bounded by , so we can satisfy by letting

. With these values, the four required estimates hold. This completes the proof of Theorem 


For Corollary 1.2 we observe that the -hardness proof above works identically for all the equivalence notion that we have introduced. Indeed, the first part of the proof builds a diagram of with crossing number at most from a drawing of with bipartite crossing number at most , and thus this is also a valid diagram for all the notions of equivalence. The second part of the proof shows that from any parity-linking number equivalent diagram of with crossing number , one can efficiently compute a bipartite drawing of with at most crossings. Since parity-linking number equivalence refines all the other notions of equivalence, combining both sides shows that, no matter the equivalence notion, has an equivalent link diagram with at most crossings if and only if has bipartite crossing number at most .

For -membership, it is easy to see that for parity-linking-number equivalent and linking-number equivalence, we can, in , find a diagram with at most a given number of crossings, and verify equivalence efficiently by computing linking numbers.

4 Conclusion

The construction on Theorem 1.1 depends on the interaction of the various components to encode the graph crossing number problem. Can the number of components be reduced, say to a logarithmic number, or even a constant, for example by using alternating knots that are forced to have certain layouts in crossing-minimal drawings? For a single component, we have the knot crossing number problem, for which we are not aware of any upper or lower bounds (other than the upper bound based on knot equivalence).

There is a natural weakening of link equivalence which is not captured by the proof of Theorem 1.1: call two links and linkedness-equivalent if and only if there is a bijection between the components of and so that any two components in are linked if and only if the corresponding components in are linked. The crossing number problem for linkedness-equivalence lies in , since both linkedness and non-linkedness lie in  [3, 4], so the link crossing number problem for linkedness-equivalence lies in (a basic fact from computational complexity [9]), but our proof does not directly yield -hardness of the link crossing number in this case, since the parity-linking number equivalence does not refine linkedness equivalence.

One intriguing question is based on link equivalence testing being a bottleneck in improving the upper bound on the link crossing number problem. Is testing link equivalence actually necessary? To make that precise: can the link diagram equivalence problem be reduced to the link crossing number problem? That would show that the bottleneck is essential, and cannot be removed.


  • [1] Alexander Coward and Marc Lackenby. An upper bound on Reidemeister moves. Amer. J. Math., 136(4):1023–1066, 2014.
  • [2] Ralph H. Fox and John W. Milnor. Singularities of -spheres in -space and cobordism of knots. Osaka Math. J., 3:257–267, 1966.
  • [3] Joel Hass, Jeffrey C. Lagarias, and Nicholas Pippenger. The computational complexity of knot and link problems. J. ACM, 46(2):185–211, 1999.
  • [4] Marc Lackenby. The efficient certification of knottedness and thurston norm. arXiv preprint arXiv:1604.00290, 2016.
  • [5] Marc Lackenby. Elementary knot theory. In Lectures on geometry, Clay Lect. Notes, pages 29–64. Oxford Univ. Press, Oxford, 2017.
  • [6] John Milnor. Link groups. Ann. of Math, 59(2):177–195, 1954.
  • [7] Xavier Muñoz, Walter Unger, and Imrich Vrťo. One sided crossing minimization is NP-hard for sparse graphs. In Graph drawing (Vienna, 2001), volume 2265 of Lecture Notes in Comput. Sci., pages 115–123. Springer, Berlin, 2002.
  • [8] Marcus Schaefer. The graph crossing number and its variants: A survey. The Electronic Journal of Combinatorics, 2013. Dynamic Survey 21 (last updated December 22nd, 2017.
  • [9] Uwe Schöning. A low and a high hierarchy within NP. J. Comput. System Sci., 27(1):14–28, 1983.
  • [10] P. G. Tait. On knots. Proc. R. Soc. Edinburgh, 9:306–317, 1877.