Tropical bisectors and Voronoi diagrams

In this paper we initiate the study of tropical Voronoi diagrams. We start out with investigating bisectors of finitely many points with respect to arbitrary polyhedral norms. For this more general scenario we show that bisectors of three points are homeomorphic to a non-empty open subset of Euclidean space, provided that certain degenerate cases are excluded. Specializing our results to tropical bisectors then yields structural results and algorithms for tropical Voronoi diagrams.


Introduction
One early route to the success of tropical geometry is based on the tropicalization of classical algebraic varieties defined over some valued field. Key examples include Mikhalkin's correspondence principle, which relates tropical plane curves with classical complex algebraic curves [24], or the tropical Grassmannians of Speyer and Sturmfels [25]. In all of this the focus lies on the combinatorial properties of tropical varieties, which are ordinary polyhedral complexes.
More recently, however, tropical semi-algebraic sets and their intrinsic geometry came into the picture; see [1], [15]. For instance, their metric properties appear in [2] as a tool to show that standard versions of the interior point method of linear programming exhibit an exponential complexity in the unit cost model. The proof of that result is based on translating metric data on a family of tropical linear programs into curvature information about the central paths of their associated ordinary linear programs. Similarly, tropical analogs of isoperimetric (or isodiametric) inequalities have been studied in [8], where a tropical volume is defined that corresponds to an "energy gap" in mathematical physics [19]. Another example is the statistical analysis of phylogenetic trees by Lin, Monod and Yoshida [21].
We feel that all this calls for a more systematic investigation of metric properties of tropical varieties. Starting from first principles, this naturally leads to tropical Voronoi diagrams. The tropical distance between two points It does not depend on choosing min or max as the tropical addition. The map dist : R d+1 × R d+1 → R is non-negative, symmetric, and it satisfies the triangle inequality. Moreover, it is homogeneous, so it induces a norm on the tropical d-torus R d+1 /R1 ∼ = R d , where 1 = (1, . . . , 1) denotes the all ones vector. The tropical Voronoi region of a site s ∈ S with respect to a set S comprises those points in R d+1 /R1 to which s is the nearest among all sites in S, with respect to dist. The tropical Voronoi diagram Vor(S) is the cell decomposition of R d+1 /R1 into Voronoi regions. Tropical Voronoi diagrams are a special case of Voronoi diagrams for polyhedral norms, a classical topic in convexity and computational geometry; cf. [4,Sect. 7.2] or [23,Sect. 4].
The intersection of two or more Voronoi regions is part of a bisector, i.e., the locus of points which are equidistant to a given set. For instance, in the Euclidean case the bisector of two points is a degenerate quadric which agrees with an affine hyperplane as a set. In the tropical setting, the bisector of two points can also be described as part of a tropical hypersurface, but this is now of degree d+1; see Proposition 4. Further, in the tropical case two points may already produce degenerate bisectors (which may contain, e.g., full-dimensional pieces), whereas the first degenerate case in the Euclidean metric arises for three points. So tropical Voronoi diagrams behave quite differently from Euclidean Voronoi diagrams.
Yet there are also similarities. A key structural result is that the tropical Voronoi regions are star convex and can be described as unions of finitely many ordinary polyhedra; see Proposition 1 and Theorem 6. We prove a second main result, Theorem 3, for the more general case of an arbitrary polyhedral norm in R d : the bisector of any three points in weak general position is homeomorphic to an open subset of R d−2 . Our proof generalizes the arguments from [13], [14], where a similar result was proved for smooth norms in d = 2, 3. However, the global topology of tropical bisectors of three or more points can be radically different from the topology of the classical bisectors. For instance, tropical bisectors are sometimes disconnected and, more strongly, d + 1 points can have more than one circumcenter. This may happen even in general position; see Examples 1 and 3. We do not know if bisectors may have nontrivial higher Betti numbers, but we suspect they can; see Theorem 4. Another contribution in our paper is a randomized incremental algorithm for computing the tropical Voronoi diagram of n points in general position in R d+1 /R1 with an expected running time of order O(n d log n), for fixed dimension d; see Theorem 10. Euclidean Voronoi diagrams of finite point sets can be explained fully in terms of ordinary convex polyhedra and convex hull algorithms; see [7], [4]. We do not know if there is a tropical analog.
Amini and Manjunath [3] study the Voronoi diagram of a lattice with respect to the following asymmetric version of the tropical distance: (a i − b i ) .
As they show in [3,Lemma 4.7], this is the polyhedral distance obtained taking as unit ball the standard simplex. Their motivation comes from work of Baker and Norine [5] on a Riemann-Roch theorem for graphs, which implies a Riemann-Roch theorem for tropical curves.
Our paper is organized as follows. The short Section 2, in which we verify that the tropical distance is induced by a polyhedral norm and discuss the combinatorics of the tropical unit ball, sets the stage. In Section 3 we collect our general structural results on bisectors and Voronoi diagrams. The results in this section are proved for general polyhedral norms, but all our examples address the tropical case. A subtle point is the right concept of "general position". In fact, we distinguish between weak general position which prevents bisectors to contain full-dimensional parts (see Proposition 2), and a stronger general position which is defined via stability of facets in the bisector under perturbation of the sites. For instance, the bisector of any number k of points in general position in R d is either empty or a polyhedral complex of pure dimension d + 1 − k; see Corollary 2. As a special case, the bisector of d + 1 points in R d in general position is finite. Section 4 returns to the tropical case. We specialize our results on bisectors in general polyhedral norms, and we show that the combinatorial types of tropical bisectors of two points are classified in terms of a certain polyhedral fan related to the tropical unit ball and the braid arrangement; see Theorems 5 and 6. This is related to work of Develin [9] on the moduli of tropically collinear points. Finally, in Section 5 we discuss algorithms. This includes a tropical variant of Fortune's beach line algorithm [10] for planar Voronoi diagrams as well as the aforementioned algorithm in arbitrary dimension. Acknowledgment. We thank Günter Rote and three anonymous referees for useful comments on a first version of this paper. Especially, one referee brought the reference [3] to our attention.

The tropical unit ball
The unit ball with respect to the tropical distance function defined in (1) is In this way, B d is a polytope in the tropical torus R d+1 /R1. We also write B d (a, r) for the tropical ball with center a and radius r. All tropical balls result from scaling and translating B d . In fact, the tropical norm agrees with polyhedral norm with respect to the tropical unit ball, in the sense of Section 3. Such distances are called convex distance functions in [4,Sect. 7.2]; see also [12,14,13]. Both the inequality and the vertex descriptions of B d in Eq. (2) are nonredundant: • B d has d(d + 1) facets. Each facet corresponds to a choice of coordinates achieving the maximum and the minimum.
• B d has 2 d+1 − 2 vertices. Each vertex corresponds to a (nontrivial) partition of the coordinates into maxima and minima. For example, B 2 is a hexagon and B 3 is a rhombic dodecahedron. The vertex description also shows that B d equals the projection of the (d+1)-dimensional regular cube [−1, 1] d+1 in R d+1 along the direction 1. That is, B d is a zonotope with d + 1 generators in general position, and all its faces are parallelepipeds. These generators correspond to the d + 1 coordinate directions in R d+1 /R1. This suggests a combinatorial way to specify the faces of B d : Each face F can be written as a Minkowski sum   Remark 1. The zonotope B d is dual to an arrangement of d + 1 linear hyperplanes in general position in R d , oriented so that the intersection of all positive half-spaces is empty. In particular, its face lattice is the same as the lattice of non-zero covectors of the unique totally cyclic oriented matroid of rank d with d + 1 elements. Covectors of an oriented matroid are usually written as (V − , V 0 , V + ) but in our context we prefer to use * instead of zero meaning that the corresponding coordinate is not fixed.

