This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

\hideLIPIcs

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 \to Randomness, geometry and discrete structures \to Computational geometry \ccsdesc[100]Mathematics of computing \to 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 Toothanks: A preliminary version of this work will appear in SoCG’24 [3].

Boris Aronov    Abdul Basit    Indu Ramesh    Gianluca Tasinato    Uli Wagner
Abstract

An eight-partition of a finite set of points (respectively, of a continuous mass distribution) in 3\mathbb{R}^{3} consists of three planes that divide the space into 88 octants, such that each open octant contains at most 1/81/8 of the points (respectively, of the mass). In 1966, Hadwiger showed that any mass distribution in 3\mathbb{R}^{3} 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 3\mathbb{R}^{3} 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 nn points in 3\mathbb{R}^{3} (with prescribed normal direction of one of the planes) in time O(n5/2)O^{*}(n^{5/2}).

keywords:
Mass partitions, partitions of points in three dimensions, Borsuk-Ulam Theorem, Ham-Sandwich Theorem
category:
\relatedversion

1 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 dd finite point sets P1,,PdP_{1},\dots,P_{d} in d\mathbb{R}^{d}, there is an (affine) hyperplane HH that simultaneously bisects all PiP_{i}, i.e., each of the two open half-spaces determined by HH contains at most |Pi|/2|P_{i}|/2 points, 1id1\leq i\leq d. This follows (by a standard limit argument, see [17, Sec. 3.1]) from the following “continuous” version: Let μ1,,μd\mu_{1},\dots,\mu_{d} be mass distributions in d\mathbb{R}^{d}, i.e., finite measures such that every open set is measurable and every hyperplane has measure zero. Then there exists a hyperplane HH such that μi(H+)=μi(H)=12μi(d)\mu_{i}(H^{+})=\mu_{i}(H^{-})=\frac{1}{2}\mu_{i}(\mathbb{R}^{d}) for 1id1\leq i\leq d, where H+H^{+} and HH^{-} are the two open half-spaces bounded by HH.

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 d\mathbb{R}^{d}, can one find dd hyperplanes that subdivide d\mathbb{R}^{d} into 2d2^{d} open orthants, each of which contains exactly 1/2d1/2^{d} of the mass (respectively, at most 1/2d1/2^{d} of the points)? We call such a dd-tuple of hyperplanes a 2d2^{d}-partition of the mass distribution (respectively, of the point set).

For d=2d=2, it is an easy consequence of the planar Ham-Sandwich theorem that any mass distribution (or point set) in 2\mathbb{R}^{2} 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 d=3d=3 and showed that any mass distribution in 3\mathbb{R}^{3} 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 μ\mu be a mass distribution on 3\mathbb{R}^{3}, and let v𝕊2v\in\mathbb{S}^{2}. Then there exists a triple of planes (H1,H2,H3)(H_{1},H_{2},H_{3}) that form an eight-partition for μ\mu and such that the normal vector of H1H_{1} is vv.

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 μ\mu be a mass distribution on 3\mathbb{R}^{3}. Then there exists an eight-partition (H1,H2,H3)(H_{1},H_{2},H_{3}) of μ\mu such that the plane H1H_{1} is perpendicular to both H2H_{2} and H3H_{3}.

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 μ\mu in 3\mathbb{R}^{3} and a vector v𝕊2v\in\mathbb{S}^{2}, there exists an eight-partition (H1,H2,H3)(H_{1},H_{2},H_{3}) of μ\mu such that the intersection of the two planes H1H_{1} and H2H_{2} is a line in direction vv.

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, dd hyperplanes in d\mathbb{R}^{d} are described by d2d^{2} independent parameters, while the condition that 2d2^{d} orthants have equal mass can be expressed by 2d12^{d}-1 equations. For d=3d=3, this leaves 97=29-7=2 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 d5d\geq 5, we have d2<2d1d^{2}<2^{d}-1, so intuitively Grünbaum’s problem is overconstrained. Avis [4] made this precise and constructed explicit counterexamples using the well-known moment curve γ={(t,t2,,td):t}\gamma=\{(t,t^{2},\dots,t^{d})\colon t\in\mathbb{R}\} in d\mathbb{R}^{d}. The crucial fact is that any hyperplane intersects the moment curve γ\gamma in at most dd points ([17, Lemma 1.6.4]). Thus, for d5d\geq 5, a mass distribution supported on γ\gamma admits no 2d2^{d}-partition because any dd hyperplanes intersect γ\gamma in at most d2d^{2} points, which subdivide γ\gamma into at most d2+1d^{2}+1 intervals, hence there are always at least 2dd21>02^{d}-d^{2}-1>0 orthants that do not intersect γ\gamma and hence contain no mass. The last remaining case d=4d=4 of Grünbaum’s problem, i.e., the question whether any mass distribution in 4\mathbb{R}^{4} admits a 1616-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 3\mathbb{R}^{3}.

Problem 1.4.

