1 Introduction and Statement of Results

A graph G is a k-sphere graph if there are vectors v 1,…,v n ∈ℝk such that ∥v i v j ∥≤1 if and only if ijE(G). Alternatively, a k-sphere graph can be seen as the intersection graph of equal radius spheres in k-dimensional space; that is, we can represent each vertex i by a sphere S i ⊆ℝk of radius 1 in such a way that ijE(G) if and only if S i S j ≠∅. The sphericity  sph(G) of a graph G is the least k such that G is a k-sphere graph. (Every graph has finite sphericity [10].) Sphericity was first introduced by Havel [7] in his Ph.D. thesis to study the geometry of molecules. Graphs of sphericity one are also called unit interval graphs, and graphs of sphericity at most two are called unit disk graphs. Unit disk graphs have received considerable attention over the last two decades, in part because of their relevance to applications in wireless networks.

A k-dot product graph is a graph G that can be represented by vectors v 1,…,v n ∈ℝk such that ijE(G) if and only if \(v_{i}^{T}v_{j} \geq1\). The dot product dimension  dpd(G) of a graph G is the least k such that G is a k-dot product graph. (Every graph has finite dot product dimension [6].) Dot product representations of graphs were first introduced by Reiterman et al. [1618] and (independently, it seems) by Fiduccia et al. [6]. Here, it should be mentioned that Reiterman et al. used an arbitrary threshold t∈ℝ in their definition (i.e. ijE(G) if and only if \(v_{i}^{T}v_{j} \geq t\)). It is however straightforward to adapt our proofs to this definition and we fix t=1 for convenience. Graphs of dot product one are precisely the class of graphs that have at most two nontrivial connected components each of which is a threshold graph, cf. [6]. The class of threshold graphs has been studied quite extensively, cf. [11].

In this paper, we will consider two related types of questions. First, we study the algorithmic decision problems of recognizing k-sphere graphs and k-dot product graphs. Second, we analyse the number of bits needed to store the coordinates of the vectors v 1,…,v n ∈ℝk in a k-sphere or a k-dot product representation.

By k-SPHERICITY, we mean the problem of deciding, given a graph G as input, whether G has sphericity at most k. Put in different words, k-SPHERICITY is the recognition problem for k-sphere graphs. It is known that the k=1 version of this problem can be solved in linear time [9]. On the other hand, Breu and Kirkpatrick [4] proved that 2-SPHERICITY is NP-hard. Breu and Kirkpatrick used a rather complicated reduction from SATISFIABILITY, which crucially relies on a special embedding of instances of SATISFIABILITY on a 2-dimensional grid. They briefly sketched how a similar embedding on a 3-dimensional grid can also be obtained, showing NP-hardness of 3-sphericity, but were unable to extend this further and they conjectured that k-SPHERICITY is NP-hard for all remaining k. We prove their conjecture, by providing a simpler NP-hardness proof for 2-SPHERICITY that also extends to all higher dimensions.

Theorem 1

k-SPHERICITY is NP-hard for all k>1.

The proof of Theorem 1 builds upon techniques that appeared earlier in [13].

The decision problem k-DOT PRODUCT asks whether a given input graph has dot product dimension at most k. For k=1 it follows from a result of Fiduccia et al. (Theorem 20 in [6]) and a result of Chvátal and Hammer that this is solvable in linear time. Fiduccia et al. [6] asked whether this recognition problem is NP-hard for other values of k, and we affirm this.

Theorem 2

k-DOT PRODUCT is NP-hard for all k>1.

Rather than a reduction from (some variant of) SATISFIABILITY, the proofs of Theorems 1 and 2 follow a reduction from the so-called simple stretchability problem, to be defined in the next section.

Having determined that the decision problems of recognizing k-sphere graphs and k-dot product graphs are NP-hard, one might wonder whether these decision problems are members of the decision class NP. For this, we need a “polynomial certificate”. That is, for each graph that is a k-sphere (resp. k-dot product) graph, there is a proof of this fact that can be checked by an algorithm in polynomial time. An obvious candidate for such a certificate is the set of vectors v 1,…,v n of a k-sphere (resp. k-dot product) representation. For this to be a good certificate, we would however need to guarantee that v 1,…,v n can be stored using polynomially many bits.

Spinrad [22] also asked how many bits are needed to store the coordinates of a k-dot product graph, motivated by the so-called implicit graph conjecture of Kannan et al. [8]. This conjecture asserts that, for every hereditary graph class \({\mathcal{C}}\) (i.e. \({\mathcal{C}}\) is closed under taking induced subgraphs) such that the number of graphs on n vertices in \({\mathcal{C}}\) is 2O(nlnn), there exists a “labelling scheme” that encodes graphs in the class by assigning bit strings of length O(lnn) to the vertices in such a way that the adjacency of two vertices u,v can be tested by examining only the labels of u and v. It is easily shown that the number of k-sphere graphs (resp. k-dot product graphs) on n vertices is 2O(nlnn) by Warren’s Theorem, cf. [22]. A natural candidate for the labelling scheme would be to use the vectors v 1,…,v n of some k-sphere (resp. k-dot product) representation as the labels. For this to work, we would however need to guarantee that each of v 1,…,v n can be stored using only O(lnn) bits.

The bit size of a natural number n∈ℕ is the number of symbols needed to write it in binary notation. It satisfies

(1)

