Dense point sets with many halving lines

A planar point set of $n$ points is called {\em $\gamma$-dense} if the ratio of the largest and smallest distances among the points is at most $\gamma\sqrt{n}$. We construct a dense set of $n$ points in the plane with $ne^{\Omega\left({\sqrt{\log n}}\right)}$ halving lines. This improves the bound $\Omega(n\log n)$ of Edelsbrunner, Valtr and Welzl from 1997. Our construction can be generalized to higher dimensions, for any $d$ we construct a dense point set of $n$ points in $\mathbb{R}^d$ with $n^{d-1}e^{\Omega\left({\sqrt{\log n}}\right)}$ halving hyperplanes. Our lower bounds are asymptotically the same as the best known lower bounds for general point sets.


Introduction
Let P be a set of n points in the plane in general position, that is, no three of them are on a line. A line, determined by two points of P , is a halving line if it has exactly (n − 2)/2 points of P on both sides. Let f (n) denote the maximum number of halving lines that a set of n points can have. It is a challenging unsolved problem to determine f (n).
The first bounds are due to Lovász [L71], and Erdős, Lovász, Simmons and Straus [ELSS73]. They established the upper bound O(n 3/2 ), and the lower bound Ω (n log n) (see also [EW85] for a different lower bound construction). Despite great interest in this problem, there was no progress until the very small improvement due to Pach, Steiger and Szemerédi [PSS92]. They improved the upper bound to O(n 3/2 / log * n). The iterated logarithm of n, log * n, is the number of times the log function must be iteratively applied before the result is at most 1.
Suppose that γ > 0. A planar point set P of n points is called γ-dense if the ratio of the largest and smallest distances determined by P is at most γ √ n. There exist arbitrarily large γ-dense point sets if and only if see [F43,EVW97]. Dense point sets are important in the analysis of some geometric algorithms, as they can be considered "typical" for some practical applications, like computer graphics.
Recall that f (n) is the maximum number of halving lines of a (not necessarily dense) set of n points in the plane. Edelsbrunner, Valtr and Welzl [EVW97] showed, that a γ-dense point set can have at most O(γ √ nf (3γ √ n)) halving lines. Agarwal and Sharir [AS00] combined it with the result of Dey [D98] and obtained that for any fixed γ, a γ-dense point set can have at most O(n 7/6 ) halving lines.
On the other hand, Edelsbrunner, Valtr and Welzl [EVW97] constructed 2-dense point sets with Ω(n log n) halving lines. Note that at that time Ω(n log n) was the best known lower bound for general point sets as well. In this note we give a better construction.
Theorem 1. For any even n, there exists a 4-dense set of n points in the plane with ne Ω( halving lines.
Our lower bound is again asymptotically the same as the best known lower bound for general point sets and it answers a question of Nivasch [N08].
Our construction can be generalized to higher dimensions. Let d ≥ 2 and let P be a set of n points in the d-dimensional space, IR d , in general position, that is, no d + 1 of them are on a hyperplane. A hyperplane, determined by d points of P , is a halving hyperplane if it has exactly (n − d)/2 points of P on both sides. Let f d (n) denote the maximum number of halving hyperplanes that a set of n points in IR d can have. So f 2 (n) is the same as f (n) above. The best upper bounds are [BMZ15]. The planar lower bound construction can be "lifted" to higher dimensions and it gives the lower bound n d−1 e Ω( √ log n) for f d (n) [T01]. A set of n points in IR d is called γ-dense if the ratio of the largest and smallest distances determined by P is at most γ d √ n. Theorem 2. Let d ≥ 3. There exists a γ > 0 with the following property. For every n, such that n + d is even, there exists a γ-dense set of n points in the d-dimensional space with n d−1 e Ω( √ log n) halving hyperplanes.
Just like in the planar case, our lower bounds are asymptotically the same as the best known lower bounds for general point sets. The planar construction is divided into three steps, presented in the next three sections. The first step is the bulk of the result, and it is based on the ideas of Nivasch [N08]. However, we have to be more careful to keep the distances under control. In the last section we show how to generalize it to higher dimensions.

First construction
Definition 1. (a) For any point set S in the plane, if points p, q ∈ S determine a halving line, then the segment pq is called a halving segment. (b) A geometric graph is a graph drawn in the plane with straight line segments as edges.
First, we construct point sets S with n points and ne Ω( √ log n) halving lines, such that the diameter of S is 1 and the smallest distance is Ω(n −8 ). Then, using several, slightly modified copies of S, we increase the smallest distance to Ω(n −1/2 ) while the number of halving lines remains asymptotically the same.
Definition 2. We say that a set of points forms an arithmetic progression, if its points are on a horizontal line and consecutive points are at the same distance. Its size is the number of points it contains, its step is the distance between the consecutive points, its width is the distance between the first and last points.
Lemma 1. For every i > 0, there exists a point set S i with the following properties. (a) The number of points |S i | = n i = Ω(2 i 2 /2+i/2 ), (b) the number of halving lines of S i , m i = n i e Ω( √ log n i) , (c) for any two points of S i , the difference of their x-coordinates is at most 1 and at least Ω(n −8 i ).  Now we describe the construction precisely. Let S o 0 be a set of two points, (1, 1), which is plain, and (0, 0), which is bold. The set H o 0 contains the segment determined by the two points.
, and replace p with the plain points p (k) ∈ S o i , 0 ≤ k ≤ a i − 1. We call these points the children of p, and p is the parent of the new points. For Again, we call these points the children of b, and b is the parent of the new points.
For each halving segment s = pb ∈ H o i−1 , where p = (x p , y p ) is plain and b = (x b , y b ) is bold, add a bold point Add the segments qp (k) , 0 ≤ k ≤ a i − 1, and qb (k) , 0 ≤ k ≤ a i , to H o i . See Figure 1. We say that these new segments in   We also say that the point q is the child of b and b is the parent of q. Finally, we say that the point q is assigned to segment pb.
Extend the relations "parent" and "child" to their transitive closure and call the resulting relation "ancestor" and "descendant", respectively.
. For any s ∈ H o i or p ∈ S o i and k > 0, let Desc k (s) or Desc k (p) denote the set of the k-th descendants of s or p, respectively, and Desc(s) or Desc(p) denote the set of all of its descendants. Now we prove the correctness of the construction, that is, the segments in H o i are halving segments of S o i . Definition 3. (a) Let ℓ be a non-horizontal line and let q be a point. The horizontal distance of ℓ and q, d(ℓ, q), is the length of the unique horizontal segment, one of whose endpoints is q and the other one is on ℓ.
(c) For any segment s, the horizontal strip HS(s) is the closed strip bounded by the horizontal lines through the endpoints of s.
(d) Let r be a point in HS(s). The horizontal distance of s and r, d(s, r), is the horizontal distance of r and the line determined by s.
(e) Let α > 0. The α-strip of s, S α (s), is the set of points q such that q ∈ HS(s) and d(s, q) ≤ α. See Figure 2.
We show that for any halving segment s in H o i , all of its descendant segments are in a very narrow strip of s, in a very strong sense, while other points, that is, those points which are not endpoints of descendant segments, will never get into that strip. See Figure 3.
i+k , and s k is a parent of s k+1 . For every 0 ≤ k ≤ j, lets k =p kbk be the extension of s k . For the exact definition see Definition 3 (b). Let 1 be the extension of s ′ 1 . Then b ′ 1 is exactly the midpoint of s. The point p ′ 1 has the same y-coordinate as either p or b, and their (horizontal) distance . We can show by the same argument that for any Proof. First we show part (a) of the claim. Let j ≥ i, q ∈ S o j that is not an endpoint of s or any descendant of s.
Case 1. Suppose that q is bold. There is a sequence b 0 , b 1 , . . . , b j = q such that for every k, 0 ≤ k ≤ j, b k is a bold point in S o k , and for every k, 0 ≤ k < j, b k is a parent of b k+1 . Moreover, there is a sequence Similarly, there is a sequence s 0 , s 1 , . . . , s i = s such that for every k, 0 ≤ k ≤ i, s k ∈ H o k , and for every k, 0 ≤ k < j, s k is a parent of s k+1 .
By the assumption, if j > i, then In this case both s i and s ′ i are children of s i−1 = s ′ i−1 and j > i by the previous observations. Let ℓ be the horizontal line through q = b j . We will analyze the situation step by step on that line. Let t be the intersection of ℓ and the line of s i . For k = i, . . . , j − 1, let t k be the intersection of ℓ and the line of s ′ k and let t j = q. See Figure 4.
Consequently, q ∈ S 2α (s). Here we used that o ≥ j.
Case 1.2 Suppose now that i > m. By the previous argument, q ∈ S 2β (s m ) where β = 2 m+2 d o m+1 . By Claim 2.1,s i ⊂ S β (s m ), therefore, S 2α (s i ) ⊂ S 2β (s m ), so it follows that q ∈ S 2α (s i ).
Case 2 Suppose that q is plain. The argument will be a more complicated version of the previous one. There is a sequence b 0 , b 1 , . . . , b l , p l+1 , . . . , p j = q such that (a) for every k, 0 ≤ k ≤ l, b k is a bold point in S o k , (b) for every k, 0 ≤ k < l, b k is a parent of b k+1 , (c) for every k, l < k ≤ j, p k is a plain point in S o k , (d) for every k, l < k < j, p k is a parent of p k+1 , and (e) b l is a parent of p l+1 .
Moreover, there is a sequence s ′ 1 , s ′ 2 , . . . , s ′ l−1 such that for every k, Similarly, there is a sequence s 0 , s 1 , . . . , s i = s such that for every k, 0 ≤ k ≤ i, s k ∈ H o k , and for every k, 0 ≤ k < i, s k is a parent of s k+1 .  Clearly, |tt m | ≥ 2 m−l−1 ε o m . For any k, m ≤ k < j, Consequently, q ∈ S 2β (s m ). By Claim 2.1,s i ∈ S β (s m ). Recall, that α = 2 i+2 d o i+1 . Therefore, S 2α (s i ) ⊂ S 2β (s m ), so it follows that q ∈ S 2α (s i ).
Consequently, q ∈ S 2β (s m ). By Claim 2.1,s i ⊂ S β (s m ), therefore, S 2α (s i ) ⊂ S 2β (s m ), so it follows that q ∈ S 2α (s i ). This concludes the proof of part (a). Part (b) follows directly from the calculations, we only have to observe that taking a child of the point q, it cannot "jump" to the other side of the strip S 2α (s).
We are ready to prove that the segments in Similarly, P i = P (1) is the set of (plain) children of points of P i−1 \ {p i−1 }, P Let s i be a child of s i−1 . It follows from Claim 2.2 that if p ∈ P i−1 is on the left (resp. right) side of the line of s i−1 , then any descendant p ′ ∈ P i of p is on the left (resp. right) side of s i . Since each p ∈ P i−1 is replaced by the same number, a i of plain points, it follows that s i is halving P The set S o 0 contains only two points, (1, 1) and (0, 0), and they determine s 0 ∈ H o 0 . Apply Claim 2.1 for the segment s 0 , we obtain that a, b ∈ S α (s 0 ) where α = 4d o 1 = 2 −4o−1 . Therefore, |y(a)−x(a)| ≤ 2 −4o−1 and |y(b) − x(b)| ≤ 2 −4o−1 . Therefore, represent the same abstract graph, but they are different as geometric graphs. For any i, let The graph G i has n i vertices and m i edges, all of them are halving edges of S i .
We estimate now the number of points n i in S i and the number of halving lines m i in H i , that is, we prove parts (a) and (b) of Lemma 1. Our calculation is similar to the one by Nivasch [N08].
We have n 0 = 2 and m 0 = 1. Since each halving line in H i−1 is replaced by 2a i + 1 halving lines in H i , (2 j + 1) = 1 6 i+1 j=0 (2 j + 1). Consequently On the other hand, Here we used that for any x > 0, e x > 1 + x. Summarizing, The number of bold points in S i−1 is m i−2 , hence the number of plain points in S i−1 is n i−1 −m i−2 . Therefore, there are a i (n i−1 − m i−2 ) + (a i + 1)m i−2 = a i n i−1 + m i−2 plain points and m i−1 bold points in S i , so Using (1) for m i , we prove by induction that 2 i 2 /2+i/2 < n i < 4(i + 1)2 i 2 /2+i/2 .
Both inequalities hold trivially for i = 0. Suppose that i > 0 and 2 (i−1) 2 /2+(i−1)/2 < n i−1 . Then Suppose now that n i−1 < 4i2 (i−1) 2 /2+(i−1)/2 . Then It follows that m i ≥ n i e Ω( √ log n i) . This finishes the proof of parts (a) and (b) of Lemma 1. Now we prove part (c). The statement is trivial for i = 0, suppose that i > 0. Let a, b ∈ S i . First assume that y(a) = y(b). Then we have 2 −i ≤ |y(a) − y(b)| ≤ 1, so by Claim 2.3, Summarizing, in any case we have by inequality (2). Apply a scaling by a factor of 8/9 and the statement follows. This concludes the proof of Lemma 1.

Second construction
The following statement is stronger than Lemma 1. It holds for all even numbers n, not just a sequence {n i }, and in part (c), instead of Ω(n −8 i ), now we have Ω(n −1 ), which is optimal.
Lemma 2. For every even n > 0 there is a planar point set S * (n) of n points and m = ne Ω( halving lines such that for any two points of S(n), the difference of their x-coordinates is Ω(n −1 ) and at most 1.
Proof of Lemma 2. Our construction is based on G i (S i , H i ) from Lemma 1. Assume without loss of generality that i > 10. This will slightly simplify our calculations.
Claim 3.1. Consider the set S = S i of n i points from Lemma 1. Move each of its points horizontally by a distance at most n −9 i . Let S ′ be the resulting point set. If x, y ∈ S and xy ∈ H i then x ′ and y ′ , the corresponding points in S ′ , determine a halving line of S ′ .
We used here that i > 10. Therefore, q remains on the same side of s after the perturbation of the points. This holds for any q = p, b, therefore, s remains a halving line.
Suppose now that i > 10 is a fixed number. Let n = n i , m = m i , S = S i , and H = H i . Let p 1 , . . . , p n be the points of S, p j = (x j , y j ). Then let p ′ j = (x ′ j , y j ), where x ′ j = ⌊n 9 x j ⌋ n 9 + j n 10 .
Let S ′ = {p ′ j | 1 ≤ j ≤ n} and let H ′ be the segments corresponding to the segments in H. Each point of S is moved horizontally by less than n −9 , so, by Claim 3.1, the segments in H ′ are halving segments  of S ′ . Now apply a horizontal translation so that all points of S ′ have x-coordinates between 1 and 3. This is possible by Lemma 1 (c). Let δ > 0 be a very small number. Apply the transformation (x, y) −→ (x, δ 2 · y) on S ′ , call the resulting point set S ′′ . See Figure 5. Clearly, halving edges remained halving edges. Since δ is very small, all halving edges are very close to the x-axis and almost parallel to it. All points of S ′′ have very small y-coordinates and their x-coordinates are between 1 and 3.
Let Ψ α denote the counterclockwise rotation about the origin by angle α and let T r denote the translation to the right by r. We have to introduce one more parameter, N . Let n 9 ≤ N ≤ n 10 be an arbitrary number.
Define the point sets S . Let S union be their union, that is, See Figure 6.
Finally, apply a scaling of factor n 9 /(6N ) to S union and let S * be a point set obtained.
We claim that S * satisfies the conditions. Recall that each block has m halving lines, n = n i and m = m i for some fixed i. The set S * contains 2N + 1 blocks, each contains n points. So |S * | = n * = 2N n + n.
Observe, that a halving line of a block has the same number of other blocks on both sides, so it is a halving line of S * as well. So, for the number of halving edges of S * , since N ≤ n 10 . This proves parts (a) and (b).
By the construction, the x-coordinates of the points of S ′′ are between 1 and 3. Consequently, the x-coordinates of the points of a positive block S (k) + (resp. negative block S (k) − ) are between 0 and 3N/n 9 (resp. −3N/n 9 and 0). Therefore, the x-coordinates of the points of S union are between 3N/n 9 and −3N/n 9 . Finally, we can conclude that the x-coordinates of the points of S * are between 1/2 and −1/2.
Recall that p ′ 1 , . . . , p ′ n are the points of S ′ , p ′ j = (x ′ j , y j ), and for every j, x ′ j = k n 9 + j n 10 for some integer k. This remains true for S ′′ and still remains true if we apply a translation by l n 9 for some integer l. If we apply now a rotation about the origin by a very small angle, the x-coordinates will change by a very small amount. So, we have the following statement: let q 1 , . . . , q n be the points of a positive block S (k) + , corresponding to the points p ′ 1 , . . . , p ′ n of S ′ . Then the x-coordinate x j of q j is very close to a number of the form k n 9 + l n 10 for some k, l integers. Analogous statement holds for the negative blocks. So, for any two points of S union , the difference of their x-coordinates is least n −10 /2. After scaling by a factor of n 9 /6N we get the final set S * , so in S * , the difference of the x-coordinates of any two points is at least n 12N = Ω((n * ) −1 ). This proves Lemma 2 if n * , the number of points, is of the form (2N + 1)n, where n = n i for some i and n 9 ≤ N ≤ n 10 . For other values we have to add some extra points as follows.
Observe, that for every i > 10, (2n 10 i + 1)n i > (2n 9 i+1 + 1)n i+1 . This means, that for any large enough even n (say, n > (2n 9 10 + 1)n 10 ), there is an i > 10 and an N , n 9 i ≤ N ≤ n 10 i , such that (2N + 1)n i ≤ n ≤ (2N + 3)n i . So we can take our construction with parameters n i and N , and add at most 2n i extra points so that the conditions are still satisfied. This concludes the proof of Lemma 2.

Third construction
Proof of Theorem 1. Let S * be the point set satisfying the conditions of Lemma 2. Let n be the number of its points and let m be the number of its halving lines. Let ε > 0 be a very small number.
Apply the transformation (x, y) −→ (x + 1/2, ε 2 · y) on S * from Lemma 2, and let R denote the resulting point set. The set R contains n points and m = ne Ω( √ log n) halving lines. The x-coordinates of its points are between 1 and 2, the y-coordinates are extremely small, and the distance between any two points is Ω(1/n).
For 0 ≤ k ≤ n, let and let See Figure 7. The set P contains N = n(n + 1) points. For every k, each halving line of R k contains the same number of other blocks on both sides, so it is a halving line of P . Therefore, the number of halving lines of P , M = (n + 1)ne Ω( √ log n) = N e Ω( √ log N ) . The minimum distance among the points in P is Ω(1/n) = Ω(1/ √ N ) and the diameter of P is less than 4. This finishes the proof of Theorem 1, if the number of points, N , is of the form n(n + 1) where n is even. If we want a construction with N even number of points where n(n + 1) < N < (n + 2)(n + 3) for some n even, we take the construction with n(n + 1) points and add N − n(n + 1) < 4n + 6 = O(N 1/2 ) extra points so that the conditions are still satisfied. One possible way to do it is that we add the vertices of a regular (N − n(n + 1))-gon, inscribed in a circle of radius 3 about the origin, so that none of the extra points are on the (original) halving lines. This concludes the proof.
Remark. The number of halving lines of P is Ω ne √ (log 2)/11 √ log n / √ log n , while in the construction of Nivasch [N08] it is Ω ne √ 2 log 2 √ log n / √ log n .
Remark. The point set P is 4-dense, it can be proved by the same calculation as in [EVW97]. We omit the details.

Construction in the space
Proof of Theorem 2. Suppose first that d = 3. Let m > 0 even. By Lemma 2, there is a planar set S with the following properties. Let c 1 , . . . , c k , c ′ 1 , . . . , c ′ k be their centers, c ′ i is the reflection of c i . Since the packing was maximal, k = Θ(m d−1 ). Suppose that k is even. Let ℓ 1 , . . . , ℓ k/2 , ℓ ′ 1 , . . . , ℓ ′ k/2 be the lines through the origin and c 1 , . . . , c k , respectively. For each line ℓ i , 1 ≤ i ≤ k/2, take a block A so that its center is the origin and its axis is ℓ i . For each line ℓ ′ i , 1 ≤ i ≤ k/2, take a block B so that its center is the origin and its axis is ℓ ′ i . Finally slightly perturb the points so that they are in general position. We obtain the point set P . Now we have n = Θ(m d ) points. The maximum distance is at most 4, the minimum is at least 1/m = Θ(n −1/d ), so P is γ-dense for some γ.
Let A be a block of type A, and let B 1 , B 2 , . . . , B d−2 be different blocks, each of type B. Take two points, u, v, of the important part of block A that determine a halving line and for 1 ≤ i ≤ d − 2, let w i ∈ B i . The hyperplane Π determined by these d points is almost a halving plane of P . It halves any other block, since it goes almost through the origin, it also halves block A, by the choice of u and v, and since B i is almost symmetric about the origin, Π has one more points of B i on one side than on the other. An easy calculation shows that we have n d−1 e Ω( √ log n) such planes. Let diff(Π) be the number of points of P above Π minus the number of points below Π. ("Above" and "below" are defined with respect to the d-th coordinate.) It follows, that |diff(Π)| ≤ d − 1 and diff(Π) − d is even. So, for some x, where |x| ≤ d − 1 and x − d is even, there are still n d−1 e Ω( √ log n) such planes Π with diff(Π) = x. We can assume without loss of generality that x ≤ 0. Add the points (0, 0, . . . , 0, 2 + i/n), 1 ≤ i ≤ x to P . The resulting set is still dense and now it has n 2 e Ω( √ log n) halving planes.