Fractal dimension and lower bounds for geometric problems

We study the complexity of geometric problems on spaces of low fractal dimension. It was recently shown by [Sidiropoulos&Sridhar, SoCG 2017] that several problems admit improved solutions when the input is a pointset in Euclidean space with fractal dimension smaller than the ambient dimension. In this paper we prove nearly-matching lower bounds, thus establishing nearly-optimal bounds for various problems as a function of the fractal dimension. More specifically, we show that for any set of $n$ points in $d$-dimensional Euclidean space, of fractal dimension $\delta\in (1,d)$, for any $\epsilon>0$ and $c\geq 1$, any $c$-spanner must have treewidth at least $\Omega \left( \frac{n^{1-1/(\delta - \epsilon)}}{c^{d-1}} \right)$, matching the previous upper bound. The construction used to prove this lower bound on the treewidth of spanners can also be used to derive lower bounds on the running time of algorithms for various problems, assuming the Exponential Time Hypothesis. We provide two prototypical results of this type. For any $\delta \in (1,d)$ and any $\epsilon>0$ we show that: 1) $d$-dimensional Euclidean TSP on $n$ points with fractal dimension at most $\delta$ cannot be solved in time $2^{O\left(n^{1-1/(\delta - \epsilon)} \right)}$. The best-known upper bound is $2^{O(n^{1-1/\delta} \log n)}$. 2) The problem of finding $k$-pairwise non-intersecting $d$-dimensional unit balls/axis parallel unit cubes with centers having fractal dimension at most $\delta$ cannot be solved in time $f(k)n^{O \left(k^{1-1/(\delta - \epsilon)}\right)}$ for any computable function $f$. The best-known upper bound is $n^{O(k^{1-1/\delta} \log n)}$. The above results nearly match previously known upper bounds from [Sidiropoulos&Sridhar, SoCG 2017], and generalize analogous lower bounds for the case of ambient dimension due to [Marx&Sidiropoulos, SoCG 2014].

, matching the previous upper bound. The construction used to prove this lower bound on the treewidth of spanners, can also be used to derive lower bounds on the running time of algorithms for various problems, assuming the Exponential Time Hypothesis. We provide two prototypical results of this type: • For any δ ∈ (1, d) and any ε > 0, d-dimensional Euclidean TSP on n points with fractal dimension at most δ cannot be solved in time 2 O(n 1−1/(δ−ε) ) . The best-known upper bound is 2 O(n 1−1/δ log n) .
• For any δ ∈ (1, d) and any ε > 0, the problem of finding k-pairwise non-intersecting d-dimensional unit balls/axis parallel unit cubes with centers having fractal dimension at most δ cannot be solved in time f (k)n O(k 1−1/(δ−ε) ) for any computable function f . The best-known upper bound is n O(k 1−1/δ log n) .
The above results nearly match previously known upper bounds from [Sidiropoulos & Sridhar, SoCG 2017], and generalize analogous lower bounds for the case of ambient dimension due to [Marx & Sidiropoulos, SoCG 2014].

Introduction
The curse of dimensionality is a general phenomenon in computational geometry, asserting that the complexity of many problems increases rapidly with the dimension of the input. Sets of fractional dimension can be used to model various processes and phenomena in science and engineering [27].
Recently, the complexity of various geometric optimization problems was studied as a function of the fractal dimension of the input [25]. It was shown that, for several problems, improved algorithms can be obtained when the fractal dimension is smaller than the ambient dimension. Interestingly, the algorithms obtained in [25] nearly match the best-possible algorithms for integral dimension. In this paper, we give nearly-matching lower bounds, assuming the Exponential Time Hypotheis (ETH). We remark that there are several different definitions of fractal dimension that can be considered. Our results indicate that, for the case of Euclidean pointsets, the definition of fractal dimension we consider is the "correct" one for certain computational problems. That is, it precisely generalizes the dependence of the running time on the ambient dimension.

Our contribution
We obtain nearly-optimal lower bounds for various prototypical geometric problems. Our results are obtained via a general method that could be applicable to other problems.
Spanners We begin with a lower bound on the treewidth of spanners. It is known that any set of n points in R d admits a (1 + ε)-spanner of size n(1/ε) O(d) [24,29]. This result has been generalized for the case of fractal dimension. Specifically, it was shown in [25] that any n-point set in O(1)-dimensional Euclidean space, of fractal dimension δ > 1, admits a (1 + ε)-spanner of size n(1/ε) O(d) , and of pathwidth O(n 1−1/δ log n). We show the following lower bound, which establishes that the upper bound from [25] is essentially best-possible. Theorem 1.1. Let d ≥ 2 be an integer. Then for all δ ∈ (1, d), for all ε > 0 and for all n 0 ∈ N, there exists a set of n ≥ n 0 points P ⊂ R d , of fractal dimension at most δ , where δ − δ ≤ ε, such that for any c ≥ 1, any c-spanner G of P has tw(G) = Ω n 1−1/δ c d−1 .

Independent Set of Unit Balls
We consider the k-Independent Set of Unit Balls in R d , which is a prototypical geometric optimization problem, parameterized by the optimum. In this problem given a set of n unit balls in R d , we seek to find a set of k pairwise non-intersecting balls. It is known that this problem can be solved in time n O(k 1−1/d ) , for any d ≥ 2 [1,20], and that there is no algorithm with running time f (k)n o(k 1−1/d ) , for any computable function f , assuming ETH [20] (see also [18]). The upper bound has been generalized for fractal dimension as follows: It has been shown that when the set of centers of the balls has fractal dimension δ, the problem can be solved in time n O(k 1−1/δ )+log n [25]. We show the following lower bound on the running time, which nearly matches tis upper bound, up to a logarithmic term. Theorem 1.2. Let d ≥ 2 be an integer, and let 1 < δ < δ < d. If for all k, and for some computable function f , there exists an f (k)n o(k 1−1/δ ) time algorithm for finding k pairwise non-intersecting open balls in a collection of n unit balls with the centers having fractal dimension at most δ, then ETH fails.
Euclidean TSP It is known that TSP on a set of n points in d-dimensional Euclidean space can be solved in time 2 1−1/d n O(1) [26], and that there is no algorithm with running time 2 O(n 1−1/d−ε ) , for any ε > 0, assuming ETH. The upper bound has been generalized to the case of fractal dimension as follows. It has been shown that for set of fractal dimension δ > 1, in O(1)-dimensional Euclidean space, TSP can be solved in time 2 O(n 1−1/δ log n) . Here, we obtain the following nearly-tight lower bound. Theorem 1.3. Let d ≥ 2 be an integer. Then, for all δ ∈ (2, d), for all δ < δ and for all n 0 ∈ N, if there exists n ≥ n 0 such that Euclidean TSP in R d on all pointsets of size n and fractal dimension at most δ can be solved in time 2 O(n 1−1/δ ) , then ETH fails.

