No-dimensional Tverberg Theorems and Algorithms

Tverberg's theorem states that for any $k \ge 2$ and any set $P \subset \mathbb{R}^d$ of at least $(d + 1)(k - 1) + 1$ points in $d$ dimensions, we can partition $P$ into $k$ subsets whose convex hulls have a non-empty intersection. The associated search problem of finding the partition lies in the complexity class $\text{CLS} = \text{PPAD} \cap \text{PLS}$, but no hardness results are known. In the colorful Tverberg theorem, the points in $P$ have colors, and under certain conditions, $P$ can be partitioned into colorful sets, in which each color appears exactly once and whose convex hulls intersect. To date, the complexity of the associated search problem is unresolved. Recently, Adiprasito, Barany, and Mustafa gave a no-dimensional Tverberg theorem, in which the convex hulls may intersect in an approximate fashion. This relaxes the requirement on the cardinality of $P$. The argument is constructive, but does not result in a polynomial-time algorithm. We present a deterministic algorithm that finds for any $n$-point set $P \subset \mathbb{R}^d$ and any $k \in \{2, \dots, n\}$ in $O(nd \lceil{\log k}\rceil)$ time a $k$-partition of $P$ such that there is a ball of radius $O\left((k/\sqrt{n})\mathrm{diam(P)}\right)$ that intersects the convex hull of each set. Given that this problem is not known to be solvable exactly in polynomial time, our result provides a remarkably efficient and simple new notion of approximation. Our main contribution is to generalize Sarkaria's method to reduce the Tverberg problem to the Colorful Caratheodory problem (in the simplified tensor product interpretation of Barany and Onn) and to apply it algorithmically. It turns out that this not only leads to an alternative algorithmic proof of a no-dimensional Tverberg theorem, but it also generalizes to other settings such as the colorful variant of the problem.


Introduction
In 1921, Radon [27] proved a seminal theorem in convex geometry: given a set P of at least d + 2 points in R d , one can always split P into two non-empty sets whose convex hulls intersect. In 1966, Tverberg [34] generalized Radon's theorem to allow for more sets in the partition. Specifically, he showed that for any k ≥ 1, if a d-dimensional point set P ⊂ R d has cardinality at least (d + 1)(k − 1) + 1, then P can be partitioned into k non-empty, pairwise disjoint sets T 1 , . . . , T k ⊂ P whose convex hulls have a non-empty intersection, i.e., k i=1 conv(T i ) = ∅, where conv(·) denotes the convex hull.
By now, several alternative proofs of Tverberg's theorem are known, e.g., [3,5,8,21,28,29,35,36]. Perhaps the most elegant proof is due to Sarkaria [29], with simplifications by Bárány and Onn [8] and by Aroch et al. [3]. In this paper, all further references to Sarkaria's method refer to the simplified version. This proof proceeds by a reduction to the Colorful Carathéodory theorem, another celebrated result in convex geometry: given r ≥ d + 1 point sets P 1 , . . . , P r ⊂ R d that have a common point y in their convex hulls conv(P 1 ), . . . , conv(P r ), there is a traversal x 1 ∈ P 1 , . . . , x r ∈ P r , such that conv({x 1 , . . . , x r }) contains y. A two-dimensional example is given in Figure 1. Sarkaria's proof [29] uses a tensor product to lift the original points of the Tverberg instance into higher dimensions, and then uses the Colorful Carathéodory traversal to obtain a Tverberg partition for the original point set.
From a computational point of view, a Radon partition is easy to find by solving d + 1 linear equations. On the other hand, finding Tverberg partitions is not straightforward. Since a Tverberg partition must exist if P is large enough, finding such a partition is a total search problem. In fact, the problem of computing a Colorful Carathéodory traversal lies in the complexity class CLS = PPAD ∩ PLS [20,23], but no better upper bound is known. Sarkaria's proof gives a polynomial-time reduction from the problem of finding a Tverberg partition to the problem of finding a colorful traversal, thereby placing the former problem in the same complexity class. Again, as of now we do not know better upper bounds for the general problem. Miller and Sheehy [21] and Mulzer and Werner [24] provided algorithms for finding approximate Tverberg partitions, computing a partition into fewer sets than is guaranteed by Tverberg's theorem in time that is linear in n, but quasi-polynomial in the dimension. These algorithms were motivated by applications in mesh generation and statistics that require finding a point that lies "deep" in P . A point in the common intersection of the convex hulls of a Tverberg partition has this property, with the partition serving as a certificate of depth. Recently Har-Peled and Zhou have proposed algorithms [15] to compute approximate Tverberg partitions that take time polynomial in n and d.
Tverberg's theorem also admits a colorful variant, first conjectured by Bárány and Larman [7]. The setup consists of d + 1 point sets P 1 , . . . , P d+1 ⊂ R d , each set interpreted as a different color and having size t. For a given k, the goal is to find k pairwise-disjoint colorful sets (i.e., each set contains at most one point from each P i ) A 1 , . . . , A k such that k i=1 conv(A i ) = ∅. The problem is to determine the optimal value of t for which such a colorful partition always exists. Bárány and Larman [7] conjectured that t = k suffices and they proved the conjecture for d = 2 and arbitrary k, and for k = 2 and arbitrary d. The first result for the general case was given by Zivaljević and Vrećica [38] through topological arguments. Using another topological argument, Blagojevič, Matschke, and Ziegler [9] showed that (i) if k + 1 is prime, then t = k; and (ii) if k + 1 is not prime, then k ≤ t ≤ 2k − 2. These are the best known bounds for arbitrary k. Later Matoušek, Tancer, and Wagner [19] gave a geometric proof that is inspired by the proof of Blagojevič, Matschke, and Ziegler [9].
More recently, Soberón [30] showed that if more color classes are available, then the conjecture holds for any k. More precisely, for P 1 , . . . , P n ⊂ R d with n = (k − 1)d + 1, each of size k, there exist k colorful sets whose convex hulls intersect. Moreover, there is a point in the common intersection so that the coefficients of its convex combination are the same for each colorful set in the partition. The proof uses Sarkaria's tensor product construction.
Recently Adiprasito, Bárány, and Mustafa [1] established a relaxed version of the Colorful • Sarkaria's method uses a specific set of k vectors in R k−1 to lift the points in the Tverberg instance to a Colorful Carathéodory instance. We refine this method to vectors that are defined with the help of a given graph. The choice of this graph is important in proving good bounds for the partition and in the algorithm. We believe that this generalization is of independent interest and may prove useful in other scenarios that rely on the tensor product construction.
• Let diam(x) denote the diameter of any set x. We prove an efficient no-dimensional Tverberg result: (i) For any choice of positive integers r 1 , . . . , r k that satisfy k i=1 r i = n, there is a partition T 1 , . . . , T k of P with |T 1 | = r 1 , |T 2 | = r 2 , . . . , |T k | = r k , and a ball B of radius n diam(P ) min i r i such that B intersects the convex hull of each T i . (ii) The bound is better for the case n = rk and r 1 = · · · = r k = r. There exists a partition T 1 , . . . , T k of P with |T 1 | = · · · = |T k | = r and a d-dimensional ball of radius that intersects the convex hull of each T i .
(iii) In either case, the partition T 1 , . . . , T k can be computed in deterministic time See Figure 2 for a simple illustration.
• and a colorful counterpart (for a simple example, see Figure 3): (ii) The colorful sets A 1 , . . . , A k can be computed in deterministic time O(N dk).
• For any sets P, x ⊂ R d , the depth of x with respect to P is the largest positive integer k such that every half-space that contains x also contains at least k points of P .

