Department of Computer Science and Engineering, Tandon School of Engineering, New York University, Brooklyn, NY 11201 USA and \urlhttps://engineering.nyu.edu/faculty/[email protected]://orcid.org/0000-0003-3110-4702Work has been supported by NSF grants CCF 15-40656 and CCF 20-08551, and by grant 2014/170 from the US-Israel Binational Science Foundation. Part of this research was conducted while BA was visiting ISTA in the summers of 2022 and 2023. The visit of BA to ISTA in the summer of 2022 was supported by an ISTA Visiting Professorship. Research of BA also partially supported by ERC grant no. 882971, “GeoScape,” and by the Erdős Center. School of Mathematics, Monash University, VIC 3800, Australia and \urlhttps://sites.google.com/view/[email protected]://orcid.org/0000-0003-0754-3203Work has been supported by Australian Research Council grant DP220102212. Department of Computer Science and Engineering, Tandon School of Engineering, New York University, Brooklyn, NY 11201 [email protected]://orcid.org/0009-0008-9967-0819Work supported by a Tandon School of Engineering Fellowship and by NSF Grant CCF-20-08551. Institute of Science and Technology Austria, Am Campus 1, 3400 Klosterneuburg, Austria and \urlhttps://gtasinato.github.io/[email protected]://orcid.org/0009-0008-7231-5753 Institute of Science and Technology Austria, Am Campus 1, 3400 Klosterneuburg, Austria and \urlhttps://ist.ac.at/en/research/wagner-group/[email protected]://orcid.org/0000-0002-1494-0568 \CopyrightBoris Aronov, Abdul Basit, Indu Ramesh, Gianluca Tasinato, and Uli Wagner \ccsdesc[100]Theory of computation Randomness, geometry and discrete structures Computational geometry \ccsdesc[100]Mathematics of computing Discrete mathematics
Acknowledgements.
BA and AB would like to thank William Steiger for insightful initial discussions of the problems addressed in this work.Eight-Partitioning Points in 3D, and Efficiently Too††thanks: A preliminary version of this work will appear in SoCG’24 [3].
Abstract
An eight-partition of a finite set of points (respectively, of a continuous mass distribution) in consists of three planes that divide the space into octants, such that each open octant contains at most of the points (respectively, of the mass). In 1966, Hadwiger showed that any mass distribution in admits an eight-partition; moreover, one can prescribe the normal direction of one of the three planes. The analogous result for finite point sets follows by a standard limit argument.
We prove the following variant of this result: Any mass distribution (or point set) in admits an eight-partition for which the intersection of two of the planes is a line with a prescribed direction.
Moreover, we present an efficient algorithm for calculating an eight-partition of a set of points in (with prescribed normal direction of one of the planes) in time .
keywords:
Mass partitions, partitions of points in three dimensions, Borsuk-Ulam Theorem, Ham-Sandwich Theoremcategory:
\relatedversion1 Introduction
Geometric methods for partitioning space, point sets, or other geometric objects are a central topic in discrete and computational geometry. Partitioning results are often proved using topological methods and also play an important role in topological combinatorics [8, 17, 19, 22]. A classical example is the famous Ham-Sandwich Theorem, which goes back to the work of Steinhaus, Banach, Stone, and Tukey (see [19, Sec. 1] for more background and references). A “discrete” version of this theorem asserts that, given any finite point sets in , there is an (affine) hyperplane that simultaneously bisects all , i.e., each of the two open half-spaces determined by contains at most points, . This follows (by a standard limit argument, see [17, Sec. 3.1]) from the following “continuous” version: Let be mass distributions in , i.e., finite measures such that every open set is measurable and every hyperplane has measure zero. Then there exists a hyperplane such that for , where and are the two open half-spaces bounded by .
In this paper, we are interested in another classical equipartitioning problem, first posed by Grünbaum [11] in 1960: Given a mass distribution (respectively, a finite point set) in , can one find hyperplanes that subdivide into open orthants, each of which contains exactly of the mass (respectively, at most of the points)? We call such a -tuple of hyperplanes a -partition of the mass distribution (respectively, of the point set).
For , it is an easy consequence of the planar Ham-Sandwich theorem that any mass distribution (or point set) in admits a four-partition; moreover, the four-partition can be chosen such that one of the lines has a prescribed direction (indeed, start by choosing a first line in the prescribed direction that bisects the given mass distribution; by the Ham-Sandwich Theorem, there exists a second line that simultaneously bisects the two parts of the mass on either side of the first line). Alternatively, one can also show that there is always a four-partition such that the two lines are orthogonal. Intuitively, the reason that we can impose such additional conditions is that the four-partitioning problem in the plane is underconstrained: A line in the plane can be described by two independent parameters, so a pair of lines have four degrees of freedom, while the condition that the four quadrants have the same mass can be expressed by three equations, leaving one degree of freedom; either one of the additional constraints uses this extra degree of freedom.
In 1966, Hadwiger [12] gave an affirmative answer to Grünbaum’s question for and showed that any mass distribution in admits an eight-partition; moreover, the normal vector of one of the planes can be prescribed arbitrarily. This result was later re-discovered by Yao, Dobkin, Edelsbrunner, and Paterson [23].
Theorem 1.1 ([12, 23]).
Let be a mass distribution on , and let . Then there exists a triple of planes that form an eight-partition for and such that the normal vector of is .
More recently, Blagojević and Karasev [6] gave a different proof for the existence of eight-partitions and showed the following variant:
Theorem 1.2 ([6]).
Let be a mass distribution on . Then there exists an eight-partition of such that the plane is perpendicular to both and .
Our first result is the following alternative version of eight-partitioning, which to the best of our knowledge is new:
Theorem 1.3.
Given a mass distribution in and a vector , there exists an eight-partition of such that the intersection of the two planes and is a line in direction .
As in the case of the Ham-Sandwich Theorem, each of the three theorems above also implies the existence of the corresponding type of eight-partition for finite point sets, again by a standard limit argument (see Lemma A.1).
We remark that, in general, hyperplanes in are described by independent parameters, while the condition that orthants have equal mass can be expressed by equations. For , this leaves degrees of freedom, which allows for any one of the additional conditions imposed in Theorems 1.1, 1.2, and 1.3, respectively. On the other hand, for , we have , so intuitively Grünbaum’s problem is overconstrained. Avis [4] made this precise and constructed explicit counterexamples using the well-known moment curve in . The crucial fact is that any hyperplane intersects the moment curve in at most points ([17, Lemma 1.6.4]). Thus, for , a mass distribution supported on admits no -partition because any hyperplanes intersect in at most points, which subdivide into at most intervals, hence there are always at least orthants that do not intersect and hence contain no mass. The last remaining case of Grünbaum’s problem, i.e., the question whether any mass distribution in admits a -partition by four hyperplanes, remains stubbornly open (see [5], [8, Conjecture 7.2], [17, pp. 50–51], and [19, Problem 2.1.4] for more background and related open problems).
We now turn to the algorithmic question of computing eight-partitions in .
Problem 1.4.
Given a set of points in , in sufficiently general position, compute three planes that form an eight-partition of the points.
As remarked above, the corresponding problem of computing a four-partition of a planar point can be reduced to finding a Ham-Sandwich cut of two planar point sets that are separated by a line; Megiddo [18] showed that this can be done in linear time.
Computing a Ham-Sandwich cut in can be done efficiently, in time [16] (where is the total number of points and the -notation suppresses polylogarithmic factors). In general, the best known algorithm for computing Ham-Sandwich cuts in fixed dimension runs in time where a constant depending only on [16], and a decision variant of the problem becomes computationally hard when the dimension is part of the input, see, e.g., [14]. However, the problem of computing eight-partitions in seems significantly more difficult, and there is no known way of reducing it to the computation of a Ham-Sandwich cut; in particular, given two planes and that four-sect a finite point set (in the sense that every one of the four open orthants determined by and contains at most points), there generally need not exist a third plane such that form an eight-partition.
The following concept is useful for characterizing the complexity of Problem 1.4. A halving plane for an -point set for odd in in general position is a plane that passes through three of the points and contains exactly points on each side. Let be the maximum number of halving planes for an -point set as above. The best known upper and lower bounds for are and , due to Sharir, Smorodinsky, and Tardos [20] and Tóth [21], respectively. A brute-force algorithm that checks every triple of halving planes solves Problem 1.4 in time roughly proportional to .
Yao et al. [23] and Edelsbrunner [9] gave a time algorithm for Problem 1.4 that computes an eight-partition (with a prescribed normal direction for one of the planes, as in Theorem 1.1) by an expensive search, using the fact that only two planes need to be identified. Fixing one plane and performing a brute-force search for the remaining two would yield an algorithm with a running time comparable to .
Here, we present, to our knowledge, the fastest known algorithm for Problem 1.4. Roughly speaking, our algorithm runs in time near-linear in rather than quadratic in it.
Theorem 1.5 (Algorithm).
An eight-partition of points in general position in , with a prescribed normal vector for one of the planes, can be computed in time ; the -notation suppresses polylogarithmic factors.
Our algorithm can be seen as a constructive version of Hadwiger’s proof [12]. We start by bisecting the point set by a plane with a fixed normal direction, which partitions the initial point set into two subsets of “red” and “blue” points, respectively, of equal size. After that, our algorithm finds two more planes that simultaneously four-sect both the red points and the blue points.
2 The topological result
2.1 Notation and preliminaries
In what follows, it will often be convenient to assume that the mass distributions we work with have connected support where the support of a mass distribution is and denotes the ball of radius centred at . By a standard limit argument (see Lemma A.5), the existence of eight-partitions for mass distributions with connected support implies the existence of eight-partitions for the general case. Hereafter, unless stated otherwise, we assume, without loss of generality, that every mass distribution has connected support.
We denote the scalar product of two vectors by A vector and a scalar determine an (affine) plane
together with an orientation of (given by the direction of the normal vector ). We denote by the affine plane with the same equation as but with opposite orientation. The oriented plane determines two open half-spaces, denoted by
More generally, let be an ordered -tuple of (oriented) planes in , . In what follows, it will be convenient to identify the set with the group (where the group operation is multiplication of signs). Elements of are strings of signs of length , and we will denote by the identity element of .
For , we define the open orthant determined by and as . Given a mass distribution in , we say that an ordered -tuple of planes () forms a -partition of if every orthant contains of the mass, i.e., for every . For , this corresponds to the notions of bisecting, four-secting, and eight-partitioning as mentioned in the introduction. Analogously, we say that forms a -partition of a finite point set in if for all .
We will parameterize oriented planes in by , where the north pole and the south pole map to the plane at infinity with opposite orientations. For this we embed into via the map An oriented plane in is mapped to an oriented affine -dimensional subspace of and is extended (uniquely) to an oriented linear hyperplane. The unit normal vector on the positive side of the linear hyperplane defines a point on the sphere . Hence, there is a one-to-one correspondence between points in and oriented affine planes in . The positive side of the plane at infinity is for and for . Hence for every . Note that planes at infinity cannot arise as solutions to the measure partitioning problem, since they produce empty orthants. Therefore we do not need to worry about the fact that the sphere includes these.
We parameterize triples of planes (called plane configurations) in by , and denote by the triple corresponding to . Given a mass distribution on , for each and , we set
where is the number of coordinates where both and are . As an example, with and , we obtain
When is clear from context, we write instead of . The definitions of alternating sums for a pair of planes or a single plane are analogous.
The alternating sums have the following properties which will play an important role in the proof below. {observation} Let be a mass distribution and fix .
-
[(i)]
-
1.
Let and let be a -tuple of planes, then (the equivalent statement holds for any other entry of a -tuple instead of just for ).
-
2.
A -tuple of planes -partitions if and only if for every .
Proof 2.1.
(1) Since every hyperplane has null measure it follows that, for any
From the definition of , if then for any the two orthants and are counted with the same sign in the sum, therefore
(2) It is clear that, if is a -partition, then all the alternating sums are . We will prove the other implication.
Suppose first that and that . The only alternating sum is and implies that bisects.
Suppose now that and that . By (1) and the statement for a single plane, and imply that both and bisect. Therefore, if , we have that
hence as desired.
Finally, suppose that and that . By (1) and the statement for single planes and for pairs of planes, we have that all planes bisect and all pairs four-partition. Therefore, if , we have that
hence as claimed.
2.2 The main topological result
Our goal is to prove the following result — a more precise statement of Theorem 1.3:
Theorem 2.2.
Given a mass distribution and a direction , there exists a triple of oriented planes that eight-partition so that the oriented direction of the intersection is .
By Lemma A.5, it is sufficient to prove Theorem 2.2 for mass distributions with connected support. We require the following technical lemma about partitioning a mass distribution on , due to Blagojević and Karasev [6]. For completeness, the proof is given in Appendix C. {restatable}[Four-partitioning a mass distribution in [6]]lemmablagkarasev Let be a mass distribution (with connected support) on and . Then there exists a pair of lines in that four-partitions and such that bisects the angle between and .
Moreover, if we orient and so that is in the first direction clockwise from , and is in the first direction counterclockwise, the oriented pair is unique and the lines depend continuously on .
Proof 2.3 (Proof of Theorem 2.2).
Without loss of generality, let . Our proof proceeds in two steps. In the first step, we construct a map whose zeros codify equipartitions of ; then we prove that is equivariant with respect to a suitable choice of actions of on the two spaces. In the second step we show that any continuous -equivariant map has to have a zero.
Step 1: The key step in constructing the map is to show that we can parameterize pairs of planes that have intersection direction and four-sect , by a vector in .
We project to the -plane to obtain a mass distribution on . Lemma 2.2 guarantees that, once we fix a direction (inclusion as the horizontal equator in ) there are two lines in the -plane and that four-sect the projected measure . Define to be the (oriented) span of and ; the two planes now four-sect and have the desired intersection direction.
Now let be a generator of and define its action on by a counterclockwise rotation by . We use to denote the action of on . Then, by the uniqueness in Lemma 2.2, we have that
(1) |
Intuitively, if we consider the planar problem with the bisecting vector rotated by , by uniqueness the affine lines that split the measure are the same. However, while the direction chosen as in the rotated problem is the direction in the previous configuration, the “rotated” is in the original problem (see Figure 1).

