Bounds on the Complexity of Halfspace Intersections when the Bounded Faces have Small Dimension

Discrete & Computational Geometry, May 2013

For a polyhedron \(P\) let \(B(P)\) denote the polytopal complex that is formed by all bounded faces of \(P\). If \(P\) is the intersection of \(n\) halfspaces in \(\mathbb R ^D\), but the maximum dimension \(d\) of any face in \(B(P)\) is much smaller, we show that the combinatorial complexity of \(P\) cannot be too high; in particular, that it is independent of \(D\). We show that the number of vertices of \(P\) is \(O(n^d)\) and the total number of bounded faces of the polyhedron is \(O(n^{d^2})\). For inputs in general position the number of bounded faces is \(O(n^d)\). We show that for certain specific values of \(d\) and \(D\), our bounds are tight. For any fixed \(d\), we show how to compute the set of all vertices, how to determine the maximum dimension of a bounded face of the polyhedron, and how to compute the set of bounded faces in polynomial time, by solving a number of linear programs that is polynomial in \(n\).

A PDF file should load here. If you do not see its contents the file may be temporarily unavailable at the journal website or you do not have a PDF plug-in installed and enabled in your browser.

Alternatively, you can download the file locally and open with any standalone PDF reader:

https://link.springer.com/content/pdf/10.1007%2Fs00454-013-9503-3.pdf

Bounds on the Complexity of Halfspace Intersections when the Bounded Faces have Small Dimension