(ii) The ball and the transformation can be determined in time
The colorful Tverberg result is similar in spirit to the regular version, but from a computational viewpoint, it does not make sense to use the colorful algorithm to solve the regular Tverberg problem.
Compared to the results of Adiprasito et al. [1], our radius bounds are slightly worse. More precisely, they show that both in the colorful and the non-colorful case, there is a ball of radius O k/n diam(P ) that intersects the convex hulls of the sets of the partition. They also show this bound is close to optimal. In contrast, our result is off by a factor of O( √ k), but derandomizing the proof of Adiprasito et al. [1] gives only a brute-force 2 O(n) -time algorithm. In contrast, our approach gives almost linear time algorithms for both cases, with a linear dependence on the dimension.
Techniques. Adiprasito et al. first prove the colorful no-dimensional Tverberg theorem using an averaging argument over an exponential number of possible partitions. Then, they specialize their result for the non-colorful case, obtaining a bound that is asymptotically optimal. Unfortunately, it is not clear how to derandomize the averaging argument efficiently. The method of conditional expectations applied to their averaging argument leads to a running time of 2 O(n) . To get around this, we follow an alternate approach towards both versions of the Tverberg theorem. Instead of a direct averaging argument, we use a reduction to the Colorful Carathéodory theorem that is inspired by Sarkaria's proof, with some additional twists. We will see that this reduction also works in the no-dimensional setting, i.e., by a reduction to the no-dimensional Colorful Carathéodory theorem of Adiprasito et al., we obtain a no-dimensional Tverberg theorem, with slightly weaker radius bounds, as stated above. This approach has the advantage that their Colorful Carathéodory theorem is based on an averaging argument that permits an efficient derandomization using the method of conditional expectations [2]. In fact, we will see that the special structure of the no-dimensional Colorful Carathéodory instance that we create allows for a very fast evaluation of the conditional expectations, as we fix the next part of the solution. This results in an algorithm whose running time is O(nd log k ) instead of O(ndk), as given by a naive application of the method. With a few interesting modifications, this idea also works in the colorful setting. This seems to be the first instance of using Sarkaria's method with special lifting vectors, and we hope that this will prove useful for further studies on Tverberg's theorem and related problems.
Updates from the conference version. An extended abstract [10] of this work appeared at the 36th International Symposium on Computational Geometry. The conference abstract omitted the details of the results of Theorem 1.2 and Theorem 1.3. In this version, we present all the missing details.
Outline of the paper. We describe our extension of Sarkaria's technique in Section 2 and an averaging argument that is essential for our results. In Section 3, we present the proof of the nodimensional Tverberg theorem (Theorem 1.1). The algorithm for computing the partition is also detailed therein. Section 4 contains the results for the colorful setting of Tverberg (Theorem 1.2) and Section 5 presents results for the generalized Ham-Sandwich theorem (Theorem 1.3). We conclude in Section 6 with some observations and open questions.

