EPTAS for Max Clique on Disks and Unit Balls

We propose a polynomial-time algorithm which takes as input a finite set of points of R^3 and computes, up to arbitrary precision, a maximum subset with diameter at most 1. More precisely, we give the first randomized EPTAS and deterministic PTAS for Maximum Clique in unit ball graphs. Our approximation algorithm also works on disk graphs with arbitrary radii, in the plane. Almost three decades ago, an elegant polynomial-time algorithm was found for Maximum Clique on unit disk graphs [Clark, Colbourn, Johnson; Discrete Mathematics '90]. Since then, it has been an intriguing open question whether or not tractability can be extended to general disk graphs. Recently, it was shown that the disjoint union of two odd cycles is never the complement of a disk graph [Bonnet, Giannopoulos, Kim, Rzazewski, Sikora; SoCG '18]. This enabled the authors to derive a QPTAS and a subexponential algorithm for Max Clique on disk graphs. In this paper, we improve the approximability to a randomized EPTAS (and a deterministic PTAS). More precisely, we obtain a randomized EPTAS for computing the independence number on graphs having no disjoint union of two odd cycles as an induced subgraph, bounded VC-dimension, and linear independence number. We then address the question of computing Max Clique for disks in higher dimensions. We show that intersection graphs of unit balls, like disk graphs, do not admit the complement of two odd cycles as an induced subgraph. This, in combination with the first result, straightforwardly yields a randomized EPTAS for Max Clique on unit ball graphs. In stark contrast, we show that on ball graphs and unit 4-dimensional disk graphs, Max Clique is NP-hard and does not admit an approximation scheme even in subexponential-time, unless the Exponential Time Hypothesis fails.


Introduction
In an intersection graph, the vertices are geometric objects with an edge between any pair of intersecting objects. Intersection graphs have been studied for many different families of objects due to their practical applications and their rich structural properties [13,29]. Among the most studied ones are disk graphs, which are intersection graphs of closed disks in the plane, and their special case, unit disk graphs, where all the radii are equal. Their applications range from sensor networks to map labeling [22], and many standard optimization problems have been studied on disk graphs, see for example [36] and references therein.
Most of the hard optimization and decision problems remain NP-hard on disk graphs and even unit disk graphs. For instance, disk graphs contain planar graphs [27] on which several of those problems are intractable. However, shifting techniques and separator theorems may often lead to subexponential classic or parameterized algorithms [3,9,28,33]. Many approximation algorithms have been designed specifically on (unit) disk graphs, or more generally on geometric intersection graphs, see for instance [17,21,23,30,31,35] to cite only a few. Besides ad hoc techniques, local search and VC-dimension play an important role in the approximability of problems on (unit) disk graphs. For the main packing and covering problems (Maximum Independent Set, Min Vertex Cover, Minimum Dominating Set, Minimum Hitting Set, and their weighted variants) at least a PTAS is known. However, all the techniques that we mentioned are only amenable to packing and covering problems. The Maximum Clique problem is arguably the most prominent problem which does not fall into those categories. For example, anything along the lines of exploiting a small separator cannot work for Maximum Clique, where the densest instances are the hardest. Therefore, it seems that new ideas are necessary to get improved approximate or exact algorithms for this problem. This is why, in this paper, we focus on solving Maximum Clique on (unit) disk graphs in dimension 2 or higher.

Previous results.
In 1990, Clark et al. [18] gave an elegant polynomial-time algorithm for Maximum Clique on unit disk graphs when the input is a geometric representation of the graph. It goes as follows: guess in quadratic time the two more distant centers of disks in a maximum clique (at distance at most 2), remove all the centers that would contradict this maximality, observe that the resulting graph is co-bipartite. Hence, one can find an optimum solution in polynomial time by looking for a maximum independent set in the complement graph, which is bipartite. However, recognizing unit disk graphs is NP-hard [14], and even ∃Rcomplete [26]. In particular, if the input is the mere unit disk graph, one cannot expect to efficiently compute a geometric representation in order to run the previous algorithm. Raghavan and Spinrad showed how to overcome this issue and suggested a polynomial-time algorithm which does not require the geometric representation [32]. Their algorithm is a subtle blind reinterpretation of the algorithm by Clark et al. It solves Maximum Clique on a superclass of the unit disk graphs or correctly claims that the input is not a unit disk graph. Hence, it cannot be used to efficiently recognize unit disk graphs.
The complexity of Maximum Clique on general disk graphs is a notorious open question in computational geometry. On the one hand, no polynomial-time algorithm is known, even when the geometric representation is given. On the other hand, the NP-hardness of the problem has not been established, even when only the graph is given as input.
The piercing number of a collection of geometric objects is the minimum number of points that hit all the objects. It is known since the fifties (although the first published records of that result came later in the eighties) that the piercing number of pairwise intersecting disks is 4 [19,34]. An account of this story can be found in a recent paper by Har-Peled et al. [24]. Ambühl and Wagner observed that this yields a 2-approximation for Maximum Clique [5]. Indeed, after guessing in polynomial time four points hitting a maximum clique and removing every disk not hit by those points, the instance is partitioned into four cliques; or equivalently, two co-bipartite graphs. One can then solve optimally each instance formed by one co-bipartite graph and return the larger solution of the two. This cannot give a solution more than twice smaller than the optimum. Since then, the problem has proved to be elusive with no new positive or negative results. The question on the complexity and further approximability of Maximum Clique on general disk graphs is considered as folklore [8], but was also explicitly mentioned as an open problem by Fishkin [22], Ambühl and Wagner [5]. Cabello even asked if there is a 1.99-approximation for disk graphs with two sizes of radii [15,16]. Recently, Bonnet et al. [12] showed that the disjoint union of two odd cycles is not the complement of a disk graph. From this result, they obtained a subexponential algorithm running in time 2Õ (n 2/3 ) for Maximum Clique on disk graphs, based on a win-win approach. They also got a QPTAS by calling a PTAS for Maximum Independent Set on graphs with sublinear odd cycle packing number due to Bock et al. [11], or branching on a low-degree vertex.