Using this construction, we can define a function by . It follows from eq. (1) that is mapped to , therefore, if we fix the corresponding action111Formally, for any the generator of acts by . of on , the map is -equivariant.
The group acts by antipodality on ; therefore, if acts on component-wise, the map defined as is -equivariant.
By construction, the first two planes are always a four-partition of the mass distribution, therefore by Observation 2.1, a configuration is an eight-partition if and only if the four alternating sums with (i.e., , , and ) are .
To compute the action of on the alternating sums, it is enough to specify what happens on (a generator of ) and (a generator of ). If we act with , we obtain
while acting with produces
for every .
Finally, we can choose a linear -action on that is consistent with the previous equations. In particular, if we define
then the map , given by
is -equivariant. By Observation 2.1, the zeros of are exactly the configurations of planes that eight-partition the measure and have the desired intersection property.
Step 2: Suppose now, for a contradiction, that does not have a zero. This means that it is possible to define a -equivariant map by .
Theorem 2.4.
Let be a finite set of points and a fixed direction. Then there exists a triple of oriented planes that eight-partitions , so that the oriented direction of the intersection is .
3 Levels in arrangements of planes
Let be a set of points in general position. Specifically, we assume that the points in satisfy the following: no four in a plane, no three in a vertical plane, and no two in a horizontal plane. Recall that a halving plane for an -point set (with odd) in in general position is a plane that passes through three of the points and contains exactly points on each side, and that is the maximum number of halving planes for an -point set in .
Let be a set of planes in in general position. Specifically, we assume that the planes are non-vertical, every triple of planes in meets in a unique point, and no point in is incident with more than three of the planes. The planes in partition into a complex of convex cells, called the arrangement of and denoted by . The -level in is defined as the closure of the set of all points which lie on a unique plane of the arrangement and have exactly planes below it. Note that the -level is a piecewise linear surface in whose faces are contained in planes of . When , the -level is called the median level of the arrangement.
Let be the maximum complexity of any -level in an arrangement of planes in . Using the standard duality transform222The duality transform maps points in to planes in and vice versa. Specifically, the point is mapped to the non-vertical plane in , and vice versa. See [13, Chapter 25.2] for standard properties of the duality transform., it is easily seen that ; indeed, the dual of a halving plane of is a vertex of the median level of the arrangement of . It is a well-known fact that (see [2, Theorem 3], [10, Theorem 3.3]).
The main object of interest in bounding the complexity of our algorithm is the intersection of median levels of two arrangements of disjoint sets of planes. We show that the complexity of this is proportional to .
Fact 1.
Let be the maximum complexity of the intersection of the median levels of the arrangements and of disjoint sets of planes and in in general position, with and odd. Then in the worst case.
Proof 3.1.
Suppose . Let be the intersection of the median levels of and . As are in general position, is a collection of edges and vertices in . Note that is a collection of cycles and bi-infinite curves, in general, so its complexity is asymptotically determined by the number of its edges.
Each point on an edge of has the property that there are planes of above it and planes of below it. Hence is contained in the -level of . It follows that the complexity of is bounded above by the complexity of a level in an arrangement of planes, implying . This proves the upper bound.
For the lower bound, let be a set points in general position achieving the maximum number of halving planes. Let be a copy of translated by a small in a generic direction. We then slightly perturb the points of to ensure general position. For a point , we denote by its copy in . Consider the sets (red) and (blue) of points obtained as follows: for each pair , we assign one point to and the other to uniformly and independently at random.
Let be a triple of points of defining a halving plane, and consider the six points . We claim that, with constant probability, there exists a plane that passes through one red point and one blue point and has precisely one red and one blue point on each side, from . As our perturbation was arbitrarily small, partitions the remaining points of is the same manner is it partitions . Let and be the sets of planes dual to points in and , respectively. In the dual, the plane corresponds to a point on an edge of the intersection of the median levels of and : has red and blue planes lying above and below it, and lies on the intersection of exactly one red and one blue plane. Since different triples correspond to partitioning in different ways, the points arising from different halving planes lie on different edges of . By construction, the number of such edges is a constant fraction of in expectation, completing the lower bound proof.333In our application, the sets of points and are separated, which is not the case in the above lower bound construction. With this additional constraint, it is possible that the complexity of is always .
4 The algorithm
We can deduce the existence of eight-partitions of a finite point set of a certain advantageous form from Theorem 1.1.
Let be an integer and be a set of points in general position. Then, there exists a triple of planes that eight-partitions with the following properties:
-
[(i)]
-
1.
is horizontal (i.e., parallel to the -plane) and passes through the -median point of . From here on, we refer to the points that lie below (resp., above) as red (resp., blue) points and denote the sets (resp. ).
-
2.
and each contain exactly three points, and each open octant contains exactly points.
-
3.
each bisect and , and the pair four-partitions both and . Furthermore, and contain at least one point of each color.
Proof 4.1.
Since the set is compact, by Theorem 1.1 and Lemma A.1, there exists a configuration that eight-partitions the point set with horizontal. Along with the general position assumption, this implies that contains only the -median point. This proves (1).
To see (2), note that any eight-partition has at most points of in each of the eight open octants, one point in , and at most three points in each of and , by general position, for a total of at most points. So, in fact, all the inequalities are equalities: there must be exactly points in each open quadrant and exactly three points of in each of and .
It remains to show (3). By preceding paragraph, it is straightforward that four-partitions both and . By Corollary A.3, we have that any pair four-partitions . Since four-partitions , each quadrant formed by has at most points. has points on each side. Hence, we obtain that bisects and , and, in particular, contains at least one point of each color. A symmetric argument shows that bisects both and , and contains at least one point of each color. This completes the proof.
Theorem 4.2 (Computation of an eight-partition).
Let be a set of points in general position and . An eight-partition of with being the normal vector of can be computed in time , where is the maximum complexity of the intersection of the median levels of two sets of planes.
Since by Fact 1, we can compute an eight-partition in time . The rest of this section is devoted to the proof of Theorem 4.2. We assume, without loss of generality, that is the vertical vector, so is required to be horizontal. If , the statement holds trivially — set to be the horizontal plane containing any point of , and to contain at most three distinct points each, so that the octants do not contain any points. From here on, we will assume that , for an integer . If is not of this form, we may add dummy points to (in general position) until the number of points is of the required form and run the algorithm. Once the algorithm terminates, we discard the dummy points, resulting in an eight-partition with at most points in each octant.
We now describe the algorithm to construct an eight-partition of satisfying the properties in Observation 4. Let be the horizontal plane containing the -median point of , and, without loss of generality, identify with the -plane. Now consider the sets and of points each lying below and above, respectively, . We further assume, without loss of generality, that is contained in the half-space and is contained in the half-space . Otherwise, since no point in has by the general position assumption, there exists a plane containing the -axis and with sufficiently small negative slope in the direction such that all red points are below and all blue points are above . Applying a generic sheer transformation (so as not to violate the general position assumption) that fixes the -plane and maps to the plane , we obtain point sets with the required properties.
Let be the set of red planes dual to points in and set to be the arrangement formed by the set . The set of blue planes and the blue arrangement are defined analogously. We will write for the arrangement formed by the planes in . For a (dual) point , we set to be the set of red planes lying strictly above and below , respectively. For a pair of (dual) points, put
The sets and the function are defined analogously for .
Let be the intersection of the median levels of and . By the following lemma, we have that is a connected -monotone polygonal curve and is an alternating sequence of edges and vertices of terminated by half-lines.
Lemma 4.3.
is a connected -monotone curve.
Proof 4.4.
Recall that lies in the quadrant and lies in the quadrant . Hence, the dual planes in and have equations of the form with and , respectively.
Consider the intersection of with the plane . The intersection of the plane is the line , so planes in correspond to lines with negative slope and planes in correspond to lines with positive slope. In particular, the median levels of lines corresponding to and are graphs of piecewise-linear total functions that are decreasing and increasing, respectively. It follows that the two curves intersect exactly once. This intersection point corresponds to the intersection of with the plane .
By general position, is a union of vertex-disjoint cycles and bi-infinite paths composed of edges and vertices of , since incident to every vertex of contained in are precisely two edges belonging to . By monotonicity in , must be a single bi-infinite chain.
Lemma 4.5 (Computing the intersection of two levels [1, 7]).
The intersection curve of the median level of and the median level of can computed in time , where is the complexity of the curve and notation hides polylogarithmic factors.
Proof 4.6.
We use the standard dynamic data structure for ray-shooting queries in the intersection of half-spaces; the currently fastest algorithm is due to Chan [7], see also earlier work of Agarwal and Matoušek [1].
A starting ray of can be computed by computing the intersection of the median levels in the vertical plane for a small enough , defined as in the proof of Lemma 4.3, in linear time, using an algorithm of Megiddo [18].
Consider a point on the initial edge of (infinite in the -direction). It lies on one plane of and one plane . Let be the intersection line of and , and consider the half line of starting at and infinite in the -direction. The planes of (besides and ) are classified into those lying above and those lying below it. Call the first set and the second . We preprocess the intersection of the set of lower half-spaces defined by the planes of and the intersection of the set of upper half-spaces defined by the planes of for dynamic ray shooting and shoot with . The earlier of the two intersections identifies the first plane of that meets. This is the next vertex of on ; turns here. If belongs to , now follows the intersection line of and . Otherwise it follows the intersection line of and . Past the intersection, the sets and need to be updated and we continue, following the next ray, until we trace all of .
The only cost besides the initial computation of are identifying and in time, initializing the dynamic structure, in time, and performing two ray shots and updates on and per vertex of , each at a cost of .
As we construct , we can store it as a sequence of vertices and edges. Each edge is associated with the red-blue pair of planes containing it. An endpoint of an edge is contained in an additional plane. For each consecutive edge/vertex pair , in either direction, we record which new plane contains together with its color.
We now return to the computation of the eight-partition . By the general position assumption, and cannot be vertical, so and correspond to vertices in , by Observation 4. With the above setup, we can reformulate the problem of computing and as follows.
Claim 2 (The dual alternating sign functions).
Computing and is equivalent to identifying a pair of vertices such that .
Proof 4.7.
By Observation 4(2), the eight-partition has exactly points in each of the eight open octants. Setting and , we obtain that for all combinations of signs. Therefore , as claimed.
We now argue the other direction. Let be vertices such that . Since and lie on , and bisect both and and contain exactly three points each, at least one of each color. Hence, it suffices to show that is a four-partition of both and , i.e., for all combinations of signs. Indeed, this implies that each octant formed by , contains exactly points completing the proof.
Let , , , and . Define analogously for the blue planes. Without loss of generality, for a contradiction, suppose .
We first consider the case . Since lies on the median level of , we have , implying . Similarly, since lies on the median level of , we have . Recall that, by assumption, , implying . Hence, , so and together are contained in red planes, contradicting the general position assumption.
We may now assume . Following the same reasoning we obtain , , and . This implies , and, in particular, that and together are contained in at least 3 red planes. Now consider the blue planes and note that — this is clear if each of sets contains at most blue planes, otherwise it follows by the same argument as above. Hence, and together are contained in blue planes.
By Observation 4(2), and are contained in at most planes of . Combined with the argument above, this implies and together are contained in exactly 3 planes of each color. It follows that , which, by the assumption , implies and . Since and , there are exactly 2 red planes containing below . Similarly, since and , there are exactly 2 red planes containing below . But then and are contained in a total of red planes, a contradiction.
This exhausts all possibilities and, hence, for all combinations of signs, completing the proof.
To summarize, once we construct in time , to compute an eight-partition, it is sufficient, by Claim 2, to find two vertices satisfying . In particular, it is possible to construct an eight-partition by enumerating all the pairs of vertices in ; the exact running time depends on how efficiently one can check candidate pairs. Below, we describe how to reduce the amount of remaining work to .
Speed up
For simplicity of later calculations, we orient in the -direction (which is possible by Lemma 4.3) and view it as an alternating sequence of edges and vertices, starting and ending with a half-line. We denote these elements by . Recall that the goal is to identify so that are vertices and .
We extend the definition of as follows. If are both edges, we pick arbitrary points and in the open edges and , respectively, and set and ; the cases where is an edge or is an edge, but not both, are handled analogously. Note that specifying the (open) edges containing and is sufficient to determine and , hence the definition is unambiguous. Define by
With this setup, our goal is to identify a point (corresponding to a pair of vertices on ) such that .
We define a grid curve to be a sequence of points in such that for each . In words, a grid curve is a walk in which, at each step, does not move at all or moves by exactly one unit up/down/left/right. A curve is closed if . A grid curve is simple if non-consecutive points are distinct (we think of the start and end points as consecutive) — so the curve does not revisit a point after it moves away from the point.
To each grid curve , we associate a piecewise linear curve in , consisting of line segments connecting consecutive points of for each . For a curve not passing through the origin , the winding number about is defined in the standard way. Slightly abusing notation, we set . In particular, provided misses the origin,
We omit the rigorous definition of as a contour integral in the complex plane since it does not add to the discussion and, instead, refer the reader to [15, Chapter 4.4.4].
Our algorithm proceeds as follows:
-
[Step 1]
- 1.
-
2.
Construct two simple closed curves , so that (a) , (b) at least one of has odd winding number (unless they meet ), (c) the regions enclosed by and partition the region enclosed by , and (d) the area enclosed by each of is a fraction of that enclosed by (see Lemma 4.16).
-
3.
If or meets , then stop — we found a point that maps to , by Lemma 4.11.
-
4.
Compute and , and replace with the one with the odd winding number. Goto Step 2.
We now proceed to fill in the details, starting with the definition of the initial curve .
Definition 4.8 (The triangular grid curve ).
The simple closed grid curve traverses a triangular path defined as follows:
-
•
Starting with the bottom horizontal side of the grid , traverses the points
-
•
continuing along the right vertical side of the grid along the points
-
•
finally, traversing back diagonally along
Along the diagonal side of , we are really only interested in points of the form with . However, since this doesn’t give a grid curve, we “patch” it up by introducing intermediate points. Fortunately, this does not change the desired properties of .
Lemma 4.9.
If is a grid curve, then is a grid curve. Moreover, if has already been computed, can be computed in time .
Proof 4.10.
Consider a step in from to , where is an edge of and is a vertex. Then is contained in the planes that contain and one additional plane . Suppose, without loss of generality, that is red. This means that the cardinality of one of the sets changes by one. Hence, the cardinality of , for each combination of signs, changes by at most one — if contains , nothing changes. It follows that the function changes by at most one, and the function remains unchanged.
Note that, up to symmetry, only one such transition or its reverse occurs in a single step of . We’ve shown that each step causes either or (but not both) to change by at most one, and, hence, is a grid curve.
The computation can be carried out in constant time per incident edge-vertex pair of , since has been already computed, after a -time initialization that computes at an arbitrary starting point of by brute force.
Lemma 4.9 immediately implies the following.
Lemma 4.11.
If meets , then some point of is mapped to .
A key property of the triangular grid curve is the following.
Lemma 4.12.
If , then is odd.
Proof 4.13.
Let , and let be the images (under ) of the horizontal, vertical, diagonal sides of , respectively. Note that is the concatenation of and in that order.
Observe that if with , then . Hence, depending on whether is contained in one or two red planes. Similarly, . Hence and, in particular, if is an edge. Along with Lemma 4.9, this implies that the grid curve is a closed walk on the points in starting and ending at the point .
Noting that and are half-lines contained in the same red plane, and that every red plane that lies above lies below and vice versa, we obtain . Hence, is a grid curve from the point to and is a grid curve from the point to .
The discussion above implies that is equal to the winding number of the concatenation of and . We argue below that is the image of under a rotation by 180° around the origin, i.e., the map . Since, by assumption, neither nor contain , the concatenation of and has odd winding number as claimed.
Specifically, we need to show that . Since is symmetric in the two arguments, it suffices to show that . As mentioned before, every plane that lies above lies below and vice versa. That is, and , and similarly and . The claim is now obvious from the definition of the functions and .
Lemma 4.14.
If is odd, then there is a point enclosed by with .
Proof 4.15.
A grid square is a simple closed grid curve of the form
with . A square is for some grid square . If there is a grid square enclosed by such that meets , then we are done by Lemma 4.11. Otherwise, note that is the sum of the images of the corresponding squares. Hence, there is a grid square with odd. By Lemma 4.9, is a grid curve. By enumerating all possibilities (see Fig. 2), we conclude that cannot be odd.