Remark 2.
Another general description of B d is that it equals the (ordinary) Voronoi cell of the lattice of type A d (i.e., the triangular lattice for d = 2 and the face centered cubic lattice (FCC) for d = 3). Similarly, B d is the polytope polar to the difference body T − T of a regular d-simplex T . This description shows that B d is the same as the polytope U d that appears in Makeev's conjecture. See, e.g., [26,Conjecture 21.3.2].

Bisectors in polyhedral norms
Throughout this section we work in the general framework of Minkowski norms; see [4,Sect. 7.2], [12], [23]. Consider a polytope K ⊂ R d with the origin in its interior. Let dist(a, b) be the unique scaling factor α > 0 such that b − a ∈ ∂(αK). Then, dist satisfies the triangle inequality, is invariant under translation, and homogeneous under scaling. If K = −K then dist(a, b) = dist(b, a) and dist(0, ·) is a norm in R d in the usual sense. We allow K = −K, whence dist(a, b) = dist(b, a) in general, but we still call it a norm. Bisectors and Voronoi diagrams for these norms have been studied in computational geometry [4,Sect. 7.2], [23,Sect. 4].
For any finite point set S we define its bisector : Following the computational geometry tradition we will often call the elements of S the sites. Although some of our results also hold for general convex bodies, for simplicity we assume K to be a polytope. We denote by F(K) the face fan of K. The norm dist(0, ·) is linear in each of these cones, so we write for the intersection of the bisector with a choice of cones F i ∈ F(K). Each cell of the form bis (F 1 ,...,F k ) (a 1 , . . . , a k ) is the intersection of the polyhedron (a 1 + F 1 ) ∩ · · · ∩ (a k + F k ) with an affine subspace, which implies it is itself a polyhedron. As a consequence: Proposition 1. Let K be a polytope with the origin in its interior, and let dist be the corresponding Minkowski norm. Let S = {a 1 , . . . , a k } ⊂ R d be a finite point set. Then the bisector bis({a 1 , . . . , a k }) is a polyhedral complex whose cells are the polyhedra for all choices of F 1 , . . . , F k ∈ F(K).
Proof. The family of polyhedra forms a polyhedral complex since . That polyhedral complex covers the entire bisector since for each point p ∈ bis(S) and for each i, the point a i must lie in some face F i of p−dist(a i , p)K.
Our primary example is the case where K = B d is the tropical ball. In Figure 2 the point p, which is generic within the bisector of a and b, lies in the facet bis (− * +),(+− * ) (a, b). For the purpose of drawing pictures, notice that any three vectors is a common base for diagrams in tropical geometry, for our pictures we settle for the more symmetric isometric view where our base is: Remark 3. If bis(a 1 , . . . , a k ) = ∅ then bis(a ′ 1 , . . . , a ′ k ) = ∅ for every choice of a ′ 1 , . . . , a ′ k sufficiently close to a 1 , . . . , a k , by continuity of dist(·, ·). 3.1. Weak general position and general position. Definition 1 (General position). A finite point set S ⊂ R d is in general position with respect to K, if for every subset {a 1 , . . . , a k } ⊂ S there are neighborhoods U i of each a i such that for every choice of {a ′ 1 , . . . , a ′ k } with a ′ i ∈ U i and for every choice of maximal cones F 1 , . . . , F k ∈ F(K) we have bis (F 1 ,...,F k ) (a 1 , . . . , a k ) = ∅ ⇐⇒ bis (F 1 ,...,F k ) (a ′ 1 , . . . , a ′ k ) = ∅ . Moreover, the set S is in weak general position if no pair of points a, b ∈ S lies in a hyperplane parallel to a facet of K.
Remark 4. As the name suggests, "weak general position" is implied by "general position" (see Corollary 1). A yet stronger notion would arise requiring stability not only of facets but also of lower-dimensional cells in bisectors; that is, allowing lower-dimensional cones from F(K) for the F i in the definition of general position. But this intermediate notion of "general position" is the most appropriate for our purposes and the algorithms in Section 5. As a first indication, Theorem 1 provides a local characterization.
By Proposition 1 bisectors are polyhedral complexes, and thus each cell has a dimension. Proof. Since bis (F,F ′ ) (a, b) ⊂ (a + F ) ∩ (b + F ′ ), for it to be d-dimensional we need F and F ′ to be cones of facets. We also need F = F ′ , so that dist(a, ·) and dist(b, ·) have the same gradient on (a + F ) ∩ (b + F ), and we need b − a to be parallel to the facet, so that dist(a, ·) = dist(b, ·) on (a + F ) ∩ (b + F ).
Conversely, if b − a is parallel to a facet of K with cone F then and this is d-dimensional. Proof. Suppose a − b is parallel to a facet of K, so that bis (F,F ) (a, b) is fulldimensional, where F is the cone of that facet. Taking b ′ close to b but away from the hyperplane parallel to the facet makes bis (F,F ) (a, b ′ ) empty. Now the claim follows from Proposition 2.
Theorem 1. Let S = {a 1 , . . . , a k } ⊆ R d and for each a i choose a maximal cone F k ∈ F(K). Let Q := (a 1 + F 1 ) ∩ · · · ∩ (a k + F k ), let λ F i (x) be the linear function that restricts to dist(0, x) on F i , and let H be the affine subspace defined by Then, the following conditions are equivalent: (1) There are neighborhoods U i of each a i such that for any choice of a ′ i ∈ U i the polyhedron bis (F 1 ,...,F k ) (a ′ 1 , . . . , a ′ k ) is not empty. (2) (a) Q is full-dimensional and H intersects its interior; and (b) the k − 1 functions λ F i − λ F 1 for i = 2, . . . , k are linearly independent.
Proof. For the implication from "1" to "2", let us first show that "1" forces Q to be full-dimensional. Aiming for a contradiction, we assume that Q is contained in the boundary of one of the cones a i + F i . That is, the polyhedron Q i := j =i (a j + F j ) does not meet the interior of a i + F i , for some i. Then any a ′ i in the interior of where a ′ j = a j for j = i. This contradicts "1" and shows that Q is full-dimensional.
To see that bis (F 1 ,...,F k ) (a 1 , . . . , a k ) must intersect the interior of Q, suppose we are given neighborhoods U i as in "1"; recall (4). For each i, choose v i in the interior of F i and such that λ i (v i ) = 1. Let a ′ i := a i + εv i , where ε > 0 is taken small enough so that a ′ i ∈ U i . Observe that our choice of v i makes the affine subspace defined by , which lies in the interior of Q. We have bis (F 1 ,...,F d+1 ) (a ′ 1 , . . . , a ′ d+1 ) = Q ′ ∩ H . By "1" this is not empty, and thus H intersects the interior of Q.
For condition (b) observe that H can equivalently be defined by the k − 1 affine equalities If the left-hand sides are linearly dependent, then one of the k − 1 equations, say the ith one, is redundant. But then choosing a point a ′ i ∈ U i with λ F i (a ′ i ) = λ F i (a i ) (and letting a ′ j = a j for the rest) renders the system of equations infeasible. Hence bis (F 1 ,...,F d+1 ) (a ′ 1 , . . . , a ′ d+1 ) = ∅, contradicting "1".
We now show that "2" implies "1". Consider arbitrary points a ′ i , and let Further let H ′ be the affine subspace defined by We want to show that if each a ′ i is sufficiently close to the corresponding a i for all i then Q ′ ∩ H ′ is not empty.
Condition (b) says that H ′ is (d+1−k)-dimensional (and parallel to H) for every choice of a ′ i s and that it varies continuously with the choice. Condition (a) says that Q ′ stays full-dimensional if the a ′ i s are sufficiently close to the original a i s, and that it also varies continuously with the choice, in the following strong sense: consider a description of each a i + F i by a finite system of linear inequalities. Then a ′ i + F i is defined by a system with the same linear functions and with right-hand sides varying continuously with the a ′ i s. Thus, if each a ′ i is close to a i , then Q ′ and H ′ are a full-dimensional polyhedron and a (d+1−k)-dimensional affine subspace close to Q and H respectively. Since, by (a), H intersects the interior of Q, continuity implies that H ′ still intersects the interior of Q ′ when a ′ i is close enough to a i for each i. In particular, bis (F 1 ,...,F k ) (a ′ 1 , . . . , a ′ k ) is not empty. Corollary 2. The bisector of k points in general position is either empty or pure of dimension d + 1 − k. In particular, the bisector of d + 1 points in general position is finite, and this is empty for more than d + 1 points.
Proof. Every maximal non-empty cell bis (F 1 ,...,F k ) (a 1 , . . . , a k ) is the intersection of the polyhedron Q with the affine subspace H of Theorem 1. That result implies that H has dimension d + 1 − k and meets the interior of the full-dimensional polyhedron Q. Thus, the cell has dimension d + 1 − k.  Proof. Let S ⊂ R d be a set of cardinality n. Then S is in general position if and only if, for each subset {a 1 , . . . , a k } ⊂ S and maximal cones F 1 , . . . , F k ∈ F(K), the polyhedron bis (F 1 ,...,F k ) (a 1 , . . . , a k ) either is empty or satisfies condition (1) of Theorem 1. Since there are finitely many choices of {a 1 , . . . , a k } and {F 1 , . . . , F k }, it suffices to prove the statement for one such choice.
For openness: Emptyness is an open condition because of the continuity of dist(·, ·). On the other hand, Theorem 1 says that condition (1) is equivalent to (2), which is open by the arguments in the proof (namely, the fact that both Q and H depend continuously on the sites).
For density, we are going to show that if Q ∩ H is not empty but fails to satisfy condition (a) or (b) then the set {a 1 , . . . , a k } lies in one of finitely many linear hyperplanes in (R d ) k . To emphasize that Q and H depend on the choice of sites we denote them Q(a 1 , . . . , a k ) and H(a 1 , . . . , a k ).
If (b) fails for {a 1 , . . . , a k } then the linear system (5) defining H(a 1 , . . . , a k ) is feasible but overdetermined, which implies a linear relation, depending solely on F 1 , . . . , F k , among the right-hand sides λ F i (a i ) − λ F 1 (a 1 ). The relation is not tautological on the a i s since, as shown in the proof of Theorem 1, it is easy to construct a point set For (a), consider the inequality descriptions of the cones F i and translate them to obtain an inequality description of Q(a 1 , . . . , a k ) as the feasibility region of a system S(a 1 , . . . , a k ) of affine inequalities with fixed gradients and with right-hand sides parameterized linearly by the a i s. If (a) fails for {a 1 , . . . , a k } then one of two things happen: • Q(a 1 , . . . , a k ) is non-empty but not full-dimensional. Consider a minimal subsystem of S(a 1 , . . . , a k ) that already defines a non-fulldimensional feasibility region. Minimality implies that this feasibility region is an affine subspace of R d and that turning the inequalities to equalities produces an over-determined subsystem. This implies, as in the previous case, a linear relation among the a i s. • Q(a 1 , . . . , a k ) is full-dimensional but Q(a 1 , . . . , a k ) ∩ H(a 1 , . . . , a k ) is contained in its boundary. This implies Q(a 1 , . . . , a k ) ∩ H(a 1 , . . . , a k ) to be contained in a facet of Q(a 1 , . . . , a k ). Let H 0 (a i ) be the hyperplane containing that facet. Note that the hyperplane H 0 depends only on one a i since it comes from the description of one of the cones a i + F i . Then, adding to the the linear system (5) the equation defining H 0 (a i ) produces again an over-determined system, hence there is a linear relation among the a i s.
The relations for condition (a) are not tautological on the a i s since we can easily make Q(a ′ 1 , . . . , a ′ k ) full-dimensional and H(a ′ 1 , . . . , a ′ k ) intersect its interior as follows: choose each a ′ i in the interior of −F i and such that λ F i (a i ) = −1, so that both H and the interior of Q contain the origin. The relations are finitely many since we have at most one for each subsystem (respectively equation) of the system S(a 1 , . . . , a k ), which depends only on the choice of F i s.
For the case of the tropical norm, condition (b) admits a nice combinatorial characterization. Observe that a choice of facets F 1 , . . . , F k ∈ F(B d ) can be encoded as a directed graph on the vertex set [d + 1] and with an arc a i going from the coordinate that is minimized at F i to the coordinate that is maximized at F i , for i = 1, . . . , k. We denote this graph G(F 1 , . . . , F k ). cycle or it has a unique cycle and it is unbalanced; that is, the number of arcs in one direction is different from the other direction.
Proof. A cycle in G(F 1 , . . . , F k ) is equivalent to a linear dependence among the corresponding linear functions λ F i s, by simply adding them with signs corresponding to the direction of the arcs along the cycle. If the cycle is balanced then λ F 1 can be subtracted from each λ F i so that the corresponding functions (λ F i − λ F 1 ) are also dependent. The same thing can be done if G(F 1 , . . . , F k ) has two different (unbalanced) cycles, since a linear combination of the two corresponding dependences can be made balanced.
Conversely, any linear dependence among the functions (λ F i − λ F 1 ) corresponds to a balanced dependence among the corresponding λ F i . The latter either corresponds to a balanced circuit in the graph or decomposes into two (or more) linear dependences with distinct supports.
As a consequence of Corollary 2 the bisector of a set S of d + 1 points in general position is a finite set of points, which we call circumcenters of S. In dimension two, three points in (weak) general position have a most one circumcenter, as we show in Corollary 6 below. In higher dimension the same is known to be false for other polytopal norms [13], and here is an example for the tropical norm: Example 1 (Non-uniqueness of circumcenters). Let us consider the four points a 1 = (0, 2, 3, 3), a 2 = (0, 4, 2, 2), a 3 = (2, 4, 1, 1) and a 4 = (4, 0, 2, 2). Their bisector contains the points x = (0, 0, 1, −1) and y = (0, 0, −1, 1). Indeed, both x and y are at distance 4 from all the a i 's since we have The points a 1 , . . . , a 4 are not in weak general position, as they lie in the plane x 3 − x 4 = 0. However, they satisfy conditions (a) and (b) of Theorem 1 for the polytopes Q x and Q y containing the circumcenters x and y: For condition (b) observe that the digraphs corresponding to x and y are, respectively, {14, 12, 32, 21} and {13, 12, 42, 21}. They both have a single cycle, {12, 21}, which is unbalanced. Condition (a) follows from the fact that x (resp. y) is in the interior of all the cones whose intersection defines Q x (resp. Q y ). This is equivalent to the fact that all the vectors a i − x and a i − y have a unique maximum and a unique minimum entries.
Since condition (b) does not depend on the sites and condition (a) is, by Theorem 1, open, any perturbation of the sites will still produce at least two circumcenters. In particular, by Corollary 4, there are sites in general position for which this happens.