Tensor product and Averaging argument
Let P ⊂ R d be the given set of n points. We assume for simplicity that the centroid of P , that we denote by c(P ), coincides with the origin 0, that is, x∈P x = 0. For ease of presentation, we denote the origin by 0 in all dimensions, as long as there is no danger of ambiguity. Also, we write ·, · for the usual scalar product between two vectors in the appropriate dimension, and [n] for the set {1, . . . , n}.

Tensor product
Let x = (x 1 , . . . , x d ) ∈ R d and y = (y 1 , . . . , y m ) ∈ R m be any two vectors. The tensor product ⊗ is the operation that takes x and y to the dm-dimensional vector x ⊗ y whose ij-th component is x i y j , that is, Easy calculations show that for any x, x ∈ R d , y, y ∈ R m , the operator ⊗ satisfies: (2) x ⊗ y + x ⊗ y = x ⊗ (y + y ); and (3) x ⊗ y, x ⊗ y = x, x y, y . By (3), the L 2 -norm x ⊗ y of the tensor product x ⊗ y is exactly x y . For any set of vectors X = {x 1 , x 2 , . . . } in R d and any m-dimensional vector q ∈ R m , we denote by X ⊗ q the set of tensor products {x 1 ⊗ q, x 2 ⊗ q, . . . } ⊂ R dm . Throughout this paper, all distances will be measured in the L 2 -norm.
A set of lifting vectors. We generalize the tensor construction that was used by Sarkaria to prove the Tverberg theorem [29]. For this, we provide a way to construct a set of k vectors {q 1 , . . . , q k } that we use to create tensor products. The motivation behind the precise choice of these vectors will be clear in the next section, when we apply the construction to prove the no-dimensional Tverberg result. Let G be an (undirected) simple, connected graph of k nodes. Let • G denote the number of edges in G, • ∆(G) denote the maximum degree of any node in G, and • diam(G) denote the diameter of G, i.e., the maximum length of a shortest path between a pair of vertices in G.
We orient the edges of G in an arbitrary manner to obtain an oriented graph. We use this directed version of G to define a set of k vectors {q 1 , . . . , q k } in G dimensions. This is done as follows: each vector q i corresponds to a unique node v i of G and its co-ordinates correspond to the row in the oriented incidence matrix assigned to v i . More precisely, each coordinate position of the vectors corresponds to a unique edge of G. If v i v j is a directed edge of G, then q i contains a 1 and q j contains a −1 in the corresponding coordinate position. The remaining co-ordinates are zero. That means, the vectors {q 1 , . . . , q k } are in R G . Also, k i=1 q i = 0. It can be verified that this is the unique linear dependence (up to scaling) between the vectors for any choice of edge orientations of G. This means that the rank of the matrix with the q i 's as the rows is k − 1. It can be verified that: An immediate application of Lemma 2.1 and property (3) of the tensor product is that for any set of k vectors {u 1 , . . . , u k }, each of the same dimension, the following relation holds: where E is the set of edges of G. 1 One of the simplest examples of such a set can be formed by selecting G to be the star graph. Each of the k − 1 leaves correspond to a standard basis vector of R k−1 and the root corresponds to (−1, . . . , −1) ∈ R k−1 . This is also the set used in Bárány and Onn's interpretation [8] of Sarkaria's proof.
A more sophisticated example can be formed by taking G as a balanced binary tree with k nodes, and orienting the edges away from the root. Let q 1 correspond to the root. A simple instance of the vectors is shown below: The vectors in the figure above can be represented as the matrix where the i-th row of the matrix corresponds to vector q i . As G = k − 1, each vector is in , or 1, depending on whether v i is the root, an internal node with two children, or a leaf, respectively. The height of G is log k and the maximum degree is ∆(G) = 3.

Averaging argument
Lifting the point set. Let P = {p 1 , . . . , p n } ⊂ R d . We first pick a graph G with k vertices, as in the previous paragraph, and we derive a set of k lifting vectors {q 1 , . . . , q k } from G. Then, we lift each point of P to a set of vectors in d G dimensions, by taking tensor products with the vectors {q 1 , . . . , q k }. More precisely, for a ∈ [n] and j ∈ For a ∈ [n], we let P a = {p a,1 , . . . , p a,k } be the lifted points obtained from p a . We have, p a,j = q j p a ≤ ∆(G) p a . By the bi-linear properties of the tensor product, we have so the centroid c(P a ) coincides with the origin, for a ∈ [n]. The next lemma contains the technical core of our argument. The result is applied in Section 3 to derive a useful partition of P into k subsets of prescribed sizes from the lifted point sets.