Next, we show how to decompose a curve . We restrict our attention to “trapezoidal” curves: Such a curve is the boundary of the intersection of the region bounded by the initial triangle with a grid-aligned rectangle. This property is maintained inductively.
Lemma 4.16.
Given a trapezoidal curve whose image misses , with odd, we can construct two trapezoidal curves and so that
-
[(i)]
-
1.
the region surrounded by is partitioned into region surrounded by and region surrounded by .
-
2.
, for an absolute constant .
-
3.
either is in the image of and or .
Proof 4.17.
We already noted that the image of a grid square cannot have odd winding number, therefore is not a grid square. As long as is at least two units high, divide it by a horizontal grid chord into two near-equal-height pieces (that is, the two parts have equal height, or the lower one is one smaller) producing two regions and . The curves and are the boundaries of the regions (refer to Fig. 3). If the height of is one, perform a similar partition by a vertical chord into to near-equal-width pieces.

Property (1) is satisfied by construction. If the image of the new chord misses , then both and avoid and property (3) follows from the properties of the winding number on the plane. Finally, an easy calculation shows that, if the split height/width is even, then each part contains at most of the original area; this fraction can rise to if has odd width or length (the extreme case is achieved at width/length of three), which proves property (2).
Lemma 4.18.
Given a simple closed grid curve in we can determine whether contains a zero. If not, we can compute , all in time .
Proof 4.19.
By Lemma 4.9, we can trace step by step and, in particular, detect whether . So suppose this is not the case.
Consider the (open) ray from the origin directed to the right in . To determine the winding number of the curve not passing through the origin, it’s sufficient to count how many times the curve crosses the ray . We can compute the number of times crosses by computing for every vertex of in order and counting the number of times occurs along it, with .
As may partially overlap , we need to check whether arrives at with from below the -axis and (possibly after staying on the axis for a while) departs into the region above -axis, or vice versa. That would count as a signed crossing. Arriving from below and returning below, or arriving from above and returning above, does not count as a crossing.
All of the above calculations can be done in time O(1) per step of , after proper initialization, by Lemma 4.9.
Running time
We now analyze the running time of the algorithm we described. We can traverse a length- closed grid curve , compute its image , and check whether it passes through the origin in time by Lemma 4.9. One can check whether winds around the origin an odd number of times by Lemma 4.18, also in time .
The number of rounds of the main loop of the algorithm is , as the starting curve cannot enclose an area larger than and areas shrink by a constant factor in every iteration, by Lemma 4.16. Combining everything together, we conclude that can be computed in time, and the algorithm can then identify the pair of vertices of corresponding to an eight-partition in at most rounds, each costing at most . This concludes the proof of Theorem 4.2.
References
- [1] Pankaj K. Agarwal and Jirí Matousek. Dynamic half-space range reporting and its applications. Algorithmica, 13(4):325–345, 1995.
- [2] Artur Andrzejak, Boris Aronov, Sariel Har-Peled, Raimund Seidel, and Emo Welzl. Results on -sets and -facets via continuous motion. In Proceedings of the 14th Annual Symposium on Computational Geometry, pages 192–199, 1998.
- [3] Boris Aronov, Abdul Basit, Indu Ramesh, Gianluca Tasinato, and Uli Wagner. Eight-Partitioning Points in 3D, and Efficiently Too. In 40th International Symposium on Computational Geometry (SoCG 2024), pages 8:1–8:15, 2024.
- [4] David Avis. Non-partitionable point sets. Information Processing Letters, 19(3):125–129, 1984.
- [5] Pavle Blagojević, Florian Frick, Albert Haase, and Günter Ziegler. Topology of the Grünbaum–Hadwiger–Ramos hyperplane mass partition problem. Transactions of the American Mathematical Society, 370(10):6795–6824, 2018.
- [6] Pavle V. M. Blagojević and Roman Karasev. Partitioning a measure in . Manuscript, 2016.
- [7] Timothy M. Chan. A dynamic data structure for 3-D convex hulls and 2-D nearest neighbor queries. J. ACM, 57(3):16:1–16:15, 2010.
- [8] Jesús A. De Loera, Xavier Goaoc, Frédéric Meunier, and Nabil H. Mustafa. The discrete yet ubiquitous theorems of Carathéodory, Helly, Sperner, Tucker, and Tverberg. Bulletin of the American Mathematical Society, 56(3):415–511, 2019.
- [9] Herbert Edelsbrunner. Edge-skeletons in arrangements with applications. Algorithmica, 1:93–109, 1986.
- [10] Herbert Edelsbrunner. Algorithms in Combinatorial Geometry, volume 10 of EATCS Monographs on Theoretical Computer Science. Springer, 1987.
- [11] Branko Grünbaum. Partitions of mass-distributions and of convex bodies by hyperplanes. Pacific Journal of Mathematics, 10(4):1257–1261, 1960.
- [12] H. Hadwiger. Simultane Vierteilung zweier Körper. Archiv der Mathematik (Basel), 17:274–278, 1966.
- [13] Sariel Har-Peled. Geometric Approximation Algorithms. American Mathematical Society, USA, 2011.
- [14] Christian Knauer, Hans Raj Tiwary, and Daniel Werner. On the computational complexity of Ham-Sandwich cuts, Helly sets, and related problems. In STACS’11, pages 649–660, 2011.
- [15] Steven George Krantz. Handbook of Complex Variables. Springer, 1999.
- [16] Chi-Yuan Lo, Jiří Matoušek, and William Steiger. Algorithms for ham-sandwich cuts. Discrete & Computational Geometry, 11(4):433–452, 1994.
- [17] Jiří Matoušek. Using the Borsuk–Ulam Theorem. Springer Berlin Heidelberg, 2003.
- [18] Nimrod Megiddo. Partitioning with two lines in the plane. Journal of Algorithms, 6(3):430–433, 1985.
- [19] Edgardo Roldán-Pensado and Pablo Soberón. A survey of mass partitions. Bulletin of the American Mathematical Society, 2021.
- [20] Micha Sharir, Shakhar Smorodinsky, and Gábor Tardos. An improved bound for k-sets in three dimensions. Discrete & Computational Geometry, 26(2):195–204, 2001.
- [21] Géza Tóth. Point sets with many -sets. Discrete & Computational Geometry, 26(2):187–194, 2001.
- [22] Rade T. Živaljević. Topological methods. In Jacob E. Goodman, Joseph O’Rourke, and Csaba D. Tóth, editors, Handbook of Discrete and Computational Geometry, pages 551–580. CRC Press LLC, 3rd edition, 1997.
- [23] F. Frances Yao, David P. Dobkin, Herbert Edelsbrunner, and Mike Paterson. Partitioning space for range queries. SIAM Journal on Computing, 18(2):371–384, 1989.
Appendix A Limit arguments
We prove some standard facts using limit arguments.
Lemma A.1 (Limit argument for finite point sets).
Let be a compact subset such that, for all mass distributions (with connected support) on there is a plane configuration that eight-partitions ; then for any set of points in , there is a configuration that eight-partitions the point set.
Proof A.2.
Let be the number of points in . Let be the measure defined as follows. At every point in , place a ball of radius with uniform density and total mass ; finally, add a normal Gaussian distribution “on the background,” with total mass . Note that the total measure of the complement of the union of balls is less than .
By choosing large enough, we can assume that a plane can intersect a collection of balls only if their centres are coplanar; hence, without loss of generality, we can assume that this happens for .
By assumption, there is a plane configuration that eight-partitions the mass for each ; by compactness of , there is a subsequence that converges to some limit ; up to reindexing we can assume that the original sequence does. The obtained limit point eight-partitions the original point set : in fact, there is a big enough such that for every orthant and any , every point is “far away” (e.g., at least ) from the planes in the configuration ; hence
Taking the limit in we obtain the desired result.
Corollary A.3.
Let and as above. If is the configuration constructed in the proof of Lemma A.1, then any plane in bisects and any pair four-partitions the points.
Proof A.4.
For simplicity we show the result for the first plane and the pair , all the other cases are identical. First, construct and converging to the limit as in the proof of Lemma A.1.
Again, by choosing big enough we obtain that, for any and any sign every point is sufficiently far form hence
Similarly, for any pair of signs , any point is sufficiently far from both and , therefore
By taking the limit we obtain the desired result.
Lemma A.5 (Limit argument for mass distributions with possibly disconnected support).
Let be a compact set in such that, for any mass distribution with connected support there is a configuration that eight-partitions the measure. Let be a “general” mass distribution. Then there is a plane arrangement that eight-partitions .
Proof A.6.
Define and let the measure defined, on a measurable set , as
where is a normal Gaussian distribution on . Then, is a mass distribution with connected support hence there is a configuration that eight-partitions . By compactness, up to taking a subsequence, converges to a configuration .
Now, for any , we have that
For any fixed measure , the map is continuous; hence by taking the limit in we obtain that, for all ,
However, since
it follows that all the previous inequalities are equalities.
Appendix B Topological Lemmas
In this section, we provide proofs for the classical homotopical results used in the proof of Theorem 2.2.
Proposition B.1.
If is an orthogonal matrix, then the induced continuous map has degree .
Proof B.2.
Assume (i.e., ).
Let an invertible matrix that puts in Jordan normal form, where denotes the matrix of the rotation by :
Then, there is a path from the identity matrix to the matrix defined as:
with and . As a result, the map is homotopic to the identity through the homotopy ; . Hence .
Suppose now , then where
This means that .
Proposition B.3.
Let be a continuous antipodal map. Then .
Proof B.4.
For a contradiction, suppose there exists a continuous antipodal function of degree zero.
Then can be extended to a map ; using this map it is possible to construct :
is well defined because on the intersection of the two patches (i.e., the horizontal equator) both sides coincide with . is also antipodal: when
while for ,
Thus violates Borsuk-Ulam theorem.
Appendix C Four-partitioning in the plane with a prescribed bisector
This section is devoted to the proof of Lemma 2.2. We require the following standard fact.
Lemma C.1.
Given a mass distribution on and a direction , there is a unique hyperplane normal to bisecting the mass.
Proof C.2.
Let be the hyperplane , and set to be the positive half-space determined by . The family of planes with as normal is . Since the hyperplane varies continuously with , , and , the intermediate value theorem implies the existence of a bisecting hyperplane.
To prove uniqueness, first observe that, if then for any , and analogously if then for any , . Denote by the maximum value for which ( if there is none), similarly define as the minimum value for which ( if there is none).
Since the support is connected, the function is strictly increasing in the interval and identically or outside of it; therefore there is a unique value for which .
For convenience, we restate the lemma here. Both the lemma and proof are due to [6]. \blagkarasev*
Proof C.3.
Suppose, without loss of generality, that . We first prove existence. Let , and rotate counterclockwise and clockwise by angle to obtain and , respectively. Then, by Lemma C.1 there exist unique lines and that are perpendicular to and , respectively, and bisect . Note that bisects the angle between and .
The (oriented) lines and partition the plane into four octants, which we label (north, east, south, west) in the obvious manner. Since both lines are bisecting, we have
When tends to 0, and tend to empty sets and evidently for sufficiently close to . When tends to , and tend to empty sets and then for sufficiently close to . Since depends continuously on , we must have somewhere in between, by the intermediate value theorem. Thus, we have existence.
We now show uniqueness. Assume we have a partition with angle and another partition with angle . Assume without loss of generality that . Moreover, since for the partition is defined uniquely, we may assume . Let and consider the following cases:
-
1.
: In this case and both sets have the same measure. This contradicts connectivity of the set where the density is positive, since the density is positive in and in , it must be positive somewhere in , implying .
-
2.
: In this case and we obtain a similar contradiction.
-
3.
and are similar to considered cases.
Since the lines , and are distinct, this covers all cases. In each case, we obtain a contradiction, hence, we have uniqueness.
As for continuity, it follows from the standard fact that a map with compact codomain and closed graph must in fact be continuous. The codomain is compact since we are only interested in directions of the halving lines that afterwards produce halving lines continuously, thus working with as the space of parameters.