Given a set PP of nn points in 3\mathbb{R}^{3}, in sufficiently general position, compute three planes H1,H2,H3H_{1},H_{2},H_{3} 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 3\mathbb{R}^{3} can be done efficiently, in time O(n3/2)O^{*}(n^{3/2}) [16] (where nn is the total number of points and the O()O^{*}(\cdot)-notation suppresses polylogarithmic factors). In general, the best known algorithm for computing Ham-Sandwich cuts in fixed dimension d3d\geq 3 runs in time O(nd1αd)O(n^{d-1-\alpha_{d}}) where αd>0\alpha_{d}>0 a constant depending only on dd [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 3\mathbb{R}^{3} 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 H1H_{1} and H2H_{2} that four-sect a finite point set PP (in the sense that every one of the four open orthants determined by H1H_{1} and H2H_{2} contains at most |P|/4|P|/4 points), there generally need not exist a third plane H3H_{3} such that H1,H2,H3H_{1},H_{2},H_{3} form an eight-partition.

The following concept is useful for characterizing the complexity of Problem 1.4. A halving plane for an nn-point set for nn odd in 3\mathbb{R}^{3} in general position is a plane that passes through three of the points and contains exactly (n3)/2(n-3)/2 points on each side. Let h3(n)h_{3}(n) be the maximum number of halving planes for an nn-point set 3\mathbb{R}^{3} as above. The best known upper and lower bounds for h3(n)h_{3}(n) are O(n5/2)O(n^{5/2}) and Ω(n2elogn)\Omega(n^{2}e^{\sqrt{\log n}}), 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 (h3(n))3(h_{3}(n))^{3}.

Yao et al. [23] and Edelsbrunner [9] gave a O(n6)O(n^{6}) 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 (h3(n))2(h_{3}(n))^{2}.

Here, we present, to our knowledge, the fastest known algorithm for Problem 1.4. Roughly speaking, our algorithm runs in time near-linear in h3(n)h_{3}(n) rather than quadratic in it.

Theorem 1.5 (Algorithm).

An eight-partition of nn points in general position in 3\mathbb{R}^{3}, with a prescribed normal vector for one of the planes, can be computed in time O(n5/2)O^{*}(n^{5/2}); the O()O^{*}(\cdot)-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.

It remains an open question whether Theorem 1.2 or our own Theorem 1.3 can also be used to obtain an efficient algorithm for Problem 1.4. It would also be interesting to decide whether there is an algorithm for Problem 1.4 with running time o(h3(n))o(h_{3}(n)).

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 μ\mu is Supp(μ){x3:μ(Br(x))>0 for every r>0}\operatorname{Supp}(\mu)\coloneqq\{x\in\mathbb{R}^{3}:\mu(B_{r}(x))>0\text{ for every }r>0\} and Br(x)B_{r}(x) denotes the ball of radius r>0r>0 centred at xx. 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 x,y3x,y\in\mathbb{R}^{3} by xyi=13xiyi.x\cdot y\coloneqq\sum_{i=1}^{3}x_{i}y_{i}. A vector v3{𝟎}v\in\mathbb{R}^{3}\setminus\{\mathbf{0}\} and a scalar aa\in\mathbb{R} determine an (affine) plane

H=Hv(a):={x3:xv=a},H=H_{v}(a):=\{x\in\mathbb{R}^{3}:x\cdot v=a\},

together with an orientation of HH (given by the direction of the normal vector vv). We denote by H:=Hv(a)-H:=H_{-v}(-a) the affine plane with the same equation as HH but with opposite orientation. The oriented plane HH determines two open half-spaces, denoted by

H+:={x3:xv>a}andH:={x3:xv<a}.H^{+}:=\{x\in\mathbb{R}^{3}:x\cdot v>a\}\quad\text{and}\quad H^{-}:=\{x\in\mathbb{R}^{3}:x\cdot v<a\}.

More generally, let =(H1,,Hk)\mathcal{H}=(H_{1},\dots,H_{k}) be an ordered kk-tuple of (oriented) planes in 3\mathbb{R}^{3}, k3k\leq 3. In what follows, it will be convenient to identify the set {+,}\{+,-\} with the group 2\mathbb{Z}_{2} (where the group operation is multiplication of signs). Elements of {+,}k=2k\{+,-\}^{k}=\mathbb{Z}_{2}^{k} are strings of signs of length kk, and we will denote by +=++\bm{+}=+\dots+ the identity element of 2k\mathbb{Z}_{2}^{k}.

For α=(α1,,αk)2k={+,}k\alpha=(\alpha_{1},\dots,\alpha_{k})\in\mathbb{Z}_{2}^{k}=\{+,-\}^{k}, we define the open orthant determined by \mathcal{H} and α\alpha as 𝒪α:=H1α1Hkαk\mathcal{O}_{\alpha}^{\mathcal{H}}:=H_{1}^{\alpha_{1}}\cap\dots\cap H_{k}^{\alpha_{k}}. Given a mass distribution μ\mu in 3\mathbb{R}^{3}, we say that an ordered kk-tuple =(H1,,Hk)\mathcal{H}=(H_{1},\dots,H_{k}) of planes (k3k\leq 3) forms a 2k2^{k}-partition of μ\mu if every orthant contains 1/2k1/2^{k} of the mass, i.e., μ(𝒪α)=μ(3)/2k\mu(\mathcal{O}_{\alpha}^{\mathcal{H}})=\mu(\mathbb{R}^{3})/2^{k} for every α{+,}k\alpha\in\{+,-\}^{k}. For k=1,2,3k=1,2,3, this corresponds to the notions of bisecting, four-secting, and eight-partitioning μ\mu as mentioned in the introduction. Analogously, we say that \mathcal{H} forms a 2k2^{k}-partition of a finite point set PP in 3\mathbb{R}^{3} if |P𝒪α||P|2k\lvert P\cap\mathcal{O}^{\mathcal{H}}_{\alpha}\rvert\leq\frac{\lvert P\rvert}{2^{k}} for all α\alpha.

We will parameterize oriented planes in 3\mathbb{R}^{3} by 𝕊3\mathbb{S}^{3}, where the north pole e4e_{4} and the south pole e4-e_{4} map to the plane at infinity with opposite orientations. For this we embed 3\mathbb{R}^{3} into 4\mathbb{R}^{4} via the map (x1,x2,x3)(x1,x2,x3,1).(x_{1},x_{2},x_{3})\mapsto(x_{1},x_{2},x_{3},1). An oriented plane in 3\mathbb{R}^{3} is mapped to an oriented affine 22-dimensional subspace of 4\mathbb{R}^{4} 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 𝕊3\mathbb{S}^{3}. Hence, there is a one-to-one correspondence between points vv in 𝕊3{e4,e4}\mathbb{S}^{3}\setminus\{e_{4},-e_{4}\} and oriented affine planes HvH_{v} in 3\mathbb{R}^{3}. The positive side of the plane at infinity is 3\mathbb{R}^{3} for v=e4v=e_{4} and \emptyset for v=e4v=-e_{4}. Hence Hv+=HvH_{-v}^{+}=H_{v}^{-} for every vv. 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 3\mathbb{R}^{3} by (𝕊3)3(\mathbb{S}^{3})^{3}, and denote by v\mathcal{H}_{v} the triple corresponding to v(𝕊3)3v\in(\mathbb{S}^{3})^{3}. Given a mass distribution μ\mu on 3\mathbb{R}^{3}, for each v(𝕊3)3v\in(\mathbb{S}^{3})^{3} and α23{+}\alpha\in\mathbb{Z}_{2}^{3}\setminus\{\bm{+}\}, we set

Fα(v,μ)=β23(1)p(α,β)μ(𝒪βv).F_{\alpha}(v,\mu)=\sum_{\beta\in\mathbb{Z}_{2}^{3}}(-1)^{p(\alpha,\beta)}\mu(\mathcal{O}_{\beta}^{\mathcal{H}_{v}}).

where p(α,β)p(\alpha,\beta) is the number of coordinates where both α\alpha and β\beta are -. As an example, with :=v=(H1,H2,H3)\mathcal{H}:=\mathcal{H}_{v}=(H_{1},H_{2},H_{3}) and α=+23{+}\alpha=--+\in\mathbb{Z}_{2}^{3}\setminus\{\bm{+}\}, we obtain

F+(,μ)\displaystyle F_{--+}(\mathcal{H},\mu) =β23(1)p(α,β)μ(𝒪β)=β23:p(α,β)=0μ(𝒪β)β23:p(α,β)=1μ(𝒪β)\displaystyle=\sum_{\beta\in\mathbb{Z}_{2}^{3}}(-1)^{p(\alpha,\beta)}\mu(\mathcal{O}_{\beta}^{\mathcal{H}})=\sum_{\beta\in\mathbb{Z}_{2}^{3}:\,p(\alpha,\beta)=0}\mu(\mathcal{O}_{\beta}^{\mathcal{H}})-\sum_{\beta\in\mathbb{Z}_{2}^{3}:\,p(\alpha,\beta)=1}\mu(\mathcal{O}_{\beta}^{\mathcal{H}})
=(μ(𝒪+++)+μ(𝒪++)+μ(𝒪+)+μ(𝒪))\displaystyle=\left(\mu(\mathcal{O}^{\mathcal{H}}_{+++})+\mu(\mathcal{O}^{\mathcal{H}}_{++-})+\mu(\mathcal{O}^{\mathcal{H}}_{--+})+\mu(\mathcal{O}^{\mathcal{H}}_{---})\right)
(μ(𝒪++)+μ(𝒪+)+μ(𝒪++)+μ(𝒪+))\displaystyle\quad-\left(\mu(\mathcal{O}^{\mathcal{H}}_{-++})+\mu(\mathcal{O}^{\mathcal{H}}_{-+-})+\mu(\mathcal{O}^{\mathcal{H}}_{+-+})+\mu(\mathcal{O}^{\mathcal{H}}_{+--})\right)
=μ(H1+H2+)+μ(H1H2)μ(H1H2+)μ(H1+H2).\displaystyle=\mu(H_{1}^{+}\cap H_{2}^{+})+\mu(H_{1}^{-}\cap H_{2}^{-})-\mu(H_{1}^{-}\cap H_{2}^{+})-\mu(H_{1}^{+}\cap H_{2}^{-}).

When μ\mu is clear from context, we write Fα()F_{\alpha}(\mathcal{H}) instead of Fα(,μ)F_{\alpha}(\mathcal{H},\mu). 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 μ\mu be a mass distribution and fix k=2,3k=2,3.

  1. [(i)]

  2. 1.

    Let α2k1{+}\alpha\in\mathbb{Z}_{2}^{k-1}\setminus\{\bm{+}\} and let =(H1,,Hk)\mathcal{H}=(H_{1},\dots,H_{k}) be a kk-tuple of planes, then F+α()=Fα((H2,,Hk))F_{+\alpha}(\mathcal{H})=F_{\alpha}((H_{2},\dots,H_{k})) (the equivalent statement holds for any other entry of a kk-tuple α1αk\alpha_{1}\cdots\alpha_{k} instead of just for α1\alpha_{1}).

  3. 2.

    A kk-tuple \mathcal{H} of planes 2k2^{k}-partitions if and only if Fα()=0F_{\alpha}(\mathcal{H})=0 for every α2k{+}\alpha\in\mathbb{Z}_{2}^{k}\setminus\{\bm{+}\}.

Proof 2.1.

(1) Since every hyperplane has null measure it follows that, for any β2k1\beta\in\mathbb{Z}_{2}^{k-1}

μ(𝒪β)=μ(𝒪+β)+μ(𝒪β).\mu(\mathcal{O}^{\mathcal{H}}_{\beta})=\mu(\mathcal{O}^{\mathcal{H}}_{+\beta})+\mu(\mathcal{O}^{\mathcal{H}}_{-\beta}).

From the definition of Fα~F_{\tilde{\alpha}}, if α~=+α\tilde{\alpha}=+\alpha then for any β2k1\beta\in\mathbb{Z}_{2}^{k-1} the two orthants 𝒪+β\mathcal{O}^{\mathcal{H}}_{+\beta} and 𝒪β\mathcal{O}^{\mathcal{H}}_{-\beta} are counted with the same sign in the sum, therefore

Fα~()=β2k1p(α,β)=0(μ(𝒪+β)+μ(𝒪β))β2k1p(α,β)=1(μ(𝒪+β)+μ(𝒪β))=Fα((H2,,Hk)).F_{\tilde{\alpha}}(\mathcal{H})=\sum_{\begin{subarray}{c}\beta\in\mathbb{Z}_{2}^{k-1}\\ p(\alpha,\beta)=0\end{subarray}}\left(\mu(\mathcal{O}^{\mathcal{H}}_{+\beta})+\mu(\mathcal{O}^{\mathcal{H}}_{-\beta})\right)-\sum_{\begin{subarray}{c}\beta\in\mathbb{Z}_{2}^{k-1}\\ p(\alpha,\beta)=1\end{subarray}}\left(\mu(\mathcal{O}^{\mathcal{H}}_{+\beta})+\mu(\mathcal{O}^{\mathcal{H}}_{-\beta})\right)=F_{\alpha}(\left(H_{2},\dots,H_{k}\right)).

(2) It is clear that, if \mathcal{H} is a 2k2^{k}-partition, then all the alternating sums are 0. We will prove the other implication.

Suppose first that k=1k=1 and that =H\mathcal{H}=H. The only alternating sum is F(H)=μ(H+)μ(H)F_{-}(H)=\mu(H^{+})-\mu(H^{-}) and F(H)=0F_{-}(H)=0 implies that HH bisects.

Suppose now that k=2k=2 and that =(H1,H2)\mathcal{H}=(H_{1},H_{2}). By (1) and the statement for a single plane, F+()=0F_{+-}(\mathcal{H})=0 and F+()=0F_{-+}(\mathcal{H})=0 imply that both H1H_{1} and H2H_{2} bisect. Therefore, if λμ(𝒪++)\lambda\coloneqq\mu(\mathcal{O}^{\mathcal{H}}_{++}), we have that

0=F()=μ(𝒪++)+μ(𝒪)μ(𝒪+)μ(𝒪+)=λ+λ(12λ)(12λ)=4λ1;0=F_{--}(\mathcal{H})=\mu(\mathcal{O}^{\mathcal{H}}_{++})+\mu(\mathcal{O}^{\mathcal{H}}_{--})-\mu(\mathcal{O}^{\mathcal{H}}_{-+})-\mu(\mathcal{O}^{\mathcal{H}}_{+-})=\lambda+\lambda-(\frac{1}{2}-\lambda)-(\frac{1}{2}-\lambda)=4\lambda-1;

hence λ=14\lambda=\frac{1}{4} as desired.

Finally, suppose that k=3k=3 and that =(H1,H2,H3)\mathcal{H}=(H_{1},H_{2},H_{3}). By (1) and the statement for single planes and for pairs of planes, we have that all planes HiH_{i} bisect and all pairs (Hi,Hj)(H_{i},H_{j}) four-partition. Therefore, if λμ(𝒪+++)\lambda\coloneqq\mu(\mathcal{O}^{\mathcal{H}}_{+++}), we have that

0=F()\displaystyle 0=F_{---}(\mathcal{H}) =μ(𝒪+++)+μ(𝒪+)+μ(𝒪+)+μ(𝒪+)\displaystyle=\mu(\mathcal{O}^{\mathcal{H}}_{+++})+\mu(\mathcal{O}^{\mathcal{H}}_{+--})+\mu(\mathcal{O}^{\mathcal{H}}_{-+-})+\mu(\mathcal{O}^{\mathcal{H}}_{--+})
μ(𝒪++)μ(𝒪++)μ(𝒪++)μ(𝒪)\displaystyle\quad-\mu(\mathcal{O}^{\mathcal{H}}_{-++})-\mu(\mathcal{O}^{\mathcal{H}}_{+-+})-\mu(\mathcal{O}^{\mathcal{H}}_{++-})-\mu(\mathcal{O}^{\mathcal{H}}_{---})
=λ+λ+λ+λ(14λ)(14λ)(14λ)(14λ)=8λ1;\displaystyle=\lambda+\lambda+\lambda+\lambda-(\frac{1}{4}-\lambda)-(\frac{1}{4}-\lambda)-(\frac{1}{4}-\lambda)-(\frac{1}{4}-\lambda)=8\lambda-1;

hence λ=18\lambda=\frac{1}{8} 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 μ\mu and a direction p𝕊2p\in\mathbb{S}^{2}, there exists a triple =(H1,H2,H3)\mathcal{H}=(H_{1},H_{2},H_{3}) of oriented planes that eight-partition μ\mu so that the oriented direction of the intersection H1H2H_{1}\cap H_{2} is pp.

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 2\mathbb{R}^{2}, due to Blagojević and Karasev [6]. For completeness, the proof is given in Appendix C. {restatable}[Four-partitioning a mass distribution in 2\mathbb{R}^{2} [6]]lemmablagkarasev Let μ#\mu^{\#} be a mass distribution (with connected support) on 2\mathbb{R}^{2} and v𝕊1v\in\mathbb{S}^{1}. Then there exists a pair (1,2)(\ell_{1},\ell_{2}) of lines in 2\mathbb{R}^{2} that four-partitions μ#\mu^{\#} and such that vv bisects the angle between 1\ell_{1} and 2\ell_{2}.

Moreover, if we orient 1\ell_{1} and 2\ell_{2} so that 1\ell_{1} is in the first direction clockwise from vv, and 2\ell_{2} is in the first direction counterclockwise, the oriented pair is unique and the lines depend continuously on vv.

Proof 2.3 (Proof of Theorem 2.2).

Without loss of generality, let v=(0,0,1)v=(0,0,1). Our proof proceeds in two steps. In the first step, we construct a map Φ:𝕊1×𝕊34\Phi\colon\mathbb{S}^{1}\times\mathbb{S}^{3}\rightarrow\mathbb{R}^{4} whose zeros codify equipartitions of μ\mu; then we prove that Φ\Phi is equivariant with respect to a suitable choice of actions of G:=4×2G:=\mathbb{Z}_{4}\times\mathbb{Z}_{2} on the two spaces. In the second step we show that any continuous GG-equivariant map Ψ:𝕊1×𝕊34\Psi\colon\mathbb{S}^{1}\times\mathbb{S}^{3}\rightarrow\mathbb{R}^{4} has to have a zero.

Step 1: The key step in constructing the map Φ\Phi is to show that we can parameterize pairs of planes that have intersection direction pp and four-sect μ\mu, by a vector in 𝕊1\mathbb{S}^{1}.

We project μ\mu to the xyxy-plane to obtain a mass distribution μ#\mu^{\#} on 2\mathbb{R}^{2}. Lemma 2.2 guarantees that, once we fix a direction v𝕊1𝕊2v\in\mathbb{S}^{1}\hookrightarrow\mathbb{S}^{2} (inclusion as the horizontal equator in 𝕊2\mathbb{S}^{2}) there are two lines in the xyxy-plane 1=1(v)+a0(v)\ell_{1}=\mathbb{R}\vec{\ell}_{1}(v)+a_{0}(v) and 2=2(v)+a2(v)\ell_{2}=\mathbb{R}\vec{\ell}_{2}(v)+a_{2}(v) that four-sect the projected measure μ#\mu^{\#}. Define Hi(v)(hi(v),ai(v))H_{i}(v)\coloneqq(h_{i}(v),a_{i}(v)) to be the (oriented) span of i(v)\ell_{i}(v) and vv; the two planes now four-sect μ\mu and have the desired intersection direction.

Now let g1g_{1} be a generator of 4×{+}G\mathbb{Z}_{4}\times\{\bm{+}\}\subseteq G and define its action on 𝕊1\mathbb{S}^{1} by a counterclockwise rotation by π2\frac{\pi}{2}. We use g1vg_{1}\cdot v to denote the action of g1g_{1} on vv. Then, by the uniqueness in Lemma 2.2, we have that

1(g1v)=2(v)and2(g1v)=1(v).\vec{\ell}_{1}(g_{1}\cdot v)=\vec{\ell}_{2}(v)\quad\text{and}\quad\vec{\ell}_{2}(g_{1}\cdot v)=-\vec{\ell}_{1}(v). (1)

Intuitively, if we consider the planar problem with the bisecting vector vv rotated by π2\frac{\pi}{2}, by uniqueness the affine lines that split the measure are the same. However, while the direction chosen as 1\vec{\ell}_{1} in the rotated problem is the direction 2\vec{\ell}_{2} in the previous configuration, the “rotated” 2\vec{\ell}_{2} is 1-\vec{\ell}_{1} in the original problem (see Figure 1).

Refer to caption
Figure 1: Example of the action of g1g_{1}.

Using this construction, we can define a function 𝕊1𝕊3×𝕊3\mathbb{S}^{1}\rightarrow\mathbb{S}^{3}\times\mathbb{S}^{3} by v(H1(v),H2(v))v\mapsto(H_{1}(v),H_{2}(v)). It follows from eq. (1) that g1vg_{1}\cdot v is mapped to (H2(v),H1(v))(H_{2}(v),-H_{1}(v)), therefore, if we fix the corresponding action111Formally, for any (x,y)𝕊3×𝕊3(x,y)\in\mathbb{S}^{3}\times\mathbb{S}^{3} the generator g1g_{1} of 4×{+}G\mathbb{Z}_{4}\times\{+\}\subseteq G acts by g1(x,y)=(y,x)g_{1}\cdot(x,y)=(y,-x). of 4\mathbb{Z}_{4} on 𝕊3×𝕊3\mathbb{S}^{3}\times\mathbb{S}^{3}, the map is 4\mathbb{Z}_{4}-equivariant.

The group {e}×2\{e\}\times\mathbb{Z}_{2} acts by antipodality on 𝕊3\mathbb{S}^{3}; therefore, if GG acts on (𝕊3×𝕊3)×𝕊3\left(\mathbb{S}^{3}\times\mathbb{S}^{3}\right)\times\mathbb{S}^{3} component-wise, the map Φ:𝕊1×𝕊3(𝕊3×𝕊3)×𝕊3\Phi\colon\mathbb{S}^{1}\times\mathbb{S}^{3}\to\left(\mathbb{S}^{3}\times\mathbb{S}^{3}\right)\times\mathbb{S}^{3} defined as Φ(v,w)(H1(v),H2(v),w)\Phi(v,w)\coloneqq(H_{1}(v),H_{2}(v),w) is GG-equivariant.

By construction, the first two planes are always a four-partition of the mass distribution, therefore by Observation 2.1, a configuration Φ(v,w)\Phi(v,w) is an eight-partition if and only if the four alternating sums with α3=\alpha_{3}=- (i.e., α=++\alpha=++-, +-+-, ++-- and ---) are 0.

To compute the action of GG on the alternating sums, it is enough to specify what happens on g1g_{1} (a generator of 4×{e}\mathbb{Z}_{4}\times\{e\}) and g2g_{2} (a generator of {e}×2\{e\}\times\mathbb{Z}_{2}). If we act with g1g_{1}, we obtain

F++(g1Φ(v,w))\displaystyle F_{++-}(g_{1}\cdot\Phi(v,w)) =F++(Φ(v,w)),\displaystyle=F_{++-}(\Phi(v,w)),
F+(g1Φ(v,w))\displaystyle F_{+--}(g_{1}\cdot\Phi(v,w)) =F+(Φ(v,w)),\displaystyle=-F_{-+-}(\Phi(v,w)),
F+(g1Φ(v,w))\displaystyle F_{-+-}(g_{1}\cdot\Phi(v,w)) =F+(Φ(v,w)), and\displaystyle=F_{+--}(\Phi(v,w)),\text{ and}
F(g1Φ(v,w))\displaystyle F_{---}(g_{1}\cdot\Phi(v,w)) =F(Φ(v,w)),\displaystyle=-F_{---}(\Phi(v,w)),

while acting with g2g_{2} produces

F++(g2Φ(v,w))\displaystyle F_{++-}(g_{2}\cdot\Phi(v,w)) =F++(Φ(v,w)),\displaystyle=-F_{++-}(\Phi(v,w)),
F+(g2Φ(v,w))\displaystyle F_{+--}(g_{2}\cdot\Phi(v,w)) =F+(Φ(v,w)),\displaystyle=-F_{-+-}(\Phi(v,w)),
F+(g2Φ(v,w))\displaystyle F_{-+-}(g_{2}\cdot\Phi(v,w)) =F+(Φ(v,w)), and\displaystyle=-F_{+--}(\Phi(v,w)),\text{ and}
F(g2Φ(v,w))\displaystyle F_{---}(g_{2}\cdot\Phi(v,w)) =F(Φ(v,w)),\displaystyle=-F_{---}(\Phi(v,w)),

for every (v,w)𝕊1×𝕊3\left(v,w\right)\in\mathbb{S}^{1}\times\mathbb{S}^{3}.

Finally, we can choose a linear GG-action on 4\mathbb{R}^{4} that is consistent with the previous equations. In particular, if we define

g1(x,y,z,u)=(x,z,y,u)andg2(x,y,z,u)=(x,y,z,u),g_{1}\cdot(x,y,z,u)=(x,-z,y,-u)\quad\text{and}\quad g_{2}\cdot(x,y,z,u)=(-x,-y,-z,-u),

then the map Ψ:𝕊1×𝕊34\Psi\colon\mathbb{S}^{1}\times\mathbb{S}^{3}\rightarrow\mathbb{R}^{4}, given by

(v,w)(F++(v,w),F+(v,w),F+(v,w),F(v,w))(v,w)\mapsto\left(F_{++-}(v,w),F_{+--}(v,w),F_{-+-}(v,w),F_{---}(v,w)\right)

is GG-equivariant. By Observation 2.1, the zeros of Ψ\Psi 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 Ψ\Psi does not have a zero. This means that it is possible to define a GG-equivariant map Ψ¯:𝕊1×𝕊3𝕊3\overline{\Psi}\colon\mathbb{S}^{1}\times\mathbb{S}^{3}\rightarrow\mathbb{S}^{3} by Ψ¯(v,w)Ψ(v,w)Ψ(v,w)\overline{\Psi}(v,w)\coloneqq\frac{\Psi(v,w)}{\lVert\Psi(v,w)\rVert}.

Denote by Ψa\Psi_{a}, for a𝕊1a\in\mathbb{S}^{1}, the map Ψa:𝕊3𝕊3\Psi_{a}\colon\mathbb{S}^{3}\rightarrow\mathbb{S}^{3}, Ψa(p)=Ψ¯(a,p)\Psi_{a}(p)=\overline{\Psi}(a,p); this function has two key properties:

  1. [(i)]

  2. 1.

    for any a𝕊1a\in\mathbb{S}^{1}, Ψa\Psi_{a} is antipodal;

  3. 2.

    for any a,b𝕊1a,b\in\mathbb{S}^{1}, Ψa\Psi_{a} and Ψb\Psi_{b} are homotopic.

However, the map induced by g1g_{1} on the sphere has degree 1-1 by Proposition B.1 and thus we have

[Ψa]=[Ψg1a]=[g1Ψa]=[Ψa].[\Psi_{a}]=[\Psi_{g_{1}\cdot a}]=[g_{1}\cdot\Psi_{a}]=-[\Psi_{a}].

Hence Ψa\Psi_{a} is null-homotopic, contradicting Proposition B.3.

Theorem 2.2, along with Lemma A.1, immediately implies the following.

Theorem 2.4.

Let P3P\subseteq\mathbb{R}^{3} be a finite set of points and p𝕊2p\in\mathbb{S}^{2} a fixed direction. Then there exists a triple =(H1,H2,H3)\mathcal{H}=(H_{1},H_{2},H_{3}) of oriented planes that eight-partitions PP, so that the oriented direction of the intersection H1H2H_{1}\cap H_{2} is pp.

3 Levels in arrangements of planes

Let P3P\subseteq\mathbb{R}^{3} be a set of nn points in general position. Specifically, we assume that the points in PP 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 nn-point set (with nn odd) in 3\mathbb{R}^{3} in general position is a plane that passes through three of the points and contains exactly (n3)/2(n-3)/2 points on each side, and that h3(n)h_{3}(n) is the maximum number of halving planes for an nn-point set in 3\mathbb{R}^{3}.

Let HH be a set of planes in 3\mathbb{R}^{3} in general position. Specifically, we assume that the planes are non-vertical, every triple of planes in HH meets in a unique point, and no point in 3\mathbb{R}^{3} is incident with more than three of the planes. The planes in HH partition 3\mathbb{R}^{3} into a complex of convex cells, called the arrangement of HH and denoted by 𝒜(H)\mathcal{A}(H). The kk-level in 𝒜(H)\mathcal{A}(H) is defined as the closure of the set of all points which lie on a unique plane of the arrangement and have exactly k1k-1 planes below it. Note that the kk-level is a piecewise linear surface in 3\mathbb{R}^{3} whose faces are contained in planes of HH. When k=(|H|+1)/2k=\lfloor(|H|+1)/2\rfloor, the kk-level is called the median level of the arrangement.

Let g3(n)g_{3}(n) be the maximum complexity of any kk-level in an arrangement of nn planes in 3\mathbb{R}^{3}. Using the standard duality transform222The duality transform maps points in 3\mathbb{R}^{3} to planes in 3\mathbb{R}^{3} and vice versa. Specifically, the point p=(p1,p2,p3)3p=(p_{1},p_{2},p_{3})\in\mathbb{R}^{3} is mapped to the non-vertical plane p:z=p1x+p2yp3p^{*}\colon z=p_{1}x+p_{2}y-p_{3} in 3\mathbb{R}^{3}, and vice versa. See [13, Chapter 25.2] for standard properties of the duality transform., it is easily seen that h3(n)g3(n)h_{3}(n)\leq g_{3}(n); indeed, the dual of a halving plane of PP is a vertex of the median level of the arrangement of P={p:pP}P^{*}=\{p^{*}:p\in P\}. It is a well-known fact that h3(n)=Θ(g3(n))h_{3}(n)=\Theta(g_{3}(n)) (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 h3(n)h_{3}(n).

Fact 1.

Let (n)\ell(n) be the maximum complexity of the intersection of the median levels of the arrangements 𝒜(R)\mathcal{A}(R) and 𝒜(B)\mathcal{A}(B) of disjoint sets of planes RR and BB in 3\mathbb{R}^{3} in general position, with |R|=|B|=n|R|=|B|=n and nn odd. Then (n)=Θ(h3(n))\ell(n)=\Theta(h_{3}(n)) in the worst case.

Proof 3.1.

Suppose n2k+1n\coloneqq 2k+1. Let LL be the intersection of the median levels of 𝒜(R)\mathcal{A}(R) and 𝒜(B)\mathcal{A}(B). As RBR\cup B are in general position, LL is a collection of edges and vertices in 𝒜(RB)\mathcal{A}(R\cup B). Note that LL 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 LL has the property that there are 2k2k planes of RBR\cup B above it and 2k2k planes of RBR\cup B below it. Hence LL is contained in the 2k2k-level of 𝒜(RB)\mathcal{A}(R\cup B). It follows that the complexity of LL is bounded above by the complexity of a level in an arrangement of nn planes, implying (n)g3(2n)=O(h3(n))\ell(n)\leq g_{3}(2n)=O(h_{3}(n)). This proves the upper bound.

For the lower bound, let P3P\subseteq\mathbb{R}^{3} be a set nn points in general position achieving the maximum number h3(n)h_{3}(n) of halving planes. Let PP^{\prime} be a copy of PP translated by a small ε>0\varepsilon>0 in a generic direction. We then slightly perturb the points of PPP\cup P^{\prime} to ensure general position. For a point pPp\in P, we denote by pp^{\prime} its copy in PP^{\prime}. Consider the sets RR^{*} (red) and BB^{*} (blue) of nn points obtained as follows: for each pair (p,p)(p,p^{\prime}), we assign one point to RR^{*} and the other to BB^{*} uniformly and independently at random.

Let (a,b,c)(a,b,c) be a triple of points of PP defining a halving plane, and consider the six points S=(a,b,c,a,b,c)S=(a,b,c,a^{\prime},b^{\prime},c^{\prime}). We claim that, with constant probability, there exists a plane π\pi that passes through one red point and one blue point and has precisely one red and one blue point on each side, from SS. As our perturbation ε\varepsilon was arbitrarily small, π\pi partitions the remaining points of RBR^{*}\cup B^{*} is the same manner is it partitions PP. Let RR and BB be the sets of planes dual to points in RR^{*} and BB^{*}, respectively. In the dual, the plane π\pi corresponds to a point π\pi^{*} on an edge of the intersection LL of the median levels of 𝒜(R)\mathcal{A}(R) and 𝒜(B)\mathcal{A}(B): π\pi^{*} has kk red and kk blue planes lying above and below it, and lies on the intersection of exactly one red and one blue plane. Since different triples (a,b,c)(a,b,c) correspond to partitioning PP in different ways, the points π\pi^{*} arising from different halving planes π\pi lie on different edges of LL. By construction, the number of such edges is a constant fraction of h3(n)h_{3}(n) in expectation, completing the lower bound proof.333In our application, the sets of points RR^{*} and BB^{*} are separated, which is not the case in the above lower bound construction. With this additional constraint, it is possible that the complexity of LL is always o(h3(n))o(h_{3}(n)).

4 The algorithm

We can deduce the existence of eight-partitions of a finite point set P3P\subset\mathbb{R}^{3} of a certain advantageous form from Theorem 1.1.

{observation}

Let k>0k>0 be an integer and P3P\subseteq\mathbb{R}^{3} be a set of n=8k+7n=8k+7 points in general position. Then, there exists a triple of planes (H1,H2,H3)(H_{1},H_{2},H_{3}) that eight-partitions PP with the following properties:

  1. [(i)]

  2. 1.

    H1H_{1} is horizontal (i.e., parallel to the xyxy-plane) and passes through the zz-median point of PP. From here on, we refer to the 4k+34k+3 points that lie below (resp., above) H1H_{1} as red (resp., blue) points and denote the sets RR (resp. BB).

  3. 2.

    H2H_{2} and H3H_{3} each contain exactly three points, and each open octant contains exactly kk points.

  4. 3.

    H2,H3H_{2},H_{3} each bisect RR and BB, and the pair (H2,H3)(H_{2},H_{3}) four-partitions both RR and BB. Furthermore, H2H_{2} and H3H_{3} contain at least one point of each color.

Proof 4.1.

Since the set X{(H1,H2,H3):H1 is horizontal}(𝕊3)3X\coloneqq\{(H_{1},H_{2},H_{3}):H_{1}\text{ is horizontal}\}\subset(\mathbb{S}^{3})^{3} is compact, by Theorem 1.1 and Lemma A.1, there exists a configuration =(H1,H2,H3)\mathcal{H}_{\infty}=(H_{1},H_{2},H_{3}) that eight-partitions the point set with H1H_{1} horizontal. Along with the general position assumption, this implies that H1H_{1} contains only the zz-median point. This proves (1).

To see (2), note that any eight-partition has at most kk points of PP in each of the eight open octants, one point in H1H_{1}, and at most three points in each of H2H_{2} and H3H_{3}, by general position, for a total of at most 8k+1+23=8k+7=n8k+1+2\cdot 3=8k+7=n points. So, in fact, all the inequalities are equalities: there must be exactly kk points in each open quadrant and exactly three points of RBR\cup B in each of H2H_{2} and H3H_{3}.

It remains to show (3). By preceding paragraph, it is straightforward that (H2,H3)(H_{2},H_{3}) four-partitions both RR and BB. By Corollary A.3, we have that any pair (Hi,Hj)(H_{i},H_{j}) four-partitions PP. Since (H1,H2)(H_{1},H_{2}) four-partitions PP, each quadrant formed by (H1,H2)(H_{1},H_{2}) has at most (8k+7)/4=2k+1(8k+7)/4=2k+1 points. H1H_{1} has 4k+34k+3 points on each side. Hence, we obtain that H2H_{2} bisects RR and BB, and, in particular, contains at least one point of each color. A symmetric argument shows that H3H_{3} bisects both RR and BB, and contains at least one point of each color. This completes the proof.

Theorem 4.2 (Computation of an eight-partition).

Let P3P\subseteq\mathbb{R}^{3} be a set of n>0n>0 points in general position and v𝕊2v\in\mathbb{S}^{2}. An eight-partition (H1,H2,H3)(H_{1},H_{2},H_{3}) of PP with vv being the normal vector of H1H_{1} can be computed in time O(n+m)O^{*}(n+m), where mm is the maximum complexity of the intersection of the median levels of two sets of n/2n/2 planes.

{remark*}

Since m=O(h3(n))=O(n5/2)m=O(h_{3}(n))=O(n^{5/2}) by Fact 1, we can compute an eight-partition in time O(n5/2)O^{*}(n^{5/2}). The rest of this section is devoted to the proof of Theorem 4.2. We assume, without loss of generality, that v=e3=(0,0,1)v=e_{3}=(0,0,1) is the vertical vector, so H1H_{1} is required to be horizontal. If n7n\leq 7, the statement holds trivially — set H1H_{1} to be the horizontal plane containing any point of PP, and H2,H3H_{2},H_{3} to contain at most three distinct points each, so that the octants do not contain any points. From here on, we will assume that n=8k+7n=8k+7, for an integer k>0k>0. If nn is not of this form, we may add dummy points to PP (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 kk points in each octant.

We now describe the algorithm to construct an eight-partition of PP satisfying the properties in Observation 4. Let H1H_{1} be the horizontal plane containing the zz-median point of PP, and, without loss of generality, identify H1H_{1} with the xyxy-plane. Now consider the sets RR and BB of 4k+34k+3 points each lying below and above, respectively, H1H_{1}. We further assume, without loss of generality, that BB is contained in the half-space x<0x<0 and RR is contained in the half-space x>0x>0. Otherwise, since no point in RBR\cup B has z=0z=0 by the general position assumption, there exists a plane HH containing the yy-axis and with sufficiently small negative slope in the xx direction such that all red points are below HH and all blue points are above HH. Applying a generic sheer transformation (so as not to violate the general position assumption) that fixes the xyxy-plane and maps HH to the plane x=0x=0, we obtain point sets with the required properties.

Let R={p:pR}R^{*}=\{p^{*}:p\in R\} be the set of red planes dual to points in RR and set 𝒜(R):=𝒜(R)\mathcal{A}(R):=\mathcal{A}(R^{*}) to be the arrangement formed by the set RR^{*}. The set of blue planes BB^{*} and the blue arrangement 𝒜(B)\mathcal{A}(B) are defined analogously. We will write 𝒜𝒜(RB)\mathcal{A}\coloneqq\mathcal{A}(R\cup B) for the arrangement formed by the planes in RBR^{*}\cup B^{*}. For a (dual) point p3p\in\mathbb{R}^{3}, we set Rp+,RpRR^{+}_{p},R^{-}_{p}\subseteq R^{*} to be the set of red planes lying strictly above and below pp, respectively. For a pair p,qp,q of (dual) points, put

X(p,q)|Rp+Rq+||Rp+Rq||RpRq+|+|RpRq|.X(p,q)\coloneqq|R^{+}_{p}\cap R^{+}_{q}|-|R^{+}_{p}\cap R^{-}_{q}|-|R^{-}_{p}\cap R^{+}_{q}|+|R^{-}_{p}\cap R^{-}_{q}|.

The sets Bp+,BpBB^{+}_{p},B^{-}_{p}\subseteq B^{*} and the function Y(p,q)Y(p,q) are defined analogously for BB^{*}.

Let LL be the intersection of the median levels of 𝒜(B)\mathcal{A}(B) and 𝒜(R)\mathcal{A}(R). By the following lemma, we have that LL is a connected yy-monotone polygonal curve and is an alternating sequence of edges and vertices of 𝒜\mathcal{A} terminated by half-lines.

Lemma 4.3.

LL is a connected yy-monotone curve.

Proof 4.4.

Recall that BB lies in the quadrant x<0,z<0x<0,z<0 and RR lies in the quadrant x>0,z>0x>0,z>0. Hence, the dual planes in BB^{*} and RR^{*} have equations of the form z=ax+by+cz=ax+by+c with a<0a<0 and a>0a>0, respectively.

Consider the intersection of RBR^{*}\cup B^{*} with the plane Πd:y=d\Pi_{d}\colon y=d. The intersection of the plane z=ax+by+cz=ax+by+c is the line z=ax+(bd+c)z=ax+(bd+c), so planes in BB^{*} correspond to lines with negative slope and planes in RR^{*} correspond to lines with positive slope. In particular, the median levels of lines corresponding to BB^{*} and RR^{*} 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 LL with the plane Πd\Pi_{d}.

By general position, LL is a union of vertex-disjoint cycles and bi-infinite paths composed of edges and vertices of 𝒜\mathcal{A}, since incident to every vertex of AA contained in LL are precisely two edges belonging to LL. By monotonicity in yy, LL must be a single bi-infinite chain.

In fact, LL can be computed efficiently using standard tools [1, 7], which we outline now.

Lemma 4.5 (Computing the intersection of two levels [1, 7]).

The intersection curve LL of the median level of 𝒜(B)\mathcal{A}(B) and the median level of 𝒜(R)\mathcal{A}(R) can computed in time O(n+m)O^{*}(n+m), where mm is the complexity of the curve and O()O^{*}(\cdot) 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 LL can be computed by computing the intersection of the median levels in the vertical plane Πd:y=d\Pi_{d}\colon y=d for a small enough dd, defined as in the proof of Lemma 4.3, in linear time, using an algorithm of Megiddo [18].

Consider a point pp on the initial edge of LL (infinite in the y-y-direction). It lies on one plane of πB\pi\in B and one plane πR\pi^{\prime}\in R. Let \ell be the intersection line of π\pi and π\pi^{\prime}, and consider the half line ρ\rho of \ell starting at pp and infinite in the +y+y-direction. The planes of BRB\cup R (besides π\pi and π\pi^{\prime}) are classified into those lying above pp and those lying below it. Call the first set UU and the second DD. We preprocess the intersection of the set of lower half-spaces defined by the planes of UU and the intersection of the set of upper half-spaces defined by the planes of DD for dynamic ray shooting and shoot with ρ\rho. The earlier of the two intersections identifies the first plane π2\pi_{2} of (BR){π,π}(B\cup R)\setminus\{\pi,\pi^{\prime}\} that ρ\rho meets. This is the next vertex of 𝒜(BR)\mathcal{A}(B\cup R) on LL; LL turns here. If π2\pi_{2} belongs to BB, LL now follows the intersection line of π2\pi_{2} and π\pi^{\prime}. Otherwise it follows the intersection line of π\pi and π2\pi_{2}. Past the intersection, the sets UU and DD need to be updated and we continue, following the next ray, until we trace all of LL.

The only cost besides the initial computation of pp are identifying UU and DD in O(n)O(n) time, initializing the dynamic structure, in O(n)O^{*}(n) time, and performing two ray shots and O(1)O(1) updates on UU and DD per vertex of LL, each at a cost of O(1)O^{*}(1).

{note*}

As we construct LL, 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 (e,v)(e,v), in either direction, we record which new plane contains vv together with its color.

We now return to the computation of the eight-partition (H1,H2,H3)(H_{1},H_{2},H_{3}). By the general position assumption, H2H_{2} and H3H_{3} cannot be vertical, so H2H_{2} and H3H_{3} correspond to vertices in 𝒜\mathcal{A}, by Observation 4. With the above setup, we can reformulate the problem of computing H2H_{2} and H3H_{3} as follows.

Claim 2 (The dual alternating sign functions).

Computing H2H_{2} and H3H_{3} is equivalent to identifying a pair of vertices p,qLp,q\in L such that Y(p,q)=X(p,q)=0Y(p,q)=X(p,q)=0.

Proof 4.7.

By Observation 4(2), the eight-partition (H1,H2,H3)(H_{1},H_{2},H_{3}) has exactly kk points in each of the eight open octants. Setting pH2p\coloneqq H_{2}^{*} and qH3q\coloneqq H_{3}^{*}, we obtain that |Rp±Rq±|=|Bp±Bq±|=k|R^{\pm}_{p}\cap R^{\pm}_{q}|=|B^{\pm}_{p}\cap B^{\pm}_{q}|=k for all combinations of signs. Therefore Y(p,q)=X(p,q)=0Y(p,q)=X(p,q)=0, as claimed.

We now argue the other direction. Let p,qLp,q\in L be vertices such that X(p,q)=Y(p,q)=0X(p,q)=Y(p,q)=0. Since pp and qq lie on LL, H2pH_{2}\coloneqq p^{*} and H3qH_{3}\coloneqq q^{*} bisect both RR and BB and contain exactly three points each, at least one of each color. Hence, it suffices to show that (H2,H3)(H_{2},H_{3}) is a four-partition of both RR and BB, i.e., |Rp±Rq±|,|Bp±Bq±|k|R_{p}^{\pm}\cap R_{q}^{\pm}|,|B_{p}^{\pm}\cap B_{q}^{\pm}|\leq k for all combinations of signs. Indeed, this implies that each octant formed by (H1,H2,H3)(H_{1},H_{2},H_{3}), contains exactly kk points completing the proof.

Let ar|Rp+Rq+|a_{r}\coloneqq|R^{+}_{p}\cap R^{+}_{q}|, br|Rp+Rq|b_{r}\coloneqq|R^{+}_{p}\cap R^{-}_{q}|, cr|RpRq+|c_{r}\coloneqq|R^{-}_{p}\cap R^{+}_{q}|, and dr|RpRq|d_{r}\coloneqq|R^{-}_{p}\cap R^{-}_{q}|. Define ab,bb,cb,dba_{b},b_{b},c_{b},d_{b} analogously for the blue planes. Without loss of generality, for a contradiction, suppose ar>ka_{r}>k.

We first consider the case ark+2a_{r}\geq k+2. Since pp lies on the median level of 𝒜(R)\mathcal{A}(R), we have ar+br|Rp+|=2k+1a_{r}+b_{r}\leq|R_{p}^{+}|=2k+1, implying brk1b_{r}\leq k-1. Similarly, since qq lies on the median level of 𝒜(R)\mathcal{A}(R), we have crk1c_{r}\leq k-1. Recall that, by assumption, X(p,q)=ar+drbrcr=0X(p,q)=a_{r}+d_{r}-b_{r}-c_{r}=0, implying dr=br+crark4d_{r}=b_{r}+c_{r}-a_{r}\leq k-4. Hence, ar+br+cr+dr4k4a_{r}+b_{r}+c_{r}+d_{r}\leq 4k-4, so pp and qq together are contained in 4k+3(ar+br+cr+dr)74k+3-(a_{r}+b_{r}+c_{r}+d_{r})\geq 7 red planes, contradicting the general position assumption.

We may now assume ar=k+1a_{r}=k+1. Following the same reasoning we obtain brkb_{r}\leq k, crkc_{r}\leq k, and dr=br+crark1d_{r}=b_{r}+c_{r}-a_{r}\leq k-1. This implies ar+br+cr+dr4ka_{r}+b_{r}+c_{r}+d_{r}\leq 4k, and, in particular, that pp and qq together are contained in at least 3 red planes. Now consider the blue planes and note that ab+bb+cb+db4ka_{b}+b_{b}+c_{b}+d_{b}\leq 4k — this is clear if each of sets Bp±Bq±B^{\pm}_{p}\cap B^{\pm}_{q} contains at most kk blue planes, otherwise it follows by the same argument as above. Hence, pp and qq together are contained in 4k+3(ab+bb+cb+db)34k+3-(a_{b}+b_{b}+c_{b}+d_{b})\geq 3 blue planes.

By Observation 4(2), pp and qq are contained in at most 66 planes of RBR^{*}\cup B^{*}. Combined with the argument above, this implies pp and qq together are contained in exactly 3 planes of each color. It follows that ar+br+cr+dr=ab+bb+cb+db=4ka_{r}+b_{r}+c_{r}+d_{r}=a_{b}+b_{b}+c_{b}+d_{b}=4k, which, by the assumption ar=k+1a_{r}=k+1, implies br=cr=kb_{r}=c_{r}=k and dr=k1d_{r}=k-1. Since |Rp|=2k+1|R^{-}_{p}|=2k+1 and br+dr=2k1b_{r}+d_{r}=2k-1, there are exactly 2 red planes containing qq below pp. Similarly, since |Rq|=2k+1|R^{-}_{q}|=2k+1 and br+dr=2k1b_{r}+d_{r}=2k-1, there are exactly 2 red planes containing pp below qq. But then pp and qq are contained in a total of 44 red planes, a contradiction.

This exhausts all possibilities and, hence, |Rp±Rq±|,|Bp±Bq±|k|R_{p}^{\pm}\cap R_{q}^{\pm}|,|B_{p}^{\pm}\cap B_{q}^{\pm}|\leq k for all combinations of signs, completing the proof.

To summarize, once we construct LL in time O(n+m)O^{*}(n+m), to compute an eight-partition, it is sufficient, by Claim 2, to find two vertices p,qLp,q\in L satisfying X(p,q)=Y(p,q)=0X(p,q)=Y(p,q)=0. In particular, it is possible to construct an eight-partition by enumerating all the Θ(m2)\Theta(m^{2}) pairs of vertices in LL; 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 O((m+n)logm)O((m+n)\log m).

Speed up

For simplicity of later calculations, we orient LL in the yy-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 x1,x2,,xmx_{1},x_{2},\dotsc,x_{m}. Recall that the goal is to identify i,j[m]i,j\in[m] so that xi,xjx_{i},x_{j} are vertices and X(xi,xj)=Y(xi,xj)=0X(x_{i},x_{j})=Y(x_{i},x_{j})=0.

We extend the definition of X,YX,Y as follows. If xi,xjx_{i},x_{j} are both edges, we pick arbitrary points pp and qq in the open edges xix_{i} and xjx_{j}, respectively, and set X(xi,xj):-X(p,q)X(x_{i},x_{j})\coloneq X(p,q) and Y(xi,xj):-Y(p,q)Y(x_{i},x_{j})\coloneq Y(p,q); the cases where xix_{i} is an edge or xjx_{j} is an edge, but not both, are handled analogously. Note that specifying the (open) edges containing pp and qq is sufficient to determine XX and YY, hence the definition is unambiguous. Define π:[m]22\pi\colon[m]^{2}\to\mathbb{Z}^{2} by

π(i,j):-(X(xi,xj),Y(xi,xj)).\pi(i,j)\coloneq(X(x_{i},x_{j}),Y(x_{i},x_{j})).

With this setup, our goal is to identify a point (i,j)[m]2(i,j)\in[m]^{2} (corresponding to a pair of vertices on LL) such that π(i,j)=𝟎\pi(i,j)=\mathbf{0}.

We define a grid curve CC to be a sequence of points (i1,j1),,(it,jt)(i_{1},j_{1}),\dots,(i_{t},j_{t}) in 2\mathbb{Z}^{2} such that (i+1,j+1){(i,j),(i±1,j)(i,j±1)}(i_{\ell+1},j_{\ell+1})\in\{(i_{\ell},j_{\ell}),(i_{\ell\pm 1},j_{\ell})(i_{\ell},j_{\ell\pm 1})\} for each [t1]\ell\in[t-1]. In words, a grid curve is a walk in 2\mathbb{Z}^{2} which, at each step, does not move at all or moves by exactly one unit up/down/left/right. A curve is closed if (i1,j1)=(it,jt)(i_{1},j_{1})=(i_{t},j_{t}). 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 CC, we associate a piecewise linear curve C¯\overline{C} in 2\mathbb{R}^{2}, consisting of line segments connecting consecutive points (i,j),(i+1,j+1)(i_{\ell},j_{\ell}),(i_{\ell+1},j_{\ell+1}) of CC for each [t1]\ell\in[t-1]. For a curve C¯\overline{C} not passing through the origin 𝟎\mathbf{0}, the winding number w(C¯)w(\overline{C}) about 𝟎\mathbf{0} is defined in the standard way. Slightly abusing notation, we set w(C):=w(C¯)w(C):=w(\overline{C}). In particular, provided C¯\overline{C} misses the origin,

w(C)=w(C¯)={0if C¯ does not wind around 𝟎,n>0if C¯ winds around 𝟎 n times counterclockwise,n<0if C¯ winds around 𝟎 n times clockwise.w(C)=w(\overline{C})=\begin{cases*}0&if $\overline{C}$ does not wind around $\mathbf{0}$,\\ n>0&if $\overline{C}$ winds around $\mathbf{0}$ $n$ times counterclockwise,\\ n<0&if $\overline{C}$ winds around $\mathbf{0}$ $-n$ times clockwise.\end{cases*}

We omit the rigorous definition of w(C)w(C) 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:

  1. [Step 1]

  2. 1.

    Set C:-TC\coloneq T (see Definition 4.8). If π(C)\pi(C) meets 𝟎\mathbf{0}, then stop — we have found a point that maps to 𝟎\mathbf{0} (see Lemma 4.11). Otherwise π(C¯)\pi(\overline{C}) has odd winding number, by Lemma 4.12.

  3. 2.

    Construct two simple closed curves C1C_{1}, C2C_{2} so that (a) C¯=C¯1+C¯2\overline{C}=\overline{C}_{1}+\overline{C}_{2}, (b) at least one of π(C1),π(C2)\pi(C_{1}),\pi(C_{2}) has odd winding number (unless they meet 𝟎\mathbf{0}), (c) the regions enclosed by C¯1\overline{C}_{1} and C¯2\overline{C}_{2} partition the region enclosed by C¯\overline{C}, and (d) the area enclosed by each of C¯1,C¯2\overline{C}_{1},\overline{C}_{2} is a fraction of that enclosed by C¯\overline{C} (see Lemma 4.16).

  4. 3.

    If π(C1)\pi(C_{1}) or π(C2)\pi(C_{2}) meets 𝟎\mathbf{0}, then stop — we found a point that maps to 𝟎\mathbf{0}, by Lemma 4.11.

  5. 4.

    Compute w(π(C1))w(\pi(C_{1})) and w(π(C2))w(\pi(C_{2})), and replace CC 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 TT.

Definition 4.8 (The triangular grid curve TT).

The simple closed grid curve TT traverses a triangular path defined as follows:

  • Starting with the bottom horizontal side of the grid [m]2[m]^{2}, TT traverses the points

    (x1,x1),(x2,x1),,(xm,x1),(x_{1},x_{1}),(x_{2},x_{1}),\dots,(x_{m},x_{1}),
  • continuing along the right vertical side of the grid [m]2[m]^{2} along the points

    (xm,x1),(xm,x2),,(xm,xm),(x_{m},x_{1}),(x_{m},x_{2}),\dots,(x_{m},x_{m}),
  • finally, traversing back diagonally along

    (xm,xm),(xm1,xm),(xm1,xm1),(xm2,xm1),,(x1,x2),(x1,x1).(x_{m},x_{m}),(x_{m-1},x_{m}),(x_{m-1},x_{m-1}),(x_{m-2},x_{m-1}),\dots,(x_{1},x_{2}),(x_{1},x_{1}).

Along the diagonal side of TT, we are really only interested in points of the form (x,x)(x_{\ell},x_{\ell}) with [m]\ell\in[m]. 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 TT.

Lemma 4.9.

If CC is a grid curve, then π(C)\pi(C) is a grid curve. Moreover, if LL has already been computed, π(C)\pi(C) can be computed in time O(n+|C|)O(n+|C|).

Proof 4.10.

Consider a step in CC from (xi,xj)(x_{i},x_{j}) to (xi+1,xj)(x_{i+1},x_{j}), where xix_{i} is an edge of LL and xi+1x_{i+1} is a vertex. Then xi+1x_{i+1} is contained in the planes that contain xix_{i} and one additional plane HH. Suppose, without loss of generality, that HH is red. This means that the cardinality of one of the sets Rp±R_{p}^{\pm} changes by one. Hence, the cardinality of Rp±Rq±R_{p}^{\pm}\cap R_{q}^{\pm}, for each combination of signs, changes by at most one — if HH contains qq, nothing changes. It follows that the function XX changes by at most one, and the function YY remains unchanged.

Note that, up to symmetry, only one such transition or its reverse occurs in a single step of CC. We’ve shown that each step causes either XX or YY (but not both) to change by at most one, and, hence, π(C)\pi(C) is a grid curve.

The computation can be carried out in constant time per incident edge-vertex pair of CC, since LL has been already computed, after a O(n)O(n)-time initialization that computes X,YX,Y at an arbitrary starting point of CC by brute force.

Lemma 4.9 immediately implies the following.

Lemma 4.11.

If π(C)¯\overline{\pi(C)} meets 𝟎\mathbf{0}, then some point of CC is mapped to 𝟎\mathbf{0}.

A key property of the triangular grid curve TT is the following.

Lemma 4.12.

If 𝟎π(T)\mathbf{0}\not\in\pi(T), then w(T)w(T) is odd.

Proof 4.13.

Let N4k+2N\coloneqq 4k+2, and let H,V,DH,V,D be the images (under π\pi) of the horizontal, vertical, diagonal sides of TT, respectively. Note that π(T)\pi(T) is the concatenation of H,V,H,V, and DD in that order.

Observe that if p=q=xip=q=x_{i} with i[m]i\in[m], then |Rp+Rq|=|RpRq+|=0|R_{p}^{+}\cap R_{q}^{-}|=|R_{p}^{-}\cap R_{q}^{+}|=0. Hence, X(xi,xi){4k+1,4k+2}X(x_{i},x_{i})\in\{4k+1,4k+2\} depending on whether xix_{i} is contained in one or two red planes. Similarly, Y(xi,xi){4k+1,4k+2}Y(x_{i},x_{i})\in\{4k+1,4k+2\}. Hence π(xi,xi){(N,N),(N1,N1)}\pi(x_{i},x_{i})\in\{(N,N),(N-1,N-1)\} and, in particular, π(xi,xi)=(N,N)\pi(x_{i},x_{i})=(N,N) if xix_{i} is an edge. Along with Lemma 4.9, this implies that the grid curve DD is a closed walk on the points in {N2,N1,N,N+1}2{𝟎}\{N-2,N-1,N,N+1\}^{2}\setminus\{\mathbf{0}\} starting and ending at the point (N,N)(N,N).

Noting that x1x_{1} and xmx_{m} are half-lines contained in the same red plane, and that every red plane that lies above x1x_{1} lies below xmx_{m} and vice versa, we obtain π(xm,x1)=(N,N)\pi(x_{m},x_{1})=(-N,-N). Hence, HH is a grid curve from the point (N,N)(N,N) to (N,N)(-N,-N) and VV is a grid curve from the point (N,N)(-N,-N) to (N,N)(N,N).

The discussion above implies that w(T)w(T) is equal to the winding number of the concatenation of VV and HH. We argue below that VV is the image of HH under a rotation by 180° around the origin, i.e., the map (x,y)(x,y)(x,y)\mapsto(-x,-y). Since, by assumption, neither HH nor VV contain 𝟎\mathbf{0}, the concatenation of HH and VV has odd winding number as claimed.

Specifically, we need to show that π(xi,x1)=π(xm,xi)\pi(x_{i},x_{1})=-\pi(x_{m},x_{i}). Since π\pi is symmetric in the two arguments, it suffices to show that π(x1,xi)=π(xm,xi)\pi(x_{1},x_{i})=-\pi(x_{m},x_{i}). As mentioned before, every plane that lies above x1x_{1} lies below xmx_{m} and vice versa. That is, Rx1+=RxmR_{x_{1}}^{+}=R_{x_{m}}^{-} and Rx1=Rxm+R_{x_{1}}^{-}=R_{x_{m}}^{+}, and similarly Bx1+=BxmB_{x_{1}}^{+}=B_{x_{m}}^{-} and Bx1=Bxm+B_{x_{1}}^{-}=B_{x_{m}}^{+}. The claim is now obvious from the definition of the functions XX and YY.

Lemma 4.14.

If w(π(C))w(\pi(C)) is odd, then there is a point (i,j)2(i,j)\in\mathbb{Z}^{2} enclosed by C¯\overline{C} with π(i,j)=𝟎\pi(i,j)=\mathbf{0}.

Proof 4.15.

A grid square SS is a simple closed grid curve of the form

(i,j),(i+1,j),(i+1,j+1),(i,j+1),(i,j)(i,j),(i+1,j),(i+1,j+1),(i,{j+1}),({i},{j})

with (i,j)2(i,j)\in\mathbb{Z}^{2}. A square is S¯\overline{S} for some grid square SS. If there is a grid square SS enclosed by C¯\overline{C} such that π(S)\pi(S) meets 𝟎\mathbf{0}, then we are done by Lemma 4.11. Otherwise, note that π(C)¯\overline{\pi(C)} is the sum of the images of the corresponding squares. Hence, there is a grid square SS with w(π(S))w(\pi(S)) odd. By Lemma 4.9, π(S)\pi(S) is a grid curve. By enumerating all possibilities (see Fig. 2), we conclude that w(π(S))w(\pi(S)) cannot be odd.

Refer to caption
Figure 2: Up to symmetries, the different possibilities for the image under π\pi of a grid square SS, which is always always a grid curve in 2\mathbb{Z}^{2}, by Lemma 4.9. Note that the image cannot have odd winding number.

Next, we show how to decompose a curve CC. We restrict our attention to “trapezoidal” curves: Such a curve is the boundary of the intersection of the region bounded by the initial triangle TT with a grid-aligned rectangle. This property is maintained inductively.

Lemma 4.16.

Given a trapezoidal curve CC whose image misses 𝟎\mathbf{0}, with w(π(C))w(\pi(C)) odd, we can construct two trapezoidal curves C1C_{1} and C2C_{2} so that

  1. [(i)]

  2. 1.

    the region RR surrounded by C¯\overline{C} is partitioned into region R1R_{1} surrounded by C¯1\overline{C}_{1} and region R2R_{2} surrounded by C¯2\overline{C}_{2}.

  3. 2.

    area(R1),area(R2)carea(R)\operatorname{area}(R_{1}),\operatorname{area}(R_{2})\leq c\cdot\operatorname{area}(R), for an absolute constant c<1c<1.

  4. 3.

    either 𝟎\mathbf{0} is in the image of C1C_{1} and C2C_{2} or w(π(C))=w(π(C1))+w(π(C2))w(\pi(C))=w(\pi(C_{1}))+w(\pi(C_{2})).

Proof 4.17.

We already noted that the image of a grid square cannot have odd winding number, therefore RR is not a grid square. As long as RR 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 R1R_{1} and R2R_{2}. The curves C1C_{1} and C2C_{2} are the boundaries of the regions (refer to Fig. 3). If the height of RR is one, perform a similar partition by a vertical chord into to near-equal-width pieces.

Refer to caption
Figure 3: Curve CC; the blue region is bounded by C1C_{1}, and the red by C2C_{2}, with the horizontal dividing chord drawn dashed.

Property (1) is satisfied by construction. If the image of the new chord misses 𝟎\mathbf{0}, then both C1C_{1} and C2C_{2} avoid 𝟎\mathbf{0} 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 3/43/4 of the original area; this fraction can rise to 5/65/6 if RR 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 CC in [m]2[m]^{2} we can determine whether π(C)\pi(C) contains a zero. If not, we can compute w(π(C))w(\pi(C)), all in time O(|C|+n)O(|C|+n).

Proof 4.19.

By Lemma 4.9, we can trace π(C)\pi(C) step by step and, in particular, detect whether 𝟎π(C)\mathbf{0}\in\pi(C). So suppose this is not the case.

Consider the (open) ray ρ\rho from the origin directed to the right in 2\mathbb{Z}^{2}. To determine the winding number of the curve π(C)¯\overline{\pi(C)} not passing through the origin, it’s sufficient to count how many times the curve crosses the ray ρ\rho. We can compute the number of times π(C)¯\overline{\pi(C)} crosses ρ\rho by computing π\pi for every vertex of CC in order and counting the number of times (X,0)(X,0) occurs along it, with X>0X>0.

As π(C)¯\overline{\pi(C)} may partially overlap ρ\rho, we need to check whether π(C)¯\overline{\pi(C)} arrives at (X,0)(X,0) with X>0X>0 from below the XX-axis and (possibly after staying on the axis for a while) departs into the region above XX-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 π(C)\pi(C), 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-O(m)O(m) closed grid curve CC, compute its image π(C)\pi(C), and check whether it passes through the origin in time O(m+n)O(m+n) by Lemma 4.9. One can check whether π(C)\pi(C) winds around the origin an odd number of times by Lemma 4.18, also in time O(m+n)O(m+n).

The number of rounds of the main loop of the algorithm is O(logm)O(\log m), as the starting curve cannot enclose an area larger than O(m2)O(m^{2}) and areas shrink by a constant factor in every iteration, by Lemma 4.16. Combining everything together, we conclude that LL can be computed in O(n+m)O^{*}(n+m) time, and the algorithm can then identify the pair of vertices of LL corresponding to an eight-partition in at most O(logm)O(\log m) rounds, each costing at most O(m+n)O(m+n). 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 kk-sets and jj-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 3\mathbb{R}^{3}. 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 kk-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 X(𝕊3)3X\subseteq\left(\mathbb{S}^{3}\right)^{3} be a compact subset such that, for all μ\mu mass distributions (with connected support) on 3\mathbb{R}^{3} there is a plane configuration X\mathcal{H}\in X that eight-partitions μ\mu; then for any set PP of points in 3\mathbb{R}^{3}, there is a configuration X\mathcal{H}_{\infty}\in X that eight-partitions the point set.

Proof A.2.

Let nn be the number of points in PP. Let μi\mu_{i} be the measure defined as follows. At every point in PP, place a ball of radius εi=12i\varepsilon_{i}=\frac{1}{2^{i}} with uniform density and total mass (1εi)/n(1-\varepsilon_{i})/n; finally, add a normal Gaussian distribution “on the background,” with total mass εi/n\varepsilon_{i}/n. Note that the total measure μi\mu_{i} of the complement of the union of balls is less than εi\varepsilon_{i}.

By choosing ii 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 i=1i=1.

By assumption, there is a plane configuration i\mathcal{H}_{i} that eight-partitions the mass μi\mu_{i} for each ii; by compactness of XX, there is a subsequence ij\mathcal{H}_{i_{j}} that converges to some limit \mathcal{H}_{\infty}; up to reindexing we can assume that the original sequence i\mathcal{H}_{i} does. The obtained limit point eight-partitions the original point set PP: in fact, there is a i0i_{0} big enough such that for every orthant α23\alpha\in\mathbb{Z}_{2}^{3} and any mi0m\geq i_{0}, every point pP𝒪αp\in P\cap\mathcal{O}^{\mathcal{H}_{\infty}}_{\alpha} is “far away” (e.g., at least 1/2i01/{2^{i_{0}}}) from the planes in the configuration m\mathcal{H}_{m}; hence

1εmn|P𝒪α|μm(𝒪αm)=18.\frac{1-\varepsilon_{m}}{n}\lvert P\cap\mathcal{O}^{\mathcal{H}_{\infty}}_{\alpha}\rvert\leq\mu_{m}(\mathcal{O}^{\mathcal{H}_{m}}_{\alpha})=\frac{1}{8}.

Taking the limit in mm we obtain the desired result.

Corollary A.3.

Let XX and PP as above. If =(H1,H2,H3)\mathcal{H}_{\infty}=(H_{1},H_{2},H_{3}) is the configuration constructed in the proof of Lemma A.1, then any plane HiH_{i} in \mathcal{H}_{\infty} bisects PP and any pair (Hi,Hj)(H_{i},H_{j}) four-partitions the points.

Proof A.4.

For simplicity we show the result for the first plane H1H_{1} and the pair (H1,H2)(H_{1},H_{2}), all the other cases are identical. First, construct μi\mu_{i} and i=(Hi,1,Hi,2,Hi,3)\mathcal{H}_{i}=(H_{i,1},H_{i,2},H_{i,3}) converging to the limit \mathcal{H}_{\infty} as in the proof of Lemma A.1.

Again, by choosing i0i_{0} big enough we obtain that, for any mi0m\geq i_{0} and any sign α2\alpha\in\mathbb{Z}_{2} every point pPH1αp\in P\cap H_{1}^{\alpha} is sufficiently far form Hm,1H_{m,1} hence

1εmn|PH1α|μm(Hm,1α)=12.\frac{1-\varepsilon_{m}}{n}\lvert P\cap H_{1}^{\alpha}\rvert\leq\mu_{m}(H_{m,1}^{\alpha})=\frac{1}{2}.

Similarly, for any pair of signs (α1,α2)22(\alpha_{1},\alpha_{2})\in\mathbb{Z}_{2}^{2}, any point pPH1α1H2α2p\in P\cap H_{1}^{\alpha_{1}}\cap H_{2}^{\alpha_{2}} is sufficiently far from both Hm,1H_{m,1} and Hm,2H_{m,2}, therefore

1εmn|PH1α1H2α2|μm(Hm,1α1Hm,2α2)=14.\frac{1-\varepsilon_{m}}{n}\lvert P\cap H_{1}^{\alpha_{1}}\cap H_{2}^{\alpha_{2}}\rvert\leq\mu_{m}(H_{m,1}^{\alpha_{1}}\cap H_{m,2}^{\alpha_{2}})=\frac{1}{4}.

By taking the limit we obtain the desired result.

Lemma A.5 (Limit argument for mass distributions with possibly disconnected support).

Let XX be a compact set in (𝕊3)3\left(\mathbb{S}^{3}\right)^{3} such that, for any mass distribution with connected support there is a configuration X\mathcal{H}\in X that eight-partitions the measure. Let μ\mu be a “general” mass distribution. Then there is a plane arrangement X\mathcal{H}_{\infty}\in X that eight-partitions μ\mu.

Proof A.6.

Define εi:-12i\varepsilon_{i}\coloneq\frac{1}{2^{i}} and let μi\mu_{i} the measure defined, on a measurable set A3A\subseteq\mathbb{R}^{3}, as

μi(A)(1εi)μ(A)+εi𝒩(A),\mu_{i}(A)\coloneqq\left(1-\varepsilon_{i}\right)\mu(A)+\varepsilon_{i}\mathcal{N}(A),

where 𝒩\mathcal{N} is a normal Gaussian distribution on 3\mathbb{R}^{3}. Then, μi\mu_{i} is a mass distribution with connected support hence there is a configuration i\mathcal{H}_{i} that eight-partitions μi\mu_{i}. By compactness, up to taking a subsequence, i\mathcal{H}_{i} converges to a configuration \mathcal{H}_{\infty}.

Now, for any α23\alpha\in\mathbb{Z}_{2}^{3}, we have that

(1εi)μ(𝒪αi)μi(𝒪αi)=18.\left(1-\varepsilon_{i}\right)\mu(\mathcal{O}^{\mathcal{H}_{i}}_{\alpha})\leq\mu_{i}(\mathcal{O}^{\mathcal{H}_{i}}_{\alpha})=\frac{1}{8}.

For any fixed measure μ~\tilde{\mu}, the map μ~(𝒪α)\mathcal{H}\to\tilde{\mu}(\mathcal{O}^{\mathcal{H}}_{\alpha}) is continuous; hence by taking the limit in ii we obtain that, for all α23\alpha\in\mathbb{Z}_{2}^{3},

μ(𝒪α)18.\mu(\mathcal{O}^{\mathcal{H}_{\infty}}_{\alpha})\leq\frac{1}{8}.

However, since

α23μ(𝒪α)=μ(3)=1,\sum_{\alpha\in\mathbb{Z}_{2}^{3}}\mu(\mathcal{O}^{\mathcal{H}_{\infty}}_{\alpha})=\mu(\mathbb{R}^{3})=1,

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 AO(d)A\in O(d) is an orthogonal matrix, then the induced continuous map A:𝕊d1𝕊d1A\colon\mathbb{S}^{d-1}\rightarrow\mathbb{S}^{d-1} has degree deg(A)=det(A)\deg(A)=\det(A).

Proof B.2.

Assume det(A)=1\det(A)=1 (i.e., ASO(d)A\in SO(d)).

Let PP an invertible matrix that puts AA in Jordan normal form, where RθR_{\theta} denotes the 2×22\times 2 matrix of the rotation by θ\theta:

A=P1(Rθ1Rθ2RθkIdd2k)P.A=P^{-1}\begin{pmatrix}R_{\theta_{1}}&&&&\\ &R_{\theta_{2}}&&&\\ &&\ddots&&\\ &&&R_{\theta_{k}}&\\ &&&&\textnormal{Id}_{d-2k}\end{pmatrix}P.

Then, there is a path γ\gamma from the d×dd\times d identity matrix Idd\textnormal{Id}_{d} to the matrix AA defined as:

γ(t)=P1(Rtθ1Rtθ2RtθkIdd2k)P,\gamma(t)=P^{-1}\begin{pmatrix}R_{t\theta_{1}}&&&&\\ &R_{t\theta_{2}}&&&\\ &&\ddots&&\\ &&&R_{t\theta_{k}}&\\ &&&&\textnormal{Id}_{d-2k}\end{pmatrix}P,

with γ(0)=Idd\gamma(0)=\textnormal{Id}_{d} and γ(1)=A\gamma(1)=A. As a result, the map A:𝕊d1𝕊d1A\colon\mathbb{S}^{d-1}\rightarrow\mathbb{S}^{d-1} is homotopic to the identity through the homotopy H:𝕊d1×[0,1]𝕊d1H\colon\mathbb{S}^{d-1}\times\left[0,1\right]\rightarrow\mathbb{S}^{d-1}; H(x,t)=(γ(1t))xH(x,t)=(\gamma(1-t))x. Hence deg(A)=deg(Idd)=1\deg(A)=\deg(\textnormal{Id}_{d})=1.

Suppose now det(A)=1\det(A)=-1, then QASO(d)QA\in SO(d) where

Q(Idd11).Q\coloneqq\begin{pmatrix}\textnormal{Id}_{d-1}&\\ &-1\end{pmatrix}.

This means that 1=deg(QA)=deg(Q)deg(A)=deg(A)1=\deg(QA)=\deg(Q)\deg(A)=-\deg(A).

Proposition B.3.

Let f:𝕊n1𝕊n1f\colon\mathbb{S}^{n-1}\rightarrow\mathbb{S}^{n-1} be a continuous antipodal map. Then deg(f)0\deg(f)\neq 0.

Proof B.4.

For a contradiction, suppose there exists a continuous antipodal function f:𝕊n1𝕊n1f\colon\mathbb{S}^{n-1}\rightarrow\mathbb{S}^{n-1} of degree zero.

Then ff can be extended to a map F:Dn𝕊n1F\colon D^{n}\rightarrow\mathbb{S}^{n-1}; using this map it is possible to construct F~:𝕊n𝕊n1\tilde{F}\colon\mathbb{S}^{n}\rightarrow\mathbb{S}^{n-1}:

F~(x1,,xn+1)={F(x1,,xn)if xn+10,F(x1,,xn)if xn+10.\tilde{F}(x_{1},\dots,x_{n+1})=\begin{cases}F(x_{1},\dots,x_{n})&\mbox{if }x_{n+1}\geq 0,\\ -F(-x_{1},\dots,-x_{n})&\mbox{if }x_{n+1}\leq 0.\end{cases}

F~\tilde{F} is well defined because on the intersection of the two patches (i.e., the horizontal equator) both sides coincide with ff. F~\tilde{F} is also antipodal: when xn+10x_{n+1}\geq 0

F~((x,xn+1))=F((x))=F(x)=F~((x,xn+1)),\tilde{F}(-(x,x_{n+1}))=-F(-(-x))=-F(x)=-\tilde{F}((x,x_{n+1})),

while for xn+10x_{n+1}\leq 0,

F~((x,xn+1))=F(x)=(F(x))=F~((x,xn+1)).\tilde{F}(-(x,x_{n+1}))=F(-x)=-(-F(-x))=-\tilde{F}((x,x_{n+1})).

Thus F~\tilde{F} 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 d\mathbb{R}^{d} and a direction v𝕊d1v\in\mathbb{S}^{d-1}, there is a unique hyperplane normal to vv bisecting the mass.

Proof C.2.

Let Hv(a)H_{v}(a) be the hyperplane {xd:xv=a}\{x\in\mathbb{R}^{d}:x\cdot v=a\}, and set Hv+(a):={xd:xv>a}H^{+}_{v}(a):=\{x\in\mathbb{R}^{d}:x\cdot v>a\} to be the positive half-space determined by Hv(a)H_{v}(a). The family of planes with vv as normal is {xv=a:a}{\{x\cdot v=a:a\in\mathbb{R}\}}. Since the hyperplane Hv+(a)H^{+}_{v}(a) varies continuously with aa, limaμ(Hv+(a))=0\lim_{a\to-\infty}\mu(H^{+}_{v}(a))=0, and limaμ(Hv+(a))=1\lim_{a\to\infty}\mu(H^{+}_{v}(a))=1, the intermediate value theorem implies the existence of a bisecting hyperplane.

To prove uniqueness, first observe that, if μ(Hv+(a))=1\mu(H^{+}_{v}(a))=1 then for any bab\geq a, μ(Hv+(b))=1\mu(H^{+}_{v}(b))=1 and analogously if μ(Hv+(a))=0\mu(H^{+}_{v}(a))=0 then for any bab\leq a, μ(Hv+(b))=0\mu(H^{+}_{v}(b))=0. Denote by a¯\bar{a} the maximum value aa for which μ(Hv+(a))=0\mu(H^{+}_{v}(a))=0 (-\infty if there is none), similarly define b¯\bar{b} as the minimum value bb for which μ(Hv+(b))=1\mu(H^{+}_{v}(b))=1 (\infty if there is none).

Since the support is connected, the function aμ(Hv+(a))a\mapsto\mu(H^{+}_{v}(a)) is strictly increasing in the interval [a¯,b¯][\bar{a},\bar{b}] and identically 0 or 11 outside of it; therefore there is a unique value x[a¯,b¯]x\in[\bar{a},\bar{b}] for which μ(Hv+(x))=12\mu(H^{+}_{v}(x))=\frac{1}{2}.

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 v=(0,1)v=(0,1). We first prove existence. Let α[0,π/2]\alpha\in[0,\pi/2], and rotate vv counterclockwise and clockwise by angle α\alpha to obtain uαu_{\alpha} and wαw_{\alpha}, respectively. Then, by Lemma C.1 there exist unique lines α\ell_{\alpha} and mαm_{\alpha} that are perpendicular to uαu_{\alpha} and wαw_{\alpha}, respectively, and bisect μ\mu. Note that vv bisects the angle between α\ell_{\alpha} and mαm_{\alpha}.

The (oriented) lines α\ell_{\alpha} and mαm_{\alpha} partition the plane into four octants, which we label PN,PE,PS,PWP_{N},P_{E},P_{S},P_{W} (north, east, south, west) in the obvious manner. Since both lines are bisecting, we have

μ(PN)=μ(PS)=x,μ(PW)=μ(PE)=μ(2)/2x=y.\mu(P_{N})=\mu(P_{S})=x,\quad\mu(P_{W})=\mu(P_{E})=\mu(\mathbb{R}^{2})/2-x=y.

When α\alpha tends to 0, PWP_{W} and PEP_{E} tend to empty sets and evidently x>yx>y for α\alpha sufficiently close to 0. When α\alpha tends to π/2\pi/2, PNP_{N} and PSP_{S} tend to empty sets and then x<yx<y for α\alpha sufficiently close to π/2\pi/2. Since xx depends continuously on α\alpha, we must have x=yx=y somewhere in between, by the intermediate value theorem. Thus, we have existence.

We now show uniqueness. Assume we have a partition PN,PE,PS,PWP_{N},P_{E},P_{S},P_{W} with angle α\alpha and another partition QN,QE,QS,QWQ_{N},Q_{E},Q_{S},Q_{W} with angle α\alpha^{\prime}. Assume without loss of generality that αα\alpha^{\prime}\leq\alpha. Moreover, since for α=α\alpha^{\prime}=\alpha the partition is defined uniquely, we may assume α<α\alpha^{\prime}<\alpha. Let p=αmαp=\ell_{\alpha}\cap m_{\alpha} and consider the following cases:

  1. 1.

    pQNp\in Q_{N}: In this case PNQNP_{N}\subset Q_{N} and both sets have the same measure. This contradicts connectivity of the set where the density is positive, since the density is positive in QSQ_{S} and in PNP_{N}, it must be positive somewhere in QNPNQ_{N}\setminus P_{N}, implying μ(QN)>μ(PN)\mu(Q_{N})>\mu(P_{N}).

  2. 2.

    pQEp\in Q_{E}: In this case PWQWP_{W}\subset Q_{W} and we obtain a similar contradiction.

  3. 3.

    pQSp\in Q_{S} and pQWp\in Q_{W} are similar to considered cases.

Since the lines α,mα,α\ell_{\alpha},m_{\alpha},\ell_{\alpha^{\prime}}, and mαm_{\alpha^{\prime}} 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 𝕊1×𝕊1\mathbb{S}^{1}\times\mathbb{S}^{1} as the space of parameters.