Overview of techniques
We now briefly highlight the main technical tools used in the paper.
High-level idea We derive our lower bounds by adapting a method from the case of graph problems. It is known that, for many problems on graphs, large treewidth implies large running time lower bounds (see, e.g. [19]). This is typically done by exploiting the duality between treewidth and grid minors. Specifically, it is known that, for any r, graphs of treewidth at least f (r), for some function r, have the (r × r)-grid as a minor [23]. In fact, the function f is known to be linear for planar graphs [22], and polynomial in general [5]. One can often obtain a lower bound on the running time by using the grid minor to embed a large hard instance in the input. We apply the above approach to the geometric setting by relating fractal dimension to treewidth. Specifically, we construct a pointset in Euclidean space, such that any O(1)-spanner must have large treewidth.
From fractal dimension to treewidth A main technical ingredient for obtaining nearly-optimal lower bounds is constructing pointsets such that the treewidth of any O(1)-spanner is as large as possible. For the case of exposition, we will describe the construction in the continuous case. We construct some X ⊂ R d , and we discretize Z by taking some O(1)-approximate 1 ε-net N ε of X. Let us refer to the fractal dimension of the resulting infinite family of nets N ε , as the fractal dimension of X (see Section 1.4 for precise definitions). Our goal is to construct some X, with some fixed fractal dimension δ ∈ (1, d], such that the treewidth of any O(1)-spanner of N ε is as large as possible as a function of 1/ε.
A first failed attempt: The Sierpiński carpet Let us now briefly describe the construction and point out the main technical challenges. A natural first attempt in R 2 is to let X be the Sierpiński carpet. This is a set obtained from the unit square by removing the central square of side length 1/3, and by recursing on the remaining 8 sub-squares (see Figure 1). Unfortunately, this construction does not lead to a tight treewidth lower bound. Specifically, the resulting set has fractal dimension δ = log 8/ log 3, while there exist O(1)-spanners of treewidth O(n 1−1/γ ), where γ is a constant arbitrarily close to log 6/ log 3.
Intuitively, this happens for the following reason. Let S ε be any O(1)-spanner for N ε . Then, the largest possible grid minor in S ε does not use most of the vertices in S ε . Thus, roughly speaking,  we can obtain a larger grid minor by constructing a set X so that as few vertices of S ε as possible are being "wasted".
Constructing a treewidth-extremal fractal: The Cantor crossbar Using the above observation, we define the set X as follows. We first recall that the Cantor set C is obtained from the unit interval by removing the central interval of length 1/3, and recursing on the other two (see Figure 2). We define C to be the Cartesian product of C with [0, 1], and we set X to be the union of two copies of C , where one is rotated by π/2. We refer to the resulting set as the Cantor crossbar (see Figure 3). We can sow that the resulting set achieves a nearly-optimal treewidth lower bound.
The above construction can be generalized to the case where the ambient dimension is d ≥ 2 as follows. Recall that, for any d ≥ 1, the Cantor dust in R d , denoted by D d , is the Cartesian product of d copies of the Cantor set (see Figure 4). Let e 1 , . . . , e d be the standard orthonormal basis in R d . For each i ∈ {1, . . . , d}, we define T i to be the Cartesian product of D d−1 with [0, 1], rotated so that [0, 1] is parallel to e i . Finally, we set X = T 1 ∪ . . . ∪ T d (see Figure 5).
The above construction gives a set with some fixed fractal dimension δ, for each fixed d ≥ 2. We can generalize the construction so that δ attains any desired value in the range (1, d]. The only difference is that, when defining the Cantor dust, we start with a Cantor set of smaller dimension. This can be done by removing the central interval of length α ∈ (0, 1), instead of 1/3, and recursing on the remaining two intervals of length (1 − α)/2.
From spanner lower bounds to running time lower bounds The above construction of the Cantor crossbar leads to a nearly-optimal lower bound for the treewidth of O(1)-spanners. We   next use this construction to obtain running time lower bounds. Informally, a typical NP-hardness reduction for some geometric problem in the plane works as follows: One encodes some known computationally hard problem by constructing "gadgets" that are arranged in a grid-like fashion in R 2 (see, e.g. [20]). More generally, for problems in R d , the gadgets are arranged along some d-dimensional grid. We follow a similar approach, with the main difference being that we arrange the gadgets along a Cantor crossbar.

Other related work
There has been a large body of work on determining the effect of doubling dimension on the complexity of various geometric problems [10,2,6,15,8,17,4,3,9,28]. Other notions of dimension that have been considered include low-dimensional negatively curved spaces [16], growth-restricted metrics [12], as well as generalizations of doubling dimension to metrics of so-called bounded global growth [11]. In all of the above lines of research the goal is to extend tools and ideas from the Euclidean setting to more general geometries. In contrast, we study restricted classes of Euclidean instances, with the goal of obtaining better bounds than what is possible in the general case.

Preliminaries
We give some definitions that are used throughout the paper. Definition 1.4 (Fractal dimension). [25] The fractal dimension of some P ⊆ R d , denoted by dim f (P ), is defined as the infimum δ, such that for any ε > 0 and r ≥ 2ε, for any ε-net N of P , and for any x ∈ R d , we have |N ∩ ball(x, r)| = O((r/ε) δ ).
We have the following lemmas showing invariance of fractal dimension under certain operations. Lemma 1.5. Let d ≥ 1 be an integer, let 0 < δ ≤ d and let c > 0 be some constant. Let P ⊂ R d be a pointset such that dim f (P ) = δ. Let P be the pointset obtained by uniformly scaling the points of P about the origin by a factor of c. Then dim f (P ) = δ.
Proof. Fix a constant c > 0. Consider the natural mapping f : P → P where every point p maps to the point obtained by scaling p by a factor of c about the origin. For all sets X ⊆ P we denote by f (X) the set Y = {f (p) | p ∈ X}. Similarly we use f −1 (Y ) to refer to the inverse mapping to X. First we observe that that for all ε > 0, any ε-net of P maps to a cε-net of P under f and any ε-net of P maps to an ε c -net of P under f −1 , since all pairwise distances are scaled by exactly a factor of c in P . Similarly for any x ∈ R d and r > 0, we have that P ∩ ball(x, r) is mapped to by P ∩ ball f −1 (x), r c . Therefore for any ε > 0 and r ≥ 2ε, for any ε-net N of P , and for any the definition of fractal dimension, it follows that dim f (P ) = δ. Lemma 1.6. Let d ≥ 1 be some integer, let 0 < δ ≤ d and let c > 0, k > 0 be some constants. Let P ⊂ R d be a pointset such that dim f (P ) = δ and for all u, v ∈ P , d(u, v) > 4c. For all p ∈ P let S p ⊂ R d be a set of points such that |S p | ≤ k and for all Proof. Fix constants c > 0 and k > 0. For all p ∈ P , let rep(p) ∈ S p denote an arbitrarily chosen representative point. Let ε > 0 and let N be an ε-net of P .
First we consider the case when ε > 4c. Let M be some ε 2 − 2c -net of P . Consider the pointset M = {rep(p) | p ∈ M }. Then M is an ε 2 -cover of P . Since N is ε-packing, this implies that every point in N is covered by a unique point in M . Therefore for any ε > 0 and r ≥ 2ε, for any ε-net N of P , and for any x ∈ R d , we have |N ∩ball(x, r)| ≤ |M ∩ball(x, r+ ε 2 )| ≤ |M ∩ball(x, r+ ε 2 +c)|. Since the pointset P has fractal dimension δ, this implies that |N ∩ ball(x, r)| ≤ O From the definition of fractal dimension this implies that dim f (P ) = δ. Suppose instead that ε ≤ 4c. Then let M be some ε-net of P . Since for all u, v ∈ P d(u, v) > 4c, it must be that M = P . Let M = P . Now using the same argument as before, we have that for any ε > 0 and r ≥ 2ε, for any ε-net N of P , and for any x ∈ R d , |N ∩ ball(x, r)| ≤ M ∩ ball x, r + ε 2 . Since M = P and M = P , it follows that M ∩ ball x, r + ε Again, from the definition of fractal dimension, it follows that dim f (P ) = δ.
Definition 1.7 (c-spanner). For any pointset P ⊂ R d , and for any c ≥ 1, a c-spanner for P is a graph G with V (G) = P , such that for all x, y ∈ P , we have where d G denotes the shortest path distance in G.
2. For every edge e ∈ G, there exists a t ∈ T such that both ends of e lie in V t .
3. V t 1 ∩ V t 3 ⊆ V t 2 , whenever t 2 lies in the unique path joining t 1 and t 3 in T .
The width of (T, V) is the number max{|V t | : t ∈ T } and the treewidth of G is the least width of any tree-decomposition of G.

