1 Introduction and Results

For \(d\in {{\mathbb {N}}}\) and a point set \(P\subset [0,1]^d\) we define the dispersion of P by

$$\begin{aligned} {{\,\mathrm{disp}\,}}(P) \;:=\; \sup _{B:B\cap P=\varnothing }\, |B|, \end{aligned}$$

where the supremum is over all axis-parallel boxes \(B=I_1\times \cdots \times I_d\) with intervals \(I_\ell \subset [0,1]\), and |B| denotes the (Lebesgue) volume of B. As we are interested in point sets which make the above quantity as small as possible, we additionally define, for \(n,d\in {{\mathbb {N}}}\), the n-th-minimal dispersion

$$\begin{aligned} {{\,\mathrm{disp}\,}}(n,d) \;:=\; \inf _{\begin{array}{c} P\subset [0,1]^d:\\ \#P=n \end{array}}\, {{\,\mathrm{disp}\,}}(P), \end{aligned}$$

where \(\#P\) denotes the cardinality of the set P. For \(\varepsilon \in (0,1)\), we also introduce

$$\begin{aligned} N(\varepsilon ,d) \;:=\; \min \Bigl \{n:{{\,\mathrm{disp}\,}}(n,d)\le \varepsilon \Bigr \}. \end{aligned}$$

i.e., the minimal cardinality of a point set \(P\subset [0,1]^d\) that has dispersion smaller than \(\varepsilon \).

Besides the fact that the above geometric quantities are interesting in its own right, they also attracted attention in the numerical analysis community, especially when it comes to very high dimensional applications. The reason is that bounds on the (minimal) dispersion lead to bounds on worst-case errors, and hence the complexity, for some numerical problems, including optimization and approximation in various settings, see [5, 24, 31, 34, 38, 42, 43, 46]. This is a similar situation as for the much more studied discrepancy, which corresponds to certain numerical integration problems, see e.g. [9, 10, 13, 32, 33, 35].

Moreover, bounding the dispersion is clearly also related to the problem of finding the largest empty box. In dimension two, this is the Maximum Empty Rectangle Problem, which is one of the oldest problems in computational geometry. For the state of the art and further references we refer to [8, 14,15,16,17, 28].

Regarding bounds on the inverse of the minimal dispersion, we have

$$\begin{aligned} \frac{\log _2(d)}{8\varepsilon } \;\le \; N(\varepsilon ,d) \;\le \; \frac{C^d}{\varepsilon } \end{aligned}$$

for some \(C<\infty \) and all \(\varepsilon <1/8\), see [1], where the upper bound is attained by certain digital nets. See also [15, 38] for a related upper bound. Although these bounds show the correct dependence on \(\varepsilon \), they are rather bad with respect to the dimension d. This gap was narrowed in the past years by several authors, see e.g. [23, 25, 39, 41, 45], including the important work of Sosnovec who proved that the logarithmic dependence on d is optimal. With this respect, the best bound at present is

$$\begin{aligned} \frac{\log _2(d)}{8\varepsilon } \;\le \; N(\varepsilon ,d) \;\le \; 2^7\,\log _2(d)\,\frac{\bigl (1+\log _2(\varepsilon ^{-1})\bigr )^2}{\varepsilon ^{2}}, \end{aligned}$$
(1.1)

see [45] and Theorem 4.1 below. Note that the logarithmic dependence is special for the cube, as it is known that, for the same problem on the torus, we have a lower bound linear in d, see [44]. Depending on the relation between d and \(\varepsilon ^{-1}\), (1.1) can sometimes be improved. We refer to [7, 26] for recent results in this direction as well as for further references. Let us stress, that we are mainly interested in the regime, where d is (much) larger than \(\varepsilon ^{-1}\) and where the logarithmic dependence on d is crucial.

The main drawback of most of these results is that they only show the existence of point sets with small dispersion. Often, such point sets are at the core of approximation algorithms and are the only non-constructive ingredient in the corresponding proofs, see e.g. [5, 34, 42, 43] and references therein (in particular, [34, Thm. 11] and [43, Thm. 2.2]). Hence, explicit, deterministic constructions for point sets lead directly to “constructive” algorithms for certain high-dimensional approximation problems.

For example, the bound from [34, Thm. 11] on the minimal number of function evaluations needed for uniform recovery of certain (tensor-product) functions is based on a random construction, and is therefore only an existence result. If we plug in our deterministic construction, and note that the “dispersion part” of the upper bound is insignificant compared to the “approximation part”, when it comes to high dimensions, we see that we can achieve basically the same bound, but in a purely constructive way.

In this paper, we consider explicit constructions of point sets with small dispersion, i.e., deterministic algorithms, which for given integer \(d\ge 2\) and positive parameter \(\varepsilon >0\) construct a point set \(P\subset [0,1]^d\) with dispersion at most \(\varepsilon \). The quality of the algorithm is measured by the cardinality of the output set P and by its running time, i.e., by the number of algebraic operations on real numbers executed by the algorithm. Concerning such explicit constructions, we are only aware of the above mentioned digital nets, which lead to a bad d-dependence, and sparse grids, which satisfy the upper bound \(N(\varepsilon ,d)\le (2d)^{\log _2(1/\varepsilon )}\), see [23]. It is already clear from the number of points, that both do not lead to constructions of point sets with small dispersion that can be carried out in time that is polynomial in d.

Moreover, as the existence proofs are based on random points on a finite grid, one could use the naive algorithm: try each of the possible configurations, calculate its dispersion (if possible) and output a set that satisfies the requested bound. The running-time of this algorithm is (in the worst case) clearly at least exponential in d.

Under the name Small Hitting Sets, a more involved construction from [25] leads to point sets of size \(\mathrm{poly}\bigl (\frac{d\log (d)}{\varepsilon }\bigr )\), and the running-time of the presented algorithm is polynomial in d and \(\varepsilon ^{-1}\). (Note that the additional parameter in [25] has to be set to \(m=d/\varepsilon \), see [25, p. 217].) Hence, there is a fully polynomial-time algorithm for the dispersion, if the parameters are d and \(\varepsilon ^{-1}\).

Reconsidering the bound (1.1), one may think, however, that \(\log (d)\) (instead of d) would be an appropriate parameter for the problem complexity. Here, we show, using deep results from the theory of error-correcting codes, that point sets with dispersion at most \(\varepsilon >0\) and size of the order \(\log (d)\cdot \mathrm{poly}(1/\varepsilon )\) can be constructed in time that is polynomial in d. Unfortunately, we do not have a good control on the dependence on \(\varepsilon ^{-1}\), and it remains an open problem to find a construction that is also polynomial in \(\varepsilon ^{-1}\).

Our two main results are derandomized versions of the results from [41, 45]. Both use different approaches and lead to somewhat different results. The first one, as discussed in Sect. 3, leads to point sets of size \({\mathcal {O}}_\varepsilon (\log d)\) that can be constructed in time linear in the size of the output, i.e., in time \({\mathcal {O}}_\varepsilon (d\log d)\), see Algorithm 1 and Theorem 3.3 in Sect. 3.3. Here, and in the following, \({\mathcal {O}}_\varepsilon (\log d)\) means that the implied constant depends on \(\varepsilon \) in an unspecified way. A second, and much more involved, construction will be given by Algorithm 2 in Sect. 4.4. The corresponding result reads as follows.

Theorem 4.4

There is an absolute constant \(C<\infty \) such that, for all \(\varepsilon \in (0,\frac{1}{4}]\) and \(d\ge 2\), Algorithm 2 constructs a set \(P\subset [0,1]^d\) with \({{\,\mathrm{disp}\,}}(P)\le \varepsilon \) and

$$\begin{aligned} \#P\le C \left( \frac{1+\log _2(\varepsilon ^{-1})}{\varepsilon }\right) ^{4} \log (d^*), \end{aligned}$$

where \(d^*:=\max (d, 2/\varepsilon )\). The running-time of Algorithm 2 is \({\mathcal {O}}_\varepsilon \bigl (d \log (d)\bigr )\).

Note that, in contrast to Algorithm 1, the point set that is constructed by Algorithm 2 has size that is polynomial in \(\varepsilon ^{-1}\). However, as the proof shows, its computational cost is at least exponential in \(\varepsilon ^{-1}\).

Our general approach is as following. We start with a detailed inspection of the random constructions of point sets with small dispersion. This will allow us to clearly separate the setting of the construction and its randomized part. It will turn out then, which properties are crucial for each of the approaches and what exactly is the role of randomness. Afterwards, we replace the randomized part by a deterministic one.

Remark 1.1

Regarding the discrepancy of point sets, it is known that the decision problem, if a given point set has discrepancy smaller than \(\varepsilon \), is known to be NP-hard, see [20] or [12, Section 3.3], and the same is true for the dispersion, if the dimension d is part of the input, cf. [6]. For upper bounds on the cost of constructing points with small discrepancy and further literature, see [11, 12, 18, 19]. However, all known algorithms for this problem so far have running-time exponential in d, or do not lead to a point set of size polynomial in d and \(\varepsilon ^{-1}\). We hope that the results of this paper will lead to some progress also for this problem.

2 Basics from Coding Theory

Our deterministic constructions of point sets with small dispersion will be essentially obtained by certain “derandomization” of recent proofs from [41, 45]. As we will rely on rather deep tools from coding theory, we summarize in this section the necessary definitions and results for later use.

2.1 Universal Sets

First, we introduce the concept of (nk)-universal sets, which is also known in coding theory under the name of t-independent set problem. It has its roots in testing of logical circuits [40].

Definition 2.1

((nk)-universal sets) Let \(1\le k\le n\) be positive integers. We say that \(T\subset \{0,1\}^n\) is an (nk)-universal set, if for every index set \(S\subset \{1,\ldots ,n\}\) with \(\#S=k\), the projection of T on S contains all possible \(2^k\) configurations.

Naturally one is interested in (randomized and deterministic) constructions of small (nk)-universal sets. The straightforward randomized construction provides the existence of an (nk)-universal set of size \(\lceil k2^k\log (n)\rceil \). On the other hand, [22] gives a lower bound on the size of an (nk)-universal set of the order \(\Omega (2^k\log (n))\). There exist several deterministic constructions of (nk)-universal sets in the literature (cf. [2, 3, 29]) and we shall rely on the results given in [30].

Theorem 2.2

[30, Theorem 6] There is a deterministic construction of an (nk)-universal set of size \(2^{k}k^{O(\log (k))}\log (n)=2^{k+O(\log ^2(k))} \log (n)\), which can be listed in linear time of the length of the output.

Although the notion of an (nk)-universal set is not very flexible and comes from a different area of mathematics, we will see in Sect. 3, that there is indeed a link to sets with small dispersion. Reusing the known results from coding theory, it will already allow us to obtain our first deterministic construction of a point set with cardinality of order \(\log (d)\). However, in this approach we have only very limited control of the dependence on \(\varepsilon \).

We also need the following natural generalization of (nk)-universal sets. We could not find this concept in the literature, but we assume that this and the proceeding lemma are known.

Definition 2.3

((nkb)-universal sets) Let \(1\le k\le n\) and \(b\ge 2\) be positive integers. We say that \(T\subset \{0,1,\ldots ,b-1\}^n\) is an (nkb)-universal set, if for every index set \(S\subset \{1,\ldots ,n\}\) with \(\#S=k\), the projection of T on S contains all possible \(b^k\) configurations.

If \(b=2\), Definitions 2.1 and 2.3 coincide, i.e. (nk, 2)-universal sets are just the usual (nk)-universal sets. We use the following two observations to transfer the known results about (nk)-universal sets to our setting.

Lemma 2.4

Let \(1\le k\le n\) and \(b\ge 2\) be positive integers.

  1. (i)

    Let \(T\subset \{0,1,\ldots ,b\}^n\) be an \((n,k,b+1)\)-universal set. Then there is an (nkb)-universal set \(T'\subset \{0,1,\ldots ,b-1\}^n\) of at most the same size.

  2. (ii)

    Let \(m\in {{\mathbb {N}}}\) and \(T\subset \{0,1\}^{m n}\) be an (mnmk)-universal set. Then there is an \((n,k,2^m)\)-universal set of the same size.

Proof

The proof is quite straightforward. To show (i), just replace all occurrences of b among the coordinates of T by zero. For the proof of the second part it is enough to interpret each \(x\in T\subset \{0,1\}^{m n}\) as a digital representation of \(\tilde{x}\in \{0,1,\ldots ,2^{m}-1\}^n\). \(\square \)

The direct random construction yields the existence of an (nkb)-universal set of the size \(\lceil kb^k\log (ebn/k)\rceil \). Using Theorem 2.2, we can easily obtain a deterministic construction of an (nkb)-universal set of only a slightly larger size.

Theorem 2.5

There is a deterministic construction of an \((n,k,2^m-1)\)-universal set of size \(2^{mk+O(\log ^2(mk))} \log (n)\), which can be listed in linear time of the length of the output.

Proof

By Theorem 2.2, there is a construction of an (mnmk)-universal set with at most \(2^{mk+O(\log ^2(mk))}\log (mn)\) elements. The result then follows from Lemma 2.4. \(\square \)

2.2 k-Restriction Problems

For the derandomization of the analysis of [45] we need a more flexible notion of the so-called k-restriction problems, see [30, Section 2.2]. Solutions to these problems will be one of the building blocks of our deterministic construction of sets with small dispersion whose size is polynomial in \(1/\varepsilon \) and, still, logarithmic in d.

Definition 2.6

(k-restriction problems) Let bknM be positive integers and let \({\mathcal C}=\{C_1,\ldots ,C_M:C_i\subset \{0,1,\ldots ,b-1\}^k\}\) be invariant under the permutations of the index set \(\{1,\ldots ,k\}\), i.e., for every \(i\in \{1,\ldots ,M\}\) and every permutation \(\pi \) on \(\{1,\ldots ,k\}\), there is \(j\in \{1,\ldots ,M\}\), such that \(C_j=\{x\circ \pi :x\in C_i\}.\) We say that \(T=\{x^1,\ldots ,x^N\}\subset \{0,1,\ldots ,b-1\}^n\) satisfies the k-restriction problem with respect to \({{\mathcal {C}}}\), if for every \(S\subset \{1,\ldots ,n\}\) with \(\#S=k\) and for every \(j\in \{1,\ldots ,M\}\), there exists \(x^\ell \in T\) with \(x^\ell |_S\in C_j.\)

Definitions 2.1 and 2.3 are indeed special cases of Definition 2.6. To show this, let us choose \(M=b^k\) and let \(C_1,\ldots ,C_M\) be all the different singleton subsets of \(\{0,\ldots ,b-1\}^k\). Then, T satisfies the k-restriction problem with respect to \({{\mathcal {C}}}\) if for every index set \(S\subset \{1,\ldots ,n\}\) and every possible \(v\in \{0,\ldots ,b-1\}^k\) there exists an \(x\in T\) with \(x|_S=v\), i.e. if the restriction of T to every index set S with k elements attains all \(b^k\) possible values.

An important parameter of the k-restriction problems is the minimal size of each of the restriction sets \(C_j\), i.e.

$$\begin{aligned} c=c({\mathcal {C}}):=\min _{1\le j\le M}\#C_j. \end{aligned}$$
(2.1)

Random constructions of sets satisfying the k-restriction problem with parameters (bknM) and \({{\mathcal {C}}}=\{C_1,\ldots ,C_M\}\) are based on a simple union bound. Indeed, let \(1\le j\le M\) and \(S\subset \{1,\ldots ,n\}\) with \(\#S=k\) be fixed. The probability, that a randomly chosen vector \(v\in \{0,1,\ldots ,b-1\}^n\) satisfies \(C_j\) on S is at least

$$\begin{aligned} {{\mathbb {P}}}(v\text { satisfies }C_j\text { at }S) \,=\, \frac{\#C_j}{b^k}\ge \frac{c}{b^k}. \end{aligned}$$

If we choose N random vectors \(v_1,\ldots ,v_N\) independently, the probability that none of them satisfies \(C_j\) at S is at most

$$\begin{aligned} {{\mathbb {P}}}(\text {no }v_1,\ldots ,v_N\text { satisfies }C_j\text { at }S) \,=\, \Bigl (1-\frac{\#C_j}{b^k}\Bigr )^N\le \Bigl (1-\frac{c}{b^k}\Bigr )^N. \end{aligned}$$

Finally, the probability that there is a set \(S\subset \{1,\ldots ,n\}\) with \(\#S=k\) and \(1\le j\le M\), such that no \(v_1,\ldots ,v_N\) satisfies \(C_j\) at S is, by the union bound, at most

$$\begin{aligned} \left( {\begin{array}{c}n\\ k\end{array}}\right) \cdot M\cdot \Bigl (1-\frac{c}{b^k}\Bigr )^N. \end{aligned}$$

This expression is smaller than one if

$$\begin{aligned} N \,>\, \frac{\log (n^k M)}{\log \bigl (\frac{b^k}{b^k-c}\bigr )}. \end{aligned}$$

This means that there exist solutions to a k-restriction problem with parameters (bknM) of size N whenever

$$\begin{aligned} N \,\ge \, \left\lceil \frac{b^k}{c} \log (n^k M)\right\rceil , \end{aligned}$$

where c is from (2.1). Theorem 1 of [30] states that there is a deterministic algorithm that outputs such a solution of size equaling the union bound. The main idea of its proof is that the random sampling can be replaced by an extensive search through a k-wise independent probability space with n random variables with values in \(\{1,\ldots ,b\}.\)

Theorem 2.7

[30, Theorem 1] For any k-restriction problem with parameters (bknM) with \(b\le n\), there is a deterministic algorithm that outputs a collection obeying the k-restrictions, with the size of the collection equaling

$$\begin{aligned} \left\lceil \frac{b^k}{c} \log (n^k M)\right\rceil , \end{aligned}$$

where c is from (2.1). The time taken to output the collection is

$$\begin{aligned} {\mathcal {O}}\left( \frac{b^k}{c} \left( \frac{e n^2}{k}\right) ^k M\, {\mathcal {T}}\right) , \end{aligned}$$

where \({\mathcal {T}}\) is the time complexity of the membership oracle, i.e., a procedure which, for given \(v\in \{1,\ldots ,b\}^n\), \(S\subset \{1,\ldots ,n\}\) with \(\#S=k\) and \(j\in \{1,\ldots ,M\}\), outputs if the restriction of v on S belongs to \(C_j.\)

In what follows it can be executed in \({{\mathcal {T}}}=O(k)\) time. Also note that the formulation of Theorem 2.7 follows from Theorem 1 in [30] by using the bound on the size of k-wise independent probability space with n random variables as described in [30, Section 2.1].

2.3 Splitters

The last ingredient of our derandomization procedure are splitters. They played a central role in [30] as the basic building blocks of all deterministic constructions given there. Essentially, they allow to split a large problem into smaller problems which can then be treated by the extensive search of Theorem 2.7.

Definition 2.8

(\((n,k,\ell )\)-splitter) Let \(n,k,\ell \) be positive integers. An \((n,k,\ell )\)-splitter H is a family of functions from \(\{1,\ldots ,n\}\) to \(\{1,\ldots ,\ell \}\), such that for every \(S\subset \{1,\ldots ,n\}\) with \(\#S=k\) there is \(h\in H\), which splits S perfectly. It means that the sets \(h^{-1}(\{j\})\cap S\) are of the same size for all \(j\in \{1,\ldots ,\ell \}\) (or as similar as possible if \(\ell \not \mid k\)).

Similarly to [4, 30], we will rely on \((n,k,k^2)\)-splitters. By Definition 2.8, A(nk) is an \((n,k,k^2)\)-splitter, if it is a collection of mappings \(a:\{1,\ldots ,n\}\rightarrow \{1,\ldots ,k^2\}\) such that for every \(S\subset \{1,\ldots ,n\}\) with \(\#S=k\), there is an \(a\in A(n,k)\), which is injective on S. Moreover, note that every \((n,k,\ell )\)-splitter with \(k\le \ell \le k^2\) is also a \((n,k,k^2)\)-splitter.

Small \((n,k,\ell )\)-splitters with \(\ell \ge \eta k^2\) for \(\eta >\frac{1}{2}\) can be obtained from asymptotically good error correcting codes, see [4, Lemma 3]. Indeed, let \(c_1,\ldots ,c_n\in \{1,\ldots ,\ell \}^L\) denote the codewords of an error correcting code of size n over the alphabet \(\{1,\ldots ,\ell \}\) and normalized Hamming distance at least \(1-\frac{2\eta }{\ell }\). This is, \(c_i\) and \(c_j\) (\(i\ne j\)) can be equal on at most \(2\eta L/\ell \) coordinates. If now \(S\subset \{1,\ldots ,n\}\) with \(\#S=k\), then there are \(k(k-1)/2\) pairs (ij) with \(i\ne j\in S\). As \(\frac{2\eta L}{\ell }\cdot \frac{k(k-1)}{2} <L\), there must be a coordinate j, where all the \(c_1(j),\ldots ,c_L(j)\) are different. Finally, if we consider the mappings \(h_j:i\rightarrow c_i(j)\), \(i=1,\ldots ,n\), we observe that \(H=\{h_j:j=1,\ldots ,L\}\) is an \((n,k,\ell )\)-splitter, and hence an \((n,k,k^2)\)-splitter, of size L.

The existence of such explicit codes for \(k=1\) is trivial and they exist by [36] with \(L={\mathcal {O}}(k^2\log n)\) for \(k\ge 2\). For this, let q be a prime with \(\frac{3k^2}{4}\le q\le k^2\). Such a q exists by classical estimates on the prime counting function (cf. [37]) for \(k\ge 23\) and for \(2\le k\le 22\) its existence can be checked directly. From Theorem 2 of [36] we obtain that one can construct a (linear) error correcting code over the alphabet \(\{1,\ldots ,q\}\) of size n, length L and normalized Hamming distance at least \(\delta \in [0,1]\), whenever

$$\begin{aligned} L \,\ge \, \left( 1-H_{q}\left( \delta \right) \right) ^{-1} \log _q(n), \end{aligned}$$

where \(H_q(\delta ):=-\delta \log _q(\delta )-(1-\delta )\log _q(1-\delta )+\delta \log _q(q-1)\) is the q-ary entropy function. (Such a code is called an \([L,\log _q(n),\delta L]_q\)-LC in [36].) The running-time of the proposed algorithm is \({\mathcal {O}}(L\cdot n)\).

Setting \(\delta =1-\frac{3}{2q}\), we obtain by simple computations that \(1-H_{q}\left( \delta \right) \ge \frac{1}{10 q \log (q)}\), and hence that we can choose \(L={\mathcal {O}}(q\log n)={\mathcal {O}}(k^2\log n)\).

The following lemma summarizes the discussion above and shows that \((n,k,k^2)\)-splitters of relatively small size can be constructed explicitly in polynomial time.

Lemma 2.9

(cf. [4, 36]) There is an explicit \((n,k,k^2)\)-splitter of size

$$\begin{aligned} {\mathcal {O}}\bigl (k^2\log (n)\bigr ) \end{aligned}$$

that can be constructed in time \({\mathcal {O}}(k^2n\log n)\).

The \((n,k,k^2)\)-splitters can be used whenever n is “very large” compared to k. Roughly speaking, and in the context of the present paper, we will transform a k-restriction problem of size n to a k-restriction problem of size \(k^2\), which can then be solved using the results of Sect. 2.2. This will lead to construction algorithms with an apparently optimal dependence of their running time on the original problem size n. This approach was already used to prove [30, Theorem 6], see Theorem 2.5.

Remark 2.10

In a previous version of this manuscript we used the explicit construction of [3], which leads to the bound \(L={\mathcal {O}}(k^4\log n)\). As above, we obtained \((n,k,k^2)\)-splitters that can be constructed in polynomial time, see also [30, Thm. 3(iv)]. The used code is a two-fold concatenation code that combines the Wozencraft ensemble, Justesen codes and expander codes, which in turn rely on famous deterministic constructions of expander graphs [27]. For the details we refer to Sects. 3 and 4 of [3].

3 Derandomization of Sosnovec’s Proof

First, we consider the construction of Sosnovec [41], which gives logarithmic dependence of \(N(\varepsilon ,d)\) on d but involves no special control of its dependence on \(\varepsilon ^{-1}\). His main theorem was the following.

Theorem 3.1

[41, Theorem 2] For every \(\varepsilon \in (0,\frac{1}{4}]\), there exists a constant \(c_\varepsilon >0\), such that for every \(d\ge 2\) there is a point set \(P\subset [0,1]^d\) with \({{\,\mathrm{disp}\,}}(P)\le \varepsilon \) and

$$\begin{aligned} \#P \,\le \, c_\varepsilon \log (d). \end{aligned}$$

We will see that this result can be essentially derandomized using results from coding theory, while losing only a negligible factor. The drawback of this approach is the extremely bad dependence of \(c_\varepsilon \) on \(\varepsilon \). We sketch the main ideas of Sosnovec’s proof.

3.1 Sosnovec’s Proof: The Setting

For an integer \(m\ge 2\) with \(2^{-m}\le \varepsilon <2^{-m+1}\), we define

$$\begin{aligned} {{\mathbb {M}}}_m=\Bigl \{\frac{1}{2^m},\ldots ,\frac{2^m-1}{2^m}\Bigr \}. \end{aligned}$$

The point set constructed will be a subset of \({{\mathbb {M}}}_m^d\). Furthermore, we define

$$\begin{aligned} \Omega _m:=\Big \{{\mathbb {B}}=I_1\times \cdots \times I_d\subset [0,1]^d\,:\,\mathrm {vol}({\mathbb {B}})>\frac{1}{2^m}\Big \} \end{aligned}$$
(3.1)

to be the set of all boxes with sides parallel to the coordinate axes and volume larger than \(2^{-m}.\)

Let \({{\mathbb {B}}}=I_1\times \cdots \times I_d\in \Omega _m\). The key observation of [41] is that the number of indices \(j\in \{1,\ldots ,d\}\) with \({{\mathbb {M}}}_m\not \subset I_j\) is bounded from above by \(m2^m\), a quantity independent on d. To be more specific, if we denote

$$\begin{aligned} {{\mathcal {A}}}({{\mathbb {B}}})=\{j\in \{1,\ldots ,d\}:{{\mathbb {M}}}_m\not \subset I_j\}, \end{aligned}$$

Then \(\#{{\mathcal {A}}}({{\mathbb {B}}})\le A_m:=\min (m2^m,d)\) for every \({\mathbb {B}}\in \Omega _m\). We will refer to \({{\mathcal {A}}}({\mathbb B})\) as the set of “active indices” of \({{\mathbb {B}}}.\) If \({{\mathcal {A}}}({{\mathbb {B}}})\) is not of the full possible size, we enlarge it by adding any of the other indices to obtain a set with cardinality equal to \(A_m\). Therefore, we can associate to each \({{\mathbb {B}}}\in \Omega _m\) (possibly in a non-unique way) a set \({{\mathcal {A}}}\) with \(\#{{\mathcal {A}}}=A_m\) and a vector \(z\in {\mathbb M}_m^{A_m}\) such that any \(x\in {{\mathbb {M}}}_m^d\) with \(x|_{\mathcal A}=z\) lies in \({{\mathbb {B}}}.\)

Vice versa, if we have a point set \(P=\{x^1,\ldots ,x^N\}\subset {{\mathbb {M}}}_m^d\), such that for every \({{\mathcal {A}}}\subset \{1,\ldots ,d\}\) with \(\#{{\mathcal {A}}}=A_m\) and to every \(z\in {\mathbb M}_m^{A_m}\), there is some \(x^j\in P\) with \(x^j|_{{\mathcal {A}}}=z\), then, by what we just said, P intersects every \({\mathbb B}\in \Omega _m\). Therefore, the dispersion of P can not be larger than \(2^{-m}\), i.e., \({{\,\mathrm{disp}\,}}(P)\le 2^{-m}\) and hence \(N(2^{-m},d)\le N\).

To simplify the combinatorial part later on, we multiply all coordinates by \(2^m\), which results to vectors with integer components. This motivates the following definition.

Definition 3.2

Let \(m\ge 2\). We say that \(T=\{x^1,\ldots ,x^N\}\subset \{1,2,\ldots ,2^{m}-1\}^d\) satisfies the condition (S) of the order m if for every \({\mathcal A}\subset \{1,\ldots ,d\}\) with \(\#{{\mathcal {A}}}=A_m:=\min (m2^m,d)\), the set of restrictions \(x^1|_{{\mathcal {A}}},\ldots ,x^N|_{{\mathcal {A}}}\) contains all \((2^m-1)^{A_m}\) possible values.

By what we said above, anytime \(m\ge 2\) and \(T=\{x^1,\ldots ,x^N\}\) satisfies the condition (S) of the order m, then \(P\subset {\mathbb M}_m^d\) with \(P=2^{-m}\cdot T\) satisfies \({{\,\mathrm{disp}\,}}(P)\le 2^{-m}\). The proof of Theorem 3.1 is therefore finished, once we find a set T with \(\#T\le c_m\log (d)\) satisfying the condition (S) of order m.

3.2 Sosnovec’s Proof: Randomized Construction

The rest of the proof in [41] can now be understood as a randomized construction of a small set satisfying the condition (S). Indeed, there are \(\left( {\begin{array}{c}d\\ A_m\end{array}}\right) \) subsets S of \(\{1,\ldots ,d\}\) with \(A_m\) elements. We now fix one such set S and one vector \(z\in \{1,\ldots ,2^m-1\}^{A_m}\). The probability that a point \(x\in \{1,\ldots ,2^m-1\}^d\) chosen at random (from the uniform distribution) fulfills \(x|_{S}=z\) is \((2^m-1)^{-A_m}\). Therefore, the probability that none of the N randomly chosen points \(x^1,\ldots ,x^N\) fulfills this restriction is \([1-(2^m-1)^{-A_m}]^N\). Finally, the probability that there is a set \(S\subset \{1,\ldots ,d\}\) with \(\#S=A_m\) and a vector \(z\in \{1,\ldots ,2^m-1\}^{A_m}\) such that no \(\{x^1,\ldots ,x^N\}\) satisfies \(x^j|_{S}=z\) is, by the union bound, at most

$$\begin{aligned} \left( {\begin{array}{c}d\\ A_m\end{array}}\right) (2^m-1)^{A_m}[1-(2^m-1)^{-A_m}]^N. \end{aligned}$$

By simple calculus, if N is of the order \(c_m\log _2(d)\) for \(c_m\) large enough, this expression is smaller than one. Hence, with positive probability, the randomly chosen point set \(\{x^1,\ldots ,x^N\}\) satisfies the condition (S).

3.3 Derandomization Using Universal Sets

Definition 3.2 resembles very much the concept of (nk)-universal sets, see Sect. 2.1. In particular, it is easy to see that every \((d,A_m,2^m-1)\)-universal set -after adding 1 to each coordinate- satisfies condition (S) of the order m.

Therefore, we can use Theorem 2.5 to replace the random arguments of the last section by a deterministic algorithm. We glue all the components together in the form of an algorithm.

figure a

It remains to consider the running-time of this algorithm.

Theorem 3.3

Let \(\varepsilon \in (0,\frac{1}{4}]\) and \(d\ge 2\). Then there is a positive constant \(c_\varepsilon >0\), such that Algorithm 1 constructs a set \(P\subset [0,1]^d\) with \({{\,\mathrm{disp}\,}}(P)\le \varepsilon \) and

$$\begin{aligned} \#P\,\le \, c_{\varepsilon }\log _2(d). \end{aligned}$$

The running time of Algorithm 1 is linear in the length of the output.

Proof

The first part of the theorem is proven by what we said above. Concerning the running-time, we obtain from Theorem 2.5, that the \((d,A_m,2^m-1)\)-universal set, which we generate in steps (2)–(4) of Algorithm 1, can be constructed in linear time and with size

$$\begin{aligned} N= 2^{mA_m+O(\log ^2(m A_m))}\log (d)\le 2^{m^2 2^m+O(m^2)}\log _2(d). \end{aligned}$$

The remaining operations can be done in a linear time, without enlarging the point set. \(\square \)

As expected, the dependence of the size of P on \(2^m\approx \varepsilon ^{-1}\) is rather bad (as it was in [41]), but there is indeed only a logarithmic dependence on d.

4 Improving the Dependence in \(\varepsilon ^{-1}\)

The main aim of [45] was to refine the analysis of [41] and to achieve a better dependence of \(N(\varepsilon ,d)\) on \(\varepsilon \), without sacrificing the logarithmic dependence on d. The main theorem of [45] was the following.

Theorem 4.1

Let \(d\ge 2\) be a natural number and let \(\varepsilon \in (0,1/2)\). Then there exists a point set \(P\subset [0,1]^d\) with \({{\,\mathrm{disp}\,}}(P)\le \varepsilon \) and

$$\begin{aligned} \#P \,\le \, 2^7\, \log _2(d)\, \frac{(1+\log _2(\varepsilon ^{-1}))^2}{\varepsilon ^2}. \end{aligned}$$

Also this result can be derandomized using results from coding theory. By doing this, we will lose some power of \(1/\varepsilon \) in the size of the point set. However, it will still be of order \(\log (d)\).

4.1 Enhanced Analysis of the Random Construction

The main novelty of [45] was a more careful splitting of \(\Omega _m\) (see (3.1)) into subgroups. To be more specific (and using the notation of [21]), for \(s=(s_1,\ldots ,s_d)\in \{1,\ldots ,2^{m}-1\}^d\) and \(p=(p_1,\ldots ,p_d)\in {\mathbb {M}}_m^d\), we denoted \(\Omega _m(s,p)\) to be those cubes from \(\Omega _m\), which have \(I_\ell \) approximately of the length \(\frac{s_\ell }{2^m}\) and its left point around \(p_\ell \) for all \(\ell =1,\ldots ,d\), i.e.

$$\begin{aligned} \Omega _m(s,p)&:=\bigg \{{\mathbb {B}}=I_1\times \cdots \times I_d\in \Omega _m \,:\, \forall \ell \in \{1,\ldots ,d\}: \frac{s_\ell }{2^{m}}<\mathrm {vol}(I_\ell ) \le \frac{s_\ell +1}{2^{m}}\\&\qquad \qquad \text {and}\quad \inf I_\ell \in \Big [p_\ell -\frac{1}{2^{m}},p_\ell \Big )\bigg \}. \end{aligned}$$

We denote by \({{\mathbb {I}}}_m\) the pairs (sp), for which \(\Omega _m(s,p)\) is non-empty. It is easy to see that their number is bounded from above by

$$\begin{aligned} \#{{\mathbb {I}}}_m\le \exp \Bigl (m2^{m}\log (2^{m+3}d)\Bigr ), \end{aligned}$$
(4.1)

see [21, Eq. (2.1)]. If \((s,p)\in {{\mathbb {I}}}_m\), we further set

$$\begin{aligned} {\mathbb {B}}_m(s,p) \,:=\, \bigcap _{{\mathbb {B}}\in \Omega _m(s,p)} {\mathbb {B}} \,=\, \prod _{\ell =1}^d \Bigl [p_\ell ,p_\ell +\frac{s_\ell -1}{2^{m}}\Bigr ]. \end{aligned}$$
(4.2)

The advantage of dividing of \(\Omega _m\) into the groups \(\Omega _m(s,p)\) is the surprisingly good control of the probability that a randomly chosen point \(z\in {{\mathbb {M}}}_m^d\) lies in the intersection of all the cubes from \(\Omega _m(s,p).\) It is actually, up to a constant, of the same order as the volume of each of the cubes in \(\Omega _m\), i.e. of \(2^{-m}\).

Lemma 4.2

([45, Lemma 3] and [21, Lemma 2.1]) Let \(m\in {{\mathbb {N}}}\), \(s\in \{0,1,\ldots ,2^{m}-1\}^d\) and \(p\in \{1/2^{m},\ldots ,1-1/2^{m}\}^d\) be such that \((s,p)\in {\mathbb I}_m\). Let z be uniformly distributed in \({\mathbb {M}}_m^d\). Then

$$\begin{aligned} {{\mathbb {P}}}\big (z\in {\mathbb {B}}_m(s,p)\big )\ge \frac{1}{2 ^{m+4}}\,. \end{aligned}$$

The aim of [45] was to combine (4.1) with Lemma 4.2 and the union bound. Indeed, the probability that a randomly chosen point \(z\in {{\mathbb {M}}}_m^d\) avoids \({\mathbb B}_m(s,p)\) is at most \(1-2^{-m-4}.\) Therefore, the probability that a set \(P=\{x^1,\ldots ,x^N\}\subset {{\mathbb {M}}}_m^d\) of N randomly and independently generated points does not intersect \({\mathbb B}_{m}(s,p)\) is at most \((1-2^{-m-4})^N\), i.e.

$$\begin{aligned} {{\mathbb {P}}}\bigl (\forall \ell \in \{1,\ldots ,N\}:x^\ell \not \in {{\mathbb {B}}}_m(s,p)\bigr ) \,\le \, (1-2^{-m-4})^N. \end{aligned}$$

By the union bound over all \((s,p)\in {{\mathbb {I}}}_m\), we get further

$$\begin{aligned} {{\mathbb {P}}}\bigl (\exists (s,p)\in {{\mathbb {I}}}_m:\forall \ell \in \{1,\ldots ,N\}:x^\ell \not \in {{\mathbb {B}}}_m(s,p)\bigr ) \,\le \, \#{{\mathbb {I}}}_m\cdot (1-2^{-m-4})^N. \end{aligned}$$

As \({{\mathbb {B}}}_{m}(s,p)\) was defined in (4.2) as the intersection of all cubes from \(\Omega _m(s,p)\), finding a point \(x^\ell \in {{\mathbb {B}}}_m(s,p)\) means that the same point may be found in all cubes in \(\Omega _m(s,p).\) We conclude that if N is large enough to ensure that

$$\begin{aligned} \exp \Bigl (m2^{m}\log (2^{m+3}d)\Bigr )(1-2^{-m-4})^N< 1, \end{aligned}$$

i.e., \(N>m 2^{2m+4} \log (2^{m+3} d)\), then the randomly generated \(P=\{x^1,\ldots ,x^N\}\subset {{\mathbb {M}}}_m^d\) intersects every \({{\mathbb {B}}}\in \Omega _m\) with positive probability. Hence, there exists P with \(\# P\le N\) such that \({{\,\mathrm{disp}\,}}(P)\le 2^{-m}\). This is essentially the result of [45].

4.2 Connection to k-Restriction Problems

By what we said above, if a point set \(P\subset [0,1]^d\) intersects \({{\mathbb {B}}}_{m}(s,p)\) for all \((s,p)\in {{\mathbb {I}}}_m\), then \({{\,\mathrm{disp}\,}}(P)\le 2^{-m}.\) The randomized construction in [45], which we now want to replace by a deterministic one, was restricted in its choice of points to \({{\mathbb {M}}}_m^d\). Therefore we define

$$\begin{aligned} {{\mathbb {C}}}_m(s,p)=2^m [{{\mathbb {B}}}_m(s,p)\cap {{\mathbb {M}}}_m^d],\quad (s,p)\in {{\mathbb {I}}}_m. \end{aligned}$$

Definition 4.3

Let \(m\ge 2\). We say that \(T\subset \{1,2,\ldots ,2^{m}-1\}^d\) satisfies the condition (S’) of the order m if, for every \((s,p)\in {{\mathbb {I}}}_m\) it intersects \({{\mathbb {C}}}_m(s,p).\)

The rest of [45] then provides a randomized construction of a small set T, which satisfies the condition \((S')\) of order m. This task has two things in common with k-restriction problems. First, the system \(\{{{\mathbb {C}}}_m(s,p):(s,p)\in {{\mathbb {I}}}_m\}\) is invariant under permutations of \(\{1,\ldots ,d\}\). Indeed, if \(\pi \) is a permutation on \(\{1,\ldots ,d\},\) then \(\{x\circ \pi : x\in {{\mathbb {C}}}_m(s,p)\}={{\mathbb {C}}}_m(s\circ \pi ,p\circ \pi )\). And second, the number of active coordinates is, for every \((s,p)\in {{\mathbb {I}}}_m\), bounded from above by \(A_m:=\min (m2^m,d).\)

To build the connection between the condition \((S')\) and the k-restriction problems, we choose the quadruplet of parameters (bknm), see Definition 2.6, as \((2^m-1, A_m,d,M)\), where m is an arbitrary positive integer. The system \({{\mathcal {C}}}\) collects the sets \({{\mathbb {C}}}_m(s,p)\) for those \((s,p)\in {{\mathbb {I}}}_m\) which have the corresponding active coordinates in \(\{1,\ldots ,A_m\}\). Finally, M is the cardinality of \({{\mathcal {C}}}.\)

More formally, let \((s,p)\in {{\mathbb {I}}}_m\) with \(s_j=2^m-1\) for \(j>A_m\). Then, we set

$$\begin{aligned} C_m{(s,p)}={{\mathbb {C}}}_{m}(s,p)-1 \end{aligned}$$

and define

$$\begin{aligned} {{\mathcal {C}}}&=\Bigl \{C_m{(s,p)}:(s,p)\in {{\mathbb {I}}}_{m} \text { with }s_j=2^m-1\text { for }j>A_m\Bigr \}. \end{aligned}$$
(4.3)

It follows directly from the definition of \({{\mathbb {I}}}_m\) that if \((s,p)\in {{\mathbb {I}}}_m\) and \(s_j=2^m-1\) for some \(j\in \{1,\ldots ,d\}\), then \(p_j=2^{-m}\) and \({\mathbb M}_m\subset [p_j,p_j+\frac{s_j-1}{2^m}]\). Therefore, every \(C_m(s,p)\in {{\mathcal {C}}}\) is fully determined by its restriction to \(\{1,\ldots ,A_m\}\) and (with slight abuse of notation) we shall denote by \({{\mathcal {C}}}\) also the collection of \(C_m(s,p)\) restricted to \(\{1,\ldots ,A_m\}\).

With this in mind, we observe that a set T satisfies the condition \((S')\) of order m if, and only if, the set \(T-1\) satisfies the k-restriction problem with respect to \({\mathcal C}.\)

The parameter M, which is just the cardinality of \({{\mathcal {C}}}\), can be estimated from above in a way similar to (4.1), but note that we do not have to choose the subset of active indices anymore. Each \(C_m{(s,p)}\in {{\mathcal {C}}}\) is characterized by \(s\in \{0,1,\ldots ,2^{m}-1\}^{A_m}\) and \(p\in \{1/2^m,\ldots ,(2^m-1)/2^m\}^{A_m}\). Therefore,

$$\begin{aligned} M\le 2^{2mA_m}. \end{aligned}$$
(4.4)

The second important parameter of a k-restriction problem is the minimal size \(c:=c({\mathcal {C}})\) of each of the restriction sets \(C_m(s,p)\), see (2.1). A lower bound on c follows directly from Lemma 4.2 and we obtain

$$\begin{aligned} c \,\ge \, {{\mathbb {P}}}(z\in {{\mathbb {B}}}_m(s,p))\cdot \#{{\mathbb {M}}}_m^{A_m} \,\ge \, 2^{-m-4}(2^m-1)^{A_m}. \end{aligned}$$
(4.5)

With the choice of parameters as given above, we have \(c/b^k\ge 2^{-m-4}\).

4.3 A First Attempt for Derandomization

Using the arguments of the last section, one could use the construction from Theorem 2.7 directly to solve the corresponding k-restriction problem with parameters \((2^m-1, A_m,d,2^{2m A_m})\), whenever \(d>2^m\). This leads to a point set \(P\subset {\mathbb {M}}_m^d\) with \({{\,\mathrm{disp}\,}}(P)\le 2^{-m}\) and

$$\begin{aligned} \#P \,\le \, \left\lceil 2^{m+4}\log \bigl (d^{A_m} 2^{2m A_m}\bigr ) \right\rceil \,=\, {\mathcal {O}}(m^2 2^{2m} \log (d)). \end{aligned}$$

Note that this bound matches the union bound from Sect. 4.1. However, the running-time of the algorithm, as given by Theorem 2.7, is

$$\begin{aligned} {\mathcal {O}}\left( 2^{m} d^{2A_m} 2^{2mA_m} {\mathcal {T}}\right) \,=\,{\mathcal {O}}\left( 2^{m(1+m2^{m+1})} d^{2m^2 2^m} {\mathcal {T}}\right) , \end{aligned}$$

where \({\mathcal {T}}\) is the time complexity of the membership oracle, which can be assumed of the order \({\mathcal {O}}(A_m)={\mathcal {O}}(m2^m)\) in this case.

4.4 Derandomization Using Splitters

We now describe how we can improve the construction of an explicit solution to the desired k-restriction problem with parameters (bknm) equal to \((2^m-1,A_m,d,2^{2m A_m})\) and the set system \({{\mathcal {C}}}\) defined by (4.3). We use the approach of [30] to obtain solutions of the k-restriction problem which are “small” in size and running-time of the corresponding algorithm. “Small” means here, that the dependence on the original problem dimension d is as small as possible.

In the heart of the constructions are splitters, see Sect. 2.3. As already indicated in Sect. 2.3, we use a \((d,A_m,A_m^2)\)-splitter, say A(md), to map the original d-dimensional problem to a k-restriction problem in dimension \(A_m^2\), which can then be solved with cost independent of d.

Recall that, by Definition 2.8, A(md) is an \((d,A_m,A_m^2)\)-splitter, if it is a collection of mappings \(a:\{1,\ldots ,d\}\rightarrow \{1,\ldots ,A_m^2\}\) such that for every \(S\subset \{1,\ldots ,d\}\) with \(\#S=A_m\), there is an \(a\in A(m,d)\), which is injective on S, i.e., \(a(S)\subset \{1,\ldots ,A_m^2\}\) has \(A_m\) elements.

Further, let \(T(m)\subset \{1,2,\ldots ,2^m-1\}^{A_m^2}\) be the solution of the k-restriction problem with parameters \((2^m-1,A_m,A_m^2,2^{2m A_m})\) with respect to the original system of restrictions \({{\mathcal {C}}}\), see (4.3). This means, that \(T(m)=\{\tau _1,\ldots ,\tau _K\}\subset \{0,1,\ldots ,2^m-2\}^{A_m^2}\) such that for every \(S'\subset \{1,\ldots ,A_m^2\}\) with \(\#S'=A_m\) and any \(C\in {\mathcal {C}}\) there is \(\tau \in T(m)\) with \(\tau |_{S'}\in C\).

Now we are in the position to define the solution to the restriction problem with parameters \((2^m-1,A_m,d,2^{2m A_m})\) and the system \({{\mathcal {C}}}\). Indeed, we define

$$\begin{aligned} T^*&=T(m)\circ A(m,d)\\&:=\{\tau \circ a:\{1,\ldots , d\}\rightarrow \{0,1,\ldots ,2^m-2\}:\tau \in T(m), a\in A(m,d)\} \end{aligned}$$

to be the set of concatenations of any splitter with any element of the solution to the restriction problem. Here, we switch between the notion of vectors of length d (resp. \(A_m^2\)) and mappings from \(\{1,\ldots ,d\}\) (resp. \(\{1,\ldots ,A_m^2\}\)) to \(\{0,1,\ldots ,2^m-2\}\). This should not lead to any confusion.

To show that \(T^*\) is indeed a solution to our k-restriction problem, let \(S\subset \{1,\ldots ,d\}\) with \(\# S=A_m\). Then, there exists \(a\in A(m,d)\), such that \(S'=a(S)\subset \{1,2,\ldots ,A_m^2\}\) has \(A_m\) mutually different elements, i.e., \(\#S'=A_m\). Now, for every \(C\in {\mathcal {C}}\), there is some \(\tau \in T(m)\), such that \(C\ni \tau |_{S'}=(\tau \circ a)|_S\). Hence, \(T^*\), which satisfies \(\#T^*=\#T(m)\cdot \#A(m,d)\), is a solution to the restriction problem with parameters \((2^m-1,A_m,d,2^{2m A_m})\).

We merge all the components together in a form of an algorithm.

figure b

Theorem 4.4

There is an absolute constant \(C<\infty \) such that, for all \(\varepsilon \in (0,\frac{1}{4}]\) and \(d\ge 2\), Algorithm 2 constructs a set \(P\subset [0,1]^d\) with \({{\,\mathrm{disp}\,}}(P)\le \varepsilon \) and

$$\begin{aligned} \#P\le C \left( \frac{1+\log _2(\varepsilon ^{-1})}{\varepsilon }\right) ^{4} \log (d^*), \end{aligned}$$

where \(d^*:=\max (d, 2/\varepsilon )\).

The running-time of Algorithm 2 is \({\mathcal {O}}_\varepsilon \bigl (d \log (d)\bigr )\).

Proof

In case that \(d<\lfloor 2/\varepsilon \rfloor \), replace d by \(\lfloor 2/\varepsilon \rfloor \) in all what follows and delete at the end the last \(\lfloor 2/\varepsilon \rfloor -d\) coordinates of the constructed point set.

By Lemma 2.9, there is an explicit, deterministic construction of a \((d,A_m,A_m^2)\)-splitter A(md) of size \({\mathcal {O}}(A_m^2\log (d))={\mathcal {O}}(m^2 2^{2m}\log (d))\). Furthermore, by Theorem 2.7 and since \(d\ge \lfloor 2/\varepsilon \rfloor > 2^m-1\), there is a deterministic solution T(m) to the k-restriction problem with parameters \((2^m-1,A_m,A_m^2,2^{2m A_m})\) and restrictions \({\mathcal {C}}\) from (4.3) of size

$$\begin{aligned} \#T(m) \,=\, {\mathcal {O}}\left( 2^m \log (A_m^{2A_m} 2^{2m A_m})\right) \,=\, {\mathcal {O}}\left( m^2 2^{2m}\right) . \end{aligned}$$

Here, we also used (4.5). Altogether, we get

$$\begin{aligned} \#T^* \,=\, \#T(m)\cdot \#A(m,d) \,=\, {\mathcal {O}}\left( m^4 2^{4m} \log (d)\right) , \end{aligned}$$

which implies the result since \(m\le 1+\log _2(1/\varepsilon )\).

For the running-time, we need \({\mathcal {O}}(A_m^2 d \log (d))\) for the construction of A(md), see Lemma 2.9, and

$$\begin{aligned} {\mathcal {O}}(2^m(e A_m)^{A_m} 2^{2m A_m}{\mathcal {T}}) \,=\, {\mathcal {O}}(2^{4m^2 2^m}{\mathcal {T}}) \end{aligned}$$

for the construction of T(m), see Theorem 2.7, where, again, the cost \({\mathcal {T}}\) of the membership oracle can be assumed to be \({\mathcal {O}}(A_m)\). Finally, we need \({\mathcal {O}}(\#T^*)\) time to build up \(T^*\). The remaining steps are less expensive, which implies the result. \(\square \)