Our results.
Our main contributions are twofold. The first is a randomized EPTAS (Efficient Polynomial-Time Approximation Scheme, that is, a PTAS in time f (ε)n O(1) ) for Maximum Independent Set on graphs of X (d, β, 1). The class X (d, β, 1) denotes the class of graphs whose neighborhood hypergraph has VC-dimension at most d, independence number at least βn, and no disjoint union of two odd cycles as an induced subgraph (for formal definitions see Section 2). Theorem 1. For any constants d ∈ N, 0 < β 1, for every 0 < ε < 1, there is a randomized (1 − ε)-approximation algorithm running in time 2Õ (1/ε 3 ) n O (1) for Maximum Independent Set on graphs of X (d, β, 1) with n vertices.
Using the forbidden induced subgraph result of Bonnet et al. [12], it is then easy to reduce Maximum Clique on disk graphs to Maximum Independent Set on X (4, β, 1) for some constant β. We therefore obtain a randomized EPTAS (and a PTAS) for Maximum Clique on disk graphs, settling almost 1 completely the approximability of this problem.

Theorem 2.
There is a randomized EPTAS for Maximum Clique on disk graphs, even without geometric representation. Its running time is The second contribution is to show the same forbidden induced subgraph for unit ball graphs as the one obtained for disk graphs. The proofs are radically different and the classes are incomparable. So the fact that the same obstruction applies for disk graphs and unit ball graphs might be somewhat accidental.

Theorem 3.
A complement of a unit ball graph cannot have a disjoint union of two odd cycles as an induced subgraph. In other words, if G is a unit ball graph, then iocp(G) 1.
In the previous statement iocp denotes the induced odd cycle packing number of a graph, i.e., the maximum number of odd cycles as a disjoint union in an induced subgraph. Again, Theorem 1 and Theorem 3 naturally lead to: (1) for Maximum Clique on unit ball graphs, even without the geometric representation.
Before that result, the best approximation factor was 2.553, due to Afshani and Chan [1]. In particular, even getting a 2-approximation algorithm (as for disk graphs) was open.
Finally we show that such an approximation scheme, even in subexponential time, is unlikely for ball graphs (that is, 3-dimensional disk graphs with arbitrary radii), and unit 4-dimensional disk graphs. Our lower bounds also imply NP-hardness. To the best of our knowledge, the NP-hardness of Maximum Clique on unit d-dimensional disk graphs was only known when d is superconstant (d = Ω(log n)) [2].
In the following paragraphs, we sketch the principal lines of our two main contributions.

EPTAS for Maximum Independent Set on
The first main result of this paper asserts that if a graph G satisfies that every two odd cycles are joined by an edge, the Vapnik-Chervonenkis dimension of the hypergraph of the neighborhoods of G is bounded, and α(G) is at least a constant fraction of |V (G)|, then α(G) can be computed in polynomial time at any given precision. More precisely, we present in that case a randomized EPTAS running in time 2Õ (1/ε 3 ) n O(1) and a deterministic PTAS. Our algorithm works as follows. We start by sampling a small subset of vertices. Hoping that this small subset is entirely contained in a fixed optimum solution I, we include the selected vertices to our solution and remove their neighborhood from the graph. Due to the classic result of Haussler and Welzl [25] on ε-nets of size O(d/ε log 1/ε) (where d is the VC-dimension), this sampling lowers the degree in I of the remaining vertices. We compute a shortest odd cycle. If this cycle is short, we can remove its neighborhood from the graph and solve optimally the problem in the resulting graph, which is bipartite by assumption. If this cycle is long, we can efficiently find a small odd-cycle transversal. This is shown by a careful analysis on the successive neighborhoods of the cycle, and the recurrent fact that this cycle is a shortest among the ones of odd length.

The complement of the union of two odd cycles is not a unit ball graph
Given a needle in R 3 whose middlepoint is attached to the origin, one can apply a continuous motion in order to turn it around (a motion à la Kakeya, henceforth Kakeya motion). A Kakeya motion can be seen as a closed antipodal curve on the 2-sphere. If we now consider two needles, each with a Kakeya motion, then the two needles have to go through a same position. This simply follows from the fact that two antipodal curves on the 2-sphere intersect. The second main result of this paper is a translation of this Jordan-type theorem in terms of intersection graphs: The complement of a unit ball graph does not contain the disjoint union of two odd cycles. The proof can really be seen as two Kakeya motions, each one along the two odd cycles, leading to a contradiction when the needles achieve parallel directions.
Together with the first result, it implies a randomized EPTAS for Maximum Clique on disk graphs, and for the following problem: Given a set S of points in R 3 , find a largest subset of S of diameter at most 1.

XX:5 Organization
The rest of the paper is organized as follows. In Section 2, we recall some relevant notations for graphs and elementary geometry, the definitions of VC-dimension, disk graphs, and approximation schemes. We finish this section by introducing a class of graphs parameterized by three constants: the VC-dimension, the ratio independence number divided by number of vertices, and the maximum number of odd cycles that can be found as a disjoint union in an induced subgraph. In Section 3, we design a randomized EPTAS for Maximum Independent Set on this class. In Section 4, we show that complements of unit ball graphs do not have a disjoint union of two odd cycles as an induced subgraph. This yields a randomized EPTAS for Maximum Clique on unit ball graphs (as well as on disk graphs). This is tight in two directions: having different values of radii, and the dimension of the ambient space. Indeed, we complement this positive result by showing that Maximum Clique is unlikely to even have a QPTAS on ball graphs where all the radii are arbitrarily close to 1, and on 4-dimensional unit ball graphs. In Section 5, we make some observations about the EPTAS and propose some lines of thoughts on how to tackle the computational complexity of Maximum Clique in disk and unit ball graphs.

