Detecting genus in vertex links for the fast enumeration of 3-manifold triangulations
Enumerating all 3-manifold triangulations of a given size is a difficult but increasingly important problem in computational topology. A key difficulty for enumeration algorithms is that most combinatorial triangulations must be discarded because the…
Authors: Benjamin A. Burton
Detecting gen us in v ertex links for the fast en umeration of 3-manifold triangulat ions Benjamin A. Burton Jan uary 16, 2011 Abstract Enumerating all 3- man ifold triangulations o f a given size is a difficult but i n creasingly imp ortant problem in computational top ology . A key difficulty for enumeration algorithms is that most com b inatorial triangulations m u st b e discarded b ecause they do not represent top ological 3-manifolds. In this paper w e show how to preempt bad triangulations by detecting genus in partially-constructed vertex links, allo wing us t o prune the enumeration tree substantially . The k ey idea i s to manipulate the b oundary edges surrounding partial vertex links using exp ected logarithmic time op erations. Practical testing sho ws the resulting enumeration algorithm to b e significan tly faster, with up to 249 × sp eed-up s even fo r small problems where comparisons are feasible. W e also discuss parallelis ation, and describ e n ew data sets that have b een obtained u sing high-p erformance computing facilities. ACM classes G.2.1; G.4; I.1.2 Keywords Computational topology , 3-manifolds, triangulations, censu s algorithm, com- binatorial enumeration 1 In tro d uction In computationa l geometr y and top ology , triangulations ar e natura l a nd ubiquitous data s tr uc- tures for repr esenting t o p o logical space s. Here we focus o n triangulatio ns in 3-manifold top ology , an imp orta nt bra nch o f to p o logy in which many k ey problems are theore tica lly decidable but extremely difficult for pr actical computation [1, 1 1]. A c ensu s of 3-manifold triang ulations is a list of all triangulations tha t satisfy some given set of prop erties. A typical census fixes the num b er of tetrahedr a (the size of the triangulation), and enumerates all triangula tio ns up to isomorphism (a relab elling of the tetrahedr a and their vertices). Censuses of this t y p e first app eared in the late 1980 s [14, 19]. 1 These were censuses of minimal triangulations , which repr esent a given 3-manifo ld using the fewest po ssible tetrahedra . Such censuse s ha ve bro ught ab out new ins ig hts into the combinatorics o f minimal tria ngulations [9, 18, 21] and the complexities of 3-manifolds [17, 20], and have prov en useful for computation and exp erimentation [4, 10 ]. A mor e recent development has been censuses o f al l p ossible 3 -manifold triangula tions of a given size, including non-minimal triangulations [11]. These hav e yielde d sur pr ising experimental 1 Some authors, following Matve ev [19], w or k in the setting of sp ecial spines which are dual to tri angulations. 1 insights into algorithmic complexity problems and random 3-manifold triang ulations [11, 12], bo th topics which r emain extremely difficult to handle theoretically . The limits of censuse s in the literatur e ar e fairly small. F or closed P 2 -irreducible 3 -manifolds, all minimal triangulations ha ve b een enumerated for only ≤ 10 tetrahedra [8]; for the orientable case only , the list of manifolds (but not triangulations) is known for ≤ 12 tetrahedr a [23]. A full lis t of a ll closed 3- manifold tria ngulations (non- minimal included) is kno wn f o r just ≤ 9 tetrahedra [11]. These small limits are unav oidable b e cause censuses grow exp onentially—and sometimes sup er-exp onentially [12]—in size. Nevertheless, in theor y it should b e po ssible to extend these res ults s ubstantially . Census algorithms are typically based on a recursive sear ch throug h all possible c ombinatorial t rian- gulations —that is, methods of gluing together faces of tetrahedra in pairs. How ever, a s the nu mber o f tetrahedra grows la r ge, almos t all combinatorial tr iangulations are not 3-ma nifo ld triangulations [13]. The problem is that vertex links —b oundar ies of small neighbour ho o ds of the vertices of a triangulation—ar e generally not s pheres or discs as they should b e, but instead higher-genus surfaces. T o illustra te: for n = 9 tetrahedra , if we simply glue together all 4 n tetrahedron faces in pairs, a very ro ugh estimate (des crib ed in the appendix) gives at least 6 . 4 4 × 10 12 connected c ombinatorial triang ulations up to isomorphism. How ever, just 13 9 103 0 32 are 3-manifold trian- gulations [11], and a mere 3 338 a re minimal triangulations o f clo sed P 2 -irreducible 3-manifolds [8]. It is clear then that lar ge branches of the com binato rial sear ch tree can b e avoided, if o ne could only ident ify which br anches these are. The cur r ent challenge for enumeration algorithms is to find new a nd easily-tes table conditions under which such branches ca n b e pruned. F or census e s of minimal triangulations, several such conditions are kno wn: examples include the absence o f low-degree edges [6, 14, 21], or of “bad subgraphs” in the underlying 4-v a lent face pairing gr aph [8, 16]. Nevertheless, seeing how few minimal triangulations a re found in practice, there are likely ma n y mo re conditions yet to be found. It is cr itical that such conditions can be tested quickly , since these tests ar e run on a c o ntin ual basis as the search prog resses and backtrac k s . The pap er [8] in tro duces a mo dified union-find framework through which several minimality tests can b e p erfo rmed in O (log n ) time. Impor- tantly , this framework can also be used with censuses of al l 3-manifold triangulations (non- minimal included), where it is used to test that: (i) partially-cons tructed vertex links are ori- ent a ble, and (ii) fully-c onstructed edges a r e not identified with themselves in reverse. Although tests (i) and (ii) a re p ow erful when en umera ting non-orientable triangulations , they do not help for orientable triangula tio ns b ecause they are alrea dy enforced by the overall enumeration algorithm. The main c o ntributions of this pap er a re: • W e add the fo llowing condition to the suite of tests used during en umer a tion: al l p artial ly- c ons t ructe d vertex links must b e pun ctur e d spher es (not punctured higher-g enus surfaces). Although this condition is straight fo r ward, it has traditionally req uired O ( n ) opera tions to test, making it impractical for frequent use in the enumeration algor ithm. In Sectio n 3 we show ho w to test this condition incr emental ly , using o nly expe c ted log a rithmic-time op erations at ea ch stage of the co m bina torial search. This condition is extremely p ow erful in b oth the or ient a ble and non-o rientable c ases, and our new incr emental test makes it pr actical fo r rea l use. Performance testing in Section 4 2 shows s pee d- ups of up to 249 × even fo r small enumeration pr oblems wher e exp erimental compariso ns are fea sible ( n ≤ 7). • In Section 6 w e use this to obtain new census da ta , including all clo s ed 3-manifold triangu- lations of siz e n ≤ 10 (non-minimal included, improving the previous limit of n ≤ 9), and all minimal tria ngulations of clos e d P 2 -irreducible 3- manifolds of size n ≤ 11 (improving the previous limit of n ≤ 10). High-p erformance computing and distributed algor ithms play a key r ole, as outlined in Section 5 . All censuses cover b oth orientable and non- orientable tria ng ulations. This new census da ta is already proving useful in ongoing pr o jects, suc h as studying the structure of minima l triang ula tions, and mapping out av era ge-case and generic complex ities for difficult top ologica l decision pr oblems. It should b e noted tha t avoiding isomorphisms—often a significant difficult y in combinatorial enum er ation—is not a pro blem her e. See the full version of this paper for deta ils. Lo oking forw a r d, the tec hniques of this pap er can also b e applied to t he enumeration o f 4-manifold triangulations. In this higher -dimensional setting, our techniques ca n be applied to edge links rather than vertex links. V ertices o n the other hand b eco me more difficult to handle: each v ertex link m ust be a 3-sphere, and 3 -sphere recog nition remains a difficult algorithmic problem [12, 20]. Here re s earch int o a lgebraic tec hniques may yield new heuris tics to further prune the sear ch tr ee. Throughout this pa p er we r estrict our attention to closed 3-manifolds, although all of the results presented her e e x tend easily to manifolds w ith bounda ry . All algor ithms describ ed in this pap er ca n b e downloaded as part of R e gina [5, 7], a n o pe n- source softw ar e pa ck a ge for the algebra ic and com binato rial manipulation of 3-manifo lds and their triangulatio ns . 2 Preliminaries Consider a co llection of n tetrahedra (these are abstra c t ob jects, and need not b e em b edded in some R d ). A c ombinatorial triangulation o f size n is obtained by affinely identifying (or “gluing together”) the 4 n tetra hedron faces in pa irs. 2 Spec ific a lly , it consists of the following data: • a partition of the 4 n tetrahedron faces into 2 n pairs, indicating which faces are to be ident ified; • 2 n p ermutations of three elements, indicating which of the s ix p o ssible rota tio ns or r eflec- tions is to be used for each iden tifica tion. F or instance, co nsider the following example with n = 3 tetrahedra. The tetrahedra are lab elled A, B , C , and the four vertices of each tetra he dr on are lab elled 0 , 1 , 2 , 3. T etrahedron F ace 012 F ace 013 F ace 023 F ace 123 A C : 013 B : 012 A : 312 A : 230 B A : 013 C : 120 C : 231 C : 302 C B : 301 A : 012 B : 231 B : 302 2 A com binatorial triangulation need not b e a simplicial complex, and need not represen t a top ological 3- manifold. The word “combinatorial” indicates that w e are only i nterested in face i den tifications, with no topo- logical requirements. 3 The top-left ce ll of this table indicates that face 012 of tetrahedron A is iden tified with face 013 of tetrahedron C , using the rotation or reflection that maps vertices 0 , 1 , 2 of tetrahedron A to vertices 0 , 1 , 3 of tetrahedr on C resp ectively . F or co nv enience, the same ide ntification is als o shown from the o ther direction in the seco nd c e ll o f the b ottom r ow. As a consequence o f these face iden tifications , we find that several tetra hedron edges b eco me ident ified together; each suc h equiv alence c la ss is called an e dge of the triangulation . Like- wise, each equiv ale nce clas s of ident ified vertices is called a ve rt ex of the triangulatio n . The triangulation illustrated ab ove has three edges a nd just one vertex. The fa c e p airing gr aph of a combinatorial triang ulation is the 4-v alent m ultigr aph whos e no des repres ent tetrahedra and who se edges represent face iden tificatio ns. The face pairing graph for the example above is shown in Figure 1. A combinatorial triangulation is called c onn e cte d if and o nly if its face pairing g raph is connected. P S f r a g r e p la c e m e n t s A B C Figure 1: An example face pa iring g raph The vertex links of a triang ulation are obta ined as follows. In eac h tetra hedron we place four tria ngles surro unding the four vertices, as shown in Figure 2 . W e then glue tog ether the edges o f these tria ngles in a manner co nsistent with the face identifications of the surrounding tetrahedra, as illustra ted in Figure 3. Figure 2: The tria ngles that form the vertex links Figure 3: Joining vertex linking tr iangles alo ng their edges in adjacent tetrahedra The r esult is a co llection of tria ngulated clo sed surfa c e s, one sur rounding each vertex of the triangulation. The s urface surrounding vertex V is referred to as the link of V . T o po logically , this repre s ent s the b ounda r y of a small ne ig hbourho o d of V in the triangulation. A 3-manifold triangulation is a combinatorial triangulatio n that, when viewed as a to po log- ical spa c e, r epresents a 3-manifold. Equiv alently , a 3- manifold triang ulation is a c o mbinatorial triangulation in which: (i) each vertex link is a top ological sphere; 4 (ii) no tetrahedron edge is identified with itself in reverse as a result of the face identifications. 3 The earlier example is not a 3-manifold triangula tion, s ince the link o f the (unique) vertex is a torus, not a spher e. F or many 3-manifolds M , the size of a minimal triangulation of M corres p o nds to the Ma tveev complexity of M [17, 20]. A p artial triangulation is a combinatorial triangulation in whic h we identify only 2 k o f the 4 n tetrahedro n fac e s in pairs, for so me 0 ≤ 2 k ≤ 4 n . W e define vertices, edges a nd vertex links as b efore, noting that v er tex links might now b e surfaces with bounda r y (not close d sur faces). A typical enumeration algorithm works as follows [8, 14]: Algorithm 1. Supp ose we wish to enumer ate al l c onn e ct e d 3-manifold triangulations of size n satisfying some set of pr op erties P . The main steps ar e: 1. Enumer ate al l p ossible fac e p airing gr aphs (i.e., al l c onne cte d 4-valent multigr aphs on n no des). 2. F or e ach gr aph, r e cu rsively try al l 6 2 n p ossible r otations and r efle ctions for identifying the c orr esp onding tetr ahe dr on fac es. Each “ p artial sele ction ” of ro tat ions and re fl e ct ions gives a p artial triangulation, and r e cur s ion and b acktr acking c orr esp ond to gluing and u ngluing tetr ahe dr on fac es in these p artial triangulations. 3. Whenever we have a p artial t riangulation, ru n a series of tests that c an identify situations wher e, no matter how we glue the r emaining fac es to gether, we c an never obtain a 3- manifold triangulation satisfying the pr op erties in P . If t his is the c ase, prune the curr ent br anch of the se ar ch t r e e and b acktr ack imme diately. 4. Whenever we have a c omplete sele ction of 6 2 n r otations and r efle ct ions, test whether (i) the c orr esp onding c ombinatorial triangulation is in fact a 3-manifold triangulation, and (ii) whether this 3-manifold triangulations satisfies the r e qu ir e d pr op erties in P . There is also the problem of av oiding is omorphisms. This is computationa lly c heap if the recursion is order ed carefully; for details , s e e the full version o f this paper . In practice, step 1 is negligible—almo st all of the computational work is in the recursive search (steps 2–4). The tests in s tep 3 a re critical: they mu s t b e extremely fast, since they are run at ev e r y stage of the recursive sear ch. Moreov er , if chosen car efully , these tests c a n pr une v as t se c tions of the s e arch tree and sp eed up the en umer ation substantially . A useful o bserv ation is that some gr aphs ca n b e eliminated immediately after step 1. See [6, 8, 16] for a lgorithms that incor p o rate such techniques. 3 T rac king V erte x Links In this pap er w e add the follo wing test to step 3 of the enumeration algor ithm: T est 2 . W henever we have a p artial triangulation T , test whether all ve rt ex links ar e spher es with zer o or mor e punctur es. If not, prun e the curr ent br anch of the se ar ch tr e e and b acktr ack imme diately. Theoretically , it is simple to s how that this tes t works: 3 An equiv alent condition to (ii) is that we can direct the edges of eve r y tetrahedron in a manner consistent with the face identificat ions. 5 Lemma 3. If T is a p artial triangulation and the link of some vertex V is not a spher e with zer o or mor e punct ur es, then ther e is no way t o glue to gether t he r emaining fac es of T to obtain a 3-manifold triangulation. Pr o of. Suppos e we c an g lue the remaining faces together to fo rm a 3-manifold triangula tion T ′ . Let L and L ′ be the links of V in T and T ′ resp ectively; since T ′ is a 3-manifold tria ngulation, L ′ m us t b e a top olo gical s phere. This link L ′ is obtained from L b y attaching zero or mo r e additional tria ngles. Therefo re L is an embedded subsurface of the sphere, and so L m ust be a s phere with z e r o or more punctures. The test itself is straightforw ar d; the difficulty lies in per fo rming it quickly . A fast imple- men ta tion is crucia l, since it w ill be called rep eatedly throug hout the recurs ive search. The k ey idea is to track the 1-dimensional b oun dary curves of the v ertex links, which are formed from cycles of edge s be lo nging to vertex-linking triangles. As we glue tetra hedr on faces together, we rep eatedly split a nd s plic e these bo undary cycles. T o v er ify T est 2, we must track which tr iangles belong to the same vertex links and which edg es b elong to the sa me b oundary cycles, which w e ca n do in expe c ted loga r ithmic time using union- find and skip lists resp ectively . In the sections below, w e descr ibe what additional data needs to b e stor ed (Section 3 .1), how to manipulate a nd use this da ta (Sectio n 3 .2), and ho w skip lists can ensure a s mall time complexity (Section 3 .3). 3.1 Data structures In a partia l tr iangulation with n tetr a hedra, there ar e 4 n vertex linking triangles that to g ether form the v er tex links (four such triangles are shown in Figure 2). These 4 n triang les ar e sur- rounded by a total of 12 n vertex linking e dges . Each time we glue toge ther tw o tetrahedron faces, we conseq uen tly glue together three pairs of v er tex linking edges, as shown in Figure 3. This gradua lly co mbines the triangles in to a collection of larger tria ng ulated surfaces , as illustrated in Figure 4. The b oundary curv es of these surfaces ar e drawn in b old in Figure 4; these are formed from the vertex linking edges that hav e not yet b een paired together. Figure 4: V er tex linking surfaces a fter gluing several tetra hedron faces T o suppor t T est 2, we store all 1 2 n vertex linking edges in a series of cyclic lis t structures that describe these boundary curves. T o simplify the discuss ion, w e b egin with a na ¨ ıve im- plement a tion based on doubly-linked lists. Howev er, this lea ves us with an O ( n ) op eration to per form, as seen in Section 3.2. T o run all op er a tions in expected logarithmic time we use skip lists [25], which we o utline in Section 3 .3. W e treat the vertex linking edges as dir e cte d e dges (i.e., ar rows), with directions chosen arbitrar ily a t the beginning of the e numeration a lgorithm. F o r each vertex linking edge e , w e store the following da ta: 6 • If e is pa r t of a b oundar y curve, w e stor e the tw o edges adjacent to e a long this b oundary curve, as well a s tw o b o olea ns that tell us whether these adjacent edges p oint in the sa me or opp osite direc tio ns. • If e is no t part of a boundar y curve (i.e., it ha s be e n glued to some other vertex link ing edge and is no w int er nal to a v ertex linking sur face), we store a snaps hot of the ab ov e data from the last time that e was part of a bounda r y curve. T o summarise: edges on the b ounda ry curv e s a r e stored in a series of doubly-linked lists, and in terna l edges r emember wher e they wer e in these lists r ight b efor e they were glued to their current partner . 3.2 Recursion, bac ktrackin g and testing Recall that ea ch time we g lue tw o tetrahedron faces tog ether, we must glue together t hr e e pairs of vertex linking edges. Each of these edg e g luings c ha nges the v er tex linking surfaces, and so we pro cess each edge gluing individually . There are three key op erations tha t we must p erform in r elation to edge gluings: (i) gluing tw o vertex linking edges together (when we step forward in the recursion); (ii) ungluing tw o vertex linking edges (when w e backtrack); (iii) verifying T est 2 after gluing tw o vertex linking edges to gether (i.e., verifying that all vertex links are sphere s with zero or mor e punctures). W e now present the de ta ils of each op era tio n in turn. Throughout this discussio n we assume that edges are glued tog ether s o that a ll v er tex links are orientable sur faces; the pap er [8] describ es an efficient fr amework for detecting non-o rientable vertex links as s o on as they a rise. Recursion: glui ng edges together Suppo se we wish to glue together edges x and y , a s illustrated in Figure 5. Only loca l mo difica - tions are required: edges p and r b ecome adjacent and must now to link to ea ch o ther (instead of to x a nd y ); likewise, edges q and s must b e adjusted to link to each o ther. Note that this gluing introduces a change of dir ection wher e p a nd r meet (and likewise for q and s ), so a s we adjust the dire c tion-related b o oleans we must p erfor m an extra neg ation o n each side. P S f r a g r e p la c e m e n t s p p q q r r s s x y Figure 5: Gluing tw o vertex linking edges toge ther W e make no changes to the data store d for edges x and y , since these t wo edges a r e no w int er nal and their asso c iated data now repre sents a sna pshot fro m the last time that they were bo undary edges (as required by Section 3.1). 7 All o f these lo cal mo difica tions ca n be per formed in O (1) time. The asso ciated list opera - tions are deletion, splitting and splicing; this b e comes imp ortant whe n we mov e to sk ip lists in Section 3.3. It is impor tant to remember the sp ecia l cas e in whic h edges x and y ar e a djacent in the same bounda ry cyc le . Here the lo cal mo difica tions are slightly different (there ar e o nly t wo or po ssibly zero nea rby edges to up date ins tead of four), but these modifica tio ns remain O (1) time. Bac ktrac king: ungluing edg es As with gluing, ungluing a pair of vertex linking edges is a simple matter of lo cal mo difications. Here the backtracking context is imp ortant: it is essential that we unglue edg es in the r everse order to that in w hich they were glued. Suppo se we ar e ung luing edges x and y as depicted in Figure 5. The sna pshot data sto red with edg es x and y shows that they wer e adjacen t to edges p , q , r and s immediately before this gluing was made (and therefore immedia tely after the ungluing that we ar e now p erfor ming). This snapshot data therefore gives us acces s to edges p , q , r and s : now w e simply adjust p and q to link to x (instea d of r and s ), and likewise w e adjust r and s to link to y . No mo difications to edges x and y are re quired. Again we must adjust the direction-rela ted bo olea ns ca refully , and w e m ust cater for the case in which edg e s x a nd y w er e adjacent immediately befor e the gluing w a s made. As befo r e, all lo cal mo difications can b e p erformed in O (1 ) time. F or the skip list discussion in Section 3.3, the asso ciated list op era tions ar e splitting, splicing a nd insertion. T esting: verifying that links are punctured s pheres Each time we g lue t wo vertex linking edges tog ether we must ensure tha t every vertex link is a sphere with zero or mor e punctures (T es t 2). W e test this incr emental ly : we assume this is true b efor e we glue these edg es tog e ther , a nd we verify that our new gluing do e s not intro duce any unw anted genus to the v er tex links. Our incremental test is based on the fo llowing t wo observ ations: Lemma 4. L et S and S ′ b e distinct triangulate d spher es with pun ctur es, and let x and y b e b ou n dary e dges fr om S and S ′ r esp e ct ively. If we glue x and y to gether, the r esu lting s u rfac e is again a spher e with puncture s. Lemma 5. L et S b e a triangulate d spher e with punctu r es, and let x and y b e distinct b oundary e dges of S . If we glue x and y to gether in an orientation-pr eserving mann er, the r esult ing surfac e is a s pher e with punctu r es if and only if x and y b elong to the same b oun dary cycle of S . The pro ofs of Lemmata 4 and 5 ar e simple, and we do not give further details here. Fig- ure 6(a) illustrates the scenar io of Lemma 4 with t wo distinct punctured spheres, and Figur es 6(b) – 6(d) show different scenar ios from Lemma 5 in which we join t wo b oundary edges fr om the same punctured spher e. In particular, Figure 6(b) shows the case in which x and y b elong to differ e n t bo undary cycles; here we observe that the resulting surface is a t wice-punctur ed torus. Figures 6(c) and 6(d) show case s with x a nd y on the same b o unda ry cy c le; in 6(d), x and y are adjacent along the b oundary . Note that Lemmata 4 and 5 ho ld e ven with v ery short boundaries (for instance, one-edge bo undaries consisting of x o r y alone). 8 P S f r a g r e p la c e m e n t s x y (a) Two distinct spheres with punctures P S f r a g r e p la c e m e n t s x y (b) Same sphere, di fferen t b oundary cycles P S f r a g r e p la c e m e n t s x y (c) Same b oundary cycle, non-adjacen t edges P S f r a g r e p la c e m e n t s x y (d) Same boundary cycle, adjacen t edges Figure 6: Differen t w ays of gluing b o undary edges together It is now clear ho w to incrementally verify T est 2 w hen we glue together vertex linking edges x and y : 1. T est w he ther the vertex link ing triang les containing x a nd y be lo ng to the same connected vertex linking sur fa ce. If not, the tes t passes. Otherwise: 2. T est whether x and y b elong to the sa me doubly-linked list of b o undary edges (i.e., the same b oundary cycle ). If so , the test passes. If not, the test fails. Here we implicitly assume that all gluing s are or ient a tion-preser ving, as noted at the b egin- ning of Section 3.2. Step 1 c an b e perfo rmed in O (log n ) time us ing the mo dified unio n-find structure o utlined in [8]. The or ig inal purp ose of this structure was to enfor ce o r ientabilit y in vertex linking surfaces, and one of the op erations it provides is an O (log n ) test for whether tw o vertex linking triangles b elo ng to the same co nnected vertex link ing sur face. This mo dified union-find supp or ts backtrac k ing ; see [8] for further deta ils . Step 2 is more difficult: a typical implementation might in volve walking through the doubly- linked list containing x until we either find y or verify that y is not present, which takes O ( n ) time to co mplete. Union-find cannot help us, because of our rep eated splitting and splicing of bo undary cycle s . In the follo wing s ection we sho w ho w to reduce this O ( n ) running time to exp ected O (log n ) by extending o ur doubly-linked lists to b ecome skip lists . 9 It should b e noted that Step 2 can in fact b e carried o ut in O ( b ) time, where b is the n umber of bo undary edges o n all vertex linking s urfaces. Although b ∈ O ( n ) in genera l, for some face pairing graphs b can b e far s ma ller. F or instance, when the face pa ir ing g r aph is a double-ended chain [6 ], we ca n a rrange the recurs ive sear ch so that b ∈ O (1). See the full version o f this pap er for details. 3.3 Skip lists and time complexit y F ro m the discussio n in Section 3.2, we see that with our na ¨ ıv e do ubly-linked list implementation, the three key op e r ations of gluing edges, ungluing edges and verifying T es t 2 ha ve O (1), O (1) and O ( n ) running times resp ectively . The bottleneck is the O ( n ) test for whether t wo vertex linking edges b elong to the same doubly-linked lis t (i.e., the same b ounda ry cyc le). W e can improv e o ur situation by extending our doubly-linked list to a skip list [25]. Skip lists ar e essentially linked lists w ith additional layers of “express p ointers” that allow us to move quickly through the lis t instead of stepping forward one elemen t at a time. Figur e 7 shows a t y pic a l skip list structur e . Figure 7: The internal layout o f a skip list The lis t op eratio ns used in Se c tion 3.2 for gluing a nd ungluing edges are deletion, inser tion, splitting and splicing; all of these can b e perfor med on a skip list in exp ected O (log n ) time [24, 25]. Importa n tly , it a lso takes exp ected O (log n ) time to sea rch forward to the last element of a skip list. 4 W e can therefore tes t whether vertex linking edges x and y b elong to the same list by s e arching forward to the end of each list and testing whether the final elements a re the same. It follo ws that, with a skip list implementation, all three key opera tions o f gluing edges , ungluing edges and verifying T est 2 run in e xpe cted O (log n ) time. Therefore: Theorem 6. It is p ossible to implement T est 2 by p erforming exp e cte d O (log n ) op era tions at every s t age of the re cursive se ar ch. Note tha t we must include re verse links at the low est lay er of the skip list (effectively main- taining the origina l do ubly-linked list), since b oth forward a nd backw a rd links are r equired for the g luing and ungluing o pe rations (see Section 3 .2). F ull details of the s kip list implemen ta tio n can b e found in the full version of this pap er. 4 P erformance Here we meas ure the per formance of o ur new algo rithm exp erimentally . Sp ecifically , w e compare t wo enumeration algorithms: the old algorithm , which includes all of the optimisations descr ib ed in [8 ] (including the union-find framework for ensuring that vertex links remain orientable), and the new algorithm , which enhances the old a lgorithm with the new tests des c rib ed in Section 3. 5 4 Although our lists are cyclic, we can alwa ys define an arbitrary endpoint. 5 W e compare the new algorithm against [8] b ecause this allows us to isolate our new tec hniques, and because the source code and impl emen tation details f or alternative algorithms [ 16, 20] are not readily av ailable. 10 W e r un our p er formance tests b y enumerating cens uses of all 3 - manifold triangulations of size n ≤ 7. W e choose this type o f census be c ause a census of minimal tria ngulations requires significant ma n ua l po st-pro cessing [8], a nd b ecause a census of all triangula tions is significantly larger and therefore a strong er “stres s test”. W e restrict our tests to n ≤ 7 b ecause for larger n the old algo rithm b eco mes to o slow to run time trials on a sing le CPU. Census parameters T riangulations Old (h:m:s) New (m:s) Sp eed-up n = 5, orientable 4 807 0:59 0 :03 20 × n = 5, non - orien tab le 377 1:09 0:06 12 × n = 6, orientable 52 946 1:11:57 1:03 69 × n = 6, non - orien tab le 4 807 1:23:30 2:05 40 × n = 7, orientable 658 474 92:23:3 9 22:16 249 × n = 7, non - orien tab le 64 291 103:24: 51 48:27 128 × T a ble 1 : Running times for o ld and new a lgorithms T a ble 1 shows the results of our time tr ials, split into censuses of orientable a nd no n-orientable triangulations . F or n ≤ 4 b oth alg orithms run in 1 second or le s s. All trials were carried out o n a single 2.93 GHz In tel Xeon X5570 CPU. The results are extremely pleasing: for n = 7 we see a sp eed-up of 1 28 × in the non- orientable case and 249 × in the or ientable ca se (from almost four da y s of r unning time down to just 22 minutes). Moreover, the s p eed- up factors a ppe ar to grow expo nent ia lly with n . All o f this suggests that our new algor ithm can indeed make a co ncrete difference as to how large a census we can feasibly build. It is worth noting that sp eed-ups a re consistently better for the orientable case. This may b e bec ause the union-find framework introduced in [8] is most effective for non- orientable enumera- tion (as noted in Section 1), and so the orientable ca se has more ro o m for gain. Nev ertheless , it is pleasing to see that the new algorithm giv e s substantial improvemen ts for b oth the orientable and non-orientable cas e s . 5 P arallelisat ion As n increas es, the output size for a typical census grows exponentially in n , a nd sometimes sup e r-exp onentially—for instance, the growth ra te of a census of all 3-manifold triangulations is known to be exp(Θ( n log n )) [12]. It is therefore critica l that enumeration algorithms be parallelised if we ar e to make significant pr o gress in obtaining new census da ta. Like many com bina to rial searches, the en umeration of triangula tions is a n em bar rassing ly parallel pro blem: different branches of the sear ch tree ca n b e pro cessed indep endently , making the problem well-suited for clusters and server farms. Avoiding iso mo rphisms caus e s some minor complications, which we discuss in the full version of this pap er. The main obstacle is that, because of the v ario us pruning techniques (as describ ed in Sec- tions 2 and 3), it is v ery difficult to estimate in adv ance how long eac h branch of the search tree will take to pro cess. E xp erience shows tha t ther e c an b e order s-of-mag nitude differences in running time b etw een s ubs earches at the same depth in the tree. F or this reason, para llelisation must use a controller / slav e mo del in which a controller pro cess repe atedly hands small pieces of the se a rch space to the next av a ilable slave, a s oppo sed 11 to a simple subdivisio n in which ea ch pro cess handles a fixed p ortion o f the search space. This means that some inter-pro cess c ommun ic ation is re q uired. F or each subsear ch, the controller m ust send O ( n ) data to the slav e : this includes the face pairing gr aph, the partial triangulation, and the data associa ted with the v er tex linking edges and triang le s as describ ed in Sectio n 3 . The output for each subsearch can be sup er- exp onentially large, and s o it is preferable for slav es to write this data directly to disk (as opp osed to c o mmu nica ting it ba ck to the controller). Collating the output from different slav es is a simple task tha t can b e p erfor med a fter the enumeration ha s finished. The enumeration code in R e gina implemen ts such a mo del using MPI, a nd runs successfully on hund r eds of simultaneous CPUs with a r oughly pr op ortional sp eed-up in w a ll time. 6 Census Data The new a lg orithms in this pap er hav e b een implemented and run in parallel using high- per formance computing fac ilities to obtain new cens us data that excee ds the b est known limits in the literature. This includes (i) a census of a ll closed 3 -manifold triangula tions of size n ≤ 10, and (ii) a census of a ll minimal tr iangulations of closed P 2 -irreducible 3-manifolds o f size n ≤ 11 . 6.1 All closed 3-manif old triangulations The first repo rted census o f all closed 3 -manifold triangulations app ears in [11] for n ≤ 9, and has b een used to study algorithmic co mplexity a nd ra ndom triangula tions [11, 1 2]. Here w e extend this census to n ≤ 10 with a to tal o f ov er 2 billion tria ngulations: Theorem 7. Ther e ar e pr e cisely 2 196 546 921 close d 3-manifold t riangulations that c an b e c on- structe d fr om ≤ 10 tet r ahe dr a, as summarise d by T able 2. Size ( n ) Orientable Non-orien table T otal 1 4 — 4 2 16 1 17 3 76 5 81 4 532 45 577 5 4 807 377 5 184 6 52 946 4 807 57 753 7 658 474 64 291 722 765 8 8 802 955 984 554 9 787 509 9 123 603 770 15 499 262 139 103 032 10 1 792 348 876 254 521 123 2 046 869 999 T otal 1 925 472 456 271 074 465 2 196 546 921 T a ble 2: All clos ed 3 -manifold triangula tions The total CPU time r e quired to enumerate the 1 0-tetrahedro n census was ≃ 2 . 4 years, divided among st 192 distinct 2.93 GHz Intel Xeon X5570 CPUs. The pap er [11] makes tw o conjectures r egarding the worst-case and average n umber o f vertex normal surfa c e s for a closed 3-manifold tria ngulation of s ize n . Details and definitions can be found in [11]; in s ummary , thes e conjectures a re: 12 Conjecture 1. F or al l p ositive n 6 = 1 , 2 , 3 , 5 , a tight upp er b ound on the nu mb er of vertex normal surfac es in a close d 3-manifo ld triangulation of size n is: 17 k + k if n = 4 k ; 581 · 1 7 k − 2 + k + 1 if n = 4 k + 1 ; 69 · 17 k − 1 + k i f n = 4 k + 2 ; 141 · 1 7 k − 1 + k + 2 if n = 4 k + 3 , and so t his upp er b ound gr ows asymptotic al ly as Θ(1 7 n/ 4 ) . Conjecture 2. If σ n r epr esent s the aver age num b er of vertex normal surfac es amongst al l close d 3-manifold triangulations (up to isomorph ism), then σ n < σ n − 1 + σ n − 2 for al l n ≥ 3 , and so σ n ∈ O ([ 1+ √ 5 2 ] n ) . These conjectur e s w er e orig inally ba sed on the census data for n ≤ 9 . With o ur new census we can now verify these conjectures at the 10 -tetrahedro n level: Theorem 8. Conje ctur es 1 and 2 ar e tru e for al l n ≤ 10 . This c ensus contains ov er 63 GB of da ta, and so the data files ha ve not b een po sted online. Readers who wish to w o rk with this data are welcome to contact the author for a copy . 6.2 Closed P 2 -irreducible 3-manifolds A 3-ma nifold is P 2 -irr educible if every sphere b ounds a ball and there are no em b edded tw o-sided pro jective pla nes. Censuses of closed P 2 -irreducible 3-ma nifolds and their minimal triangulations hav e a long history [2, 3, 8, 9, 15, 16, 22, 2 3, 19]. The la rgest repor ted census of a ll minima l triangulations of these manifolds reaches n ≤ 10 [8]. If we e numerate manifolds but not their triangulations , the census es reaches n ≤ 12 in the orientable case [23] but r emains at n ≤ 10 in the non-or ientable case. Here we extend this census of minimal triangulations of closed P 2 -irreducible 3 -manifolds to n ≤ 1 1. As a result, w e also extend the census of underly ing manifolds to n ≤ 11 in the non-orientable case, and in the orientable case we c onfirm tha t the num b er of manifolds ma tc hes Matveev’s census [23]. Theorem 9. Ther e ar e pr e cisely 13 7 65 close d P 2 -irr educible 3-manifolds t hat c an b e c onstruct e d fr om ≤ 11 tetr ahe dr a. These have a c ombine d total of 55 488 minimal triangulations, as sum- marise d by T able 3. The pa pe r [9] raises conjectures for certain class es of non-orientable 3-manifolds reg arding the co mb ina torial structure of every minimal tria ngulation. Again we refer to the source [9] for details and definitions; in summary: Conjecture 3. Every minimal triangulation of a n on-flat non-orientable toru s bu nd le over the cir cle is a lay ered to rus bundle . Conjecture 4. Every minimal triangulatio n of a non-flat non-orientable Seifert fibr e d sp ac e over R P 2 or ¯ D with two exc eptional fibr es is either a plugged thin I -bundle or a plugged thick I -bundle . 13 Size Minimal triangulations Distinct 3-manifolds ( n ) Orientable Non-orien t. Orientable Non-orien t. 1 4 — 3 — 2 9 — 6 — 3 7 — 7 — 4 15 — 14 — 5 40 — 31 — 6 115 24 74 5 7 309 17 175 3 8 945 59 436 10 9 3 031 307 1 154 33 10 10 244 983 3 078 85 11 36 097 3 282 8 421 230 T otal 50 816 4 672 13 399 366 T a ble 3 : All minima l triangulations of closed P 2 -irreducible 3- manifolds Lay ered torus bundles and plugged thin and thic k I -bundles are families of triangula tions with well-defined combinatorial structure s . The origina l conjectures were ba s ed o n c ensus data for n ≤ 8 , and in [8] they ar e shown to hold for all n ≤ 10 . With our new census data we ar e now able to v alidate these co njectures at the 11-tetrahedro n level: Theorem 10. Conje ctur es 3 and 4 ar e t rue for all minimal triangulations of size n ≤ 11 . Data files for this census, including the 3-manifolds and a ll of their minimal triangulations , can b e downloaded from the R e gina website [5]. Ac kno wledgmen ts Computational resource s used in this work were provided by the Queensland Cyb er Infrastr uc- ture F o unda tion and the Victor ian Partnership for Adv anced Computing. References [1] Ian Agol, Joel Hass, a n d William Th u rston, 3-manifold knot genus is NP-c omplete , STOC ’02: Proceedings of t he Thiry-F ourth Annual ACM S ymp osium on Theory of Computing, ACM Press, 2002, pp. 761–766. [2] Gennaro A mendola and Bru n o Martelli, Non-orientable 3-manif olds of smal l c omplexity , T op ology Appl. 133 (2003), n o. 2, 157–178. [3] , Non-orient able 3-manifolds of c omplexity up to 7 , T op ology Appl. 150 (2005), no. 1-3, 179–195 . [4] Ryan Budney , Emb e ddi ngs of 3-manifol ds in S 4 fr om the p oint of view of the 11-tet r ahe dr on c ensus , Preprint, , O ctob er 2008. [5] Benjamin A. Burton, R e gina: Normal surfac e and 3-manifold top olo gy softwar e , http://regi na. sourceforg e.net/ , 1999–2010. [6] , F ac e p airing gr aphs and 3-manifold enumer ation , J. Knot Theory R amifications 13 (2004), no. 8, 1057–1101. 14 [7] , Intr o ducing Re gina, the 3-manif old top olo gy softwar e , Exp erimen t. Math. 13 (2004), no. 3, 267–272 . [8] , Enumer ation of non-orientable 3-manifolds using f ac e-p airing gr aphs and union-find , Dis- crete Comput. Geom. 38 (2007), n o. 3, 527–571. [9] , Observations f r om the 8-tetr ahe dr on nonorientable c ensus , Exp eriment. Math. 16 ( 2007), no. 2, 129–144. [10] , Converting b etwe en quadrilater al and standar d solution sets in normal surfac e the ory , Algebr. Geom. T op ol. 9 (2009), no. 4, 2121–217 4. [11] , The c omplexity of the normal surfac e solution sp ac e , SCG ’10: Proceedings of the Tw enty- Sixth Annual S ymp osium on Computational Geometry , ACM, 2010, pp. 201–209. [12] , The Pachner gr aph and the simplific ation of 3-spher e triangulations , T o app ear in SCG ’11: Proceedings of the Tw enty-Sev enth An nual Symp osium on Computational Geometry , arXiv: 1011.4169 , Nov ember 2010. [13] Nathan M. Dunfield and William P . Th urston, Finite c overs of r andom 3-manifolds , Inven t. Math. 166 (2006), no. 3, 457–521. [14] Martin V. Hildebrand and J eff rey R . W eeks, A c omputer gene r ate d c ensus of cusp e d hyp erb olic 3-manifolds , Computers and Ma th ematics (Cam bridge, MA, 1989), Springer, New Y ork , 1989, pp. 53–59. [15] Bruno Martelli, Complexity of 3-manif olds , Spaces of Kleinian Groups, London Math. S oc. Lecture Note Ser., vol. 329, Cambridge U niv. Press, Cambridge, 2006, pp. 91–120. [16] Bruno Ma rtelli and Carlo P etronio, Thr e e-manifolds having c omplexity at most 9 , Exp eriment. Math. 10 (2001), n o. 2, 207–236. [17] , A new de c omp osition the or em for 3-manifolds , Illinois J. Math. 46 (2002), 755–780. [18] , Complexity of ge ometric thr e e-manifolds , Geom. Dedicata 108 (2004), n o. 1, 15–69. [19] S. V. Matveev and A. T. F omenko, Constant ener gy surfac es of Hamiltonian systems, enumer ation of thr e e-dimensional manifolds in incr e asing or der of c omplexity, and c omputation of volumes of close d hyp erb olic manifolds , Russian Math. Surveys 43 (1988), no. 1, 3–24. [20] Sergei Matveev, Algorith m ic top olo gy and classific ation of 3-mani f olds , Algorithms and Computa- tion in Mathematics, no. 9, Sp ringer, Berlin, 2003. [21] Sergei V. Matveev, T ables of 3-manifolds up to c omplexity 6 , Max-Planc k -Institut f¨ ur Mathematik Preprint Series (1998), no. 67, av ailable from ht tp://www.mpim-bonn .mpg.de/html/preprints/ preprints. html . [22] , R e c o gnition and tabulation of thr e e-dimensional manifolds , Dokl. Ak ad. N auk 400 (2005), no. 1, 26–28. [23] , T abulation of thr e e-dimensional manifolds , Russian Math. Su rveys 60 (2005), no. 4, 673– 698. [24] William Pugh, A skip l ist c o okb o ok , R ep ort UMIACS-TR-89-72.1, Univ. of Maryland Institute for Adv anced Computer S t udies, Colleg e P ark, MD, USA , 1990. [25] , Skip lists: A pr ob abili stic alternative to b al anc e d tr e es , Commun. ACM 33 (1990), no. 6, 668–676 . Benjamin A. Burton School of Mathematics and Physics, The Universit y of Qu een sland Brisbane QLD 4072, Australia (bab@maths.uq.edu.au) 15 App endix In the int r o duction we claim there are at least 6 . 4 4 × 10 12 connected c o mbinatorial triangulations of s ize n = 9, up to isomor phism. Here we give the arguments to supp o rt this claim. W e beg in by placing a low er b ound on the n umber of lab el le d connected combinatorial triangulations . T o ensure that each tria ngulation is connected, we insist that the first face of tetrahedron k is glued to some face chosen from tetrahedra 1 , . . . , k − 1, for all k > 1. Of cours e there are many lab elled connected tria ngulations that do not sa tisfy this constr a int, but since we are computing a lower bo und this do es no t matter. W e initially cho ose gluings for the first face of ea ch tetrahedr on 2 , 3 , . . . , n in o rder. F or the first face of tetr a hedron k there are 2 k choices for a par tner face—these a re the 4( k − 1) face s o f tetrahedra 1 , . . . , k − 1 minus the 2( k − 2) faces already glued—as well as six choices of rotation or reflection. T his gives a to tal of 4 × 6 × . . . × (2 n − 2 ) × 2 n × 6 n − 1 po ssibilities. F rom her e there are (2 n + 1) × (2 n − 1) × . . . × 3 × 1 × 6 n +1 wa ys of gluing tog ether the rema ining 2 n + 2 faces in pair s, giving a low er bo und of a t le ast (2 n + 1)! × 6 2 n / 2 lab elled c onnected combinatorial triangulations of size n . W e finish b y factoring out isomorphisms. Each isomorphism class has size at most n ! × 4! n (all p o ssible r elab ellings of tetrahedr a and their vertices), and so the tota l num b er of connected combinatorial triang ulations o f size n up to isomorphism is at least (2 n + 1)! × 6 2 n 2 × n ! × 4! n . F or n = 9 this ev alua tes to approximately 6 . 4435 × 1 0 12 . 16
Original Paper
Loading high-quality paper...
Comments & Academic Discussion
Loading comments...
Leave a Comment