Organization
This paper is organized as follows. Section 2 presents lower bound on the treewidth of spanners for arbitrary pointsets with integral dimension, and with fractal dimension. Section 3 presents running time lower bound on the Independent Set of Balls problem on pointsets with arbitrary fractal dimension in R d . The proof of Theorem 1.3 has been moved to Section 4 of the appendix. This theorem proves running time lower bound on the Euclidean TSP problem on pointsets with arbitrary fractal dimension in R d . The case of d = 2 is discussed in Section 4.1 and the case of d ≥ 3 is discussed in Section 4.2.

Lower bounds on the treewidth of spanners
In this section, we obtain lower bounds on the treewidth of spanners for arbitrary pointsets. In subsection 2.1, we consider pointsets with integral fractal dimension. In subsection 2.2, we consider a discretized version of the Sierpiński carpet whose fractal dimension is less than two but greater than 1. In subsection 2.3, we use a carefully chosen inductive construction to obtain a specific fractal pointset of fractal dimension log 6 log 3 . This pointset gives us a nearly tight lower bound on the treewidth of a spanner. We finally generalize this construction in subsection 2.4 and present the proof of Theorem 1.1.

Treewidth and integral dimension
We obtain lower bounds on the treewidth of spanners for pointsets with integral fractal dimension. We will make use of the following Threorem due to Kozawa et al. [14] for the proofs in this section.
Theorem 2.2. For any integer d ≥ 1, there exists a set of n points P ⊆ R d such that for any c ≥ 1, and for any c-spanner G of P , tw(G) = Ω n 1−1/d Proof. Fix an integer d ≥ 1. Let n ∈ N be such that n 1 d is an integer. Let P = {1, 2, · · · , n 1 d } d and let G be any c-spanner of P . Let p = (p 1 , . . . , p d ) be a point in P . We define P and X as follows: Consider the points in P . We call a row of points in P that is parallel to one of the d axes a full row if this row consists of exactly n any 1 ≤ i ≤ d, the points of any pair of full rows R and T that are both parallel to the i th axis. We have that for any pair of consecutive points x 1 , x 2 in R and for any pair of consecutive points y 1 , y 2 in T , no shortest path in G joining x 1 and x 2 can intersect any shortest path in G joining y 1 and y 2 . Suppose not, then let z be a point of intersection between two such shortest paths. Since G is a c-spanner and consecutive points in any row are distance 1 apart, we have d G (x 1 , z) + d G (x 2 , z) ≤ c and similarly, d G (y 1 , z) + d G (y 2 , z) ≤ c. But this implies that at least one of d G (x 1 , y 1 ), d G (x 1 , y 2 ), d G (x 2 , y 1 ) and d G (x 2 , y 2 ) is at most c due to triangle inequality. This is a contradiction because G is non-contracting and the distance between R and T is at least c + 1 by our choice of R and T . Now if we consider a shortest path between every pair of consecutive points in the row R and concatenate these paths, remove all loops, then we can obtain a path from one end of this row to the other end. Doing the same for all full rows in P , we end up with a set of paths traversing the points in the full rows. Moreover from the earlier argument, it follows that any two such paths obtained from parallel full rows are vertex disjoint. Thus for all 1 ≤ i ≤ d, we can obtain a set of vertex disjoint paths Q i in G that traverse the points in the full rows of P parallel to the i th axis.
Finally we define a subgraph H of G as follows: H consists of the points in X. Furthermore, for any pair of points p, q ∈ X such that p and q differ only along one coordinate, say the i th coordinate, and differ by exactly c + 1, H also consists of the sub-path between p and q of the corresponding path in Q i connecting p and q. Now contracting these paths in H between adjacent points in X results in a d-dimensional grid with n (c+1) d points. Thus, we conclude that

A first attempt: The Sierpiński carpet
Consider a set of points X obtained by the following method: start with a 3 k × 3 k integer grid for some k ∈ N and partition it into 9 subgrids of equal size. We delete all the points in the central subgrid and recurse on the remaining 8 subgrids. The recursion stops when we arrive at a subgrid containing a single point. This is a natural discrete variant of the Sierpiński carpet.
Theorem 2.3. Let δ be the fractal dimension of the set of points X obtained above. Then we have δ ≥ log 3 8.

Proof.
We start by recalling the definition of fractal dimension of a set of points P . It is the infimum δ > 0 such that for any ε > 0, for any ball B of radius r ≥ 2ε and for any ε-net N , we have As seen in the construction, the width of the grid reduces by 1 3 at every step of recursion. Thus we may assume that the width is 1 3 Taking log on both sides, we get log 8 ≤ δ log 3. Thus, δ ≥ log 3 8.
Theorem 2.4. There exists a set of n points P with fractal dimension δ ∈ (1, 2), and some c-spanner Proof. We consider the set of points P of the Sierpiński carpet. For completion, we briefly describe the construction below: We start with a [0, 3] × [0, 3] integer grid. This is a grid with 9 equal sized boxes. We leave the central box and partition each of the remaining 8 boxes into a 3 × 3 grid. We keep recursing on the new boxes obtained, every time leaving the central box. In the end, every box contains a single point. The pointset obtained in the end is a 3 k × 3 k grid with holes and a point in each of the boxes of the grid. The set of vertices P of this grid form a Sierpiński carpet.
We now add edges between grid points of P such that the graph obtained is a subgraph of the 3 k × 3 k grid graph. Now the points inside the boxes are joined to the grid graph in the following manner: for every box, the point inside it is joined to one of the pairs of diagonally opposite corners of the box. We observe that this is a c-spanner with c < 1 + √ 2. We denote this c-spanner by G. Consider the subgraph H of G obtained by removing the points inside the boxes of the 3 k × 3 k grid and the edges adjacent to them. We now show that H contains a n 1 3 × n 1 3 grid as a minor. The minor is obtained as follows: consider the central boxes (holes) in the grid that are left every time with no further partitioning. We compress each of these boxes to a box of the size of those in the 3 k × 3 k grid. We denote the resulting graph by M .
We claim that M is an n 1 3 × n 1 3 grid. We observe that after k steps of recursion, the minimum cut in G has 2 k edges. This is because the minimum cut in G is the one that partitions G into two equal parts (either horizontally or vertically) and passes through the largest empty central box in G.
Since the size of M is same as the size of the minimum cut in G, we get that M is a 2 k × 2 k grid. The number of points n = 8 k . This gives k = log 8 n and 2 k = n Here, δ = log 3 8 from Theorem 2.3. This gives tw(G) = Ω(n 1− 1 δ −ε ) for some fixed constant ε > 0. This establishes a lower bound on tw(G). We now prove a similar upper bound. This is done by constructing a tree decomposition of the spanner G. The construction is done in the following manner: The root bubble consists of vertices in the two middle rows and two middle columns of the graph G. The set of edges between the two middle columns form a minimum cut of G. The same is true for the set of edges between the two middle rows. From above, the size of minimum cut in G is 2 k . Thus the number of vertices in the root bubble is Θ(2 k ).
The removal of vertices of the root bubble partitions G into 4 connected components. Let the connected components be G 1 , G 2 , G 3 and G 4 . We now look at the minimum cut for each of these components. As before, we look at the minimum cut in the horizontal direction as well as in the vertical direction. For i ∈ [4], the minimum cut in G i along both horizontal and vertical directions passes through the largest empty box in G i . Note that for all i ∈ [4], G i contains a copy of the Sierpiński carpet obtained after k − 1 levels of recursion. Therefore we get that the size of the minimum cut in G i along both horizontal and vertical directions is Θ(2 k−1 ). For i ∈ [4], let the minimum cut (in the horizontal as well as vertical direction) in G i be denoted by S i respectively. The root bubble has four children and the i th child consists of vertices of the root bubble as well as vertices of the set S i .
In order to construct the third level of the tree, we look at the graph obtained after removing vertices in the bubbles at the second level. In each of the connected components obtained, we again look at the minimum cut in horizontal as well as vertical direction. The size of the minimum cut now is Θ(2 k−2 ). Every bubble in the second level has 4 children. Each of these children consists of vertices corresponding to the minimum cut of a connected component union vertices of all the bubbles in its ancestor path (i. e. bubbles occurring in the shortest path to the root bubble).
We keep constructing more levels of our tree in a similar manner as above. We stop when all edges of G get covered. The tree thus obtained has k levels. Every bubble at level l contains Θ(2 k + 2 k−1 + · · · + 2 k−l+1 ) vertices.
We now show that the decomposition obtained above is a valid tree decomposition. By construction, all edges are covered in this decomposition. Every bubble that is not a leaf has 4 children and contains all vertices belonging to the bubbles in its ancestor path. Thus, all conditions of a tree decomposition are satisfied.