Graph notations
Let G be a simple graph. We denote by G its complement, i.e., the graph obtained by making every non-edge an edge and vice versa. V (G) and E(G) represent its set of vertices and its set of edges, respectively. We denote by α(G) the independence number of G, i.e., the size of a maximum independent set (or stable set), and by ω(G) the clique number of G, i.e., the size of a maximum clique. The odd cycle packing number of G, denoted by ocp(G), is defined as the maximum number of vertex-disjoint odd cycles and the induced odd cycle packing number of G, denoted by iocp(G), is the maximum number of vertex-disjoint odd cycles with no edge between any two of them.

VC-dimension
VC-dimension has been introduced by Vapnik and Chervonenkis in the seminal paper [37]. Let H = (V, E) be a hypergraph. A set X of vertices of H is shattered if for every subset Y of X there exists a hyperedge e ∈ E such that e ∩ X = Y . An intersection between X and a hyperedge e of E is called a trace (on X). Equivalently, a set X is shattered if all its 2 |X| traces exist. The VC-dimension of a hypergraph is the maximum size of a shattered set. As an abuse of language, we call VC-dimension of a graph G, denoted by VCdim(G), the VC-dimension of the neighborhood hypergraph (V (G),

Geometric notations
For a positive integer d, we denote by R d the d-dimensional euclidean space. If x and y are two points of R d , xy is the straight-line segment whose endpoint are x and y. We denote by d(x, y) the euclidean distance between x and y. A d-dimensional closed disk is defined from a center x ∈ R d and a radius r ∈ R + , as the set of points {y ∈ R d | d(x, y) r}, i.e., at distance at most r from x. The diameter of a subset S ⊆ R d is defined as sup The piercing number (also called hitting set or transversal) of a collection O of geometric objects in R d is the minimum number of points of R d that pierce (or hit) all the objects of O, i.e., each object contains at least one of these points.

Disk graphs and their forbidden induced subgraphs
We shorten 2-dimensional disk graph in disk graph, and 3-dimensional disk graph in ball graph. A d-dimensional unit disk graph is the intersection graph of unit d-dimensional closed disks of R d , that is, disks with radius 1. Unit d-dimensional disk graphs can be thought of only with points: vertices are points (at the center of the disks) and two points are adjacent if they are at distance at most 2. In particular, solving Maximum Clique on those graphs is equivalent to finding a maximum sub-collection of points whose diameter is at most a fixed value.
Bonnet et al. established the following obstruction for disk graphs.

Theorem 5 ([12]). The complement of a disk graph cannot have the disjoint union of two odd cycles as an induced subgraph.
This can be equivalently rephrased as: if G is a disk graph, then iocp(G) 1.

Approximation schemes
A PTAS (Polynomial-Time Approximation Scheme) for a minimization (resp. maximization) problem is an approximation algorithm which takes an additional parameter ε > 0 and outputs in time n f (ε) a solution of value at most (1 + ε)OPT (resp. at least (1 − ε)OPT) where OPT is the optimum value. Observe that from now on, we consider that approximation ratios of maximization problems are smaller than 1, unlike the convention we used in the introduction. An EPTAS (Efficient PTAS) is the same with running time , a QPTAS (Quasi PTAS) is in time n polylog n for every ε. Finally, and this is quite informal and not standard, we call SUBEXPAS (subexponential AS) an approximation scheme with running time 2 n 0.99 for every ε. All those approximation schemes can come deterministic or randomized.

The class X (d, β, i)
In the next section, we present a randomized EPTAS and a deterministic PTAS for approximating the independence number α on graphs with constant VC-dimension, linear independence number, and induced odd cycle packing number equals to 1.
Actually, we extend these algorithms to the case iocp(G) = i, for any constant i. Let X (d, β, i) be the class of simple graphs G satisfying: For any positive constants d, β < 1, i, we get a deterministic PTAS and a randomized EPTAS for Maximum Independent Set on X (d, β, i).

EPTAS for Maximum Independent Set on X (d, β, i)
We start by showing that X (d, β, 1) has a randomized EPTAS.
Proof. Let H be a graph in X (d, β, 1) with n vertices and I be a maximum independent set of H. In particular, |I| βn. Since finding a maximum independent set in a bipartite graph can be done in polynomial time, we get the desired (1 − ε)-approximation if we can find a vertex-set T such that: T is an odd-cycle transversal, i.e., its removal yields a bipartite graph, and |T ∩ I| ε|I|.
At high level, our algorithm will thus select and remove some odd-cycle transversals T , and then apply the bipartite case algorithm. We will do this at least once for a set T that satisfies the second item, with some strong guarantee. Of course the key ingredient in finding a suitable odd-cycle transversal is the fact that iocp(H) 1. Indeed, this implies that for any odd cycle C, the set N [C] is an odd-cycle transversal.
Let c : , and s := 10d δ log 1 δ . We call short odd cycle an odd cycle of length at most c, and long odd cycle an induced odd cycle of length more than c. First we can assume that βn is larger than 2s, otherwise we can find an optimum solution by brute-force in time 2 n = 2Õ (1/ε 3 ) . Hence, |I| > 2s.  [25], later improved by Blumer et al. [10], ensures that every such hypergraph K admits a hitting set (a set of vertices that intersects every edge) of size at most 10d δ log 1 δ .
Algorithmically, we have two ways of selecting the set S, leading to a deterministic PTAS or a randomized EPTAS. Either we run the rest of the algorithm for every subset of V (H) of size 10d δ log 1 δ inducing an independent set (which constitutes n f (ε) possible sets), or we use another result proven in [25]: not only the hitting set exists but a uniform sample of V (K) of size 10d δ log 1 δ is a hitting set with high probability. So we do the following t := log(10 −10 ) log(1−(β/2) s ) = 2Õ (1/ε 3 ) many times: we select uniformly at random a set S of size s = 10d δ log 1 δ , and continue the rest of the algorithm if S is an independent set. Since |I| > 2s, it holds that Pr(S ⊆ I) > (β/2) s . As we try out t samples, at least one satisfies We now assume that the sample S satisfies the properties of Claim 1. We start by putting in T all the vertices of N (S) (note that no such vertex is in I since I is an independent set). We define the graph H := H − N (S). We got rid of the vertices with at least δ|I| neighbors in I: in H , there are no such vertices anymore. We want to find an odd-cycle transversal in H that has few vertices in I.
We now run a polynomial-time algorithm (see for instance [4]) that determines whether the graph is bipartite and, if not, outputs a shortest odd cycle C og in H .
We can now safely assume that g > c, i.e., C og is a long odd cycle. We decompose H into the successive neighborhoods of C og , which we call layers. We define the first layer as L 1 := N H (C og ). We define by induction the other layers as the non-empty sets Let us denote by λ the index of the last non-empty layer. Before entering into the formal details of the second part of the proof let us briefly explain its structure: First, we observe that if there are many layers, there is one with index at most 2 βε that contains at most εβ 2 n ε 2 |I| of the vertices. We can thus delete this layer, and note that connected components that do not contain C og are bipartite. We then focus on the component containing C og , which has only few layers. Secondly, we show that this component admits an odd-cycle transversal of size at most In other words, we can find ε|I| vertices whose deletion yields a bipartite graph (see Figure 1), which together with N (S) form the desired odd-cycle transversal. The layers (columns) and the strata (rows of a column). If the number of successive neighborhoods is large, a small cutset (in blue) is found among the first 2 βε layers. To the right of this cutset, we know that the graph is bipartite. This brings us back to the case with fewer than 2 βε layers, where we can find a small odd cycle transversal (in red).
If λ > 2 βε , then there is some index i 2 βε such that L i is of size at most βε 2 n ε 2 |I|. We remove that layer L i from the graph. Since iocp(H ) = 1, the set i<j λ L j induces a bipartite graph. Indeed, it is disjoint from the closed neighborhood of the odd cycle C og . We can easily find a maximum independent set on this part of the graph, and focus on the other part, which is So the graph H has at most 2 βε layers emanating from C og . We will find an odd-cycle transversal of size at most ε 2 |I|. We first need some new definitions. For 1 j g, let S j be the set of vertices w ∈ V (H ) such that there is a shortest path from w to C og which ends in v j , while no shortest path from w to C og ends in v i with i < j (note that v j ∈ S j ). We point out that the sets (S 1 , . . . , S g ) induce a partition of each layer L k . This simply follows from the fact that for every vertex w ∈ L k , there is a minimum index j(w) such that there is a shortest path from v to C og ending in v j(w) . For each pair (k, ), we define a stratum as L k := S ∩ L k . Note that if L k = ∅, then for any k > k, L k = ∅.
Let z := 4 βε +2 and for any integer γ such that 0 γ Informally, S γ consists of the layers emanating from z consecutive vertices of C og . Note that if γ = γ , then S γ and S γ are disjoint.
Proof. Observe that g z − 1 2 βε , so each S γ of the claim is well-defined. It holds that C og ∩ S γ = γz+1 j (γ+1)z {v j }. We exhibit a proper 2-coloring of B by coloring its vertices as follows. We start by coloring each vertex of the path C og \ S γ in an alternated fashion, i.e., one endpoint of the path gets color 0, its neighbor gets color 1, the next vertex gets color 0, and so on.
For each pair (k, ) such that 1 k < i, 1 g, and / ∈ [γz + 1, (γ + 1)z], we color all the vertices in the stratum L k = S ∩ L k with the opposite color of the one used for the stratum L k−1 = S ∩ L k−1 (with the convention that L 0 := C og ). This process colors unambiguously all the vertices of B.
Let us prove that the resulting coloring is proper. First note that the vertices of a same stratum form an independent set. Indeed, assume by contradiction that L k contains an edge uw. There is a shortest path P 1 from v to u and a path P 2 from w to v . Since u and w are in the same layer L k , P 1 and P 2 have the same length; more precisely, Thus, P 1 , uw, P 2 defines a closed walk with 2k +1 edges. An odd closed walk of length 2k +1 implies the existence of an odd induced cycle of length at most 2k+1. As 2k+1 < 4 βε +1 < g, we reach a contradiction on the minimality of C og .
There is no edge between a stratum L k and a stratum L k with |k − k | 2, by definition of the layers. Moreover, for 1 < g, there is no edge uw with u ∈ L k and w ∈ L k with min( − , + g − ) 4 βε + 1 since otherwise it would be possible to construct an odd cycle strictly shorter than C og . Indeed if P 1 is a shortest path between v and u and P 2 is a shortest path between w and v . Then, P 1 , uw, P 2 is a walk of length k + k + 1. However, a shortest path between v and v within C og has length min( − , + g − ) 4 βε + 1 > k + k + 1. Hence, the walk P 1 , uw, P 2 can be extended into an odd closed walk of length strictly smaller than g, by taking the path from v to v in C og with the same parity as k+k ; a contradiction. Therefore, if there is a monochromatic edge uw in B, it must be between L k and L k with |k − k | ∈ {0, 1}, min( − , + g − ) < 4 βε + 1, and { , } ∩ [γz + 1, (γ + 1)z] = ∅. We fix k, k , , satisfying those conditions. We call small interval of and Indeed, the small interval of and is a circular interval over [1, g] of length less than 4 βε + 1 < z. In particular, the vertices of C og indexed by the small interval of and are all in B.
Assume first that k = k . There is a path P 1 from v to u, and a path P 2 from w to v , both of length k. Since by assumption the color for L k is the same as the color for L k , the vertices v and v have the same color (by construction of the 2-coloring). Thus we have, in C og − S γ , a path P indexed by si( , ) from v to v of even length less than 4 βε + 1. We emphasize that it is crucial that si( , ) ∩ [γz + 1, (γ + 1)z] = ∅ (meaning that all the vertices of C og indexed by si( , ) are still in B), to deduce that there is a path of even length between v and v . It follows from the mere fact that v and v have the same color. Finally, the concatenation P 1 , uw, P 2 , P yields an odd cycle of odd length less than 2k + 1 + 4 βε + 1 8 βε + 2 < g. Now let us assume that |k − k | = 1; say, without loss of generality, k = k + 1. In that case, by construction of the 2-coloring, the edge can only be monochromatic if v and v receive distinct colors. Furthermore, there is a path P 1 from v to u, and a path P 2 from w to v with length of distinct parities (k and k + 1, respectively). Moreover, since v and v get distinct colors, there is in C og − S γ , a path P indexed by si( , ) from v to v of odd length at most 4 βε + 1. Again, we crucially use that all the vertices of C og indexed by si( , ) are in B, to deduce that P is of odd length from the fact that v and v get distinct colors. Finally, the concatenation P 1 , uw, P 2 , P is an odd cycle of length less than k + 1 + k + 1 + 4 βε + 1 8 βε + 3 < g; a contradiction. We conclude that the 2-coloring is indeed proper. C og ← shortest odd cycle in H in polynomial time [4] 13: return S at the iteration maximizing its cardinality 28: end function Postcondition: output S is a stable set of size at least (1 − ε)α(G) with high probability Since the sets of {S γ } γ∈[0, 2 βε ] are pairwise disjoint, a smallest set of the collection satisfies |S γ | βε 2 n ε 2 |I|. By Claim 2, removing this S γ from H makes the graph bipartite. We finally compute a maximum independent set in polynomial time in H − S γ . We return the best solution found. The pseudo-code is detailed in Algorithm 1. a (1 − ε)approximation on a graph with n vertices.

Theorem 2. There is a randomized EPTAS for Maximum Clique on disk graphs, even without geometric representation. Its running time is
Proof. With a geometric representation, we could invoke the following argument to get a linear maximum stable set. Recall that the piercing number of a family of geometric objects is the minimum number of points such that each object contains at least one of those points. The piercing number of a collection of pairwise intersecting disks in the plane is 4 [19,34]. The number of faces in an arrangement of n circles (disk boundaries) is O(n 2 ), and all the points within one face hits the same disks. In time O(n 8 ), one can therefore exhaustively guess four points piercing a maximum clique C. We can remove all the disks which are not hit by any of those four points, since they are not part of C. This new instance G can have its vertices partitioned into four cliques, hence α(G) |V (G)|/4. Without a geometric representation, we suggest the following. Disk graphs are 6ωdegenerate (and closed by induced subgraphs), i.e., there is a vertex of degree at most 6ω, where ω is the clique number of the graph. Furthermore, the neighborhood of this vertex can easily be partitioned into 6 cliques. We can find such a vertex in polynomial time. We branch on two outcomes. Either this vertex is in a maximum clique: we run the approximation of Theorem 1 on its closed neighborhood G which satisfies α(G) |V (G)|/6. Or this vertex is not in any maximum clique: we delete it from the graph. Our branching tree has size 2n + 1, so it only costs an extra linear multiplicative factor.
The VC-dimension of the neighborhoods of disk graphs, and even pseudo-disk graphs [6], is at most 4. Since the VC-dimension of a graph is equal to the one of its complement, the VC-dimension of G is also at most 4. Finally, by Theorem 5 [12], iocp(G) 1. We only call the approximation algorithm (a polynomial number of times) with disk graphs G such that G ∈ X (4, 1 6 , 1) (argument without the geometric representation) or G ∈ X (4, 1 4 , 1) (argument with the geometric representation). Hence, we conclude by Theorem 1.
It is known that the VC-dimension of unit balls and the piercing number of pairwise intersecting unit balls are both constant. In Section 4, we will show that the induced odd cycle packing number of unit ball graphs is at most 1. This is the missing element for the EPTAS to also work for Maximum Clique on unit balls.
We conclude this section by extending the EPTAS to work for constant (not necessarily 1) induced odd cycle packing number. Proof. Let I be a maximum independent set. We show by induction on i that we can find in time 2Õ (1/ε 3 ) n O(1) a stable set of size (1 − iε )|I|. The base case is Theorem 1. We assume that there is such an algorithm when the induced odd cycle packing number is i − 1. We follow Algorithm 1 with a graph H such that iocp(H) = i. On line 15 and 23, the graph is not necessarily bipartite anymore (on line 24, the resulting graph is still bipartite in this case). Although, the induced odd cycle packing number is decreased to i − 1. So, by the induction hypothesis we get a stable set within a factor (1 − (i − 1)ε ) of the optimum. To get there, we removed a subset of vertices of size at most ε |I|. Therefore, the solution S that we obtain satisfies |S| (1 − iε )|I|.
We obtain the theorem by setting ε := iε since i is absorbed in theÕ in the running time.

Balls and higher dimensions
We start by showing the main result of this section: for every unit ball graph G, iocp(G) 1.
A closed polygonal chain C in R d is defined by a set of points (or vertices) x 1 , x 2 , . . . , x p ∈ R d as the straight-edge segments We call direction of a non-zero vector its equivalence class by the relation u ∼ v ⇔ ∃λ ∈ R + , u = λ v. We denote the direction of u by dir( u). We define the set of directions where the indices are taken modulo p,

Lemma 7.
Let C 1 and C 2 be two closed polygonal chains of R 3 on an odd number of vertices each. Then, Needle(C 1 ) ∩ Needle(C 2 ) is non-empty.
Proof. We want to establish the existence of a direction which is common to Needle(C 1 ) and Needle(C 2 ). For that, we yield a continuous map from R + to Needle(C 1 ) that we naturally interpret as a union of curves on the 2-sphere (unit sphere in R 3 ). Indeed the set of directions in R 3 is isomorphic to the set of points on the 2-sphere. As we do not need a specific parameterization of the curve, we just describe how we continuously move a vector − → ab whose direction runs through the entire set Needle(C 1 ). Let x 1 , x 2 , . . . , x p be the vertices of C 1 .
Let us first prove that Needle(C) is a closed curve when C is an odd cycle. To do so we prove that we can continuously modify the current vector dir( −−→ x 1 x 2 ) into any other vector in Needle(C). We start with a in x 1 and b in x 2 . We continuously move a from x 1 to x 3 (on the straight-edge segment x 1 x 3 ) while b stays fixed at x 2 (we are in moving in [x 1 ← x 2 → x 3 ]). For the next step, a is fixed at x 3 and b continuously moves from x 2 to x 4 . (we are in moving in [x 2 → x 3 ← x 4 ]). And in general, we move the point with index i − 1 from x i−1 to x i+1 while the other point stays fixed at x i (where the indices are modulo p). Since p is odd, we reach the situation where b is set to x 1 and a is set to x 2 when we have completed once the walk on the closed polygonal chain. We can repeat a walk on the chain once again, so that a is back to x 1 and b is back to x 2 , and we stop. One may observe that this process spans Needle(C 1 ).
This defines a closed curve C 1 on the 2-sphere since we are finally back to dir( −−→ x 1 x 2 ) from where we started. Furthermore, C 1 is antipodal, i.e., closed by taking antipodal points. Indeed, for each direction attained in a [ Similarly Needle(C 2 ) draws a closed antipodal curve on the 2-sphere C 2 . The curves C 1 and C 2 intersect since they are closed and antipodal. An intersection point corresponds to a direction shared by Needle(C 1 ) and Needle(C 2 ).
We will apply this lemma on the closed polygonal chains C 1 and C 2 formed by the centers of unit balls realizing two odd cycle complements. The contradiction will come from the fact that not all the pairs of centers x ∈ C 1 and y ∈ C 2 can be at distance at most 2.

Theorem 3. A complement of a unit ball graph cannot have a disjoint union of two odd cycles as an induced subgraph. In other words, if G is a unit ball graph, then iocp(G) 1.
Proof. Let x 1 , x 2 , . . . , x p ∈ R 3 (resp. y 1 , y 2 , . . . , y q ∈ R 3 ) be the centers of unit balls representing the complement of an odd cycle of length p (resp. q), such that x i and x i+1 (resp. y i and y i+1 ) encode the non-adjacent pairs. Let C 1 (resp. C 2 ) be the closed polygonal chain obtained from the centers x 1 , x 2 , . . . , x p (resp. y 1 , y 2 , . . . , y q ). By Lemma 7, there are two collinear vectors − → x i x and − → y j y with x on the straight-line segment x i−1 x i+1 and y on the straight-line segment y j−1 y j+1 .
x i x y y j x i x y j y Figure 2 The two cases for the collinear vectors − → xix and − → yjy.
Let us suppose that − → x i x and − → y j y have the same direction (Figure 2, left). In the plane 2 containing x i , x, y j , and y, those four points are in convex position and the convex hull is cyclically ordered x i , x, y, y j . We obtain a contradiction by showing that the sum of the diagonals d(x i , y) + d(y j , x) is strictly smaller than the sum of two opposite sides d( (y j , y).
Considering edges and non-edges, for every i, the only vertices at distance at least 2 from y i in ∪{x j , y j } are y i−1 and y i+1 . Then, we have d(x i , y j−1 ) 2 < d(y j , y j−1 ) and d(x i , y j+1 ) 2 < d(y j , y j+1 ). The points strictly closer to x i than to y j form an open half-space. In particular, they form a convex set and all the points in the segment y j−1 y j+1 are therefore closer to x i than to y j . Hence, d(x i , y) < d(y j , y).
Let us now assume that − → x i x and − → y j y have opposite direction (Figure 2, right). In that case, the four coplanar points x i , x, y j , y are in convex position in their plane and the convex hull is cyclically ordered x i , x, y j , y. We will attain the similar contradiction that d(x, y) . We obtained that point x is closer to y j−1 and y j+1 than to x i . Therefore, applying again the convexity argument, we get that d(x, y) < d(x, x i ). Besides, d(x i , y j ) 2 < d(y, y j ). So we arrive at the contradiction d(x, y) It is folklore that unit ball graphs have VC-dimension 4. At the price of a multiplicative factor n in the running time, one can guess a vertex v in a maximum clique of a unit ball graph G, and look for a clique in its neighborhood H := G[N (v)]. It can be easily shown that the neighborhood of this vertex (in fact, of any vertex) can be partitioned into 25 cliques, following the proof that the kissing number for unit spheres is 12. Thus α(H) |V (H)|/25. Therefore, from Theorem 1 and Theorem 3, we immediately obtain the following. (1) for Maximum Clique on unit ball graphs, even without the geometric representation.

Theorem 4. There is a randomized EPTAS in time 2Õ
From Theorem 3, we also get an exact subexponential algorithm running in time 2Õ (n 2/3 ) for Maximum Clique on unit ball graphs. Indeed, such an algorithm was obtained for the class of graphs G such that iocp(G) 1 [12].
In sharp contrast, we will prove that with an extra dimension or with different radii (even arbitrarily close to each other), a PTAS is highly unlikely. In both cases, we show that there is a constant ratio which is not attainable even in subexponential time, unless the ETH fails. A 2-subdivision of a simple graph is the graph obtained by subdividing each edge exactly twice. A co-2-subdivision is the complement graph of the 2-subdivision of a graph. The class of the 2-subdivisions (resp. co-2-subdivisions) is the set of all graphs that are the 2-subdivisions (resp. co-2-subdivisions) of a simple graph.
The following result was shown by Bonnet et al.

Theorem 8 ([12]
). There is a constant α > 1 such that Maximum Clique on co-2subdivisions is not α-approximable even in time 2 n 0.99 , unless the ETH fails. Moreover, Maximum Clique is NP-hard on co-2-subdivisions.
Therefore, we just need to show that all co-2-subdivisions can be realized by our geometric objects. This appears like a simple and powerful method to rule out a PTAS (QPTAS, and even SUBEXPAS) for a geometric clique problem.
The co-2-subdivision of a graph with n vertices and m edges can be thought of as follows. It is made of a clique on n vertices, representing the initial vertices, and a clique on 2m vertices minus a perfect matching, representing endpoints of the initial edges. Each antimatched pair of vertices corresponds to an edge in the initial graph. Each vertex representing one endpoint of an initial edge is adjacent to all the vertices representing the initial vertices but this endpoint.

Theorem 9. The class of 4-dimensional unit disks contains all the co-2-subdivisions.
Proof. Given any simple graph G = (V, E) with n vertices and m edges, we want to build a set S of n + 2m points in R 4 where each vertex v is represented by a point p(v) and each edge e, by two points p + (e) and p − (e). A pair of points in S should be at distance at most 2, except if it is the two points of the same edge e, or if it is a point p(v) with either a p + (vw) or a p − (wv); those pairs should be at distance strictly more than 2. We call x, y, z, t the coordinates of R 4 . Let P be the plane defined by the intersection of the hyperplanes of equation z = 0 and t = 0. The projection π onto P of the points p + (e) (resp. p − (e)) fall regularly on the "top" part (resp. "bottom" part) of a circle C of P centered at the origin O = (0, 0, 0, 0) and of diameter 2, such that for each edge e, π(p + (e)) and π(p − (e)) are antipodal on C. We just defined the points π(p + (e)) and π(p − (e)). The actual points p + (e) and p − (e) will be fixed later by moving them very slightly away from their projection in a two-dimensional plane orthogonal to P. Let η be the maximum distance between a pair (π(p + (e)), π(p − (e ))) with e = e . By construction η < 2.
Let P ⊥ be the (2-dimensional) plane containing the center O of C and orthogonal to P; in other words, the intersection of the hyperplanes of equation x = 0 and y = 0. We observe that all the points of P ⊥ are equidistant to all the points π(p + (e)) and π(p − (e)). We place all the points p(v) in P ⊥ regularly spaced on a arc of a circle lying on P ⊥ centered at O and of radius √ 3 − ε. One can notice that for any (v, e, s) ∈ V × E × {+, −}, d(p(v), π(p s (e))) = 4 − 2 √ 3ε + ε 2 . We will choose ε 2 − η 1 so that this shared XX:15 The overall construction for 4-dimensional unit disks. We only represent the centers.
distance is just below 2 and the points {p + (e), p − (e)} e∈E realize the same adjacencies than their projection by π.
For every e = uv ∈ E, we place p + (e) such that In words, we push very slightly p + (e) (resp. p − (e)) away from π(p + (e)) (resp. π(p − (e))) in the opposite direction of ). This way, p + (e) is at distance more than 2 from p(u).

Corollary 10.
There is a constant α > 1 such that Maximum Clique on 4-dimensional unit disks is not α-approximable even in time 2 n 0.99 , unless the ETH fails. Moreover, Maximum Clique is NP-hard on 4-dimensional unit disks.
The proof of Theorem 9 can be tweaked for balls of different radii. For a real ε > 0, we say that the radii of a representation (or the representation itself) are ε-close if the radii are all contained in the interval [1, 1 + ε]. We denote by B(1, 1 + ε) the ball graphs having an ε-close representation.
Proof. Let x, y, z be the coordinates of R 3 . We start similarly and define the same π(p + (e)) and π(p − (e)) as in the previous construction for the points p + (e) and p − (e) on a circle C of diameter 2 centered at O = (0, 0, 0) on a plane P of equation z = 0. One difference is that π(p + (e)) and π(p − (e)) are no longer projections. We then place the points p(v) regularly spaced along the z-axis. More precisely, if the vertices are numbered v 1 , v 2 , . . . , v n , the position of p(v i ) is (0, 0, √ 3 + iε ). The radius of the disk representing v i centered at The radii associated to the centers p + (e) and p − (e) are all set to 1. We move p ) by an infinitesimal quantity, in order to only suppress the overlap of the disks centered at p + (v i v j ) and p(v i ) (resp. p − (v i v j ) and p(v j )). We make ε and ε small enough that all the values r i are between 1 and 1 + ε.
We call quasi unit ball graphs those graphs in the intersection ε>0 B(1, 1 + ε). As a corollary, we get some strong inapproximability even for quasi unit ball graphs.

Corollary 12.
There is a constant α > 1 such that Maximum Clique on quasi unit ball graphs is not α-approximable even in time 2 n 0.99 , unless the ETH fails. Moreover, Maximum Clique is NP-hard on quasi unit ball graphs.

Remarks and further directions
The algorithm of Theorem 1 also works for weighted graphs. The slight modifications to approximate Maximum Weighted Independent Set consist in sampling S proportionally to the weights, and to remove the lightest layer L i (among the first 2/βε ) and the lightest set S γ (rather than the ones of minimum size). We then use repeatedly that Maximum Weighted Independent Set can be solved in polynomial time on bipartite graphs. This implies a randomized EPTAS for Maximum Weighted Clique on disk graphs and unit ball graphs, with the same arguments used to get |I| β|V (G)|. Now, what we obtain is w(I) βw(V (G)) where w is the weight function and w(X) := Σ u∈X w(u).
One might wonder what is the constant hidden in O(1) in the time complexity of the randomized EPTAS f (ε)n O (1) . Here is how to achieve near quadratic time f (ε)n 2 log n where n is the number of vertices of our unit ball graph G (even without a geometric representation). The first observation is that instead of finding an optimum stable set in a bipartite graph (which we do several times as a subroutine), one only needs a 1 + εapproximation of it. This can be done in time f (ε)m, where m is the number of edges [20]. We also need to overcome our first branching guess of a vertex which belongs to an optimal solution (and hence multiply by n our complexity). To achieve this, we start by packing greedily disjoint neighborhoods N (v 1 ), N (v 2 ), . . . , N (v k ) of G, while it is possible. Then we consider the set of subgraphs G 1 , G 2 , ..., G k induced by the vertices at distance at most 3 of v 1 , v 2 , ..., v k , respectively. Observe that by maximality of the packing, every vertex is at distance at most 2 of some v i , and thus, every edge, and even every clique of G belongs to at least one G i . By a volume argument, any vertex, and thus any edge, belongs to at most a constant number of graphs G i . Thus we only need to compute the maximum clique over the graphs G i , each with number of edges m i , with the property that k i=1 m i = O(m). Now, the difference is that the clique number of each G i is at least a constant fraction of its number of vertices, so the sampling step succeeds with probability at least a positive constant. We consider the complement of each graph G i and approximate the independence number. The main and only obstacle is that finding a shortest odd cycle in quadratic time seems hopeless. Indeed, the other elements of the algorithm: removing N [S], computing the sets L i and S γ , removing the lightest of them, and 1 + ε-approximating the maximum stable set in a bipartite graph, can all be done in quadratic time.
We only compute one (not necessarily shorter) odd cycle of length h, via breadth-first search for instance. We can assume that h = ω(1/ε 2 ) otherwise we are done. We take potentially thicker slices for S γ : instead of z = Θ(1/ε) consecutive strata, we take 10βεh consecutive strata. Either the suggested 2-coloring of H −S γ is proper and we are done. Or there is a monochromatic edge, which, going through the different cases of Claim 2, yields a new odd cycle of length O(1/ε) (which is an easy case to handle) or short-cutting the previous odd cycle by at least Ω(εh) vertices. In the latter case, our new odd cycle is shorter by a constant multiplicative factor 1 − ε. Hence, after at most O(log n) improvements, we find an odd cycle which is small enough to conclude. Therefore, the overall complexity of the algorithm is f (ε)n 2 log n.
The obvious remaining question is the complexity of Maximum Clique in disk graphs and in unit ball graphs. An interesting direction would be to find a toy problem on which we could prove NP-hardness. A nice class, which appears to be a subclass of unit ball graphs, is that of the so-called Borsuk graphs: We are given some (small) real ε > 0 and a finite collection V of unit vectors in R 3 . The Borsuk graph B(V, ε) has vertex set V and its edges are all pairs {v, v } whose dot product is at most −1 + ε (i.e. near antipodal).
The difficulty of computing the (weighted) independence number on Borsuk graphs is also an open question. One can go one simplification step further and focus on a subclass of Borsuk graphs, namely quadrangulations of the projective plane. These well-studied objects have the striking property to be either bipartite or 4-chromatic. The complexity of Maximum Weighted Independent Set is open for 4-chromatic quadrangulations. Finally, the last simplification step in this direction is the following.

Problem 1.
What is the computational complexity of Maximum Weighted Independent Set on the moebius grid?
By moebius grid we mean a grid with an even number of columns in which the first and last columns are antipodally identified. Note that, in this example, every two odd cycles intersect (ocp = 1). However, there is no small odd-cycle transversal. If the size of the grid is √ n × √ n, then the smallest odd-cycle transversal has size roughly √ n.
A second question is to derandomize the EPTAS. The difficulty here is concentrated in the sampling. The VC-dimension argument seems easy to deal with, however we need that our sampling falls in the maximum independent set (or at least in some independent set which is close to maximum).
Another natural question is to find a superclass of geometric intersection graphs which both contain unit balls and disks. More generally, is it possible to explain why we have the same forbidden induced subgraph (the complement of a disjoint union of two odd cycles) for disk graphs and unit ball graphs? So far, the proofs that this is indeed an obstruction (see Theorem 6 in [12] and Theorem 3 of this paper) are quite different for the two classes.
Let us call quasi unit disk graphs those disk graphs that can be realized for any ε > 0 with disks having all the radii in the interval [1, 1 + ε]. Recall that we showed that, for the clique problem, quasi unit ball graphs are unlikely to have a QPTAS, while unit ball graphs admit an EPTAS. In dimension 2, it can be easily shown that unit disk graphs form a proper subset of quasi unit disk graphs, which form themselves a proper subset of disk graphs. Can we find for this intermediate class an efficient exact algorithm solving Maximum Clique?

Problem 2. Is there a polynomial-time algorithm for Maximum Clique on quasi unit disk graphs?
Our PTAS works for Maximum Independent Set under three hypotheses. While it is clear that we crucially need that iocp 1 (or at least that iocp is constant), as far as we can tell, the boundedness of the VC-dimension and the fact that the solution is fairly large might not be required.

Problem 3. Is there a PTAS for Maximum Independent Set on graphs without the union of two odd cycles as an induced subgraph?
Atminas and Zamaraev [7] showed that the complement of K 2 + C s is not a unit disk graph when s is odd (where K 2 is an edge and C s is a cycle on s vertices). Is this obstruction enough to obtain an alternative polynomial-time algorithm for Maximum Clique on unit disk graphs?