Applications of fast triangulation simplification
AApplications of fast triangulation simplification
Mark C. Bell ∗ Richard C. H. Webb † October 13, 2018
Abstract
We describe a new algorithm to compute the geometric intersectionnumber between two curves, given as edge vectors on an ideal triangulation.Most importantly, this algorithm runs in polynomial time in the bit-sizeof the two edge vectors.In its simplest instances, this algorithm works by finding the minimalposition of the two curves. We achieve this by phrasing the problem as acollection of linear programming problems. We describe how to reduce themore general case down to one of these simplest instances in polynomialtime. This reduction relies on an algorithm by the first author to quicklyswitch to a new triangulation in which an edge vector is significantlysmaller. keywords. triangulations of surfaces, geometric intersection number, flip graphs,Dehn twists, regular neighbourhood
Mathematics Subject Classification (2010):
Let S be an (orientable) punctured surface and let ζ = ζ ( S ) := − χ ( S ). We willassume that S is sufficiently complex that ζ ≥ S can be decomposedinto an (ideal) triangulation. Any such triangulation of S has exactly ζ edges.We can use a triangulation to give a combinatorial description of a curve.The (essential, simple closed) curve γ on S is uniquely determined by its edgevector : T ( γ ) := ι ( γ, e )... ι ( γ, e ζ ) ∈ N ζ where e , . . . , e ζ are the (ordered) edges of T .In this paper we describe a new algorithm for computing the geometric inter-section number ι ( α, β ) from T ( α ) and T ( β ). Most importantly, this algorithmruns in polynomial time in the bit-size of T ( α ) and T ( β ).To achieve this we focus on the simplest case when T is α –minimal , thatis, when T minimises ι ( α, T ). On such a triangulation the combinatorics of α are extremely restricted and so there are very few possibilities that we need ∗ Department of Mathematics, University of Illinois: [email protected] † DPMMS, Centre for Mathematical Sciences, University of Cambridge: [email protected] a r X i v : . [ m a t h . G T ] M a y o consider. This allows us to reduce finding the minimal position for α and β down to a collection of linear programming problems. We show that theseproblems are sufficiently small that we can solve them, and so deduce ι ( α, β ), inpolynomial time.In the more general case, we apply a series of moves to convert the problemback to one on an α –minimal triangulation. These moves consist of flippingedges of the triangulation and performing powers of a Dehn twist along a shortcurve. In [2] the first author showed that there is always such a move whichreduces ι ( α, T ) by a definite fraction. We use this to bound the number of movesneeded to reach an α –minimal triangulation.There are several other simplification results in other models of curves onsurfaces [1, Section 4] [4] [6] [11]. However, in all of these other models it is verydifficult to keep track of how another curve changes during the simplificationprocess. This makes it extremely hard to reduce the generic problem down tothe α –minimal case as we are required to track β through these moves too. In this section we consider the problem of putting α in minimal position withrespect to β when both of these are curves given on an α –minimal triangulation T . One case that is particularly straightforward is if α is non-isolating , that is, ifevery component of S − α contains a puncture. Here there is only one possibilityfor how α can appear on T . Lemma 2.1 ([3, Section 2.4.2]) . If α is non-isolating then ι ( α, T ) = 2 and so α must appear on T as shown in Figure 1. eab c bα T Figure 1: An α –minimal triangulation T when α is non-isolating.Hence in this configuration it is straightforward to put α in minimal positionwith respect to β and so we can directly compute their intersection number.2 roposition 2.2. If α is non-isolating then, following the notation of Figure 1, ι ( α, β ) = max( e − b , b − e , a + c − b − e ) where x := ι ( β, x ) . Thus we focus the remainder of this section on the case in which α is isolating. When α is isolating there are again many restrictions on its combinatorics. Theargument of [3, Section 2.4.2] shows that ι ( α, e ) ∈ { , } for every edge e of T .This means that in each triangle α must appear either as a tripod or corridor ,as shown in Figure 2a and Figure 2b respectively. (a) A tripod in a triangle. (b) A corridor in a triangle. Figure 2: An isolating curve α in an α –minimal triangulation. Proposition 2.3.
Let g (cid:48) be the genus of the component of S − α which doesnot contain any punctures. Then α appears as a corridor in exactly one triangleof T and as a tripod in exactly g (cid:48) − triangles of T .Proof. Clearly α must appear as a tripod in exactly 4 g (cid:48) − α did notappear as a corridor in any triangle of T then it would be peripheral. Hence itonly remains to show that α appears as a corridor in at most one triangle.Suppose instead that there are two triangles in which α appears as a corridor.Let e be the arc shown in Figure 3, which follows around α from the outside ofone corridor to the other before connecting to a puncture. e e Figure 3: A disjoint arc e when α has two corridors.We follow along e , flipping each edge of T that we meet along the way. Eachflip reduces ι ( e, T ) but does not increase ι ( α, T ) [10, Page 38]. Thus, after3erforming at most 2 ζ flips, we finish with a triangulation T (cid:48) which contains e asan edge. However, since e is disjoint from α we must have that ι ( α, T (cid:48) ) < ι ( α, T ).This contradicts the fact that T was α –minimal. To finish the case in which α is isolating we formulate a collection of integerlinear programming problems. An optimal solution over all of these problems willthen correspond to a minimal position. The number of problems and, thanks tothe fact that these curves are given on an α –minimal triangulation, the numberof variables involved will be bounded only in terms of ζ .To do this we first assign an orientation to each edge of T . Additionally, forease of notation throughout this section let e i := ι ( β, e i ).Fix b ∈ β to be a representative which meets T minimally. Without lossof generality we may draw b as a collection of straight line segments in eachtriangle.Now for each edge e i , choose x i , y i ∈ N such that x i + y i ≤ e i . We constructa representative a ∈ α from these variables as follows.1. If α meets the edge e i then we place two marks on the edge. Walking along e i in the direction of its orientation, we place the first mark just after weencounter the x i th point of b . Similarly, walking along e i in the reversedirection, we place the second mark just after we encounter the y i th pointof b .2. Each triangle now has exactly 0, 4 or 6 marks on its boundary. In thefirst case we do nothing in this triangle. In the second and third caseswe connect these via straight line segments to form a corridor or tripodrespectively.3. The union of these segments is our representative a ∈ α .For example, see Figure 4a where x i = 5, y i = 3, x j = 4, y j = 3, x k = 3 and y k = 3. Alternatively, in the example shown in Figure 4b we have that x i = 0, y i = 0, x j = 4, y j = 3, x k = 2 and y k = 2 but ι ( α, e i ) = 0. e i e j e k x i y i x j y j x k y k (a) When α forms a tripod. e i e j e k z j z k z i (b) When α forms a corridor. Figure 4: Positioning a over b . Proposition 2.4.
The intersection number ι ( a , b ) is a piecewise linear functionof x , y , . . . , x ζ , y ζ . roof. Consider a single triangle of T with sides e i , e j and e k . Let z i , z j and z k denote the number of segments of b running through this triangle parallel to thespecified edge, as shown in Figure 4b. That is, z i := 12 ( e j + e k − e i ) , z j := 12 ( e i + e k − e j ) and z k := 12 ( e i + e j − e k ) . Now consider a single segment I of a in this triangle which, without loss ofgenerality, connects from e j to e k .If I is part of a tripod, as shown in Figure 4a, or is the segment of a corridorwhich is furthest from e i , as shown in Figure 4b, then: ι ( I, b ) = (cid:40) | x k − y j | if x k ≤ z i or y j ≤ z i x k + y j − z i otherwise . Similarly, if I is the segment of a corridor which is closest to e i then: ι ( I, b ) = (cid:40) | ( e j − y k ) − ( e j − x j ) | if e j − y k ≤ z i or e j − x j ≤ z i ( e j − y k ) + ( e j − x j ) − z i otherwise . Note that both formulae are dependent on the orientations of e i , e j and e k matching those in Figure 4a and Figure 4b. In the event that the orientation on e i does not match, for example, the variables x i and y i must be interchanged.In either case, this is a piecewise linear function of x , y , . . . , x ζ , y ζ . Henceby summing these functions over all segments in all triangles we see that ι ( a , b )is a piecewise linear function of x , y , . . . , x ζ , y ζ too.We will denote this piecewise-linear function by f and so ι ( a , b ) = f ( x , y , . . . , x ζ , y ζ ) . Now any representative of α which is in minimal position with respect to b isisotopic, relative to b , to some representative constructed by the above procedure.Therefore there is a choice of x , y , . . . , x ζ , y ζ such that the corresponding a isin minimal position with respect to b . Thus the task of putting α in minimalposition with respect to β is equivalent to finding a minimum of f .To find such a minimum we consider each piece of f in turn. We canformulate the problem of finding a minimum of f on a piece as an integer linearprogramming problem. There are many algorithms for solving such problemsand, while they are NP -complete in general [13] [8], these can be solved inpolynomial time as we have a fixed number of variables: Theorem 2.5 ([5] [9]) . Suppose that m is fixed. There is an algorithm which,given a matrix A ∈ Z n × m , vector b ∈ Z n × and vector c ∈ Z × m finds anoptimal solution x ∈ Z m × to the integer linear programming problem:Minimise c · x Subject to A · x ≥ b. Moreover, this algorithm runs in polynomial time in the bit-size of A , b and c . ι ( β, T )). Therefore by using the algorithm of Theorem 2.5 we can solveeach of these problems in at most O (poly(log( ι ( β, T )))) operations.Finally, note that ι ( I, b ) from the proof of Proposition 2.4 is a piecewiselinear function with 5 pieces. Therefore the number of intersections occurringin a triangle is a piecewise linear function with at most 5 pieces. Thus f hasat most 5 ζ pieces and so there are at most 5 ζ ∈ O (1) such problems we mustconsider. Hence we can also find the minimal solution over all problems, and soa minimum of f , in polynomial time in the bit-size of T ( β ). Corollary 2.6.
Suppose we are given T ( α ) and T ( β ) where T is an α –minimaltriangulation. Then we can compute the minimal position for α relative to β ,and so ι ( α, β ) , in polynomial time in the bit-size of T ( β ) . Remark 2.7.
We may also view β as a measured lamination. Then minimalposition occurs when there are no bigons between α and the underlying laminationof β . Thus we can find the minimal position of α with respect to β by solving acollection of linear programming problems instead of integer linear programmingproblems. We now consider the more general case, in which α and β are given on atriangulation T which is not α –minimal. To deal with this case, we introducetwo basic moves for modifying triangulations; the flip and the twist . We usethese moves to give a polynomial time reduction back to the case in Section 2.Firstly, we say that an edge of T is flippable if it is contained in two distincttriangles. If e is such an edge then we may flip it to obtain a new triangulation T (cid:48) as shown in Figure 5. e fab c d FlipFigure 5: Flipping an edge of a triangulation.Secondly, if δ is a curve on S then we may modify T by performing the Dehntwist T kδ [7, Chapter 3]. This move cuts the surface open along the curve δ androtates one of the boundary components k times to the right (or | k | times to theleft if k is negative) before regluing the boundary components together.In both cases it is straightforward to compute the edge vectors of α and β on the new triangulation after performing such a move:6 roposition 3.1 ([10, Page 30]) . Suppose that γ is a curve and e is a flippableedge of a triangulation T as shown in Figure 5 then ι ( γ, f ) = max( ι ( γ, a ) + ι ( γ, c ) , ι ( γ, b ) + ι ( γ, d )) − ι ( γ, e ) . Hence we can compute T (cid:48) ( γ ) in at most O (log( ι ( γ, T ))) operations. Proposition 3.2 ([12]) . Suppose that δ and γ are curves. Given T ( δ ) , T ( γ ) and k ∈ Z we can compute T (cid:48) ( γ ) where T (cid:48) := T kδ ( T ) in at most O (poly(log( ι ( γ, T )) + log( ι ( δ, T )) + log( k ))) operations. The usefulness of these moves comes from the fact that if a curve appearsvery complicated on T then there is always such a move which reduces thenumber of intersections by a definite fraction: Theorem 3.3 ([2, Theorem 3.7]) . Let D := 80 ζB (10 B + 1) C where B := 5 ζ and C := 2 ζ . If ι ( γ, T ) > D then there is a triangulation T (cid:48) such that either: • T and T (cid:48) differ by a flip, or • T (cid:48) = T kδ ( T ) where | k | ≤ ι ( γ, T ) and ι ( δ, T ) ≤ ζ and ι ( γ, T (cid:48) ) ≤ (1 − /D ) ι ( γ, T ) . Thus, by using Theorem 3.3 at most O (log( ι ( α, T ))) times we can obtain atriangulation T (cid:48) where ι ( α, T (cid:48) ) ≤ D . To continue simplifying further we use thefollowing lemma: Lemma 3.4. If T is not α –minimal then by performing at most ζ flips we canreach a triangulation T (cid:48) such that ι ( α, T (cid:48) ) < ι ( α, T ) .Proof. If ι ( γ, e ) > e of T then there is an edge of T which canbe flipped in order to reduce the intersection number [3, Lemma 2.4.3]. Hencewe may assume that ι ( α, e ) ≤ e of T .Now if ι ( α, e ) = 1 for some edge e then by performing at most two flips wecan reduce the intersection number [3, Lemma 2.4.4].On the other hand, if ι ( α, e ) ∈ { , } for every edge e then α looks like atripod or corridor in each triangle of T . Hence, by the same argument as inthe proof of Proposition 2.3, by performing at most 2 ζ flips we can reach atriangulation with fewer intersections with α . Corollary 3.5.
Given T ( α ) and T ( β ) we can compute an α –minimal triangu-lation T (cid:48) together with T (cid:48) ( α ) and T (cid:48) ( β ) in at most O (poly(log( ι ( α, T )) + log( ι ( β, T )))) operations. Furthermore, the bit-size of T (cid:48) ( β ) is at most O (log( ι ( β, T )) + log ( ι ( α, T ))) . Thus we can compute minimal position representatives on T (cid:48) , and so ι ( α, β ) inpolynomial time in the bit-sizes of T ( α ) and T ( β ) too. roof. By combining Theorem 3.3 and Lemma 3.4 we obtain a sequence ofmoves from T to an α –minimal triangulation T (cid:48) . By Proposition 3.1 andProposition 3.2, we can push T ( α ) and T ( β ) through these moves and so obtainthe edge vectors for these curves on T (cid:48) too. As there are only O (log( ι ( α, T )))such moves, we can perform this computation in at most O (poly(log( ι ( α, T )) + log( ι ( β, T ))))operations.We now consider the effect of an individual move on ι ( β, T ): • Performing a flip increases ι ( β, T ) by a factor of at most two by Proposi-tion 3.1. • Performing T kδ increases ι ( β, T ) by at most | k | ι ( δ, T ) ι ( δ, β ) [7, Proposi-tion 3.4]. However for the twists that we will perform: – | k | ≤ ι ( α, T ), – ι ( δ, T ) ≤ ζ , and – ι ( δ, β ) ≤ ζ ι ( β, T ).Hence, performing this move increases ι ( β, T ) by at most a factor of4 ζ ι ( α, T ).Again, as only O (log( ι ( α, T ))) such moves are performed, we have that ι ( β, T (cid:48) ) ∈ O (cid:16) ι ( β, T ) ι ( α, T ) log( ι ( α, T )) (cid:17) and so the bound holds by taking logs.We can now reapply the procedure of Section 2 to compute minimal positionfor α and β on T (cid:48) and so deduce ι ( α, β ). As ι ( α, T (cid:48) ) and ι ( β, T (cid:48) ) are sufficientlysmall, this can also be done in polynomial time. We finish with some further generalisations of the procedure of Corollary 3.5.
A slight variant of this procedure works even when α and β have multiplecomponents.To handle this case we first use a polynomial time algorithm to extract theindividual components and their multiplicities [1, Section 4] [2, Section 4] [6,Section 6.4]. That is, we find a i , b j ∈ N and curves α i , β j such that α = (cid:91) i a i · α i and β = (cid:91) j b j · β j . We proceed by computing ι ( α i , β j ) for each i and j by the above procedure andthen ι ( α, β ) = (cid:88) i,j a i b j ι ( α i , β j ) . .2 Multiarcs The above procedure also works when α or β is a multiarc , that is, the isotopyclass of the image of a smooth proper embedding of a finite number of copies of[0 ,
1] (whose endpoints connect into punctures) into S .If α is an arc then an α –minimal triangulation is one which contains α asan edge. Thus we perform the simplification routine to obtain α and β onan α –minimal triangulation T (cid:48) . After this ι ( α, β ) is just the entry of T (cid:48) ( β )associated to the edge α .If α is a multiarc then we extract its individual components and theirmultiplicities and proceed as in Section 4.1.The only modification needed to enable this is a slight change to how thesemultiarcs are represented combinatorially. Since a non-trivial multiarc can havezero intersection with all edges, we make a slight modification to the standarddefinition of intersection number. Definition 4.1. If α is a multiarc which contains k copies of the edge e of T then their intersection number is defined to be ι ( α, e ) := − k .This allows us to again represent a multiarc via its intersection numbers withthe edges of a triangulation and for the procedure to work as before. For curves α and β let γ := ∂ ( N ( α ∪ β )). When α and β are in minimal positionon an α –minimal triangulation, it is straightforward to compute T ( γ ) from T ( α )and T ( β ). The same argument as in Section 3 allows us to easily reduce thiscalculation on any triangulation back to one on an α –minimal triangulation.Thus, we can compute T ( γ ) in polynomial time in the bit-sizes of T ( α ) and T ( β ).One key application for this is when h is a reducible, aperiodic mappingclass. In this case, suppose that we have found a multicurve α such that h n ( α ) = α . We wish to upgrade from this h n –invariant multicurve to an h –invariant one. One way to achieve this is to take the h –invariant multicurve γ := ∂N ( α ∪ h ( α ) ∪ . . . ∪ h n − ( α )). This multicurve is essential since h isaperiodic and, by the above argument, we can compute T ( γ ) in polynomial timein the size of h and the bit-size of T ( α ). Here we think of h as being given as asequence of edge flips starting from T and its size is just the number of flips. Acknowledgements.
The first author acknowledges support from U.S. NationalScience Foundation grants DMS 1107452, 1107263, 1107367 “RNMS: GEometricstructures And Representation varieties” (the GEAR Network).The second author is supported by EPSRC Fellowship Reference EP/N019644/1.
References [1] Ian Agol, Joel Hass, and William Thurston. The computational complexityof knot genus and spanning area.
Trans. Amer. Math. Soc. , 358(9):3821–3850, 2006. [2, 8][2] M. C. Bell. Simplifying triangulations.
ArXiv e-prints , April 2016. [2, 7, 8]93] Mark Bell.
Recognising mapping classes . PhD thesis, University of Warwick,2015. [2, 3, 7][4] Ivan Dynnikov and Bert Wiest. On the complexity of braids.
J. Eur. Math.Soc. (JEMS) , 9(4):801–840, 2007. [2][5] Friedrich Eisenbrand. Fast integer programming in fixed dimension. In
Algorithms—ESA 2003 , volume 2832 of
Lecture Notes in Comput. Sci. ,pages 196–207. Springer, Berlin, 2003. [5][6] Jeff Erickson and Amir Nayyeri. Tracing compressed curves in triangulatedsurfaces.
Discrete Comput. Geom. , 49(4):823–863, 2013. [2, 8][7] Benson Farb and Dan Margalit.
A primer on mapping class groups , vol-ume 49 of
Princeton Mathematical Series . Princeton University Press,Princeton, NJ, 2012. [6, 8][8] Michael R. Garey and David S. Johnson.
Computers and intractability . W.H. Freeman and Co., San Francisco, Calif., 1979. A guide to the theory ofNP-completeness, A Series of Books in the Mathematical Sciences. [5][9] H. W. Lenstra, Jr. Integer programming with a fixed number of variables.
Math. Oper. Res. , 8(4):538–548, 1983. [5][10] Lee Mosher. Tiling the projective foliation space of a punctured surface.
Trans. Amer. Math. Soc. , 306(1):1–70, 1988. [3, 7][11] Marcus Schaefer, Eric Sedgwick, and Daniel ˇStefankoviˇc. Algorithms fornormal curves and surfaces. In
Computing and combinatorics , volume 2387of
Lecture Notes in Comput. Sci. , pages 370–380. Springer, Berlin, 2002.[2][12] Marcus Schaefer, Eric Sedgwick, and Daniel Stefankovic. Computing Dehntwists and geometric intersection numbers in polynomial time, 2007. [7][13] Joachim von zur Gathen and Malte Sieveking. A bound on solutions of linearinteger equalities and inequalities.