Discrete Comput Geom Bounds on the Complexity of Halfspace Intersections when the Bounded Faces have Small Dimension David Eppstein 0 Maarten Löffler 0 0 D. Eppstein Department of Computer Science, University of California , Irvine, Irvine, CA , USA For a polyhedron P let B( P) denote the polytopal complex that is formed by all bounded faces of P. If P is the intersection of n halfspaces in RD, but the maximum dimension d of any face in B( P) is much smaller, we show that the combinatorial complexity of P cannot be too high; in particular, that it is independent of D. We show that the number of vertices of P is O(nd ) and the total number of bounded faces of the polyhedron is O(nd2 ). For inputs in general position the number of bounded faces is O(nd ). We show that for certain specific values of d and D, our bounds are tight. For any fixed d, we show how to compute the set of all vertices, how to determine the maximum dimension of a bounded face of the polyhedron, and how to compute the set of bounded faces in polynomial time, by solving a number of linear programs that is polynomial in n. Polyhedral combinatorics; Intersection of halfspaces; Bounded subcomplex; Dimension; Vertex enumeration 1 Introduction Bounds on the complexity of halfspace intersections and convex hulls [ 31,36 ], and algorithms for constructing halfspace intersections and convex hulls [ 1,3,6,8,15,29, 35,38 ], have long been a mainstay in discrete and computational geometry. However, because of their inherent exponential dependence on the dimension of the input, these worst case bounds are useful primarily for polytopes of low to moderate dimension. In contrast, linear programming allows single vertices of halfspace intersections to be found numerically in polynomial time even for high-dimensional inputs [ 25,26,37 ]. Is there an intermediate family of polytope construction problems, with low complexity even for high-dimensional input, but capable of describing more complex sets of features than a single polytope vertex? Given the obstacles that have been identified to finding a truly output-sensitive halfspace intersection algorithm [ 2 ], it may not be reasonable to ask for an outputsensitive algorithm that works efficiently on all input sets of halfspaces that define output polytopes with few vertices. Instead, in this paper, we identify a different parameter of instance complexity, the dimension of the bounded faces of a halfspace intersection (that is, the faces that do not extend to infinity). When this dimension is bounded, we obtain both low numbers of vertices and efficient algorithms for listing them, despite the possibility that the input may have very large numbers of unbounded faces. Figure 1 shows an example polyhedron of which the bounded faces have been marked. These faces form a combinatorial structure that can be described equivalently in several ways: – The bounded subcomplex of an intersection of n halfspaces is the cell complex formed by the set of bounded faces of the intersection. – The subset of faces of a convex polytope that lie above (or below) some linear threshold is combinatorially equivalent to a bounded subcomplex, under a projective transformation that takes the threshold hyperplane to the hyperplane at infinity. A transformation of this type necessarily transforms the faces of the polytope that are entirely above the threshold into bounded faces of the transformed polyhedron, but the faces that cross the threshold (if any exist) become unbounded. – The subset of faces of a convex polytope that are disjoint from some specified facet is again equivalent to a thresholded intersection or a bounded subcomplex. To see this, one may consider a linear threshold determined by a linear function that is zero on the specified facet, positive on the points of the polytope disjoint from the facet, and negative on the other side of the facet. – The complexes considered above are equivalent under projective duality to the subset of faces of a convex polytope that are nonadjacent to some specified vertex. Our interest in the work presented here is in characterizing structures of this type, bounding their combinatorial complexity, and finding efficient algorithms to generate these structures from the halfspaces or points that define them. 1.1 Motivating Applications One motivation for studying bounded subcomplexes comes from the study of algorithms on arbitrary finite metric spaces, and more specifically from the tight span construction, a canonical method of embedding any metric space into a continuous space with properties similar to those of L∞ spaces [ 9,14,24 ]. One way of defining the tight span, for a finite metric space with n points pi , is to coordinatize n-dimensional L∞ space by n variables xi , and to define a polyhedral subset of the space by the n2 linear inequalities xi + x j ≥ distL∞ ( pi , p j ) for each possible pair (i, j ). Then, the tight span is the bounded subcomplex of this polyhedron. For metric spaces satisfying an appropriate general position assumption, the dimension of the bounded subcomplex is between n/3 and n/2 [ 11 ], but certain combinatorially defined metrics, such as the metrics of distances on certain classes of graphs, can have tight spans of much lower dimension [ 17 ]. Our results bound the complexity of these low-dimensional tight spans and allow them to be constructed efficiently, generalizing our previous algorithms for constructing tight spans when they are homeomorphic to subsets of the plane [ 18 ]. Our results can also be interpreted as statements about the complexity of Delaunay triangulations for inputs satisfying strong convex position assumptions. Delaunay triangulations are closely related to convex hulls: the Delaunay triangulation is combinatorially equivalent to the convex hull of a point set lifted to a sphere in one higher dimension, augmented by an extra point at the pole of the sphere, followed by the removal of all faces incident to that pole [ 4 ]. If a D-dimensional set of n points has the property that every interior point of the convex hull of the set belongs to a Delaunay triangulation feature of dimension at least D − d, then our results imply via this lifting relation that the Delaunay triangulation has O(nd )D-dimensional simplices. For instance, if the convex hull of a point set is a stacked polytope (a convex figure formed by gluing simplices facet-to-facet) and the Delaunay triangulation coincides with the gluing pattern of the simplices, then every interior point of the convex hull belongs either to one of the simplices or to one of the glued facets, so d = 1; in this case, the number of simplices in the Delaunay triangulation is exactly n − D. Additionally, many combinatorial optimization problems such as shortest path trees, minimum spanning trees, bipartite minimum weight perfect matchings, and network flows can be expressed as linear programs. The problems of finding the k best solutions to optimization problems of these types have been much studied (e.g., see [ 16,19, 21 ]), and from the polyhedral point of view these sets of the k best solutions can be represented by the vertices of the feasible polyhedron that have the k smallest values of the linear objective function used for the problem. Therefore, it is of interest to understand the combinatorial behavior of the subsets of polyhedron vertices and faces satisfying a linear threshold constraint, or equivalently of the bounded faces of polyhedra. As a somewhat trivial example (easy to prove directly without resorting to our polyhedral point of view), consider the bin packing problem in which the input consists of a set of items with weights wi and a capacity W , and a solution consists of a subset of the items with total weight at most W . If xi is an indicator variable for the inclusion of item i , then the solutions are the vertices of the hypercube 0 ≤ xi ≤ 1 that satisfy the linear constraint wi xi ≤ W. The number of halfspaces defining the hypercube is 2n, and the dimension d of the bounded subcomplex of the hypercube determined by the linear constraint is the maximum number of items that can be packed into a single solution. Therefore, our results imply that the total number of solutions is O(nd ). 1.2 Related Work Herrmann et al. [ 22 ] consider the problem of computing the bounded subcomplex of a polyhedron, as we do here, but they do not provide combinatorial bounds on the complexity of the bounded subcomplex. Their algorithms assume that the vertices and facets of the polyhedron are both already known, and are output-sensitive given this information. Bounded subcomplexes have also been investigated in other contexts. In tropical geometry, the tropical complex defined by a set of points is also equivalent to the set of bounded faces of a polytope defined from the points [ 12 ]. Develin [ 10 ] studied the bounded faces of a certain polytope arising from a problem in algebra, and showed that they are all isomorphic to subpolytopes of permutahedra. Queyranne [ 33 ] used polytopes to model scheduling problems; the polytope defined by Queyranne has a unique bounded facet. In connection with the tight span application, Hirai [ 23 ] showed that the bounded faces of a halfspace intersection form a contractable complex. The view of a bounded subcomplex as the subset of a polytope that is not adjacent to a particular facet is reminiscent of a polytope pair, the subset of a polytope that is adjacent to a particular facet [ 27 ]. However, known results on the complexity of polytope pairs do not appear to apply directly to the complexity of bounded subcomplexes. 1.3 New Results We show that, when the bounded subcomplex consists only of faces of dimension at most d, where d is significantly smaller than the ambient dimension, then it has smaller combinatorial complexity than the bounds given by the upper bound theorem. Specifically, it has O(nd ) vertices, and O(nd2 ) faces. More strongly, when the halfspaces forming the intersection are in general position, we obtain a tighter bound of O(nd ) on the number of faces as well. We also provide several examples showing that our bounds are tight. Based on these combinatorial bounds, we provide algorithms for listing all the vertices or faces of the bounded subcomplex in polynomial time whenever d is a fixed constant. 1.4 Organization The rest of this document is organized as follows. In Sect. 2, we review some standard terminology and facts about polytopes and polyhedra. In Sect. 3, we provide upper bounds on the complexity of the bounded subcomplex of unbounded polyhedra. In Sect. 4, we provide lower bounds, matching the upper boundes in some cases. In Sect. 5, we address the algorithmic question of reporting the bounded subcomplex efficiently. Finally, we conclude in Sect. 6. 2 Preliminaries 2.1 Standard Definitions We begin with some standard material in polyhedral combinatorics. For more background on this material, see [ 20 ] or [ 39 ]. Define a polytope to be the convex hull CH(S) of a finite set S of points, and a polyhedron to be the intersection T of a finite set T of closed halfspaces. Every polytope is a polyhedron; a polyhedron is a polytope if and only if it is bounded. The faces of a polytope or polyhedron P are the sets of the form P ∩ H where H is a closed halfspace whose boundary is disjoint from the relative interior of P. Every face of a polytope is also a polytope, and every face of a polyhedron is also a polyhedron. The dimension dim f of a face f is the dimension of its affine hull aff f . With these definitions, P itself is a face, as is the empty set. By convention the dimension of the empty set is −1. Two faces are incident if one is a subset of the other. We may label the faces of a polytope or polyhedron combinatorially, by subsets of the generating objects for the polytope or polyhedron. That is, a face f of a polytope CH(S) may be identified with the set f ∩ S, and a face f of a polyhedron T may be identified with the set of halfspaces of T whose boundary hyperplanes contain f . This identification is one-to-one: each face is identified with a unique set. The subset relation between faces is either the same as or the reverse of the subset relation between the sets the faces are identified with, for polytopes and polyhedra, respectively. A vertex of a polytope or polyhedron is a 0-dimensional face; it must be a singleton set, containing a single point. An edge of a polytope or polyhedron is a bounded 1dimensional face, consisting of a line segment connecting two vertices. Polyhedra may also have rays and lines, unbounded 1-dimensional faces with one or zero vertices on them, respectively. (In many sources, all one-dimensional faces are called edges, but we prefer this more specific terminology.) If a polytope or polyhedron P has dimension D, then a facet of P is a (D − 1)-dimensional face. If D is also the dimension of the space containing the points or halfspaces from which P was defined, then P is said to be full-dimensional. More generally we define a d-face of P to be a face of dimension d, so for instance a 1-face may be an edge, a ray, or a line. Let v be a vertex of a polytope or polyhedron P, and let h be a hyperplane that separates v from all other vertices of P such that P ∩ h is bounded. We define the link of v to be the intersection P ∩ h. Figure 2 shows an example. Different choices of h will give geometrically different intersections, but they are all related to each other by affine transformations, so as a combinatorial polytope the link is well defined; however, in our proofs we will need to refer to the link as a geometric object, defined as above, rather than as a combinatorial object, so in each such usage we will need to verify that the choice of h does not affect the result. The faces of the link correspond one-for-one, in an incidence-preserving way, with the faces of P that are incident to v. A full-dimensional polytope or polyhedron is simple if every vertex is incident to at most D edges and rays. Equivalently, a polytope or polyhedron is simple if the link of every vertex is a simplex. A polyhedron defined as the intersection of a set of halfspaces in general position (meaning that a small perturbation of any of the halfspaces does not change the combinatorial structure of the polyhedron) is necessarily a simple polyhedron. Dually, a polytope is simplicial if all of its faces except for the polytope itself are simplices. A polytope defined as the convex hull of a set of points in general position is necessarily simplicial. If P is a polytope containing the origin, the polar polytope of P is the intersection of a system of halfspaces, one for each vertex of P: if v is a vertex of P then the corresponding halfplane is the set of points w such that v · w ≤ 1. Although defined as an intersection of halfspaces, the polar polytope is bounded and is therefore a polytope. The faces of the polar polytope correspond one-for-one with the faces of P but in a dimension-preserving way: an i -dimensional face of P corresponds to a (D − i − 1)dimensional face of the polar polytope. The polar polytope of the polar polytope is P again. If P is simple, its polar polytope is simplicial, and if P is simplicial, its polar polytope is simple. 2.2 New Notation If P is a polyhedron or polytope and is a linear function, we define max P and min P to be the face on which takes its minimum or maximum. If the minimum or maximum is unbounded, then we define max P or min P to be the empty set. A polyhedron is pointed if it has at least one vertex. If 0 is a tangent hyperplane to a polyhedron P at a given vertex v, that is not tangent to any higher-dimensional face, and is a linear function that is positive on the side of 0 containing P and negative on the other side, then v = min P, so a polyhedron P is pointed if and only if there exists a linear function for which min P is a single vertex. A polyhedral complex is a finite set C of polyhedra, all in the same ambient space, such that C contains each face of each polyhedron in C and such that the intersection of any two polyhedra in C is a face of both. We define a polytopal complex to be a polyhedral complex in which each member of C is a polytope. Let P be a polytope or polyhedron, a linear function, and B any real number. We define P <B as the polyhedral complex formed by the set of faces of P such that, for every point p of a face in P <B , ( p) < B. Analogously, for B = ∞, we define P <∞ to be the set of faces of P on which is bounded. (This notation directly implies only that is bounded from above, but we define it to mean that it is bounded from below as well.) We define dim P <B to be the maximum dimension of a face in P <B . 3 Upper Bounds 3.1 The Slicing Lemma In order to help prove our main result, we begin with a technical lemma stating that if we slice a polytope by a hyperplane in such a way that one side of the slice contains only faces of low dimension, then the other side of the slice contains a face of high dimension. Figure 3 illustrates the lemma. Lemma 1 Let P be a polytope, and λ be a hyperplane that does not pass through any vertex of P. Then there exist faces f + and f − of P, on opposite sides of λ, such that aff( f + ∪ f −) = aff P. Proof We use induction on dimension. Note that the empty set is also a face of P, so λ need not intersect P. Let be a linear function that is zero on λ, let P+ = P >0 be the complex of faces of P on which is entirely positive, and let P− = P <0 be the complex of faces of P on which is entirely negative. As a base case, if P+ is empty, then we may take f + = ∅ and f − = P. As a second base case, if P+ is a single vertex v, then we may take f + = v and f − to be any facet of P disjoint from v; such a facet must exist, for otherwise P would be unbounded. We may assume without loss of generality (by perturbing λ, if necessary) that no hyperplane parallel to λ passes through two or more vertices of P. By the assumption of general position on λ, does not take the same value on any two vertices of P. Let v be the vertex in P+ minimizing , and let L be the link of v (with an arbitrary choice of the intersecting hyperplane μ defining the link). Let L+ = L > (v) and L− = L < (v). By the induction hypothesis, applied to the polytope L, we may find faces g+ and g− in L+ and L−, respectively, such that aff(g+ ∪ g−) = aff L. (When P is full-dimensional, this affine hull is just the hyperplane μ.) The face g+ of L+ corresponds to a face f + of P in which all points have a value of larger than or equal to (v); since (v) is strictly positive, f + belongs to P+. However, the face g− of L− corresponds to a face h of P such that v lies in P+ and the remaining vertices of h lie in P−. Let f − be any facet of h disjoint from v, as in the second base case. Then g+ = ( f + ∩ μ) ⊂ f + ⊂ aff( f + ∪ f −). Additionally, v ∈ f +, so and g− = (h ∩ μ) ⊂ h ⊂ aff(v ∪ f −) ⊂ aff( f + ∪ f −), aff P = aff(L ∪ v) = aff(g+ ∪ g− ∪ v) ⊂ aff( f + ∪ f −). But f + ∪ f − is a subset of P, so its affine hull cannot be a proper superset of the affine hull of P, and the two affine hulls are equal, as desired. 3.2 Labeling Low-Dimensional Faces by Small Sets As we now show, the vertices of a polyhedron with low-dimensional bounded faces can be associated to small sets of facets of the polyhedron, leading to polynomial bounds on the number of vertices of the polyhedron. Figure 4 illustrates the lemma for 3-dimensional polyhedra. Lemma 2 Let P be a full-dimensional pointed polyhedron, defined as the intersection of n halfspaces in RD. Let be a linear function with a vertex of P as its minimum, and suppose that does not take the same value at any two different vertices of P. Let B be a given real number, and let d = dim P <B . Let v be any vertex of P <B . Then Fig. 4 A vertex v of a 3-dimensional polyhedron has at least three incident edges. Let S be the set of halfspaces as in Lemma 2. On the left, two edges point “up” (in the direction of ), so v is the minimum of the face between them: |S| = 1. In this case, the only face that is necessarily bounded is the edge that points down (which has dimension 1). On the right, only one edge points up, so v is the minimum of the intersection of the two faces on both sides of it: |S| = 2. In this case, however, at least two edges point down, so the face between them is necessarily bounded (it has dimension 2) there exists a set S of d of the halfspaces defining P , such that v = min ( P ∩ A), where A is the intersection of the boundary hyperplanes of S. Proof Define a linear function v by v (x ) = (x ) − (v). Then v differs from by a simple translation; therefore, it has the same maxima and minima as on each face of P . Let V be the link of v, let V + be the complex of faces of V on which v is positive, and let V − be the complex of faces of V on which v is negative; this definition of V + and V − does not depend on the intersecting hyperplane used to define the link geometrically. By Lemma 1, we can find faces f + and f − in V + and V − respectively, such that aff ( f + ∪ f −) = aff V . Since dim V = dim P − 1 = D − 1, we have dim f + + dim f − ≥ D − 2. Then these two faces f + and f − correspond to faces g+ and g− in P , such that v = min g+ = max g−, and such that dim g+ + dim g− ≥ D. But we know that dim g− ≤ d by assumption, so dim g+ ≥ D − d. Therefore, g+ may be represented as the intersection of P with a set of the boundary hyperplanes of at most d of the defining halfspaces of P . If A is the intersection of these hyperplanes, then v = min g+ = min ( P ∩ A) as desired. 3.3 Bounding the Number of Vertices We are now ready to state our main result. Theorem 1 Let P be a full-dimensional pointed polyhedron, defined as the intersection of n halfspaces in RD , let be a linear function which attains a minimum on P , let B be given and greater than the minimum value of , and suppose that dim P <B = d < D. Then the number of vertices of P <B is at most n d D − d Proof Lemma 2 gives a formula v = min ( P ∩ A) by which each vertex v of P may be obtained from a subset of at most d of the defining halfspaces of P . We may augment any set of halfspaces determining v in this way so that it has exactly d halfspaces, by making an arbitrary choice of a sufficient number of the other halfspaces whose boundaries are incident to v. There are dn sets of exactly d halfspaces, each one determines at most one vertex, and all vertices can be determined in this way, but some vertices may be duplicated. In particular the vertex min P belongs to at least D facets, and is the vertex that is determined by each of the D different d-tuples of d these D halfspaces, giving rise to the correction terms in the formula. Corollary 1 Let P be a polyhedron, defined as the intersection of n halfspaces in RD, let be a linear function which attains a minimum on P, let B be given, and suppose that dim P <B = d < D. Then the number of vertices of P <B is O(nd ). Proof We may assume without loss of generality that P is full-dimensional, for otherwise we may restrict our attention to the affine hull of P and eliminate any halfspaces that contain the entire affine hull. If P is not pointed or B does not exceed the minimum value of , then P <B has zero D vertices and the result is obvious. Otherwise, we may ignore the − d + 1 correction terms in Theorem 1, obtaining a formula which grows asymptotically as O(nd ) and is independent of D. 3.4 Euler’s Formula Letting Φ P <B denote the set of faces of P <B , define the Euler characteristic χ P <B = (−1)dim f . f ∈Φ(P <B ) Recall that we include the empty set as a face, as well as P itself in the case that max P < B. As is well known, with this definition, χ ( P) = 0 for any convex polytope P; Ziegler [ 39 ] gives a nice proof of this fact based on shelling. As we now show, the Euler characteristic of P <B behaves similarly to the Euler characteristic of an entire polytope. This fact will lead to improved bounds on the number of faces of P <B , because it will imply that the d-dimensional faces can be charged against other faces of lower dimension. Our proof can be viewed as a dual form of the shelling proof of Euler’s formula for polytopes. Theorem 2 Let P be a polytope or polyhedron, let be a linear function, and let B be either ∞ or a real number. Additionally, suppose that P <B is nonempty. Then χ ( P <B ) = 0. Proof We use induction, both on the dimension of P <B and on the number of vertices of P <B . As a base case, the result is clearly true if P <B consists only of a single vertex: for, in that case, ( P <B ) contains two faces, the empty set of dimension −1 and that vertex, and these two faces have opposite signs in the sum defining χ ( P <B ), cancelling each other out. Otherwise, P <B has at least two vertices. We may assume without loss of generality (by perturbing if necessary) that no two vertices of P <B have the same value of . Let v be the vertex of P <B with the maximum value of , and let B = (v). Then, by induction, χ ( P <B ) = 0. P <B differs from P <B by the set of faces incident to v. Let L be the link of v in P; then the face structure of L <B does not depend on the intersecting hyperplane used to define the geometry of L, and the faces incident to v in P <B are in one-toone correspondence with the faces of L <B . For instance, the empty face of L <B corresponds to the vertex v of P <B , and each vertex u of L <B corresponds to an edge uv of P <B . In this correspondence, the dimension of a face in L <B is one less than the dimension of the corresponding face of P <B . Therefore, each face of L <B makes a contribution to the Euler characteristic of L <B with the opposite sign to the contribution of the corresponding face in P <B . Therefore, χ ( P <B ) = χ ( P <B ) −χ (L <B ). But L <B has lower dimension than P <B , and is non-empty (it includes at least one vertex corresponding to an edge that can be reached from v by a single step of the simplex method for minimizing the objective function ), so by induction on dimension, χ (L <B ) = 0. Therefore, χ P <B = χ ( P <B ) − χ (L <B ) = 0 − 0 = 0. As a simpler proof for the special case in which P is a polytope and f is a facet of P on which = B, let ε be sufficiently small that there are no vertices of P for which is between B and B − ε, and let λ be the hyperplane = B − ε. Then χ ( P <B ) = χ ( P) + χ ( P ∩ λ) − χ ( f ) = 0 + 0 − 0 = 0. 3.5 Bounding the Number of Faces Theorem 3 Let P be a polyhedron, defined as the intersection of n halfspaces in RD, let be a linear function which attains a minimum on P, let B be given, and suppose that dim P <B = d < D. Then the number of faces of P <B is O(nd2 ). Proof By Theorem 2, the number of d-dimensional faces is no larger than the total number of faces of all lower dimensions. Therefore, we need only count faces of dimension up to d − 1. But each such face is the intersection of P with the affine hull of a set of at most d vertices of P <B . There are O(nd ) vertices, so there are O(nd2 ) sets of at most d vertices, and therefore O(nd2 ) faces. For instances in general position, a considerably sharper bound may be obtained. Theorem 4 Let P be a polyhedron, defined as the intersection of n halfspaces in RD, let be a linear function which attains a minimum on P, let B be given, and suppose that dim P <B = d < D. Additionally, suppose that the halfspaces defining P are in general position and that P has N vertices. Then the number of i -dimensional faces of P <B is at most N di . Proof We charge each i -dimensional face f of P <B to the vertex max f . Let v be any vertex, and let L be its link. Then the faces charged to v correspond one-toone with the faces of L < (v). By the general position assumption, L is a simplex, and therefore L < (v) is also a simplex. Because the faces of P <B correspond to faces with dimension one less in L < (v), dim L < (v) ≤ d − 1. Thus, the number of i -dimensional faces of P <B that are charged to v is at most the number of (i − 1)-dimensional faces of a (d − 1)-dimensional simplex (counting the empty set as a −1-dimensional face, in the case i = 0), which is di . Corollary 2 Let P be a polyhedron, defined as the intersection of n halfspaces in RD, let be a linear function which attains a minimum on P, let B be given, and suppose that dim P <B = d < D. Additionally, suppose that the halfspaces defining P are in general position. Then the number of faces of P <B is O(nd ). Proof By Theorems 1 and 4, adding the bounds on the number of faces of P <B over all dimensions up to d gives a total that is less than dn 2d < nd 2dd! = O(nd ). 4 Lower Bounds Because of the upper bound theorem, our bounds of O(nd ) on the number of vertices in a bounded subcomplex can only be tight when d ≤ D/2. However, as our main interest is for bounded d and unbounded D, this is not a significant limitation. In this section we investigate lower bounds for small d: examples of bounded subcomplexes that show that some of our upper bounds are tight, and that our bounds on the number of bounded faces do not extend to unbounded faces even when the bounded subcomplex has low dimension. 4.1 When d = 0 Let P be any (D − 1)-dimensional polytope, having facets determined by the linear inequalities a¯i · x ≥ bi . Then the D-dimensional polyhedron defined by the linear inequalities a¯i · x − bi y ≥ 0 is an unbounded cone over P: it has P as its cross-section (say in the hyperplane y = 1) but has only a single vertex at the origin. Examples of this form can be used to show that, even when dim P <B is small, the number of unbounded faces can be large. For instance, if P is a hypercube, defined as the intersection of n = 2(D − 1) facets, then the cone over P has 3n/2 + 2 faces despite having only a single bounded vertex. For any polyhedron, the simplex algorithm may be used to find a path of bounded edges from any vertex to any other vertex. However, if d = 0, there can be no bounded edges. Therefore, in this case, there can only be one vertex. The formula of Theorem 1 always gives the same value n D 0 − 0 + 1 = 1 for this case, so it is tight. – When D = 1, the bounded subcomplex must be a single line segment. – When D = 2, an unbounded two-dimensional polyhedron with n facets always has exactly n − 1 vertices, connected into a path of n − 2 edges (Fig. 5, left). – When D > 2, a bounded subcomplex of dimension one must be a tree (Fig. 5, right). For, the simplex algorithm finds a path between any two vertices, so it is a connected graph, but by Euler’s formula (Theorem 2) it must have exactly one fewer edge than it has vertices. The only connected graphs with this number of edges are the trees. It is known that every tree without degree-two vertices may be realized as the Voronoi diagram of a set of points in the plane, in such a way that the leaves of the tree correspond to infinite rays in the Voronoi diagram [ 28 ]; see [ 5 ] for related treedrawing algorithms. By a standard lifting transformation [ 4 ] this Voronoi diagram in turn may be represented as a polyhedron in three dimensions, with one facet for each of its generating sites, having the same bounded subcomplex as the Voronoi diagram. If T is any tree, then let T be the tree formed from T by adding two new leaf nodes adjacent to each leaf in T , and one new leaf node adjacent to each degree-two vertex in T ; the Voronoi realization of T will have T as its bounded subcomplex. Therefore, every tree may be realized as a bounded subcomplex for D > 2. The Voronoi diagram of n sites in the plane that are in convex position with no four points cocircular forms a tree with n leaves and all other vertices having degree three; therefore, it lifts to a polyhedron that has n facets and n − 2 bounded edges. More generally, embedding the generating set of a Voronoi diagram in D dimensions into a (D + 1)-dimensional space and adding one more generating site far from the others will lead to a Voronoi diagram with a combinatorially equivalent bounded complex. By repeating this construction, starting from the two-dimensional case, and then lifting these Voronoi diagrams to polyhedra, it is possible to find a D-dimensional polyhedron with n facets whose bounded subcomplex is a tree with n − D + 1 edges, for any D. The formula of Theorem 1 simplifies to and the Voronoi-based examples presented above show that this is tight. Since the bound in Theorem 3 on the number of faces in the bounded complex uses only Euler’s formula, which gives the exact number of edges in any tree, that theorem is also tight for this case. 4.3 When d = 2 Any n points on the three-dimensional moment curve (t, t 2, t 3), for t ≥ 0, determine a Voronoi diagram with n−2 vertices [ 13 ]. The same lifting transformation used in 2 the preceding section takes this Voronoi diagram to an unbounded four-dimensional polyhedron, with n defining halfspaces. In this polyhedron, all facets are unbounded (corresponding to the fact that all of the defining sites of the Voronoi diagram are in convex position and therefore define unbounded Voronoi cells), so the maximum dimension of a bounded face is two. There are quadratically many bounded faces (Fig. 6). As this example shows, a nontrivial bound on d does not necessarily exclude examples with superlinear complexity. Corollary 1 states that, for d = 2, the number of vertices in the bounded complex is O(n2), and this example shows the number is also (n2); i.e., the bound is tight in this case. More strongly, it shows that the formula of Theorem 1 is tight to within a 1 − O(1/n) factor in this case. It is consistent with the bound in Theorem 3 for the number of edges and 2-faces of a two-dimensional bounded subcomplex to be quadratically larger than the number of vertices. To show that this is possible, we consider another example, the tight span of the metric space of distances in a complete bipartite graph Kn,n with n > 1. That is, if U and V are the two sides of the bipartition, with n vertices each, then the distance between any two members of U or between any two members of V is defined to be two, while the distance from any member of U to any member of V is defined to be one. The tight span of this space consists of all functions f from U ∪ V to the real numbers satisfying the following two properties: – For any two vertices x and y (not necessarily distinct), f (x ) + f (y) ≥ d(x , y). – For any vertex x , there exists a vertex y with f (x ) + f (y) = d(x , y). Distances between two different functions in the tight span are measured according to the sup norm, i.e., dist( f, g) = supx∈U ∪V | f (x ) − g(x )|. Let f be a function in the tight span, and let u ∈ U and v ∈ V have the minimum value of f on each side of the bipartition. Then (by the second property of tight spans) f (u) and f (v) are both at most one, from which the defining properties of tight spans imply that, for every u ∈ U \ {u}, f (u ) = 2 − f (u) and for every v ∈ V \ {v}, f (v ) = 2 − f (v). Additionally, it must be the case that f (u) + f (v) ≥ 1. For any choice of u and v, and any two numbers f (u) and f (v) with f (u) ≤ 1, f (v) ≤ 1, and f (u) + f (v) ≥ 1, these properties define a unique function f in the tight span of Kn,n. Thus, geometrically, the tight span may be formed by gluing together n2 triangles defined by the inequalities f (u) ≤ 1, f (v) ≤ 1, and f (u) + f (v) ≥ 1, one triangle for each choice of u and v, forming a space with the structure of a cone over Kn,n (Fig. 7). This space has 2n + 1 vertices, n2 + 2n edges, and n2 triangles. However, note that in this case the 2n-dimensional polyhedron for which this is the bounded subcomplex has 4n2 defining halfspaces, so it does not show that Theorem 3 itself is tight. We do not know whether it is possible for a two-dimensional bounded subcomplex, defined from a polytope of n facets, to have simultaneously a number of vertices that is quadratic in n and a number of edges and faces that is quadratic in the number of vertices. 4.4 Additional examples Let P be a four-dimensional pyramid over an octahedron, modified by folding its octahedral facet so that it is split into two square pyramids. Then the subset of faces of P that are nonadjacent to the apex of P are dual to a one-dimensional complex that takes the form of a single line segment: the two square pyramid facets are dual to the endpoints of the line segment, and the square ridge separating these two facets is dual to the line segment itself. However, if the vertices of P are perturbed into general position, then the square becomes a flat tetrahedral facet while each of the two square pyramids is split into two tetrahedra; the dual complex becomes two triangles joined at a vertex. As this example shows, some instances cannot be perturbed into general position without increasing the dimension of the bounded subcomplex. Observation 1 There exists a polyhedron P for which the dimension of its bounded subcomplex is strictly smaller than the dimension of the bounded subcomplex of any general position perturbation of P. Let Q D be the D-dimensional hypercube, formed by intersecting n = 2D halfspaces determined by the inequalities 0 ≤ xi and xi ≤ 1, and let σ be the linear function xi . Then, for any integer 0 ≤ d ≤ D, dim QσD<d+1/2 = d. The number of vertices of QσD<d+1/2 is id=0 Di . For any even integer n, and any constant value of d, this provides an example of a bounded subcomplex in general position with Θ(nd ) vertices. Observation 2 For every constant d, the bound of Corollary 1 is tight up to constant factors. 5 Algorithms We now discuss algorithms for finding the bounded subcomplex of a polyhedron. There are many alternative solutions available, depending on whether the dimension d of the subcomplex is known or unknown to the algorithm, on whether only the vertices of the polyhedron need to be found or whether the whole bounded subcomplex is to be constructed, and on whether we use as a subroutine the algorithm for computing bounded subcomplexes of Herrmann et al. [ 22 ] or whether we directly enumerate the faces of the bounded subcomplex, using linear programming to test whether each face is bounded. Our algorithms will necessarily involve the solution of linear programs and linear feasability problems. Especially in the case of inputs that are not in general position, it is important that these linear programs are solved in an exact model of computation that allows solution vertices to be compared for equality: it is possible that a small perturbation of an input problem, as might occur due to round-off error in a non-exact numerical linear programming algorithm, could significantly increase the dimension of the bounded subcomplex. However, this sort of exact computation model is standard in computational geometry algorithms, and solutions are available when the ambient dimension D is of moderate size [ 30 ]. Even when D is large, strongly polynomial algorithms are known for some special cases of linear programming, such as the case with two variables per inequality that arises in the tight span construction [ 32 ]. We let L denote the time to solve a linear program of ambient dimension D and n constraints, or to determine whether such a program is infeasible or unbounded. It may be possible to extend our algorithms to work in non-exact computation models, provided that the input is described by limited precision rational numbers, using interior point methods and rounding techniques. See e.g., [ 34 ]. 5.1 When the Dimension Bound is Known When the input consists of a set of n halfspaces together with the dimension d of the bounded subcomplex, we have the following results: – We can construct all vertices of the given polyhedron in time O(nd L). This follows immediately from Lemma 2 which gives a formula v = min ( P ∩ A) allowing each vertex v of P to be obtained as the solution to a linear program in a subspace of dimension D − d. – If the input is in general position, we can construct the bounded subcomplex in time O(nd L +n5d ). This method generates the vertices as above, exhaustively tests each vertex-facet pair to find all the vertex-facet incidences, and then uses the algorithm of Herrmann et al. [ 22 ] to construct the bounded subcomplex from the vertex-facet incidences. The algorithm of Herrmann et al. takes time O(N 2βφ + N 3φ2), where N is the number of vertices of the given polyhedron (here at most O(nd )), β is the number of vertex-facet incidences (at most O(nd+1), and φ is the number of faces of the bounded subcomplex (again, at most O(nd )). – If the input is not in general position, then N can be at most O(nd ) and φ can be at most O(nd2 ), as our previous bounds show. Plugging these bounds into the analysis of the same method of Herrmann et al., in place of the tighter bounds for general position inputs, shows that this method takes time O(nd L + n2d2+3d ). – If the input is in general position, we can alternatively construct the bounded subcomplex in time O(n2d L). The method is to maintain a list of faces of the bounded subcomplex, initially containing all the vertices. Then, for each face f added to the list, and each vertex v, we compute the affine hull of f ∪ v, use linear programming subproblems to determine whether this affine hull lies on the boundary of the polyhedron and has a vertex of maximum value, and if so check that the face contained in this affine hull is distinct from the ones already discovered. Whenever we find a new face in this way we add it to the list. There are O(n2d ) face-vertex pairs, each taking time O(L) to check, so the time bound is as given. – If the input is not in general position, the same method takes time O(nd2+d L). 5.2 When the Dimension Bound is Unknown When d is not given as input (as seems more likely to occur in most applications of this problem), constructing the bounded subcomplex becomes more complicated. A naive approach would be to repeatedly apply one of the algorithms for known d, described above, for increasing values of d until it calculates a correct answer. It is possible to save some redundant work in this approach,by interleaving the construction of vertices (as the solutions of linear programming subproblems with decreasing dimension) with the construction of faces of increasing dimension; in this way, the total work for the whole sequence of d repetitions of the known-d algorithm may be bounded by the time for the repetition with the largest value of d. However, this does not provide a complete solution to the problem, because “until it calculates a correct answer” is not a well-specified condition for our algorithm to test. How can we tell, in an algorithm for computing a bounded subcomplex with unknown d, whether we have chosen d to be large enough? That is, how can we tell when our algorithm has found all the bounded faces and can stop? An answer is provided by the following lemma, which we illustrate in Fig. 8. Lemma 3 Let H be a given set of halfspaces, let P be the D-dimensional polyhedron formed as the intersection of the halfspaces in H , let d ≤ D be a number, and let be a linear function in general position with respect to P (in the same sense as used in Lemma 2, namely that no two vertices have the same value of ). For any given set S of halfspaces in H , let PS denote the intersection of P with the hyperplanes bounding the halfspaces in S. Let V be the set of all vertices of P of the form min PS for sets S of at most d halfspaces in H , and F be a set of bounded faces of P that includes the empty face. Suppose additionally that the following three conditions are all true: 1. For each set S of at most d + 1 halfspaces in H, min PS (if it exists) belongs to V . 2. Every face in F has dimension at most d. 3. For every pair ( f, v) of a face f in F and a vertex v in V , with A being the affine hull of f ∪ v, one of the following three possibilities is true: (a) A contains an interior point of P and d < D − 1, (b) Some face f ∈ F has affine hull A, or (c) is unbounded on A ∩ P. Then F is the bounded subcomplex of the given polyhedron. Proof We assume for a contradiction that there is a bounded face f that does not belong to F ; among all such faces, let f have the minimum possible dimension, and let v = max f . If f had dimension at most d, then by the same argument as in the proof of Lemma 2, v would belong to V , and the pair ( f , v) would violate condition (3) of the lemma where f is any facet of f nonincident to v. We can assume without loss of generality that the lower link of v (the subset of the link consisting of the faces whose values in are entirely less than that of the vertex itself) has dimension exactly d: it has dimension at least d, because it contains a face of dimension dim f − 1 corresponding to f , and if it had a higher dimensional face then we could reduce the dimension by one unit per step by moving from f to a facet of this higher dimensional face; condition (2) of the lemma ensures that, at each step, we continue to have a face f that does not belong to F . But, if the lower link of v has dimension exactly d, then by Lemma 2, v would be representable as min PS for a set S of at most d + 1 halfspaces of H , violating condition (1) of the lemma. This contradiction shows that no such face f exists. Theorem 5 Given a polyhedron whose bounded complex has dimension d (with d unknown to the algorithm) we can construct the bounded complex in time O(nd2+d L). If the input is in general position, we can construct the bounded complex in time O(n2d L). Proof We choose a linear function in general position; this may be simulated symbolically by starting with an arbitrary linear function such as the one that maps each point to the value of its first coordinate and then applying a tie-breaking rule that compares tuples of coordinates lexicographically [ 7 ]. We then apply the algorithm for known d, for increasing values of d, until the condition of the lemma is met. Testing the condition takes time O(nd2+d L), or O(n2d L) for inputs in general position, matching the time for the known-d algorithm on the correct value of d. In all of the algorithms described in this section, the solution is found within an amount of time and a number of linear programming subproblems that is polynomial for any fixed value of d. It would be of interest to determine whether the method of Herrmann et al. [ 22 ], which uses many fewer linear programs at the expense of greater running time in the other parts of the algorithm, can be adapted to the case where d is unknown. 6 Discussion We have shown that, for any fixed d, bounded subcomplexes of polyhedra that have dimension at most d have polynomial complexity. Our bounds on the numbers of vertices of the bounded subcomplex are tight for small values of d. However, our bounds on the numbers of faces of higher dimensions do not appear to be tight. In other bounds on the complexity of polytopes, it is possible to considerably simplify the problem by assuming that the input is in general position; for our problem, too, such an assumption would be very helpful (it would lower the exponent of the polynomial from d2 to d), but it is not always possible to perturb the input into general position without changing its dimension. Nevertheless, we would like to know whether instances that are not in general position have the same complexity as, or higher complexity than, instances that are in general position. For the problem of constructing tight spans, the high exponents in our bounds become even more unsatisfactory, because the number of halfspaces of the polyhedron defining the tight span as its bounded subcomplex is already quadratic in the number of points of the input metric space. For instance, for tight spans of n-point metric spaces that have only two-dimensional faces (that is, when d = 2), we get a bound of O(n8) on the complexity of the tight span. In contrast, the first author [ 18 ] has proven that under a stronger two-dimensionality assumption, that the tight span is homeomorphic to a subset of the plane, it may be described as a complex of only O(n) cells and may be constructed in time O(n2), optimal since the input distance matrix has size O (n2). It would be of interest to obtain tighter bounds for d-dimensional tight spans, even for the case d = 2 without the additional requirement that the tight span be homeomorphic to a planar set. Acknowledgments This work was supported in part by NSF Grant 0830403 and by the Office of Naval Research under Grant N00014-08-1-1015. 1. Avis , D. , Fukuda , K. : A pivoting algorithm for convex hulls and vertex enumeration of arrangements and polyhedra . Discrete Comput. Geom . 8 ( 1 ), 295 - 313 ( 1992 ). doi: 10 .1007/BF02293050 2. Avis , D. , Bremner , D. , Seidel , R.: How good are convex hull algorithms? Comput . Geom. Theory Appl . 7 ( 5-6 ), 265 - 301 ( 1997 ). doi: 10 .1016/S0925- 7721 ( 96 ) 00023 - 5 3. Barber , C.B. , Dobkin , D.P. , Huhdanpaa , H.L. : The quickhull algorithm for convex hulls . ACM Trans. Math. Softw . 22 ( 4 ), 469 - 483 ( 1996 ). doi: 10 .1145/235815.235821 4. Brown , K.Q. : Voronoi diagrams from convex hulls . Inf. Process. Lett . 9 ( 5 ), 223 - 228 ( 1979 ). doi: 10 . 1016/ 0020 - 0190 ( 79 ) 90074 - 7 5. Carlson , J. , Eppstein , D. : Trees with convex faces and optimal angles . In: Proceedings of the 14th International Symposium on Graph Drawing. Lecture Notes in Computer Science , Vol. 4372 , pp. 77 - 88 . Springer, Berlin ( 2006 ). doi: 10 .1007/978-3- 540 -70904- 6 _ 9 6. Chand , D.R. , Kapur , S.S.: An algorithm for convex polytopes . J. ACM 17 , 78 - 86 ( 1970 ). doi: 10 .1145/ 321556.321564 7. Charnes , A. : Optimality and degeneracy in linear programming . Econometrika 20 , 160 - 170 ( 1952 ) 8. Chazelle , B. : An optimal convex hull algorithm in any fixed dimension . Discrete Comput. Geom . 10 ( 1 ), 377 - 409 ( 1993 ). doi: 10 .1007/BF02573985 9. Chrobak , M. , Larmore , L.L. : Generosity helps or an 11-competitive algorithm for three servers . J. Algorithms 16 , 234 - 263 ( 1994 ). doi: 10 .1006/jagm. 1994 .1011 10. Develin , M.: A complexity bound on faces of the hull complex . Discrete Comput. Geom . 32 ( 4 ), 471 - 479 ( 2004 ). doi:10.1007/s00454-004-1134-2 11. Develin , M. : Dimensions of tight spans . Ann. Comb. 10 ( 1 ), 53 - 61 ( 2006 ). doi: 10 .1007/ s00026-006-0273-y 12. Develin , M. , Sturmfels , B. : Tropical convexity . Doc. Math. 9 , 1 - 27 ( 2004 ) 13. Dewdney , A.K. , Vranch , J.K. : A convex partition of R3 with applications to Crum's problem and Knuth's post-office problem . Utilitas Math . 12 , 193 - 199 ( 1977 ) 14. Dress , A.W.M. : Trees, tight extensions of metric spaces, and the cohomological dimension of certain groups . Adv. Math . 53 , 321 - 402 ( 1984 ). doi: 10 .1016/ 0001 - 8708 ( 84 ) 90029 -X 15. Dyer , M.E. : The complexity of vertex enumeration methods . Math. Oper. Res . 8 ( 3 ), 381 - 402 ( 1983 ) 16. Eppstein , D. : Finding the k shortest paths . SIAM J. Comput . 28 ( 2 ), 652 - 673 ( 1998 ). doi: 10 .1137/ S0097539795290477 17. Eppstein , D. : Manhattan orbifolds . Topol. Appl . 157 ( 2 ), 494 - 507 ( 2009 ). doi: 10 .1016/j.topol. 2009 . 10 .008 18. Eppstein , D. : Optimally fast incremental Manhattan plane embedding and planar tight span construction . J. Comput. Geom . 2 ( 1 ), 144 - 182 ( 2011 ) 19. Frederickson , G.N. : Ambivalent data structures for dynamic 2-edge-connectivity and k smallest spanning trees . In: Proceedings of the 32nd IEEE Symposium on Foundations of Computer Science , pp. 632 - 641 , October 1991 . doi: 10 .1109/SFCS. 1991 .185429 20. Grünbaum , B.: Convex Polytopes . Graduate Texts in Mathematics, Vol. 221 , 2nd edn. Springer, New York ( 2003 ) 21. Hamacher , H.W. , Queyranne , M.: K best solutions to combinatorial optimization problems . Ann. Oper. Res . 4 ( 1 ), 123 - 143 ( 1985 ). doi: 10 .1007/BF02022039 22. Herrmann , S. , Joswig , M. , Pfetsch , M.E. : Computing the bounded subcomplex of an unbounded polyhedron . Comput. Geom. Theory Appl . 46 ( 5 ), 541 - 551 ( 2013 ). doi: 10 .1016/j.comgeo. 2011 . 11 .002 23. Hirai , H.: Characterization of the distance between subtrees of a tree by the associated tight span . Ann. Comb. 10 ( 1 ), 111 - 128 ( 2006 ). doi:10.1007/s00026-006-0277-7 24. Isbell , J.R. : Six theorems about injective metric spaces . Comment. Math. Helv . 39 , 65 - 76 ( 1964 ). doi: 10 .1007/BF02566944 25. Karmarkar , N.: A new polynomial-time algorithm for linear programming . Combinatorica 4 ( 4 ), 373 - 395 ( 1984 ). doi: 10 .1007/BF02579150 26. Khachiyan , L.G. : A polynomial algorithm in linear programming . Soviet Math. Dokl . 20 ( 1 ), 191 - 194 ( 1979 ) 27. Klee , V.: Polytope pairs and their relationship to linear programming . Acta Math . 133 , 1 - 25 ( 1974 ) 28. Liotta , G. , Meijer , H.: Voronoi drawings of trees . Comput. Geom. Theory Appl . 24 ( 3 ), 147 - 178 ( 2003 ). doi: 10 .1016/S0925- 7721 ( 02 ) 00137 - 2 29. Matheiss , T.H. , Rubin , D.S.: A survey and comparison of methods for finding all vertices of convex polyhedral sets . Math. Oper. Res . 5 ( 2 ), 167 - 185 ( 1980 ) 30. Matoušek , J. , Sharir , M. , Welzl , E.: A subexponential bound for linear programming . Algorithmica 16 ( 4 ), 498 - 516 ( 1996 ). doi: 10 .1007/BF01940877 31. McMullen , P.: The maximum numbers of faces of a convex polytope . Mathematika 17 , 179 - 184 ( 1970 ). doi: 10 .1112/S0025579300002850 32. Megiddo , N.: Towards a genuinely polynomial algorithm for linear programming . SIAM J. Comput . 12 ( 2 ), 347 - 353 ( 1983 ). doi:10.1137/0212022 33. Queyranne , M. : Structure of a simple scheduling polyhedron . Math. Program . 58 ( 1 ), 263 - 285 ( 1993 ). doi: 10 .1007/BF01581271 34. Roos , C. , Terlaky , T. , Vial , J.-P. : Interior Point Methods for Linear Optimization . Springer, New York ( 2006 ) 35. Seidel , R.: Constructing higher-dimensional convex hulls at logarithmic cost per face . In: Proceedings of the 18th ACM Symposium on Theory of Computing (STOC '86) , pp. 404 - 413 ( 1986 ). doi: 10 .1145/ 12130.12172 36. Seidel , R.: The upper bound theorem for polytopes: an easy proof of its asymptotic version . Comput. Geom. Theory Appl . 5 ( 2 ), 115 - 116 ( 1995 ). doi: 10 .1016/ 0925 - 7721 ( 95 ) 00013 -Y 37. Spielman , D.A. , Teng , S.-H.: Smoothed analysis of algorithms: why the simplex algorithm usually takes polynomial time . J. ACM 51 ( 3 ), 385 - 463 ( 2004 ). doi: 10 .1145/990308.990310 38. Swart , G.: Finding the convex hull facet by facet . J. Algorithms 6 ( 1 ), 17 - 48 ( 1985 ). doi: 10 .1016/ 0196 - 6774 ( 85 ) 90017 - 3 39. Ziegler , G.M. : Lectures on Polytopes. Graduate Texts in Mathematics, Vol. 152 . Springer, New York ( 1995 )


This is a preview of a remote PDF: https://link.springer.com/content/pdf/10.1007%2Fs00454-013-9503-3.pdf

David Eppstein, Maarten Löffler. Bounds on the Complexity of Halfspace Intersections when the Bounded Faces have Small Dimension, Discrete & Computational Geometry, 2013, 1-21, DOI: 10.1007/s00454-013-9503-3