One treewidth-extremal fractal: A discretized Cantor crossbar
In this section we describe the construction of a pointset in R 2 with a specific fractal dimension of log 6 log 3 . This pointset is a discretized version of the Cantor crossbar. We generalize this construction in the next section to construct pointsets with arbitrary fractal dimension.
Theorem 2.5. Let δ = log (6) log (3) . Then for all n 0 ∈ N, there exists a set P ⊂ R 2 of n ≥ n 0 points of fractal dimension at most δ, such that for any c ≥ 1, any c-spanner G of P has tw(G) = Ω n 1− 1 δ c .
Construction of the discrete Cantor crossbar . To prove the above theorem, we consider the set of points obtained as follows. First we define f (0) and h(0) and g(0) to be a single point. Then we inductively define h(i),g(i) and f (i) as follows. To get h(i) we start with a 3 i × 3 i integer grid and subdivide it into nine 3 i−1 × 3 i−1 integer grids. Then we remove all 3 sub-grids in the middle row and replace each of the 6 remaining sub-grids with copies of h(i − 1). To get g(i) we again start with a 3 i × 3 i integer grid and subdivide it into nine 3 i−1 × 3 i−1 integer grids. Then we remove all 3 sub-grids in the middle column and replace each of the 6 remaining sub-grids with copies of g(i − 1). Finally to get f (i) we start with a 3 i × 3 i integer grid and subdivide it into nine 3 i−1 × 3 i−1 integer grids. Then we remove the central sub-grid. We then replace the four corner sub-grids with copies of f (i − 1). We replace the middle sub-grid in the first and last rows with copies of h(i − 1) and we replace the middle sub-grids of the first and last columns with copies of g(i − 1) as depicted in Figure 6. The pointset we require is given by f (k) where k is any positive integer. We have the following two lemmas regarding the pointset f (k).
Substituting this in the previous inequality and solving gives us that |f (k)| ≤ 2 · 6 k .
Proof. Let x ∈ R 2 , ε > 0 and r ≥ 2ε. Let j be the smallest non-negative integer such that ε ≤ 3 j . First we define a family of ε-coverings of P . For all integers i ≥ 0 we define f (i), h (i) and g (i) to be ε-coverings of the points in f (i), h(i) and g(i) respectively. We will define them inductively A similar choice can be made for h (i) and g (i). Now for the case where i ≥ j we may inductively obtain f (i), h (i) and g (i) in a similar fashion to the construction of f (i), h(i) and g(i) respectively. f (i) can be obtained by starting with f (i) and replacing the copies of f (i − 1), h(i − 1) and g(i − 1) with copies of f (i − 1), h (i − 1) and g (i − 1) respectively. A similar approach can be used to obtain h (i) and g (i). Now consider ball(x, r) and let N be a 2ε-net of P and C be an ε-covering of P . We have that |N ∩ ball(x, r)| ≤ |C ∩ ball(x, r + ε)|. This is because every point in N is covered by a unique point in C since C is an ε-covering and N is 2ε-packing. Now we may set C to be f (k) which is an ε-covering of P = f (k). Let t ≥ 0 be the smallest integer such that 3 t ≥ 2r. Now we have that |f (k) ∩ ball(x, r + ε)| ≤ 5|f (t)| since the diameter of ball(x, r + ε) is at most 3r. Thus we have that |N ∩ ball(x, r)| ≤ 5|f (t)|. Using an argument similar to that of lemma 2.6 it follows that 5|f (t)| ≤ But from the definition of fractal dimension and the fact that we have it follows that dim f (P ) ≤ log (6) log (3) .
Proof. We observe that f (k) has 2 k rows with the property that any two consecutive points in the same row are at distance 1 from each other. This is because the number of such rows in h(k − 1) is 2 k−1 . We refer to such a row as full row. Similarly, the number of columns in f (k) with the property that any two consecutive points in the same column are at distance 1 from each other is 2 k . We refer to such a column as full column. Now we partition the rows of f (k) into 2 k c sets with each set containing c consecutive full rows. Precisely, the first set consists of the first c full rows and all other rows in between them, the second set starts from the next uncovered row and extends till c full rows are covered and so on. In the end, we get a grouping of rows of f (k) with each set (maybe except the last one) containing c consecutive full rows. We label these sets as S 1 , S 2 , . . . in the order of construction. The number of sets might be less than 2 k c . We do a similar grouping for the columns and label the sets formed as T 1 , T 2 , . . . in the order of construction.
Consider a set S i and take the middle full row of S i . For any pair of consecutive points x 1 , x 2 in this row, the path joining x 1 and x 2 lies entirely within S i . This is because G is a c-spanner of P . By concatenating these paths and removing all loops, we can obtain a path from one end of this row to the other end that lies entirely within S i . Let this path be P S i . Such a path exists inside every set S i . In a similar manner, every set T i of columns contains a path P T i from the top to the bottom of the column that lies entirely within T i .
We now look at paths P S 1 , P S 2 , . . . , P T 1 , P T 2 , . . .. Let the point of intersection of P S i and P T j be x i,j . Then, the graph consisting of all x i,j and paths joining x i,j , x i,j+1 and x i,j , x i+1,j for all i, j is a subgraph of G. All these paths are disjoint (except at the end points) since they belong to different sets. Moreover, if each of these paths is contracted to an edge, then we obtain a 2 k c × 2 k c grid. Thus, we conclude that tw(G) = Ω 2 k c . Proof