Lemma 2.2.
Let P = {p 1 , . . . , p n } be a set of n points in R d satisfying n i=1 p i = 0. Let P 1 , . . . , P n denote the point sets obtained by lifting each p i ∈ P using the vectors {q 1 , . . . , q k } defined using a graph G.
(i) For any choice of positive integers r 1 , . . . , r k that satisfy k i=1 r i = n, there is a partition T 1 , . . . , T k of P with |T 1 | = r 1 , |T 2 | = r 2 , . . . , |T k | = r k such that the centroid of the set of lifted points T := T 1 ⊗ q 1 ∪ · · · ∪ T k ⊗ q k (this set is also a traversal of P 1 , . . . , P n ) has distance less than from the origin 0.
(ii) The bound is better for the case n = rk and r 1 = · · · = r k = n/k. There exists a partition from the origin 0.
Proof. We use an averaging argument to prove the claims, like Adiprasito et al. [1]. More precisely, we bound the average norm δ of the centroid of the lifted points T 1 ⊗ q 1 ∪ · · · ∪ T k ⊗ q k over all partitions of P of the form T 1 , . . . , T k , for which the sets in the partition have sizes r 1 , . . . , r k respectively, with k i=1 r i = n.

Proof of Lemma 2.2(i).
Each such partition can be interpreted as a traversal of the lifted point sets P 1 , . . . , P n that contains r i points lifted with q i , for i ∈ [k]. Thus, consider any traversal of this type over all possible traversals X. By the linearity of expectation, E n a=1 x a 2 can be written as We next find the coefficient of each term of the form x a 2 and x a , x b in the expectation. Using the multinomial coefficient, the total number of traversals X is Furthermore, for any lifted point x a = p a,j , the number of traversals X with p a,j ∈ X is Similarly, for any pair of points (x a , x b ) = (p a,i , p b,j ), there are two cases in which they appear in the same traversal: first, if i = j, the number of traversals is The coefficient of p a,i , p b,j in the expectation is hence Second, if i = j, the number of traversals is calculated to be .
Substituting the coefficients, we bound the expectation as We bound the value of each of the three terms individually to get an upper bound on the value of the expression. The first term can be bounded as where we have again made use of Lemma 2.1. Substituting, the second term becomes The second term is non-positive and therefore can be removed since the total expectation is always non-negative.
The third term is Collecting the three terms, the expression is upper bounded by which bounds the expectation by This shows that there is a traversal such that its centroid has norm less than diam(P ) ∆(G) 2(n − 1) .

Proof of Lemma 2.2(ii) (balanced case).
For the case that n is a multiple of k, and r 1 = · · · = r k = n k = r, the upper bound can be improved: the first term in the expectation is The second term is zero, and the third term is less than The expectation is upper bounded as which shows that there is at least one balanced traversal X whose centroid has norm less than G k(n − 1) diam(P ), as claimed.

Efficient no-dimensional Tverberg Theorem
In this section we prove the results of Theorem 1.1: (ii) The bound is better for the case n = rk and r 1 = · · · = r k = r. There exists a partition T 1 , . . . , T k of P with |T 1 | = · · · = |T k | = r and a d-dimensional ball of radius

Proof of Theorem 1.1(i)
We lift the points of P to P 1 , . . . , P n using a graph G and the associated vectors q 1 , . . . , q k as in Section 2.2. The centroid c(P a ) coincides with the origin, for a ∈ [n]. Applying Lemma 2.2, there is a traversal T := T 1 ⊗q 1 ∪· · ·∪T k ⊗q k of the lifted points, with |T 1 | = r 1 , |T 2 | = r 2 , . . . , |T k | = r k , such that its centroid has norm at most δ. We show that there is a ball of bounded radius that intersects the convex hull of each T i . Let α 1 = r 1 /n, . . . , α k = r k /n be positive real numbers. The centroid of T , c(T ), can be written as . Using Equation (1), Let so the centroid of {x 1 , . . . , x k } coincides with the origin. Using c(T ) < δ and Equation (2), We bound the distance from x 1 to every other x i . For each i ∈ [k], we associate to x i the node v i in G. Let the shortest path from v 1 to v j in G be denoted by (v 1 , v i 1 , v i 2 , . . . , v iz , v j ). This path has length at most diam(G). Using the triangle inequality and the Cauchy-Schwarz inequality, Optimizing the choice of G. The radius of the ball has a term diam(G)∆(G) that depends on the choice of G. For a path graph this term has value (k − 1)2. For a star graph, that is, a tree with one root and k − 1 children, this is √ k − 1. If G is a balanced s-ary tree, then the Cauchy-Schwarz inequality in Equation (3) can be modified to replace diam(G) by the height of the tree. Then, the term is log s k (s + 1), which is minimized for s = 4. For this choice of G, the radius is bounded by as claimed.