The bit size of an integer z∈ℤ is  size(z)=1+ size(|z|), as we need an extra bit for the sign. In this paper, we shall use the convention that a rational number is stored as a pair of integers (the denominator and numerator) that are relatively prime and these integers are stored in the binary number format. Following Basu et al. [2], we define the size of a rational number q=a/b∈ℚ with a,b∈ℤ relatively prime as

(2)

For a vector v∈ℚk, we set \(\mathop {\mathrm {size}}(v) :=\sum_{i=1}^{k} \mathop {\mathrm {size}}(v_{i})\).

We should remark that several other notions of the size of a rational number exist in the literature.

We are interested in the following quantities for G a k-sphere graph (resp. a k-dot product graph):

It may not be immediately clear to the reader that f k (G),g k (G) are well-defined, since this requires that every k-sphere or k-dot product graph has a representation with all coordinates of all vectors rational. That such a rational representation always exists follows from (the proofs of) the upper bounds in Theorems 3 and 4 below. Let us set

and

We will show that there are k-sphere graphs that require exponentially many bits, but exponentially many bits are always enough.

Theorem 3

For every k>1, there exist c 1,c 2>0 such that

Here is should be mentioned that the special case when k=2 of Theorem 3 was previously proved by McDiarmid and the second author [12], and a slightly weaker lower bound for the case k=2 of \(f_{2}(n) \geq2^{\varOmega(\sqrt{n})}\) was previously proved in [13], the conference version of [12].

We also show that the analogous result holds for k-dot product graphs.

Theorem 4

For every k>1, there exist c 1,c 2>0 such that

Theorems 3 and 4 show that the vectors of a k-sphere representation or of a k-dot product representation cannot be used as a labelling scheme to prove a special case of the implicit graph conjecture. They also cannot serve as certificates to prove membership in NP of the recognition problems.

2 Preliminaries

A line arrangement is a system \({\mathcal{L}}:= (\ell_{1}, \ldots, \ell_{n})\) of lines in the plane. If every two lines intersect and no point lies on more than two lines, then we call \({\mathcal{L}}\) a simple line arrangement (or, also, a uniform line arrangement). See Fig. 1 for a depiction of a non-simple and a simple line arrangement.

Fig. 1
figure 1

A non-simple and a simple line arrangement

A line divides ℝ2 into two pieces. In an orientation of , we distinguish between these two pieces by (arbitrarily) calling one of them, , the “negative side” and the other, +, the “positive side”. An oriented line arrangement is a line arrangement for which all the lines have been given an orientation.

For convenience, from now on we shall only work with oriented line arrangements. The sign vector of a point p∈ℝ2 with respect to an oriented line arrangement \({\mathcal{L}}= (\ell_{1},\ldots,\ell_{n})\) is a vector σ(p)∈{−,0,+}n defined as follows:

The combinatorial description \({\mathcal{D}}({\mathcal{L}})\) of \({\mathcal{L}}\) is the set of all sign vectors

The set \({\mathcal{D}}({\mathcal{L}})\) is almost the same thing as the set of covectors of an oriented matroid and in fact it determines the oriented matroid associated with \({\mathcal{L}}\). (Consult the monograph on oriented matroids by Björner et al. [3] for more details.) It should be mentioned that various alternative combinatorial descriptions of a line arrangement are available, such as local sequences, allowable sequences and wiring diagrams (cf. [5]).

Each connected component of ℝ2∖( 1∪⋯∪ n ) is called a cell or a region. All points in the same cell have the same sign vector, which does not have 0 as a coordinate. A sign vector with two or more zeroes corresponds to an intersection point between two or more lines, and a sign vector with exactly one zero corresponds to a line segment.