A family of treewidth-extremal fractals for all dimensions
We can now generalize the ideas from the previous section to obtain a family of pointsets that allow us to a get a lower bound on the treewidth of spanners for any given choice of fractal dimension. . Then, we set P to be f l,v,d (k), where k is any positive integer. We have the following lemmas regarding pointset P. Lemma 2.9. For all odd integers l and v such that l > v, and for all positive integers k > 0, we Proof. Let ε > 0 and r ≥ 2ε. Let j be the smallest non-negative integer such that ε ≤ (d − 1)l j . We first define a family of ε coverings of P . For all integers i ≥ 0, we define f (i), This is because diameter of any of these sets is √ dl i . Thus, the choice of ε ensures that any single point forms an ε-covering of its respective set.
. We obtain f (i) by starting with f l,v,d (i) and replacing copies of For a fixed x ∈ R d , consider the ball(x, r). Let N be a 2ε-net of P and C be an ε-covering of P . We have |N ∩ ball(x, r)| ≤ |C ∩ ball(x, r + ε)|. This is because every point in N is covered by a unique point of C, since N is a 2ε-net and C is an ε-covering of P . We may set C to be f (k), since f (k) is an ε-covering of P . Let t ≥ 0 be the smallest integer such that l t ≥ 2r. We have |f (k) ∩ ball(x, r + ε)| ≤ (2d + 1)|f (t)| since the diameter of ball(x, r + ε) is at most 3r. Thus, we have |N ∩ ball(x, r)| ≤ (2d + 1)|f (t)| ≤ (2d Now, from the definition of fractal dimension and the fact that we have Proof. This follows from Lemma 2.9 when applied to our choice of l,v and P . Proof. We calculate the number of full rows along an arbitrary dimension i since the number of full rows along every dimension is the same. We recall that a full row in G is such that consecutive points in the row are at distance 1 from each other. We observe that for any i ∈ Next we use a similar argument to that of theorem 2.2. Let us denote by S i the set of full rows of f l,v,d (k) parallel to the i th axis. Further for all j = i we denote by r i (j, m) the m th set of rows in S i along the j th axis. We next pick for all i ∈ [d] a subset of rows in S i S i = {r i (j, m) : j = i and (m mod (c + 1)) = 1}. Let X = S 1 ∩ S 2 ∩ . . . ∩ S d . Consider for all i ∈ [d] the points of any pair of full rows R, T ∈ S i . Similar to the argument used in theorem 2.2 we have that for any pair of consecutive points x 1 , x 2 in R and for any pair of consecutive points y 1 , y 2 in T , no shortest path in G joining x 1 and x 2 can intersect any shortest path in G joining y 1 and y 2 . Thus like in the earlier proof for all 1 ≤ i ≤ d we can obtain a set of vertex disjoint paths Q i in G that traverse the points in S i . Finally just as in theorem 2.2 we again consider H a subgraph of G as follows. H consists of the points in X and for any pair of adjacent points p, q ∈ X such that p and q differ only along say the i th coordinate H also consists of the sub-path of the corresponding path in Q i connecting p and q. Now contracting these paths in H to get edges between adjacent points in X results in a d-dimensional grid with side (l−v) k c . Thus, we conclude that tw(G) = Ω Proof of Theorem 1.1. Using Lemma 2.11 and Lemma 2.10, we get that This combined with the result of Lemma 2.10 proves the statement of the theorem.

Running time lower bound for Independent Set of Unit Balls
In this section, we present the proof of Theorem 1.2. Our argument uses a reduction from a type of Constraint Satisfaction Problem called the Geometric Constraint Satisfaction Problem. The definitions in this section are taken from [20]. [20] The input instance I of a constraint satisfaction problem is a triple (V, D, C), where V is a set of variables that can take values in the domain D, and C is a set of constraints, with each constraint being a pair s i , R i such that: • s i is a tuple of variables of size m i .
• R i is an m i -ary relation over D. A valid solution to the problem is an assignment of values from D to each of the variables in V such that for all constraints s i , R i , the assignment for each tuple s i is in R i .
For our purposes, we only need to consider the case where the constraints are binary, or in other words, for all i, we have that m i = 2. We may assume that the input size |I| of a binary CSP instance is a polynomial in |V | and |D|.
For an instance I of the Constraint Satisfaction Problem, the primal graph is a graph G with vertex set V and an edge between u, w ∈ V if and only if there exists a constraint s i , R i ∈ C, such that s i = (u, w).
Let  The instance can contain arbitrary unary constraints but the binary constraints are of a special form. A geometric constraint is a constraint (a, a ) , R with a = a + e i such that This means that, if variables a and a are adjacent with a being larger by one in the i-th coordinate, then the i-th coordinate of the value of a is at most as large as the i-th coordinate of the value of a .
We will use the following theorem from [20] in the proof of Theorem 1.2. We remark that the condition |V | = Θ(n d ) is implicit in [20]. , we can place the variables V on grid M such that their position relative to each other in M is the same as in R[n, d]. By abuse of notation, we refer to the subset of M containing variables V as V . We refer to the pointset f l,v,d (m) \ M as C. We observe that the points in C connect adjacent points of M . We now define a new set of variables V = V ∪ C. If a ∈ V , then the set of unary constraints for a is R a . If a ∈ C, then a belongs to a chain of points that connects two points of M along some dimension i, where i ∈ [d].
For an a ∈ C connecting two points of M along dimension i, we define R a as follows: Thus for every a ∈ C, we have |R a | = ∆. We define R a for all variables a ∈ C in a similar manner. The binary constraints on variables V are described as follows: a binary constraint is a constraint  . . . , 0, x i , 0, . . . , 0), where x i is equal to the i-th coordinate of h(a). It can be checked that h(a j ) ∈ R(a j ). Since every variable in V \ V connects some pair of adjacent variables of I, we define h on V \ V as above. It is straightforward to see that h is a satisfying assignment for I .
Proof of Theorem 1.2. We describe the construction of the set of balls B. We work with open balls of diameter 1. Then, we have that two balls are non-intersecting if and only if the distance between their centers is at least 1. Let α = 1 d∆ 2 . Let a = (a 1 , . . . , a d ) be a variable in V and let (a), R a be the unary constraint on a. For every constraint x = (x 1 , . . . , x d ) ∈ R a , we consider the point a + αx = (a 1 + αx 1 , . . . , a d + αx d ) and add an open ball of radius 1 2 centered at a + αx to B. We do this for every variable a ∈ V . We have dim f (f l,v,d (m)) = δ , for every a ∈ V , |R a | ≤ ∆ d and for every x ∈ R a , d(a, a + αx) ≤ 1 √ 2 . Thus using Lemma 1.6, we get that the fractal dimension of the set of centers of the balls in B is δ . We refer the reader to Figure 7 for a visualization of the set of centers.
Let B a denote the set of balls obtained from the unary constraints of a. Note that all the balls in B a intersect each other. Therefore if we find a collection B ⊆ B of pairwise non-intersecting balls, then |B | ≤ |V | and |B | = |V | is possible if B contains exactly one ball from every B a .
Let B 1 be the ball centered at a + αx and B 2 be the ball centered at a + e i + αx for some We claim that B 1 and B 2 are non-intersecting if and only if x i ≤ x i . We have that B 1 and B 2 intersect if and only if the distance between their centers is less than 1. The distance between their centers is given by