3.2.
Halfspheres, sectors, and the bisector of two points. The topology of a bisector is closely related to the following partition of ∂K. Let S ⊆ R d be a finite set of sites, and pick a, b ∈ S distinct. The open halfsphere in the direction of b − a, denoted as H(b − a), is the set of points in ∂K whose exterior normal cone is contained in Informally, H(b − a) are the faces of K that "can be seen" from the direction (b − a). For a fixed site a ∈ S, the sector of a is the set where H S (a) denotes the topological closure of H S (a).

Proof. It is clear from the definition that H S (a) contains the relative interior of every
) also contains the relative interior of every lower dimensional face contained only in such facets. This proves the first formula. The second part follows from the first and the fact that in weak general position the minimum of each λ F i is attained at a single point of S.

Remark 5.
Assuming weak general position, Lemma 1 allows us to think of H S as a labeling of the facets of K by the elements of S or, equivalently, as a map F(K) → S. If K is centrally symmetric, then each pair of opposite facets F and −F belong one to H(b − a) and the other to H(a − b). If K is not, we can still guarantee that H(a − b) is never empty, and always disjoint from H(b−a). As a consequence, H(b−a) (and hence H S (a)) cannot contain all the (relative interiors of) facets of K.
For the case K = B d of the tropical ball this partition of the facets translates into something more meaningful. Recall (see Proposition 3 and the paragraph before it) that facets of B d can be represented as the arcs in the complete digraph on d + 1 nodes. In particular, H S colors the arcs by the points of S. Then: (1) Each coloring is a partial ordering of vertices, i.e. there is no monochromatic cycle. Proof. Let us first show that bis(a, b) is contained in a + cone (H(b − a)).
To seek a contradiction, let c ∈ bis(a, b) such that c − a / ∈ cone (H(b − a)). This implies that the smallest ball centered at a that contains c touches it at a facet F with functional λ F such that λ F (b − a) ≤ 0. Now, c is equidistant to a and b, and a and b cannot be in the same facet of the ball centered at c (because they are in weak general position). Therefore, dist(c, εa + (1 − ε)b) < dist(c, a), by convexity of the ball. This contradicts the fact that Hence, we have a well-defined map φ : bis(a, b) → a + H(b − a) given by central projection. The map φ is continuous since it is the restriction of central projection. It is also proper (that is, the inverse image of a compact set is compact) by a following argument: Let C be a compact subset of H(b− a). By continuity, Thus, we only need to prove that φ −1 (C) is bounded. This follows from the fact that and that cone(C) and cone(H(a − b)) are two closed linear cones meeting only at the origin, since H(a − b) and H(b − a) are open and disjoint in ∂K.
Once we know φ is proper and continuous, we only need to check that this map is bijective in order for it to be a homeomorphism. To show this, we construct its inverse. For each v ∈ H(b − a) we consider the ray r v = {a + αv : α ≥ 0}. Along r v , the distance to a is linear in α, the distance to b is convex in α and both functions are continuous. Observe also that dist(a + 0v, a) = 0 , dist(a + 0v, b) > 0 , and lim α→∞ dist(a + αv, b) < lim α→∞ dist(a + αv, a) .
The last inequality comes from the fact that as the we move farther away from a along r v , eventually (a + αv) − b will be in the same cone of F(K) as (a + αv) − a = αv (by weak general position), Hence, the function α → dist(a + αv, b) − dist(a + αv, a) is negative at zero, positive at infinity, continuous, and convex. Therefore, it has exactly one root, which means r v intersects the bisector exactly once. We define ψ(a + v) as this unique intersection point.
The maps φ and ψ are clearly inverses of one another.
Looking at the proof, the reader can check that central projection gives a proper and continuous map from bis(a, b) to a + H(b − a) even without assuming weak general position. We only need weak general position to construct the inverse. The converse of Proposition 5 is true for three points in arbitrary dimension (Theorem 3) but not for more, even in general position, as the following example shows: Example 2 (Empty bisector, with non-empty sectors). Consider a = (1, −1, Since bis(a, b, c, d) lies in the intersection of the two, we have So for x ∈ bis(a, b, c, d), we may assume x 3 = 0, which entails: with equality only when  Corollary 6. For any three points in weak general position bis(a 1 , a 2 , a 3 ) is either empty or pure of dimension d − 2. If d = 2 then bis(a 1 , a 2 , a 3 ) is either empty or a single point.
We begin with the case d = 2 of Theorem 3; this occurs in [13]: Lemma 2. Let S = {a 1 , a 2 , a 3 } ⊂ R 2 be in weak general position with respect to a polytope K. If H S (a i ) = ∅ for the three of them, then the bisector bis(S) is a single point.
Proof. We first show that bis(S) cannot contain two distinct points. To seek a contradiction, suppose that there are two points x = y in the bisector. This means that there exist α, β > 0 such that B x := x − αK and B y := y − βK satisfy S ⊂ ∂B x ∩∂B y . For brevity we call B x and B y negative balls centered at x and y, respectively. The two balls are related to one another by a homothety ρ : . Then, S ∪S ′ ⊂ ∂B y , but this is impossible: the vertex sets of two homothetic triangles can only lie in the boundary of a polytope in the plane if three of the points are collinear. Three collinear points of ∂B y necessarily lie on a single edge of B y , and (at least) two of them would come from the same triangle S or S ′ , violating the weak general position of S.
It remains to exclude the case where bis(S) = ∅. Suppose that this would hold. That is, the two-point bisectors are pairwise disjoint. Now the twopoint bisectors are homeomorphic to lines by Theorem 2. So the fact that they do not meet implies that each of them appears either in full or not at all in the Voronoi diagram of S. But the three of them cannot appear, since then the diagram would have four regions, not three. Thus, one of them, say bis(a 1 , a 3 ), does not appear at all in Vor S . Consequently, bis(a 1 , a 3 ) is contained in the Voronoi region of the third point a 2 . We will show that H S (a 2 ) = ∅, and this yields the desired contradiction.
To simplify the exposition, we call the line a 1 a 3 "horizontal". Let u and v be the points where the ball K has a horizontal tangent, i.e., parallel to a 1 a 3 . Without loss of generality, u is at the top of K, and v is at the bottom; see Figure 3. The points u and v are unique and thus vertices of K, by weak general position. Consider the negative tangent cones u + cone(u − K) and v +cone(v −K) of K. Call K u and K v their respective translations that have a 1 and a 3 on the boundary, and let u ′ and v ′ be the apices of these translated cones. Such translations exist and are unique since the two boundary rays of cone(u − K) point upward, and the boundary rays of cone(v − K) point downward. Figure 3. Illustrating the proof of Lemma 2. Left: polytope K with top and bottom vertices, u and v, horizontal tangents and facet normals. Right: intersection K u ∩ K v with a 1 and a 3 on the boundary. If a 2 ∈ K u ∩ K v then all linear functions defined by exterior facet normals of K or, equivalently, interior facet normals of K u and K v , attain smaller values at a 1 or a 3 than at a 2 .
By construction the boundaries of K u and K v intersect precisely in a 1 and a 3 . Now, every negative ball of the form B u ′ ,r := u ′ − r(K − u) has K u as its tangent cone at u ′ , and balls like B v ′ ,r := v ′ − r(K − v) are similar. Taking r sufficiently large, we can force Since B u ′ ,r and B v ′ ,r are negative balls with a 1 and a 3 in their boundaries, their centers lie on the bisector bis (a 1 , a 3 ). Our initial assumption that the bisector is contained in the Voronoi region of a 2 implies that a 2 is in the interior of both balls, i.e., in the interior of both K u and K v . This implies that H S (a 2 ) is empty: every facet-defining functional of K takes its minimum on K u ∩ K v at either a 1 or a 3 .
We conclude that, if H S (a i ) = ∅ for i = 1, 2, 3 then bis(S) = ∅, and this finishes the proof.
For the rest of the proof of Theorem 3 let S = {a 1 , a 2 , a 3 } ⊂ R d be three points in general position with respect to a convex polytope K. The idea is to reduce the general problem to two dimensions via the following construction. Let pr : R d → R d−2 be the affine projection that quotients out the 2-plane Π containing S. Next we exhibit relevant properties of that map. Lemma 3. With the above notation, let x ∈ int(pr(K)) ⊂ R d−2 . Further let Π x := pr −1 (x), which is a 2-plane parallel to Π, and K x := K ∩ Π x . Then K x is a convex polygon.
Proof. This is a general property of polytope projections: if Q is the image of a polytope P under an affine map then the fiber of every point x ∈ int(Q) is a polytope of dimension dim(P ) − dim(Q). Lemma 4. With the above notation, again let x ∈ int(pr(K)). Further, let H S (a i ) = H S (a i ) ∩ K x . Proof. Note that no facet in K x is parallel to any a i − a j because if it were, the facet of K containing it would be parallel, too.
Let F ′ be a facet of K x , and let F be the corresponding facet in K. Then, n(F ′ ) ∈ Π x , the normal vector to F ′ , is the projection into Π of n(F ), and, Proof. First, observe that an x ∈ ∂K with pr(x) ∈ ∂(pr(K)) cannot be in any of the H S (a i ): indeed, x ∈ ∂K implies that there is a normal vector of K at x orthogonal to Π, hence orthogonal to a i − a j for every a i , a j . As a consequence, which implies it is open.
For any point x ∈ int(pr(K)), the preimage pr −1 (x) is a polygon, a slice of K. This slice has to intersect at least two of the classes of H, because H is a partition (so at the slice intersects at least one class), but no class can contain a set of facets whose vectors are positively dependent (because each class is an intersection of half-spheres). Then, any point x ∈ int(K) lies in at least two sets pr (H S (a i )).
Thus, the three open sets pr(H S (a i )) cover each point of int(pr(K)) at least twice. At least two of these sets must intersect, say pr(H S (a 1 )) and pr(H S (a 2 )). Suppose that (pr(H S (a 1 )) ∩ pr(H S (a 2 ))) ∩ pr(H S (a 3 )) = ∅. Then, int(pr(K)) would be disconnected, because it is covered by two disjoint open sets. Since this is not possible, there must be a point in the common intersection of the three H S (a i ).
Our next lemma finishes the proof of Theorem 3, and it actually gives more information.

Proof. Consider the map
defined as follows: Let p ∈ bis(S), and let v i ∈ H S (a i ) be the central projection from p to a i + ∂K, for each i = 1, 2, 3. Note that each v i lies in the corresponding H S (a i ), by Theorem 2. Further, the three points v 1 , v 2 and v 3 lie in a plane parallel to Π. In particular, pr(v 1 ) = pr(v 2 ) = pr(v 3 ) lies in i=1,2,3 pr(H S (a i )) and we define φ(p) := pr(v i ) .
To show that φ is a homeomorphism, let us construct its inverse ψ. Let γ : pr(int(K)) → int(K) be a continuous section of pr in K. For example, but not necessarily, for each 2-plane Π ′ parallel to Π and intersecting K let γ(pr(Π ′ )) be the centroid of Π ′ ∩ K. Now, let x ∈ i=1,2,3 pr(H S (a i )). Let Π x = pr −1 (x) and let w i = γ(x)+a i , for each i = 1, 2, 3. In the 2-plane Π x we have a set S x = {w 1 , w 2 , w 3 } and a unit ball K ∩ Π x . Lemma 3 gives that H Sx (w i ) = H S (a i ) ∩ Π x . By choice of x we have i H Sx (w i ) = ∅ and Lemma 2 guarantees that the bisector of S x is a unique point r ∈ Π x ; see Figure 4.
Let v i be the central projection of r to w i +∂K x . Observe that is also independent of i, the three rays a i v i meet at the point and dist K (a i , p) = dist K X (w i , r). Thus, p ∈ bis(a 1 , a 2 , a 3 ) and we define p to be ψ(x).
This gives us a well-defined map ψ : Our proof of Theorem 3 closely follows the proof of the 3-dimensional case in [14]. There, it is additionally shown that the number of connected components of bis(a 1 , a 2 , a 3 ) equals the total number of connected components of the three sectors H S (a 1 ) minus two. We can extend this formula to higher dimension and to higher Betti numbers (over any field): Theorem 4. Let a 1 , a 2 , a 3 ∈ R d be three points in weak general position with respect to a polytope K and assume that H S (a i ) = ∅ for all three. Then, for j ∈ {0, . . . , d − 3}, we havẽ β j (bis K (a 1 , a 2 , a 3 )) = 3 i=1β j (H S (a i )) .
Proof. Consider the same projection pr : R d → R d−1 as before. Observe that, since Π x ∩ H S (a i ) is empty or contractible for every plane Π x parallel to pr, we have We now apply Alexander duality in the one-point compactification S of int(pr(K)), which is a sphere of dimension d − 2. Alexander duality says that if U is an open and locally contractible subset of S theñ In particular, if we let C i = S \ pr(H S (a i )) we have Yet C 1 , C 2 and C 3 are pairwise disjoint except for the "point at infinity" of S, because each point of int(pr(K)) lies in at least two of the sets pr(H S (a i )). Thus, 3 i=1 C i is the topological wedge (or one-point sum) of C 1 , C 2 and C 3 , which makes the right-hand sides of the two last equations coincide. Remark 6. One may ask how complicated the Betti numbersβ j (H S (a i )) in Theorem 4 can be. Equivalently, how complicated the topology of three point bisectors can be. Such a bisector is (d − 2)-dimensional, so the relevant Betti numbers areβ 0 , . . . ,β d−2 . The last one,β d−2 , must vanish asβ j (H S (a i )) = β j (pr(H S (a i ))), and the latter is an open subset of R d−2 . Butβ d−3 can be non-zero, as the following example shows. The sector H(a) is disconnected; i.e.,β 0 (H(a)) is non-zero. By Theorem 4 bis(a, b, c) is disconnected, too.

Remark 7.
The results in this section and in Section 3.2 involve only weak general position. While we keep assuming that K is a polytope for simplicity, these results generalize to an arbitrary convex body K. In that case S is in weak general position if the boundary ∂K contains no segment parallel to a difference a − b with a, b ∈ S.

Tropical bisectors and tropical hypersurfaces.
In the classical case the bisector of two points is a degenerate quadric, namely the affine hyperplane perpendicular to the connecting line segment and which runs through the midpoint. The tropical analog is more interesting.
Proposition 4. Let a, b ∈ R d+1 /R1 be in weak general position. Then the homogeneous max-tropical Laurent polynomial vanishes on the bisector bis(a, b). That is, the set bis(a, b) is contained in a max-tropical hypersurface of degree d + 1.
Proof. Recall that a max-tropical (Laurent) polynomial vanishes if the maximum is attained at least twice; see [22, §3.1]. First, we check that there are no duplicates among the terms in the representation (6) of φ(a, b). Assume the contrary, i.e., explicitly excluded in our assumption, and we arrive at the desired contradiction. We infer that the 2d(d + 1) terms are pairwise distinct. Let x ∈ bis(a, b). This means that dist(a, x) = dist(b, x), and thus It follows that φ(a, b) vanishes at x. The degree of the bisector tropical hypersurface can be read off any Laurent monomial like x i − x j by adding x 1 + x 2 + · · · + x d+1 , which yields the true monomial 2x i + k∈[d+1]−{i,j} x k . The latter has degree 2+(d+1−2) = d + 1.
Proposition 4 yields a trivial algorithm to compute tropical bisectors in weak general position: enumerate the maximal cells of the tropical hypersurface defined by (6) and select those maximal cells that attain maxima in one monomial of type x i − a i − x j + a j and one monomial of type x k − b k − x ℓ + b ℓ . This algorithm needs to go through the Θ(d 4 ) choices of one monomial from the left and one from the right. This is worst case optimal, as we will prove in Corollary 8 that tropical bisectors can have Ω(d 4 ) maximal cells.   Recall that an ordered partition or total preorder on a finite set S is a partition of S into non-empty parts together with a total order on the parts. If the parts are denoted S 1 , . . . , S k (in this order), we can write x ≤ y meaning "x ∈ S i and y ∈ S j for some i ≤ j". In particular, for all x, y ∈ S we have x ≤ y ≤ x if and only if x and y lie in the same part. For v, w ∈ R d+1 with S(v) = S(w) we have S(v + w) = S(v) and, moreover, S(αv) = S(v) for any positive real α. That is to say, the stratification of R d+1 by ordered partitions forms a complete polyhedral fan. In what follows we seek to refine that fan by recording which part, or which gap between parts, contains the midvalue The bisected ordered partition of [d+1] induced by v ∈ R d+1 is the ordered partition S(v) as defined above, together with the information of which (values of) parts are smaller, equal or greater than the midvalue µ(v); see also [9]. Equivalently, this is the ordered partition associated with the extended vector (v, µ(v)) ∈ R d+2 . We denote by F d bop the fan of bisected ordered partitions of dimension d.
Remark 8. The "finest" or "most generic" ordered partitions are the permutations, in which each part is a singleton. Hence, the fan of ordered partitions equals the normal fan of the permutahedron. This, in turn, coincides with Figure 7. The bisection fan, F d bis , for d = 2. The three vectors b − a for Figure 5 have been marked.
the fan of regions in the braid arrangement or Coxeter arrangement of type A d , which consists of the hyperplanes {x | x i = x j } for 1 ≤ i < j ≤ d + 1.  Figure 7. Excluding permutations of the coordinates, and sign inversion, we infer that there are three types of tropical bisectors in the plane, and these are shown in Figure 5. The type to the left is in weak general position but not in general position, the type to the left is in general position, and the type to the right is not even in weak general position.

We denote this fan F(A d ). It is intermediate between the central fan of the tropical ball (which is coarser) and the fan of bisected ordered partitions (which is finer):
Recall that the max-tropical line segment spanned by two points, a and b, is the set It is worth noting that the combinatorial types of tropical segments are classified by the braid fan F(A d ); see [22,Prop. 5.11]. In this sense the fan of bisected ordered partitions F d bop classifies the combinatorial types of "bisected tropical segments": Proof. Suppose for simplicity that a, b ∈ R d+1 satisfy Then [a, b] is the union of at most d ordinary line segments, one for each subset of coordinates between a strict inequality in (7). That is, the combinatorics of the tropical segment is the same as the ordered partition of b − a.
The midvalue µ(b − a) selects one of the ordinary segments.
The goal of the rest of this section is to prove the following: As a first step in the proof of Theorem 5, the following lemma characterizes when bis (F,G) (a, b) is non-empty. Recall that this is the case if and only if there is a tropical ball touching a and b at faces F and G, respectively. Lemma 7. Let F and G be a fixed pair of faces of B d with the labeling partition defined as in (8). Further let a, b ∈ R d+1 /R1. Then the set bis (F,G) (a, b) is not empty if and only if there exist γ ∈ R and δ ∈ [0, ∞) such that the following conditions are satisfied: Proof. Let us assume that the face of the tropical bisector bis(a, b) defined by (F, G) is non-empty. Then there is a point x such that dist(a, The possible values for the coordinates of and for some δ ≥ 0. Setting γ = γ b − γ a the above translates into (9).
For the converse, note that going from (10) and (11) to (9) is the Fourier-Motzkin elimination of the variables x i . Therefore, any γ and δ ≥ 0 which are feasible for (9) can be lifted to a solution of (10) and (11). That is to say, we can set γ a = 0 and γ b = γ, and the conditions in (10) and (11) yield a point x ∈ bis (F,G) (a, b). Proposition 6. Let F and G be a fixed pair of faces of B d . Then the set is both a polyhedral cone and a tropical cone, although perhaps not a tropical polyhedral cone.
Proof. Let a, a ′ , b, b ′ ∈ R d+1 /R1 with bis (F,G) (a, b) and bis (F,G) (a ′ , b ′ ) both non-empty. Since bis (F,G) (a, b) = ∅, by Lemma 7, there are scalars γ and δ satisfying the conditions (9). Likewise there are certificates γ ′ and δ ′ for bis (F,G) (a ′ , b ′ ) = ∅. By linearity of the conditions (9) it follows that γ + γ ′ and δ + δ ′ certify that bis (F,G) (a + a ′ , b + b ′ ) = ∅: for instance, we have Since clearly αc ∈ C for all c ∈ C and α ≥ 0 we conclude that C is an ordinary cone. This cone is polyhedral as it is defined in terms of the finitely many linear conditions (9). A similar argument shows that C is also closed with respect to taking arbitrary (max, +)-linear combinations: for instance, with the above notation we have max((b − a) i , (b ′ − a ′ ) i ) = max(γ, γ ′ ) for i ∈ L 0 . This shows that C is a tropical cone. Proof. We know that the feasibility region of a face (F, G) is a tropical and classical polyhedral cone. Finite intersections of these cones are again tropical cones, classical cones, and polyhedral cones. Therefore, the feasibility region of a normal equivalence class, which is the intersection of the cones of its non-empty faces, is again a tropical and classical polyhedral cone. Hence, the whole fan has this structure.
The following shows one direction of Theorem 5, namely, F d bis is coarser than F d bop .
Then, whether bis (F,G) (a, b) is empty or not, for each a, b ∈ R d+1 /R1 depends only on the bisected ordered partition of b − a.
Proof. Consider the partition of [d + 1] into six sets L 0 , L + , L − , L +1 , L −1 , L * defined in (8). We want to show that feasibility of the system (9) for a given a and b depends only on the bisected ordered partition of b − a. Without loss of generality we assume a = 0 and b 1 ≤ b 2 ≤ · · · ≤ b d+1 as in (7). We distinguish three cases, depending on whether both, none, or exactly one of L +1 and L −1 are empty.
Claim Indeed, in this case feasibility of (9) is equivalent to feasibility of (13) which implies the ordered partition to satisfy (I.1). Conversely, if the ordered partition satisfies (I.1), then let γ be chosen to satisfy (13) and let δ ≥ min(γ − b 1 , b d+1 − γ). This yields a feasible solution to (9). In other words, in this case we can tell if C is empty or not by just looking at the the ordered partition of b; the relative position of the midpoint is irrelevant.
The following gives the other direction of Theorem 5: F d bis refines F d bop .
Lemma 9. Let a, b, a ′ , b ′ ∈ R d+1 /R1 be two pairs of points. If the bisected ordered partitions of b − a and b ′ − a ′ are not the same, then there is a pair of faces F, G ∈ F(B d ) such that exactly one of bis F,G (a, b) or bis F,G (a ′ , b ′ ) is empty.
Proof. As before, we assume without loss of generality that a = a ′ = 0. We know that the bisected ordered partitions of b and b ′ are different. Our goal is to find a pair of faces (F, G) that lies in one and only one of the bisectors. We do this in three cases, depending on the difference between the bisected ordered partitions Case I: Suppose that Without loss of generality, there is an index i such that b i is maximum and b ′ i is not, or b i is minimum and b ′ i is not. Let F be the face with and let G = −F . This choice makes The cell bis F,G (a, b) is not empty by lemma 7, since the following is a solution for (9): However, bis (F,G) (a ′ , b ′ ) is empty: in order for it not to be empty we would need Case II: Suppose that b and b ′ have exactly the same maxima and minima but the ordered partitions of b and b ′ do not coincide. That is, there is a pair We may assume that 1 and d + 1 are a minimum and a maximum, respectively, of both b and b ′ . Let F be the face with F + = {d + 1} and F − = {1}. Let G be the face with G + = {i}, and G − = {j}. Then, (8) gives Then, bis F,G (a, b) is not empty since γ = (b i + b j )/2, and δ = dist(a, b) is a solution of (9). However, the system for b ′ is infeasible, since b ′ i < b ′ j . Thus, bis F,G (a ′ , b ′ ) is empty.
Case III: Suppose that b and b ′ have exactly the same maxima and minima and the same ordered partitions but the midvalue does not coincide.
As before, we assume without loss of generality that 1 and d + 1 are a minimum and a maximum, respectively, of both b and b ′ . Then, there is an i (or vice-versa, but that would give an equivalent case).
In this case, we let F and G be the faces with F + = {d + 1}, F − = {1}, G + = {1} and G − = {i}. These faces produce Then, bis F,G (a, b) is not empty since γ = µ(b), δ = dist(a, b)/2 is a solution of (9) for b However, the system for b ′ is infeasible. This is because (9) specifies that Adding them together and dividing by two we We also need by (9) and i , which contradicts our assumption.

4.4.
The structure of tropical Voronoi regions. A polytrope is an ordinary polytope which is also convex in the tropical sense (with respect to min and max simultaneously); see [17]. These are precisely the ordinary polytopes whose facets normals are roots of type A d , i.e., e i − e j for i = j; they generalize the "alcoved polytopes" of Lam and Postnikov [20]. Here we relax this notion by also calling a not necessarily bounded ordinary polyhedron a polytrope if its facets normals are roots of type A d ; this was called a "weighted digraph polyhedron" in [18].
The tropical unit ball B d is a polytrope. But a more important example for us are the polytropes Q = a∈S (a + F a ), where F a ∈ B d for each a ∈ S. Recall from Section 3 that in such a Q bisectors of subsets of S agree with affine subspaces. Thus: Lemma 10. For each polytrope Q as above and a ∈ S, the set Q ∩ Vor S (a) is the intersection of Q with ordinary affine halfspaces with facet normal e i − e j − e k + e ℓ , where i and j are fixed.
Proof. Let i and j be the coordinates maximized and minimized in F a , respectively. For each b ∈ S \ a, the condition for x to be closer to a than to b is that  A set X ⊂ R d+1 /R1 ∼ = R d is star convex with center c if for any point x ∈ X the ordinary line segment [c, x] is contained in X. Clearly any convex set is star convex, but the converse does not hold. Star convex sets are contractible. Despite the many differences to Euclidean Voronoi diagrams, the following result expresses a key similarity. Theorem 6. Let S ⊂ R d+1 /R1 be a finite set in weak general position. Then each tropical Voronoi region of S is the star convex union of finitely many (possibly unbounded) semi-polytropes.
Proof. That Voronoi regions for polyhedral norms are star-convex is a wellknown fact (see [4, p. 133] or [23, p. 127]), which follows for example from Theorem 2. By Lemma 10, Vor S (a) decomposes as finitely many semipolytropes, by intersecting it with the individual polyhedra Q = a∈S (a + F a ), for all choices of {F a } a∈S .
Semi-polytropes are not necessarily tropically convex, and this entails that the regions of a tropical Voronoi diagram are not necessarily tropically convex either; see Figure 8 for an example. The tropical torus R d+1 /R1 is compactified by the tropical projective space T P d ; the latter is the max-tropical convex hull of the d + 1 max-tropical unit vectors In this way, T P d may be seen as an infinitely scaled tropical unit ball, which is a polytrope; see [18, §3.5]. Similarly for arbitrary (semi-)polytropes the line between bounded and unbounded is blurred in the compactification.

Computing tropical Voronoi diagrams
We will discuss several algorithms. Some of these methods are similar to their classical Euclidean counterparts, others rely on tailored data structures, which are based on Theorem 6. For the complexity analysis of our algorithms we will consider the dimension as constant.
5.1. The planar case. There are several methods for computing Euclidean Voronoi diagrams in R 2 with the optimal time complexity O(n log n) and linear space; see [7, §7.2]. This agrees with the situation for planar tropical convex hull computations; see [16, §5]. Chew and Drysdale [6] gave a divide-and-conquer algorithm with the same complexity for planar Voronoi diagrams with respect to arbitrary norms. Here we sketch a tropical analog of Fortune's beach line algorithm [10]; see also [27].
Suppose that we are given a set S of n sites in R 3 /R1. In view of Theorem 6 the tropical Voronoi diagram of S gives rise to a planar graph where vertices are circumcenters of triples of points in S, edges are two point bisectors, and faces are Voronoi regions. We can make this planar embedding piecewise linear by subdividing each bisector into at most five segments; see Figure 5. The relevant data structure, as in the classical setting, is a doubly-connected edge list which requires O(n) space; see [7, §2.2].
The beach line algorithm is based on a line sweep. The tropical sweep line at time t in R 3 /R1 is the set L(t) = (0, t, 0) + R(0, 0, 1) + R1. Note that L(t) is an ordinary line which is also tropically convex (with respect to min and max). For an arbitrary point x we call the set the parabola spanned by x and L(t); here dist(x, L(t)) = min{dist(x, y) | y − (0, t, 0) ∈ R(0, 0, 1) + R1}. This is a 1-dimensional polyhedral complex, which is homeomorphic with L(t) via orthogonal projection, consisting of five segments.
We will assume that our set S of sites is in general position and hence, in particular, each sweep line contains at most one site. A point a = (a 1 , a 2 , a 3 ) is said to have been visited by the sweep line L(t) if a 2 − a 1 ≤ t.
The beach line B(t) of S at time t is formed by the points (b 1 , b 2 , b 3 ) which lie on a parabola P (s, t) for a visited point s such that b 2 − b 1 is maximal among all such points for a fixed value b 3 − b 1 . That is, the beach line is formed by the right-most points on the parabolas spanned by the visited points and the sweep line; see Figure 9. So B(t) is a union of parabolic arcs; it is easy to see that each parabola contributes at most two arcs to the beach line at any time. Like a single parabola also the beach line B(t) is homeomorphic to L(t) via orthogonal projection. In the portion of R 3 /R1 left to B(t) the tropical Voronoi diagram of S is known at time t. The actual algorithm works as in the classical case. We maintain a priority queue of site events (when the sweep line visits a site) and circle events (when there is a candidate for a new vertex of the tropical Voronoi diagram). The total number of events is linear in n. As in the classical case, it is possible to relax the condition on general position by means of symbolic perturbation.  For the output we can choose, with the same complexity, between an abstract planar graph (encoding Vor(S) topologically) and its piecewise linear embedding resulting from Theorem 6. 5.2. Polytrope partitions. Let S ⊆ R d+1 /R1 be a finite set of sites. From Theorem 6 we know that the tropical Voronoi diagram can be described in terms of (semi-)polytropes. For the definition and basic facts on polytropes, see Section 4.4 and [17]. The following takes inspiration from the trapezoid map data structure; see [7, §6].

Definition 2.
A polytrope partition for S is a finite collection C of (perhaps unbounded) non-degenerate polytropes with disjoint interiors, covering R d+1 /R1, such that: (1) each facet-defining hyperplane of any cell in C lies in the hyperplane arrangement S + A d . (2) for each cell P in C and site a ∈ S the restricted Voronoi region Vor S (a) ∩ P is contained in a maximal cone a + F of a + F(B d ). A valid labeling for C assigns to each cell P ∈ C a (partial) matching L C (P ) The distance function x → dist(x, a) to a fixed site a is piecewise linear, as it is linear in each translated cone a+ F for F ∈ F(B d ). Polytrope partitions are designed to exploit this fact, so that the distances to the relevant sites in each cell are linear. In particular: Observation 9. Let P be a cell in a polytrope partition C for S. Then for all x ∈ P we have (16) dist(x, S) = min where λ Fa is the linear function defined by restricting the distance to a on some maximal cone a + F a of a + F(B d ) which contains Vor S (a) ∩ P . Thus computing the restriction of Vor(S) to the polytrope P amounts to finding the regions of linearity of the tropical polynomial min a∈S λ Fa (x). The latter can be obtained via an ordinary dual convex hull computation.
Note that the maximal cone F a in the above is irrelevant if Vor S (a)∩P = ∅, and it is unique, by axiom (2), if Vor S (a) ∩ P = ∅. If the polytrope partition is equipped with a valid labeling, then this tells us the choice of the right cone F a for each site, if it exists.
The following shows that polytrope partitions exist.
Example 6. The braid arrangement A d consists of the d+1 2 ordinary hyperplanes {x | x i = x j }, where i = j. This gives rise to the standard polytrope partition S + A d , which is finer than any other polytrope partition for S; Figure 8 shows an example for d = 2. This construction occurs in planar tropical convex hull algorithms; see [16, Figure 3].
And finally, the following lemma shows that valid labelings exist for every polytrope partition, if the sites S are in weak general position: Lemma 11. Let C be a polytrope partition for S. If S is in weak general position then there is a valid labeling of C. Moreover, for d considered constant, a labeling of each polytropal cell has constant size, and it can be computed in O(n) time.
Proof. Suppose that a valid labeling does not exist for some cell P . Either the set of pairs in (2) matches two cones with the same site, or matches two sites with the same cone of F(B d ). The former cannot happen since P is full-dimensional and the cones in F(B d ) only intersect in lower-dimensional polyhedral cones.
Then there are sites a, b ∈ S and a maximal cone F ∈ F(B d ) such that the sets (a + F ) ∩ P ∩ Vor S (s) and (b + F ) ∩ P ∩ Vor S (t) both are non-empty.
With the notation of (16) we have λ Fa = λ F b ; and we shortly write λ. Since the sites are in weak general position, we may assume that λ(b) > λ(a).
where the last inequality follows from (16). The resulting inequality dist(y, b) > dist(y, S) implies that y ∈ Vor S (b), which is a contradiction. Hence a valid labeling does exist.
To compute such labeling, we iterate through all the sites. For each site a, the candidate facet of F a ∈ F(B d ) is known by definition of the polytrope partition. To check if (a, F a ) is a labeling candidate, we need to determine if (a + F a ) ∩ P ∩ Vor S (a) is empty or not. This amounts to solving a linear program that has constant size (as d is a constant). It follows that the entire labeling can be computed in O(n) time.
We aim at a first algorithm for computing a tropical Voronoi diagram in arbitrary dimension. This will employ the standard polytrope partition from Example 6. Proof. Pick a generic direction v ∈ R d+1 /R1. The cells of the polytrope partition that are bounded in the direction of v are in a one-to-one correspondence with the vertices of the arrangement, by associating each polytrope with the optimum of the linear program maximizing v T x. Since the number of vertices equals Next we perturb each such vertex p by a small multiple of −v, and we collect the intersection of bands of contiguous parallel hyperplanes of A d + S that contain the perturbed point. This can be done in time O(log n) for each direction. In this way, we find those cells which are bounded in the direction of this particular v in linear output-dependent time. We repeat the same procedure for a set of directions v 1 , . . . , v d+1 which positively span the entire space R d+1 /R1. Each polytropal cell will be bounded in at least one of these directions, and thus their enumeration is still in O(n d ) for d fixed.
Then, for each polytrope P , we compute a corresponding labeling in time O(n), by Lemma 11. Therefore, we can compute the standard polytrope partition, including labels, in time O(n d+1 ) for fixed d. The tropical Voronoi diagram in each cell is an ordinary dual convex hull problem of constant size. This computation splits each polytrope in the partition into semipolytropes. The convex hull problem can be solved in constant time, and hence this algorithm takes O(n d+1 ) time, if d is considered a fixed constant.
Question 1. In the plane R 3 /R1, we believe that ideas similar to the "trapezoidal maps" used in point location, see [7, §6.1], should yield polytrope partitions of linear size but we did not work out the details. More generally: Is there a polytrope partition of complexity better than Θ(n d ) in arbitrary dimension? One could hope for something in O(n d/2 ), which is the worst-case complexity of Euclidean Voronoi diagrams.

5.
3. An O(n d log n) randomized incremental algorithm in R d+1 /R1. We can improve the algorithm from Remark 9 by constructing a polytrope partition incrementally. The idea is to update an existing polytrope partition by including a new point and to employ randomization to improve the efficiency. Moreover, we will also produce a coarser polytrope partition than the standard one, but only by a constant in d.
A key ingredient is a new data structure that we call a polytrope tree. Throughout we assume that the set S of n sites forms a subset of R d+1 /R1 in general position. We fix the polytrope partition C := S + F(B d ), which is coarser than the standard polytrope partition but only by a factor which is constant in d; see Example 6.
Definition 3. A polytrope tree for S is a (rooted) tree T such that (1) for each leaf ℓ there is a polytropal cell P (ℓ) of C; (2) for each interior node i there is a site a(i) ∈ S and a polytrope P (i).
These satisfy the following consistency conditions: • for the root node r of T we have P (r) = R d+1 /R1, which may be seen as an unbounded polytrope; • the map ℓ → P (ℓ) is a bijection between the set of leaves of T and the set of polytropes in C; • the map i → a(i) is a surjection from the interior nodes onto the set S; • if i is an interior node with children c 1 , . . . , c k , then P (c 1 ), . . . , P (c k ) form the maximal cells of (a(i) + F(B d )) ∩ P (i).
It is easy to construct a polytrope tree for S, and its purpose is to speed up the computation of a valid labeling. This will reduce the algorithmic complexity from O(n d+1 ) to O(n d log n).
For the incremental update to insert a new site b ∈ S we maintain a stack Σ of unvisited nodes in a given polytrope tree for Σ and process it as follows: • the stack Σ is initialized with the root node r; • we remove the top node q from the stack Σ unless it is empty; • if q is an interior node such that P (q) intersects more than one maximal cone of s + F(B d ), then we push the children of q onto the stack Σ; • if q is a leaf such that P (ℓ) intersects more than one maximal cone of p + F(B d ), then we create the intersections of P (ℓ) with s + F(B d ) as new leaves, which now become children of q, and we set a(q) ← b.
Note that an interior node q with P (q) contained in a unique maximal cone of a + F(B d ) is kept unchanged, and its children will not be visited. The following is the essential part of the complexity analysis.
Proposition 7. Let T be a polytrope tree created in the way explained above, where the n sites in S are processed in uniformly random order. Then the expected height of T is of order O(log n), if d is considered a fixed constant.
Proof. Let P be a polytrope in the polytrope partition C(S). For each ordering π : [n] → S of S we have a polytrope tree T (S, π) with P as a leaf.
By induction on n we will show: where the expectation E[·] is taken uniformly over all n! orderings of S, and h T (S,π) (P ) is the depth of the leaf of P in T (S, π). We proceed by backwards analysis. Let S ′ ⊂ S be the subset of sites that lie in some facet-defining hyperplane of P . Since P has at most d(d + 1) facets and (by general position) their corresponding hyperplanes contain each exactly one point of S, we have |S ′ | ≤ d(d + 1). Thus, the probability that the height h T (P ) increases in the last insertion is at most d(d + 1)/n. Since the increase is by exactly one, we have where P ′ is the polytrope containing P in the polytrope partition before the last insertion. By induction hypothesis The last two formulas give Eq. (17). Proof. The algorithm that inserts a new site a into the tree only visits nodes that are above some leaf requiring an update. For each such leaf ℓ the polytrope P (ℓ) intersects one of the d(d + 1) hyperplanes in a + A d . This implies that there are O(n d−1 ) of them. Since the expected depth of every leaf is O(log n) it requires expected time O(n d−1 log n) for inserting a. Hence the total complexity for n sites amounts to O(n d log n).
In order to compute the tropical Voronoi diagram, we also need to compute the labeling of this polytrope partition. The naive way is to compute the labeling for each leaf as we did in Remark 9.
A slight improvement is to compute the labeling during the depth-firstsearch (DFS) exploration of the tree at each insertion of a new site. But in this way, even if an interior node is completely contained in only one cone of the fan a + F(B d ), we need to descend to its subtree in order to update the labels. This would slow the algorithm down to Θ(n d+1 ) because each insertion will have to iterate through all the leaves.
A better way is to compute the labeling lazily. To this end we equip each interior node i with a partial labeling L C (i). With each new insertion, we proceed as we just explained, but we do not cascade down the label updates. Only once all sites in S have been inserted we cascade the partial labels, updating them in DFS order. This takes O(n d log n) time to compute the polytropes and the lazy labelings, plus O(n d ) time to cascade the lazy labelings down in the tree, for a total time complexity of O(n d log n) time. This gives our final result. Theorem 10. There is a randomized incremental algorithm for computing tropical Voronoi diagrams of n sites in R d+1 /R1 in general position with expected time complexity O(n d log n) and space complexity O(n d ), for d constant.