Proof of Theorem 1.1(ii) (balanced partition)
For the case n = rk and r 1 = · · · = r k = r, we give a better bound for the radius of the ball containing the centroids c 1 , . . . , c k . In this case, we have α 1 = α 2 = · · · = α k = r/n = 1/k. Then, Equation (2) is Similar to the general case, we bound the distance from c 1 to any other centroid c j . For each i, we associate to c i the node v i in G. There is a path of length at most diam(G) from v 1 to any other node. Using the Cauchy-Schwarz inequality and substituting the value of γ from Lemma 2.2, we get Therefore, a ball of radius k n − 1 diam(G) G diam(P ) centered at c 1 contains the set c 1 , . . . , c k . The factor diam(G) G is minimized when G is a star graph, which is a tree. We can replace the term diam(G) by the height of the tree. Then, the ball containing c 1 , . . . , c k has radius as claimed.
As balanced as possible. When k does not divide n, but we still want a balanced partition, we take any subset of n 0 = k n/k points of P and get a balanced Tverberg partition on the subset. Then, we add the removed points one by one to the sets of the partition, adding at most one point to each set. As shown above, there is a ball of radius less than that intersects the convex hull of each set in the partition. Noting that a ball of radius less than (k + 2)(k − 1) (n − 1) diam(P ) intersects the convex hull of each set of the partition.

Proof of Theorem 1.1(iii)(computing the Tverberg partition)
We now give a deterministic algorithm to compute no-dimensional Tverberg partition T 1 , . . . , T k . The algorithm is based on the method of conditional expectations. First, in Section 3.3.1 we give an algorithm for the general case when the sets in the partitions are constrained to have given sizes r 1 , . . . , r k . The choice of G is crucial for the algorithm. The balanced case of r 1 = · · · = r k has a better radius bound and uses a different graph G. The algorithm for the general case also extends to the balanced case with a small modification, that we discuss in Section 3.3.2. We get the same runtime in either case.

Algorithm for the general case
As before, the input is a set of n points P ⊂ R d and k positive integers r 1 , . . . , r k satisfying k i=1 r i = n. Using tensor product construction, each point of P is lifted implicitly using the vectors {q 1 , . . . , q k } to get the set {P 1 , . . . , P n }. We then compute the required traversal of {P 1 , . . . , P n } using the method of conditional expectations [2], the details of which can be found below. Grouping the points of the traversal according to the lifting vectors used gives us the required partition. We remark that in our algorithm, we do not explicitly lift any vector using the tensor product, thereby avoiding costs associated with working on vectors in d G dimensions.
We now describe a procedure to find a traversal that corresponds to a desired partition of P . We go over the points in {P 1 , . . . , P n } iteratively in reverse order and find the traversal Y = (y 1 ∈ P 1 , . . . , y n ∈ P n ) point by point. More precisely, we determine y n in the first step, then y n−1 in the second step, and so on. In the first step, we go over all points of P n and select any point y n ∈ P n that satisfies E c(x 1 , x 2 , . . . , x n−1 , y n ) 2 ≤ E c(x 1 , x 2 , . . . , x n−1 , x n ) 2 . For the general step, suppose we have already selected the points {y s+1 , y s+2 , . . . , y n }. To determine y s , we choose any point from P s that achieves E c(x 1 , . . . , x s−1 , y s , y s+1 , . . . , y n ) 2 ≤ E c(x 1 , . . . , x s , y s+1 , . . . , y n ) 2 .
The last step gives the required traversal. We expand the expectation as We pick a y s for which E( c(x 1 , x 2 , . . . , x s−1 , y s , . . . , y n ) 2 ) is at most the average over all choices of y s ∈ P s . As the term E is constant over all choices of y s , and the factor 1 n 2 is constant, we can remove them from consideration. We are left with Let y s = p s ⊗ q i without loss of generality. The first term is Let r 1 , . . . , r k be the number of elements of T 1 , . . . , T k that are yet to be determined. In the beginning, r i = r i for each i. Using the coefficients from Section 2.2, E s−1 i=1 x i can be written as is the centroid of the first (s − 1) points. Using this, the second term can be simplified as The third term is 2 y s , n j=s+1 y j . Let y j = p j ⊗ q m j for s + 1 ≤ j ≤ n. The term can be simplified to p∈T j p and T j is the set of points in p s+1 , . . . , p n that was lifted using q j in the traversal. Collecting the three terms, we get with The terms α s , β s , p s are fixed for iteration s.