The above inequality is because for every
The first inequality holds because α = 1 d∆ 2 . Thus we have shown that if B 1 and B 2 are nonintersecting, then x i ≤ x i . On the other hand, if x i ≤ x i then (1 + α(x i − x i )) 2 ≥ 1. Since B 1 and B 2 are open balls, they are non-intersecting.
If a and a are not adjacent in f l,v,d (m), then for any x, x ∈ [∆] d the balls centered at a + αx and a + αx cannot intersect because the square of the distance between the centers is at least 2(1 − α∆) 2 > 1.
Let g be a satisfying assignment for I . For every variable a ∈ V , we select the ball a+αg(a) ∈ B a . If a and a are not adjacent in f l,v,d (m), then the corresponding balls a + αg(a) and a + αg(a ) do not intersect. If a and a are adjacent in f l,v,d (m), then there is a geometric binary constraint on a and a . Therefore, if say a = a + e i , then the binary constraint ensures that the i-th coordinate of g(a) is at most the i-th coordinate of g(a ). Thus, the balls centered at a + αg(a) and a + αg(a ) do not intersect. Therefore the balls with centers a + αg(a), a ∈ V form a set of |V | pairwise non-intersecting balls.
Conversely, let B 0 ⊆ B be a set of |V | pairwise non-intersecting balls. This is possible only if for every a ∈ V , the set B 0 contains a single ball from B a . Suppose the unique ball in B a B 0 is centered at a + αg(a), for some g(a) ∈ [∆] d . We claim that g is a satisfying assignment for I . It satisfies the unary constraints because a + αg(a) ∈ B a implies that g(a) ∈ R a . Now let a and a = a + e i be adjacent variables in f l,v,d (m). Since the balls centered at a + αg(a) and a + αg(a ) do not intersect, we get that the i-th coordinate of g(a) is at most the i-th coordinate of g(a ). Thus the geometric binary constraint on a and a is satisfied.
Remark 3.1. We can similarly show that assuming Exponential Time Hypothesis, for any δ ∈ (1, d) and any ε > 0, the problem of finding k-pairwise non-intersecting d-dimensional axis parallel unit cubes in a collection of n cubes with centers having fractal dimension at most δ cannot be solved in time f (k)n O(k 1−1/(δ−ε) ) , for any computable function f . Given a ≤-CSP instance I, we reduce I to another ≤-CSP instance I as explained in the beginning of this section. We then use the construction and analysis as in the proof of Theorem 3.2 of [20], replacing I with I . Using Theorem 3.3 and the proof of Theorem 1.2, we get the desired result.

