A very preliminary version - Semantic Scholar

15 downloads 0 Views 620KB Size Report
Nov 21, 1997 - EVW94] Herbert Edelsbrunner, Pavel Valtr, and Emo Welzl. Cutting ... NY, June 6{8, 1994, Computational geometry, Mehlhorn, Kurt, New York,.
k -sets

and j -facets - A tour of discrete geometry A very preliminary version

Artur Andrzejak Emo Welzl ETH Zurich, Departement Informatik ETH Zentrum, 8092 Zurich [email protected] [email protected] November 21, 1997 Abstract This paper gives an account of the most important facts about k-sets, j -facets and k-levels. First, we describe the fundamental properties of the objects under discussion and some related ones. We also show connections between them. In the next part, we list the historical as well as the currently best bounds on the number of k-sets (or, equivalently, bounds on the complexity of k-levels). Then, we illustrate several proof methods for bounding the maximal numbers of k-sets both from below and above. In the last part, we present applications of k-levels and k-sets, mostly in the eld of computational geometry.

Contents 1 Introduction and examples

3

2 The di erent forms of k-sets

11

2.1 k-sets, halving hyperplanes and ( k)-sets . . . . . . . . . . . . . . . . . . 11 2.2 j -facets, halving facets, ( j )-facets and related notions . . . . . . . . . . . 13 2.3 Geometric duality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 1

2.4 2.5 2.6 2.7 2.8

Vertices of level j . . . . . . . . . . . k-levels and upper k-levels . . . . . . Extentions of k-levels . . . . . . . . . Allowable sequences and pseudolines The k-set polytopes . . . . . . . . . .

3 Known bounds

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

3.1 Results for the planar case . . . . . . . . . . . . . 3.1.1 k-sets and j -facets in the planar case . . . 3.1.2 ( k)-sets and ( j )-facets in planar case . 3.2 Results in R3 and higher dimensions . . . . . . . 3.2.1 k-sets and j -facets . . . . . . . . . . . . . 3.2.2 ( k)-sets and ( j )-facets . . . . . . . . . 3.3 Results for special cases and variations . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

15 18 24 27 30

32 33 33 37 38 38 40 40

4 Proof techniques

43

5 Applications of k-sets and k-levels

65

4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8

5.1 5.2 5.3 5.4 5.5

Lower bounds on the maximum numbers of k-sets . . . . . . . . . . . . . . Relations between the numbers of k-sets and the numbers of j -facets . . . Identities for the numbers of crossings of k-segments . . . . . . . . . . . . . Lovasz crossing lemma in two and higher dimensions . . . . . . . . . . . . Upper bound on the number of induced halving planes in R3 . . . . . . . . Upper bounds on the number of halving hyperplanes for dimensions greater 3 Random sampling methods of Clarkson and Shor . . . . . . . . . . . . . . The f -matrix and the h-matrix of k-complexes . . . . . . . . . . . . . . . . Algorithms for nding k-sets and constructing k-levels Range searching problems . . . . . . . . . . . . . . . . Higher order Voronoi diagrams . . . . . . . . . . . . . . Orthogonal L1 line tting problem . . . . . . . . . . . Other applications of k-levels and ( k)-levels . . . . . 2

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

43 47 48 49 54 57 59 62

65 68 71 74 75

sec-examples

1 Introduction and examples In this section we introduce the reader into the topic with a series of examples, which show that k-sets can occur in a variety of settings, and \disguised" in di erent forms. Later, we present two applications of k-sets. Finally, we prove an upper bound on the number of k-sets in the plane and an upper bound on the number of related objects, so-called ( k)-sets.

k-sets. In both Figure 1 and 2 we have a con guration of four points in the plane. For

each point p in Figure 1 there is a halfplane containing only p. On the other hand, there is no halfplane containing solely point p4 in Figure 2. To formalize this observation, we de ne for k 2 f1; : : : ; n ? 1g a k-set of a con guration S of n points in the plane in the following way. It is a set A  S with k elements, such that there is a halfplane which contains only points in A. With this de nition, each fp1g, fp2g,fp3g,fp4g is a 1-set of the con guration in Figure 1. p1 p2

p4 p3

Figure 1: This con guration has four 1-sets

NS10a

p1 p4

p2

p3

Figure 2: This con guration S1 has three 1-sets

j-segments. For two points p1; p2 of S and an oriented line l containing p1 and p2 we

count the number of points on the positive side of l (without the points on l). If this number is j , then we call the segment of l between p1 and p2 an j -segment, see Figure 3. We understand that a j -segment is oriented. It is not hard to show that the number of k-sets is exactly the same as the number of (k ? 1)-segments for k 2 f1; : : : ; n ? 1g, see Section 4.2. For example, the con guration S1 has three 1-sets and it has obviously three 0-facets. 3

NS10b

l0

Figure 3: A 2-segment l0

NS20a

k-sets polytopes. Let Qk (S1) be the convex hull of the set ! S 1 Xk (S ) = f pjT 2 k g p2T X

for k 2 f1; : : : ; 4g. We are interested in Q2(S1), the 2-set polytope of S1. It is shown in Figure 4.

Figure 4: The 2-set polytope Q2(S1) of S1 Each vertex of Q2(S1) corresponds to a unique 2-set of S1 and each facet of Q2(S1) corresponds to a unique 1-segment of S1. This property carries on to higher dimensions. The advantage of the k-set polytopes is the fact that they allow a good visualization even if the number of k-sets is big.

Vertices of level k. To present the next notion closely related to k-sets we introduce the (paraboloidal) duality transformation D. It maps a point (p1; p2) 2 R2 to a line with equation x2 = 2p1 x1 ? p2 and a line with equation x2 = ax1 + b to a point (a=2; ?b). The result of the application of D to S1 in Figure 5 is a line arrangement A(D(S1)) shown in

Figure 5. We say that a vertex v (i.e. an intersection of two lines) of A(D(S1)) has level k, k 2 f0; : : : ; n ? 2g, if there are exactly k lines above v. We have marked all vertices with level 1 in Figure 5. 4

DS5c

D( 3) p

D( 1 ) D( 4) p

D( 2)

p

p

Figure 5: The line arrangement A(D(S1)) with marked vertices of level 1

DS10a

Each vertex of level k corresponds to a unique k-facet of S1. Conversely, each k-facet of S1 corresponds to a unique vertex of level k in A(D(S1 )) or to a unique vertex of level n ? 2 ? k. This is easy to see when one knows that D is order-preserving, i.e. if p is a point above a line l, the line D(p) (image of p under D) is below the point D(l). By this property of D it also follows that each k-set of S1 corresponds to a unique, closed cell of A(D(S1)) or to a unique pair of open cells of A(D(S1)). Conversely, for each closed or open cell of A(D(S1)) there is a unique k-set of S1.

Upper k-levels. More complex constructions in A(D(S1)) are upper k-levels. For a point p 2 R2, let a(p), o(p) and b(p) denote the number of hyperplanes which lie above p, contain p, or lie below p, respectively. For a k 2 f0; : : : ; n ? 1g, an upper k-level is the the set of all points with

a(p)  k

b(p)  n ? k ? 1:

and

Figure 6 shows the upper 1-level of A(D(S1 )).

D(p3 ) D(p1 ) D(p4 )

D(p2 )

Figure 6: The upper 1-level of A(D(S1)) 5

DS15a

What can we say about the (combinatorial) complexity of an upper k-level, i.e. the number of its vertices ? We will show in Section 2.5 that every vertex of an upper k-level has level j 2 f0; : : : ; n?2g with k ?1  j  k. Thus, for k  1 this complexity is bounded by the number of (k ? 1)-facets plus the number of k-facets of S1 - or, equivalently, by the number of k-sets plus the number (k + 1)-sets of S1. Finding upper bounds on the complexity of k-levels is one of the most important applications of the k-set problem.

Two applications of k-sets. The rst application are points moving on a line. Let

A be a set of n points on a vertical line. Each point p has position p0 at time 0 and a constant speed ps (positive if p moves upward). We say that p is at position k at time t if it is the kth point from above at time t, for k 2 f1; : : : ; ng . The problem is to calculate the sequence Pk (A) of points at position k when time goes from ?1 to +1, see Figure 7. Obviously the computation of Pk (A) is equivalent to the computation of the upper (k ? 1)-level of the arrangement of trajectories of the points in A. p1 p2

p3 p4 t

=0

Figure 7: The point p2 is at position 2 at time t = 0 As we have seen earlier, the complexity of Pk (A) is bounded from above by the maximum number of (k ? 1)-sets plus the maximum number of k-sets of a con guration of n points in R2. It is worth mentioning that by the same considerations we can bound from above complexity of parametric uniform matroid optimization, see Section 2.6. An important notion in computational geometry are higher order Voronoi diagrams. Let S 0 be a set of n points in Rd, d > 0. For a given subset A0  S 0 with jA0j = k, the associated order k Voronoi region, in symbol vor(A0), is the set of points in Rd whose closest k neighbors in S 0 are points in A0. The nonempty order k Voronoi regions form a partition of Rd, called the order k Voronoi diagram of S 0. To show the link to the k-sets, we identify Rd with the hyperplane xd+1 = 0 in Rd+1. We project vertically every point p 2 S 0 onto the point p lying on the unit paraboloid U : xd+1 = x21 + : : : + x2d. Let E (p) denote the hyperplane tangent to U at p. By nding 6

DS30a

E () E () a

E ( )

b

d

E () c

a

b

vor(a; b)

c

d

vor(b; c) vor(c; d)

Figure 8: A 2nd order Voronoi diagram of four points in R1 the hyperplane E (p) for each point p 2 S 0 we obtain an arrangement A(E (S 0)) of n hyperplanes in Rd+1. In Section 5.3 we will show that every nonempty order k Voronoi region is a vertical projection of a unique cell lying directly below the upper (k ? 1)-level of A(E (S 0)), see Figure 8. Furthermore, each such cell yields a di erent order k Voronoi region. Analogously as in R2, each cell lying directly below an upper (k ? 1)-level corresponds to a k-set of some set S 00 of n points in Rd+1 (but in general S 00 has more k-sets than there are such cells). We see that the maximum number of k-sets of n points in Rd+1 bounds from above the complexity (number of regions) of order k Voronoi diagrams for n points in Rd.

Upper bounds on the number of k-sets. The central still unsolved problem is \Given n and k 2 f1; : : : ; n ? 1g, what is the maximum number of k-sets which can occur in any planar con guration of n points ?" This is the so-called k-set problem (here in the planar version).

p

We would like to give the proof of the very rst upper bound O(n k) on the number of k-sets found by Lovasz in 1971. (The currently best bound by Dey [Dey] is O(nk1=3)). Throughout this section, let S be a con guration of n points in the plane. We assume that S is in general position, i.e. no three points of S are on a common line. 7

DS25a

We will use the Lovasz crossing lemma: Any line in R2 intersects at most 2(j + 1) j -segments.

This lemma will be proved in Section 4.4 by basic geometric arguments. See Figure 9 for an example. l

Figure 9: The line l intersects four 1-segments

NS20b

To show the upper bound we put into the plane x parallel lines such that S is partitioned into x +1 blocks of cardinality at most dn=xe each (x will be determined later). Obviously there are at most ! d n=x e (x + 1) 2

(k ? 1)-segments with both endpoints in the same block. A (k ? 1)-segment of any other kind must cross one of our x lines, so by Lovasz crossing lemma we see that the number of such (k ? 1)-segments is at most 2xk. We can maximize the total possible number of (k ? 1)-segments, i.e. the expression ! d n=x e (x + 1) 2 + 2xk

p

p

by choosing x to be cn= k, where c is a constant. In this way we obtain O(n k) as the upper bound for the maximum number of k-sets in the plane. 2

Exact number of ( k)-sets. A notion related to a k-set is a ( k)-set (pronounce \at most k-set"). For k 2 f1; : : : ; n ? 1g, a ( k)-set is any i-set for i = 1; : : : ; k. While

bounding the maximum number of k-sets is a hard problem, it is easy to give an exact maximum number of ( k)-sets for any n and k 2 f1; : : : ; n ? 1g. In following, we will restate the proof of Peck from [Pec85] and show that this maximum number is exactly nk for k < n=2. First, we need some additional de nitions. For any j -segment l0, a j -facet is the oriented line containing l0. A j -facet is oriented in the same way as the corresponding j -segment. 8

For any j 2 f0; : : : ; n ? 2g, a ( j )-facet is any i-facet for i = 0; : : : ; j . By the mentioned relation between numbers of k-sets and numbers of (k?1)-segments, the maximumnumber of ( (k ? 1))-facets equals the maximum number of ( k)-sets for k 2 f1; : : : ; n ? 1g. [Pec85] Every point of S is contained in at most 2(j + 1) ( j )-facets.

Proof: Consider a point p of S . Every pair of ( j )-facets incident to p determine four quadrants. We call the one quadrant which lies on the negative sides of both ( j )-facets a good one (for this pair of ( j )-facets). We show by induction on the number of ( j )facets incident to p that there is always a pair of ( j )-facets incident to p whose good quadrant is empty, i.e. contains no part of other ( j )-facet incident to p, see Figure 10. For two ( j )-facets incident to p the situation is clear. Assume that we add a new ( j )-facet incident to p and it splits the current good and empty quadrant. Then this quadrant is split into two regions and one of them is still good and empty, so the induction holds. l1

good and empty quadrant

l2

p

Figure 10: The negative sides of l1 and l2 de ne the good and empty quadrant Let l1 and l2 be the two ( j )-facets determining the good, empty quadrant. Then the other three quadrants of l1 and l2 have together at most 2j points of S , since each l1 and l2 have at most j points on their positive sides. It follows that p lies on at most 2j + 2 ( j )-facets (inclusive l1 and l2), since every other point de ning a ( j )-facet together with p must lie in one of the three quadrants other that good and empty one. Note that the condition j < n=2 ? 1 ensures that no two points of S induce more than one ( j )-facet. 2 Now we sum up all ( j )-facets incident to every point p of S . Since every ( j )-facet is counted twice, we see that the maximum number of ( j )-facets is at most n(j + 1) for j < n=2 ? 1. The shown upper bound nk on the number of ( k)-sets is also sharp. To see this, let S be a set of n points on a boundary of a circle. For any 1  k  n ? 1, consider a line inducing a k-set R. We move this line in such a way that the \leftmost" point of R is excluded and a neighbor of the \rightmost" point of R is included in a new k-set. 9

NS20c

Proceeding in this way, we obtain all n k-sets. Obviously the total number of ( k)-sets is nk.

10

s-structures

2 The di erent forms of k-sets In this section we pursue two aims. First, we de ne k-sets and a variety of objects closely related to k-sets, for example via geometric duality. (The de nitions and notations are stated at the beginning of each subsection). Furthermore we discuss in more detail the connections between di erent objects. (This happens in a further part of each subsection). The reader is encouraged to use this section in a twofold way: as a reference for the remaining parts of this paper and as a source of fundamental facts about the connections between di erent \disguises" of k-sets.

Conventions and general de nitions. Throughout this paper we use the following

symbols and de nitions. S denotes a set of n points of Rd in general position, i.e. for k = 1; : : : ; d + 1 every subset of k points is ane independent. T denotes a set of n non-vertical hyperplanes in Rd in general position, i.e. the corresponding hyperplane arrangement A(T ) is simple. We assume that the dimension d is xed and greater one. For an oriented hyperplane h in Rd let h+ denote the (open) halfspace on the positive side of h and h? the open halfspace on the negative side of h. An oriented hyperplane h in Rd not containing the xd-axis is said to be oriented upwardly if it contains (0; : : : ; 0; +1) on its positive side, otherwise it is oriented downwardly. We assume that the reader is familiar with the basic geometrical de nitions, as to be found in [Ede87, Zie94]. Especially we will use the de nitions of a polyhedra, polytope, face of a polytope, convex hull, ane hull, cell complex, boundary of a cell complex, lower envelope, upper envelope. Recall that for a i 2 f0; : : : ; dg, an i-face of a polytope is a face of dimension i. We call the 0-faces vertices, the 1-faces edges, the (d ? 1)-faces outer facets and the d-faces cells or regions. (The term i-facet will be used in a di erent setting, see Section 2.2.)

2.1 k-sets, halving hyperplanes and ( k)-sets For k = 1; : : : ; n ? 1, a k-set of S is a subset R of k points in S such that there is a hyperplane disjoint from S with R on one side and S nR on the other. We call such a hyperplane a k-hyperplane ; if it is convenient, we will assume that it is oriented and has a k-set on its positive side. In Figure 1 a 1-hyperplane is shown; the corresponding k-set is fp1g. We denote by ek (S ) the number of k-sets of a set S . We are mainly interested in the maximum number of k-sets which a set of n points can have in Rd. To this aim we de ne ek(d; n) = jSj=max ek (S ): n;S Rd 11

If the dimension d is clear, we may also write ek (n) for ek (d; n). Obviously we have

ek (S ) = en?k (S ) and therefore ek (d; n) = en?k (d; n): Trivially, e1(d; n) = n for any d and n. As another example, we have e2(2; 4) = 6; a con guration S having six 2-sets is shown in Figure 2. If n is even and k = n=2, then a k-hyperplane induces two k-sets of S . Let us generalize the notion of a k-hyperplane for this case. A halving hyperplane of S is an oriented hyperplane h containing n mod 2 points of S such that there are bn=2c points of S on each side of h. In R2 we speak about halving lines and in R3 about halving planes. As the number of halving hyperplanes of S we understand the number of di erent partitions (S \ h?; S \ h; S \ h+ ) induced by halving hyperplanes h of S . This number will be denoted as e1=2(S ). Again, we put

e1=2(d; n) = jSj=max e1=2(S ): n;S Rd Clearly we have en=2(S ) = 2e1=2(S ) for an even n and e(n?1)=2(S ) = 2e1=2(S ) for an odd n. The special importance of the halving hyperplanes comes from the fact that lower bounds for the number of halving hyperplanes imply lower bounds for the number of k-sets for any k, see Section 4.1. Although not common in the literature, the following de nition is helpful to keep apart di erent objects all of which are named as the \halving hyperplanes" by di erent authors. Let n ? d be even. An induced halving plane is a hyperplane containing d points of Rd with (n ? d)=2 points on each side. We denote the number of induced halving hyperplanes by e_1=2(S ) and its maximum over all sets S  Rd by e_1=2(d; n). An important variation of the de ned notions are the ( k)-sets (pronounce: \at most k-sets"). For any k = 1; : : : ; n ? 1, a ( k)-set is any i-set for i = 1; : : : ; k. Thus, every 1-set and every 2-set is a ( 2)-set. We write Ek (S ) for the number of the ( k)-sets of S and Ek (d; n) for the maximum number of ( k)-set overPall con gurations S of n P k d points in R . Note that Ek (S ) = i=1 ei(S ), but Ek (d; n) = ki=1 ei(d; n) does not hold in general.

General position assumption. We may assume that S is in general position as the

number ek (d; n) is especially realized by a set S with such property [EW85]. To see this, assume that S0 is a set of n points in Rd with ek (d; n) = ek (S0). Each k-set and its corresponding (n ? k)-set are determined by some hyperplane. The arrangement of these hyperplanes partitions Rd into open regions. Within each region we may move the points of S0 without changing the numbers of k-sets. Therefore we may perturb these points in such a way that we obtain a set S in general position with ek (S ) = ek (S0). 12

s-j-facets

2.2 j-facets, halving facets, ( j)-facets and related notions A hyperplane de ning a k-set is by de nition disjoint from S . By changing this assumption we obtain the objects described below. They are more useful in proofs of upper bounds on the numbers of k-sets (in fact, very few such proofs use a de nition of a k-set directly). For j = 0; : : : ; n ? d, a j -facet is an oriented hyperplane that contains d points of S and has j points on its positive side. In Figure 3 a 2-faces is marked with dashed line. We write gj (S ) for the number of j -facets of S and gj (d; n) for the maximum number of j -facets of a set of n points in Rd. (It is possible to generalize the notion of a j -facet in the following way. An oriented hyperplane h is called an (i; j )-facet of S if h contains i points of S and has j points of S on its positive side. We will use this de nition in Section 2.8.) Clearly we have gk (S ) = gn?k?d (S ) and so gk (d; n) = gn?k?d (d; n). For an even n, an (n ? d)=2-facet has the same number of points on each positive and negative side. We call such facet a halving facet. The number of halving facets of S is denoted as g1=2(S ). As before, let g1=2(d; n) denote the maximum number of halving facets for any con guration of n points in Rd. For almost every j , a j -facet might be characterized by the points which it contains. This leads us to the following de nitions. For j 2 f0; : : : ; n ? dg, and a j -facet h let P be the set of d points of S contained in h. Then the convex hull conv(P ) is called a j -simplex. (Be aware that the standard meaning of a \t-simplex" is a simplex of dimension t. Here our j -simplices have xed dimension d ? 1). In R2 we speak about j -segments and in R3 about j -triangles. Figure 9 shows some 1-segments of a point con guration. If n ? d is even and j = (n ? d)=2, than a j -simplex is called a halving simplex. In R2 we call halving simplices halving segments and in R3 we call them halving triangles. Obviously for a xed S and any j 2 f0; : : : ; n ? dg, j 6= (n ? d)=2 there are exactly as many j -simplices as j -facets. On the other hand, there are twice as many halving facets as halving simplices (for even n). For k-sets we have introduced \at most k-sets". We have an analogous de nition for the j -facets. For any j = 0; : : : ; n ? d, a ( j )-facet (pronounce: \at most j -facet") is any i-facet for i = 0; : : : ; j . We denote by Gj (S ) the number of ( j )-facets of S . The meaning of Gk (d; n) should be clear. Relations between numbers of k-set and numbers of j-facets. After introducing both k-sets and j -facets, it is natural to ask about the relationships between the numbers of these objects. As indicated above, this question is especially important for proofs of upper bounds on the number of k-sets. 13

Section 4.2 discuss in more detail the following relations. Let S be a con guration of points. For d = 2 and k 2 f1; : : : ; n ? 1g we have ek (S ) = fk?1(S ). For d = 3 we have e1(S ) = g0(S )=2+2 and for k 2 f2; : : : ; n ? 2g it holds ek (S ) = (gk?2 (S )+ gk?1(S ))=2+2. Finally, for any dimension and any xed k 2 f1; : : : ; n ? dg we have ek (d; n) = O(gk (d; n)) and gk (d; n) = O(eminfk+2d?2;n?1g (d; n)), i.e. ek (d; n) is asymptotically equal fk (d; n) for a xed k. sec:gd

2.3 Geometric duality A (geometrical) duality transformation maps points to hyperplanes and vice versa. The most important property are incidence and order preservation explained below. We will use in this paper mostly a duality transformation called paraboloidal transformation as de ned in [Ede87, Mul94]. There are also other transformations for both Euclidean and projective space which preserve incidence and order, see [CGL85, CP86, Mul94]. The paraboloidal transformation. The paraboloidal transformation D maps a point p = (p1; : : : ; pd ) in Rd to the hyperplane D(p) with equation xd = 2p1x1 + 2p2x2 + : : : 2pd?1 xd?1 ? pd: Vice versa, a non-vertical hyperplane h with equation xd = h1x1 + h2x2 + : : : + hd?1 xd?1 + hd is mapped by D to the point D(h) = (h1=2; h2=2; : : : ; hd?1=2; ?hd ): If S is a set of points in Rd, then D(S ) should denote the set of hyperplanes obtained by applying D to the elements of S . Conversely, for a set T of non-vertical hyperplanes in Rd let D(T ) denote the set of points obtained by applying D to T . Whenever D maps one or more points to one or more hyperplanes or vice versa, we will use the following conventions. The set of points is said to be in primary space, while the set of hyperplanes is in dual space. The most important property of D is the preservation of order and incidence relations. For a point p and a (non-vertical) hyperplane h in Rd we have the following properties:

(D1) Incidence preservation : p lies on h if and only if point D(h) lies on hyperplane D(p). (D2) Order preservation : p lies above h if and only if point D(h) lies above the hyperplane D(p) (the same property holds with \above" interchanged by \below"). For a more detailed discussion of D see Section 1.4 and 3.1 of [Ede87]. 14

s-vertices-levj

2.4 Vertices of level j This section prepares the reader for the introduction of k-levels. It explains the \building blocks" of k-levels and brings them in relation to j -facets. Our de nitions follow Mulmuley [Mul94]. Let T be a set of n non-vertical hyperplanes in a general position in Rd and A(T ) its arrangement. We choose a base point (origin) o 2 Rd. The level of a point p 2 Rd is the number of hyperplanes which strictly separate p and o. The level of an i-face (where i is the dimension of the face) of A(T ) is the level of any point in the interior of the face. We denote as Vj (H ) or as Vj the set of vertices of A(T ) of level j 2 f0; : : : ; n ? dg. Note that a level of a vertex of an arrangement is at most n ? d.

Vertices of level j and j-facets. The considerations below will help the reader to

understand the link between the j -facets and vertices of level j . Consider the con guration S1 in Figure 2 and the dual arrangement A(D(S1 )) shown in Figure 5. Assume that the base point in Figure 5 is located at (0; +1). Then each vertex v of level 1 in A(D(S1)) is mapped by D to a line D(v) containing two points of S1 such that there is exactly one point of S1 above D(v). (This is due to the properties D1 and D2 of D). Obviously D(v) is a 1-facet. Note that only a part of 1-facets of S1 arise in this way. The 1-facets l of S1 which are oriented downwardly (i.e., have the one point below l) are mapped by D to a vertex D(l) of level n ? 3 = 1 (here n = jS1j = 4). The following lemma generalizes this observation. The proof is straightforward.

lem:2bijec

Lemma 1 Let T be an arrangement of n hyperplanes with the base point o located in (0; : : : ; 0; +1). Let S = D(T ) and j 2 f0; : : : ; n ? dg. Then (i) There is a bijection between the vertices of level j in A(T ) and j -facets of S oriented upwardly.

(ii) There is a bijection between the vertices of level n ? d ? j and j -facets of S oriented downwardly.

(iii) It holds that gj (S ) = jVj j + jVn?d?j j for every j 2 f0; : : : ; n ? dg. We see that every vertex is mapped twice: to an j -facet oriented upwardly and to an (n ? d ? j )-facet oriented downwardly. These both facets share the same (not oriented) hyperplane.

The choice of the base point. For any arrangement, the base point o can be chosen freely. Do the maximum values of jV0j; : : : ; jVn?d j depend on the choice of o ? The answer 15

is "yes": if the base point is located in (0; : : : ; 0; ?1) or in (0; : : : ; 0; +1), as o1 in Figure 11, then obviously jV0j cannot reach n. But if we place the base point in a closed cell of an arrangement A(T ) as o2 in Figure 11, we obtain jV0j = n. o1

o2

Figure 11: An arrangement and two possible base points

f-11-6-5

To get a better insight into this problem, we introduce a transformation of an arrangement A(T ) together with a chosen base point by means of spherical arrangements. We assume that our space Rd is embedded in a d-dimensional hyperplane G with equation xd+1 = 1 in Rd+1. For every h 2 T let a(h) be the d-dimensional hyperplane containing h and the origin of Rd+1. We refer to a(h) as to projective hyperplane of h. Consider a d-dimensional sphere B in Rd+1 with radius 1 and the center located in the origin of Rd+1. Then the spherical arrangement B(T ) is created by the intersections of all a(h), h 2 T with B (in an analogous way as A(H ) is created by the intersections of all h, h 2 T with G). We call the great arc which is the intersection of B with the plane with equation xd+1 = 0 the horizon. We write Bu (H ) for the part of B(H ) above the horizon (i.e., the arrangement created by the intersections of all a(h), h 2 T with the open halfsphere of B above the horizon). For every point p 2 G let b(p) be the intersection of the line segment in Rd+1 between p and the origin of Rd+1 (i.e., b(p) is a point in B above the horizon). Obviously we obtain A(T ) by projecting Bu(T ) onto the hyperplane G with the origin of Rd+1 as the center of projection. If we project a point on the horizon in the same way, it becomes a direction in G. In this way, if the base point o is located at (0; : : : ; 0; +1), then there is a unique point on the horizon denoted as b(o) corresponding to o. ()

a o

v

horizon

Figure 12: A vertex v disappears below the horizon 16

f-13-6-5

If we rotate the sphere B we can possibly change Bu (T ) and therefore A(T ), but not B(T ). Observe that if a vertex v of Bu (T ) has "disappeared" below the horizon, then the antipodal vertex v0 of v has "appeared" in the new arrangement Bu (T ) on the opposite side of the horizon, see Figure 12. If v was in Vj for some j 2 f0; : : : ; n ? dg before the rotation, then the number of vertices in Vj decreases afterwards, as v leaves Vj . Simultaneously, v0 becomes an element of Vn?d?j , as the great halfcircle between v and v0 which contains b(o) intersects exactly n ? d (spherical) hyperplanes in B . Thus, jVn?d?j j increases by one. Especially, we can transform each arrangement A1 = A(T ) with base point located in a closed cell into an arrangement A2 with base point located in a (0; : : : ; 0; +1) or in (0; : : : ; 0; ?1) in such a way that

jVj (T )j + jVn?d?j (T )j remain constant for all j 2 f0; : : : ; n ? dg. Combining this result with Lemma 1, we obtain the following proposition: p-13-6-2

Proposition 2 Let T be a set on n hyperplanes in Rd and S = D(T ). Then for every choice of the base point and for every j 2 f0; : : : ; n ? dg we have gj (S ) = jVj (T )j + jVn?d?j (T )j: Furthermore, these equations are invariant under transformations of A(T ) due to rotations of the sphere containing the spherical arrangement B(T ). The maximum values of jVj j's. By Proposition 2 we have bounds jVj j  gj (S ), j 2 f0; : : : ; n ? dg for the maximum values of jVj j in terms of the numbers of j -facets.

But are these bounds sharp ? We will discuss this question in the following. Assume that S is a con guration of n points with S = D(T ). For j 2 f0; : : : ; n ? dg, let Wj be the union Vj [ Vn?d?j (if j 6= n ? d ? j , then Vj and Vn?d?j are disjunct). For each j 2 f0; : : : ; n ? dg, Wj corresponds (i.e., there is a bijection) to the set W j of vertices v of the spherical arrangement B(T ) for which the shortest arc between b(o) and v intersects exactly j spherical hyperplanes in B . The vertices of W j above the horizon are exactly all b(v), v 2 Vj and the vertices of W j below the horizon are the antipodal vertices of all vertices b(v), v 2 Vn?d?j . Is it possible that Vj = Wj for any j 2 f0; : : : ; n ? dg ? We have seen in Figure 11 that it is the case for the choice o2 as the base point and j = 0. Obviously we have Vj = Wj only if all W j are above the horizon. It follows easily that b(o) cannot be located at the horizon, i.e., the base point of A(T ) must not be located at (0; : : : ; 0; +1) or at (0; : : : ; 0; ?1). 17

Assume that Vj = Wj for some j 2 f0; : : : ; n ? dg. It is not hard to see that the points on the boundary of the convex hull of Vj have level at least j . It follows that for each i 2 f0; : : : ; j ? 1g the vertices of Vi are in the convex hull of Vj . But then for each i 2 f0; : : : ; j ? 1g the (spherical) vertices of W i are all above the horizon, and so Vi = Wi for all i 2 f0; : : : ; j ? 1g. This gives us yet another consequence. If Vj = Wj , then Vn?d?j = ; for any j 6= (n ? d)=2. Then Vn?d = Vn?d?1 =  = Vn?d?j = ; by the previous statement. It follows that j  n ? d ? j (taking into account the case j = (n ? d)=2). Therefore, for any j > (n ? d)=2 we always have jVj j < jWj j. We have just shown the following theorem: t-13-6-5

Theorem 3 Let S be a set of n points, T = D(S ) and o a base point of A(T ). Then (i) If o is located at (0; : : : ; 0; +1) or at (0; : : : ; 0; ?1), then jVj j < gj (S ) for all j 2 f0; : : : ; n ? dg. (ii) If jVj j = gj (S ) for some j 2 f0; : : : ; n ? dg, then jVij = gi (S ) for all i 2 f0; : : : ; j ? 1g and so Vn?d?i = ; for all i 2 f0; : : : ; j ? 1g. (iii) If j > (n ? d)=2, then jVj j < gj (S ) for every choice of the base point o.

ss-k-levelsbasics

2.5 k-levels and upper k-levels The notion of a k-level is fundamental for many geometric structures like hyperplane arrangements or Voronoi diagrams. k-levels are linked to k-sets by the fact that the combinatorial complexity of a k-level essentially equals the number of k-sets in the dual setting. It is in general easier to bound the number of k-sets than to cope with k-levels, and so upper bounds on the number of k-sets nd here an important application. In this section we will present some alternate de nitions of k-levels and some their generalizations. We also treat the relationships between k-sets and k-levels and derive upper bounds on complexity of k-levels in terms of the numbers of k-sets and k-facets.

k-levels, upper k-levels and ( k)-levels. Let T be a set of n non-vertical hyperplanes in a general position in Rd and A(T ) its arrangement. We choose a base point o 2 Rd. For k 2 f0; : : : ; n ? 1g, a k-level `k (T ) or `k in A(T ) is the boundary of the collection of the faces in A(T ) with level less or equal to k. Figure 13 shows some k-levels in a line arrangement in R2.

18

o, basepoint 0-level

2-level

Figure 13: Some k-levels in a line arrangement For k 2 f0; : : : ; n ? 1g, a ( k)-level (say: at-most-k level) Lk (T ) is the union of i-levels for 0  i  k. An important special case of k-levels occurs when the base point o is located in (0; :::; 0; +1) or in (0; :::; 0; ?1). In the rst case we call a k-level an upper k-level. In the latter case a k-level is called an lower k-level. Note that an upper k-level is the same as a lower (n ? k ? 1)-level. Figure 6 shows an upper 1-level of an arrangement of four lines in R2. There are also alternative characterizations of upper k-levels [Ede87]. For a point p 2 Rd, let a(p), o(p) and b(p) denote the number of hyperplanes which lie above p, contain p, or lie below p, respectively. It is not hard to see that for k 2 f0; : : : ; n ? 1g, an upper k-level is the set of all points p with

a(p)  k

b(p)  n ? k ? 1:

and

Yet in other words, an upper k-level is the set of all points that lie below or on at least k + 1 hyperplanes and above or on at least n ? k hyperplanes. Following properties hold for upper k-levels of an arragement A(T ) (see Section 3.2 of [Ede87]).

 A k-level of A(T ) intersects every vertical line in exactly one point.  For any i; j with 0  i  j < n, every translate l of the xd axis intersects the i-level at a point with xd coordinate not less than the xd coordinate of the intersection of l with the j -level. This implies that the levels are ordered in natural way, i.e. for i  j the i-level is \above" the j -level. 19

gKL2

k-levels and vertices of level j. Consider a vertex v 2 Vj , j 2 f0; : : : ; n ? dg as in

Figure 14. A ray r from o which goes suciently close to v intersects points of levels `j ; `j+1; : : : ; `j+d?1 (in this order) belonging to the hyperplanes de ning v.

`j o

`j+2

`j+1

r

v

Figure 14: The vertex v 2 Vj is contained in levels `j ; : : : ; `j+d?1 Generalizing this observation, we obtain the following proposition: p-16-6-2

Proposition 4 Let T be a set of n hyperplanes and o its base point. (i) A point p is contained in i di erent k-levels of A(T ) if and only if it is contained in

i hyperplanes of T . (ii) For any j 2 f0; : : : ; n ? dg, a vertex in Vj (T ) is contained exactly in the levels `j ; : : : ; `j+d?1 . (iii) For every k 2 f0; : : : ; n ? 1g, a vertex of a k-level `k is in Vj where k ? d +1  j  k and j 2 f0; : : : ; n ? dg.

Upper k-levels and k-sets. In Lemma 1 we have obtained a correspondence between vertices of level j in A(T ) and j -facets of D(T ). Due to the properties of the mapping D we have a similar relationship between cells of A(T ) and the k-sets of D(T ). We will

derive this relationship in the following. Temporarily we extend the notion of a k-set and de ne both a 0-set and an n-set as the empty set. Let p be a point in the interior of a cell of A(T ) such that there are k hyperplanes above p or k hyperplanes below p, for k 2 f0; : : : ; ng. (If k 2 f1; : : : ; n ? 1g, then the cell containing p lies directly below an upper (k ? 1)-level or directly below an upper (n ? k ? 1)-level of A(T )). Then, by the properties D1 and D2 of D, the hyperplane D(p) de nes a k-set in D(T ), i.e. D(p) has k points on one side and contains no points of D(T ). But this gives us no bijection yet, as for every unbounded cell there is another unbounded cell corresponding to the same k-set. To obtain a bijection, let us de ne a projective cell of A(T ) as follows. Any bounded cell or unbounded cell which ts between parallel hyperplanes is a projective cell. For any other type of cell c let c0 be the cell of A(T ) such that for any hyperplane h 2 T , c and c0 are on the opposite sides of h. Then the union of c and c0 is a projective cell. 20

f-16-6-1

For a k 2 f0; : : : ; ng, a k-partition is a set fA; D(T )nAg, where A is a k-set of D(T ) (and obviously D(T )nA is an (n ? k)-set). l-1-7-2

Lemma 5 There is a bijection between the k-partitions of D(T ) (for all k = 0; : : : ; n) and the projective cells of A(T ). To show this lemma note that if a cell c is bounded or it ts between two parallel hyperplanes, then it is the only one which de nes a k-partition of D(T ) for a certain k. It is not hard to see that for any cell c of another kind there is exactly one cell c0 which de nes the same k-partition as c. Furthermore, c and c0 lie on the opposite side of every hyperplane h 2 T. As shown in Section 3 of [Ede87], the maximum number of projective cells of A(T ) is d?i n! d X X i (?1) j ; j =0

i=0

and this number is achieved if and only if A(T ) is simple. We conclude that d?i n! d nX ?1 X X i ei(d; n) = 2 (?1) j ? 2; i=1

i=0

j =0

as both the 0-set and the n-set of D(T ) correspond to the same projective cell.

k-levels and concave chains in R2. Assume in the following that we have a xed arrangement A(T ) of n lines in R2 and k 2 f1; : : : ; n ? 2g. If we traverse the upper k-level `k from x1 = ?1 to x1 = +1, then at each vertex v 2 Vk the upper k-level makes

a \left turn", i.e. `k passes from a line with a smaller slope to a line with a larger slope. On the other hand, `k makes a \right turn" at each vertex in Vk?1 . Agarwal, Aronov and Sharir [AAS] use this fact to de ne concave chains c1; : : : ; ck described below. The notion of concave chains occurs in the proof of the currently best upper bound on ek (2; n) by Dey [Dey]. For each i 2 f1; : : : ; kg, the concave chain ci starts at x1 = ?1 along the line in A(T ) with the i-th smallest slope. It is not hard to see that such a line reaches `k in a vertex v 2 Vk?1 . At the vertex v 2 Vk?1 the concave chain ci \turns left", i.e. it continues along the other line incident to v. (So ci merely \touches" `k , as `k makes a \right turn" at v.) Then, each time the line followed by ci reaches `k , ci \turns left" again. Obviously ci is an x1-monotone concave polygonal curve contained in the union of the lines in T , and it bends left only at vertices in Vk?1 . The concave chains have following properties, as stated in [AAS]. 21

(i) The union c1 [ : : : [ ck covers the part of A(T ) lying above the upper k-level `k . Except

for the vertices of the concave chains, this union lies strictly above `k . (ii) The chains are vertex-disjoint and edge-disjoint, but they cross each other. (Bounding the number of these crossings is an important part of the proof in [Dey]). (iii) All the vertices of the concave chains lie on the lower envelope of the chains. Every vertex of each concave chain lies below all the convex chains not incident to this vertex, as every chain lies fully above the upper k-level.

Complexity of k-levels. The complexity j`k (T )j or j`k j of a k-level `k (T ) of an arrangement A(T ) is the number of faces of the part of the arrangement included in `k (T ). This

number is related to the number of k-facets and plays an important role in the analysis of the algorithms which use k-levels. The complexity jLk (T )j or jLk j of an ( k)-level Lk (T ) is de ned analogously. Let us start with lower bounds on the maximum complexity of a k-level.

KL40-1

Proposition 6 Let T be a set of n hyperplanes and o a base point. (i) The maximum complexity of a k-level of A(T ) is in

(minfgj (d; n)j maxf0; k ? d + 1g  j  minfk; n ? dgg): (ii) The maximum complexity of an upper k-level (i.e., if o is located at (0; : : : ; 0; +1)) is in (ek+1 (d; n)).

Proof: To (i): By Proposition 4(ii) and (iii) every vertex in minf[ k;n?dg

j =maxf0;k?d+1g

Vj

is contained in a k-level `k (T ). Therefore j`k (T )j  d minfjVj (T )j : maxf0; k ? d + 1g  j  minfk; n ? dgg: By Proposition 2 we have jVj (T )j + jVn?d?j (T )j = gj (T ), and so the statement follows (is the last conclusion correct?)

To (ii): (See Section 3.2 of [Ede87]). Let c be a cell of A(T ) which determines (by the transformation D) a set fA; D(T )nAg, where A is a (k + 1)-set of D(T ) and k 2 f0; : : : ; n ? 2g. Then c contributes at least one facet to the k-level or to the (n ? k)-level of A(T ). This completes the proof. 2 Following proposition gives us upper bounds on the complexity of a k-level. 22

KL40-2

Proposition 7 Let T be a set of n hyperplanes and o a base point. (i) The complexity of a k-level of A(T ) is in O(maxfgj (d; n)j maxf0; k ? d + 1g  j  minfk; n ? dgg): (ii) The complexity of an upper k-level (i.e., if o is located at (0; : : : ; 0; +1)) is in O(maxfej (d; n)jk ? d + 2  j  k + d ? 1g): Proof: To (i): By Proposition 4(iii) and Proposition 2 the number of vertices of `k (T ) is

at most

minfX k;n?dg

j =maxf0;k?d+1g

jVj j  d maxfgj (d; n)j maxf0; k ? d + 1g  j  minfk; n ? dgg:

The claim follows, since every face of `k (T ) is incident upon at least one vertex of `k (T ) and every vertex of `k (T ) is incident to at most constant number of faces of A(T ). To (ii): The statement is shown in Section 3.2 of [Ede87] as Theorem 3.3. 2 To obtain explicit upper and lower bounds on the maximum complexity of a k-level the reader should substitute in Propositions 6 and 7 the (actual best) upper bounds on the number of k-sets or on the number of j -facets (see Section 3). As for the ( k)-levels, asymptotically tight complexity bounds can be given. Due to a result in [CS89], the maximum number of ( k)-facets of a set of n points in Rd is (nbd=2ckdd=2e). Combining this result with Propositions 6 and 7, we obtain the following theorem: t-2-7-3

Theorem 8 The maximum complexity of a ( k)-level in an arrangement of n hyperplanes in Rd is in (nbd=2ck dd=2e).

This result is used frequently, for example in [Mat92, AM95, AHL90].

Related notions. Edelsbrunner and Welzl introduce in [EW86a] the notion of a k-belt bk for an arrangement of n non-vertical lines in R2, where 0  k  dn=2e. A k-belt is a set of points p such that b(p) + o(p)  k and a(p) + o(p)  k. The 0-belt is the whole plane, and for k  1 a k-belt is bounded above by the upper (k ? 1)-level and below by the upper (n ? k)-level, as can be easily seen. The complexity jbk j of a k-belt bk is de ned as the number of faces on its boundary. Therefore jbk j = j`k?1 (T )j + j`n?k (T )j for k 2 f1; : : : ; dn=2eg. As shown in [EW86a], we have jb1j = e1(D(T )) and jbkj = ek?1(D(T )) + ek (D(T )) for 2  k  d(n ? 1)=2e. 23

The concept of a k-hull introduced by Cole, Sharir and Yap in [CSY87] is (essentially) the dual of the notion of a k-belt. A k-hull of S is a subset S 0  S of points p in R2 such that for any line l through p there are at least k points of S lying in each closed half-plane de ned by l. For 1  k  dn=3e, the k-hull of S is always nonempty (this is a consequence of Helly's Theorem) and so we may assume 1  k  dn=3e. s-ext-k-lev

2.6 Extentions of k-levels In this section we have both the defitions and results (which preferably

on-curves on-curv-surf

should be included in the section on results!).

( k)-facets from arrangements of curves and surfaces. In [Sha91] Sharir extends the notion of k-facets and ( k)-facets to arrangements of curves and surfaces. The idea of this generalization can be explained as follows. By the duality transformation D, a j -facet of a set S in the plane corresponds to a vertex v of level j or of level n ? 2 ? j in the arrangement A(D(S )) (the base point is in (0; +1)). Assume the earlier case. Then v is covered by j halfplanes containing (0; ?1) which are determined by the j lines in D(S) above v. More general, v is a crossing of two lines and it is in the interior of j regions determined by j other lines. Sharir's generalization allows curves instead of lines. We state now the precise de nition. Let ? = ( 1; : : : ; n) be a set of n closed Jordan curves or unbounded Jordan arcs in the plane. As usual, the curves should be in general position, i.e. no three of them meet at the same point and no pair of them is tangent. For each curve i designate as Ki one of the two open regions into which this curve separates the plane. Then a j -point is a point of the plane contained in exactly j regions Ki1 ; : : :Kij for 0  j  n ? 2. Sharir de nes (unconventionally) a j -set as the set Sj of all crossing of two curves which are simultaneously j -points. In our terminology Sj correspond to the collection of dualized j -facets. We will hold to our terminology and call Sj a collection of j -facets from curves. Analogously, we call [k Sk = Sj j =0

a collection of ( k)-facets from curves. In the rst part of his paper Sharir focuses his attention on bounding from above the size of Sk . If each pair of curves intersect at most s times, then, trivially jSj j = O(n2). Already for s = 4 this bound is sharp by a grid-like construction. Adapting the probabilistic technique of Clarkson and Shor (see Section 4.7), Sharir proves following results for k  1:

 if s = 2, then jSk j  26nk, 24

 if s = 3, then jSk j = (nk (n=k)) (where (n) is the functional inverse of Ackermann's function),

 if all curves are unbounded and x-monotone then jSk j = (k2s (n=k)) (where s (m) denotes the maximum length of (m; s)-Davenport-Schinzel sequences).

Note that s (m) is a slightly superlinear (but almost linear) function of m for any xed s. Also higher-dimensional cases are treated in [Sha91]. Consider a collection  = 1; : : : ; n of surfaces in Rd such that each surface i is simple and separates Rd into two open connected regions. We call one of these two regions Ki for each i = 1; : : : ; n. Then Sk is the collection of all intersection points of d surfaces, which are covered by exactly k regions Ki. Again, Sk is the union [k Si: i=0

Also here the surfaces 1; : : : ; n are assumed to be in general position. For R   let G0(R) denote the set of all intersection points of d surfaces in R covered by none of the regions Ki with i 2 R. If a sharp bound G0(r) on jG0(R)j for jRj = r exist, then the probabilistic technique of Clarkson and Shore [CS89] yields a general bound O(kdG0(n=k)) for jSk j. There are two conclusions of this statement. First, for a collection of n spheres in Rd we have jSk j = O(ndd=2ekbd=2c): The other conclusion is valid (essentially) for surfaces of n semi-in nite vertical triangular prisms in R3. In this case we have jSk j = O(n2k (n=k)).

k-sets and ( k)-facets for bicolored sets of points. In [Lin93b] and [Lin93a] the

following generalization of the k-set problem is considered. Let T be a set of n oriented hyperplanes in Rd and A(T ) its arrangement, which is assumed to be simple. A cell of A(T ) has weight k if it is on the positive sides of k hyperplanes in T . Let hk (T ) be the number of cells of weight k for k = 0; : : : ; n. The aim is to nd the maxima

hk (d; n) = max h (T ) for k = 0; : : : ; n T k where T is any set of n oriented hyperplanes in Rd. Notice that if all hyperplanes in T are oriented upwardly, then for k = 1; : : : ; n ? 1 the number hk (d; n) is exactly ek (d; n) by the duality transformation D (see also Section 2.5). Another way to interpret hk (T ) is to assign to each hyperplane in T oriented upwardly color red and each other hyperplane in T color blue. By the duality transformation D, this yields \red" and \blue" points in D(h). Each cell of A(T ) with weight k corresponds then to a partition (P1; P2) of the set D(T ). Such partition has the following property: 25

there is a hyperplane h in the dual space which separates D(T ) in P1 and P2 and the number of \red" points above h plus the number of \blue" points below h is exactly k. In [Lin93b] Linhart shows the sharp upper bound (3n2 + 5)n=8 on the weighted sum n X k hk (T ) k=1

for any arrangement A(T ) in R2 for odd n (and conjectures the same bound for even n). The bound is attained by (almost) regular n-gons. In [Lin93a] the bounds hk (1; n) = k + 1 for k  n=2 and hk (2; n)  (2k + 1)(n + 1)=3 for k  n=2 are shown. Furthermore, there is also an upper bound ! n+1 2d d?1 d + 1 (n ? d + 1)(n ? d + 2) (k + 1) = O(kn ) on hk (d; n). As remarked in the paper, the probabilistic method of Clarkson and Shor [CS89] gives the bound hk (d; n) = O(nbd=2ckdd=2e) and so the former bound is of interest only for d = 2 and d = 3. In [Lin94] Linhart introduces the notion of the weight of a vertex v of a simple arrangement A(T ), which is the number of hyperplanes in T such that v is on their positive sides. Let Hk(T ) be the number of vertices of A(T ) with weights at most k, i.e., with weights 0; : : : ; k for k in the range 0; : : : ; n ? d. If all hyperplanes in T are oriented upwardly, then Hk(T ) is the number of ( k)-facets oriented upwardly of the point set D(T ). Let Hk(d; n) be the maximum of Hk(T ) over all simple arrangements of n oriented hyperplanes in Rd. Then we have the following upper bounds: 8 > for d = 2; < (k + 1)n  Hk (d; n)  > (k + 1)(k + 2)(3n ? 2k ? 6)=3 for d = 3; : (k + 1)(k + 2)(3n ? 2k ? 9)n=12 for d = 4: These bounds are valid for all k  n ? d and are sharp for all k < (n ? d)=2. on-matroids

k-sets and parametric optimization for uniform matroids. Eppstein [Epp95] de-

scribes the connection between the k-set problem and the problem of parametric optimization for uniform matroids, as pointed out by Katoh [Kat]. It is closely related to the problem of points moving on a line, see Section 1. A uniform matroid Ukn of rank k on n elements consists of a ground set P , jP j = n and the collection of all subsets of P with cardinality k, called bases of Ukn . For i = 1; : : : ; n, we assign each element pi 2 P a weight ait + bi, where t is a real number called parameter. For a xed value of t, a minimum weight base is a base of Ukn with minimum sum of weight of its elements. The question considered by Katoh is the following one: what is the maximal length lk (n) 26

of the sequence of minimum weight bases as t goes from ?1 to +1? We show in the following that lk (n) = (ek?1(2; n) + ek (2; n)). For each i = 1; : : : ; n we replace the weights ait + bi by (ai + x)t + bi where x 2 R is chosen such that all new weight functions have positive slope. (Note that the sequence of minimum weight bases is not changed). We plot the weight functions of the points in P with t as the coordinate on the horizontal axis. This gives an arrangement A(T ) composed of n lines; see Figure 7 for an example with n = 4. Obviously the number of minimum weight base changes is the same as the number of vertices on the lower (k ? 1)-level (or upper (n ? k)-level). By symmetry and Propositions 6 and 7 the maximal number of such vertices if (ek?1(2; n) + ek(2; n)) (Eppstein gives a more careful analysis and shows that lk (n)  ek (2; n) and ek (2; n)  2lk (n)). SSalseq on-circ-seq

2.7 Allowable sequences and pseudolines The concept of allowable sequences allows to transform the geometric problems connected to k-sets into combinatorial ones. An extended treatment of allowable sequences S is given by Goodman and Pollack in [GP93] and by Edelsbrunner in Chapter 2 of [Ede87].

Circular sequences. Let S 2 R2 be a set of n points in general position. A connecting

line of S is a line passing through two points of S (i.e., a (non-oriented) j -facet of S , for some j 2 f0; : : : ; n ? 2g). We may assume that no two connecting lines of S are parallel. We label the points in S with numbers 1; 2; : : : ; n, see Figure 15. Let l be a directed line not orthogonal to any connecting line of S . We project orthogonally the points of S onto l and obtain some permutation of f1; : : : ; ng. Let l rotate counterclockwise, say, about some xed point. Every time l passes through a direction orthogonal to a connecting line of S a new permutation arises. As l rotates we get an (in nite) sequence of permutations called a circular sequence C (S ) of S . We say that S induces this circular sequence. 2 1

l

3 4

Figure 15: Obtaining a circular sequence of a set of 4 points We call a pair (P1, P2) of two consecutive pertutations in C (S ) a switch at position k, 1  k  n ? 1, if i1; i2 2 f1; : : : ; ng are at positions k and k + 1 in P1, respectively, and i1 and i2 are at positions k + 1, k in P2, respectively. (We also say that i1, i2 switch). Note that i1 and i2 switch when l passes a direction orthogonal to a line through points 27

f-18-7-1

in S labeled as i1 and i2. Observe that after l has rotated by , the current permutation is exactly the reversal of the one we started with. It follows that every label has switched with each other, and so there are at least n(n ? 1)=2 switches. It is not hard to show the following two properties of circular sequences. 1. Two subsequent permutations in C (S ) form a switch. 2. In any subsequence of n(n ? 1)=2 + 1 permutations of C (S ) each of the n(n ? 1)=2 switches occurs exactly once. It follows that the period of C (S ) is n(n ? 1). Note that if R  S is a k-set, then all labels of points in R will occur in the leftmost k positions in some permutation of the circular sequence C (S ). Clearly there is a one{to{one correspondence between k-sets of S and all distinct sets of labels in the k leftmost positions of a permutation in C (S ). This is the key property which makes circular sequences a tool for counting k-sets. Allowable k-sets. We generalize the notion of circular sequences in the following way. An in nite sequence C of permutations of f1; : : : ; ng is called a (simple) allowable sequence (or n{sequence for short) if it satis es Properties 1 and 2. Let us de ne a set of numbers in the k leftmost positions of a permutation in an allowable sequence C as an allowable k-set, 1  k  n ? 1. We see that the number of allowable k-sets of C is exactly the number of switches at position k occurring in C . We denote as ek (2; n) the maximum number of allowable k-sets among all allowable sequences of f1; : : : ; ng. Let Ek (2; n) be an analogous quantity for the allowable ( k)-sets. If an allowable sequence C is also a circular sequence, i.e. if it arises from a set of n points, then it is called realizable. There are non{realizable n-sequences already for n = 5, see Section 2.3 of [Ede87]. Obviously ek (2; n)  ek (2; n) for every k 2 f1; : : : ; n ? 1g, but because of the existence of non{realizable n-sequences it is unknown whether also ek (2; n)  ek (2; n) holds. The only way to obtain lower bounds on the maximum number of k-sets or ( k)-sets in R2 from n-sequences is to show lower bounds on the number of allowable k-sets or ( k){sets which hold for every n-sequence (or which hold for every allowable sequence in a class containing all realizable n-sequences). This method has been applied by Edelsbrunner, Hasan, Seidel and Shen in [EHSS89] to show that for any allowable  the number of allowable ( k)-sets is at least k+1 sequence of such suitableclass k +1 3 2 . It follows that Ek (2; n)  3 2 .

Pseudolines. For a set S on n points in R2 labeled with 1; : : : ; n, let A(T ) be the arrangement of lines obtained by the duality transformation D (see Section 2.3). Let us

label the lines in the same way as the corresponding points. We scan the arrangement 28

A(T ) from left to right by a vertical line and record the order of the lines from bottom to top. In this way we obtain a sequence of permutations of f1; : : : ; ng. It turns out

that this sequence is a half period of the circular sequence of S (if the rotating line l of the circular sequence starts the rotation when it is horizontal and directed to the right). Thus, instead of obtaining a circular sequence from a con guration of points in S we can obtain it from the associated dual arrangement D(S ). In the most proofs about combinatorial properties of arrangements of lines the fact that lines are straight has no importance. In spite of this, it is useful to regard arrangements of pseudolines. A pseudoline is an x{monotone curve in R2. An arrangement of pseudolines is a nite set of pseudolines such that every two pseudolines are either disjoint or they meet in a single point and cross in this point. Two arrangements of pseudolines are isomorphic if their face lattices (de ned in the usual way) are isomorphic under the mapping induced by their labelings. An arrangement of pseudolines is called stretchable if it is isomorphic to an arrangement of straight lines. In the same way as we have obtained (a halfperiod) of a circular sequence from an arrangement of n (non{vertical) lines, we can obtain a circular sequence of an arrangement of n pseudolines. It is not hard to see that we can obtain every allowable sequence as the circular sequence of an arrangement of pseudolines. By the above discussion, a circular sequence of an arrangement of n pseudolines is stretchable if and only if it is also a circular sequence of a con guration of points (i.e., if it is realizable). Two isomorphic arrangements of pseudolines yield the same circular sequence. Therefore, the number of allowable k-sets in an allowable sequence of an arrangement of n pseudolines depends only on the isomorphism class of the arrangement of pseudolines. This property has been used by Felsner [Fel] to show that a set of 10 points in R2 can have at most 13 halving lines. Felsner generated all possible non{isomorphic arrangements of 10 pseudolines and checked that none of them allowed more than 13 halving lines (no matter if stretchable or not). By nding a stretchable arrangement of 10 lines with required property he then completed the proof that e1=2(2; 10) = 13.

Results from allowable sequences. The technique of allowable sequences used to

bound the numbers of k-sets turned out to be fruitful. We summarize brie y which results could be obtained in this way:

p

{ the n k bound for ek (2; n) [EW86a], { Pi2K ei(S ) = O(n (Pi2K i)1=2) for any set S of n points in f1; 2; : : : ; bn=2cg [Wel86], { Ek (2; n) = nk [AG86], 29

R2

and K 

{ Ek (2; n)  3

k+1 2

[EHSS89],

{ the average number of allowable n=2{sets for even n is (4=)n + O(1) [Ede92]. Yet, as noted in [GP93], \apart from this last theorem of Edelman, allowable sequences have not played any role in the dramatic new results about this problem in the past ... years".

A lower bound on the maximum number of allowable n=2-sets in the plane. The best known lower bound for ek (2; n) is still (n log(k + 1)). On the other hand, Klawe, Paterson and Pippenger [KPP82] showed but never published a lower bound

n1+ (1=

plog n)

on the maximal number en=2(2; n) of allowable n=2-sets of an allowable sequence. The proof is constructive (it is an arrangement of pseudolines) yet the corresponding allowable sequence is not known to be realizable. If this is the case, this would imply a new lower bound for ek (2; n). Otherwise, this result would show that there are asymptotically more allowable k-sets than (geometric) k-sets, a question raised in [EW86a]. (As mentioned above, it is not known whether there are k, n, 1  k  n ? 1 with ek (2; n) > ek (2; n)). The above construction is described in Section 4.1. ks-polytopes

2.8 The k-set polytopes For k 2 f1; : : : ; ng, let Qk (S ) be the convex hull of the set ! X S Xk (S ) = f pjT 2 k g: p2T We call Qk (S ) a k-set polytope of S . See Figure 4 for an example of a 2-set polytope. The k-set polytopes have been rst used in [EVW94] to obtain results on the number of k-set of dense point sets. In [AW97a] the k-set polytopes in R3 are used to obtain a formula for the vector (e1(S ); : : : ; en?1(S )), if (g0(S ); : : : ; gn?3 (S )) is given and vice versa. We discuss this application below. The important connection to k-sets and j -facets is the fact that there is a (natural) bijection between the k-sets of S and the vertices of Qk (S ). Furthermore, each face of Qk (S ) corresponds to a j -facet of S for a certain j . The following theorem shown in [AW97a] describes this in more detail. (Recall that an oriented hyperplane h is called an (i; j )-facet of S if h contains i points of S and has j points of S on its positive side.)

KP30-1

Theorem 9 Let S be a set of n points in general position in Rd. 30



(a) For k 2 f1; : : : ; n ? 1g, T 2 Sk is a k-set of S if and only if Pp2T p is a vertex of Qk (S ). (b) Let h be a hyperplane with normal vector c, say, such that h is an (j1; j2)-facet of S for integers j1  1, j2  0. Then for each j3 = 1; : : : ; j1 there is ahyperplane h1 with normal vector c which contains a face F of Qj2 +j3 (S ) with jj13 vertices. We say that h induces F in Qj2 +j3 (S ). (c) For k 2 f1; : : : ; n ? 1g and a face F of Qk (S ), there is a (j1; j2)-facet of S which induces F , where j1  1 and j2  0 are integers. If F has dimension d ? 1, then h is unique.

It is also worth mentioning that for k 2 f2; : : : ; n ? 1g, the polytope Qk (S ) in Rd is simplicial if and only if d  3.

Relations between the numbers of k-sets and the numbers of j-facets in R3. The above theorem can be easily used to derive a formula to calculate the vector (e1(S ); : : : ; en?1(S )), if (g0(S ); : : : ; gn?3 (S )) is given and vice versa, for R3.

KP40-1

Corollary 10 For a set S0 of n points in general position we have:

and

e1(S0) = 12 g0(S0) + 2; ek (S0) = 12 (gk?1 (S0) + gk?2 (S0)) + 2 for k = 2; : : : ; n ? 2 en?1 (S0) = 21 gn?3 (S0) + 2;

g0(S0) = 2 e1(S0) ? 4; k X gk (S0) = 2 (?1)i+k ei+1(S0) + 2(?1)k+1 ? 2 for k = 1; : : : ; n ? 3: i=0

Proof: For i = 0; 1; 2 let Ri denote the number of i-dimensional faces of Qk (S ). Consider k = 1 rst. Each 2-dimensional face of Qk (S ) has 3 vertices. Thus, by Theorem 9 each such a face of Q1(S ) can be induced only by a unique (3; 0)-facet of S and every (3; 0)-facet of S induces a 2-dimensional face of Q1(S ). An (3; 0)-facet of S is a 0-facet of S , and so R2 = g0(S ). Furthermore, R0 = e1(S ) and R1 = 3=2R2 as Qk (S ) is simplicial. Because of R2 ? R1 + R0 ? 2 = 0 (Euler's formula) we obtain e1(S ) = 21 g0(S ) + 2. Now let k 2 f2; : : : ; n ? 2g. If F is a 2-dimensional face of Qk (S ), then by Theorem 9 the face F has been induced by a unique (3; k ? 1)-facet of S (with j3 = 1) or by a unique (3; k ? 2)-facet of S (with j3 = 2). Again, we have R2 = gk?1 (S ) + gk?2(S ). Using

R1 = 3=2R2 and Euler's formula we obtain ek = 21 (gk?1 (S0) + gk?2 (S0)) + 2. The formulas for gi0s can be obtained from the shown relations by some straightforward calculations. 2 31

knownbounds

3 Known bounds In this section we overview the known lower and upper bounds on the numbers of k-sets, j -sets, ( k)-sets and ( j )-facets. We classify these results according to the dimension. We treat also results of special cases or variations of the k-set problem, e.g. the expected number of k-sets. Table 1 gives an overview over the most important symbols which have been introduced in Section 2. number for a xed point set S maximum number in Rd maximum number of halving hyperplanes/facets maximum number of induced halving hyperplanes expected number in Rd for prob. distribution P maximum number for dense point sets maximum number of allowable sequences ek (2; n)

k-sets

j-facets

ek (S ) ek (d; n) e1=2(d; n) e_1=2(d; n) ek (d; n; P ) + ek (d; n) gj (2; n)

gj (S ) gj (d; n) g1=2(d; n) gj(d; n; P )

( k)-sets ( j)-facets number for a xed point set S Ek (S ) Gj (S ) d maximum number in R Ek (d; n) Gj (d; n)  maximum number of allowable sequences Ek (2; n) Gk (2; n) Table 1: Overview of the most important symbols The problem to nd matching lower and upper bounds on the maximum number of ksets or j -facets is still open. The gap between known lower and upper bounds is the greater the higher the dimension. Besides the applications of k-sets and j -facets, it is the mathematical challenge of this problem which makes it so central in the combinatorial geometry. The following facts are important to interpret the results. First, the numbers of k-sets and the numbers of k-facets are asymptotically equal for every xed dimension. For R2 and R3 there are even formulas which give the exact numbers e1(S ); : : : ; en?1 (S ) if g0(S ); : : : ; gn?d (S ) are known and vice versa. For example, we have ek (S ) = gk?1 (S ) for all k = 1; : : : ; n. It follows that it is sucient to show asymptotic bounds only for j -facets (what is easier in general). Such bounds are also valid for k-sets. 32

tabSV12

The second important fact is that lower bounds on the maximum number of halving hyperplanes (k = n=2) imply lower bounds on the numbers of k-sets for k 6= n=2. For example, a lower bound (n log n) on e1=2(2; n) implies ek (2; n) = (n log(k + 1)) for any k 2 f1; : : : ; n ? 1g. An analogous statement holds for j -facets. Also frequently an upper bound on the number of halving hyperplanes can be extended to an upper bound on the number of k-sets. In spite of this fact most research is concentrated on bounding the numbers of halving hyperplanes. Furthermore, an upper bound on the number of so-called allowable k-sets is also an upper bound on the number of (geometric) k-sets. This result is frequently used for proofs in R2. Opposite to the hardness of the k-set problem, there are asymptotically tight bounds on the maximum numbers of ( k)-sets and maximum numbers of ( j )-facets for any dimension. The constructions realizing these numbers are cyclic polytopes. For R2 and R3, also the exact number of ( k )-sets and ( j )-facets are known. For R4, the exact number of closely related objects is also known. Finally, the asymptotic upper bounds for ( j )-facets have been generalized for arrangements of curves or hypersurfaces (in dual setting).

3.1 Results for the planar case The planar case has received the most extensive treatment in the literature. Nevertheless, there is still a gap between the currently best lower bound (n log(k +1)) and the currently best upper bound O(nk1=3) on the maximum number of k-sets.

3.1.1 k-sets and j-facets in the planar case Lovasz wrote the very rst paper [Lov71] on k-sets. It is dedicated to induced halving p planes. Its main result is the bound e_1=2(n) = n n on the number of these objects. The proof of this bound is similar to the one given in Section 1. The paper introduces the important Lovasz crossing lemma, which was already mentioned in Section 1 and is shown in Section 4.4. The re nement of this lemma appeared in the paper [ELSS73] by Erd}os, Lovasz, Simmons and Straus. The result of Lovasz from [Lov71] is generalized in [ELSS73] to arbitrary j facets. More precisely, an upper bound gk (2; n)  4 ((k + 1) n (n ? k + 1))1p=2 + 2 n on the number of jp-facets is proven. This implies immediately gk (2; n) = O(n k) and so ek (2; n) = O(n k). In addition to this result, also a lower bound (n log n) for the number of j -facets and k-sets is given. Up to now, this lower bound found by Simmons 33

dim. Objects

Symbol Bound

Source

2 2 2 2 2 2

k-sets halving lines k-sets allowable k-sets k-sets k-sets

ek (2; n) e1=2(2; n) ek (2; n) ek (2; n) ek (2; n) ek (2; n)

(n p log(k + 1)) O(npn) O(npk) O(npk) O(n k= log(k + 1)) O(nk1=3)

[ELSS73, EW85] [Lov71] [ELSS73] [EW85] [PSS92] [Dey]

3 3 3 3 3 3 3 3

k-sets k-sets k-sets halving planes halving planes halving planes halving planes k-sets

ek (3; n) ek (3; n) ek (3; n) e1=2(3; n) e1=2(3; n) e1=2(3; n) e1=2(3; n) ek (3; n)

(n2 log(k + 1)) O(n2k) O(nk4) O(n3?1=343) O(n8=3 log5=3 n) O(n8=3 log2=3 n) O(n8=3) O(n2k2=3)

[Ede87] [CSY87] [CP86] [BFL90] [ACE+91] [Epp93] [DE94] [DE94, AAS]

d > 3 halving hyperplanes e1=2(d; n) (nkd?2 log(k + 1) + nminfbd=2c;kg=k) [Ede87] d > 3 halving hyperplanes e1=2(d; n) O(nd?" ), " > 0 [BFL90, ZV92] [ABFK92, DE94] Table 2: A compilation of known lower and upper bounds for k-sets (known best bounds tab-tr5a are marked with ) (and independently by Edelsbrunner and Welzl [EW85]) could not be improved, although Klave, Paterson and Pippenger have constructed in [KPP82] an arrangement of pseudolines not known to be stretchable. It yields

n1+ (1=

plog n)

allowable n=2-sets (see Section 2.7 for de nitions and Section 4.1 for the proof). If this arrangement could be shown to be stretchable, then the above expression would be a new lower bound for e1=2(2; n). Although the proofs in [ELSS73] are mainly geometrical, the whole problem is tackled in the settings of graph theory. To this end authors de ne directed k-graphs Gk (S ), whose edges are k-segments for S and vertices are points in S incident to any k-segment. On this basis a number of graph-theoretical results is shown. Some theorems treat the connectivity of the graphs Gk (S ). Furthermore it is shown that each component of Gk (S ) has an oriented Euler circuit, because at each vertex of Gk the number of incoming edges is equal to the number of outgoing edges. There are also some results on the number of 34

dim. Objects 2 2 2 2

Symbol

( k)-sets Ek (2; n) allowable k-sets Pi2K ei(S ) allowable k-sets Ek (2; n) ( k)-sets Ek (2; n)

Bound

Source

 3 kP+1 2 O(n ( i2K i)1=2)

[EHSS89] [Wel86] [AG86] [Pec85]

 

= nk = nk

3 ( k)-sets Ek (3; n)

(nk2) [Ede87] 5 3 ( k)-sets Ek (3; n) O(nk ) [CP86] 2 3 ( k)-sets Ek (3; n) = n k ? k(k ? 1)(2k + 5)=3, k < n=4 [HPSW95] 3 ( k)-facets Gk (3; n) = (k + 1)(k + 2)(3n ? 2k ? 6)=3, k < n=4 [HPSW95] d > 1 ( k)-sets Ek (d; n) (nbd=2ckdd=2e) [CS89] Table 3: A compilation of known lower and upper bounds for ( k)-sets (known best tab-tr5b bounds are marked with )

dim. Objects

Symbol

Bound

+ e1=2(2; n) (n log n) 2 halving lines + e (2; n) O(n5=4= log  n) 2 halving lines 1=2 + e (3; n) O(n7=3) 3 halving planes 1=2 d > 2 halving hyperplanes + e1=2(d; n) O(nd?2=d ) Table 4: Lower and upper bounds for the numbers of k-sets for dense point sets ([EVW94])

vertices of a graph Gk (S ). In particular, it is shown that all points on the convex hull of S are vertices of every Gk (S ); that every point of S is a vertex of G(n?2)=2(S ); that Gk (S ) has at least k < (n ? 2)=2 vertices if k < (n ? 2)=2. Finally, for every v with 2 k + 3  v  n there exist S so that Gk (S ) has exactly v vertices. Yet another result is that the degree of the vertices of Gk (S ) does not exceed 2 k + 2. As far as we know, none of these properties has been used in later papers, but the graph-theoretical approach has been also applied in [PSS92] (see below). The interest in halfspace range searching problems lead to a rediscovery of the problem ten years later by Edelsbrunner and Welzl in [EW85]. In addition to some applications, the p authors gave the already known lower bound of (n log n) and the upper bound of O(n k) for ek (2; n). They used di erent techniques as in [ELSS73] to prove the upper bound, namely a combinatorial technique of allowable sequences (see Section 2.7). In [PSS92] Pach, and Szemeredi improved the upper bound for ek (2; n) from p p Steiger  O(n k) to O(n k= log (k + 1)). This result is obtained by \a slightly stronger blend of 35

tab-tr5c

dim. Objects 2 2

Symbol Bound

   (2k?1)(2(n?k)?1) 2k?2 2(n?k?1) e (2; n) k-sets k 22n?5 k?1 n?k?1 halving lines e1=2(2; n) (4=) + O(1) Table 5: Expected number of allowable k-sets ([Ede92])

dim. Symbol

Bound

prob. distribution

gj(2; n; P ) gj(2; n; P ) gj(2; n; P ), cn  j  n=2 gj(2; n; P ), j const.

(n log n) special O(n) spherically symmetric (n) uniform on a convex body (expected no. of uniform on a convex body vertices of conv(S ))  d > 2 gj (d; n; P ) O(nd?1) spherically symmetric Table 6: Expected number of j -facets ([BS94]) 2 2 2 2

tab-tr5d

geometry and combinatorics", i.e. the proofs are indeed non-trivial.

Best upper bound in the planar case. Dey [Dey] showed that the upper bound

on the maximum number ek (2; n) of planar k-sets is O(nk1=3). He uses the notion of concave chains above an upper (k ? 1)-level in an arrangement of n lines. (This idea has been introduced in [AAS], see also Section 2.5). Another component of the proof is a probabilistic technique of Szekely, also used in Section 4.5. The proof is surprisingly simple, although it gives a much better improvement of the upper bound than the involved proof in [PSS92]. Aronov and Welzl [AW97b] could give yet another proof of the bound ek (2; n) = O(nk1=3) by exploiting identities for the number of crossings of k-segments, see Section 4.3.

Lower and upper bounds for ek(2; n) for small k's. To close this section, we note

that following bounds are known for k = 1; 2; 3 and 4 [EW85, Sto84, ES86b]. We have e1(2; n) = n for n  2, e2(2; n) = b3 n=2c for n  4. Ramos shown in [Ram] that e3(2; n)  b11n=6c + 3 for n  6, what almost matches the lower bound b11n=6c on this quantity obtained by Stockl in [Sto84]. The latter author also shown in [Sto84] that 2n  e4(2; n)  2:5n for n  8.

36

tab-tr5e

dim. Objects 2 1 2 d>1 d>1

sum of cells of weight k cells of weight k cells of weight k cells of weight k cells of weight k

Symbol

Bound

Source

Pn kh (T ) k=1 k hk (1; n) hk (2; n) hk (d; n) hk (d; n)

 (3n2 + 5)n=8, n odd  k + 1, k  n=2  (2k + 1)(n + 1)=3, k  n=2

[Lin93b] [Lin93a] [Lin93a] n+1 2d d ? 1 d+1 (n?d+1)(n?d+2) (k + 1) = O(kn ) [Lin93a] O(nbd=2ckdd=2e) [Lin93a, C

2 vertices of weight  k Hk(2; n)  (k + 1)n [Lin94]  3 vertices of weight  k Hk (3; n)  (k + 1)(k + 2)(3n ? 2k ? 6)=3 [Lin94]  4 vertices of weight  k Hk (4; n)  (k + 1)(k + 2)(3n ? 2k ? 9)n=12 [Lin94] Table 7: Bounds on numbers of weighted cells and vertices in an arrangement of n oriented tab-tr5f hyperplanes

dim. ( k)-facets from

Bound

2 curves with  3 intersec.  26nk 2 curves with  4 intersec. (nk (n=k)) 2 unbounded, x-monotone curves (k2s (n=k)) d > 1 surfaces O(kdF0(n=k)) d > 1 spheres O(nbd=2ckdd=2e) 3 vert. triangular prisms O(n2k (n=k)) Table 8: Bounds on numbers of ( k)-sets from curves and surfaces ([Sha91])

3.1.2 ( k)-sets and ( j)-facets in planar case A good transition from the world of k-sets to the world of ( k)-sets is the following result of Welzl [Wel86]. For any K  f1; 2; : : : ; bn=2cg, we have X X X ei(S )  ei(S ) = O(n ( i)1=2): i2K

i2K

i2K

As a consequence, we have immediately Ek (2; n) = O(nk). The proof can be obtained by re ning the analysis of the maximum number of allowable k-sets of an allowable sequence of [EW85]. Exact number of ( k)-sets and ( j)-facets. Any convex set yields at least nk ( k)-sets. Thus, to show that Ek (2; n) = nk it is necessary to show Ek (2; n)  nk. The rst step towards this goal has been made by Goodman and Pollack in [GP93]. They show that Ek (2; n)  Ek (2; n)  2nk ? 2k2 ? k. As indicated, the proof uses the technique of allowable sequences. 37

tab-tr5f

This result could be improved to optimal Ek (2; n) = Ek (2; n) = nk by Alon and Gyoeri in [AG86]. Again, allowable sequences have been used. At the same time an easy, geometric proof for Ek (2; n)  nk is given by Peck in [Pec85]. Another lower bounds. A di erent kind of lower bound is obtained k+1 in [EHSS89] by Edelsbrunner, Hasan, Seidel and Shen. It is Ek (2; n)  Ek (S )  3 2 for any point set S. The second inequality is tight for k  n=3. The proof technique are allowable sequences, see Section 2.7 for more details.

3.2 Results in R3 and higher dimensions 3.2.1 k-sets and j-facets Lower bounds. Edelsbrunner gives in Section 3.5 of [Ede87] a lower bound e1=2(d; n) =

(nd?1 log n) which is an elaboration of an idea of Raimund Seidel. Problem P 3.3(d) of [Ede87] states the lower bound

ek (d; n) = (nkd?2 log(k + 1) + nminfbd=2c;kg=k) for k-sets with any k = 1; : : : ; n=2. More general, Edelsbrunner shows that if (g(n)) is a lower bound for a number of halving hyperplanes in Rd, then (n g(n)) is the lower bound for the number of halving hyperplanes in Rd+1. This result also implies that any upper bound for e1=2(3; n) better than O(n7=3) would give an upper bound for the number of halving lines in the plane better than the current best bound O(n4=3) of Dey [Dey].

Older upper bounds. Cole, Sharir and Yap have obtained in [CSY87] the very rst

non-trivial upper bound O(n2 k) for ek (3; n). Chazelle and Prepata showed in [CP86] that ek (3; n) = O(n k5). More exactly, they show that the number of ( k)-sets in R3 is bounded by O(n k5). From this result they follow that for any k, 1  k  n and any constant  > 0 there exists an integer i 2 [(1 ? )k; k] such that the number of i-sets is O(n k4). The trivial upper bound O(n3) for the maximum number e_1=2(3; n) of induced halving planes could be improved to O(n3?1=343) by Barany, Furedi and Lovasz in [BFL90]. To this end, the authors proved the planar version of the colored Tverberg's theorem (see Section 4.6) and a so-called covering theorem. A specialized version of it says that for every set S of n points in the plane there exists a set A with jAj < n1?1=343 which covers all but at most O(n3?1=343) triangles with vertices in S . From this result, the upper bound is easily obtained by the Lovasz crossing lemma for R3 (see Section 4.4). The methods 38

of [BFL90] could be later applied to give an sub-nd bound for e_1=2(d; n) after the general version of the colored Tverberg's theorem had been proved, see below. The result of [BFL90] for R3 could be improved to e_1=2(3; n) = O(n8=3 log5=3 n) by Aronov, Chazelle, Edelsbrunner, Guibas, Sharir and Wenger in [ACE+91]. Essentially, the authors showed that for any set S on n points of R2 and n3? triangles with vertices in S there exists a point of R2 contained in at least n3?3 =(29 log5 n) of the triangles. Also here an application of the Lovasz crossing lemma yields the desired result. David Eppstein could further improve the bound on e_1=2(3; n) to O(n8=3 log2=3 n) in [Epp93]. He uses similar approach as [ACE+91], but obtains a better lower bound on the number of triangles in the plane sharing a common point. More precisely, this lower bound is (m=n + m3=(n6 log2 n)), where m is the total number of planar triangles with vertices in a set of n points.

The best upper bound for e_ 1=2(3; n).

Dey and Edelsbrunner showed in [DE94] the currently best upper bound for the maximum number e_1=2(3; n) of induced halving planes. The hidden constant is about 2:5 and can be improved to 2. The main result says that for every set S of n points in R3 and every set of t triangles with vertices in S there are (t4=n6) crossing triangle pairs. In Section 4.5 we give a probabilistic proof of this theorem with improved constants. From this it can be easily followed that there is a line in R3 which crosses (t3=n6 ) of these triangles. A straightforward application of the Lovasz crossing lemma for R3 gives the upper bound. An improvement of the Lovasz Lemma by Agarwal, Aronov and Sharir [AAS] gives a bound e_1=2(3; n)= O(n2k2=3), which is better for small k's. O(n8=3)

Upper bounds in higher dimensions. Z ivaljevic and Vrecica showed in [ZV92] the

multicolored Tverberg's theorem (see Section 4.6). With this result they provide the missing link in the proof of Barany, Furedi and Lovasz indicated in [BFL90] of the upper bound e_1=2(d; n) = O(nd? ), (for some  > 0) for the number of induced halving hyperplanes in Rd. It is currently the best result for dimensions bigger 3. The proof of the multicolored Tverberg's theorem relies heavily on algebraic topology. The same upper bound is also stated and proved by Alon, Barany, Furedi and Kleitman in [ABFK92], where the multicolored Tverberg's theorem is assumed. We present this proof in Section 4.6. Matching lower and upper bounds for ek(d; n). We have (see [ES86b]) ek (d; n) = ek (d ? 1; n) for n  d and ! d + 1 ek (d; d + 1) = k : 39

By Problem P 3.3 (c) of [Ede87] we have

! n ek (d; n) = k for k  d=2: Edelsbrunner and Stockl showed in [ES86b]that  e2(3; 5) = 10 and e2(3; n) = 3n ? 6 for n n  6. Furthermore they showed e2(d; n) = 2 for 4  d  n ? 2.

3.2.2 ( k)-sets and ( j)-facets The rst known bound Ek (3; n) = O(n k5) for the number of ( k)-sets has been obtained by Chazelle and Prepata in [CP86].

Asymptotically tight bounds in R3. Clarkson and Shor showed in [CS89] an upper bound O(nbd=2ckdd=2e) for the maximumnumber Gk (d; n) of ( k)-facets in Rd, as k=n ! 0.

By the correspondence between the numbers of k-sets and numbers of j -facets (see Section 4.2) it follows that O(nbd=2ckdd=2e) is also an upper bound for the maximum number Ek (d; n) of ( k)-sets in Rd. The authors point out that both bounds are asymptotically tight, as especially cyclic polytopes realize the bounds. See Section 4.7 for proofs and some others consequences of the paper [CS89].

Exact number of ( k)-sets in R3. For R3 and k < n=4, Har-Peled, Seidel and Welzl showed in [HPSW95] that the maximum number of ( k)-sets and the maximum number of ( j )-facets is obtained when S is a set of vertices of a convex polytope. The numbers of ( k)-sets and the number of ( j )-facets in this case can be calculated for cyclic polytopes to be

Ek (3; n) = n k2 ? k(k ? 1)(2k + 5)=3 and Gk (3; n) = (k + 1)(k + 2)(3n ? 2k ? 6)=3:

3.3 Results for special cases and variations Dense point sets. A set S of n points in Rd is -dense if the ratio of the maximum and

minimum distance is at most  n1=d, for a  > 0. The set S is called simply dense if  is a constant. For this special choice of S Edelsbrunner, Valtr and Welzl gave in [EVW94] an upper bound O(n5=4= log n) for the number + e1=2(2; n) of halving lines in R2. This bound is better than the bound for the general case. The proof is mainly geometrical. Furthermore, also the construction from [EW85] for the lower bound e1=2(2; n) = (n log n) could be 40

adapted in [EVW94] so it holds for dense point sets, too. For higher dimensions the authors give better upper bounds than there are in general case. For R3 they obtain + e (3; n) = O(n7=3) and for d > 3 they state + e (d; n) = O(nd?2=d ). 1=2 1=2

Expected number of allowable k-sets. As mentioned earlier, allowable sequence allow

to extract easily the combinatorial properties of planar sets of points. Assume that every allowable sequence can occur with the same probability. What is then the average (i.e. expected) number of allowable k-sets of allowable sequences ? This question is raised and solved by Edelman in [Ede92]. By means of combinatorial analysis he obtains for this quantity the formula ! ! (2k ? 1)(2(n ? k) ? 1) 2k ? 2 2(n ? k ? 1) : 22n?5 k ?1 n?k?1 By an application of Stirling's formula Edelman obtains (4=) n + O(1) as the expected number of allowable n=2-sets for even n.

Expected number of j-facets. In [BS94] Barany and Steiger give a host of results

concerning the expected number gj(d; n; P ) of j -simplices when S is a random sample of n points from a probability distribution P on Rd. (We can regard the expected number of j -simplices as the expected number of j -facets because their numbers are equal for any j 6= (n ? d)=2 and otherwise there are twice as many j -facets as j -simplices). The authors show that there are probability distributions for which gj(2; n; P ) are large. They construct a distribution P for which gj(2; n; P ) = (n log n). For a spherically symmetric probability distribution P they obtain the relation gj(2; n; P ) = O(n). For P being an uniform probability distribution on a convex body K  R2 two cases can be distinguished. First, if j is in the range cn  j  n=2 for a constant c, then gj(2; n; P ) = (n). Otherwise, if j is a constant, then gj(2; n) is asymptotically the expected number of vertices of the convex hull of S . For higher dimensions they obtain the bound gj(d; n; P ) = O(nd?1 ) for a spherically symmetric probability distribution P .

Complexity of levels of line segments and triangles. Agarwal, Aronow and Sharir

[AAS] extend the notion of a k-level to arrangements of n line segments in R2 and n triangles in R3 in the following way. For a collection on n triangles in R3 and k 2 f0; : : : ; n ? 1g, the k-level is the set of all points which lie on a triangle and have exactly k other triangles below them (i.e., the relatively open vertical downward-directed ray emerging from such a point intersects exactly k triangles). For the segments in R2, the de nition is analogous. Under the assumption that segments or triangles are in general 41

position, the complexity of a k-level is the number of inner vertices, i.e. vertices which are incident to three distinct triangles (or two distinct segments). The authors show that the complexity of a single level of an arrangement of line segments in R2 is O(n3=2), and that the complexity of a single level in an arrangement of triangles in R3 is O(n17=6). Further extentions with corresponding results are described in Section 2.6. These are: ( k)-facets from arrangements of curves and surfaces and k-sets and ( k)-facets for bicolored sets of points.

42

4 Proof techniques onlower-bounds on-basics fundamentals

4.1 Lower bounds on the maximum numbers of k-sets \Recycled" lower bounds on the maximum number of k-sets. Lower bounds

on the maximum number of halving hyperplanes imply lower bounds on the maximum number of k-sets for arbitrary 1  k  n ? 1. For the plane, we have the following lemma taken from Section 3.4 of [Ede87].

LemBF35

Lemma 11 Let b(m) be a positive valued such that em(2; 2m)  2mb(m) for m  1. Then ek (2; n) = (nb(k)) for 1  k  n=2. The proof uses a geometrical construction. The key idea is to place bn=(2k)c sets of cardinality 2k each on the boundary of a circle. Each set should realize at least 2k b(k) halving lines (for itself). By suitably stretching and rotating this sets we can achieve a con guration such that at least half of the halving lines of each such set are also k-sets for the whole con guration. It follows that we have at least bn=(2k)ck b(k) many k-sets. A construction realizing (n log n) halving lines for a set of n points is presented in [ELSS73, EW86a] and Section 3.3 of [Ede87]. It gives us a positive valued function b(m) = log(2m) and so from the above lemma it follows that ek (2; n) = (n log(k + 1)) for 1  k  n=2. Lemma 11 can be extended to higher dimensions if we place sets of cardinality 2k each close to vertices of a cyclic polytope with bn=(2k)c vertices as indicated in Problem 3.3 of [Ede87]. We obtain then

ek (d; n) = (nkd?2 log(k + 1) + nminfd=2;kg=k) as the lower bound for the maximum number of k-sets in Rd for 1  k  n=2, since there is a lower bound (nd?1 log n) for e1=2(d; n) (see Section 3.5 of [Ede87]).

A lower bound on the maximum number of allowable n=2-sets in the plane. kpp-proof

We describe here a proof of a lower bound

p

n1+ (1= log n) on the maximum number en=2(2; n) of allowable n=2-sets of an allowable sequence by Klawe, Paterson and Pippenger [KPP82] (see also Section 2.7). For an arrangement of n pseudolines in the plane, n even, a median intersection is an intersection p of two pseudolines such that there are n=2 ? 1 pseudolines above p (and so below p). (We assume 43

Figure 16: An arrangement of two pseudolines

f-17-7-1

that each pseudoline is x-monotone and that every two pseudolines intersect at most once). To show the above bound we construct an arrangement An of n pseudolines with many median intersections, where n is even. In following we describe di erent \building blocks" of the construction, summarizing in an algorithm which creates a desired arrangement. We start with an arrangement of two pseudolines as in Figure 16. We call these pseudolines pseudolines of order 0, their set is denoted as C0. Let r be an even integer to be determined later. Each of the pseudolines in C0 is split into r pseudolines called pseudolines of order 1. Their set is denoted as C1. (These new pseudolines lie arbitrarily close to the original pseudoline). In general, for k > 0, a set Ck of pseudolines of order k is obtained by substituting each pseudoline in Ck?1 by r new pseudolines. a4 a3 a2 a1 b1 b2 b3 b4

Figure 17: A simple crossing of 8 pseudolines For every intersection of two pseudolines we obtain after a split a part of arrangement of pseudolines as in Figure 17 (there for r = 4). For every even r, we call such part of an arrangement a simple crossing of 2r pseudolines. If an intersection of 2r pseudolines is obtained from a median intersection of two pseudolines, then we have r median intersections in the simple crossing after the split. In Figure 17 the (possible) median intersections are encircled. In order to obtain more median intersections after a split, we introduce a modi cation of a simple crossing. Let us denote the 2r pseudolines in a simple crossing as ar ; ar?1; : : : ; a1; b1; b2; : : : ; br in the order in they appear from the top to the bottom on the left border, as in Figure 17. Then a twisted crossing of 2r pseudolines is obtained from a simple crossing as follows (see Figure 18). We intersect the pseudoline pairs ai+1; ai+2 for each i = 1; 3; : : : ; r ? 3 in the space below bi; bi+1 and above bi+2; bi+3. Furthermore, for each i = 1; 3; : : : ; r ? 1 we intersect the pseudoline pairs bi; bi+1 in the space just below ai+1 and possibly below ai+2. We say that the pseudolines a1; : : : ; ar have odd phase and the pseudolines b1; : : : ; br have even phase. 44

f-17-7-2

a1

b1

b2

a4

a3

a2

b3

b4

a6

a5

b5

b6

Figure 18: A twisted crossing of 12 pseudolines

f-17-7-3

If a twisted crossing of 2r pseudolines is obtained from a median intersection, then we have obviously 2r ? 1 median intersections in the crossing after the split. In Figure 18 the (possible) median intersections are encircled. As indicated above, we start with an arrangement of two pseudolines and split recursively each pseudoline until we have n pseudolines. Simultaneously we substitute each median intersection of two pseudolines of order k by a twisted crossing of 2r pseudolines of order k + 1. Every other (non-median) intersection of two pseudolines of order k is turned into a simple crossing. We have to ensure the condition that every two pseudolines in an arrangement intersect at most once. This condition may be violated if too many median intersections of a pseudoline are turned into twisted crossings. Assume that a pseudoline l of order k participates in j median intersections, which all are turned into twisted crossings. By the de nition of a median intersection l \enters" alternatively from above and from below into median intersections. Thus, the pseudolines obtained from l will have alternatively odd and even phases in the twisted crossings they participate in. For r = 4 this is shown in Figure 19. (Note that for every even r  4 such an arrangement represents an \odd-even transposition sort" discussed by Knuth in [Knu92]). It is not hard to see that after r twisted crossings every two pseudolines obtained from l have intersected each other and so these pseudolines cannot participate in any more twisted crossings. Thus, if j > r, then only the r rst median intersections of l will can turned into twisted crossings.

Figure 19: A sequence of odd and even phases of 4 pseudolines Summarizing, we obtain the following algorithm for constructing An. 1. Start with an arrangement of two pseudolines. 45

f-17-7-4

2. Split recursively each pseudoline into r pseudolines, until there is a pseudoline with more than r median intersections. In each step, every median intersection is turned into a twisted crossing and a non-median intersection is turned into a simple crossing. Let k be the nal order of the pseudolines. (Obviously for some values of n there is no An . But it is not hard to see that if n0 is the largest even integer smaller than n such that An0 exists, then we may add n ? n0 pseudolines to An0 without changing the number of median intersections. The asymptotic lower bound derived below will not change by this operation.) In following we determine r and bound from below the maximum number of median intersections in An. All logarithms have basis 2. First, observe (Figure 18) that each pseudoline with j median intersections is split into pseudolines which have at most 3j intersections each (with a little more e ort it can be shown that 3j can be interchanged with 2j ) and so 3k > r. Using the fact that we have n = 2rk pseudolines and that k > log r= log 3, we obtain 2r log 2 + log log 3 > log n;

and

q log r > (log n ? 1) log 3:

This yields

r > (n ? 1)

plog3=plog n?1

= n (1=

plog n)

:

By the properties of a twisted crossing, the number t(n) of median intersections of the pseudolines of order k is at least t(n) = (2r ? 1)k = 2k rk (1 ? 2=r)k . Therefore t(n)=n  2k?1 (1 ? 2=r)k . We obtain t(n)=n > 21 2log r= log 3(1 ? 2=r)k = 21 r1= log3 ? o(r1= log3);

p

and so p t(n)=n = n (1= log n): Consequently, we obtain an arrangement of pseudolines with n1+ (1= log n) median intersections. Note that it not possible to improve the lower bound for this construction by such modi cations as choosing di erent r's in each step (for example ri = 3i + 1 for i = 1; : : : ; k). This is due to the fact that t(n)=n is not greater than the maximum number of median intersections of a ( nal) pseudoline. The last quantity is boundedpby 3r. As already t(n)=n = (r1= log3), we could only improve the constants in (1= log n) for this construction, but not the asymptotic behavior of the lower bound. 46

If the arrangement An were stretchable, then by the duality transformation D we would immediately obtain a new lower bound on the maximum number of halving planes in R2. By Lemma 11 this would also imply the bounds

ek (2; n) = nk (1=

plog(k+1))

for every k 2 f1; : : : ; n ? 1g. These results could be also extended to higher dimensions as discussed in Section 4.1.

s-relations

4.2 Relations between the numbers of k-sets and the numbers of j-facets Consider the following question. For a xed con guration S of n points in Rd, is it possible to determine the vector (e1(S ); : : : ; en?1(S )) if the vector (g0(S ); : : : ; gn?d (S )) is known or vice versa? For d = 2 this problem is easy, it is shown below that both vectors are equal. For d = 3 each vector determines the other one as shown in [AW97a]. The formulas to \translate" the vectors are stated in Corollary 10. In [AW97a] it is shown that for d > 3 and a suciently large n there are pairs (S1; S2) of con gurations of points with (g0(S1); : : : ; gn?d (S1))=(g0(S2); : : : ; gn?d (S2)), yet with (e1(S1); : : : ; en?1(S1)) 6= (e1(S2); : : : ; en?1(S2)). Also in the other direction we have an analogous statement, i.e. there are con gurations S of points where the vector (g0(S ); : : : ; gn?d (S )) cannot be determined if only (e1(S ); : : : ; en?1(S )) is known. Nevertheless, we show below that for any dimension and any xed k 2 f1; : : : ; n ? dg we have ek (d; n) = O(gk (d; n)) and gk (d; n) = O(eminfk+2d?2;n?1g(d; n)): The statements of this section are important for proving upper bounds on the number of k-sets. This is due to the fact that most such proofs show upper bounds on the number of k-facets, and then the bounds are \translated". Relationships between ek(S) and gk(S) in R2. We have ek (S ) = gk?1 (S ) for 1  k  n ? 1 in R2. The following proof is taken from [Pec85]. Choose an oriented line l1 in the plane. Let l2 be an oriented line orthogonal to l1. We can always choose l2 in such a way that whole set S is on the positive side of l2 and we can sweep S by l2 going in the direction of l1. At some time during the sweep there are k points of S on the positive side of l2 unless l2 is parallel to a (k ? 1)-facet of S . Now let us rotate l1 about one of its points by 2. For each position of l1 repeat the sweep with l2. It is not hard to see that the obtained k-set changes each time l2 is parallel to a (k ? 1)-facet. Since we end with the same k-set we start with, the number of (k ? 1)-facets is the same as the number of k-sets. Clearly all possible k-sets and all possible (k ? 1)-facets occurred. ((NOT COMPLETE!))

47

s-identities

4.3 Identities for the numbers of crossings of k-segments Aronov and Welzl [AW97b] have obtained several identities which hold for every con guration of points. They interrelate, for example, the numbers of crossing pairs of j -segments and the degrees of considered points (i.e. the numbers of j -segments incident to a point). The identities give an alternative proof of the O(nk1=3) bound on the number of k-sets in R2 found by Dey [Dey]. First we consider halving segments in R2. Let S be a set of n points, n even, in R2. For a point p 2 S , let dp denote the number of halving segments incidents to p. We write C1=2 for the number of pairs of halving segments which intersect each other. Then we have: X (dp + 1)=2! n=2! (1) = 2 : C1=2 + 2 p2S

eq-25-8-1

In following, n might be even or odd. For a point p 2 S and an j 2 f0; : : : ; n ? 2g, we denote as gj (p) the number of outgoing j -segments of p (i.e. the j -segments oriented in such a way that they start in p). Recall that Gj (S ) is the number of ( j )-facets of S . For i; j 2 f0; : : : ; n=2 ? 1g, i < j , we denote as Ci the number of pairs of i-segments which intersect each other, and as Cij the number of pairs of an i-segment and an j -segment which intersect. Then we have for every 0  i  n=2 ? 1:

X

gi(p)(gi (p) ? 1) = 2Gi (S ):

(2)

e-25-8-2

For every pair i; j with 0  i < j  n=2 ? 1 we have X Cij + gi (p)(gj (p) ? 1) = 2Gi (S ):

(3)

e-25-8-3

2Ci +

p2S

p2S

((Possibly complete with other identities for R3!))

The Equation 1 gives immediately an upper bound O(n4=3) on the number of halving segments in R2. Consider S and the set E of halving segments as a graph H (S; E ) embedded in R2. By the result in [ACNS82], the number C1=2 of crossing edge pairs of H are in O(jE j3=n2). Simultaneously we have C1=2 = O(n2), and so jE j = O(n4=3). The Equation 3 allows yet another kind of bound on a \collective" number of k-sets. Choose integer k; j with 0  k, 1  j and k + j  n=2 ? 1. Let H = (S; E ) be a graph with S as the set of vertices and all i-segments for i = k; : : : ; j + k ? 1 as the set E of edges. For every pair of numbers i1 < i2, i1; i2 2 fk; : : : ; k + j ? 1g, the number of crossings between the i1-segments and the i2-segments of H is at most 2Gk+j  2(k + j )n by Equation 3 and the result in [Pec85]. There are O(j 2) such pairs (i1; i2), and so the total number of crossings in H is O(j 2(k + j )n). Using again the result in [ACNS82], we have jE j3=n2 = O(j 2(k + j )n) and so jE j = O(j 2=3(k + j )1=3n): 48

on-lovaszon-lov-lem on-lovlem lemma

lovlem15-1

4.4 Lovasz crossing lemma in two and higher dimensions Lovasz crossing lemma is one of the most important tools for proving upper bounds on the numbers of k-sets. It has been rst published by Lovasz in [Lov71] for R2. Various authors have extended the lemma to higher dimensions, see [BFL90, DE94]. Recently Agarwal, Aronov and Sharir [AAS] could re ne this lemma for dimension greater 2. Planar Lovasz crossing lemma. We show the planar Lovasz crossing lemma in a way di erent than in [Lov71]. The version presented below allows a more straightforward generalization to higher dimensions. We assume that S is in such position that no line containing two points of S is vertical. Choose a point q 2 S and let l be an oriented vertical line containing q. Recall that l+ denotes the halfplane on the positive side of l and l? the other halfplane. We set S + = S \ l+ and S ? = S \ l? . For a point q, line l and a k 2 f0; : : : ; b(n ? 2)=2cg let E + be the set of all k-segments of S starting in q and ending in a point in S +. Analogously, let E ? be the set of all k-segments starting in a point in S ? and ending in q.

Lemma 12 For a q 2 S , a line l containing q and k 2 f0; : : : ; b(n ? 2)=2cg we have: (a) If jS ? j  k and jS +j > k, then jE ?j = jE + j ? 1. (b) If jS ? j > k and jS +j > k, then jE ?j = jE + j. (c) If jS ?j > k and jS +j  k, then jE ? j = jE +j + 1. Proof: We show (a) and (b) only, as (c) follows by symmetry. In both cases we have jS +j > k. Let l() be an oriented line obtained from l by rotating it by an angle  <  clockwise about q. It is not hard to see that

(i) while  increases from 0 to , then l() covers alternating k-segments in E + and k-segments in E ? .

We claim that

(ii) while  increases from 0 to , the rst k-segment covered by l() is in E + . When  = 0, then there are more than k points of S in l+(). The statement (ii) follows from the fact that each point in S ? passed by l() increases jl+() \ S j, while each point in S + passed by l() decreases jl+() \ S j. Furthermore, we have 49

(iii) if jS ? j  k, i.e. case (a) occurs, then the last k-segment covered by l() while  goes from 0 to  is in E + .

To see this, consider an angle  = 1, say, which covers the last k-segment in E ? (if it does not exist, (iii) follows from (ii)). Then S + \ l+(1) is not empty, because jS ? \ l+(1)j < k but l(1) is a k-facet. Then for suciently small  > 0 we have jl+( + ) \ S j > k and we can increase  until l() meets next point in S +, covering a k-segment in E +. By (i) no other k-segment will occur. Finally, we show that

(iv) if jS ?j > k, then the last k-segment covered by l() while  increases from 0 to  is in E ?.

Assume that the last k-segment in E + is covered by l() for  = 2, say. Then l?(2) \ S ? must be empty, otherwise we could cover yet another k-segment in E ? by increasing . But then jl+(2) \ S ?j = jS ?j > k and so l(2) cannot be a k-facet. Putting the pieces together, we see that in case (a) the rst and the last k-segment covered by l() is in E +. The claim follows by (i). In case (b) the rst of these k-segments is in E + , but the last one is in Lk (S ? ; fqg). Again, the statement holds by (i). 2 Now consider an oriented vertical line lt for t 2 [0; 1] which translates from position l0 from the left outside the convex hull conv(S ) of S to position l1 right outside conv(S ). Let St? be the set of points of S left to lt and St+ the set of points of S right to lt. We denote by y(lt) the number of k-segments going from St? to St+, i.e. the number of k-segments intersected by lt which are oriented \from left to right". While lt pass through a point of S , then in case (a) of Lemma 12 occurs until St? > k. Each time y(lt) increases by 1, what happens k times. Then, as jSt?j > k and jSt+j > k, the number y(lt) does not change when lt traverses a point of S by Lemma 12 (b), i.e. y(lt) remains k. When lt continue to translate, case (c) of this lemma starts to occur and so y(lt) decreases each time it passes through a point of S . By symmetry it follows that for each t 2 [0; 1] the number of k-segments going from jSt+j to jSt?j is also y(lt). We obtain the \classical" formulation of the Lovasz crossing lemma. lov-lem

Lemma 13 (Lovasz crossing lemma for R2) Let S be a set of n points in the plane and l a line containing no points of S which has a set R of r  n=2 many points on !0 with one side. Then l intersects exactly minfr; k + 1g many k-segments of k-facets ? pp 0 p with p0 2 R p 2 S nR, p0 2 R and exactly minfr; k + 1g many k-segments of k-facets ? p! and p 2 S nR. 50

There is a dual formulation of the Lovasz crossing lemma in R2, as stated in [AAS]. Let A(T ) be an arrangement of n lines in R2 and Vk the set of vertices of A(T ) of level k 2 f0; : : : ; n ? 2g (the base point is located in (0; +1); see Section 2.4). For each v 2 Vk , let Wv denote the double wedge formed by the two lines which meet at v. lov-lemmadual

Lemma 14 (Dual Lovasz crossing lemma in R2) Let p be a point not lying on a line in T and j the number of lines in T which pass above p. Then the number of double wedges Wv with v 2 Vk that contain p is at most

2 minfk + 1; j g  2(k + 1):

Lovasz crossing lemma characterizes the set of halving segments in R2. It is

interesting that the Lovasz crossing lemma characterizes the set of halving segments in the plane. We will show this in the following. Let S be a set of n points, n even, in R2. For a line l, the smaller side of l is the open halfspace bounded by l which contains at most n=2 points of S (if l has exactly n=2 points on one side, choose any side of l as the smaller side). The other open halfspace is called the larger side of l. Let E be a set of line segments between some pairs of points in S . Let q be a point in S and l a line containing q. We denote as E ? the set of all segments incident to q and to points on the smaller side of l. Analogously, E + is the set of line segments incident to q and to points on the greater side of l. (If l would be oriented in such a way that l? is the smaller side of l and E would be the set of halving segments of S , then the symbols E + and E ? are the same as in the proof of Lovasz crossing lemma).

t-22-8-1

Theorem 15 For a set E of line segments between some pairs of points in S the following statements are equivalent:

(a) E is the set of halving segments of S ; (b) For each q 2 S and a line l containing q and not containing a segment of E we have jE ?j + 1 = jE + j; (c) Every line l not containing a point in S intersects as many segments in E as there are points of S on the smaller side of l.

Proof: By arguments after Lemma 12 clearly (b) implies (c). Conversely, assume that l

is a line disjoint from S which intersects at least one segment in E . Let q be the closest point to l on the smaller side of l. Translate l parallel towards its smaller side. In the moment when l contains q the sets E + , E ? are de ned. We set x = jE + j, y = jE ?j and denote by u the number of segments in E but not in E ? [ E + intersected by l in the same 51

moment. Just before l passes q the line l intersects x + u segments in E , and after this moment l intersects y + u segments in E . Yet in the latter case there is one point less on the smaller side of l, and so by (c) we have y + u = x + u ? 1, which shows (b). Clearly (a) implies (b) by Lemma 12. To show the other direction, assume that q is a point of S and l a line containing q. We rotate l around q. While l passes a segment e 2 E incident to q, the numbers jE + j and jE ?j become equal by (b), and so there are the same numbers of points on each side of l (i.e. there is no unique smaller side of l). To complete the proof, assume that there is a halving segment e0 incident to q but not in E . Let l be a line containing e0; we orient it in such a way that l [ l+ contains more segments of E incident to q than l [ l?. We rotate l around q in such a way that the other endpoint of e0 lies in l?. But then l+ contains less points of S than l?, which contradicts by (b) the assumption that that l [ l+ contains more segments of E incident to q than l [ l? . 2

Lovasz crossing Lemma in higher dimensions. We have following result has been

already mentioned in [ABFK92], yet it was written up in [DE94].

Lemma 16 Any line l crosses at most n2=4 k-simplices in R3. Proof: Consider a plane h containing l but no point of S and let l0 be a line in h such that l0 \ conv(S ) = ; and l0 is parallel to l in h. For each t 2 [0; 1] let lt be the line l0 + (1 ? t)l. The number y(lt) of k-simplices crossed by lt changes only if lt traverses an edge of a k-simplex. By similar argument as in the planar case it can be shown that y(lt) may change only by 2 for each edge of a k-simplex it crosses. Let P be the set of points which are intersections of edges of k-simplices and h. We can bound jP j from above by the number of segments de ned by two points in S which intersect h. The worst situation occurs when h divides S into two equal sets and so jP j  n2=4. Now l partitions h into two halfspaces and so P is partitioned into sets P1 and P2. We may assume that l0 is on the side of l with those set among P1 and P2 with smaller cardinality. It follows that lt traverses at most n2=8 edges of k-simplices. 2 The above proof can be easily extended to higher dimensions, as claimed in [ABFK92]. We have then     Lemma 17 Any line crosses at most 2 d?n 1 k-simplices (or at most d?n 1 halving simplices) in Rd. The last statement could be improved as follows in [AAS]. l-lov-higherdims

Lemma 18 ([AAS]) In Rd, the number of k-simplices crossed by any line is in O(kd?1 ). 52

As a consequence, the best currently known upper bound on the maximal number of k-sets in R3 shown in [DE94] has been improved from O(n8=3) to O(n2k2=3). The latter bound is better for small k0s.

The limits of Lovasz crossing lemma. The Lovasz crossing lemma has been used

in the most geometric proofs of upper bounds for the number of halving planes in the plane [Lov71], [ELSS73], [PSS92] and in almost all proofs of such bounds in R3 or higher dimensions [BFL90], [ACE+91], [Epp93], [DE94], [ABFK92]. As described in Section 4.5, the following argument is used in [DE94]. Given a set T of (arbitrary) triangles with vertices in S , it can be shown that there is a line in R3 which intersects at least y(n; jT j) triangles in T (y(n; jT j) is a non-trivial function in n and jT j). If T is especially a set of halving triangles then by Lovasz crossing lemma y(n; jT j) < n2=8 and with this relation jT j can be bounded from above in n. The proofs in [BFL90], [ACE+91] and [Epp93] use the same argument but here the triangles in T are projected into a plane h and a line in R3 is projected into a point of h. Then a fact is used that there are at least y 0(n; jT j) planar triangles sharing a common point. The following example shows that using this approach the best bound on the number of halving planes in R3 which can be obtained is O(n5=2). For a set T of (arbitrary) triangles with vertices in S the crossing number of T is the maximum number of triangles in T crossed by a line in R3. (Then, of course, y(n; jT j) is a minimal crossing number over all sets T with xed cardinality). We will construct a set T (of arbitrary triangles) with \high" cardinality jT j = O(n5=2) and \low" crossing number O(n2). Thus, a function y(n; jT j) cannot give a better upper bound on jT j than O(n5=2) if y(n; jT j) is bounded from above by O(n2), as it is the case when using Lovasz crossing lemma. Notice that still this approach could yield a better upper bound on e1=2(3; n) if a function of the kind of y(n; jT j) (i.e. lower bound on the crossing number of a set T ) could be nd for T being a set of halving triangles or a set of triangles with some special properties. In following we describe the construction. Put n=2 points in a plane h on a boundary of a p circle. Connect every point with all its n next neighbors on the circle to the \left" and p all n neighbors to the \right". We call all these segments edges. Note that there are O(n3=2) of them. Furthermore, no line in the plane crosses more than O(n) edges. Put another point p1 outside h and extend every edge in h to a triangle containing p1. To see that no line l in R3 intersects more than O(n) of these triangles, embed l into a plane h0 and consider the edges in h0 being intersections of the triangles with h0. Obviously we have a similar situation as in the plane h if h0 does not contain p1, but otherwise h0 contains at most one edge. Put next n=2 ? 1 points outside h and extend each time the edges in h to triangles in R3. We have constructed in this way O(n5=2) triangles but the crossing number is at most O(n2). 53

4.5 Upper bound on the number of induced halving planes in on-DE94

R3

Dey and Edelsbrunner prove in [DE94] an upper bound O(n8=3) on the number of induced halving planes in R3 by exploring the combinatorics of crossings between edges and triangles in R3. We state this proof here but instead of an inductive proof of Theorem 19 as in [DE94] we present a probabilistic one. It has been used by Szekely to obtain a variety of incidence bounds, for example an upper bound O(jE j3=jV j2) on the number of crossing edge pairs of a drawing of a graph G = (V; E ) (communicated by Sharir). Let S be a set of n points in R3 and T a set of t triangles with vertices in S . We say that two triangles have a nontrivial intersection if their intersection is neither empty nor a vertex or edge of both. A special case occurs when both triangles are vertex disjunct. We say then that they cross. An edge crosses a triangle when it intersects a triangle without sharing a vertex with it. We write x(S; T ) for the number of crossing triangle pairs in T and we set x(n; t) = jSj=min x(S; T ): n; jT j=t

Furthermore, let y(S; T ) be the maximum number of triangles in T crossed by a single edge of a triangle in T and let

y(n; t) = jSj=min y(S; T ): n; jT j=t Our rst observation is that a lower bound b(n; t) for x(n; t) implies a lower bound 2b(n; t)=(3t) for y(n; t). First, considering the two possible geometrical cases when two triangles cross, we see that two of the six participating edges cross a triangle. We give one unit of credit to each such edge and so with x(n; t)  b(n; t) we see that at least 2b(n; t) units of credits has been given. Because there are 3t edges, it follows by pigeonhole principle that one of the edges crosses at least 2b(n; t)=(3t) triangles. Later we will show the following theorem. theo-DE17

Theorem 19 For c0n2  t  and therefore with c0 = 2:16 and c1 = 1=41.

n 3

we have 4 c1 nt 6 < x(n; t)

2c1 t3 < y(n; t) 3 n6

54

Now assume that T is a set of halving triangles and jT j  c0n2. Then by Lovasz crossing lemma for R3 (see Section 4.4) no line crosses more than n2=8 of these triangles. On the other hand by Theorem 19 there is a line which crosses at least (2c1=3)t3=n6 halving triangles. Thus, we obtain  3 1=3 n8=3  2n8=3 t < 16c 1 as an upper bound on the number of halving triangles in R3. (By the improved Lovasz crossing lemma we get even t = O(n2k1=3), see Section 4.4). To show the lower bound for x(n; t) we need part (ii) of the following lemma. lem-DE20

Lemma 20 (i) If no two triangles in T have a nontrivial intersection, then jT j < n2. (ii) If no two triangles in T cross, then jT j < 23 n2. Proof: (i) For any point pi 2 S let i be the number of edges of triangles in T with endpoint pi , and so i  n ? 1. We intersect the triangles incident to pi with a sphere

around pi which is small enough so that each incident triangle intersect the sphere in a connected great circle arc. If no two triangles have a nontrivial intersection, then these arcs create on the surface of the sphere a planar graph with i vertices and thus at most 3i ? 6 arcs. We conclude that pi is incident to at most 3i ? 6 triangles. The total number of triangles is then 1 X 3 < n2 3 pi2S i as each triangle is counted three times. (ii) Assume that no two triangles in T cross. Then an edge e crossing a triangle  must belong to a triangle that share a vertex with . For xed e and  there are at most three such triangles. Remove e together with at most three triangles. Let k is the number of such edges needed to be removed until no nontrivial intersection remains. We loose at most 3k triangles and decrease the total vertex degree to X i ? 2k pi 2S

or less. Now using the same argument as in the proof of (i) we conclude that this is the maximum number of remaining triangles. We have then 0 1 ! X n 2 jT j < 3k + @ i ? 2kA < k + n < 2 + n2 pi2S

what completes the proof. 2 55

Proof of Theorem 19: From Lemma 20 (ii) we see that x(n; t) > t ? 32 n2

 for all 0  t  n3 . For a xed S and T with jS j = n and jT j = t we perform the following Bernoulli experiment. Remove every point of S with probability 1 ? p for some 0  p  1. Let x0(S; T ), t0 and n0 be the random variables for the number of crossing triangle pairs, number of triangles and number of points after the experiment, respectively. (A triangle survives if all three vertices survive and a crossing triangle pair survive if both triangles survive). We still have x0(S; T ) > t0 ? 23 (n0)2 for any combination of values of these random variables, and so this equation also holds for the expectation, i.e.: E (x0(S; T )) > E (t0) ? 23 E ((n0)2): We have E (t0) = p3 t and E (x0(S; T )) = p6x(S; T ), since two crossing triangles are vertexdisjoint. Now n0 is Bernoulli-distributed random variable, and so E ((n0)2) = E (n0)2 + Var(n0) = n2p2 + np(1 ? p): Choosing S and T with x(n; t) = x(S; T ) we obtain the inequality   p6 x(n; t) > p3 t ? 23 n2p2 + np(1 ? p) : We will show later that for 0 = 1:0774 we have (0 ? 1)n2p2 > np(1 ? p): Then it follows

0

x(n; t) > p?3 t ? 32 p?4 n2:

(4)

Eq35-1

(5)

Eq35-2

The key idea is to nd p which maximizes the right-hand side of Equation 5. It is not hard to see that this is the case for p equal to 2 pE = 20 nt : To ensure that p  1, we have to impose on t the condition t  20n2 > c0n2 with c0 = 2:155. Then we obtain from Inequality 5 4 1 t4 x(n; t) > 32(10)3 nt 6 > 41 n6 56

and so c1 = 1=41. It remains to show the validity of Equation 4. We simplify it to (0 ? 1)n2p2 > np; substitute pE for p and use t < n3=6, what yields 1 > 0: (0 ? 1)0 ? 12 We see that

0 > 12 + p2 12 0 and so the chosen value for  will do. 2 Day and Edelsbrunner show also in [DE94] upper bounds for x(n; t) and y(n; t) for t in the range ! n 2 2n  t  3 :  While for t = n3 the lower and upper bounds on x(n; t) match asymptotically, we have for t = O(n2) a lower bound O(n2) and an upper bound O(n3) on x(n; t). The authors of [DE94] conjecture that x(n; t) is indeed cubic in n for t = O(n2). This would imply an upper bound O(n5=2) on the number of induced halving planes in R3. This result would be the best possible one when Lovasz crossing lemma is used in the way as shown above. There is an even more straightforward proof of the bound O(n8=3). Let T 0 be a set of triangles in R3, t0 = jT 0j, and x0 the number of crossings between all line segments between two points in S and all triangles in T . There are at most O(n2) triangles not intersected by a line segment, ((WHY??)) and so by induction we have x0 > c00t0 ? c01n2. Using this equation as the basis for the probabilistic technique as in the proof of Theorem 19, we obtain x0 > c02(t0)3=n4: In conjunction with the Lovasz crossing lemma this yields an upper bound O(n8=3) (or O(n2k1=3)) on the number of induced halving triangles in R3.

on-tverberg

4.6 Upper bounds on the number of halving hyperplanes for dimensions greater 3 In following, we summarize brie y the paper Assume that X is a set of n  X[ABFK92].  d points in general position in R . We write d+1 for the set of all (d + 1)-subsets of X . 57

Being slightly sloppy,  X  we will call these sets simplices when we consider their convex hull. A family H  d+1 is called pierceable, if there exist a point common to int conv(A) for every subset A  H. The Selection Theorem. Take any family H of simplices of a given size jHj =  n Point  p d+1 , 0 < p  1. The following Theorem answer the following question: at least what quotient of simplices in H can be pierced simultaneously ? PStheo

Theorem 21 Given d  2, there exist a constant s such that every family H as above has a pierceable subfamily H0 with jH0j =

ps

n d+1

!!

:

For s we can choose the value sd = (4 d + 1)d+1 . In a special case for d = 2 and p = n? , > 0 already s = 3 + ,  > 0 will do.

Applications to the number of halving hyperplanes. The Point Selection Theorem implies the following upper bound on the number e1=2(d; n) of halving simplices for such a set X of n points: 1 e1=2(d; n) = O(nd? sd?1 ):

To see it we use the Lovasz crossing lemma. Let H^ be a set of halving simplices in Rd. Slightly perturbing the points in X we can nd a hyperplane P such that the projection of X onto P yields a point set in general position. Especially, every projected halving simplex is again a simplex on P . Let H be the family of these simplices in Rd?1. Our goal ^ .By is to obtain an upper bound on jHj and so on jHj there is a  Point Selection Theorem n n 0 0 s pierceable subfamily H  H with jH j = (p d?1 d ), where jHj = p d . Now consider a point piercing all simplices in H0 as a projection of a?1line in Rd onto P . By Lovasz   crossing lemma jH0j  d?n 1 and so we obtain p = O(n sd?1 ). Therefore ! n d? sd1?1 ^ = jHj = p jHj = O( n ): d

Multicolored Tverberg's Theorem. The Theorem 21 has been obtained from the

Multicolored Tverberg's Theorem. Z ivaljevic and Vrecica could prove it recently using algebraic topology. Assume that we have (d + 1) t points in d + 1 classes C1; : : : ; Cd+1 of cardinality t each. (The classes are also called colors ). The goal is to nd pairwise disjoint sets S1; : : : ; Sr , 58

each of cardinality d + 1 such that every set Si contains exactly one point of each color (i.e. every Si is multicolored) and \r conv(Si) 6= ;: i=1

The question is how large t = T (r; d) must be so that S1; : : : ; Sr exist. For d = 2 we have T (r; 2) = r, i.e. the best possible value. In general, the Multicolored Tverberg's Theorem says that T (r; d)  2 p(r) ? 1 where p(r) is the smallest prime not smaller than r. on-cs89

4.7 Random sampling methods of Clarkson and Shor

cs89-paper

Asymptotically tight bounds on the number of ( k)-facets and on the number of ( k)-sets. Using a straightforward probabilistic analysis, Clarkson and Shor [CS89] obtained an asymptotic number of ( j )-facets, which is also the asymptotic number of ( j )-sets. They also obtained the exact number of the j -facets when S is the set of vertices of a three dimensional convex polytope. The key lemma of [CS89] give the relationships between the quantities gj (S ) and ur (S ) - the expected number of facets of a convex hull of a random sample of size r. The analysis in their paper applies in a more general context and is specialized here to j -facets.

lem21a

Lemma 22 ([CS89, Lemma 2.1]) Let R  S be a random sample of size r  0. Then ! ! nX ?d n n ? d ? j (6) gj (S ) r ? d = r E (g0(R)): j =0 Proof: If r < d, then g0(R) = 0 by de nition. For r > d let A` be the event that a j -facet ` of S (0  j  n ? d) is an outer facet of conv(R). We have n?d?j  P (A` ) = r?nd r

as A` occurs only if the r ? d points of R not included in ` are all chosen among the n ? d ? j points lying on the negative side of `. The statement follows when we note that P E (g0(R)) = ` P (A`) and that a j -facet can be at most one facet of conv(R). 2 An application of the Lemma 22 gives the following result. 59

equ1

Theorem 23 ([CS89, Corollary 3.3]) Gk (d; n) = O(nbd=2c kdd=2e) and Ek (d; n) = O(nbd=2c kdd=2e) as k=n ! 0.

Proof: Put r := b nk c and assume that k > 1. First we want to show that for any S in

general position we have

Gk (S ) = O(kd ur (S )) as k=n ! 0. We observe that by Lemma 22 we have for a random subset R  S of size r ! nX ?d n ? d ? j ! n E (g0(R)) = r ? d gj (S )= r j =0 ! k n ? d ? j! X n  r ? d gj (S )= r : j =0 In the next step we apply the relation ! ! n ? d ? j = n = (1 + O( k ))=(4 kd ); r?d r n which is proven using Stirling's formula and obtain Gk (S ) = O(kd ur(S )): Using the asymptotic version of the Upper Bound Theorem ([Ede87, Sec. 6.2.4]) we have ur (S )  g0(jRj) = O(rbd=2c). By the above equation we obtain Gk (d; n) = O(kd rbd=2c) and because k=n ! 0, the rst result holds. The bound on Ek (d; n) follows by Ek (d; n) = O(Gk (d; n)) (see Section 4.2). 2 This bound on Ek (d; n) is asymptotically tight, especially cyclic polytopes realize it ([CS89, Lemma 3.4]). (Is the bound on Gk (d; n) also tight ? )

Exact number of k-facets and ( k)-facets for special convex sets. Lemma 22

has been also used in [CS89] to prove that if S is in a convex position (and of course in general position), then gk (S ) = 2 (k + 1) (n ? k ? 2) and so

Gk (S ) = (k + 1)(k + 2)(3n ? 2k ? 6)=3: To obtain this result, observe that for each r = d; : : : ; n Equation (6) yields ! ! nX ?d n n ? d ? j gj (S ) r ? d = r ur (S ): j =0 60

(7)

equ2

S is a set of vertices of a convex polytope and by Upper Bound Theorem (see [Zie94]) we have ur = 2 (r ? 2) for r = d; : : : ; n. These n ? d +1 equations are solvable simultaneously with the unique solution as stated above. In following we show an easy generalization of this result for arbitrary d. More precisely, we give the numbers gk (d; n) for any k; d and n, if S is a set of vertices of a convex, simplicial and neighborly polytope (in such polytope the number of outer facets is maximized). (A polytope P is neighborly if any subset of b 2d c or less vertices is the vertex set of a face of P . It is simplicial if every facet has a minimal number of d vertices, which applies here since S is in general position. All cyclic polytopes are simplicial and neighborly, see [Zie94]). Because every simplicial polytope in three-dimensional space is also neighborly, we obtain the result for gj (3; n) as a special case of the following theorem. theo3

Theorem 24 Let S be a vertex set of a simplicial, neighborly polytope. Then for every k = 0; : : : ; n ? d we have d c! n ? k ? d d e! k + b 2 2 gk (S ) = 2 k b 2d c for odd d and

gk (S ) = if d is even.

k + d2 ? 1 k

!

! ! ! n ? k ? 2d + k + 2d n ? k ? d2 ? 1 d d d 2 2 2 ?1

Proof: We use the idea of Sharir [Sha93] of rescaling gk 's and ur 's and applying the binomial inversion formula to obtain gk 's. To this end we put gk (S ) = k! (n ?nk! ? d)! g^k ; k = 0; : : : ; n ? d and u^r = (r ?r! d)! ur ; r = d; : : : ; n: Now we can rewrite (7) as Xi i ! g^j = u^n?i i = 0; : : : ; n ? d: j =0 j

In the next step we apply the binomial inversion formula (see for example [GKP89]) and obtain after resubstituting ! k X k n ! j (8) gk (S ) = d! k! (n ? k ? d)! (?1) j un?n?k+k+j (jS ) j =0 d 61

equ3

for k = 0; : : : ; n ? d. By the Upper Bound Theorem, the number g0(R), R  S , jRj = r of the facets of the polytope conv(R) with r vertices is 8 r?d d e > < 2 b d c2 if d is odd g0(R) = > r?d2 2d e r?d d2 e?1 : 2 bdc ? bdc if d is even. 2

2

Since ur (S ) = g0(R) for any R  S with jRj = r = d; : : : ; n, we are able to \plug in" the values for ur 's into (8). After some tedious manipulations and using the formulas for sums of binomial coecients stated in [GKP89] we obtain the result. 2

Obtaining the numbers gk (d; n) and Gk (d; n) as solutions of linear programs.

Equation (8) deserves special attention. It holds for any set S in general position, thus the numbers of k-facets are completely determined by the numbers ur for r = d; : : : ; n. If sucient many general relations for ur 's are known, we could put up for each k = 0; : : : ; n ? d a linear program g-LP(kd), say, which has ud; : : : ; un as variables and the Equation (8) as the function to be maximized. Indeed, some relations on ur 's exists. Sharir gives in [Sha93][Proposition 4.1] b n?2d?1 c + 1 independent equations involving of ur 's. Furthermore, obviously always hold ud = 2 and ur+1  ur + d ? 1 for r = d; : : : ; n ? 1, later by elementary geometric considerations. Another constraints for the programs arise from the Upper Bound Theorem. We conjecture also ur  ur+1, but could not prove or disprove this. Unfortunately, these constraints seem not to be sucient, as some test programs did not yield any reasonable values of gk (d; n)'s. We also set up linear programs G-LP(kd) , say, which should nd the values for Gk (d; n) by maximizing an analogous equation as Equation (8) but for Gk (S ). The resulting bounds on Gk 's were better as those on gk 's given by the programs g-LP(kd) , but still much too big. mulmuleysinterpret

4.8 The f-matrix and the h-matrix of k-complexes Mulmuley introduces in [Mul93, Mul94] the concept of a k-complex which simultaneously generalizes the notions of a convex polytope and that of an arrangement of hyperplanes. He describes also a generalization of the f -vector and a generalization of the h-vector of a convex polytope (see [Zie94]). The Dehn-Sommerville relations can be extended for these new notions. This imply an upper bound on the number of local minima of a k-level (also found independently by Clarkson [Cla93]). Mulmuley discusses also a conjecture about an upper bound on the number of k-sets in Rd. 62

Let us recall rst some de nitions from Section 2.4. For an arrangement A(T ) of n hyperplanes in Rd and a base point o, the level of a point p 2 Rd is the number of hyperplanes which strictly separate p and o. The level on an i-face (face of dimension i) of A(T ) is the level of any point in the interior of this face. Then, for a k 2 f0; : : : ; ng, the k-complex Ck (T ) of A(T ) is the collection of the faces in A(T ) with level at most k. Note that C0(T ) is the convex polytope surrounding the base point while Cn (T ) is the entire arrangement A(T ). In following we x A(T ) and k 2 f0; : : : ; ng. We assume as usual that A(T ) is simple (and so Ck (T )). In addition, Ck (T ) should be bounded; this can be achieved by adding at most k hyperplanes approaching in nity. Let f l (j ) be the number of the j -faces in the k-complex at level l, for an l 2 f0; : : : ; kg. Then the f -polynomial of Ck (T ) is de ned as X f (x; y) = f l (i)xlyi: 0lk; 0id

The same information as in f (x; y) is also encoded in the f -matrix [f l(i)], 0  l  k, 0  i  d. The de nition of the h-polynomial is little more involved. Fix any function z : Rd ! R which is non-degenerate, i.e. such that no two vertices of Ck (T ) have the same function value. Orient all edges in CT (T ) in the increasing z-direction. For a vertex v of the kcomplex let cone(v) be the unique cone containing o which is formed by the d hyperplanes intersecting in v. The in-degree(v) denotes the number of edges of cone(v) which are oriented towards v and end at v. We say that v is a local z-minimum, if in-degree(v) = 0. For an l 2 f0; : : : ; kg, let hlz (j ) or hl (j ) be the number of vertices v of Ck (T ) at level l with in-degree(v) = j . Then the h-polynomial is de ned as X h(x; y) = hl(i)xlyi: 0lk; 0id

The matrix [hl(j )], 0  l  k, 0  j  d is called the h-matrix of Ck (T ). For k = 0 the h-matrix reduces to the commonly known h-vector of a convex polytope, and the f -matrix reduces to the f -vector. The following theorem says that the f -matrix can be obtained by a linear transformation from the h-matrix. As stated in [Mul93], this transformation is invertible. t-27-8-4

Theorem 25 The h-matrix does not depend on the choice of the linear function z. Furthermore,

f (x; y) =

X

0lk; 0id

hl(i)xl(1 + y)i(1 + xy)d?i:

From this result Mulmuley derives the following \generalized" Dehn-Sommerville relations. For k = 0 they reduce to standard Dehn-Sommerville relations. 63

t-27-8-5

Theorem 26 For all pairs l; i with l 2 f0; : : : ; kg and i 2 f0; : : : ; dg we have hl(i) = hl(d ? i) and for all l 2 f0; : : : ; kg we have ! l + d ? 1 l h (0) = d ? 1 : Last not least, the previous theorem implies the following corollary, which bounds the number of local z-minima. The Upper Bound Theorem follows from the corollary.

c-27-8-5

Corollary 27 For every simple, possibly unbounded k-complex we have ! l + d ? 1 l h (0)  d ? 1 for any linear, nondegenerate function z . The equality holds exactly when the k-complex is bounded.

A conjecture on the maximal number of k-sets in Rd. As discussed in Section 2.5,

upper bounds on f k (i) would imply upper bounds on the numbers of k-sets in Rd. By Theorem 25 the values f k (i) are bounded by positive linear combinations of hl(j )'s, for l 2 f0; : : : ; kg. Mulmuley obtains the bound k X l=0

hl(j ) = O(kdd=2enj )

for j 2 f0; : : : ; bd=2cg by probabilistic methods of Clarkson and Shor (see [CS89] and Section 4.7). He also conjectures that

hl(j ) = O(ldd=2e?1+"nj )

(9)

for j 2 f0; : : : ; bd=2cg. If this conjecture were true, then by Theorem 25 and 26 we wound have the bound f k (i) = O(kdd=2e?1+" nbd=2c): While the case j = 0 of Equation 9 is true by Theorem 26, there is not much progress on the remaining cases up to now.

64

eq-27-8-6-1

5 Applications of k-sets and k-levels In this section we rst discuss algorithms which compute all k-sets of a given set of points and algorithms which compute a k-level of a set of (hyper-)planes. One of the most important applications of the k-levels is the halfspace range searching problem. We dedicate Section 5.2 to it. Other important applications of k-levels are the computation of higher-order Voronoi diagrams and k-nearest neighbor search. Both problems are treated in Section 5.3. As next we discuss the orthogonal L1 line tting problem. We complete with a brief description of less known applications of k-sets or of their variations.

5.1 Algorithms for nding k-sets and constructing k-levels In this section we discuss algorithms for computing all k-sets of a set of points and algorithms to compute a k-level or an ( k)-level of a set of hyperplanes. Note that the both rst problems are dual to each other, i.e. the algorithm for computing a k-level can be used to report all k-sets of the dual point con guration (see Section 2.5).

A simple way to list all j-facets of a planar point con guration. As a warm-up,

we describe an algorithm to obtain all j -facets of a set S of n points in the plane. They give immediately the set of all (j + 1)-sets of S (see Section 4.2). The algorithm is based on the original proof of Lovasz crossing lemma [Lov71]. We show also the correctness of this algorithm. ! be a line oriented from p to q. We denote by For two points p; q in the plane let be ?pq !) the number of points from S on the positive side of ?pq !. Recall that a line segment N (?pq ! between p and q is called a k-segment if N (?pq !) = k, and in this case the line ?pq ! of ?pq is obviously a k-facet. The following line sweep yields all k-facets for any 0  k  n?2 2 . Let l be any oriented line with N (l) = k + 1. Move l in the direction of its negative side until it reaches a point, say p1 . (If l intersects two points, perturb one of them slightly into the negative side of the line). Call this line l(0). Rotate a sweep line l() starting at l(0) counterclockwise around p1 until it reaches second point p2 2 S in the position l(1) = l1. Then rotate l() counterclockwise around p2 until it meets a point p3 2 S at position l(2) = l2, etc. If we continue, we get a sequence of (not necessary di erent) points in S with pN +1 = p1, pN +2 = p2 for some N  n and a sequence of directed lines l1; : : : ; lN with lN +1 = l1. (During the sweep, the angle between l(0) and the actual position of l() increases. Thus we may take this angle as the sweep parameter ). lhl-lem

Lemma 28 The lines li, i 2 f1; : : : ; N g such that li is oriented opposite to ?p?? pi are i+1! exactly all k-facets.

65

Proof: Obviously the number N (l()) may change during the sweep only if  takes

a value i as only then l(i) meets a point from S . Therefore we consider the sweep parameter in an interval (i ? ; i + ) for any i and suciently small  > 0. We have two cases

 if ?p?? i pi! +1 has the same orientation as l(i ), then N (l(i ? )) = N (l(i )) = N (l(i + )) according to Figure 20; in this case it even holds that the lines l( ? ), l() and l( + ) have the same set of points from S on their positive side.

 if p????! i pi + 1 has an opposite orientation as l(i ), then N (l(i ? )) ? 1 = N (l(i )) = N (l(i + )) ? 1 according to Figure 21.

l

( ? )

pi

i

pi+1

l

pi+1

( + ) i

pi

l

l

( )

l

i

l

i

Figure 20: N (l(i ? )) = N (l(i)) = N (l(i + )).

( + )

piclov1a

( ) i

( ? ) i

Figure 21: N (l(i ? )) ? 1 = N (l(i)) = N (l(i + )) ? 1.

Therefore N (l()) = k + 1 for all  6= i and also N (l(i)) = k + 1 if ? p?? i pi! +1 is oriented ? ?? ! in the same direction as li. Only if pipi+1 is oriented opposite to li then N (l(i)) = k and so we have a k-facet. It remains to show that this yields all k-facets. Consider a k-facet l0 which did not occur during the line sweep. Let l(0) be the position of our sweep line with l(0) parallel to l0. Obviously N (l0) 6= N (0). If l(0) is a k-facet, then we have immediately that N (l0) cannot be k. Otherwise N (l(0)) = k + 1 and so l0 either passes through two points on the negative side of l(0) and then N (l(0))  k + 1, or l0 passes on the positive side of l(0) so that N (l0)  k ? 1. 2 As the complexity of a k-level may vary a lot, most algorithms are output sensitive. In the following let b denote the output size of a computed k-level.

Computing k-levels in the plane. Edelsbrunner and Welzl give in [EW86a] an algo-

rithm to obtain a k-belt and so a k-level in the plane in time O(n log n + b log2 n). The required space is O(n + b). Cole, Sharir and Yap solve in [CSY87] the (essentially) dual problem, i.e. the computation of a k-hull in time O(n log n + b log2(k +1)). This improves 66

piclov1b

the algorithm from [EW86a] if k is small. q Agarwal, de Berg,2 Matousek and Schwarzkopf obtain in [AMdS94] a randomized O(n (k + 1) log n + n log n) expected time algorithm for computing a k-level. Still, it is not output-sensitive. This algorithm can be adapted for higher dimensions. (With the new bounds on the number of k-sets in the plane [Dey] the analysis of the running time of the algorithm should yield better running time bounds).

Computing ( k)-levels in the plane. Mulmuley gives in [Mul91] a randomized algorithm for computation of ( k)-levels in the plane in O(n(k + 1) log(n=(k + 1))) expected

time. Agarwal, de Berg, Matousek and Schwarzkopf obtain in [AMdS94] an algorithm with O(n(k +1)+ n log n (n)) expected running time in the planar case. Here (n) is the functional inverse of the Ackermann's function. Their algorithm generalizes to computing the ( k)-level in an arrangement of discs or x1-monotone Jordan curves. Everett, Robert and van Kreveld improve on Mulmuley's algorithm in [ERvK93] obtaining the optimal O(n log n + n(k + 1)) time algorithm for constructing ( k)-level in the plane (it is optimal as the asymptotic complexity of an ( k)-level in the plane is (nk) and an 0-level is dual to the upper convex hull). We will discuss some applications of this algorithm later. The authors also extend their algorithm for the case that instead of lines the k-levels are induced by unbounded x1-monotone polygonal convex chains (see also Section 2.6) for this generalization). If the total complexity (i.e. the total number of line segments in all polygonal chains) is N and each pair of chains intersect at most s times, then the ( k)-levels (appropriately de ned) can be constructed in O((N=(k + 1) + (k + 1)s (n=(k + 1))) log2 n + N + (k + 1)2 s(n=(k + 1))) expected time, where s (m) is the maximum length of (m; s)-Davenport-Schinzel sequences, see [Sha91].

Computing k-levels and ( k)-levels in dimensions greater 2. Agarwal and Ma-

tousek give in [AM95] an algorithm with O((n + b)1+) running time which constructs a k-level in R3, where  > 0 is a small constant. For Rd, d  4 they obtain an algorithm for the computation of a k-level with a slightly weaker bound on running time, namely   O n1+ + minfb n1?2=(bd=2c+1)+; bd=(d+1)nd=(d+1)+g for  > 0. As next let us discuss algorithms for computing ( k)-levels. Mulmuley gives in [Mul91] a randomized algorithm for construction of a ( k)-level in Rd, d  3. For d = 3 its expected running time is O(n(k + 1)2 log(n=(k + 1))), while for d  4 the expected running time of it is O(nbd=2ckdd=2e). Note that for d  4 this algorithm is optimal by the upper bound on the complexity of an ( k)-level, while for d = 3 this is not the case. The result of Mulmuley for d = 3 can be compared to an algorithm of Agarwal, de Berg, Matousek and Schwarzkopf in [AMdS94]. Their randomized algorithm needs O(n(k +1)2 + n log3 n) expected time, what is worst-case optimal unless k is very small. 67

on-halfspon-rangeon-halfrangsearching space-search searching

5.2 Range searching problems Range searching problems are of considerable interest in computational geometry because they occur as subroutines in such applications as ray tracing, hidden-surface removal and others seeming unrelated problems (see [Mat94] for a survey). We consider here the special case of halfspace range searching. The problem is de ned as follows. Given a set S of n points in Rd, build a data structure and an algorithm such that given a query hyperplane  the points on the positive side of  can be reported or counted eciently (according to these cases, some authors e.g. Matousek [Mat94] make a di erence between halfspace range reporting and halfspace range counting ). The goal is to nd a data structure and an algorithm with sublinear query time and low space requirements. More precisely, we want to obtain a query time of the form O(h(n) + b), where b is the number of reported points. If s(n) is the space requirement of the data structure, then we speak about a (s(n); h(n))-algorithm. A range searching problem belongs to the complexity class PLOG if it admits an (ng(n); h(n))-algorithm, where g(n) and h(n) are functions polylogarithmic in n. A question raised in the eighties was the following one: for which dimensions are the halfspace range searching problems in PLOG ?

The planar case. For d = 2 Chazelle, Guibas and Lee showed in [CGL85] that the

halfspace range searching can be solved optimally, i.e. there is an (n; log n)-algorithm for this problem. Previous solutions with linear space requirements were given by Willard [Wil82] and by Edelsbrunner and Welzl [EW86b]. The latter algorithm has O(n0:695) query time, and the former has O(n0:77) query time. If the points in the query halfspace should be counted only or if we want to retrieve all points inside more complicated ranges as polygons, the method of [CGL85] fails while the solutions in [Wil82] and in [EW86b] still work. Yet another approach to the planar halfspace range counting problem has been given by Edelsbrunner and Welzl in [EW86a]. Instead of calculating the exact number of points in a query halfspace, the authors consider the problem of estimating the number of points contained in it. For example they show that for each 1  k  dn=2e there exist a data structure for estimating in O(log n) time the number A(h) of points contained in a query halfplane h in the following way: the algorithm decides whether 0  A(h) < k, k  A(h)  n ? k or n ? k < A(h)  n. The space required by this data structure is O(ek?1(2; n) + ek (2; n)) and O(ek?1(2; n) + ek (2; n) log2 n) bounds the preprocessing time.

Algorithms for

.

R3 For d = 3 Chazelle and Prepata give 8 4 (n(log n) (log log n) ; log n)-algorithm, thus establishing that also for this

in [CP86] an dimension halfspace range searching is in PLOG. Clarkson and Shor remark in [CS89] that the algorithm in [CP86] is indeed a (n(log n)2 log log n; log n)-algorithm. This is due to the fact that the 68

Chazelle and Prepata bound the requirements of their algorithm using an upper bound O(nk5) on the maximum number Ek (3; n) of ( k)-sets in R3. Clarkson and Shor obtain a better bound O(nk2) on Ek (3; n). (Notice at this point that better bounds on the maximum number of k-sets or ( k)-sets can dramatically improve upper bounds on resources of halfspace range searching algorithms). An even better algorithm is given by Agarwal, Hansen and Leighton in [AHL90]. It's query time remains O(log n + b), while the space requirements and preprocessing time are O(n log n). Using duality, authors transform halfspace range searching problem in R3 into a ray-stabbing problem. This problem is then solved using k-order power diagrams (see Section 5.3). The upper bound Ek (3; n) = O(nk2) is used in the resource analysis.

Halfspace range searching in dimensions greater 3. Clarkson and Shor present in

[CS89] a randomized algorithm with O(log n+b) query time, O(nbd=2c+") space requirement and O(nbd=2c+") expected preprocessing time, where " > 0 is a constant and b is the size of the output. Also this algorithm uses a duality transformation (see Section 2.3) but instead of a reduction to a point location problem the random sampling technique is used. The analysis of resource requirements of this algorithm relies on the upper bound Ek (d; n) = O(kdd=2enbd=2c) obtained in the same paper (see Section 4.7). Schwarzkopf could improve in [Sch92] the data structure of the above algorithm, achieving an algorithm with the same query time and O(nbd=2c= logbd=2c?" n) space requirement. Matousek has obtained in [Mat92] an algorithm which requires O(n log log n) space, O(n log n) preprocessing time and O(n1?1=bd=2c log" n + b) query time, where again " > 0 is a constant and b is the size of the output. This result is achieved using the technique of (1=r)-cuttings in the dual space. Also Matousek uses the bound Ek (d; n) = O(kdd=2enbd=2c) (in Theorem 2.1 \Shallow cutting lemma"). Comparing the result of Clarkson and Shor which has space requirement O(nbd=2c+") with the algorithm of Matousek which needs nearly linear space we note the tradeo between the amount of required space and the achieved query time. It is a well-known problem of range searching algorithms. Nevertheless, combining his result with the data structure of the algorithm in [CS89] Matousek shows in [Mat92] that there are algorithms with space requirement lying everywhere between these two extremes. More precisely, he gives the following Theorem (Corollary 1.2 there):

Theorem 29 For d  4 and a parameter m, n  m  nd=2, the halfspace range searching

problem can be solved with space requirement and preprocessing time O(m1+" ) and query time n O( 1=bd=2c log n + b) m where " > 0 is a constant and b the size of the output.

69

As noted in [Mat92], this theorem could be improved slightly using the mentioned result of Schwarzkopf [Sch92].

Dynamic halfspace range searching. Agarwal and Matousek adapt the data structure of [Mat92] and [Cla88] to a dynamic version of halfspace range searching for d  3. Also

here a tradeo between required space and the query time exists. For a parameter m with n  m  nbd=2c their algorithm uses O(m1+") space and preprocessing time, it has O(m1+"=n) amortized update time and O( 1=nbd=2c log m + b) m query time. On the basis of this data structure the authors obtain algorithms for the following problems : ray shooting, nearest/farthest-neighbor queries, dynamic linear optimizator queries, smallest enclosing disk maintenance, bichromatic closest pair and diameter maintenance, convex layers in dimension 3, computing k-levels in arrangements), computing higher-order Voronoi diagrams (see Section 5.3). Many of these problems use only the special case of halfspace range searching called halfspace emptiness problem. In this case we only want to decide whether the query halfspace contains any point of S .

Why k-sets occur in halfspace range searching. To illustrate why upper bounds on the number of k-sets and ( k)-sets are used to bound the resource requirements of halfs-

pace range searching algorithms, we sketch the algorithm of Chazelle and Prepata [CP86]. In this paper a geometric duality transformation  called polarity is used to transform the halfspace range searching problem to a point location problem in R3. (The transformation  is similar to the transformation given in Section 2.3, especially it preserves the order relations). By dualizing the set S of n points in R3 we obtain a set T of n planes which create an arrangement A(T ). We orient the planes in T upwardly. For each (open) cell c of A(T ) we associate a subset S (c)  S of those points which dualize to planes in T lying below c. The following lemma gives the idea how the halfspace range searching problem can be transformed to a point location problem.

Lemma 30 Let c be a cell of A(T ) and  an upwardly oriented plane in R3 intersect-

ing the x3 -axis above the origin (the last condition is only due to the choice of duality transformation). Then the point () is in c if and only if S (c) = S \  + .

Thus, if + is a query halfspace for the halfspace range searching problem, then reporting all points of S in + can be reduced to nding the cell c of A(T ) containing () and reporting S (c). 70

In order to nd the cell c we organize the arrangement A(T ) as a collection of n sheets. A sheet k for k = 1; : : : ; n is the boundary between [ [ c and c: jS (c)j=k?1

jS (c)j=k

Thus, k is exactly the (n ? k + 1)-level of A(T ) (see Section 2.5) and so the sheets are ordered vertically. A simpli ed approach to nd c is the following one. Assume that () = (x1; x2; x3) and let L() be the vertical line f(x1; x2; x3)jx3 2 Rg. If we would \march" on L() from x3 = +1 we would intersect the sheets n; n?1; : : : in this order, nally arriving in the cell c . Thus, for every sheet i with i = n; n ? 1; : : : we locate in the projection of i onto the plane f(x1; x2; x3)jx3 = 0g the (planar) cell ci containing the point (x1; x2; 0). Using this information we calculate the x3-coordinate of the intersection of L() with i (this can be easily done because the information of A(T ) is organized in sheets). Comparing this coordinate with x3 we decide if we already have found the cell c or not. (If yes, it is the cell c of A(T ) which is above i such that cl(c) \ i is projected to ci). If not, we repeat the last step with i?1. If all these steps failed, then () lies below all planes in T and the cell containing it can be computed from the information about c1. The presented simpli ed approach is too expensive to be considered. Chazelle and Prepata improve it by applying the ltering search technique introduced by Chazelle in [Cha86]. (Its basic idea is the following one: if the number of reported points is going to be large, we can compute the answer slowly without a ecting the asymptotic eciency.) The preprocessing time of the algorithm is dominated by the computation of the sheets 1; : : : ; n. Because there are at most O(n3) cells in A(T ), this time is bounded by O(n3). on-voronoion-VD diagramms

5.3 Higher order Voronoi diagrams In this section we will designate the n points in the set S as sites. Recall from Section 1 the following de nitions. For a k 2 f1; : : : ; ng and a given set A  S , jAj = k, the associated order k Voronoi region vor(A) is the set of points in Rd whose closest k neighbours in S are exactly the sites in A. (We use here an Euclidean metric). If k > 1, most of these sets are empty. The nonempty sets form a partition of Rd, called the order k Voronoi diagram VDk (S ) of S . Variations of the order k Voronoi diagrams can be obtained by using power-distance metric or additive-weight metric instead of Euclidean metric. In the power-distance metric, each site p 2 S has a xed weight wp and the distance between p and any point q 2 Rd is de ned to be d(p; q)2 ? wp, where d(p; q) is the Euclidean distance between p and q. We call the corresponding Voronoi diagram an (order k) power diagram. The properties and applications of them are described by Aurenhammer in [Aur87]. In the additive-weight metric, the distance between p and q is de ned as d(p; q) + wp. For a comprehensive survey on Voronoi diagrams and related diagrams see [Aur91]. 71

Correspondences between (k ? 1)-levels and order k Voronoi diagrams. We identify Rd with the hyperplane xd+1 = 0 in Rd+1. We project a site p 2 S vertically on the point p on the unit paraboloid U : xd+1 = x21 + : : : + x2d in Rd+1. For p 2 S , let E (p) denote the hyperplane tangent to U at p. The set E (S ) = fE (p) : p 2 S g of all such n hyperplanes gives rise to an arrangement A(E (S )) in Rd+1. The following relation is not hard to show (see [Mul94]) yet it is the key in understanding why (k ? 1)-levels and order k Voronoi diagram are related to each other.

l-8-9-1

Lemma 31 Given a point q 2 Rd and a site p 2 S , the square of the distance between q and p is the same as the vertical distance between q and the hyperplane E (p). It follows immediately that for a (query) point q 2 Rd, the rst k hyperplanes in E (S ) below q correspond to the k closest sites of q in S . The next theorem re nes this observation.

t-8-9-2

Theorem 32 The k order Voronoi regions in Rd are vertical projections of the (d + 1)dimensional cells in A(E (S )) which have level k (i.e. which lie directly below an upper (k ? 1)-level of A(E (S ))). Proof: For a query point q 2 Rd, let r be a vertical ray emanating downwards from the point q. We denote as Cq the (d + 1)-dimensional cell of A(E (S )) which is entered by r

after it has hit the rst k hyperplanes below q. The level of Cq (as de ned in Section 2.5) is obviously k, if the base point o is in (0; : : : ; 0; +1). Furthermore, q is contained within the vertical projection of Cq onto Rd = fxd+1 = 0g. On the other hand, every point p~ in the interior of Cq has the same set of k hyperplanes above it as q. By the argument after Lemma 31, the vertical projection p of p~ onto Rd has then the same set of k closest sites in S as q. It follows that the vertical projection of Cq onto Rd is an order k Voronoi region and that every order k Voronoi region arises in this way. 2 The algorithmic application of the above theorem is the construction of order k Voronoi diagrams by nding the (d + 1)-cells of level k in the corresponding (d + 1)-dimensional arrangement of n hyperplanes. This task again is done by computing the (k ? 1)-level of this arrangement. Furthermore, the complexity of order k Voronoi diagrams equals asymptotically the number of (d + 1)-dimensional cells of level k of the arrangement. By considerations in Section 2.5, the upper bounds on the complexity of the (k ? 1)-level in Rd+1 apply. As these bounds are regarded to be not optimal anyway, the upper bound O(kd(d+1)=2enb(d+1)=2c) on the complexity of a  (k ? 1)-level in Rd+1 is frequently applied. It is worth mentioning that in [Sha91] Sharir generalizes the bound O(k2n) on the complexity of a planar order k Voronoi diagrams for ( j )-facets from curves and surfaces (see Section 2.6). 72

Some applications. As noted in [Mul94], the construction of Voronoi diagrams in an

end in itself in many applications - in ecology, biochemistry or solid state physics. Yet here we discuss the standard application of Voronoi diagrams - the nearest neighbors search problem. Assume that our set S of sites is in the plane. For k in range 1; : : : ; n ? 1 the k-nearest neighbors search problem consist in nding a data structure such that for any given query point q the k nearest sites in S can be reported eciently. Edelsbrunner and Welzl give in [EW86a] an O(ek (2; n)) space and O(log n + k) time algorithm to compute the k nearest points to a query point in in nity (and thus can be interpreted as a direction). The preprocessing time of their algorithm is  2 O (ek?1(2; n) + ek (2; n)) log n . Here the authors use a correspondence between planar k-sets and planar order k Voronoi diagrams mentioned above. Methods for solving the (general) k-nearest neighbor search problem are based on computing the order k Voronoi diagram of S and postprocessing it into a convenient data structure. Aggarwal, Hansen and Leighton [AHL90] use a technique for compacting order k Voronoi diagrams and achieve an O(log n + k) time and O(n) space algorithm for the (general) k-nearest-neighbor search problem, where k is xed. If k is a part of the input, their algorithm uses O(n log n) space. This improves signi cantly previous approaches, which required O(k2n) space for xed k [SH75] or O(n3) space for k being a part of the input [ES86a]. A related problem, circular range search, is also solved in [AHL90] by transforming it into the planar k-nearest neighbor search problem and using ltering search. (The circular range search problem requires a report of all points of S covered by a given query disc). The algorithm presented there needs O(n log n) space and has O(log n + b) query time (recall that b is the size of the output). Another application of the (compacted) order k power diagrams given in [AHL90] is the optimal algorithm for halfspace range search problem in R3 (see Section 5.2). The stated relation between order k Voronoi diagram in Rd and the k-level of an arrangement of n hyperplanes in Rd+1 is used by Aurenhammer in [Aur87] to detect if a set S 0  S , jS 0j = k is a k-set of S , where S is a set of n points in Rd. His algorithm needs O(minfTd(n); Td?1(k(n ? k))g) time, where Td(n) is time to compute the convex hull of n points in Rd. Agarwal and Matousek use the same relation (i.e. they compute the (k ? 1)-level of an arrangement of n hyperplanes) to obtain the order k Voronoi diagram of a set of n points in time O((b + n)n") = O(n1+"k). Further applications of order k Voronoi diagrams and related diagrams can be found in [Aur91]. Applications of power diagrams are also discussed in [Aur87].

73

5.4 Orthogonal L1 line tting problem A fundamental problem in scienti c computing, including statistics, econometrics, signalprocessing is to approximate a set of points in the plane by a line. For a survey of these problems see Korneenko and Martini [KM93]. We focus our attention to the problem of orthogonal L1 line tting. In this case we have a set S of n points p1; : : : ; pn in general position the plane with pi = (xi; yi). Each point pi has a weight wi and we seek for the line l with equation y = ax + b such that the sum of weighted or unweighted point distances to l in the orthogonal L1-norm is minimal. In other words, (a; b) should be a pair which solves the following min-sum problem: n X jyi ?p(axi + b)j : w min i a;b i=1 a2 + 1 We will call the line l a median line or optimal approximation line. Morris and Norback [MN80] give the following two properties of a median line:

 there is a median line which passes through two points of S ;  the sum of the weights of the points on the median line is greater than the di erence of the sums of weights on either side of the line.

Lines which satisfy those properties are called candidate line. For the unweighted case, i.e. when wi = 1 for i = 1 : : : ; n, the later property says that the di erence in the number of points above and below the line must not exceed the number of points on the line. We see that a candidate line must be a (not oriented) halving facet for even n and a (not oriented) ((n ? 3)=2)-facet (or (n ? 1)=2-facet) for odd n. Similarly in weighted case the candidate sets are \weighted" j -facets.

Algorithms for nding a median line. Both stated   properties suggest a brute-force

approach to solving the problem: for every one on n2 point pairs check if the passing line is a candidate line. Only in this case compute the L1 norm sum. Since the number of candidate lines is O(n4=3) by the upper bound on the number of k-sets in the plane [Dey], we obtain an algorithm which is not much better than the O(n3) time algorithm which simply computes the L1 norm sum for every pair of points. A better algorithm for the unweighted case has been given by Yamamoto, Kato, (Keiko) Imai and (Hiroshi) Imai in [YKII88]. It is based on the construction of k-belts of [EW86a]. The algorithm needs O(n3=2 log2 n) time and linear space. (By the running-time analysis the old O(nk1=2) upper bound for the number of k-sets has been used. Using the upper bound O(nk1=3) in [Dey] a better bound on the running time can be obtained.) 74

Korneenko gives in Section 2.4.1 of [KM93] a dual version of the same algorithm, i.e. his algorithm constructs all j -sets for an appropriate j . Of course, the running time and required space are the same. For the weighted case, Yamamoto et al. give in [YKII88] an O(n2) time and linear space algorithm by generalizing k-belts to \weighted" k-belts. In the same paper the authors prove a lower bound (n log n) for the computation time of the solution of the orthogonal L1 line tting problem under the algebraic computation tree model. They reduce in linear time the so-called Uniform Gap Problem on the (Half) Unit Circle which is in (n log n) to nding a median line in unweighted case. For higher dimensions Korneenko and Martini give in Section 2.3 of [KM93] an O(nd) time algorithm for nding a hyperplane in Rd which minimizes the sum of point distances in orthogonal L1 norm.

5.5 Other applications of k-levels and ( k)-levels A host of applications of k-levels in the plane is given by Edelsbrunner and Welzl in [EW86a]. They use an algorithm for computation of a k-belt (and thus of an upper (k ? 1)-level and a (n ? k-level) to construct the region of all centerpoints of a planar set S of points in O(edn=3e(2; n) log2 n) time and in O(edn=3e(2; n)) space. (A centerpoint of S is any point (not necessary in S ) such that the two closed halfplanes induced by any line through p contain at least dn=3e points each.) In the same paper an algorithm for computing a minimum area triangle with vertices in a point set S is given. It requires O(n2 log n) time and O(n) space. (In [CGL85] an algorithm with O(n2) time but O(n2) space is given). Cole, Sharir and Yap de ne in [CSY87] a k-hull, see Section 2.5. One of the applications of k-hull is nding a ham-sandwich-cut in the plane (see Section 4.2 of [Ede87]). Their algorithm needs O(n log n(log log n)2) time. They also give an algorithm for nding a single centerpoint in O(n log5 n) time (note that the algorithm in [EW86a] for this problem has a worse time bound).

Points moving on a line. Ottman and Wood [OW84] consider the following problem concerning points moving on a line. Let A be a set of n points on a vertical line. Each point p has position p0 at time 0 and a constant speed ps (positive if p moves upward). We say that p is at position k at time t if it is the kth point from above at time t, k 2 f1; : : : ; n?1g . The problem is to calculate the sequence Pk (A) of points at position k when time goes from ?1 to +1. Edelsbrunner and Welzl observed in [EW86a] that the computation of Pk (A) can be reduced to the computation of the (k ? 1)-level. They follow that there is 75

an O(ek (2; n) log2 n) time and O(n + b) space algorithm to accomplish this task, where b is the length of the sequence Pk (A). Clearly b is bounded by O(ek?1(2; n) + ek (2; n)). Weak separators misclassifying at most k points. In [CSY87] we nd also an O(n(k + 1) log2 n) time algorithm to compute the weak separators misclassifying at most k points. To explain this de nition, we de ne rst the notion of a strong separator. Let B be a set of n blue points and R a set of n points in the plane. A strong separator for B and R is a line l such that all points of B are on the positive side of l and all points of R on the opposite side of l (or vice versa). A weak separator is a line l which minimizes the number of misclassi ed points (i.e. points lying on the wrong side of l). Everett, Robert and van Kreveld improve in [ERvK93] the result from [CSY87] for small numbers of misclassi ed points, using the algorithm for computing the ( k)-levels mentioned above. Their algorithm takes O(ni log(i + 1) + n log n) time, where i is the number of misclassi ed points (i is a part of the output). This algorithm can be also extended for the problem of separations sets of red and blue polygons. There are another two applications of ( kp)-levels in given in [ERvK93]. The rst is an algorithm which separates by a line in O(n k + 1 log2 n log(k +1)) time one line segment from as many possible, among a family of n line segments. Here k is the number of segments not separated from the distinguished line segment. The second algorithm nds line transversals. A line transversal for a set T of n vertical line segments in R2 is a line which intersects all the line segments in T . Let k is the number of segments not intersected by the optimal line. The authors obtain an O(n(k + 1) log(k + 1) + n log n) algorithm for computing a line transversal. For arbitrary line segments (i.e. not necessary vertical) they give an O((n(k + 1) log(k + 1) + n log2 n) (n)) time algorithm. Here (n) is the functional inverse of the Ackermann's function. Again, k is not a part of the input.

Applications of ( k)-facets from curves and surfaces. In Section 2.6 we have described the extension of ( k)-facets to arrangements of curves and surfaces introduced

by Sharir in [Sha91]. In the same paper the author gives many applications of this concept. Let n be the number of curves. Recall that for each i 2 f1; : : : ; ng Ki designates one of the two open regions into which the curve i separates the plane. We start with some results for sparse coverings of the plane by regions Ki . Assume that no point of R2 is covered by more than k regions Ki. Then the total combinatorial complexity of the curvearrangement is O(nk), if every pair of curves intersect at most twice and O(nk (n=k)) if every pair of curves intersect at most three times. Further applications are placements of convex objects, partial stabbing and re nement of complexity bounds of planar order k Voronoi Diagrams (see Section 5.3). Another important application is the solution to the following problem. Given a collection of n (possibly intersecting) discs in the plane, we want to build a data structure such that given any query point x, we can quickly report all the discs containing x. (This is 76

a special case of point containment problem, also known as inverse range searching. If ranges are halfspaces and not discs, then the dual problem is the halfspace range searching described in Section 5.2). The randomized algorithm of Sharir for this problem has expected O(n log n) storage, expected O(n log2 n) preprocessing time and O(log n+b log n) query time, where b is the size of the output. Furthermore, this algorithm is generalized to some other cases. For example, there is an algorithm with the same resource bounds which instead of discs handles n simply-connected regions in R2 which ful ll the property that boundaries of each pair of them intersect at most twice. Sharir also gives an algorithm for computing the collection Sk of ( k)-facets from n curves in the plane. If s is the maximum number of intersections of every pair of curves, then for s = 2 this algorithm uses O(nk log n log(n=k)) time and for s = 3 it uses O(nk (n=k) log n log(n=k)) time. If curves are open and x-monotone, then the required time is O(k2s (n=k) log n log(n=k)).

77

References AAS96

[AAS]

ABFK92

[ABFK92] Noga Alon, Imre Barany, Zoltan Furedi, and Daniel J. Kleitman. Point selections and weak -nets for convex hulls. Combinatorics, Probability and Computing, 1992.

ACE91

[ACE+91] Boris Aronov, Bernard Chazelle, Herbert Edelsbrunner, Leonidas J. Guibas, Micha Sharir, and Rephael Wenger. Points and triangles in the plane and halving planes in space. Discrete Comput. Geom., 6(5):435{442, 1991.

ACNS82

[ACNS82] M. Ajtai, V. Chvatal, M. M. Newborn, and E Szemeredi. Crossing-free subgraphs. Annals of Discrete Math., 1982.

AG86

[AG86]

AHL90

[AHL90] A. Aggarwal, M. Hansen, and T. Leighton. Solving query-retrieval problems by compacting voronoi diagrams. In B. Awerbuch, editor, Proceedings of the 22nd Annual ACM Symposium on the Theory of Computing, pages 331{340. ACM Press, May 1990.

AM95

[AM95]

AdMS95

[AMdS94] Pankaj K. Agarwal, Jir Matousek, Mark de Berg, and Otfried Schwarzkopf. Constructing levels in arrangements and higher order voronoi diagrams. In Proceedings of the Tenth Annual Symposium on Computational Geometry, pages 67{75, Stony Brook, New York, June 1994. ACM.

Aur87

[Aur87]

F. Aurenhammer. Power diagrams: Properties, algorithms, and applications. SIAM J. Comput., 16, 1987.

Aur91

[Aur91]

Franz Aurenhammer. Voronoi diagrams - a survey of a fundamental geometric data structure. ACM Computing Surveys, Sept 1991, 23(3), 1991.

AW97

AW97b

BFL90

Pankaj K. Agarwal, Boris Aronov, and Micha Sharir. On levels in arrangements of lines, segments, planes and triangles. Unpublished manuskript.

Noga Alon and E. Gyoeri. The number of small semispaces of a nite set of points in the plane. J. Comb. Theory, Ser. A, 41:154{157, 1986.

Pankaj K. Agarwal and Jir Matousek. Dynamic half-space range reporting and its applications. Algorithmica, 13(4):325{345, April 1995.

[AW97a] Artur Andrzejak and Emo Welzl. Relations between numbers of k-sets and numbers of j -facets. Unpublished manuscript, 1997. [AW97b] Boris Aronov and Emo Welzl. Identities for the numbers of crossings of ksegments. Unpublished manuscript, 1997. [BFL90]

I. Barany, Z. Furedi, and L. Lovasz. On the number of halving planes. Combinatorica, 10(2):175{183, 1990. 78

Imre Barany and William Steiger. On the expected number of k-sets. Discrete Comput. Geom., 11(3):243{263, 1994.

BS94

[BS94]

CGL85

[CGL85] B. Chazelle, L. J. Guibas, and D. T. Lee. The power of geometric duality. BIT, 25:76{90, 1985.

Cha86

[Cha86]

Bernard Chazelle. Filtering search: A new approach to query-answering. SIAM J. Comput., 15(3):703{724, August 1986.

Cla88

[Cla88]

K. L. Clarkson. A randomized algorithm for closest-point queries. SIAM Journal on Computing, 17:830{847, 1988.

Cla93

[Cla93]

K. L. Clarkson. A bound on local minima of arrangements that implies the upper bound theorem. Discrete Comput. Geom., 10:427{433, 1993.

CP86

[CP86]

B. Chazelle and F. P. Preparata. Halfspace range search: an algorithmic application of K-sets. Discrete Comput. Geom., 1:83{93, 1986.

CS89

[CS89]

Kenneth L. Clarkson and Peter W. Shor. Applications of random sampling in computational geometry. II. Discrete Comput. Geom., 4(5):387{421, 1989.

CSY87

[CSY87]

Richard Cole, Micha Sharir, and Chee K. Yap. On k-hulls and related problems. SIAM J. Comput., 16(1):61{77, February 1987.

DE94

[DE94]

T. K. Dey and H. Edelsbrunner. Counting triangle crossings and halving planes. Discrete Comput. Geom., 12(3):281{289, 1994.

Dey97

[Dey]

Tamal K. Dey. Improved bounds for k-sets and k-th levels. Unpublished manuscript.

Ede87

[Ede87]

H. Edelsbrunner. Algorithms in Combinatorial Geometry. Springer-Verlag Berlin Heidelberg New York, 1987.

Ede92

[Ede92]

Paul H. Edelman. On the average number of k-sets. Discrete Comput. Geom., 8(2):209{213, 1992.

EHSS89

[EHSS89] H. Edelsbrunner, N. Hasan, R. Seidel, and X. J. Shen. Circles through two points that always enclose many points. Geom. Dedicata, 32(1):1{12, 1989.

ELSS73

[ELSS73] P. Erd}os, L. Lovasz, A. Simmons, and E. G. Straus. Dissection graphs of planar point sets. Survey combin. Theory, Sympos. Colorado State Univ., Colorado 1971, 139-149, 1973.

Epp93

[Epp93]

David Eppstein. Improved bounds for intersecting triangles and halving planes. J. Comb. Theory Series A, 62:176{182, 1993. 79

Epp95

[Epp95]

ERV93

[ERvK93] H. Everett, J.-M. Robert, and M. van Kreveld. An optimal algorithm for the ( k)-levels, with applications to separation and transversal problems. In A.-S. ACM-SIGGRAPH, editor, Proceedings of the 9th Annual Symposium on Computational Geometry (SCG '93), pages 38{46. ACM Press, May 1993.

ES86b

[ES86a]

H. Edelsbrunner and R. Seidel. Voronoi diagrams and arrangements. Discrete Comput. Geom., 1:25{44, 1986.

ES86a

[ES86b]

Herbert Edelsbrunner and Gerd Stockl. The number of extreme pairs of nite point-sets in euclidean spaces. J. Comb. Theory, Series A, 1986.

EVW94

[EVW94] Herbert Edelsbrunner, Pavel Valtr, and Emo Welzl. Cutting dense point sets in half. In Proceedings of the tenth annual symposium of ACM, Stony Brook, NY, June 6{8, 1994, Computational geometry, Mehlhorn, Kurt, New York, NY: ACM Press. 1994., 1994.

EW85

[EW85]

EW86

[EW86a] H. Edelsbrunner and E. Welzl. Constructing belts in two-dimensional arrangements with applications. SIAM J. Comput. v., pages 271{284, 1986.

EW86b

[EW86b] H. Edelsbrunner and E. Welzl. Halfplanar range search in linear space and O(n:695) query time. IPL, 23:289{293, 1986.

Fel96

[Fel]

GKP89

[GKP89] Ronald L. Graham, Donald E. Knuth, and Oren Patashnik. Concrete Mathematics. Addison-Wesley, 1989.

GP93

[GP93]

HSW95

Kat95

David Eppstein. Geometric lower bounds for parametric matroid optimization. In Proceedings of the Twenty-Seventh Annual ACM Symposium on Theory of Computing, pages 662{671, Las Vegas, Nevada, 29 May{1 June 1995.

H. Edelsbrunner and E. Welzl. On the number of line separations of a nite set in the plane. J. Comb. Theory, Ser. A, 38:15{29, 1985.

Stephan Felsner. "on the number of arrangements of pseudolines". To appear in Discrete Comput. Geom.

Jacob E. Goodman and Richard Pollack. Allowable sequences and order types in discrete and computational geometry. Pach, Janos (ed.): New trends in discrete and computational geometry. Berlin: Springer-Verlag . Algorithms Comb. Study and Research Texts. v. 10, 103-134, 1993.

[HPSW95] Har-Peled, Raimund Seidel, and Emo Welzl. Exact number of ( k)-sets. Upublished manuscript, 1995. [Kat]

Naoki Katoh. On k-sets and parametric matroid optimization. Unpublished communication. 80

KM93

[KM93]

Nikolai M. Korneenko and Horst Martini. Hyperplane Approximations and Related Topics. Pach, Janos (ed.): New trends in discrete and computational geometry. Berlin: Springer-Verlag . Algorithms Comb. Study and Research Texts. v. 10, 103-134, pages 135{161, 1993.

Knu92

[Knu92]

Donald E. Knuth. Axioms and Hulls. Number 606 in Lecture Notes in Computer Science. Springer-Verlag Berlin Heidelberg New York, 1992.

KPP82

[KPP82] M. Klave, M. Paterson, and N. Pippenger. Inversions with n1+ (1= positions at the median. Unpublished manuskript, 1982.

plog n)

trans-

Lin93b

[Lin93a]

J. Linhart. Arrangements of oriented hyperplanes. Discrete Comput. Geom., 10(4):435{446, 1993.

Lin93a

[Lin93b]

J. Linhart. On the total weight of arrangements of halfplanes. Geom. Dedicata, 46(2):165{172, 1993.

Lin94

[Lin94]

Johann Linhart. The upper bound conjecture for arrangements of half-spaces. Beitr. Algebra Geom., 35(1):29{35, 1994.

Lov71

[Lov71]

L. Lovasz. On the number of halving lines. Annales Univ Sci Budapest, Eotvos, 14:107{108, 1971.

Mat92

[Mat92]

Jir Matousek. Reporting points in halfspaces. CGTA: Computational Geometry: Theory and Applications, 2:169{186, 1992.

Mat94

[Mat94]

Jir Matousek. Geometric range searching. ACM Computing Surveys, 26(4):421{461, December 1994.

MN80

[MN80]

J.G. Morris and J.P. Norback. A simple approach to linear facility location. Transportation Science, 1980.

Mul91

[Mul91]

K. Mulmuley. On Levels in Arrangements and Voronoi Diagrams. Discrete Comput. Geom., 6:307{338, 1991.

Mul93a

[Mul93]

K. Mulmuley. Dehn-sommerville relations, upper bound theorem, and levels in arrangements. In ACM-SIGACT ACM-SIGGRAPH, editor, Proceedings of the 9th Annual Symposium on Computational Geometry (SCG '93), pages 240{246, San Diego, CA, USA, May 1993. ACM Press.

Mul94

[Mul94]

Ketan Mulmuley. Computational Geometry: An Introduction Through Randomized Algorithms. Prentice Hall, 1994.

OW82

[OW84]

T. Ottmann and D. Wood. Dynamical sets of points. Computer Vision, Graphics, and Image Processing, 27:157{166, August 1984. 81

Pec85

[Pec85]

G. W. Peck. On 'k-sets' in the plane. Discrete Math., 56:73{74, 1985.

PSS92

[PSS92]

Janos Pach, William Steiger, and Endre Szemeredi. An upper bound on the number of planar K -sets. Discrete Comput. Geom., 7(2):109{123, 1992.

Ram96

[Ram]

Edgar A. Ramos. The number of 3-sets of a nite point set in the plane. To appear in Discrete Comput. Geom.

Sch91

[Sch92]

O. Schwarzkopf. Ray shooting in convex polytopes. In A.-S. ACMSIGGRAPH, editor, Proceedings of the 8th Annual Symposium on Computational Geometry (SCG '92), pages 286{295. ACM Press, June 1992.

SH75

[SH75]

Michael I. Shamos and Dan Hoey. Closest-point problems. In 16th Annual Symposium on Foundations of Computer Science, pages 151{162, The University of California, Berkeley, 13{15 October 1975. IEEE.

Sha91

[Sha91]

M. Sharir. On k-sets in arrangements of curves and surfaces. Discrete Comput. Geom., 6:593{613, 1991.

Sha93

[Sha93]

Micha Sharir. k-sets and random hulls. Combinatorica, 13(4):483{495, 1993.

Sto84

[Sto84]

Gerd Stockl. Gesammelte und neue ergebnisse uber extreme k-mengen ebener punktmengen. Master's thesis, Technical University of Graz, Austria, 1984.

Wel86

[Wel86]

Emo Welzl. More on k-sets of nite sets in the plane. Discrete Comput. Geom., 1:95{100, 1986.

Wil82

[Wil82]

D. E. Willard. Polygon retreival. SIAM J. Comput., 11:149{165, 1982.

YKII88

[YKII88] P. Yamamoto, K. Kato, K. Imai, and H. Imai. Algorithms for vertical and orthogonal L linear approximation of points. In Proceedings of the Fourth Annual Symposium on Computational Geometry (Urbana-Champaign, IL, June 6{8, 1988), pages 352{361, New York, 1988. ACM, ACM Press.

Zie94

[Zie94]

Gunter M. Ziegler. Lectures on Polytopes. Springer-Verlag, 1994.

ZV92

[ZV92]

Rade T. Zivaljevic and Sinisa T. Vrecica. The colored Tverberg's problem and complexes of injective functions. J. Comb. Theory, Ser. A, 61(2):309{ 318, 1992.

82