Algorithm.
For each s ∈ [1, n], we pre-compute the following: • prefix sums s a=1 p a , and • α s and β s .
With this information, it is straightforward to compute a traversal in O(ndk) time by evaluating the expression for each choice of p s . We describe a more careful method that reduces this time to O(nd log k ). We assume that G is a balanced µ-ary tree. Recall that each node v i of G corresponds to a vector q i . We augment G with the following additional information for each node v i : recall that this is the degree of v i .
• N st i : this is the average of the N j over all elements v j in the subtree rooted at v i . Since the subtree contains both internal nodes and leaves, this value is not µ + 1.
• r i : as before, this is the number of elements of the set T i of the partition that are yet to be determined. We initialize each r i := r i .
that is, r i N i minus the r j for each node v j that is a neighbor of v i in G, times two. We initialize R i := 0.
• R st i : this is the average of the R j values over all nodes v j in the subtree rooted at v i . We initialize this to 0.
• T i , u i : as before, T i is the set of vectors of the traversal that was lifted using q i . The sum of the vectors of T i is u i . We initialize T i = ∅ and u i = 0.
• U st i : this is the average of the vectors U j for all nodes v j in the subtree of v i . U st is initialized as 0 for each node.
Additionally, each node contains pointers to its children and parents. The quantities N st , R st are initialized in one pass over G.
In step s, we find an i ∈ [k] for which Equation (9) has a value at most the average where v 1 is the root of G. Then y s satisfies Equation (7). To find such a node v i , we start at the root v 1 ∈ G. We compute the average A s and evaluate Equation (9) at v 1 . If the value is at most A s , we report success, setting i = 1. If not, then for at least one child v m of v 1 , the average for the subtree is less than A s , that is, We scan the children of v 1 and compute the expression to find such a node v m . We recursively repeat the procedure on the subtree rooted at v m , and so on, until we find a suitable node. There is at least one node in the subtree at v m for which Equation (9) evaluates to less than A s , so the procedure is guaranteed to find such a node.
Let v i be the chosen node. We update the information stored in the nodes of the tree for the next iteration. We set After the last step of the algorithm, we get the required partition T 1 , . . . , T k of P . This completes the description of the algorithm.

Runtime.
Computing the prefix sums and α s , β s takes O(nd) time in total. Creating and initializing the tree takes O(k) time. In step s, computing the average A s and evaluating Equation (9) takes O(d) time per node. Therefore, computing Equation (9) for the children of a node takes O(dµ) time, as G is a µ-ary tree. In the worst case, the search for v i starts at the root and goes to a leaf, exploring O(µ log µ k ) nodes in the process and hence takes O(dµ log µ k ) time. For updating the tree, the information local to v i and its neighbors can be updated in O(dµ) time. To update R st and U st we travel on the path to the root, which can be of length O( log µ k ) in the worst case, and hence takes O(dµ log µ k ) time. There are n steps in the algorithm, each taking O(dµ log µ k ) time. Overall, the running time is O(ndµ log µ k ) which is minimized for a 3-ary tree.

Algorithm for the balanced case
In the case of balanced traversals, G is chosen to be a star graph as was done in Section 3.2. Let q 1 correspond to the root of the graph and q 2 , . . . , q k correspond to the leaves. In this case the objective function α s N i + β s R i + p s , U i from the general case can be simplified: We augment G with information at the nodes just as in the general case, and use the algorithm to compute the traversal. However, this would need time O(ndµ log µ k ) = O(ndk) since µ = (k − 1) and the height of the tree is 1. Instead, we use an auxiliary balanced ternary rooted tree T for the algorithm, that contains k nodes, each associated to one of the vectors q 1 , . . . , q k in an arbitrary fashion. We augment the tree with the same information as in the general case, but with one difference: for each node v i , the values of R i and U i are updated according to the adjacency in G and not using the edges of T . Then we can simply use the algorithm for the general case to get a balanced partition. The modification does not affect the complexity of the algorithm.

No-dimensional Colorful Tverberg Theorem
In this section, we prove Theorem 1.2 and give an algorithm to compute a colorful partition.

Theorem 1.2 (efficient no-dimensional Colorful Tverberg).
Let P 1 , . . ., P n ⊂ R d be point sets, each of size k, with k being a positive integer, so that the total number of points is N = nk.
(i) Then, there are k pairwise-disjoint colorful sets A 1 , . . . , A k and a ball of radius