Lower bound for TSP in R 2
We show a running time lower bound for TSP, on pointsets of arbitrary fractal dimension in R 2 . We use an argument inspired by the NP-hardness proof of Euclidean TSP in the plane due to Papadimitriou [21]. The proof involves a reduction of an instance of the Exact Cover Problem to a TSP instance. We reuse the following gadgets and definitions introduced by Papadimitriou in our construction. Each gadget (called configuration in [21]) is a specific arrangement of points.
1-chain . It is a configuration consisting of a set of points p 1 , . . . , p k ∈ R 2 where for all i, p i+1 − p i = 1. Furthermore, p i and p i+1 differ in a single coordinate. This configuration is depicted in Figure 8-a (along with a schematic abbreviation in Figure 8 Figure 9-a. The distance between adjacent points in each row is 2 and the distance between the two rows is 1. A schematic abbreviation of a 2-chain is depicted in Figure 9-b. This configuration can be traversed optimally in two modes referred to as mode 2 and mode 1 which are depicted in Figure 9-c and 9-d.   Figure 11-a (abbreviation in Figure 11-b). It has height 4 and width 8. Two of the modes in which it can be traversed are depicted in Figure  11-c and Figure 11-d. Figure 11: configuration A configuration -B . This configuration is depicted in Figure 12-a (abbreviation in Figure 12-b). It has height 4 and width 8. If it is entered via a 2-chain traversed in mode-2, then it can only be traversed optimally if the tour traverses it as depicted in Figure 12-c. On the other hand if it is entered via a 2-chain traversed in mode-1, then it can visit points above or below it while traversing optimally as depicted in Figure 12-d. b-component . Let P be a set of points supporting a distance function d. We call S ⊂ P a b-component if S is maximal with respect to the following properties:

configuration -A . This configuration is depicted in
1. For all u ∈ S, min{d(u, v)|v ∈ S} ≥ b.
2. For all u ∈ S, min{d(u, v)|v ∈ S} < b. k-path . A k-path of P is a set of k vertex disjoint, not-closed paths that cover P . b-compact . S ⊂ P is b-compact if for all positive integers k, there exists a k-path of S that has length less than b plus the length of an optimal k + 1-path. vertical-chain . This configuration consists of two parallel columns of points. The distance between adjacent points in each column is 1 and the distance between the two columns is 1. This configuration is depicted in Figure 13-a (abbreviation in Figure 13-b).

Figure 13: vertical-chain
Definition 4.2 (The Exact Cover Problem). In this problem, we are given a set U and a collection S of subsets of U . The objective is to find a subset of elements of S that are pairwise disjoint and that cover all the elements of U . This problem is one of the 21 problems shown by Karp to be NP-complete [13]. In fact the reduction from 3-SAT to the Exact Cover Problem given by Karp also implies that this problem is ETH-hard.

The construction
First, we define a cell to be any square in R 2 of side 2a + 11, where a = 20. Next we define the following point configurations within a cell: let an X-cell consist of a H gadget, an A gadget and 2-chains, let a Y -cell consist of a 2-chain and let Z-cells and Z -cells consist of two parallel vertical-chains as depicted in figure 14.
We are now ready to describe the construction. We start with the pointset described in 2.4 and then replace each point with carefully chosen combinations of the above defined gadgets. Since we are in the plane, we have d = 2. We pick two odd integers l and v such that l > v and δ ≥ log(l(l−v)) log(l) > δ .
We can always find such a pair of odd integers. Let δ = log(l(l−v)) log(l) . Now for all integers i ≥ 0, consider the pointset f l,v,2 (i). We can modify the pointset as follows: we scale all the points about the origin by a factor of 2a + 11. Then we replace each f l,v,2 (0) point by an X-cell, each h l,v,2 (0) point by a Y -cell, and each g l,v,2 (0) point by a Z-cell. We denote the resulting pointset by F l,v,2 (i).
Given an instance of the Exact Cover Problem with a universe U = {u 1 , . . . , u m } and a collection S = {T 1 , . . . , T m } of subsets of U such that |S| = |U | = m, we reduce it into an instance of TSP on a set of points P ⊂ R 2 with |P | = n = O m , removing the first row of H gadgets and introducing 1-chains connecting the rows of 2-chains as depicted in Figure 15. From the construction, F l,v,2 ( log(m) log(l−v) ) consists of m rows of 2-chains R 1 , R 2 , . . . , R m . These correspond to the sets in S and the columns correspond to the elements of U .
Finally, just as in the construction by Papadimitriou, we replace the first A gadget above each H gadget with a copy of gadget B if the element of U corresponding to that column is in the set of S corresponding to the row of the chosen H gadget. Furthermore we also replace the copies of Z-cells between the H gadget and the newly added B gadget with copies of Z -cells. This gives us our final pointset P . We will denote by H i,j the j th H gadget from the left in the i th row of H gadgets.
Proof. We observe that P is obtained by merely scaling the pointset f l,v,2 (i) and replacing each point by at most k points all within a distance of c of the original point, where k and c are constants. Since f l,v,2 (i) has fractal dimension δ for our choice of l and v, applying Lemmas 1.5 and 1.6 gives us the required bound on the fractal dimension of P .
Before we prove the main result we restate the following lemma from [21] which we will reuse in our analysis. Lemma 4.4 ([21]). Suppose that in an instance E of the TSP we have N a-components G 1 , G 2 , . . . , G N , such that the distance between any two components is at least 2a, and G 0 , the remaining part of E, is a-compact. Suppose that any optimal Traveling Salesman path of E has its endpoints on G 0 , and that they do not contain links between any two a-components of E. Let L 1 , . . . , L N be the lengths of the optimal 1-paths of G 1 , . . . , G N and L 0 the length of the optimal (N + 1)-path of G 0 . If there is a 1-path P of E consisting of the union of an optimal (N + 1)-path of G 0 , N optimal 1-paths of G 1 , . . . , G N and 2N edges of length a connecting a-components to G 0 , then P is optimal. If no such 1-path exists, the optimal 1-path of E has length greater than L = L 0 + L 1 + . . . + L N + 2N a.
Proof of Theorem 4.1. We reduce the Exact Cover Problem to TSP. The pointset required is P . Just as in the proof of Papadimitriou [21](Theorem 2 ), we have that whenever a TSP path traverses an A gadget it can also optimally visit a H gadget above or below A. However when the path traverses a B gadget it optimally visits a H gadget above or below B if and only if the corresponding 2-chain is traversed in mode 1. The m(m − 1) H gadgets are a-components. The remaining points in P are a-compact as there is a path traversing them such that every edge has length at most 8. This implies that we may apply Papadimitriou's technical Lemma 4.4 from [21]. We have that N = m(m − 1), and L 1 = . . . = L m = 32. The shortest 1-path of the a-compact portion of P obtained after removing the H-gadgets has length L 0 = m 2 (3a+21)+m(4a+13+ √ 2)+2m−2a+11. Suppose an optimal path Q as described in Lemma 4.4 exists. Then Q must visit each 2-chain of P in either mode 1 or mode 2. Furthermore Q must visit a configuration H from every configuration A to maintain optimality. If Q visits a configuration B in mode 2 then it can not visit a vertically adjacent configuration H. Since there are m − 1 rows of configuration H and n rows of configurations A and B it must be that Q traverses exactly one configuration B in mode 2 for every column. This implies that the sets corresponding to the rows of 2-chains that are traversed in mode 2 cover U exactly. In the other direction if a solution to the instance of Exact Cover Problem exists then we may traverse the rows corresponding to the sets in the solution in mode 2 to obtain an optimal path as described in Lemma 2 of [21]. This implies that if the Euclidean TSP path instance can be solved in time then the corresponding instance of the Exact Cover Problem can be solved in time 2 o(m) and ETH fails.

Lower bound for TSP in R d
In this Subsection we show a running time lower bound for TSP, on pointsets of arbitrary fractal dimension in R d , for d ≥ 3.
Theorem 4.5. Let d ≥ 3 be some integer. Then, for all δ ∈ (2, d), for all δ < δ and for all n 0 ∈ N, if there exists n ≥ n 0 such that Euclidean TSP in R d on all pointsets of size n and fractal dimension at most δ can be solved in time 2 O(n 1−1/δ ) , then ETH fails.
We prove the above theorem using a similar argument to that of Marx and Sidiropoulos [20] where they obtain a lower bound for the running time of Euclidean TSP in R d . The proof uses a reduction of an instance of the Constraint Satisfaction Problem to a TSP instance. Again we use the earlier mentioned gadgets introduced by Papadimitriou [21] in our construction. We will also use the following theorem from [20].

Reduction of CSP to TSP
We now show that for all δ ∈ (2, d) and for all δ < δ, it is possible to pick a corresponding δ < δ < δ and obtain a reduction of an instance of the Constraint Satisfaction Problem to an instance of TSP on a pointset with fractal dimension δ . Let I = (V, D, C) be an instance of the Constraint Satisfaction Problem with primal graph R[N, d]. We arbitrarily pick a pair of positive integers l and v such that We can always assume that k is an integer because otherwise we can just add more variables and constraints that will not affect the solution of I, until N is large enough. This will only change the size of the instance by at most a factor of (l − v) which is a constant.
The base pointset . Having fixed our choices for l, v and k we now refer to the construction used to prove theorem 1.1. First we define two classes of points. We call the point of f l,v,d (0) a grid point. Also for all i ∈ {1, . . . , d} we call the point of h l,v,d i (0) a connection point. Since for all i, the pointset f l,v,d (i) is constructed inductively we have that every point of f l,v,d (i) is either a grid point or a connection point. Let P be a rescaling of the points of f l,v,d (k) by a factor of γ|D| where γ will be determined later. Let P g ⊂ P be the set of grid points of P and P c ⊂ P be the set of connecting points of P . For all i ∈ {1, . . . , d}, let P i ∈ P c be the set of h l,v,d i (0) points in P c . For all x ∈ P , we denote by box(x), the d-dimensional hypercube of side length γ|D| centered at x. We will also define a spanner G with vertex set V (G) = P . For all i ∈ {1, . . . , d} and all u, v ∈ P i such that the coordinates of u and v differ only along the i th dimension by exactly γ|D| we have that the edge (u, v) ∈ E(G). For all u ∈ P g and v ∈ P such that the coordinates of u and v differ only along a single dimension by exactly γ|D| we have that the edge (u, v) ∈ E(G). Similar to the proof of Theorem 1.1, we observe that contracting all edges of G incident to vertices in P c gives a graph G which is an (l − v) kd or N d d-dimensional grid.
Substituting gadgets . Next for all u ∈ P , we consider box(u) and inside this d-dimensional hypercube we replace u with points corresponding to certain gadgets to get a TSP instance (X, α) similar to the approach used in subsection 4.1. Intuitively these gadgets will be used to represent the variables and constraints of the Constraint Satisfaction Problem instance I. We will also reuse the gadgets configurations A, B and H described in the proof of theorem 4.1. We now describe the following generalized version of 1-chains for higher dimensions and a variant of 2-chains called flexible 2-chains that we will need for our construction. In what follows we use · 1 to denote the 1 distance.   Combined with the earlier observation that G contains an N d grid this implies a natural mapping from V to P g . We identify the variables V with the corresponding points in P g . Henceforth we use the terms variable, point and vertex interchangeably to refer to the elements of V , P and V (G). Each variable u ∈ V has at most 2d variables that it shares constraints with given by its neighbors in G . We denote this set of variables by N (u). Similarly we denote by S(u) the set of vertices in G that share an edge with u. Note that N (u) need not be equal to S(u). For all i ∈ {1, . . . , d}, and for all v ∈ S(u) such that the line passing through u and v is parallel to dimension i we define interface(u, v) = interface(v, u) to be the line segment of length γ|D| parallel to dimension (i mod d) + 1 passing through the center of the (d − 1)-dimensional hypercube box(u) ∩ box(v).
For all u ∈ V and for all j ∈ {1, . . . , |D|}, we will add the following gadgets to box(u). We add two 2-chains Γ(u, j, 1) and Γ(u, j, 2). For each neighbor v ∈ N (u), we add three flexible 2-chains Γ(u, j, v, 1), Γ(u, j, v, 2) and Γ(v, j, u). We also ensure that for all v ∈ N (u) and for all j ∈ {1, . . . , |D|} a pair of end points of the flexible 2-chains Γ(u, j, v, 1) and Γ(u, j, v, 2), and both pairs of end points of Γ(v, j, u) lie on interface(u, r) evenly spaced apart, where r ∈ S(u) is adjacent to u and lies on the shortest path from v to u in G. This is depicted in figure 16 for d = 3. We then fix an arbitrary ordering π : {1, . . . , 2d} → N (u) and for all i < 2d link the non-interface ends of the flexible 2-chains Γ(u, j, π(i), 2) and Γ(u, j, π(i + 1), 1). Next, we link one end of Γ(u, j, 1) to Γ(u, j, π(1), 1) and link one end of Γ(u, j, 2) to Γ(u, j, π(2d), 2). We also add |D| − 1 copies of configuration H and ensure that there exists a 2-plane h(u) such that for all j ∈ {1, . . . , |D|}, subsets of Γ(u, j, 1) are arranged with appended copies of configuration B and alongside copies of configuration H as depicted in figure 17. This will ensure that in the optimal solution, Γ(u, j, 1) is traversed in mode 2 for exactly one value of j corresponding to a choice of assignment for the variable u. Next for each constraint (u, v), R and each (a, b) ∈ D 2 such that (a, b) ∈ R, we add to box(u), two new vertices x(u, a, v, b) and y(u, a, v, b) and a new flexible 2-chain Γ(u, a, v, b) from x(u, a, v, b) to y(u, a, v, b). We next introduce three B configurations B(u, a, v, b, 1), B(u, a, v, b, 2) and B (u, a, v, b, 3). Finally we add two copies of configuration -H H(u, a, v, b, 1) and H(u, a, v, b, 2). We arrange these newly added gadgets along with subsets of the flexible 2-chains Γ(u, a, v, 1) and Γ(v, b, u) such that they are in a plane h(u, v, a, b) as in figure 18. This ensures that in any optimal solution at most one of Γ(u, a, 1) and Γ(v, b, 1) may be traversed in mode 2. Note that the shared constraints are re-encoded into similar gadgets in box(v) swapping the parameters u and a for v and b respectively when naming them. This is done merely for ease of presentation even though it is redundant in terms of the actual reduction argument. Figure 18: Gadgets corresponding to the constraints of the CSP Furthermore, for all i ∈ {1, . . . , d} and for every point u ∈ P i with S(u) = {l, r}, we will populate box(u) with 4|D| parallel co-planar 2-chains that run from interface(u, l) to interface(u, r). For all adjacent u, v ∈ V that differ in coordinate i and for all a ∈ {1, . . . , |D|} these 2-chains will ensure that the ends of Γ(u, a, v) in box(v) connect to Γ(u, a, v, 1) and Γ(u, a, v, 2) in box(u). When l, r ∈ P i , these 2-chains will link with the corresponding 2-chains in box(l) and box(r) at interface(u, l) and interface(u, r) respectively. This is depicted in figure 19 when d = 3. Figure 19: Interface in box(u) for u, l, r ∈ P i when d = 3 Finally, we add 1-chains that connect the flexible 2-chains so that the optimal solution traverses all 2-chains. To this end, we consider a Hamiltonian path h in G and consider the vertices of G in the order visited by h. When considering a vertex u, we add 1-chains appending all the flexible 2-chains Γ(u, j, 1) and Γ(u, j, 2) and then we add 1-chains to append all Γ(u, a, v, b) that have not already been appended by 1-chains. Consider two arbitrary corner variables u, w ∈ V , we introduce two points p and q, and add a 1-chain from p to Γ(u, 1, 1), and a 1-chain from Γ(w, |D|, 2) to q such that the following is true. Proof. Our proof follows an identical approach to that of Marx and Sidiropoulos [20] (Lemma 4.5). Given an instance of the Constraint Satisfaction Problem I, we construct a TSP instance (X, α) as described in the construction above. Let G 1 , . . . G m denote the H configurations in P and let G 0 = P \ ∪ m i=1 G i . Let a = 20. Leaving enough space between the different gadgets in X will ensure that the following properties are maintained: 1. Every configuration H in X is an a-component.

2.
Any two copies of configuration H in X are at least distance 2a apart.
3. Every optimal TSP path of X has its endpoints in G 0 ; this follows from Lemma 4.10.
4. G 0 is (a, m + 1)-compact. We can ensure that this is satisfied by enforcing the following conditions: 1) Distinct 2-chains and flexible 2-chains that are not linked are at least distance 20 from each other. 2) Distinct 1-chains are at least distance 20 from each other. 3) 1-chains and flexible 2-chains that don't share an end point are at least distance 20 from each other. 4) Let C be a 1-chain that shares an endpoint p with some flexible 2-chain C 0 . Then, there exists a line l in R d , with p ∈ l, such that the 20 segments in Q closest to p lie in l, and the 20 points in C closest to p also lie in l; all other points in C are at distance at least 20 from C 0 .
The above conditions can be achieved by setting γ to be large enough since the flexible 2-chains can turn and orient to any axis. Suppose now that I is satisfiable, and let F : V → {1, . . . , |D|} be a satisfying assignment for I. We can build a Traveling Salesperson path H for X as follows. We start at p, and we traverse the 1-chain originating at p. When we reach a 2-chain C, we distinguish between the following cases: 1) Suppose that C is a 2-chain of the form Γ(u, i, 1) for some u ∈ V , and i ∈ [|D|]. If F (u) = i, then we begin traversing C in mode 2, and if F (u) = i, then we begin traversing C in mode 1.
2) Suppose next that C is a 2-chain of the form Γ(u, i, v, j) for some u, v ∈ V , and i, j ∈ {1, . . . , |D|}. This implies that there exists a constraint (u, v), R , with (i, j) ∈ R. Since F satisfies I, it follows that either F (u) = i, or F (v) = j. If F (u) = i, and F (v) = j, then we traverse Γ(u, i, v, j) in mode 2. If F (u) = i, then we traverse Γ(u, i, v, j) in mode 1, and we traverse B(u, i, v, j, 2) together with H(u, i, v, j, 1). If F (v) = j, then we traverse Γ(u, i, v, j) in mode 1, and we traverse B(u, i, v, j, 2) together with H(u, i, v, j, 2).
Upon reaching the unlinked end of a flexible 2-chain, we traverse the 1-chain that is attached to it, and we proceed to the next unlinked end of a flexible 2-chain. Eventually, we reach q, and the path terminates. It is immediate to check that the resulting path Q visits all points in X. This gives us the following property: 5. The path H consists of the union of an optimal (m + 1)-path for G 0 , m optimal 1-paths for G 1 , . . . , G m , and 2m edges of length a connecting a-components to G 0 .
We now show the converse, that given an optimal path we can obtain a satisfying assignment to the instance of the Constraint Satisfaction Problem. Any optimal path Q must consist of an optimal (m + 1)-path for G 0 , m optimal 1-paths for G 1 , . . . , G m , and 2m edges of length a connecting G 0 with G 1 , . . . , G m (two edges for each a-component). By Lemma 1 of [21], we have that for each i ∈ {1, . . . , m}, the configuration-H G i is visited in such a way that Q must contain two edges between each configuration-H G i and some configuration-B that is attached to some flexible 2-chain C, such that G i is a neighbor of C, and C is traversed in mode 1. This implies by the construction that for each u ∈ V , exactly one of the 2-chains Γ(u, j, 1) is traversed in mode 2. We can construct an assignment F for I by setting F (u) = j, where Γ(u, j, 1) is traversed in mode 2. It remains to check that F satisfies I. Let (u, v), R be a constraint, and let (i, j) ∈ R. Again, by the construction, we have that at least one of the flexible 2-chains Γ(u, i, 1), Γ(v, j, 1) is traversed in mode 2, and therefore either F (u) = i, or F (v) = j. It follows that F satisfies I.
Finally we obtain an upper bound for |X|. Since we start with a rescaled instance of f l,v,d (k) and merely replace each point with at most |D| O(1) points, it follows that |X| ≤ N (d−1) δ δ−1 |D| O(1) .