If \({\mathcal{D}}({\mathcal{L}}) = {\mathcal{D}}({\mathcal{L}}')\), then we say that \({\mathcal{L}}\) and \({\mathcal{L}}'\) are isomorphic. We will use a number of relatively straightforward observations about (oriented) line arrangements in our proofs below. For completeness, we include their proofs in the Appendix.

figure a

Lemma 5

Let \({\mathcal{L}}\) be a line arrangement. Then there exists \(\sigma\in {\mathcal{D}}({\mathcal{L}})\cap\{-,+\}^{n}\) such that \(-\sigma\in {\mathcal{D}}({\mathcal{L}})\cap\{-,+\}^{n}\).

Lemma 6

A line arrangement on n lines has at most cells, and it is simple if and only if it has exactly cells.

Lemma 7

Let \({\mathcal{L}}\) be a simple oriented line arrangement, and let \({\mathcal{L}}'\) be an oriented line arrangement with the same number of lines. Then \({\mathcal{L}}\) and \({\mathcal{L}}'\) are isomorphic if and only if \({\mathcal{D}}({\mathcal{L}}) \cap\{-,+\}^{n} = {\mathcal{D}}({\mathcal{L}}') \cap\{-,+\}^{n}\).

Similarly to a line arrangement in the plane, a k-hyperplane arrangement \({\mathcal{H}}= (h_{1},\ldots,h_{n})\) is a system of (affine) hyperplanes in ℝk. We define a cell, an orientation, a sign vector and the combinatorial description in precisely the same way as for lines.

Recall that an affine transformation T:ℝk→ℝk is a linear transformation followed by a translation. Put differently, it is a map of the form xAx+b, where A is a nonsingular k×k matrix, and b∈ℝk is a (constant) vector. We will need the following observation in the sequel. The straightforward proof can again be found in the Appendix.

Lemma 8

Let \({\mathcal{H}}\) be an oriented k-hyperplane arrangement, and let T:ℝk→ℝk be an affine transformation. Define another oriented k-hyperplane arrangement by setting

Then \({\mathcal{H}}\) and \({\mathcal{H}}'\) are isomorphic.

STRETCHABILITY is the problem of deciding, given a set S⊆{−,0,+}n, whether S is the combinatorial description of some oriented line arrangement of n lines. We can also define an orientation and a combinatorial description for an arrangement \({\mathcal{C}}= (c_{1},\ldots, c_{n})\) of continuous curves (that satisfy some regularity conditions) in the same way. The name “stretchability” now comes from the idea that we may ask, for an oriented system of curves in the plane, whether there is a line arrangement with the same combinatorial description. In this case, we may imagine the curves “stretching” into lines.

Similarly, SIMPLE STRETCHABILITY is the problem of deciding, given a set S⊆{−,0,+}n, whether S is the combinatorial description of some oriented simple arrangement of n lines.

Theorem 9

(Shor [21])

SIMPLE STRETCHABILITY is NP-hard.

This theorem is also a straightforward corollary of a deep topological result by Mnëv [14]. Shor’s proof is more direct. It reduces a SAT-variant to stretchability using Pappus’ and Desargues’ theorems, cf. Chap. 8 of [3].

3 The Proofs

For the NP-hardness proofs, it will be useful to define an intermediate decision problem. For k>1 and S⊆{−,+}n with (−,…,−),(+,…,+)∈S, we say that S is k-realizable if there exists an oriented k-hyperplane arrangement \({\mathcal{H}}\) with \(S \subseteq {\mathcal{D}}({\mathcal{H}})\). The condition that (−,…,−),(+,…,+)∈S is useful for technical reasons later on in the proofs of Theorems 1 and 2. For k>1, we let k-REALIZABILITY denote the algorithmic problem of deciding, given a set S⊆{−,+}n as input, whether S is k-realizable.

Theorem 10

k-REALIZABILITY is NP-hard for all k>1.

The proof of Theorem 10 relies on the following observation:

Lemma 11

Let S⊆{−,+}n with (−,…,−),(+,…,+)∈S and k>1 be arbitrary and set S′:=S×{−,+}. Then S is k-realizable if and only if Sis (k+1)-realizable.

Proof

Let k, S, S′ be as in the statement of the lemma. Let us first suppose that there exists an oriented hyperplane arrangement \({\mathcal{H}}= (h_{1},\ldots, h_{n})\) in ℝk such that \(S \subseteq {\mathcal{D}}({\mathcal{H}})\). Define a new hyperplane arrangement \({\mathcal{H}}'\) by

for i=1,…,n, and

(3)

For each sS, there exists p∈ℝk such that \(\sigma_{{\mathcal{H}}}(p)=s\). If we set p 1=(p,−1) p 2=(p,1), then clearly \(\sigma_{{\mathcal{H}}'}(p_{1}) = (s,-)\) and \(\sigma_{{\mathcal{H}}'}(p_{2}) = (s,+)\). Thus, \(S' \subseteq {\mathcal{D}}({\mathcal{H}}')\), as required.

Now, suppose that \(S' \subseteq {\mathcal{D}}({\mathcal{H}}')\) for some (k+1)-hyperplane arrangement \({\mathcal{H}}'\). By Lemma 8, we can also assume without loss of generality that (3) holds. Let us define a k-hyperplane arrangement \({\mathcal{H}}= (h_{1},\ldots, h_{n})\) by identifying ℝk with ℝk×{0} in the obvious way and setting

(4)

It is not immediately clear that each h i is a k-hyperplane, since we might have h i =∅, in case \(h_{i}'\) and \(h_{n+1}'\) happen to be parallel, or h i =ℝk, in case \(h_{i}'\) and \(h_{n+1}'\) coincide. However, if none of these two cases holds, then \(\dim_{{\mathbb{R}}^{k+1}}(h_{i}'\cap h_{n+1}') = k-1\) so that h i is a well-defined hyperplane in ℝk. We shall see soon that this is in fact the case for all i=1,…,n.

Let sS be arbitrary, and let us write s 1=(s,−),s 2=(s,+). Pick p 1,p 2∈ℝk+1 such that \(\sigma_{{\mathcal{H}}'}(p_{i}) = s_{i}\). Then \(p_{1} \in(h_{n+1}')^{-}\) and \(p_{2} \in(h_{n+1}')^{+}\), so that the segment [p 1,p 2] must intersect \(h_{n+1}' = {\mathbb{R}}^{k}\times\{0\}\) at some point p′=(p,0). It is clear that \(\sigma_{{\mathcal{H}}'}(p') = (s,0)\) and hence \(\sigma_{{\mathcal{H}}}(p) = s\).

It remains for us to show that the h i are well-defined hyperplanes in ℝk. To this end, recall that (−,…,−),(+,…,+)∈S. Let p,q∈ℝk be points with \(\sigma_{{\mathcal{H}}}(p) = (-,\ldots,-)\), \(\sigma_{{\mathcal{H}}}(q) = (+,\ldots,+)\) and let be the line between p,q. Then \(\ell\subseteq {\mathbb{R}}^{k} = h_{n+1}'\) and hits all of \(h_{i}^{-}\), h i , \(h_{i}^{+}\) for each i=1,…,n. Hence, we cannot have h i =∅ or h i =ℝk so that h i is a well-defined k-hyperplane. □

Proof of Theorem 10

We shall start by considering the case when k=2. For k=2, we shall use a reduction from SIMPLE STRETCHABILITY. Let D⊆{−,0,+}n be some set of sign vectors. We need to construct, in polynomial time, a set S⊆{−,+}n such that S is 2-realizable if and only if the answer to SIMPLE STRETCHABILITY with input D is “yes”.

We can assume that . This is because, if , then the answer to the SIMPLE STRETCHABILITY-instance is “no” by Lemma 6. We can certainly determine if in polynomial time, and if so we can simply output a set S⊆{−,+}n which we know is not 2-realizable. Similarly, we can assume that there is some sD∩{−,+}n such that −sD. (We can check for the existence of such a pair in polynomial time, and non-existence of such a pair would imply that the answer to the SIMPLE STRETCHABILITY-instance is “no” by Lemma 5.)

Now, let us pick such a pair s,−sD∩{−,+}n and let f:{−,0,+}n→{−,0,+}n denote the map that changes + to − and changes − to + in all coordinates i where s i =+ and leaves all other coordinates unchanged. Let us set D′:={f(t):tD}. Note that f(s)=(−,…,−) and f(−s)=(+,…,+). If \(D = {\mathcal{D}}({\mathcal{L}})\) for some line arrangement, then D′ corresponds to a “reorientation” (i.e. switching the roles of \(h_{i}^{-}\) and \(h_{i}^{+}\) for some indices i). Thus, \(D = {\mathcal{D}}({\mathcal{L}})\) for some simple oriented line arrangement \({\mathcal{L}}\) if and only if \(D' = {\mathcal{D}}({\mathcal{L}}')\) for some simple oriented line arrangement \({\mathcal{L}}'\). (D′ is constructed from D to ensure the technical promise that (−,…,−),(+,…,+)∈S given earlier.)

We now set S=D′∩{−,+}n. We claim that S is 2-realizable if and only if \(D = {\mathcal{D}}({\mathcal{L}})\) for some simple oriented line arrangement \({\mathcal{L}}\).

To see this, first note that if \(D = {\mathcal{D}}({\mathcal{L}})\) for some simple \({\mathcal{L}}\), then S is 2-realizable by construction. Let us thus assume that S is 2-realizable. By Lemma 6, there is a simple \({\mathcal{L}}\) such that \(S \subseteq {\mathcal{D}}({\mathcal{L}})\). Lemma 7 now implies that \({\mathcal{D}}({\mathcal{L}}) = D'\). But then we also have that D is the combinatorial description of some simple oriented line arrangement. Thus, S is 2-realizable if and only if D is the combinatorial description of a simple oriented line arrangement, as claimed. Since all the steps above to produce S from D can clearly be implemented in polynomial time, this proves the theorem for k=2.

Let us now consider the case k>2, and suppose that we have already shown that (k−1)-REALIZABILITY is NP-hard. Since it is clear that we can construct S′=S×{−,+} in polynomial time from S, it is a direct consequence of Lemma 11 that k-REALIZABILITY is also NP-hard. □

To prove Theorems 1 and 2, we will also need the following technical lemma.

Lemma 12

Let ε>0, K>0 be arbitrary, and let \({\mathcal{H}}\) be an oriented hyperplane arrangement with \((-,\ldots,-), (+,\ldots,+) \in {\mathcal{D}}({\mathcal{H}})\). Then there exists \({\mathcal{H}}'\) with the following properties.

  1. (i)

    \({\mathcal{D}}({\mathcal{H}}') = {\mathcal{D}}({\mathcal{H}})\).

  2. (ii)

    The origin 0 belongs to the (−,…,−)-cell of \({\mathcal{H}}'\).

  3. (iii)

    For each oriented hyperplane \(h_{i}'\) of \({\mathcal{H}}'\), we can write

    withv i e 1∥<ε (where e 1=(1,0,…,0)).

  4. (iv)

    Every cell of \({\mathcal{H}}'\) intersects the ball B((K,0,…,0)T,ε).

Proof

The proof is by means of repeated applications of Lemma 8. By using a suitable scaling zλz if needed, we can ensure that every cell of \({\mathcal{H}}\) intersects the ball B(0,ε/2) of radius ε/2 around the origin. In particular, there are points p,qB(0,ε/2) such that σ(q)=(−,…,−), σ(p)=(+,…,+). Let denote the line through p and q. Notice that all the hyperplanes h 1,…,h n must intersect in the open segment (p,q).

Let r be the connected component of ∖(p,q) that contains q. Thus, r is a “ray” emanating from q. All points of r must have sign vector (−,…,−) (since none of the hyperplanes h 1,…,h n hits r). By applying a suitable translation followed by a rotation, we can map q to the origin 0 and r to the nonnegative e 1-axis {(x,0,…,0):x≤0}. Notice that now, since we have translated over a distance of ∥q∥<ε/2, every cell intersects B(0,ε). Also, notice that the positive e 1-axis intersects each of the hyperplanes h 1,…,h n .

Next, we will rescale only the e 1-axis to make all hyperplanes have normals that are close to the e 1-vector. To see that this can be done, let v 1,…,v n be vectors and c 1,…,c n be constants such that

Note that, since \(\underline{0} \in h_{i}^{-}\), we have c i >0 for all i. Similarly, since \((x,0,\ldots,0)\in h_{i}^{-}\) for all x≤0, we must then also have (v i )1≥0. Also, note that, since e 1 is not parallel to h i (recall that h i intersects the positive e 1-axis), we must have (v i )1≠0 for all i. Now, let T denote the linear transformation T:(z 1,…,z n )↦(λz 1,z 2,…,z n ), for some λ>0. Then we obtain

Let us write

Clearly, \(h_{i}' = \{ z : u_{i}^{T} z = d_{i} \}\). Now, note that u i e 1 as λ↘0. Thus, if we take λ sufficiently small, then we obtain ∥u i e 1∥<ε for all i. Notice that, since we have merely “scaled down” the e 1-coordinate of all points in ℝk, it still holds that every cell intersects B(0,ε) and the nonpositive e 1-axis belongs to the all-minus cell.

Finally, if we apply the translation zz+Ke 1, then it is clear that the normals of the hyperplanes do not change and the ball B(0,ε) is mapped into B((K,0,…,0)T,ε). Hence, every cell now hits B((K,0,…,0)T,ε). Moreover, the origin still lies in the cell corresponding to (−,…,−), since the nonpositive e 1-axis was mapped onto {(x,0,…,0):xK}. □

Proof of Theorem 1

We will use a reduction from k-REALIZABILITY. Thus, given a set S⊆{−,+}n with (−,…,−),(+,…,+)∈S, we will construct (in polynomial time) a graph G such that G is a k-sphere graph if and only if \(S \subseteq {\mathcal{D}}( {\mathcal{H}})\) for some oriented k-hyperplane arrangement \({\mathcal{H}}\).

Given S⊆{−,+}n, let G=G(S) be a graph on 2n+|S| vertices which is defined as follows. Let V(G)=ABC, where A={a 1,…,a n }, B={b 1,…,b n } and C={c σ :σS}. The edge set of G is as follows:

  • a i a j ,b i b j E(G) for all 1≤i<jn;

  • a i b j E(G) for all 1≤i,jn;

  • c σ c τ E(G) for all στS;

  • a i c σ E(G) if and only if σ i =−;

  • b i c σ E(G) if and only if σ i =+.

It should be clear that G(S) can be constructed in polynomial time. It remains to show that G is a k-sphere graph if and only if there exists a k-hyperplane arrangement \({\mathcal{H}}\) such that \(S\subseteq {\mathcal{D}}({\mathcal{H}})\).

First, suppose that G can be realized as a k-sphere graph. That is, there is a function v:V(G)→ℝk such that ∥v(s)−v(t)∥≤1 if and only if stE(G). Let us define a hyperplane arrangement \({\mathcal{H}}\) as follows:

(5)

Notice that, for each σS, if σ i =−, then v(c σ )∈B(v(a i ),1)∖B(v(b i ),1). So v(c σ ) is closer to v(a i ) than to v(b i ) and hence it lies in \(h_{i}^{-}\). Completely analogously, \(v(c_{\sigma}) \in h_{i}^{+}\) if σ i =+. This shows that \(S\subseteq {\mathcal{D}}({\mathcal{H}})\).

Next, suppose that there exists \({\mathcal{H}}\) with \(S \subseteq {\mathcal{D}}({\mathcal{H}})\). We can assume that \({\mathcal{H}}\) satisfies the conclusions of Lemma 12 with K:=1000 and ε:=1/1000. Let v 1,…,v n and c 1,…,c n be as provided by part (iii) of Lemma 12. For notational convenience, let us write B:=B((K,0,…,0)T,ε) and u i :=v i /∥v i ∥. It follows from ∥v i e 1∥≤ε that

(6)

For each σS, let w(c σ ) be a point of B with sign vector σ with respect to \({\mathcal{H}}\). For each i=1,…,n, let p i be a point of h i B. (To see that such a point exists, note that B contains a point of \(h_{i}^{-}\) and a point of \(h_{i}^{+}\). The segment between these two points must hit h i .) For r>0, let us set

and

figure b

Notice that \(B_{i,r}^{-} \subseteq h_{i}^{-}\) and \(B_{i,r}^{+}\subseteq h_{i}^{+}\). Moreover, if r′>r, then

Also, note that

figure c

Hence, for all large enough r, it must hold that \(w( c_{\sigma}) \in B_{i,r}^{-}\) for all i and all σ with σ i =−, and \(w( c_{\sigma}) \in B_{i,r}^{+}\) for all i and all σ with σ i =+. Let us choose such an r, and set \(w(a_{i}) := w_{i,r}^{-}, w(b_{i}) := w_{i,r}^{+}\) for all i=1,…,n.

If we now set v(t)=w(t)/r for all tV(G), then we see that ∥v(a i )−v(c σ )∥≤1 if and only if σ i =−, and ∥v(b i )−v(c σ )∥≤1 if and only if σ i =+. Moreover, since w(c σ ),w(c τ )∈B,

for all σ,τS. Similarly, we find

where we have used (6), and

Thus, v(⋅) defines a good representation of G as a k-sphere graph and we are done. □

Proof of Theorem 2

We again use a reduction from k-REALIZABILITY. Given S⊆{−,+}n with (−,…,−),(+,…,+)∈S, let G=G(S) be a graph on n+|S| vertices which is defined as follows. Let us write V(G)=AB, where A={a 1,…,a n } and B={b σ :σS}. The edge set of G is as follows:

  • a i a j E(G) for all 1≤i<jn;

  • b σ b τ E(G) for all στS;

  • b σ a i E(G) if and only if σ i =+.

It should be clear that G can be constructed from S in polynomial time. It remains to show that G is a k-dot product graph if and only if there exists a k-hyperplane arrangement \({\mathcal{H}}\) with \(S \subseteq {\mathcal{D}}({\mathcal{H}})\).

First, let us assume that G is a k-dot product graph. Thus, there is a function v:V(G)→ℝk such that v(s)T v(t)≥1 if and only if stE(G). For each i=1,…,n, let c i be a number with

(7)

This choice of c i ensures that v(a i )T v(b σ )<c i if σ i =−, and v(a i )T v(b σ )>c i if σ i =+. Now, let the oriented hyperplane arrangement \({\mathcal{H}}\) be defined by

Under this definition, it is clear that, for each σS, the sign vector of v(b σ ) with respect to \({\mathcal{H}}\) is exactly σ.

Now, suppose that there exists some \({\mathcal{H}}\) such that \(S \subseteq {\mathcal{D}}({\mathcal{H}})\). We may assume that \({\mathcal{H}}\) satisfies the conditions of Lemma 12 with K:=1000, ε:=1/k. Let v 1,…,v n and c 1,…,c n be as provided by part (iii) of Lemma 12. For notational convenience, let us write B:=B((K,0,…,0),ε).

For each σS, let us pick a vector v(b σ )∈B such that v(b σ ) has sign vector σ with respect to \({\mathcal{H}}\). For each i=1,…,n, let us set v(a i ):=v i /c i . It is clear that

for all σ,τ and that v(a i )T v(b σ )≥1 if and only if σ i =+.

We now claim that ∥v(a i )∥<1 for all i. To see this, recall that by part (iv) of Lemma 12 there is some pB such that (σ(p)) i =− and hence \(c_{i} >v_{i}^{T} p\). Since ∥v i e 1∥<ε, we have

As ∥v i ∥<1+ε, we indeed obtain

(Here we used that, since the origin lies in the all-minus cell, we have c i >0 for all i=1,…,n.) This proves the claim that ∥v(a i )∥<1 for all i, which in turn gives that v(a i )T v(a j )<1 for all i,j.

Thus, we have constructed a valid k-dot product representation of G, which concludes the proof. □

We now turn our attention towards the proofs of Theorems 3 and 4. For the upper bound on the bit sizes, we will use a result by Basu, Pollack and Roy. The following is a reformulation of Theorem 1.3.5 of [1]:

Theorem 13

[1]

For each d,τ∈ℕ, there exists a constant C=C(d,K) such that the following holds. Suppose that \({\mathcal{F}}\) is a set of polynomials in n variables, each with degree at most d and with integer coefficients of bit size at most τ. If there exists a solution (x 1,…,x n )∈ℝn of the system \(\{ f(x) > 0 : f \in {\mathcal{F}}\}\), then there also exists one with each x i a rational x i =a i /b i with  size(a i ), size(b i )≤τd Cn.

Proof of the upper bound in Theorem 3

The vectors v 1,…,v n ∈ℝk form a k-sphere representation of G if and only if they satisfy the following set of inequalities:

(8)

Suppose they do. Now, notice that, if we “shrink” the vectors very slightly (i.e. if we put \(v_{i}' := \lambda v_{i}\) for some λ<1 but λ very close to 1), then we obtain a representation in which all inequalities of (8) are strict. Observe that all degrees of the polynomials in (8) are two, and all coefficients are at most two in absolute value.

Since the inequalities can be taken strict, we can apply Theorem 13 and find a solution v 1,…,v n of (8) such that each coordinate of each v i is a rational number a/b with  size(a), size(b)≤2O(n). Hence, the sum of the bit sizes of the coordinates is no more than 2kn2O(n)=2O(n). This concludes the proof. □

Proof of the upper bound in Theorem 4

The vectors v 1,…,v n ∈ℝk form a k-dot product representation of G if and only if

(9)

Suppose they do. By “expanding” very slightly (i.e. by multiplying all vectors by the same scalar λ>1 with λ very close to 1), we get a solution of (9) for which all inequalities are strict. We now proceed completely analogously to the proof of Theorem 3. □

An intersection point of a k-hyperplane arrangement \({\mathcal{H}}\) is a point that is the unique point common to a subset of the hyperplanes of \({\mathcal{H}}\). That is, there are hyperplanes \(h_{i_{1}}, \ldots, h_{i_{m}} \in {\mathcal{H}}\) such that

Let us observe that we can always take such a subset to consist of precisely m=k hyperplanes. Let \(i({\mathcal{H}})\) denote the set of intersection points of \({\mathcal{H}}\).

The span \(\mathop {\mathrm {span}}({\mathcal{H}})\) of a hyperplane arrangement \({\mathcal{H}}\) denotes the ratio of the largest distance between two distinct intersection points to the smallest non-zero distance between two intersection points. That is,

The proof of the lower bound makes use of the following recent result of McDiarmid and the second author [12] (the result stated is an immediate corollary of Theorem 3.2 in [12]):

Theorem 14

[12]

There exist universal constants α,β such that the following holds. For every r∈ℕ, there exists nαr and a set S⊆{−,+}n with |S|≤βr such that

  1. (i)

    there exists a line arrangement \({\mathcal{L}}\) with \(S\subseteq {\mathcal{D}}({\mathcal{L}})\), and

  2. (ii)

    \(\mathop {\mathrm {span}}({\mathcal{L}}) \geq2^{2^{r}}\) for every line arrangement with \(S\subseteq {\mathcal{D}}({\mathcal{L}})\).

This result has the following corollary.

Corollary 15

For every k>1, there exist α=α(k), β=β(k)>0 such that the following holds. For every r∈ℕ, there exists nαr and a set S⊆{−,+}n such that |S|≤βr and

  1. (i)

    (−,…,−),(+,…,+)∈S,

  2. (ii)

    there exists a k-hyperplane arrangement \({\mathcal{L}}\) with \(S \subseteq {\mathcal{D}}({\mathcal{L}})\), and

  3. (iii)

    \(\mathop {\mathrm {span}}({\mathcal{L}}') \geq2^{2^{r}}\) for every k-hyperplane arrangement \({\mathcal{L}}'\) with \(S \subseteq {\mathcal{D}}({\mathcal{L}}')\).

Proof

We start with the case k=2. Let α,β be as in Theorem 14. Let r∈ℕ be arbitrary, and let n=n(r), S=S(r) as provided by Theorem 14. Let \({\mathcal{L}}\) be an oriented line arrangement with \(S \subseteq {\mathcal{D}}({\mathcal{L}})\). By Lemma 5, we can find a pair \(s,-s \in {\mathcal{D}}({\mathcal{L}})\). It is clear that, if we set S′:=S∪{s,−s}, then S′ still has properties (i) and (ii) of Theorem 14.

Recall that in a reorientation of \({\mathcal{L}}\) we switch the roles of \(\ell_{i}^{-}\) and \(\ell_{i}^{+}\) for some indices i. Thus, a reorientation certainly preserves \(\mathop {\mathrm {span}}({\mathcal{L}})\). Let f:{−,0,+}n→{−,0,+}n be the “reorientation” map from the proof of Theorem 10 with s↦(−,…,−) and −s↦(+,…,+), and set S′:=f[S∪{s,−s}]. Then |S′|≤βr+2≤2βr. Moreover, any oriented line arrangement \({\mathcal{L}}'\) with \(S' \subseteq {\mathcal{D}}({\mathcal{L}}')\) can be reoriented (via the same map f, in fact) to an oriented line arrangement \({\mathcal{L}}\) with \(S \cup\{s,-s\} \subseteq {\mathcal{D}}({\mathcal{L}})\). Hence, any such oriented line arrangement has \(\mathop {\mathrm {span}}({\mathcal{L}}') \geq 2^{2^{r}}\). This proves the case k=2 of Corollary 15 with α(2):=α,β(2):=2β.

Let us now assume that Corollary 15 has been proved for k≥2. Let r∈ℕ be arbitrary, and let α(k), β(k), n=n(k,r), S=S(k,r) be as provided by the case k of Corollary 15. Let us set

These choices clearly satisfy n(k+1,r)≤α(k+1)r, |S(k+1,r)|≤β(k+1)r and (−,…,−),(+,…,+)∈S(k+1,r). By Lemma 11, there is at least one oriented (k+1)-hyperplane arrangement \({\mathcal{H}}'\) such that \(S' \subseteq {\mathcal{D}}({\mathcal{H}}')\). This shows part (ii) of Corollary 15 also holds. It remains to show part (iii).

Now, let \({\mathcal{H}}'\) be an arbitrary oriented (k+1)-hyperplane arrangement \({\mathcal{H}}'\) with \(S' \subseteq {\mathcal{D}}({\mathcal{H}}')\). Let us apply an isometry T:ℝk→ℝk that maps \(h_{n+1}'\) to ℝk−1×{0}. Since T is an isometry, this does not affect \(\mathop {\mathrm {span}}({\mathcal{H}}')\). If the oriented k-hyperplane arrangement \({\mathcal{H}}\) is defined as in (4), then the proof of Lemma 11 shows that \(S \subseteq {\mathcal{D}}({\mathcal{H}})\) and hence \(\mathop {\mathrm {span}}({\mathcal{H}}) \geq2^{2^{r}}\). Now, let \(p \in i({\mathcal{H}})\) be arbitrary. Then p is the unique intersection point of some k-hyperplanes \(h_{i_{1}}, \ldots, h_{i_{k}}\) of \({\mathcal{H}}\). Thus, we can write

Hence, we also have \(p\in i({\mathcal{H}}')\). Since p was arbitrary, we have \(i({\mathcal{H}}) \subseteq i({\mathcal{H}}')\), which immediately implies

Because \({\mathcal{H}}'\) was an arbitrary (k+1)-hyperplane arrangement with \(S \subseteq {\mathcal{D}}({\mathcal{H}}')\), this proves part (iii) of Corollary 15. □

Before we continue with the proofs of the lower bounds in Theorems 3 and 4, it is convenient to state one more auxiliary result. We have already defined the bit size of an integer, a rational and a rational vector. For A a rational matrix, we defined  size(A):=∑ i,j  size(A ij ). The following is a reformulation of Corollary 3.2b in [20]:

Lemma 16

[20]

There exists a universal constant K>0 such that the following holds. If the system Ax=b of rational linear equations has a solution, then there is also a solution with  size(x)≤( size(A)+ size(b))K.

Here it should be noted that Schrijver actually uses a notion of the bit size of a vector or matrix that is slightly different from ours. Schrijver’s bit size is however never more than a factor two larger than our bit size and never smaller than half our bit size, so that Lemma 16 is a straightforward corollary of Corollary 3.2b in [20].

With Lemma 16 and Corollary 15 in hand, we are now able to prove the lower bounds in Theorems 3 and 4.

Proof of the lower bound in Theorem 3

Let us fix an arbitrary r∈ℕ and let n=n(r), S=S(r) be as provided by Corollary 15. Let G=G(S) be as in the proof of Theorem 1. Now, let v:V(G)→ℝk be an arbitrary k-sphere representation of G, and let \({\mathcal{H}}= (h_{1},\ldots,h_{n})\) be as defined in (5). As shown in the proof of Theorem 1, we have \(S\subseteq {\mathcal{D}}({\mathcal{H}})\). Observe that we can also express h i as

(10)

Now, let p be an intersection point of \({\mathcal{H}}\). Then there are \(h_{i_{1}},\ldots, h_{i_{k}} \in {\mathcal{H}}\) such that \(\{p\} = h_{i_{1}} \cap\cdots\cap h_{i_{k}}\). Using (10), we can write p as the unique solution of

where the rows of A are \((v(a_{i_{1}})-v(b_{i_{1}}))^{T},\ldots,(v(a_{i_{k}})-v(b_{i_{k}}))^{T}\) and the entries of b are \((v(a_{i_{1}})-v(b_{i_{1}}))^{T}(v(a_{i_{1}})+v(b_{i_{1}}))/2,\ldots,(v(a_{i_{k}})-v(b_{i_{k}}))^{T}(v(a_{i_{k}})+v(b_{i_{k}}))/2\).

Let σ∈ℕ be such that ∑ tV(G) size(v(t))≤σ. It is easily seen that  size(A)+ size(b)=O(σ C) for some C=C(k)>0, so that by Theorem 16 every intersection point p also satisfies  size(p)≤σ K for some constant K=K(k)>0.

Now, let p,q be two distinct intersection points. Observe that by definition of bit size,

for each j=1,…,k. Similarly,

Thus, we have that

and

for any pair of distinct intersection points. We see that

This amounts to

(11)

for some c>0, provided r is sufficiently large. Since v:V(G)→ℝk was an arbitrary k-sphere representation,

for r sufficiently large.

We now claim that this implies

(12)

for all n, with c′>0 a suitably chosen universal constant. To see this, pick an arbitrary n∈ℕ and set r:=⌊n/(2α+β)⌋. For n sufficiently large, our proof gives a graph G on at most n vertices with f k (G)≥2cr≥2nc/(4α+2β). We can add additional isolated vertices to get a graph with exactly n vertices. This shows f k (n)≥2nc/(4α+2β) for all nn 0, where n 0 is some constant. Now, note that trivially f k (n)≥2kn for all n (since we need at least one bit for each denominator and numerator). Hence, if we set \(c' := \min ( \frac{1}{n_{0}},\frac{c}{4\alpha+2\beta} )\), then (12) indeed holds for all n. □

Proof of the lower bound in Theorem 4

Let us fix an arbitrary r∈ℕ and let n=n(r), S=S(r) be as provided by Corollary 15. Let G=G(S) be as in the proof of Theorem 2, and let v:V(G)→ℝk be an arbitrary k-dot product representation of G. For i=1,…,n, let us set

Then the c i clearly satisfy (7). (By the construction of G(S), we have v(a i )T v(b σ )<1 for all i and σS with σ i =−.) Now, let \({\mathcal{H}}\) be defined by

as in the proof of Theorem 2. Thus, we have \(S \subseteq {\mathcal{D}}({\mathcal{H}})\).

Let \(p \in i({\mathcal{H}})\) be an intersection point. Then there are hyperplanes \(h_{i_{1}}, \ldots, h_{i_{k}}\) of \({\mathcal{H}}\) such that \(\{p\} = h_{i_{1}}\cap\cdots\cap h_{i_{k}}\). In other words, p is the unique solution of the matrix equation

where A is a (k×k)-matrix with rows \(v(a_{i_{1}})^{T}, \ldots,v(a_{i_{k}})^{T}\) and b∈ℝk has coordinates \(c_{i_{1}},\ldots, c_{i_{k}}\). Observe that, writing σ:=∑ tV(G) size(v(t)), we have  size(A)+ size(b)=O(σ K) for some constant K=K(k). We can thus proceed as in the proof of the lower bound in Theorem 3 to show that

for some universal constant c=c(k), as required. □

4 Discussion and Further Work

Mnëv’s work [14, 15] (see also [3, 21]) actually proves that SIMPLE STRETCHABILITY is polynomially equivalent to the decision problem for the “existential theory of the reals” (ERT). ERT is the problem of deciding, given as input a set of polynomial equalities, inequalities and strict inequalities with integer coefficients, whether there exists a simultaneous real solution. While membership in NP for k-SPHERICITY and k-DOT PRODUCT remains open, our proofs in fact imply that both are polynomially equivalent to ERT. So our results imply in particular that if one were to give a polynomial certificate for either k-SPHERICITY or k-DOT PRODUCT then this would prove that ERT is in NP. As ERT is a pretty central notion in complexity theory (many other decision problems can for instance be written as special cases of ERT), proving that either k-SPHERICITY or k-DOT PRODUCT is in NP would thus constitute a minor breakthrough in complexity theory. For more discussion of the complexity class characterized by ERT as well as its connection to other geometric and topological graph representations, see the recent survey by Schaefer [19].

We have seen that the vectors of a k-sphere (resp. k-dot product) representation may require exponentially many bits to be stored in the memory of a computer, which means that they cannot serve as a polynomial certificate for the recognition problem and certainly not as a labelling scheme to prove a special case of the implicit graph conjecture. However, this is only if we use the obvious way of encoding the vectors as bit strings using the binary number format. Perhaps there is a more economical way to “encode the geometry” of the vectors.