(ii) The colorful sets A 1 , . . . , A k can be computed in deterministic time O(N dk).
The general approach is similar to that in Section 3, but the lifting and the averaging steps are modified.
Let P 1 , . . . , P n be point sets in R d , each of cardinality k. Let P 1 = {p 1,1 , . . . , p 1,k } and P 1,j = k i=1 p 1,i ⊗ q π j (i) be the point in R d G that is formed by taking tensor products of the points of P 1 with the permutation π j of q 1 , . . . , q k and adding them up, for j ∈ [k]. For instance, P 1,4 = p 1 ⊗ q 4 + p 2 ⊗ q 5 + · · · + p k ⊗ q 3 . This gives us a set of k points P 1 = {P 1,1 , . . . , P 1,k }. Furthermore, so the centroid of P 1 coincides with the origin. In a similar manner, for P 2 , . . . , P n , we construct the point sets P 2 , . . . , P n , respectively, each of whose centroids coincides with the origin. We now upper bound diam(P 1 ). For any point P 1,i , using Equation (1) we can bound the squared norm as so that P 1,i ≤ G diam(P 1 ). For any two points P 1,i , P 1,j ∈ P 1 , Therefore, diam(P 1 ) ≤ 2 G diam(P 1 ). We get a similar relation for each P i . Now we apply the no-dimensional Colorful Carathéodory theorem from [1, Theorem 2.1] on the sets P 1 , . . . , P n : there is a traversal X = {x 1 ∈ P 1 , . . . , x n ∈ P n } such that Let x 1 = P 1,i 1 , . . . , x n = P n,in where 1 ≤ i 1 , . . . , i n ≤ k are the indices of the permutations of π that were used. That means, Then, we define the colorful sets A 1 , . . . , A k as: , that is, A j consists of the points of P 1 , . . . , P n that were lifted using q j for j ∈ [k]. By definition, each A j contains precisely one point from each P i , so it is a colorful set. Let c j denote the centroid of A j . We expand the expression where we made use of Equation (1). Using the Cauchy-Schwarz inequality as in Section 3.1, the distance from c 1 to any other c j is at most diam(G)δ. Substituting the value of δ, this is 2kdiam(G) G N max i diam(P i ). Now we set G as a star graph, similar to the balanced case of Section 3.2 with v 1 as the root. A ball of radius centered at c 1 contains the set {c 1 , . . . , c k }, intersecting the convex hull of each A j , as required.

Proof of Theorem 1.2(ii)(computing the colorful partition)
The algorithm follows a similar approach as in Section 3.3. The input consists of the sets of points P 1 , . . . , P n . We use the permutations π 1 , . . . , π k of q 1 , . . . , q k to (implicitly) construct the point sets P 1 , . . . , P n . Then we compute a traversal of P 1 , . . . , P n using the method of conditional expectations. This essentially means determining a permutation π i j for each P i . The permutations directly determine the colorful partition. Once again, we do not explicitly lift any vector using the tensor product, and thereby avoid the associated costs. We iterate over the points of {P 1 , . . . , P n } in reverse order and find a suitable traversal Y = (y 1 ∈ P 1 , . . . , y n ∈ P n ) point by point. Suppose we have already selected the points {y s+1 , y s+2 , . . . , y n }. To find y s ∈ P s , it suffices to choose any point that satisfies Specifically, we find the point y s for which the conditional expectation expressed as is minimized. As in Equation (8) from Section 3.3, this is equivalent to determining the point that minimizes Let y s = k i=1 p s,i ⊗ q π(i) for some permutation π ∈ {π 1 , . . . , π k }. The terms of Equation (13) can be expanded as: • first term: using Equation (1).
• second term: the expectation can be written as as in Equation (10).
• third term: let π j s+1 , . . . , π jn denote the respective permutations selected for P s+1 , . . . , P n in the traversal. Then, where, A m ⊆ A m is the colorful set whose elements from P s+1 , . . . , P n have already been determined. Let S m = p∈A m p for each m = 1 . . . k. Then, the third term can be written as If τ is the permutation selected in the iteration for P s , then we update However, the algorithm for the colorful version has a worse runtime since it does not utilize the optimizations used in the regular version.

No-dimensional Generalized Ham-Sandwich Theorem
We prove Theorem 1.3 in this section: (i) There is a linear transformation and a ball B ∈ R d−k+1 of radius

