Lectures On Discrete Geometry
Lectures On Discrete Geometry
Springer-Verlag
Berlin Heidelberg NewYork
London Paris Tokyo
Hong Kong Barcelona
Budapest
Contents
1 Convexity 1
1.1 Linear and Affine Subspaces, General Position . . . . . . . . . . . . . 1
1.2 Convex Sets, Convex Combinations, Separation . . . . . . . . . . . . 5
1.3 Radons Lemma and Hellys Theorem . . . . . . . . . . . . . . . . . . . . . 9
1.4 Centerpoint and Ham Sandwich . . . . . . . . . . . . . . . . . . . . . . . . . . 14
5 Convex Polytopes 17
5.1 Geometric Duality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
5.2 H-Polytopes and V -Polytopes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
5.3 Faces of a Convex Polytope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
5.4 Many Faces: The Cyclic Polytopes . . . . . . . . . . . . . . . . . . . . . . . . 32
5.5 The Upper Bound Theorem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
5.7 Voronoi Diagrams . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Bibliography 67
Notation and Terminology
This section summarizes rather standard things, and it is mainly for reference.
More special notions are introduced gradually throughout the book. In order
to facilitate independent reading of various parts, some of the definitions are
even repeated several times.
If X is a set, |X| denotes the number of elements (cardinality) of X. If X
is a multiset, in which some elements may be repeated, then |X| counts each
element with its multiplicity.
The very slowly growing function log x is defined by log x = 0 for x 1
and log x = 1 + log (log2 x) for x > 1.
For a real number x, bxc denotes the largest integer less than or equal
to x, and dxe means the smallest integer greater than or equal to x. The
boldface letters R and Z stand for the real numbers and for the integers,
respectively, while Rd denotes thep d-dimensional Euclidean space. For a point
x = (x1 , x2 , . . . , xd ) Rd , kxk = x21 + x22 + + x2d is the Euclidean norm
of x, and for x, y Rd , hx, yi = x1 y1 + x2 y2 + + xd yd is the scalar product.
Points of Rd are usually considered as column vectors.
The symbol B(x, r) denotes the closed ball of radius r centered at x in
some metric space (usually in Rd with the Euclidean distance), i.e., the set
of all points with distance at most r from x. We write B n for the unit ball
B(0, 1) in Rn . The symbol A denotes the boundary of a set A Rd , that
is, the set of points at zero distance from both A and its complement.
For a measurable set A Rd , vol(A) is the d-dimensional Lebesgue mea-
sure of A (in most cases the usual volume).
Let f and g be real functions (of one or several variables). The notation
f = O(g) means that there exists a number C such that |f | C|g| for all
values of the variables. Normally, C should be an absolute constant, but if
f and g depend on some parameter(s) that we explicitly declare to be fixed
(such as the space dimension d), then C may depend on these parameters
as well. The notation f = (g) is equivalent to g = O(f ), f (n) = o(g(n))
to limn (f (n)/g(n)) = 0, and f = (g) means that both f = O(g) and
f = (g).
For a random variable X, the symbol E[X] denotes the expectation of X,
and Prob[A] stands for the probability of an event A.
iv Notation and Terminology
Graphs are considered simple and undirected in this book unless stated
otherwise,
so a graph G is a pair (V,
E), where V is a set (the vertex set ) and
E V2 is the edge set. Here Vk denotes the set of all k-element subsets
of V . For a multigraph, the edges form a multiset, so two vertices can be
connected by several edges. For a given (multi)graph G, we write V (G) for
the vertex set and E(G) for theedge set. A complete graph has all possible
V
edges; that is, it is of the form V, 2 . A complete graph on n vertices is
denoted by Kn . A graph G is bipartite if the vertex set can be partitioned
into two subsets V1 and V2 , the (color) classes, in such a way that each edge
connects a vertex of V1 to a vertex of V2 . A graph G0 = (V 0 , E 0 ) is a subgraph
of a graph G = (V, E) if V 0 V and E 0 E. We also say that G contains
a copy of H if there is a subgraph G0 of G isomorphic to H, where G0 and
H are isomorphic if there is a bijective map : V (G0 ) V (H) such that
{u, v} E(G0 ) if and only if {(u), (v)} E(H) for all u, v V (G0 ). The
degree of a vertex v in a graph G is the number of edges of G containing v.
An r-regular graph has all degrees equal to r. Paths and cycles are graphs as
in the following picture,
... ...
paths cycles
Convexity
1 a1 + + n an , where 1 , . . . , n R and 1 + + n = 1.
Then indeed, it is not hard to check that the affine hull of X is the set of all
affine combinations of points of X.
The affine dependence of points a1 , . . . , an means that one of them can
be written as an affine combination of the others. This is the same as the
existence of real numbers 1 , 2 , . . . n , at least one of them nonzero, such
that both
1 a1 + 2 a2 + + n an = 0 and 1 + 2 + + n = 0.
x3 = 1
x3 = 0
0
What conditions are suitable for including into a general position as-
sumption? In other words, what can be considered as an unlikely coincidence?
For example, let X be an n-point set in the plane, and let the coordinates of
the ith point be (xi , yi ). Then the vector v(X) = (x1 , x2 , . . . , xn , y1 , y2 , . . . , yn )
can be regarded as a point of R2n . For a configuration X in which x1 = x2 ,
i.e., the first and second points have the same x-coordinate, the point v(X)
lies on the hyperplane {x1 = x2 } in R2n . The configurations X where some
two points share the x-coordinate thus correspond to the union of n2 hy-
perplanes in R2n . Since a hyperplane in R2n has (2n-dimensional) measure
zero, almost all points of R2n correspond to planar configurations X with all
the points having distinct x-coordinates. In particular, if X is any n-point
planar configuration and > 0 is any given real number, then there is a con-
figuration X 0 , obtained from X by moving each point by distance at most ,
such that all points of X 0 have distinct x-coordinates. Not only that: Almost
all small movements (perturbations) of X result in X 0 with this property.
This is the key property of general position: Configurations in general
position lie arbitrarily close to any given configuration (and they abound
in any small neighborhood of any given configuration). Here is a fairly gen-
eral type of condition with this property. Suppose that a configuration X
is specified by a vector t = (t1 , t2 , . . . , tm ) of m real numbers (coordinates).
The objects of X can be points in Rd , in which case m = dn and the tj
are the coordinates of the points, but they can also be circles in the plane,
with m = 3n and the tj expressing the center and the radius of each circle,
and so on. The general position condition we can put on the configuration
X is p(t) = p(t1 , t2 , . . . , tm ) 6= 0, where p is some nonzero polynomial in m
variables. Here we use the following well-known fact (a consequence of Sards
theorem; see, e.g., Bredon [Bre93], Appendix C): For any nonzero m-variate
polynomial p(t1 , . . . , tm ), the zero set {t Rm : p(t) = 0} has measure 0 in
Rm .
Therefore, almost all configurations X satisfy p(t) 6= 0. So any condition
that can be expressed as p(t) 6= 0 for a certain polynomial p in m real
variables, or, more generally, as p1 (t) 6= 0 or p2 (t) 6= 0 or . . . , for finitely or
countably many polynomials p1 , p2 , . . ., can be included in a general position
assumption.
For example, let X be an n-point set in Rd , and let us consider the con-
dition no d+1 points of X lie in a common hyperplane. In other words, no
d+1 points should be affinely dependent. As we know, the affine dependence
of d+1 points means that a suitable d d determinant equals 0. This deter-
minant is a polynomial (of degree d) in the coordinates of these d+1 points.
Introducing one polynomial for every (d+1)-tuple of the points, we obtain
n
d+1 polynomials such that at least one of them is 0 for any configuration X
with d+1 points in a common hyperplane. Other usual conditions for general
position can be expressed similarly.
1.2 Convex Sets, Convex Combinations, Separation 5
Exercises
1. Verify that the affine hull of a set X Rd equals the set of all affine
combinations of points of X. 2
2. Let A be a 2 3 matrix and let b R2 . Interpret the solution of the
system Ax = b geometrically (in most cases, as an intersection of two
planes) and discuss the possible cases in algebraic and geometric terms.
2
X conv(X)
6 Chapter 1: Convexity
h
C
p
q
D
(ii) There exists a y Rd such that y T A is a vector with all entries strictly
negative. Thus, if we multiply the jth equation in the system Ax = 0 by
yj and add these equations together, we obtain an equation that obviously
has no nontrivial nonnegative solution, since all the coefficients on the
left-hand sides are strictly negative, while the right-hand side is 0.
Proof. Let us see why this is yet another version of the separation theorem.
Let V Rd be the set of n points given by the column vectors of the
matrix A. We distinguish two cases: Either 0 conv(V ) or 0 6 conv(V ).
In the former case, we know that 0 is a convex combination of the points
of V , and the coefficients of this convex combination determine a nontrivial
nonnegative solution to Ax = 0.
In the latter case, there exists a hyperplane strictly separating V from 0,
i.e., a unit vector y Rd such that hy, vi < hy, 0i = 0 for each v V . This is
just the y from the second alternative in the Farkas lemma. 2
Exercises
1. Give a detailed proof of Claim 1.2.2. 2
2. Write down a detailed proof of the separation theorem. 3
3. Find an example of two disjoint closed convex sets in the plane that are
not strictly separable. 1
4. Let f : Rd Rk be an affine map.
(a) Prove that if C Rd is convex, then f (C) is convex as well. Is the
preimage of a convex set always convex? 2
(b) For X Rd arbitrary, prove that f (conv(X)) = conv(f (X)). 1
5. Let X Rd . Prove that diam(conv(X)) = diam(X), where the diameter
diam(Y ) of a set Y is sup{kx yk: x, y Y }. 3
6. A set C Rd is a convex cone if it is convex and for each x C, the ray
0x is fully contained in C.
(a) Analogously to the convex and affine hulls, define the appropriate
conic hull and the corresponding notion of combination (analogous
to the convex and affine combinations). 3
(b) Let C be a convex cone in Rd and b 6 C a point. Prove that there
exists a vector a with ha, xi 0 for all x C and ha, bi < 0. 2
7. (Variations on the Farkas lemma) Let A be a dn matrix and let b Rd .
(a) Prove that the system Ax = b has a nonnegative solution x Rn if
and only if every y Rd satisfying y T A 0 also satisfies y T b 0. 3
(b) Prove that the system of inequalities Ax b has a nonnegative
solution x if and only if every nonnegative y Rd with y T A 0 also
satisfies y T b 0. 3
8. (a) Let C Rd be a compact convex set with a nonempty interior, and
let p C be an interior point. Show that there exists a line ` passing
through p such that the segment ` C is at least as long as any segment
parallel to ` and contained in C. 4
(b) Show that (a) may fail for C compact but not convex. 1
conv(A1 ) conv(A2 ) 6= .
10 Chapter 1: Convexity
Proof. Let A = {a1 , a2 , . . . , ad+2 }. These d+2 points are necessarily affinely
dependent. That is, there exist real numbers 1 , . . . , d+2 , not all of them 0,
Pd+2 Pd+2
such that i=1 i = 0 and i=1 i ai = 0.
Set P = {i: i > 0} and N = {i: i < 0}. Both P and N are nonempty.
We claim that P and N determine the desired subsets. Let us put A1 =
{ai : i P } and A2 = {ai : i N }. We are going to exhibit a point x that is
contained in P the convex hulls of both thesePsets.
Put S = iP i ; we also have S = iN i . Then we define
X i
x= ai . (1.1)
S
iP
Pd+2 P P
Since i=1 i ai = 0 = iP i ai + iN i ai , we also have
X i
x= ai . (1.2)
S
iN
conv({ai : i I1 }) conv({ai : i I2 }) 6= .
a1
C2
a4 x a3
C1
a2
C3 C4
Exercises
1. Prove Caratheodorys theorem (you may use Radons lemma). 4
2. Let K Rd be a convex set and let C1 , . . . , Cn Rd , n d+1, be
convex sets such that the intersection of every d+1 of them contains a
translated copy of K. Prove that then the intersection of all the sets Ci
also contains a translated copy of K. 2
This result was noted by Vincensini [Vin39] and by Klee [Kle53].
3. Find an example of 4 convex sets in the plane such that the intersection
of each 3 of them contains a segment of length 1, but the intersection of
all 4 contains no segment of length 1. 1
4. A strip of width w is a part of the plane bounded by two parallel lines at
distance w. The width of a set X R2 is the smallest width of a strip
containing X.
(a) Prove that a compact convex set of width 1 contains a segment of
length 1 of every direction. 3
(b) Let {C1 , C2 , . . . , Cn } be closed convex sets in the plane, n 3, such
that
Tn the intersection of every 3 of them has width at least 1. Prove that
i=1 Ci has width at least 1.
2
1.3 Radons Lemma and Hellys Theorem 13
(c) Construct a nonempty set X R2 such that each of its finite subsets
can be seen from some point of X but X is not star-shaped. 2
The result in (b), as well as the d-dimensional generalization (with ev-
ery d+1 regions V (x) intersecting), is called Krasnoselskis theorem; see
[Eck93] for references and related results.
9. In the situation of Radons lemma (A is a (d+2)-point set in Rd ), call
a point x Rd a Radon point of A if it is contained in convex hulls of
two disjoint subsets of A. Prove that if A is in general position (no d+1
points affinely dependent), then its Radon point is unique. 3
10. (a) Let X, Y R2 be finite point sets, and suppose that for every subset
S X Y of at most 4 points, S X can be separated (strictly) by a
line from S Y . Prove that X and Y are line-separable. 3
(b) Extend (a) to sets X, Y Rd , with |S| d+2. 5
The result (b) is called Kirchbergers theorem [Kir03].
14 Chapter 1: Convexity
conv( X)
1.4 Centerpoint and Ham Sandwich 15
d
Letting run through all open half-spaces with |X | > d+1 n, we obtain
d
a family C of compact convex sets. Each of them contains more than d+1 n
points of X, and so the intersection of any d+1 of them contains at least
one point of X. The family C consists of finitely
T many distinct sets (since X
has finitely many distinct subsets), and so C = 6 by Hellys theorem. Each
point in this intersection is a centerpoint. 2
machinery than the ham-sandwich theorem. However, the weaker result with
1 1
d+1 instead of dk+2 is easy to prove; see Exercise 2.
Exercises
1. (Centerpoints for general mass distributions)
(a) Let be a Borel probability measure on Rd ; that is, (Rd ) = 1 and
each open set is measurable. Show that for each open half-space with
() > t there exists a compact set C with (C) > t. 2
(b) Prove that each Borel probability measure in Rd has a centerpoint
(use (a) and the infinite Hellys theorem). 2
2. Prove that for any k finite sets A1 , . . . , Ak Rd , where 1 k d, there
exists a (k1)-flat such that every hyperplane containing it has at least
1
d+1 |Ai | points of Ai in both of its closed half-spaces for all i = 1, 2, . . . , k.
1
5
Convex Polytopes
Convex polytopes are convex hulls of finite point sets in Rd . They consti-
tute the most important class of convex sets with an enormous number of
applications and connections.
Three-dimensional convex polytopes, especially the regular ones, have
been fascinating people since the antiquity. Their investigation was one of
the main sources of the theory of planar graphs, and thanks to this well-
developed theory they are quite well understood. But convex polytopes in
dimension 4 and higher are considerably more challenging, and a surpris-
ingly deep theory, mainly of algebraic nature, was developed in attempts to
understand their structure.
A strong motivation for the study of convex polytopes comes from prac-
tically significant areas such as combinatorial optimization, linear program-
ming, and computational geometry. Let us look at a simple example illus-
trating how polytopes can be associated with combinatorial objects. The
3-dimensional polytope in the picture
2341 1342
2431 1243
1432
2143
3421 1423 1234
1324 2134
3412 2413
2314 3124
4312
4213 3214
18 Chapter 5: Convex Polytopes
a2
a3
a
0
D0 (a)
v4
`1
v5
a5
a4 v3
a1 0
v1 = D0 (`1 ) a2
a3
v2
20 Chapter 5: Convex Polytopes
This follows easily from the properties of duality listed below (of course, there
is nothing special about a pentagon here). Thus, the considered set of lines
can be nicely described in the dual plane. A similar passage from lines to
points or back is useful in many geometric or computational problems.
Properties of the duality transform. Let p be a point of Rd distinct
from the origin and let h be a hyperplane in Rd not containing the origin.
Let h stand for the closed half-space bounded by h and containing the
origin, while h+ denotes the other closed half-space bounded by h. That is,
if h = {x Rd : ha, xi = 1}, then h = {x Rd : ha, xi 1}.
5.1.2 Lemma (Duality preserves incidences).
(i) p h if and only if D0 (h) D0 (p).
(ii) p h if and only if D0 (h) D0 (p) .
5.1.3 Definition (Dual set). For a set X Rd , we define the set dual to
X, denoted by X , as follows:
Another common name used for the duality is polarity; the dual set would
then be called the polar set. Sometimes it is denoted by X .
Geometrically, X is the intersection of all half-spaces of the form D0 (x)
with x X. Or in other words, X consists of the origin plus all points y
such that X D0 (y) . For example, if X is the pentagon a1 a2 . . . a5 drawn
above, then X is the pentagon v1 v2 . . . v5 .
For any set X, the set X is obviously closed and convex and contains
the origin. Using the separation theorem (Theorem 1.2.4), it is easily shown
that for any set X Rd , the set (X ) is the closure of conv(X {0}). In
particular, for a closed convex set containing the origin we have (X ) = X
(Exercise 3).
For a hyperplane h, the dual set h is different from the point D0 (h).1
For readers familiar with the duality of planar graphs, let us remark that
it is closely related to the geometric duality applied to convex polytopes in
R3 . For example, the next drawing illustrates a planar graph and its dual
graph (dashed):
1
In the literature, however, the star notation is sometimes also used for the dual
point or hyperplane, so for a point p, the hyperplane D0 (p) would be denoted by
p , and similarly, h may stand for D0 (h).
5.1 Geometric Duality 21
Later we will see that these are graphs of the 3-dimensional cube and of
the regular octahedron, which are polytopes dual to each other in the sense
defined above. A similar relation holds for all 3-dimensional polytopes and
their graphs.
Other variants of duality. The duality transform D0 defined above is just
one of a class of geometric transforms with similar properties. For some pur-
poses, other such transforms (dualities) are more convenient. A particularly
important duality, denoted by D, corresponds to moving the origin to the
minus infinity of the xd -axis (the xd -axis is considered vertical). A formal
definition is as follows.
5.1.4 Definition (Another duality). A nonvertical hyperplane h can be
uniquely written in the form h = {x Rd : xd = a1 x1 + + ad1 xd1 ad }.
We set D(h) = (a1 , . . . , ad1 , ad ). Conversely, the point a = (a1 , . . . , ad1 , ad )
maps back to h.
The property (i) of Lemma 5.1.2 holds for this D, and an analogue of (ii)
is:
(ii0 ) A point p lies above a hyperplane h if and only if the point D(h) lies
above the hyperplane D(p).
Exercises
1. Let C = {x Rd : |x1 | + + |xd | 1}. Show that C is the d-di-
mensional cube {x Rd : max |xi | 1}. Picture both bodies for d = 3.
2
2. Prove the assertion made in the text about the lines intersecting a convex
pentagon. 2
3. Show that for any X Rd , (X ) equals the closure of conv(X {0}),
where X stands for the dual set to X. 3
4. Let C Rd be a convex set. Prove that C is bounded if and only if 0
lies in the interior of C. 2
5. Show that C = C if and only if C is the unit ball centered at the origin.
2
algorithm, but the problem is to find an efficient algorithm that would allow
one to handle large real-world problems. This algorithmic question is not yet
satisfactorily solved. Moreover, in some cases the number of required half-
spaces may be astronomically large compared to the number n of points, as
we will see later in this chapter.
As another illustration of the computational difference between V -po-
lytopes and H-polytopes, we consider the maximization of a given linear
function over a given polytope. For V -polytopes it is a trivial problem, since
it suffices to substitute all points of V into the given linear function and select
the maximum of the resulting values. But maximizing a linear function over
the intersection of a collection of half-spaces is the basic problem of linear
programming, and it is certainly nontrivial.
Terminology. The usual terminology does not distinguish V -polytopes and
H-polytopes. A convex polytope means a point set in Rd that is a V -polytope
(and thus also an H-polytope). An arbitrary, possibly unbounded, H-poly-
hedron is called a convex polyhedron. All polytopes and polyhedra considered
in this chapter are convex, and so the adjective convex is often omitted.
The dimension of a convex polyhedron is the dimension of its affine hull.
It is the smallest dimension of a Euclidean space containing a congruent
copy of P . The phrase d-dimensional polytope is often abbreviated to d-
polytope.
Basic examples. One of the easiest classes of polytopes is that of cubes.
The d-dimensional cube as a point set is the Cartesian product [1, 1]d.
Pd
It is also the unit ball of the `1 -norm kxk1 = i=1 |xi | . As an H-polytope,
it can be expressed by the 2d half-spaces of the form h, xi 1, where runs
through all vectors in {1, 1}d.
The polytopes with the smallest possible number of vertices (for a given
dimension) are called simplices.
5.2.3 Definition (Simplex). A simplex is the convex hull of an affinely
independent point set in some Rd .
A d-dimensional simplex in Rd can also be represented as an intersection
of d+1 half-spaces, as is not difficult to check.
A regular d-dimensional simplex is the convex hull of d+1 points with all
pairs of points having equal distances.
(1, 0, 0)
(0, 1, 0)
Exercises
1. Verify that a d-dimensional simplex in Rd can be expressed as the inter-
section of d+1 half-spaces. 2
2. (a) Show that every convex polytope in Rd is an orthogonal projection
of a simplex of a sufficiently large dimension onto the space Rd (which
we consider embedded as a d-flat in some Rn ). 3
(b) Prove that every convex polytope P symmetric about 0 (i.e., with
P = P ) is the affine image of a crosspolytope of a sufficiently large
dimension. 3
P
h
5
1234 125 235 345 145
3 12 23 34 14 15 25 35 45
4
1 2
P 1 2 3 4 5
The vertices are numbered 15, and the faces are labeled by the vertex sets.
5.3 Faces of a Convex Polytope 29
The face lattice is graded, meaning that every maximal chain has the same
length (the rank of a face F is dim(F )+1). Quite obviously, it is atomic: Every
face is the join of its vertices. A little less obviously, it is coatomic; that is,
every face is the meet (intersection) of the facets containing it. An important
consequence is that combinatorial type of a polytope is determined by the
vertexfacet incidences. More precisely, if we know the dimension and all
subsets of vertices that are vertex sets of facets (but without knowing the
coordinates of the vertices, of course), we can uniquely reconstruct the whole
face lattice in a simple and purely combinatorial way.
Face lattices of convex polytopes have several other nice properties, but no
full algebraic characterization is known, and the problem of deciding whether
a given lattice is a face lattice is algorithmically difficult (even for 4-dimen-
sional polytopes).
The face lattice can be a suitable representation of a convex polytope in
a computer. Each j-face is connected by pointers to its (j1)-faces and to
the (j+1)-faces containing it. On the other hand, it is a somewhat redundant
representation: Recall that the vertexfacet incidences already contain the
full information, and for some applications, even less data may be sufficient,
say the graph of the polytope.
The dual polytope. Let P be a convex polytope containing the origin in
its interior. Then the dual set P is also a polytope; we have verified this in
the proof of Theorem 5.2.2.
5.3.4 Proposition. For each j = 1, 0, . . . , d, the j-faces of P are in a
bijective correspondence with the (dj1)-faces of P . This correspondence
also reverses inclusion; in particular, the face lattice of P arises by turning
the face lattice of P upside down.
Again we refer to the readers diligence or to [Zie94] for a proof. Let us
examine a few examples instead.
Among the five regular Platonic solids, the cube and the octahedron are
dual to each other, the dodecahedron and the icosahedron are also dual, and
the tetrahedron is dual to itself. More generally, if we have a 3-dimensional
convex polytope and G is its graph, then the graph of the dual polytope
is the dual graph to G, in the usual graph-theoretic sense. The dual of a
d-simplex is a d-simplex, and the d-dimensional cube and the d-dimensional
crosspolytope are dual to each other.
The faces of a simplex are again simplices, and so each proper face of a sim-
plicial polytope is a simplex. Among the five Platonic solids, the tetrahedron,
the octahedron, and the icosahedron are simplicial; and the tetrahedron, the
cube, and the dodecahedron are simple. Crosspolytopes are simplicial, and
cubes are simple. An example of a polytope that is neither simplicial nor
simple is the 4-sided pyramid used in the illustration of the face lattice.
The dual of a simple polytope is simplicial, and vice versa. For a simple
d-dimensional polytope, a small neighborhood of each vertex looks combina-
torially like a neighborhood of a vertex of the d-dimensional cube. Thus, for
each vertex v of a d-dimensional simple polytope, there are d edges emanat-
ing from v, and each k-tuple of these edgesuniquely determines one k-face
incident to v. Consequently, v belongs to kd k-faces, k = 0, 1, . . . , d.
Proof of Proposition 5.3.2. In (i) (vertices are extremal), we assume
that P is the convex hull of a finite point set. Among all such sets, we fix one
that is inclusion-minimal and call it V0 . Let Vv be the vertex set of P , and
let Ve be the set of all extremal points of P . We prove that V0 = Vv = Ve ,
which gives (i). We have Ve V0 by the definition of an extremal point.
Next, we show that Vv Ve . If v Vv is a vertex of P , then there is a
hyperplane h with P h = {v}, and all of P \ {v} lies in one of the open
half-spaces defined by h. Hence P \ {v} is convex, which means that v is an
extremal point of P , and so Vv Ve .
Finally we verify V0 Vv . Let v V0 ; by the inclusion-minimality of V0 ,
we get that v 6 C = conv(V0 \ {v}). Since C and {v} are disjoint compact
convex sets, they can be strictly separated by a hyperplane h. Let hv be the
hyperplane parallel to h and containing v; this hv has all points of V0 \ {v}
on one side.
C
v
h hv
G F
h g
h0 P
Exercises
1. Verify that if V Rd is affinely independent, then each subset F V
determines a face of the simplex conv(V ). 2
2. Verify the description of the faces of the cube and of the crosspolytope
given in the text. 3
3. Consider the (n1)-dimensional permutahedron as defined in the intro-
duction to this chapter.
(a) Verify that it really has n! vertices corresponding to the permutations
of {1, 2, . . . , n}. 2
(b) Describe all faces of the permutahedron combinatorially (what sets
of permutations are vertex sets of faces?). 3
(c) Determine the dimensions of the faces found in (b). In particular, show
that the facets correspond to ordered partitions (A, B) of {1, 2, . . . , n},
A, B 6= , and count them. 3
4. Let P R4 = conv{ei ej : i, j = 1, 2, 3, 4, i 6= j}, where e1 , . . . , e4 is
the standard basis (this P is called the 24-cell). Describe the face lattice
of P and prove that P is combinatorially equivalent to P (in fact, P can
be obtained from P by an isometry and scaling). 3
5. Using Proposition 5.3.2, prove the following:
(a) If F is a face of a convex polytope P , then F is the intersection of P
with the affine hull of F . 2
(b) If F and G are faces of a convex polytope P , then F G is a face,
too. 1
32 Chapter 5: Convex Polytopes
In both cases the total number of faces is linear in n. But as the dimension
grows, polytopes become much more complicated. First of all, even the total
number of faces of the most innocent convex polytope, the d-dimensional
simplex, is exponential in d. But here we consider d fixed and relatively
small, and we investigate the dependence on the number of vertices n.
Still, as we will see, for every n 5 there is a 4-dimensional convex
polytope with n vertices and with every two vertices connected by an edge,
i.e., with n2 edges! This looks counterintuitive, but our intuition is based
on the 3-dimensional case. In any fixed dimension d, the number of facets
can be of order nbd/2c , which is rather disappointing for someone wishing to
handle convex polytopes efficiently. On the other hand, complete desperation
is perhaps not appropriate: Certainly not all polytopes exhibit this very bad
behavior. For example, it is known that if we choose n points uniformly at
random in the unit ball B d , then the expected number of faces of their convex
hull is only o(n), for every fixed d.
It turns out that the number of faces for a given dimension and number of
vertices is the largest possible for so-called cyclic polytopes, to be introduced
next. First we define a very useful curve in Rd .
5.4.1 Definition (Moment curve). The curve = {(t, t2 , . . . , td ): t R}
in Rd is called the moment curve.
5.4.2 Lemma. Any hyperplane h intersects the moment curve in at most
d points. If there are d intersections, then h cannot be tangent to , and thus
at each intersection, passes from one side of h to the other.
As a corollary, we see that every d points of the moment curve are affinely
independent, for otherwise, we could pass a hyperplane through them plus
one more point of . So the moment curve readily supplies explicit examples
of point sets in general position.
5.4.3 Definition (Cyclic polytope). The convex hull of finitely many
points on the moment curve is called a cyclic polytope.
How many facets does a cyclic polytope have? Each facet is determined
by a d-tuple of vertices, and distinct d-tuples determine distinct facets. Here
is a criterion telling us exactly which d-tuples determine facets.
34 Chapter 5: Convex Polytopes
Proof. The number of facets equals the number of ways of placing d black
circles and n d white circles in a row in such a way that we have an even
number of black circles between each two white circles.
Let us say that an arrangement of black and white circles is paired if any
contiguous segment of black circles has an even length (the arrangements
permitted by Gales criterion need not be paired because of the initial and
final segments). The number of paired arrangements of 2k black circles and
n 2k white circles is nk
k , since by deleting every second black circle we
get a one-to-one correspondence with selections of the positions of k black
circles among n k possible positions.
5.5 The Upper Bound Theorem 35
Let us return to the original problem, and first consider an odd d = 2k+1.
In a valid arrangement of circles, we must have an odd number of consecutive
black circles at the beginning or at the end (but not both). In the former case,
we delete the initial black circle, and we get a paired arrangement of 2k black
and n12k white circles. In the latter case, we similarly delete the black
circle at the end and again get a paired arrangement as in the first case. This
establishes the formula in the theorem for odd d.
For even d = 2k, the number of initial consecutive black circles is ei-
ther odd or even. In the even case, we have a paired arrangement, which
contributes nk k possibilities. In the odd case, we also have an odd num-
ber of consecutive black circles at the end, and so by deleting the first and
last black circles we obtain a paired arrangement of 2(k1) black circles and
n2k white circles. This contributes nk2
k1 possibilities. 2
Exercises
1. (a) Show that if V is a finite subset of the moment curve, then all the
points of V are extreme in conv(V ); that is, they are vertices of the
corresponding cyclic polytope. 2
(b) Show that any two cyclic polytopes in Rd with n vertices are com-
binatorially the same: They have isomorphic face lattices. Thus, we can
speak of the cyclic polytope. 3
2. Show that for cyclic polytopes in dimensions 4 and higher, every pair
of vertices is connected by an edge. For dimension 4 and two arbitrary
vertices, write out explicitly the equation of a hyperplane intersecting the
cyclic polytope exactly in this edge. 3
3. Determine the f -vector of a cyclic polytope with n vertices in dimensions
4, 5, and 6. 3
2fdd/2e (P ).
Each face of P has at least one vertex, and every vertex of a simple
d-polytope is incident to 2d faces, which gives the first inequality.
We now bound the number of vertices in terms of the number of dd/2e-
faces. This is the heart of the proof, and it shows where the mysterious
exponent bd/2c comes from.
Let us rotate the polytope P so that no two vertices share the xd -co-
ordinate (i.e., no two vertices have the same vertical level).
Consider a vertex v with the d edges emanating from it. By the pigeonhole
principle, there are at least dd/2e edges directed upwards or at least dd/2e
edges directed downwards. In the former case, every dd/2e-tuple of edges
going up determines a dd/2e-face for which v is the lowest vertex. In the
latter case, every dd/2e-tuple of edges going down determines a dd/2e-face
for which v is the highest vertex. Here is an illustration, unfortunately for
the not too interesting 3-dimensional case, showing a situation with 2 edges
going up and the corresponding 2-dimensional face having v as the lowest
vertex:
v
5.5 The Upper Bound Theorem 37
We have exhibited at least one dd/2e-face for which v is the lowest vertex or
the highest vertex. Since the lowest vertex and the highest vertex are unique
for each face, the number of vertices is no more than twice the number of
dd/2e-faces. 2
Warning. For simple polytopes, the total combinatorial complexity is pro-
portional to the number of vertices, and for simplicial polytopes it is pro-
portional to the number of facets (considering the dimension fixed, that is).
For polytopes that are neither simple nor simplicial, the number of faces of
intermediate dimensions can have larger order of magnitude than both the
number of facets and the number of vertices; see Exercise 1.
Nonsimplicial polytopes. To prove the asymptotic upper bound theorem,
it remains to deal with nonsimplicial polytopes. This is done by a perturba-
tion argument, similar to numerous other results where general position is
convenient for the proof but where we want to show that the result holds
in degenerate cases as well. In most instances in this book, the details of
perturbation arguments are omitted, but here we make an exception, since
the proof seems somewhat nontrivial.
5.5.4 Lemma. For any d-dimensional convex polytope P there exists a d-
dimensional simplicial polytope Q with f0 (P ) = f0 (Q) and fk (Q) fk (P )
for all k = 1, 2, . . . , d.
Proof. The basic idea is very simple: Move (perturb) every vertex of P by a
very small amount, in such a way that the vertices are in general position, and
show that each k-face of P gives rise to at least one k-face of the perturbed
polytope. There are several ways of doing this proof.
We process the vertices one by one. Let V be the vertex set of P and
let v V . The operation of -pushing v is as follows: We choose a point v 0
lying in the interior of P , at distance at most from v, and on no hyperplane
determined by the points of V , and we set V 0 = (V \ {v}) {v 0 }. If we
successively v -push each vertex v of the polytope, the resulting vertex set is
in general position and we have a simple polytope.
It remains to show that for any polytope P with vertex set V and any
v V , there is an > 0 such that -pushing v does not decrease the number
of faces.
Let U V be the vertex set of a k-face of P , 0 k d1, and let V 0
arise from V by -pushing v. If v 6 U , then no doubt, U determines a face of
conv(V 0 ), and so we assume that v U . First suppose that v lies in the affine
hull of U \ {v}; we claim that then U \ {v} determines a k-face of conv(V 0 ).
This follows easily from the criterion in Exercise 5.3.7: A subset U V is the
vertex set of a face of conv(V ) if and only if the affine hull of U is disjoint
from conv(V \ U ). We leave a detailed argument to the reader (one must use
the fact that v is pushed inside).
38 Chapter 5: Convex Polytopes
If v lies outside of the affine hull of U \ {v}, then we want to show that
U 0 = (U \ {v}) {v 0 } determines a k-face of conv(V 0 ). The affine hull of U
is disjoint from the compact set conv(V \ U ). If we move v continuously by
a sufficiently small amount, the affine hull of U moves continuously, and so
there is an > 0 such that if we move v within from its original position,
the considered affine hull and conv(V \ U ) remain disjoint. 2
Exercises
1. (a) Let P be a k-dimensional convex polytope in Rk , and Q an `-dimen-
sional convex polytope in R` . Show that the Cartesian product P Q
Rk+` is a convex polytope of dimension k + `. 2
(b) If F is an i-face of P , and G is a j-face of Q, i, j 0, then F G is
an (i + j)-face of P Q. Moreover, this yields all the nonempty faces of
P Q. 3
(c) Using the product of suitable polytopes, find an example of a fat-
lattice polytope, i.e., a polytope for which the total number of faces has
a larger order of magnitude than the number of vertices plus the number
of facets together (the dimension should be a constant). 3
40 Chapter 5: Convex Polytopes
where dist(x, y) denotes the Euclidean distance of the points x and y. The
Voronoi diagram of P is the set of all regions reg(p) for p P . (More precisely,
it is the cell complex induced by these regions; that is, every intersection of
a subset of the regions is a face of the Voronoi diagram.) Here an example of
the Voronoi diagram of a point set in the plane:
(Of course, the Voronoi diagram is clipped by a rectangle so that it fits into a
finite page.) The points of P are traditionally called the sites in the context
of Voronoi diagrams.
5.7.1 Observation. Each region reg(p) is a convex polyhedron with at most
|P |1 facets.
Indeed, \
reg(p) = {x: dist(x, p) dist(x, q)}
qP \{p}
is an intersection of |P | 1 half-spaces. 2
5.7 Voronoi Diagrams 41
If such a passage is possible at all, the robot can always walk along
the edges of the Voronoi diagram of P , except for the initial and final
segments of the tour. This allows one to reduce the robot motion problem
to a graph search problem: We define a subgraph of the Voronoi diagram
consisting of the edges that are passable for the robot.
(A nice triangulation: the Delaunay triangulation) Let P R2 be a finite
point set. In many applications one needs to construct a triangulation of
P (that is, to subdivide conv(P ) into triangles with vertices at the points
of P ) in such a way that the triangles are not too skinny. Of course, for
42 Chapter 5: Convex Polytopes
some sets, some skinny triangles are necessary, but we want to avoid
them as much as possible. One particular triangulation that is usually
very good, and provably optimal with respect to several natural criteria,
is obtained as the dual graph to the Voronoi diagram of P . Two points
of P are connected by an edge if and only if their Voronoi regions share
an edge.
d
x
a
b c
The region of the new point x cuts off portions of the regions of some of
the old points. Let wp be the area of the part of reg(p) in the Voronoi
diagram of P that belongs to reg(x) after inserting x. The interpolated
value f (x) is
w
P p
X
f (x) = f (p).
pPqP wq
U
u(x)
2
e(p)
u(p)
xd+1 = 0
p x
Proof. We just substitute into the equations of U and of e(p). The xd+1 -
coordinate of u(x) is x21 + + x2d , while the xd+1 -coordinate of the point
of e(p) above x is 2p1 x1 + + 2pd xd p21 p2d . The difference is
(x1 p1 )2 + + (xd pd )2 = 2 . 2
Let E(p) denote the half-space lying above the hyperplane e(p). Consider
an n-point set P Rd . By Proposition 5.7.2, x reg(p) holds if and only
if e(p) is vertically closest to U at x among all e(q), q P . Here is what we
have derived:
5.7.3 Corollary. The Voronoi
T diagram of P is the vertical projection of the
facets of the polyhedron pP E(p) onto the hyperplane xd+1 = 0. 2
44 Chapter 5: Convex Polytopes
5.7.4 Corollary. The maximum total number of faces of all regions of the
Voronoi diagram of an n-point set in Rd is O(ndd/2e ).
It can be shown that every sequence of such local flips is finite and
finishes with the Delaunay triangulation of P (Exercise 7). This pro-
cedure has an analogue in higher dimensions, where it gives a simple
and practically successful algorithm for computing Delaunay trian-
gulations (and Voronoi diagrams); see, e.g., Edelsbrunner and Shah
[ES96].
46 Chapter 5: Convex Polytopes
Exercises
1. Prove that the region reg(p) of a point p in the Voronoi diagram of a
finite point set P Rd is unbounded if and only if p lies on the surface
of conv(P ). 2
2. (a) Show that the Voronoi diagram of the 2n-point set {( ni , 0, 0): i =
1, 2, . . . , n} {(0, 1, nj ): j = 1, 2, . . . , n} in R3 has (n2 ) vertices. 3
(b) Let d = 2k+1 be odd, let e1 , . . . , ed be vectors of the standard
orthonormal basis in Rd , and let e0 stand for the zero vector. For
i = 0, 1, . . . , k and j = 1, 2, . . . , n, let pi,j = e2i + nj e2i+1 . Prove that
for every choice of j0 , j1 , . . . , jk {1, 2, . . . , n}, there is a point in Rd for
which the nearest points among the pi,j are exactly p0,j0 , p1,j1 , . . . , pk,jk .
Conclude that the Voronoi diagram of the pi,j has combinatorial com-
plexity (nk ) = (ndd/2e ). 3
48 Chapter 5: Convex Polytopes
given segment is the set of points for which this segment is a closest one.
2
9. Let A and B be two finite point sets in the plane. Choose a0 A arbi-
trarily. Having defined a0 , . . . , ai and b1 , . . . , bi1 , define bi+1 as a point
of B \ {b1 , . . . , bi } nearest to ai , and ai+1 as a point of A \ {a0 , . . . , ai }
nearest to bi+1 . Continue until one of the sets becomes empty. Prove that
at least one of the pairs (ai , bi+1 ), (bi+1 , ai+1 ), i = 0, 1, 2, . . ., realizes the
shortest distance between a point of A and a point of B. (This was used
by Eppstein [Epp95] in some dynamical geometric algorithms.) 3
10. (a) Let C be any circle in the plane x3 = 0 (in R3 ). Show that there exists
a half-space h such that C is the vertical projection of the set h U onto
x3 = 0, where U = {x R3 : x3 = x21 + x22 } is the unit paraboloid. 1
(b) Consider n arbitrary circular disks K1 , . . . , Kn in the plane. Show that
there exist only O(n) intersections of their boundaries that lie inside no
other Ki (this means that the boundary of the union of the Ki consists
of O(n) circular arcs). 3
11. Define a spherical polytope as an intersection of n balls in R3 (such
an object has facets, edges, and vertices similar to an ordinary convex
polytope).
(a) Show that any such spherical polytope in R3 has O(n2 ) faces. You
may assume that the balls are in general position. 4
(b) Find an example of an intersection of n balls having quadratically
many vertices. 3
(c) Show that the intersection of n unit balls has O(n) complexity only.
4
6
Number of Faces in
Arrangements
h = 0 if F h,
1 if F h .
h1 0+00
++ 00+
0
h2 h4 h3
1
This terminology is not unified in the literature. What we call faces are sometimes
referred to as cells (0-cells, 1-cells, and 2-cells).
6.1 Arrangements of Hyperplanes 53
Of course, not all possible sign vectors correspond to nonempty faces. For n
lines, there are 3n sign vectors but only O(n2 ) faces, as we will derive below.
Counting the cells in a hyperplane arrangement. We want to count
the maximum number of faces in an arrangement of n hyperplanes in Rd . As
we will see, this is much simpler than the similar task for convex polytopes!
If a set H of hyperplanes is in general position, which means that the
intersection of every k hyperplanes is (dk)-dimensional, k = 2, 3, . . . , d+1,
the arrangement of H is called simple. For |H| d+1 it suffices to require that
every d hyperplanes intersect at a single point and no d+1 have a common
point.
Every d-tuple of hyperplanes in a simple arrangement determines exactly
one vertex, and so a simple arrangement of n hyperplanes has exactly nd
vertices. We now calculate the number of cells; it turns out that the order of
magnitude is also nd for d fixed.
6.1.1 Proposition. The number of cells (d-faces) in a simple arrangement
of n hyperplanes in Rd equals
n n n
d (n) = + + + . (6.1)
0 1 d
d (n) = d (n 1) + d1 (n 1).
Together with the initial conditions (for d = 1 and for n = 0), this recurrence
determines all values of , and so it remains to check that formula (6.1)
satisfies the recurrence. We have
d (n 1) + d1 (n 1) = n1
n1
+ n1
0 + 1 0
h i
+ n1 n1 n1 n1
2 + 1 + + d + d1
= n1 n n n
0 + 1 + 2 + + d = d (n).
2
54 Chapter 6: Number of Faces in Arrangements
Second proof. This proof looks simpler, but a complete rigorous presenta-
tion is perhaps somewhat more demanding.
We proceed by induction on d, the case d = 0 being trivial. Let H be a set
of n hyperplanes in Rd in general position; in particular, we assume that no
hyperplane of H is horizontal and no two vertices of the arrangement have
the same vertical level (xd -coordinate).
Let g be an auxiliary horizontal hyperplane lying below all the vertices.
A cell of the arrangement of H either is bounded from below, and in this
case it has a unique lowest vertex, or is not bounded from below, and then it
intersects g. The number of cells of the former type is the same as the number
of vertices, which is nd . The cells of the latter type correspond to the cells
in the (d1)-dimensional arrangement induced within g by the hyperplanes
of H, and their number is thus d1 (n). 2
Exercises
1. (a) Count the number of faces of dimensions 1 and 2 for a simple ar-
rangement of n planes in R3 . 2
(b) Express the number of k-faces in a simple arrangement of n hyper-
planes in Rd . 2
2. Prove that the number of unbounded cells in an arrangement of n hyper-
planes in Rd is O(nd1 ) (for a fixed d). 2
3. (a) Check that an arrangement of d or fewer hyperplanes in Rd has no
bounded cell. 2
(b) Prove that an arrangement of d+1 hyperplanes in general position in
Rd has exactly one bounded cell. 3
4. How many d-dimensional cells are there in the arrangement of the d2
plane into faces of dimension 0, 1, 2: the vertices, the edges, and the cells,
respectively. The vertices are the intersections of the segments, the edges are
the portions of the segments after removing S the vertices, and the cells (2-
faces) are the connected components of R2 \ H. (Note that the endpoints
of the segments are not included among the vertices.) While the cells of line
arrangements are convex polygons, those in arrangements of segments can be
complicated regions, even with holes:
O(nd ). This is one of the most useful results about arrangements, with many
surprising applications (a few are outlined below and in the exercises). In
the literature one often finds a (formally weaker) version dealing with sign
patterns of the polynomials pi . A vector {1, 0, +1}n is called a sign
pattern of p1 , p2 , . . . , pn if there exists an x Rd such that the sign of pi (x)
is i , for all i = 1, 2, . . . , n. Trivially, the number of sign patterns for any n
polynomials is at most 3n . For d = 1, it is easy to see that the actual number
of sign patterns is much smaller, namely at most 2nD + 1 (Exercise 1). It is
not so easy to prove, but still true, that there are at most C(d, D) nd sign
patterns in dimension d. This kind of result is generally called the Milnor
Thom theorem (with some more justice, it should also bear the names of
Oleinik and Petrovski, who proved slightly weaker results much earlier).
Here is a more precise (and more recent) version of this statement, where the
dependence on D and d is specified quite precisely.
6.2.1 Theorem (Number of sign patterns). Let p1 , p2 , . . . , pn be d-
variate real polynomials of degree at most D. The number of faces in the
arrangement of their zero sets Z1 , Z2 , . . . , Zn Rd , and consequently
Pd the
number of sign patterns of p1 , . . . , pn as well is at most 2(2D)d i=0 2i 4n+1
i .
For n d 2, this expression is bounded by
d
50Dn
.
d
Proofs of these results are not included here because they would require
at least one more chapter. They belong to the field of real algebraic geometry.
The classical, deep, and extremely extensive field of algebraic geometry mostly
studies algebraic varieties over algebraically closed fields, such as the complex
numbers (and the questions of combinatorial complexity in our sense are
not among its main interests). Real algebraic geometry investigates algebraic
varieties and related concepts over the real numbers or other real-closed fields;
the presence of ordering and the missing roots of polynomials makes its flavor
distinctly different.
Arrangements of pseudolines. An arrangement of pseudolines is a nat-
ural generalization of an arrangement of lines. Lines are replaced by curves,
but we insist that these curves behave, in a suitable sense, like lines: For ex-
ample, no two of them intersect more than once. This kind of generalization
is quite different from, say, arrangements of planar algebraic curves, and so it
perhaps does not quite belong to the present section. But besides mentioning
pseudoline arrangements as a useful and interesting concept, we also need
them for a (typical) example of application of Theorem 6.2.1, and so we kill
two birds with one stone by discussing them here.
An (affine) arrangement of pseudolines can be defined as the arrangement
of a finite collection of curves in the plane that satisfy the following conditions:
58 Chapter 6: Number of Faces in Arrangements
Much of what we have proved for arrangements of lines is true for arrange-
ments of pseudolines as well. This holds for the maximum number of vertices,
edges, and cells, but also for more sophisticated results like the Szemeredi
Trotter theorem on the maximum number of incidences of m points and n
lines; these results have proofs that do not use any properties of straight lines
not shared by pseudolines.
One might be tempted to say that pseudolines are curves that behave
topologically like lines, but as we will see below, in at least one sense this is
profoundly wrong. The correct statement is that every two of them behave
topologically like two lines, but arrangements of pseudolines are more general
than arrangements of lines.
We should first point out that there is no problem with the local struc-
ture of the pseudolines, since each pseudoline arrangement can be redrawn
equivalently (in a sense defined precisely below) by polygonal lines, as a wiring
diagram:
2
This affine definition is a little artificial, and we use it only because we do
not want to assume the readers familiarity with the topology of the projective
plane. In the literature one usually considers arrangements of pseudolines in
the projective plane, where the definition is very natural: Each pseudoline is a
closed curve whose removal does not disconnect the projective plane, and every
two pseudolines intersect exactly once (which already implies that they cross at
the intersection point). Moreover, one often adds the condition that the curves
do not form a single pencil; i.e., not all of them have a common point, since
otherwise, one would have to exclude the case of a pencil in the formulation of
many theorems. But here we are not going to study pseudoline arrangements in
any depth.
6.2 Arrangements of Other Geometric Objects 59
5
4
3
2
1
3
2
1
3
The more usual notion of isomorphism of pseudoline arrangements is defined for
arrangements in the projective plane. The arrangement of H is isomorphic to the
arrangement of H 0 if there exists a homeomorphism of the projective plane
onto itself such that each pseudoline h H is mapped to a pseudoline (h)
H 0 . For affinely isomorphic arrangements in the affine plane, the corresponding
arrangements in the projective plane are isomorphic, but the isomorphism in the
projective plane also allows for mirror reflection and for relocating the infinity.
Combinatorially, the isomorphism in the projective plane can be described using
the (quasi)orderings 1 , . . . , n as well. Here the i have to agree only up to
60 Chapter 6: Number of Faces in Arrangements
p r
q
a possible reversal and cyclic shift for each i, and also the numbering of the
pseudolines by 1, 2, . . . , n is not canonical.
We also remark that two arrangements of lines are isomorphic if and only if
the dual point configurations have the same order type, up to a mirror reflection
of the whole configuration (order types are discussed in Section ??).
4
For isomorphism in the projective plane, one gets an equivalent notion of stretch-
ability.
6.2 Arrangements of Other Geometric Objects 61
b b
of the intersection `i `j is aij aji . To determine the ordering i of the in-
tersections along `i , it suffices to know the ordering of the x-coordinates of
these intersections, and this can be inferred from the signs of the polynomials
pijk (ai , bi , aj , bj , ak , bk ) = (bi bj )(ak ai ) (bi bk )(aj ai ). So the num-
ber of nonisomorphic arrangements of n lines is no larger than the number
of possible sign patterns of the O(n3 ) polynomials pijk in the 2n variables
a1 , b1 , . . . , an , bn , and Theorem 6.2.1 yields the upper bound of 2O(n log n) . For
large n, this is a negligible fraction of the total number of simple pseudoline
arrangements. (Similar considerations apply to nonsimple arrangements as
well.)
The problem of deciding the stretchability of a given pseudoline arrange-
ment has been shown to be algorithmically difficult (at least NP-hard). One
can easily encounter this problem when thinking about line arrangements and
drawing pictures: What we draw by hand are really pseudolines, not lines,
and even with the help of a ruler it may be almost impossible to decide ex-
perimentally whether a given arrangement can really be drawn with straight
lines. But there are computational methods that can decide stretchability in
reasonable time at least for moderate numbers of lines.
Exercises
1. Let p1 (x), . . . , pn (x) be univariate real polynomials of degree at most D.
Check that the number of sign patterns of the pi is at most 2nD+1. 2
2. (Intersection graphs) Let S be a set of n line segments in the plane. The
intersection graph of S is the graph on n vertices, which correspond to
the segments of S, with two vertices connected by an edge if and only if
the corresponding two segments intersect.
(a) Prove that the graph obtained from K5 by subdividing each edge
exactly once is not the intersection graph of segments in the plane (and
not even the intersection graph of any arcwise connected sets in the
plane). 4
(b) Use Theorem 6.2.1 to prove that most graphs are not intersection
graphs of segments: While the total number of graphs on n given vertices
is 2( 2 ) = 2n /2+O(n) , only 2O(n log n) of them are intersection graphs of
n 2