Theorem 1.3 (no-dimensional Generalized Ham-Sandwich
, after applying the transformation. (ii) The ball and the transformation can be determined in time This is a no-dimensional version of a generalization of the Ham-Sandwich theorem [33]. We briefly describe the history of the problem before detailing the proof.
The Centerpoint theorem was proven by Rado in [26]. It states that for any set of n points P ⊂ R d , there exists some point cp(P ) ∈ R d , called the centerpoint of P , such that cp(P ) has depth at least n/(d + 1) . The centerpoint generalizes the concept of median to higher dimensions. The theorem can be proven using Helly's theorem [16] or Tverberg theorem.
The Ham-Sandwich theorem [33] shows that for any set of d finite point sets P 1 , . . . , P d ⊂ R d , there is a hyperplane H which bisects each point set, that is, each closed halfspace defined by H contains at least |P i |/2 points of P i , for i ∈ [d]. The result follows by an application of the Borsuk-Ulam theorem [18].
Zivaljević and Vrećica [37] and Dol'nikov [12], independently, proved a generalization of these two results for affine subspaces (flats) : For k = 1, this corresponds to the Centerpoint theorem while for k = d, this is the Ham-Sandwich theorem, and thereby interpolates between the two extremes.
We prove a no-dimensional version of this theorem, where 1/(d − k + 2) can be relaxed to be an arbitrary but reasonable fraction. In fact, we prove a slightly stronger version that allows an independent choice of fraction for each point set P i individually. The idea is motivated by the result of Bárány, Hubard and Jerónimo, who showed in [6] that under certain conditions of "well-separation", d compact sets S 1 , . . . , S d ⊂ R d can be divided by a hyperplane that such the positive half-space contains an (α 1 , . . . , α d )-fraction of the volumes of S 1 , . . . , S d , respectively. A discrete version of this result for finite point sets was proven by Steiger and Zhao in [32], which they term as the Generalized Ham-Sandwich theorem. Our result can be interpreted as a no-dimensional version of this result, but we do not have constraints on the point sets as in [6,32].
Without loss of generality, we assume that the centroid c(P 1 ) = 0. We first approach a simpler case: Lemma 5.2. Let c(P 1 ) = · · · = c(P k ) = 0 and m 1 , . . . , m k , 2 ≤ m i ≤ |P i | for i ∈ [k], be any choice of integers. Then the ball of radius Proof. Consider any point set P i and a no-dimensional |P i | m i -partition of P i . From [1, Theorem 2.5], we know that the ball B centered at c(P i ) = 0 of radius We prove an auxiliary result that will be helpful in proving the main result: Proof. Consider any half-space H ⊂ R d 1 that contains X × R v . Then H contains R v , so it can be written asĤ × R v , whereĤ ⊂ H is a half-space containing X.Ĥ contains at least α i points of each P i . By orthogonality of the projection, H also contains at least α i points of each P i , proving the claim.
Proof of Theorem 1.3(i). Given point sets P 1 , . . . , P k with c(P 1 ) = 0, we apply orthogonal projections on the points multiple times so that their centroids coincide. In the first step, we set v 1 = c(P 2 ). Let l 1 be the line through the origin containing v 1 and let H v 1 be the hyperplane via 0 with normal v 1 . Let f 1 : R d → H v 1 be the orthogonal projection defined as f (p) = p − p, v v |v| 2 . Let P 1 1 , . . . , P 1 k ⊂ R d−1 be the point sets obtained by applying the orthogonal projection on P 1 , . . . , P k , respectively. Under this projection c(P 1 1 ) = c(P 1 2 ) = 0. In the next step we set v 2 = c(P 1 3 ) and define l 2 and H v 2 analogously. We project P 1 1 , . . . , P 1 k onto H v 2 to get P 2 1 , . . . , P 2 k with c(P 2 1 ) = c(P 2 2 ) = c(P 2 3 ) = 0. We repeat this process k − 1 times to get a set of points , . . . , P k−2 k ⊂ R d−k+2 , B × k−1 also has the required depth. Repeated application of Lemma 5.3 gives us B × k−1 × k−2 × · · · × 1 . Since the Cartesian product may have more than d co-ordinates, we apply a linear transformation so that the subspace spanned by the orthogonal set 1 , . . . , k−1 is R k−1 . Then, B × R k−1 has the desired properties.

Proof of Theorem 1.3(ii).
To compute the vectors v 1 , . . . , v k−1 , we note that by linearity of the projection. Therefore, at the beginning we first compute each centroid c(P i ) and in each step we apply the projection on the relevant centroids. The projection is applied 1 + · · · + k − 2 = O(k 2 ) times. Computing the centroid in the first step takes O( i |P i |d) time.
Computing the projection once takes O(d) time, so in total O(dk 2 ) time. Finding the linear transformation takes another O(d 6 ) time.

Conclusion and future work
We gave efficient algorithms for a no-dimensional version of Tverberg theorem and for a colorful counterpart. To achieve this end, we presented a refinement of Sarkaria's tensor product construction by defining vectors using a graph. The choice of the graph was different for the general-and the balanced-partition cases and also influenced the time complexity of the algorithms. It would be interesting to find more applications of this refined tensor product method. Another option could be to look at non-geometric generalizations based on similar ideas. It would also be interesting to consider no-dimensional variants other generalizations of Tverberg's theorem, e.g., in the tolerant setting [22,30].
The radius bound that we obtain for the Tverberg partition is √ k off the optimal bound in [1]. This seems to be a limitation in handling Equation (4). It is not clear if this is an artifact of using tensor product constructions. It would be interesting to explore if this factor can be brought down without compromising on the algorithmic complexity. In the general partition case, setting r 1 = · · · = r k gives a bound that is log k worse than the balanced case, so there is some scope for optimization. In the colorful case, the radius bound is again √ k off the optimal [1], but with a silver lining. The bound is proportional to max i diam(P i ) in contrast to diam(P 1 ∪ · · · ∪ P n ) in [1], which is better when the colors are well-separated.
The algorithm for colorful Tverberg theorem has a worse runtime than the regular case. The challenge in improving the runtime lies a bit with selecting an optimal graph as well as the nature of the problem itself. Each iteration in the algorithm looks at each of the permutations π 1 , . . . , π k and computes the respective expectations. The two non-zero terms in the expectation are both computed using the chosen permutation. The permutation that minimizes the first term can be determined quickly if G is chosen as a path graph. This worsens the radius bound by √ k − 1. Further, computing the other (third) term of the expectation still requires O(k) updates per permutation and therefore O(k 2 ) updates per iteration, thereby eliminating the utility of using an auxiliary tree to determine the best permutation quickly. The optimal approach for this problem is unclear at the moment.