767
Views
2
CrossRef citations to date
0
Altmetric
Original Articles

Computation of the Taut, the Veering and the Teichmüller Polynomials

Abstract

Landry, Minsky and Taylor (LMT) introduced two polynomial invariants of veering triangulations—the taut polynomial and the veering polynomial. Here, we consider a pair of taut polynomials associated to one veering triangulation, the upper and the lower one, and analogously the upper and lower veering polynomials. We prove that the upper and lower taut polynomials are equal. In contrast, the upper and lower veering polynomials of the same veering triangulation may differ by more than a unit. We give algorithms to compute all these invariants. LMT related the Teichmüller polynomial of a fibered face of the Thurston norm ball with the taut polynomial of the associated layered veering triangulation. We use this result to give an algorithm to compute the Teichmüller polynomial of any fibered face of the Thurston norm ball.

1 Introduction

Transverse taut veering triangulations were introduced by Ian Agol as a way to canonically triangulate certain pseudo-Anosov mapping tori [Citation1]. More generally, they are tightly connected to pseudo-Anosov flows without perfect fits [Citation19]. Here we study the taut polynomial, the veering polynomial and the flow graph of a (transverse taut) veering triangulation. All of them were introduced by Landry et al. [Citation12]. We explicitly connect these invariants with the upper track of a veering triangulation; see Section 3.3. Since there is a “twin” train track, called the lower track, it is natural to distinguish the upper and lower taut polynomials, the upper and lower veering polynomials, and the upper and lower flow graphs. In the case of each invariant, we answer the question whether its lower and upper variants are the same up to some equivalence relation.

Proposition 5.2.

Let V be a finite veering triangulation. The lower taut polynomial of V is (up to a unit) equal to the upper taut polynomial of V.

Since the taut polynomial is generally well-defined only up to a unit, we conclude that there is only one taut polynomial associated to a veering triangulation. A similar statement does not hold for the flow graphs and the veering polynomials. We give examples which show the following.

Proposition 6.1.

There exists a veering triangulation V whose upper and lower flow graphs are not isomorphic.

Proposition 6.5.

There exists a veering triangulation V whose upper and lower veering polynomials are not equal up to a unit.

The majority of the results of this paper are computational. We simplify the original presentation for the (upper) taut module. As a result, the computation of the taut polynomial requires calculating only linearly many minors of a matrix, instead of exponentially many (Proposition 5.6). Using this we give algorithm TautPolynomial and prove that it correctly computes the taut polynomial of a veering triangulation in Proposition 5.8. Furthermore, we give algorithm UpperVeeringPolynomial and prove that it correctly computes the upper veering polynomial in Proposition 6.4. The lower veering polynomial of V can be computed as the upper veering polynomial of the veering triangulation obtained from V by reversing the coorientation on its 2-dimensional faces; see Remark 3.9.

McMullen introduced a polynomial invariant of fibered faces of the Thurston norm ball, called the Teichmüller polynomial [Citation14, Section 3]. Its main feature is that it packages the stretch factors of monodromies of all fibrations lying over the fibered face [Citation14, Theorem 5.1]. Landry, Minsky and Taylor proved that the taut polynomial of a layered veering triangulation V is equal to the Teichmüller polynomial of the fully-punctured fibered face F determined by V [Citation12, Theorem 7.1]. Thus TautPolynomial can in particular be used to compute the Teichmüller polynomials of fully-punctured fibered faces. As observed in [Citation12, Subsection 7.2] this can be generalized to all fibered faces via puncturing. We give two additional algorithms, BoundaryCycles and Specialization, that together with TautPolynomial make up the algorithm TeichmüllerPolynomial. We then prove that this algorithm correctly computes the Teichmüller polynomial of any fibered face of the Thurston norm ball.

Proposition 8.6.

Let ψ:SS be a pseudo-Anosov homeomorphism. Denote by N its mapping torus. Let F be the fibered face of the Thurston norm ball in H2(N,N;R) such that [S]R+·F. Then the output of TeichmüllerPolynomial (ψ) is equal to the Teichmüller polynomial of F.

Different algorithms to compute the Teichmüller polynomial were previously known. First of all, there is McMullen’s original algorithm [Citation14, Section 3]. It relies on fixing a particular fibration lying in the fibered cone R+·F and analysing a lift of the stable train track of the monodromy to the maximal free abelian cover of the 3-manifold. This algorithm is general, but hard to implement. There are simpler algorithms which work in some special cases. In [Citation13] Lanneau and Valdez gave an algorithm to compute the Teichmüller polynomial of punctured disk bundles. Baik, Wu, Kim and Jo gave an algorithm to compute the Teichmüller polynomial of odd-block surface bundles [Citation2]. In [Citation4] Billet and Lechti covered the case of alternating-sign Coxeter links. The algorithm TeichmüllerPolynomial given in this article is general and in principle can be applied to any hyperbolic, orientable 3-manifold fibered over the circle.

All algorithms presented in this article have been implemented by the author, Saul Schleimer and Henry Segerman. The source codes are available at [Citation9]. This implementation is based on their Veering Census and accompanying tools for computing with veering triangulations. Since there are 51,766 layered veering triangulations in the Veering Census, the implementation of the algorithm TautPolynomial alone expands the existing collection of computed Teichmüller polynomials from a couple of examples [Citation2, Citation4, Citation13, Citation14] to almost 52 thousand of examples. Further generalization to fiber-parallel Dehn fillings of layered veering triangulations, given in the algorithm TeichmüllerPolynomial, yields even more easily computable examples.

2 Veering triangulations

In this section we define veering triangulations and prove lemmas about the combinatorics of veering triangulations which are used later in the paper.

2.1 Ideal triangulations of 3-manifolds

An ideal triangulation of an oriented 3-manifold M with torus cusps is a decomposition of M into ideal tetrahedra. We denote an ideal triangulation by T=(T,F,E), where T,F,E denote the set of tetrahedra, triangles (2-dimensional faces) and edges, respectively. Throughout the paper we assume that ideal simplices of T are ordered and equipped with an orientation.

Every triangle of a triangulation has two embeddings into two, not necessarily distinct, tetrahedra. The number of (embeddings of) triangles attached to an edge is called the degree of this edge. An edge of degree d has d embeddings into triangles and d embeddings into tetrahedra.

By edges of a triangle/tetrahedron or triangles of a tetrahedron we mean embeddings of these ideal simplices into the boundary of a higher dimensional ideal simplex. Similarly, by triangles/tetrahedra attached to an edge we mean triangles/tetrahedra in which the edge is embedded, together with this embedding. When we claim that two lower dimensional simplices of a higher dimensional simplex are different we mean that at least their embeddings are different.

2.1.1 Cusped and truncated models

If we truncate the corners of ideal tetrahedra of T we obtain a 3-manifold with toroidal boundary components. The interior of this manifold is homeomorphic to M. For notational simplicity, we also denote it by M. This is a slight abuse of notation, but it should not cause much confusion. We freely alternate between the cusped and the truncated models of M. The main advantage of the latter is that we can consider curves in the boundary M.

2.2 Transverse taut triangulations

Let t be an ideal tetrahedron. Assume that a coorientation is assigned to each of its faces. We say that t is transverse taut if on two of its faces the coorientation points into t and on the other two it points out of t [Citation10, Definition 1.2]. We call the pair of faces whose coorientations point out of t the top faces of t and the pair of faces whose coorientations point into t the bottom faces of t. We also say that t is immediately below its top faces and immediately above its bottom faces.

We encode a transverse taut structure on a tetrahedron by drawing it as a quadrilateral with two diagonals — one on top of the other; see . Then the convention is that the coorientations on all faces point towards the reader. In other words, we look at the presented transverse taut tetrahedron from above.

Fig. 1 A veering tetrahedron. The underlying taut structure assigns the zero angle to the equatorial edges of the tetrahedron and the π angle to its diagonal edges.

Fig. 1 A veering tetrahedron. The underlying taut structure assigns the zero angle to the equatorial edges of the tetrahedron and the π angle to its diagonal edges.

The top diagonal is the common edge of the two top faces of t and the bottom diagonal is the common edge of the two bottom faces of t. The remaining four edges of a transverse taut tetrahedron are called its equatorial edges. Presenting a transverse taut tetrahedron t as in endows it with an abstract assignment of angles from {0,π} to its edges; the angle π is assigned to the diagonal edges of t and the angle 0 is assigned to all its equatorial edges. Such an assignment of angles is called a taut structure on t [Citation10, Definition 1.1].

A triangulation T=(T,F,E) is transverse taut if

  • every ideal triangle fF is assigned a coorientation so that every ideal tetrahedron tT is transverse taut,

  • for every edge eE the sum of angles of the underlying taut structure of T, over all embeddings of e into tetrahedra, equals 2π [Citation10, Definition 1.2].

This implies that if e is an edge of a transverse taut triangulation then the triangles attached to e are grouped into two sides, separated by a pair of π angles at e; see . Using a fixed orientation on e we can distinguish the left side of e from its right side. The transverse taut structure also allows us to identify a pair of the lowermost and a pair of the uppermost (relative to the coorientation) triangles attached to e. In , triangles f1,f1 are the lowermost and triangles f3,f2 are the uppermost.

Fig. 2 Edge with the branch equation f1+f2+f3=f1+f2.

Fig. 2 Edge with the branch equation f1+f2+f3=f′1+f′2.

We say that a tetrahedron tT is immediately below eE if e is the top diagonal of t, and immediately above e, if e is the bottom diagonal of t. The remaining degree(e)2 tetrahedra attached to e are called its side tetrahedra. Similarly as with triangles, we distinguish a pair of the lowermost and a pair of the uppermost side tetrahedra of e.

We denote a triangulation with a transverse taut structure by (T,α). Note that if M has a transverse taut triangulation (T,α) then it also has a transverse taut triangulation obtained from (T,α) by reversing coorientations on all faces of T. We denote this triangulation by (T,α). These two triangulations have the same underlying taut structure, with tops and bottoms of tetrahedra swapped.

Remark.

Triangulations as described above were introduced by Lackenby [Citation11], where they are called taut triangulations.

2.3 Veering triangulations

A (transverse taut) veering tetrahedron is an oriented transverse taut tetrahedron whose edges are colored either red or blue, and the pattern of coloring on the equatorial edges is precisely as in . There is no restriction on how the diagonal edges are colored; this is indicated by coloring them black.

More formally, we use [Citation19, Definition 5.1] to define a veering tetrahedron as follows.

Definition 2.1

(Veering tetrahedron). Let t be a transverse taut tetrahedron, with all edges colored either red or blue. Then t is veering if the following two conditions hold.

  • Let e0,e1,e2 be edges of a top face of t, ordered counter-clockwise as viewed from above and so that e0 is the top diagonal of t. Then e1 is red and e2 is blue.

  • Let e0,e1,e2 be edges of a bottom face of t, ordered counter-clockwise as viewed from above and so that e0 is the bottom diagonal of t. Then e1 is blue and e2 is red.

A transverse taut triangulation is veering if a color (red/blue) is assigned to each edge of the triangulation so that every tetrahedron is veering [Citation10, Definition 1.3]. By [Citation10, Proposition 1.4], this definition is equivalent to Agol’s original definition of a veering triangulation [Citation1, Definition 4.1].

We denote a veering triangulation by V=(T,α,ν), where ν corresponds to the coloring of edges. From a veering triangulation (T,α,ν) we can construct a veering triangulation (T,α,ν), where the coorientations on faces are reversed, (T,α,ν), where the colors on edges are interchanged and (T,α,ν), where both coorientations of faces and colors on edges are interchanged.

2.3.1 Colors of triangles of a veering triangulation

Note that any triangle of a veering triangulation has two edges of the same color and one edge of the other color; see . This motivates the following definition.

Definition 2.2.

We say that a triangle of a veering triangulation is red (respectively blue) if two of its edges are red (respectively blue).

In the following lemma and the subsequent corollary, we show how colors of triangles attached to an edge e depend on the color of e. We use this in the proof of Proposition 6.4, where we prove that the algorithm UpperVeeringPolynomial correctly computes the upper veering polynomial.

Lemma 2.3.

Let V be a veering triangulation. Then for any triangular face f the bottom diagonal of a tetrahedron immediately above f and the top diagonal of the tetrahedron immediately below f are distinct edges of f which have the same color.

Proof.

Let t be the tetrahedron immediately above f and let d be its bottom diagonal. Let t be the tetrahedron immediately below f and let d be its top diagonal. If d and d are not distinct edges in the boundary of f, then the remaining edges of f cannot be colored so that the conditions from Definition 2.1 are satisfied in both t and t. Hence, d,d are distinct edges in the boundary of f. Since d,d are diagonal edges, there is another edge of f which has the same color as d and an edge of d which has the same color as t. Thus, d,d cannot be of a different color. □

Note that Lemma 2.3 in particular implies that every edge of a veering triangulation is of degree at least 4 and has at least two triangles on each of its sides.

Corollary 2.4.

Let V be a veering triangulation. Among all triangles attached to an edge e, there are exactly four which have the same color as e. They are the two uppermost and the two lowermost triangles attached to e.

Proof.

By Lemma 2.3, the lowermost and uppermost triangles attached to e are of the same color as e. Conversely, suppose f is neither a lowermost nor an uppermost triangle around e. Then e is an equatorial edge of both the tetrahedron t immediately above f and the tetrahedron t immediately below f. Again by Lemma 2.3, the bottom diagonal d of t and the top diagonal d of t are of the same color. The conditions from Definition 2.1 imply that d,d are distinct edges of f and thus f is of a different color than e. □

2.3.2 The Veering Census

Data on transverse taut veering structures on ideal triangulations of orientable 3-manifolds consisting of up to 16 tetrahedra is available in the Veering Census [Citation9]. A veering triangulation in the census is described by a string of the form(2.5) [isoSig]_[tautanglestructure].(2.5)

The first part of this string is the isomorphism signature of the triangulation. It identifies a triangulation uniquely up to combinatorial isomorphism. Isomorphism signatures have been introduced in [Citation5, Section 3]. The second part of the string records the transverse taut structure, up to a sign.

The above description suggests that an entry from the Veering Census determines ([T],±α,±ν), where [T] denotes the isomorphism class of T. However, in the Veering Census certain (non-canonical) choices have been made. In fact, each entry corresponds to an ideal triangulation with numbered simplices, a fixed coorientation on its triangles, and a fixed orientation on its ideal simplices.

We use a string of the form (2.5) whenever we refer to a concrete example of a veering triangulation. Implementations of all algorithms given in this article take (2.5) as an input.

3 Structures associated to a transverse taut triangulation

In this section we recall the definitions of the horizontal branched surface [Citation19, Subsection 2.12], the boundary track [Citation8, Section 2], and the upper and lower tracks associated to a transverse taut triangulation [Citation19, Definition 4.7]. The upper and lower tracks are closely related to the taut and veering polynomials; see Sections 5 and 6. The boundary track is used in Section 8.2 to encode boundary components of a surface carried by a transverse taut triangulation.

3.1 Horizontal branched surface

Let (T,α) be a transverse taut triangulation of M. Since T is endowed with a compatible taut structure, we can view the 2-skeleton T(2) of T as a 2-dimensional complex with a well-defined tangent space everywhere, including along its 1-skeleton. Thus T(2) determines a branched surface (without vertices) in M [Citation11, Introduction]. We call it the horizontal branched surface and denote it by B [Citation19, Subsection 2.12]. The branch locus of B is equal to the 1-skeleton T(1). In particular, we can see B as ideally triangulated by the triangular faces of T. We denote this triangulation of B by (F, E). For a more general definition of a branched surface, see Oertel [Citation17, p. 532].

3.1.1 Branch equations

Let eE be an oriented edge of degree d of a transverse taut triangulation T. Let f1,f2,,fk be triangles attached to e on the left side, ordered from the bottom to the top. Let f1,f2,,fdk be triangles attached to e on the right side, also ordered from the bottom to the top. Then e determines the following relation between the triangles attached to it:(3.1) f1+f2++fk=f1+f2++fdk.(3.1)

We call this equation the branch equation of e. An example is given in . A transverse taut triangulation with n tetrahedra determines a system of n branch equations. In Section 4.1, we consider a matrix(3.2) B:ZEZF,(3.2) which assigns to an edge e its branch equation. Matrix B is called the branch equations matrix for (T,α). For eE as in (3.1) we setB(e)=f1+f2++fk(f1+f2++fdk).

3.1.2 Surfaces carried by a transverse taut triangulation

Let (T,α) be a transverse taut triangulation. Let f1,,f2n denote the triangular faces of T. We say that a surface S properly embedded in M is carried by (T,α) if there exists a nonzero, nonnegative, integral solution w=(w1,,w2n)Z02n to the system of branch equations of (T,α) such that S can be realized up to isotopy by the relative 2-chainSw=i=12nwifi.

In other words, S is carried by the horizontal branched surface of (T,α). More about the relationship between surfaces carried by a branched surface and weight systems on its sectors can be found in [Citation20, Section II].

If there exists a strictly positive integral solution w to the system of branch equations of (T,α), then we say that (T,α) is layered. In this case Sw is (a multiple of) a fiber of a fibration of M over the circle [Citation12, Theorem 5.15].

3.2 Boundary track

An object which is strictly related to the horizontal branched surface is the boundary track. To define it, it is necessary to view the manifold M with a transverse taut triangulation (T,α) in the truncated model. More information on the boundary track can be found in [Citation8, Section 2].

Definition 3.3.

Let (T,α) be a (truncated) transverse taut triangulation of a (compact) 3-manifold M. Denote by B the horizontal branched surface for (T,α). The boundary track β of (T,α) is the intersection BM.

In , we present a local picture of a boundary track around one of its switches. A global picture of the boundary track of the veering triangulation cPcbbbiht_12 of the figure eight knot complement is presented in .

Fig. 3 The boundary track around one of its switches. This switch corresponds to an endpoint of an edge of degree 7.

Fig. 3 The boundary track around one of its switches. This switch corresponds to an endpoint of an edge of degree 7.

Each edge of T has two endpoints. Therefore for every eE the boundary track β has two switches of the same degree that can be labelled with e. Each triangle fF has three arcs around its corners; see . These corner arcs are in a bijective correspondence with the branches of β. Therefore, for every fF, the track β has three branches that we label with f. If M has b1 boundary components T1,,Tb, then β is a disjoint union of train tracks β1,,βb in boundary tori T1,,Tb, respectively.

Fig. 4 Coorientation on a triangle of T determines orientation on the branches of β by the right-hand rule. Coorientation on the branches of β (not indicated in the picture) agrees with the coorientation on the triangle in which they are embedded.

Fig. 4 Coorientation on a triangle of T determines orientation on the branches of β by the right-hand rule. Coorientation on the branches of β (not indicated in the picture) agrees with the coorientation on the triangle in which they are embedded.

The boundary track β of (T,α) is transversely oriented by α. We orient the branches of β using the right hand rule and the coorientation on f; see . Therefore every switch has a collection of incoming branches and a collection of outgoing branches. Moreover, branches within these collections can be ordered from bottom to top. In particular, for every branch ϵ of β we can consider

  • branches outgoing from the initial switch of ϵ above ϵ,

  • branches incoming to the terminal switch of ϵ above ϵ.

We use these observations in Section 8.2 where we give algorithm BoundaryCycles.

3.3 Dual train tracks

In the previous subsection, we considered the boundary track associated to a transverse taut triangulation (T,α). In this subsection, we consider an entirely different kind of train tracks associated to (T,α), called dual train tracks. They are embedded in the horizontal branched surface B and are dual to its triangulation (F, E). A good reference for train tracks in surfaces is [Citation18]. We need to modify the standard definition of a train track so that it is applicable to our setting.

We construct train tracks in B dual to the triangulation (F, E) by gluing together “ordinary” train tracks in individual triangles of that triangulation. We restrict the class of train tracks that we allow in those triangles. The train tracks that we allow are called triangular.

Definition 3.4.

Let f be an ideal triangle. By a triangular train track in f we mean a graph τff with four vertices and three edges, such that

  • one vertex v is in the interior of f and the remaining three vertices are at the midpoints of the three edges in the boundary of f, one for each edge,

  • for each vertex v different than v there is an edge joining v and v,

  • all edges are C1-embedded,

  • there is a well-defined tangent line to τf at v.

See . We call the vertex v in the interior of f a switch of τf. The edges of τf are called half-branches. Each half-branch has one switch endpoint and one edge endpoint.

Fig. 5 A triangular train track.

Fig. 5 A triangular train track.

A tangent line to τf at a switch v distinguishes two sides of v. Two half-branches are on different sides of v if and only if the path contained in τf which joins their edge endpoints is smooth. A switch v has one half-branch on one side and two on the other. We call the half-branch which is the unique half-branch on one side of v the large half-branch of τf. The remaining two half-branches are called small half-branches of τf.

Definition 3.5.

A dual train track in (B,F) is a finite graph τB whose restriction to any ideal triangle f of the ideal triangulation of B by (F, E) is a triangular train track. We denote the restriction of τ to f by τf. Every switch/half-branch of τ is a switch/half-branch of τf for some f F, respectively.

3.3.1 The upper and lower tracks of a transverse taut triangulation

A transverse taut structure on a triangulation endows its horizontal branched surface B with a pair of dual train tracks which we call, following [Citation19, Definition 4.7], the upper and lower tracks of B.

Definition 3.6.

Let (T,α) be a transverse taut triangulation. Let B be the horizontal branched surface of (T,α) equipped with the ideal triangulation (F, E) determined by T. The upper track τU of T is the dual train track in B such that for every fF the large-half branch of τfU is dual to the bottom diagonal of the tetrahedron of T immediately above f. The lower track τL of T is the dual train track in B such that for every fF the large-half branch of τfL is dual to the top diagonal of the tetrahedron of T immediately below f.

We introduce the following names for the edges of fF which are dual to large half-branches of τfU or τfL.

Definition 3.7.

Let (T,α) be a transverse taut triangulation. We say that an edge in the boundary of fF is the upper large (respectively the lower large) edge of f if it contains the edge endpoint of the large half-branch of τfU (respectively τfL).

To define the upper and lower tracks, we do not need a veering structure on the triangulation. However, in the case of veering triangulations we can figure out the lower and upper tracks restricted to the faces of a given tetrahedron t without looking at the tetrahedra adjacent to t. Instead, the tracks are encoded by the colors of the edges of t; see . A more precise statement appears in the following lemma, which can be deduced from Lemma 3.2 of Landry et al. [Citation12]. We use it in the proof of Lemma 5.4.

Fig. 6 Squares in the top row represent top faces of a tetrahedron and squares in the bottom row represent bottom faces of a tetrahedron. (a) The lower track in a veering tetrahedron. In the bottom faces there are two options, depending on the color of the bottom diagonal. (b) The upper track in a veering tetrahedron. In the top faces there are two options, depending on the color of the top diagonal.

Fig. 6 Squares in the top row represent top faces of a tetrahedron and squares in the bottom row represent bottom faces of a tetrahedron. (a) The lower track in a veering tetrahedron. In the bottom faces there are two options, depending on the color of the bottom diagonal. (b) The upper track in a veering tetrahedron. In the top faces there are two options, depending on the color of the top diagonal.

Lemma 3.8.

Let V be a veering triangulation. Let t be one of its tetrahedra. The upper large edges of the top faces of t are the equatorial edges of t which are of the same color as the top diagonal of t. The lower large edges of the bottom faces of t are the equatorial edges of t which are of the same color as the bottom diagonal of t. □

The pictures of the lower and upper tracks in a veering tetrahedron are presented in and , respectively.

Remark 3.9.

The operation νν does not affect the lower and upper tracks as their definition does not depend on the 2-coloring on the veering triangulation. The operation αα interchanges the lower and upper track.

Remark 3.10.

Landry, Minsky and Taylor work with the stable branched surface associated to V [Citation12, Section 4.2]. The upper track of V is the intersection of this branched surface with the horizontal branched surface of V. Similarly, the lower track of V is the intersection of the unstable branched surface of V [Citation12, Section 5.2] with the horizontal branched surface of V.

4 Free abelian covers of transverse taut triangulations

The aim of this paper is to give algorithms to compute the taut, the veering and the Teichmüller polynomials. All of them are derived from certain modules associated to the maximal free abelian cover Mfab of a 3-manifold M. This covering space corresponds to the kernel of the homomorphismπ1(M)H1(M;Z)/torsion.

The deck group of the covering MfabM is isomorphic toH=H1(M;Z)/torsion.

We will be more general and consider a free abelian quotient H of H1(M;Z). This generalization is important in Section 8, where the group H will arise as the maximal free abelian quotient of the homology group H1(N;Z) of a Dehn filling N of M. Associated to H there is an intermediate free abelian cover of M MfabMMwith the deck group isomorphic to H.

Let r denote the rank of H. The integral group ring Z[H] on H is isomorphic to the ring Z[u1±1,,ur±1] of Laurent polynomials. If a basis (b1,,br) of H is fixed then we choose the isomorphism to be biui. Then an element v=i=1rvibiH,viZ, can be encoded by the Laurent monomial uv=u1v1urvr.

Remark.

Throughout the paper we use the multiplicative convention for H.

Suppose M is equipped with a transverse taut triangulation (T,α). A free abelian cover M admits a triangulation T induced by T via the covering map MM. It is also transverse taut, as coorientations on triangular faces can be lifted from T. If T is additionally veering then so is T. In the next subsection we explain how to encode the infinite triangulation T using only finite data.

4.1 Encoding the triangulation of a free abelian cover

Let (T,α) be a finite transverse taut triangulation of M with the set T of tetrahedra, the set F of faces and the set E of edges. Let H be a free abelian quotient of H1(M;Z). In this subsection first we explain how to use the dual graph of T to fix a convenient fundamental domain for the action of H on T. Then we describe our conventions for labelling ideal simplices of T with H-coefficients. Finally, we define H-pairings which together with the fundamental domain and our labelling convention completely encode T.

4.1.1 The dual 2-complex and the dual graph

Let D be the 2-complex dual to T. If T consists of n tetrahedra, then D has n vertices, each corresponding to some tT, 2n edges, each corresponding to a triangular face fF, and n two-cells, each corresponding to an edge eE. We abuse the notation slightly and denote the vertex of D dual to tetrahedron t by t, the edge of D dual to face f by f and the 2-cell of D dual to edge e by e.

By Γ we denote the 1-skeleton of D. We call Γ the dual graph of T. We endow Γ with the “upwards” orientation on edges coming from the coorientation on their dual faces. We call any (simplicial) cycle in Γ a dual cycle. This is different from [Citation12, Section 5], where by dual cycles the authors mean only positive cycles.

4.1.2 Fixing a fundamental domain

Let ϒ be a spanning tree of Γ. If T has n tetrahedra, then ϒ has n vertices tT and n – 1 edges. Let Γ be the dual graph of T. Fix a lift ϒ˜ of ϒ to Γ. The lift ϒ˜ determines a fundamental domain F for the action of H on T built from:

  • the interiors of all tetrahedra of T dual to vertices of ϒ˜,

  • bottom diagonal edges of tetrahedra of T dual to vertices of ϒ˜,

  • the interiors of triangles of T dual to the edges of Γ which join two vertices of ϒ˜,

  • the interiors of triangles of T dual to the edges of Γ which run from a vertex not in ϒ˜ to a vertex of ϒ˜.

For our purposes it is sufficient to fix a fundamental domain up to a translation by an element hH. That is, only the choice of a spanning tree is important and not its particular lift fo Γ. For this reason we say that F constructed as above is the (downwardly closed) fundamental domain for the action of H on T determined by a spanning tree ϒ of Γ.

4.1.3 Labelling ideal simplices of the cover

Let F be a fundamental domain for the action of H on T determined by a spanning tree of Γ. Given an ideal simplex x of T we denote its lift which is contained in F by 1·x. Every other lift of x is then a translate of 1·x by an element hH; we denote it by h·x. We say that h·x has the H-coefficient h. We seth·F=(tTh·t)(fFh·f)(eEh·e).

In particular, 1·F=F.

We denote the sets of ideal tetrahedra, triangles and edges of T by H·T,H·F,H·E, respectively. We set the action of H on H·X, where X{T,F,E}, to be given by h·(g·x)(hg)·x. The above choices induce a particular identification of the free abelian groups generated by H·T,H·F and H·E with the free Z[H]-modules Z[H]T,Z[H]F,Z[H]E, respectively.

4.1.4 H-pairings

To compute the taut and veering polynomials we will need to know the H-coefficients of faces and tetrahedra attached to the edges of T with the H-coefficient equal to 1; see proofs of Propositions 5.8 and 6.4. By our fixed convention for labelling ideal simplices of T, the H-coefficient of the tetrahedron immediately above 1·e is equal to 1. To figure out the H-coefficients of the remaining tetrahedra adjacent to 1·e we introduce the notion of H-pairings. These are elements of H associated to the triangles of T which inform about how much the labelling changes when traversing a lift of a given face in the upwards direction.

Definition 4.1.

Let F be a fundamental domain for the action of H on T determined by a spanning tree ϒ of Γ. The H-pairings for (T,F) are elements hiH associated to triangles fiF such that the tetrahedron immediately below h·fi is in hi1h·F. We also say that hi is the H-pairing of fi (relative to F).

Lemma 4.2.

Suppose that an edge e is embedded in a tetrahedron t of T. If e is the bottom diagonal of t, then in T the edge 1·e is the bottom diagonal of 1·t. Otherwise let fi1++fik be a positive dual cycle from the vertex dual to t to a vertex dual to the tetrahedron immediately above e. Then the embedding of e into t induces an embedding of 1·e into (hi1hik)1·t. □

Since F is downwardly closed, the triangles of T inherit their H-coefficient from the unique tetrahedron immediately above them. Therefore Lemma 4.2 can also be used to find the H-coefficients of triangles adjacent to 1·e.

4.2 Finding H-pairings

The dual 2-complex D of T is a deformation retract of M and therefore H1(M;Z)H1(D;Z). Hence H1(M;Z) is generated by dual cycles.

Given a collection C of dual cycles we consider the subgroup C generated by {[c]H1(M;Z)|cC}. LetH1(M;Z)C=H1(M;Z)/Cand set(4.3) HC=H1(M;Z)C/torsion.(4.3)

Every free abelian quotient H of H1(M;Z) is equal to HC for some finite collection C of dual cycles. Below we supress C from notation, but we regularly use the notation HC and TC later in the text.

Let ϒ be a spanning tree of the dual graph Γ. Denote by Fϒ the subset of F consisting of triangles dual to the edges not in ϒ. We call the elements of Fϒ the non-tree edges, and elements of FFϒ — the tree edges. Recall that in (3.2) we associated to (T,α) the branch equations matrix B:ZEZF. LetBϒ:ZEZFϒbe the matrix obtained from B by deleting the rows corresponding to the tree edges.

Denote by Dϒ the 2-complex obtained from D by contracting ϒ to a point. Then Bϒ is the boundary map from the 2-chains to the 1-chains of Dϒ. Thus H1(Dϒ;Z), and hence H1(M;Z), is isomorphic to the cokernel of Bϒ. The maximal free abelian quotient H of H1(M;Z) is therefore isomorphic toFϒ|{Bϒ(e)|eE}ab/torsion.

Here the superscript ‘ab’ denotes the abelianization of the group presented in terms of generators and relations.

More generally, let C be a finite collection of dual cycles. Under the contraction DDϒ they become simplicial 1-cycles in Dϒ. We denote the obtained collection of cycles in Dϒ by Cϒ={c1,,ck}. The group H=HC is isomorphic toFϒ|{Bϒ(e)|eE},Cϒab/torsion.

Suppose that H is of rank r. Let (B|C)ϒ denote the matrix obtained from Bϒ by augmenting it with the columns c1,,ck. Let(4.4) S=U(B|C)ϒV(4.4) be the Smith normal form of (B|C)ϒ (see [Citation15, Chapter 1] for a discussion of Smith normal forms). Let f1,,fn+1 denote the elements of Fϒ. The matrix U transforms the basis (f1,,fn+1) of ZFϒ to another basis (μ1,,μn+1). The last r rows of both S and U(B|C)ϒ are zero, therefore {μnr+2,,μn+1} are simplicial 1-cycles in Dϒ whose images under the projection ZFϒH form a basis of H. For brevity, we say that (μnr+2,,μn+1) is a basis of H.

Algorithm FacePairings

Encoding the triangulation of a free abelian cover

Input:

  • A transverse taut triangulation (T,α) of a cusped 3-manifold M with n ideal tetrahedra, T=(T,F,E)

  • A list C of dual cycles of (T,α)

  • Optional: return type = “matrix”

Output:

  • Default: a tuple of 2n Laurent monomials encoding the triangulation TC of a free abelian cover of M with the deck group isomorphic to HC

  • If return type = “matrix”: a pair (U, r) where r is the rank of HC and U is as in (4.4)

1: B:= the branch equations matrix of (T,α) # 2n×n integer matrix

2: B:=B.AddColumns(C)

3: Y:=SpanningTree(T)

4: NonTree: = FY

5: B:=B.DeleteRows(Y) # (n+1)×n integer matrix

6: S,U,V:=SmithNormalForm(B) # S = UBV

7: r:= the number of zero rows of S

8: if return type = “matrix” then

9: return U, r

10: else

11: H:= the zero matrix with r rows and columns indexed by elements of F

12: for f in NonTree do

13: column H(f):= the last r entries of the column U(f)

14: end for

15: FaceLaurents:= the tuple of zero Laurent polynomials, indexed by F

16: for f in F do

17: FaceLaurents(f):=uH(f) # u=(u1,,ur) and uv=u1v1urvr

18: end for

19: return FaceLaurents

20: end if

The consecutive entries of the i-th column of U give the coefficients of fi expressed as a linear combination of (μ1,,μn+1). Since μ1,,μnr+1 are 0 in H, it follows that the last r entries of the i-th column of U correspond to the H-pairing of fi written in terms of the basis (μnr+2,,μn+1) of H.

On the other hand, the coefficients of μi expressed as a linear combination of (f1,,fn+1) are equal to the consecutive entries of the i-th column of U1. Therefore the last r columns of the matrix U1 give a representation of the basis elements of H as simplicial 1-cycles in Dϒ.

Remark 4.5.

Adding a non-tree edge fFϒ to the tree ϒ creates a unique cycle ζ(f) in the subgraph f ϒ of Γ. The H-pairing of f is equal to the image of the homology class of ζ(f) under the epimorphism H1(M;Z)H.

Remark 4.6.

The H-pairings of fFFϒ are all trivial because tree edges correspond to contractible cycles contained in the tree ϒ.

Remark.

All computations presented in this section can be easily generalized to ideal triangulations which are not transverse taut. The only benefit of having a transverse taut structure is that we get a canonical choice of orientation on the edges of the dual graph.

4.3 Algorithm FacePairings

We give the algorithm FacePairings which lays a foundation for all other algorithms given in this paper. It performs computations discussed in Section 4.2 to find the projection ZFH which sends a dual cycle to the image of its homology class under H1(M;Z)H. A free abelian quotient H is specified by a finite collection C of dual cycles as in (4.3). The default output of FacePairings is a tuple of 2n Laurent monomials, which we call face Laurents. They encode the H-pairings expressed with respect to the fixed basis of H.

By SpanningTree we denote an algorithm which takes as an input an ideal triangulation T=(T,F,E), fixes a spanning tree ϒ of its dual graph, and returns the subset of F consisting of triangles dual to the edges ϒ. There are standard algorithms to find spanning trees of finite graphs, so we do not include pseudocode here.

Remark 4.7.

We can ensure that the algorithm FacePairings is deterministic. That is, if we do not permute ideal simplices of T, nor change the order of dual cycles in C, the output of FacePairings((T,α),C) is always the same.

4.4 Polynomial invariants of finitely presented Z[H]-modules

Let M be a finitely presented module over Z[H]. Then there exist integers k,lN and an exact sequenceZ[H]kAZ[H]lM0of Z[H]-homomorphisms called a free presentation of M. The matrix of A, written in terms of any bases of Z[H]k and Z[H]l, is called a presentation matrix for M.

Definition 4.8.

[Citation16, Section 3.1] Let M be a finitely presented Z[H]-module with a presentation matrix A of dimension l × k. We define the i-th Fitting ideal Fiti(M) of M to be the ideal in Z[H] generated by (li)×(li) minors of A.

In particular Fiti(M)=Z[H] for il, as the determinant of the empty matrix equals 1, and Fiti(M)=0 for i < 0 or i<lk. The Fitting ideals are independent of the choice of a free presentation for M [Citation16, p. 58].

Remark.

Fitting ideals are called determinantal ideals in [Citation23] and elementary ideals in [Citation6, Chapter VIII].

The ring Z[H] is a GCD domain [Citation6, p. 117]. We define the i-th Fitting invariant of M to be the greatest common divisor of elements of Fiti(M). When Fiti(M)=(0) we set the i-th Fitting invariant of M to be equal to 0. Note that Fitting invariants are well-defined only up to a unit in Z[H].

5 The taut polynomial

Let V=(T,α,ν) be a finite veering triangulation of a 3-manifold M, with the set T of tetrahedra, the set F of 2-dimensional faces and the set E of edges. Recall thatH=H1(M;Z)/torsion.

In [Citation12, Section 3], Landry, Minsky and Taylor defined the face module Eα(V) of V. They called the zeroth Fitting invariant of this module the taut polynomial of V. In [Citation12] the relation between the face module of V and the upper track of V is only implicit. Here we explicitly connect these two objects. For this reason, we denote the face module by EαU(V) and call it the upper taut module of V. Then the zeroth Fitting invariant of EαU(V) is called the upper taut polynomial.

Let τfab,U be the upper track of the veering triangulation Vfab of Mfab. Consider the restriction of τfab,U to 1·fH·F; see . This train track determines a switch relation between its three half-branches: the large half-branch is equal to the sum of the two small half-branches. By identifying the half-branches with the edges in the boundary of 1·f which they meet, we obtain a switch relation between the edges in the boundary of 1·f.

Fig. 7 The upper track in a triangle determines the switch relation 1·e0=h1·e1+h2·e2 between the edges in its boundary.

Fig. 7 The upper track in a triangle determines the switch relation 1·e0=h1·e1+h2·e2 between the edges in its boundary.

The upper taut module EαU(V) is generated over Z[H] by the edges of V, with relations determined by the switch relations of τfab,U. In other words, we can express EαU(V) as the cokernel of the Z[H]-module homomorphism DU (5.1) Z[H]FDUZ[H]EEαU(V)0,(5.1) where DU(1·f) is a rearrangement of the switch relation of τfab,U in 1·f. For example, the image under DU of the triangle presented in is equal to1·e0h1·e1h2·e2Z[H]E.

The upper taut polynomial ΘVU is the zeroth Fitting invariant of EαU(V). That is,ΘVU=gcd{maximal minors of DU}.

Now let τfab,L be the lower track of the veering triangulation Vfab of Mfab. There is a Z[H]-module homomorphism DL:Z[H]F Z[H]E which assigns to 1·fH·F the switch relation of τfab,L in 1·f. We define the lower taut module EαL(V) of V to be the cokernel of DL, and the lower taut polynomial ΘVL of V to be the greatest common divisor of the maximal minors of DL.

Remark.

The subscript α in EαU, EαL reflects the fact that to define these modules we just need a transverse taut structure α on the triangulation. This is because the upper and lower tracks exist in transverse taut triangulations even when they are not veering; see Definition 3.6. We, however, consider only the taut polynomials of veering triangulations. In our proofs we rely on the veering structure. For example, in Proposition 5.2 we use Lemma 2.3 and in Lemma 5.4 we use Lemma 3.8.

5.1 Only one taut polynomial

At the beginning of this section we defined two taut polynomials. In this section we prove that they are in fact equal up to a unit in Z[H].

Proposition 5.2.

Let V be a finite veering triangulation. The lower taut module of V is isomorphic to the upper taut module of V. HenceΘVL=ΘVUup to a unit in Z[H].

Proof.

Let 1·fH·F be a red triangle of Vfab. By Lemma 2.3 the tetrahedron immediately below 1·f has a red top diagonal t and the tetrahedron immediately above 1·f has a red bottom diagonal r, for some t,rH·E. Furthermore, t and r are distinct edges in the boundary of 1·f. We haveDL(1·f)=trlDU(1·f)=rtlfor some lH·E, so the signs of the two red edges of f are interchanged. A similar statement is true for blue triangles: the images of DL and DU on them differ by swapping the signs of the two blue edges.

If we multiply all columns of DL corresponding to red triangles of V by -1, and all rows corresponding to blue edges by –1, we obtain the matrix DU. Hence the maximal minors of DL and DU differ at most by a sign. □

Thus from now on we only write about the taut polynomial ΘV and the taut module Eα(V).

Corollary 5.3.

The taut polynomials of (T,α,ν),(T,α,ν),(T,α,ν) and (T,α,ν) are equal.

Proof.

This follows from Proposition 5.2 and Remark 3.9. □

5.2 Reducing the number of relations

Suppose that V consists of n tetrahedra. The original definition of the taut polynomial requires computing (2nn)>2n minors of DU, which is an obstacle for efficient computation. However, the relations satisfied by the generators of the taut module are not linearly independent. In this subsection we give a recipe to systematically eliminate n – 1 relations.

The following lemma follows from [Citation12, Lemma 3.2]. We include its proof, because it is important in Proposition 5.6.

Lemma 5.4.

Let V be a veering triangulation. Each tetrahedron tT induces a linear dependence between the columns of DU corresponding to the triangles in the boundary of t.

Proof.

Suppose that 1·t has red equatorial edges r1, r2, blue equatorial edges l1, l2, bottom diagonal db and top diagonal dt, where r1,r2,l1,l2, db,dtH·E. Such a tetrahedron is illustrated in .

Fig. 8 Edges of the tetrahedron 1·t of Vfab.

Fig. 8 Edges of the tetrahedron 1·t of Vfab.

Let f1, f2H·F be two bottom triangles of 1·t such thatDU(f1)=dbr1l1DU(f2)=dbr2l2.

For i = 1, 2 denote by fi the top triangle of 1·t such that fi and fi are adjacent in 1·t along the upper large edge of fi.

By Lemma 3.8 the upper large edges of fi’s are the equatorial edges of 1·t which are of the same color as the top diagonal of 1·t; see also . ThereforeDU(f1+f1)=DU(f2+f2)=dbdts1s2where (s1,s2)={(r1,r2)if dt is blue(l1,l2)if dt is red.

Remark 5.5.

Lemma 5.4 does not hold for transverse taut triangulations which do not admit a veering structure. One can check that if the upper large edges of the top faces of a tetrahedron t are not the opposite equatorial edges of t, then no nontrivial linear combination of the images of faces of 1·t under DU gives zero.

Let ϒ be a spanning tree of Γ. Recall that by Fϒ we denote the subset of triangles dual to the edges of Γ which are not in ϒ (non-tree edges). We define a Z[H]-module homomorphismDϒU:Z[H]FϒZ[H]Eobtained from DU by deleting the columns corresponding to the edges of ϒ.

We will show that the images of DU and that of DϒU are equal. For brevity, we say that a dual edge f is a linear combination of dual edges fi1,,fik, or in the span of these edges, if DU(1·f) is a linear combination with Z[H] coefficients of DU(hi1·fi1),, DU(hik·fik) for some hi1,,hikH.

Proposition 5.6.

Let V be a finite veering triangulation and let ϒ be a spanning tree of its dual graph Γ. The image of DU and that of ρC:HMHMC are equal.

Proof.

It is enough to prove that every tree edge is in the span of non-tree edges. By Lemma 5.4 each dual edge f is a linear combination of three dual edges that share a vertex with f. In particular, the terminal edges of ϒ — there are at least two of them — are in the span of non-tree edges. Now consider a subtree ϒ obtained from A=A2·A1 by deleting its terminal edges. The terminal edges of n+1s can be expressed as linear combinations of non-tree edges and terminal edges of U, hence as linear combinations of non-tree edges only. Since n+1r is finite, we eventually exhaust all its edges. □

Corollary 5.7.

Let ϒ be a spanning tree of the dual graph Γ of a finite veering triangulation V. The taut polynomial ΘV is equal to the greatest common divisor of the maximal minors of the matrix U1.

Proof.

By Proposition 5.6 we obtain another presentation for the taut moduleZ[H]FϒDϒUZ[H]EEα(V)0.

Since Fitting invariants of a finitely presented module do not depend on a chosen presentation [Citation16, p. 58], the greatest common divisor of the maximal minors of DϒU is equal to the taut polynomial of V. □

5.3 Algorithm TautPolynomial

In this subsection we present pseudocode for an algorithm which takes as an input a veering triangulation V and outputs the taut polynomial ΘV of V expressed in terms of the basis of H fixed by FacePairings(V,[]). To fill in the presentation matrix for the upper taut module we walk around the edges of Vfab with the H-coefficient equal to 1 and record the H-coefficients of triangles attached to it.

In Section 7 we compute the taut polynomial of the veering triangulation cPcbbbiht_12 of the figure-eight knot complement.

Algorithm TautPolynomial

Computation of the taut polynomial of a veering triangulation

Input: A veering triangulation V with the set T of tetrahedra, the set F of triangular faces and the set E of edges

Output: The taut polynomial ΘV

1: Pairing: = FacePairings(V,[]) # Face Laurents encoding Vfab

2: D:= the zero matrix with rows indexed by E and columns by F

3: for e in E do

4: L:= list of triangles on the left of e, ordered from the top to the bottom

5: R:= list of triangles on the right of e, ordered from the top to the bottom

6: for A in {L,R} do

7: CurrentCoefficient: = 1 # Counting from 1, not 0

8: add CurrentCoefficient to the entry (e,A[1]) of D

9: for i from 2 to length(A) do # Inclusive

10: CurrentCoefficient: = CurrentCoefficient·Pairing(A[i1])

11: subtract CurrentCoefficient from the entry (e,A[i]) of D

12: end for

13: end for

14: end for

15: Y:=SpanningTree(Y)

16: DY:=D.DeleteColumns(Y) # Accelerate the computation

17: minors: = DY.minors(|E|)

18: return gcd(minors)

Proposition 5.8.

The output of TautPolynomial applied to a veering triangulation V is equal to the taut polynomial ΘV of V.

Proof.

The output FacePairings(V,[]) is a list of face Laurents encoding the triangulation Vfab. Each for loop, starting on line 3 of the algorithm, is responsible for filling one row of the presentation matrix of the upper taut module.

By our conventions for labelling the triangles of Vfab established in Section 4.1.3 the uppermost triangles attached to 1·e have the H-coefficient equal to 1. Then the H-coefficients of the consecutive (from the top) triangles attached to 1·e are obtained by multiplying the H-coefficient of the previous triangle by the inverse of its H-pairing; see Lemma 4.2. This explains line 10 of the algorithm. We do not invert H-pairings because if h·f is attached to 1·e then 1·f has h1·e in its boundary, and it is the latter we are interested in.

Since 1·e is the upper large edge only in the two uppermost triangles attached to 1·e, we add the coefficients on line 8 and subtract on line 11.

Thus the matrix D on line 15 of the algorithm is equal to the presentation matrix DU of the taut module Eα(V) as in (5.1). Deleting the tree columns of D, for some spanning tree ϒ of the dual graph Γ of V, gives another presentation matrix for the taut module Eα(V) by Corollary 5.7. The greatest common divisor of its maximal minors is equal to the zeroth Fitting invariant of Eα(V), that is the taut polynomial ΘV of V. □

6 The veering polynomials

Let V=(T,α,ν) be a finite veering triangulation of a 3-manifold M, with the set T of tetrahedra, the set F of 2-dimensional faces and the set E of edges. We still use the notation H=H1(M;Z)/torsion.

In Section 4 of Landry et al. [Citation12], Landry, Minsky and Taylor defined the flow graph ΦV of V. In Section 3 of the same paper they defined the veering polynomial VV of V. These two invariants are closely related: the veering polynomial is the image of the Perron polynomial of ΦV under the epimorphism induced by the inclusion of ΦV into M [Citation12, Theorem 4.8]. Similarly as with the taut polynomial, here we explicitly connect ΦV and VV with the upper track of V. Thus we call them the upper flow graph and the upper veering polynomial, and denote them by ΦVU and VVU, respectively. Furthermore, using the lower track of V we define the lower flow graph ΦVL, and the lower veering polynomial VVL.

The aim of this section is twofold. First, we show examples of veering triangulations whose upper and lower flow graphs are not isomorphic (Proposition 6.1) and whose upper and lower veering polynomials are not equal in Z[H]/±H (Proposition 6.5). The second aim of this section is to present pseudocode for the computation of the upper veering polynomial (Section 6.3). By Remark 3.9, the lower veering polynomial of (T,α,ν) is equal to the upper veering polynomial of (T,α,±ν), hence we do not give a separate pseudocode for its computation.

6.1 Flow graphs

The vertices of the upper flow graph ΦVU of V are in bijective correspondence with the edges eE. Corresponding to each tetrahedron tT there are three edges of tT:

  • from the bottom diagonal db of t to the top diagonal dt of t,

  • from the bottom diagonal db of t to the equatorial edges s1, s2 of t which have a different color than the top diagonal of t.

This definition coincides with the definition of the flow graph given in [Citation12, Subsection 4.3]. We additionally define the lower flow graph ΦVL of V. Its vertices also correspond to the edges of the veering triangulation. Every tetrahedron tT determines the following three edges of ΦL:

  • from the top diagonal dt of t to the bottom diagonal db of t,

  • from the top diagonal dt of t to the equatorial edges w1, w2 of t which have a different color than the bottom diagonal of t.

Observe that the edges of ΦVU (ΦVL) connect the upper (lower) large edge of the bottom (top) faces of t with the upper (lower) small edges of the top (bottom) faces of t.

Proposition 6.1.

There exists a veering triangulation V whose upper and lower flow graphs are not isomorphic.

Proof.

The first entry of the Veering Census for which the upper and lower flow graphs are not isomorphic is given by the string hLMzMkbcdefggghhhqxqkc_1221002 which encodes a veering triangulation of the manifold v2898.

The graphs are presented in . In 9(a) there are two vertices of valency 6 (labelled 4 and 6) which are joined to a vertex of valency 10 (labelled 0), while in 9(b) there is only one vertex of valency 6 (labelled 6) which is joined to a vertex of valency 10 (labelled 0). Hence the graphs are not isomorphic. □

Fig. 9 Flow graphs of hLMzMkbcdefggghhhqxqkc_1221002. Double arrows join top diagonals to bottom diagonals of tetrahedra, or vice versa.

Fig. 9 Flow graphs of hLMzMkbcdefggghhhqxqkc_1221002. Double arrows join top diagonals to bottom diagonals of tetrahedra, or vice versa.

6.2 Veering polynomials

The matrix DU defined in (5.1) assigns to a face of Vfab the switch relation of the upper track of Vfab restricted to that face. By Lemma 5.4, the faces of a tetrahedron h·t of Vfab can be grouped into pairs such that DU evaluated on each pair equals(6.2) dbdts1s2,(6.2) where dt, db denote the top and the bottom diagonals of h·t, respectively, and s1, s2 — its two equatorial edges of a different color than dt. We view (6.2) as a relation associated to h·t. By identifying h·t with its bottom diagonal we obtain a Z[H]-module homomorphism(6.3) KU:Z[H]EZ[H]EKU(db)=dbdts1s2.(6.3)

By choosing the same basis in the domain and codomain of KU, the determinant of KU is well-defined as an element of Z[H] (not just up to a unit). We call this polynomial the upper veering polynomial of V and denote it by VVU. It was defined in [Citation12, Section 3], where it is called the veering polynomial.

The map DL, related to the lower track of Vfab, satisfies analogous properties as DU. In particular, we can group the triangles of h·t into pairs such that DL evaluated on each pair equals dtdbw1w2, where w1, w2 denote the equatorial edges of h·t of a different color than db. By identifying h·t with its top diagonal we obtain a Z[H]-module homomorphismKL:Z[H]EZ[H]EKL(dt)=dtdbw1w2.

We call the determinant of KL, when expressed with respect to the same basis in the domain and codomain, the lower veering polynomial of V and denote it by VVL.

6.3 Algorithm UpperVeeringPolynomial

In this section we present pseudocode for an algorithm which takes as an input a veering triangulation V and returns its upper veering polynomial VVU expressed in terms of the basis of H fixed by FacePairings(V,[]). To fill in the matrix KU we walk around the edges of Vfab with the H-coefficient equal to 1 and record the H-coefficients of tetrahedra attached to it.

In Section 7 we compute the upper veering polynomial of the veering triangulation cPcbbbiht_12 of the figure-eight knot complement.

Algorithm UpperVeeringPolynomial

Computation of the upper veering polynomial

Input: A veering triangulation V, with the set T of tetrahedra, the set F of triangular faces and the set E of edges

Output: The upper veering polynomial VVU of V

1: permute the elements of T so that E[i] is the bottom diagonal of T[i]

2: Pairing: = FacePairings(V,[]) # Face Laurents encoding Vfab

3: K:= the zero matrix with rows indexed by E and columns by T

4: for e in E do

5: L:= triangles on the left of e, ordered from the top to the bottom

6: R:= triangles on the right of e, ordered from the top to the bottom

7: TT:= tetrahedron immediately above L[1] # Counting from 1, not 0

8: add 1 to the entry (e, TT) of K

9: BT:= tetrahedron immediately below L[length(L)]

10: BottomCoefficient:=i=1length(L)Pairing(L[i])

11: subtract BottomCoefficient from the entry (e, BT) of K

12: for A in {L,R} do

13: CurrentCoefficient: = 1

14: for i from 1 to length(A)–1 do # Inclusive, counting from 1, not 0

15: T:= tetrahedron immediately below A[i]

16: CurrentCoefficient: = CurrentCoefficient·Pairing(A[i])

17: if i > 1 then

18: subtract CurrentCoefficient from the entry (e, T) of K

19: end if

20: end for

21: end for

22: end for

23: return determinant of K

Proposition 6.4.

The output of UpperVeeringPolynomial applied to a veering triangulation V is equal to the upper veering polynomial of V.

Proof.

We claim that the matrix K on line 22 of the algorithm is equal to KU defined in (6.3). Each for loop, starting on line 4 of the algorithm, is responsible for filling one row of K. By construction, K is a matrix of a Z[H]-module homomorphism Z[H]TZ[H]E. By our conventions for labelling ideal simplices of Vfab established in Section 4.1.3, the bases for Z[H]TZ[H]E differ at most by a permutation (and not by multiplying by elements of H). Line 1 of the algorithm is therefore resposible for identifying a tetrahedron h·t with its bottom diagonal.

By our labelling convention, the tetrahedron immediately above 1·e have the H-coefficient equal to 1. Since 1·e is its bottom diagonal, we add 1 to the appropriate entry of K on line 8. On lines 10 and 16 we compute the H-coefficients of the remaining tetrahedra attached to 1·e. We already explained this process in Lemma 4.2. Since 1·e is the top diagonal of the tetrahedron immediately below it, we subtract the coefficient computed on line 10 from the appropriate entry of K on line 11. Similarly, we subtract the coefficient computed on line 16 from the appropriate entry of K on line 18, because 1·e is an equatorial edge in all its side tetrahedra.

Line 17 of the algorithm is responsible for skipping the side tetrahedra of 1·e whose top diagonal has the same color as 1·e. We know from Corollary 2.4 that only the two uppermost side tetrahedra of 1·e have this property. □

An analogous algorithm can be written for the lower veering polynomial. Alternatively, by Remark 3.9 to compute the upper veering polynomial of (T,α,ν) we can apply UpperVeeringPolynomial to the triangulation (T,α,±ν).

Recall that the upper and lower veering polynomials are well-defined as elements of Z[H], and not just up to a unit. However, it only makes sense to compare them up to a unit. Using an implementation of UpperVeeringPolynomial we found that the upper and lower veering polynomials of the same veering triangulation may be different even after projecting them to Z[H]/±H.

Proposition 6.5.

There are veering triangulations whose upper and lower veering polynomials project to different elements of Z[H]/±H.

Proof.

The first entry of the Veering Census for which we have VVLVVU in Z[H]/±H is given by the string iLLLAQccdffgfhhh qgdatgqdm_21012210. It encodes a veering triangulation of the 3-manifold t10133. Its upper and lower veering polynomials are respectively equal toVVU=u57(u1)1(1u29)(1u9)(1u+u2u3+u4u5+u6)(1u2u7u12+u14)andVVL=(u1)1(1u25)(1u13)(1u+u2u3+u4u5+u6)(1u2u7u12+u14).

Their greatest common divisor(1u+u2u3+u4u5+u6)(1u2u7u12+u14)is equal to the taut polynomial ΘV of V. □

Remark 6.6.

The flow graphs of the triangulation from the proof of Proposition 6.5 are not isomorphic. In fact, one of them is planar, and the other is not.

Remark 6.7.

In the proof of Proposition 6.1 we showed that the upper and lower flow graphs of the veering triangulation hLMzMkbcdefggghhhqxqkc_1221002 of the manifold v2898 are not isomorphic. For this veering triangulation we haveVVU=119a19a2+a3=(1+a)(120a+a2)

andVVL=a319a219a1+1=a3(1+a)(120a+a2),hence the veering polynomials are equal up to a unit.

There are even veering triangulations for which one veering polynomial vanishes and the other does not.

Example 6.8.

The entry lLLLAPAMcbcfeggihijkktshhxfpikaqj_20102220020 of the Veering Census encodes a veering triangulation whose upper veering polynomial vanishes, butVVL=u1(u1)2(u+1)3(u2u+1)(u4+1).

Remark 6.9.

By the results of Landry, Minsky and Taylor the taut polynomial of V divides the upper veering polynomial of V [Citation12, Theorem 6.1 and Remark 6.18] and hence also the lower veering polynomial of V. The remaining factors of the upper/lower veering polynomial are related to a special family of 1-cycles in the dual graph of V, called the upper/lower AB-cycles [Citation12, Section 4]. We refer the reader to [Citation12, Subsection 6.1] to find out the formula for the extra factors.

If ΘV0 and VVU/L=0, then V has an upper/lower AB-cycle of even length whose class in H is trivial. From Proposition 6.5 it follows that the homology classes of the lower and upper AB-cycles are not always paired so that one is the inverse of the other.

7 Example: the veering triangulation of the figure eight knot complement

Let M be the figure-eight knot complement. This 3-manifold admits a veering triangulation V represented in the Veering Census by the string cPcbbbiht_12. In this section we compute the taut and upper veering polynomials of V.

7.1 Triangulation of the maximal free abelian cover

Recall from the proofs of Propositions 5.8 and 6.4 that we fill in the matrices used to compute the taut and veering polynomials by walking around the edges of Vfab. For this reason, instead of presenting the tetrahedra of V in we present cross-sections of the neighborhoods of its edges.

Fig. 10 Cross-sections of the neighborhoods of edges e0, e1 of V. The colors of edges and triangles are indicated.

Fig. 10 Cross-sections of the neighborhoods of edges e0, e1 of V. The colors of edges and triangles are indicated.

First we follow the algorithm FacePairings to encode the triangulation Vfab of the maximal free abelian cover of the figure-eight knot complement. shows triangles attached to the edges e0, e1 of V. It allows us to find the branch equations matrix B of V:B=f0f1f2f3e0e1[01100110].

Again using we draw the dual graph Γ of V. It is presented in . As a spanning tree ϒ of Γ we choose {f0}.

Fig. 11 The dual graph of cPcbbbiht_12.

Fig. 11 The dual graph of cPcbbbiht_12.

The matrix Bϒ is obtained from B by deleting its first row, corresponding to f0. Let S be the Smith normal form of Bϒ. It satisfies S=UBϒV, whereU=f1f2f3[100010101].

Since S is of rank 2, H1(M;Z) is of rank 1, and thus the face Laurents of the non-tree edges are determined by the last row of U. All face Laurents for V relative to the fundamental domain determined by ϒ={f0} are listed in . This list is the output of FacePairings(V,[]).

Table 1 The face Laurents encoding Vfab.

Using and we can now draw triangles and tetrahedra attached to the edges 1·e0 and 1·e1 of Vfab in .

Fig. 12 Cross-sections of the neighborhoods of edges 1·e0,1·e1 of Vfab. The colors of edges and triangles are indicated. To not overcrowd the figure we use u¯=u1.

Fig. 12 Cross-sections of the neighborhoods of edges 1·e0, 1·e1 of Vfab. The colors of edges and triangles are indicated. To not overcrowd the figure we use u¯=u−1.

7.2 The taut polynomial

Recall from Section 5 that DU(1·f) is a linear combination of edges in the boundary of 1·f. To find the matrix DU we need to know the (inverses of) Laurent coefficients of the triangles attached to 1·e0 and 1·e1. They can be read off from . Taking the inverses is necessary, because 1·fH·F has h·e in its boundary if and only if h1·f is attached to 1·e.

The upper large edge of 1·f appears with a plus sign in DU(1·f). The remaining edges of 1·f appear with a minus sign. This also can be read off from , as 1·ei is upper large only in its two uppermost triangles.

By Corollary 5.7 the taut polynomial of V is equal to the greatest common divisor of the matrix DϒU obtained from DU by deleting its first column, corresponding to the tree ϒ={f0}. We haveDϒU(u)=e0e1f1f2f3[11u11uu1u]and henceΘV=13u+u2.

7.3 The upper veering polynomial

Observe that 1·ei is the bottom diagonal of 1·ti for i = 0, 1. Therefore KU(1·ei) is a linear combination of (not all) edges in the boundary of 1·ti. By Corollary 2.4 we skip the edges in the boundary of 1·ti for which 1·ti is an uppermost side tetrahedron. These edges have the same color as the top diagonal of 1·ti. Furthermore, only 1·ei appear in KU(1·ei) with a plus sign.

For simplicity, we view KU as a map Z[H]TZ[H]E. Then it is clear that the row of KU corresponding to ei lists the inverses of Laurent cofficients of all but the two uppermost tetrahedra of 1·ei. These can be read off from . We getKU(u)=e0e1e0t0e1t1[12uuu212u].

ThusVVU=14u+4u2u3.

Up to a unit we haveVVU=(u1)·ΘV.

8 The Teichmüller polynomial

Let N be a finite volume, oriented, hyperbolic 3-manifold. Thurston introduced a norm on H2(N,N;R), now called the Thurston norm, whose unit ball BTh(N) is a polytope with rational vertices [Citation21, Theorem 2]. He observed that if S is the fiber of a fibration of N over the circle then the homology class [S] lies in the interior of the cone R+·F on some top-dimensional face F of BTh(N). Moreover, in this case every primitive integral class [S] from the interior of R+·F can be represented by the fiber of a fibration of N over the circle [Citation21, Theorem 3]. Top-dimensional faces of BTh(N) with the above property are called fibered faces.

Let F be a fibered face of the Thurston norm ball in H2(N,N;R). Picking a primitive integral class from the interior of the cone R+·F yields an expression of N as the mapping torusN=(S×[0,1])/{(x,1)(ψ(x),0)}of a pseudo-Anosov homeomorphism ψ:SS [Citation22, Proposition 2.6]. This homeomorphism is called the monodromy of the fibration SNS1. Different fibrations lying over F have different pseudo-Anosov monodromies, with different stretch factors. All of them can be, however, encoded by a single polynomial invariant, called the Teichmüller polynomial of F and denoted by ΘF [Citation14, Theorem 5.1].

By a result of Agol [1, Section 4], there is a layered veering triangulation associated to every fibered face. To explain this, let us consider a fibration of N over the circle with fiber S and monodromy ψ. It determines the suspension flow on N defined as the unit speed flow along the curves {x}×[0,1]. This flow admits a finite number of closed singular orbits l1,,lkN. The singular orbits arise from the prong-singularities of the invariants foliations of ψ in S. Following Agol’s algorithm [1, Section 4] yields a layered veering triangulation of M=N{l1,,lk}. Furthermore, any fibration from the cone R+·F over the same fibered face determines the same veering triangulation. This follows from a result of Fried that (up to isotopy and reparametrization) the suspension flow does not depend on the chosen integral homology class in R+·F [Citation7, Theorem 14.11]. The veering triangulation is in fact an invariant of this flow.

Landry, Minsky and Taylor observed that the Teichmüller polynomial of a fibered face can be computed using the taut polynomial of the associated veering triangulation. Before we state their theorem, we setsing(F)={l1,,lk}.

We also change the previous notation and setHN=H1(N;Z)/torsion,HM=H1(M;Z)/torsion.

Theorem 8.1

(Proposition 7.2 of Landry et al. [Citation12]). Let N be a compact, oriented, hyperbolic 3-manifold which is fibered over the circle. Let F be a fibered face of the Thurston norm ball in H1(N;R). Denote by V the veering triangulation of M=Nsing(F) associated to F. Let i:HMHN be the epimorphism induced by the inclusion of M into N. ThenΘF=i(ΘV).

In particular, if sing(F)=, then ΘF=ΘV. Fibered faces with this property are called fully-punctured. We conclude that the output of the algorithm TautPolynomial applied to a layered veering triangulation is equal to the Teichmüller polynomial of a fully-punctured fibered face. If F is not fully-punctured, there are two additional steps to compute ΘF.

  1. Finding Dehn filling slopes on the boundary tori of M which recover N.

  2. Computing the specialisation of the taut polynomial of V under i:HMHN.

In this section we give two algorithms, BoundaryCycles and Specialization, which realize the first and the second step, respectively. Then we give the algorithm TeichmüllerPolynomial, which relies on algorithms BoundaryCycles, TautPolynomial and Specialization, to compute the Teichmüller polynomial of any fibered face.

8.1 Classical (fully-punctured) examples

A majority of computations of the Teichmüller polynomials previously known in the literature concern only fully-punctured fibered faces. Such Teichmüller polynomials can be computed using the algorithm TautPolynomial. compares the outputs of this algorithm with computations of other authors.

Table 2 Teichmüller polynomials of fully-punctured fibered faces previously known in the literature compared to the outputs of TautPolynomial on the associated veering triangulations.

8.2 Algorithm BoundaryCycles

Let (T,α) be a finite transverse taut triangulation of M with the set T of tetrahedra, the set F of faces and the set E of edges. Denote by f1,,f2n the triangular faces of T. Let w=(w1,,w2n) be a nonzero, nonnegative, integral solution to the system of branch equations of (T,α). This solution determines a surface Sw=i=12nwifi in a fixed carried position.

The goal of this section is to present an algorithm which given (T,α) and w as above outputs a collection C of dual cycles which are homologous to the boundary components of Sw.

Suppose that the truncated model of M has b boundary components T1,,Tb. The intersection SwTj might be disconnected. In this case the dual cycle that we obtain is homologous to a multiple of a Dehn filling slope on Tj. Finding multiples of Dehn filling slopes is sufficient for our purpose, that is finding the projection HMHMC, because HMC is by definition torsion-free; see (4.3).

The boundary components of the surface Sw are carried by the boundary track (defined in Section 3.2). The tuple w endows each boundary track β1,,βb with a nonnegative integral transverse measure which encodes the boundary components SwTj for 1jb.

The general idea to find a dual cycle cj homologous to SwTj is as follows.

  1. Perturb SwTj slightly, so that it becomes transverse to the boundary track.

  2. Push the (perturbed) SwTj away from the boundary of M into the dual graph Γ.

First we define an auxiliary object, the dual boundary graph Γβ.

Definition 8.2.

Let (T,α) be a (truncated) transverse taut ideal triangulation of a 3-manifold M. The dual boundary graph Γβ is the oriented graph contained in M which is dual to the boundary track β of (T,α). The orientation on the edges of Γβ is determined by α.

If b1 then the dual boundary graph is disconnected, with connected components Γ1β,,Γbβ such that Γjβ is dual to the boundary track βj. If an edge of Γβ is dual to a branch of β lying in fF, then we label it with f. Hence for every fF there are three edges of Γβ labelled with f.

Example 8.3.

The dual boundary graph of the veering triangulation cPcbbbiht_12 of the figure-eight knot complement is presented in .

Fig. 13 The boundary track β of the veering triangulation cPcbbbiht_12 of the figure-eight knot complement and its dual graph Γβ (in orange). The orientation on the edges of Γβ is determined by the coorientation on their dual branches of β. Edges of Γβ are labelled with indices of triangles that they pass through. The picture of the boundary track is taken from [Citation9]. The dual boundary graph has been added by the author.

Fig. 13 The boundary track β of the veering triangulation cPcbbbiht_12 of the figure-eight knot complement and its dual graph Γβ (in orange). The orientation on the edges of Γβ is determined by the coorientation on their dual branches of β. Edges of Γβ are labelled with indices of triangles that they pass through. The picture of the boundary track is taken from [Citation9]. The dual boundary graph has been added by the author.

The dual boundary graph is a combinatorial tool that we use to encode paths which are transverse to the boundary track. Moreover, every cycle in the dual boundary graph can be homotoped inside M to a cycle in the dual graph.

Lemma 8.4.

Let (T,α) be a transverse taut triangulation of a 3-manifold M. Denote by Γ, Γβ its oriented dual graph and its oriented dual boundary graph, respectively. Let cβ be a cycle in Γβ. Suppose it passes consecutively through the edges of Γβ labelled with fi1,,fil, where 1ij2n.

We setsij={+1if c passes through an edge labelled with fij upwards1if c passes through an edge labelled with fij downwards.

Let c be the cycle (si1fi1,,silfil) in the dual graph Γ. If we embed Γβ and Γ in M in the natural way, then cβ and c are homotopic.

Proof.

Pushing each edge of the cycle cβ towards the middle of the triangle through which it passes gives a homotopy between cβ and c. This is illustrated in . □

Fig. 14 Homotoping a dual boundary cycle to a dual cycle. The black arrow is an edge of Γ dual to f. The orange arrow is an edge of Γβ labelled with f.

Fig. 14 Homotoping a dual boundary cycle to a dual cycle. The black arrow is an edge of Γ dual to f. The orange arrow is an edge of Γβ labelled with f.

Fix an integer j between 1 and b. The curve SwTj is contained in the boundary track βj. Let ϵ be a branch of βj. Let s and s+ be the initial and the terminal switches of ϵ, respectively. We replace each subarc of SwTj contained in ϵ by the following 1-chain cϵ in Γjβ cϵ=(outgoing branchesofsaboveϵ)+(incoming branchesofs+aboveϵ).

This is schematically depicted in .

Fig. 15 A local picture of the boundary track β (in black) and the dual boundary graph Γβ (in orange). We push the branch ϵ of β (light blue) upwards to the 1-chain cϵ in Γβ (also light blue).

Fig. 15 A local picture of the boundary track β (in black) and the dual boundary graph Γβ (in orange). We push the branch ϵ of β (light blue) upwards to the 1-chain cϵ in Γβ (also light blue).

Fig. 16 Downward and upward edges for an ideal vertex v of a triangle.

Fig. 16 Downward and upward edges for an ideal vertex v of a triangle.

Let us denote the transverse measure on ϵ determined by w=(w1,,w2n) by w(ϵ). The curve SwTj passes through ϵ w(ϵ) times. Since chain groups are abelian, the 1-cycle in Γβ homologous to SwTj is given bycjβ=ϵβjw(ϵ)cϵ,where the sum is taken over all branches ϵ of βj. By Lemma 8.4 we can homotope the cycles cjβ in Γβ to cycles cj in Γ.

The procedure explained in this section is summed up in the algorithm Boundary Cycles below. In the algorithm we use the notion of upward and downward edges. They are defined as follows. A vertex v of an ideal triangle fF gives a branch ϵv of β. We say that an edge e of f is the downward edge for v in f if its intersection with M is the initial switch of ϵv. An edge e of f is the upward edge for v in f if its intersection with M is the terminal switch of ϵv. The names reflect the fact that when we homotope the branch ϵv to a 1-chain in Γβ we go downwards above the initial switch of ϵv and upwards above the terminal switch of ϵv; see .

Algorithm BoundaryCycles

Expressing boundary components of a surface carried by a transverse taut triangulation (T,α) as dual cycles

Input:

  • A transverse taut triangulation (T,α) with n tetrahedra and b ideal vertices, T=(T,F,E)

  • A nonzero tuple wZ2n of integral nonnegative weights on elements of F

Output:

  • A list of b vectors from Z2n, each encoding a dual cycle cj homotopic to SwTj, for 1jb

1: Boundaries: = the list of b zero vectors from Z2n

2: for f in F do

3: for vertex v of f do

4: j:= the index of v as an ideal vertex of T

5: e1,e2: = the downward and upward edges of v in f

6: for f above f on the same side of e1 do

7: subtract w(f) from the entry f of Boundaries[j]

8: end for

9: for f above f on the same side of e2 do

10: add w(f) to the entry f of Boundaries[j]

11: end for

12: end for

13: end for

14: return Boundaries

Remark.

Algorithm BoundaryCycles is due to Saul Schleimer and Henry Segerman. We include it here, with permission, for completeness.

8.3 Algorithm Specialization

Let (T,α) be a finite transverse taut triangulation of a 3-manifold M. Let C be a finite collection of dual cycles of (T,α). It determines an epimorphism ρC:HMHMC, where the meaning of the superscript C is as in (4.3). In this section we give an algorithm to compute ρC(P) given PZ[HM].

Observe that the epimorphism ρC is a generalization of the epimorphism i:HMHN induced by the inclusion of M into its Dehn filling N. Indeed, to express i as ρC it is enough to find a collection C of dual cycles which are homologous to the Dehn filling slopes which produce N from M. In the previous section we explained how to find C in the special case when the Dehn filling is determined by the boundary components of a surface carried by (T,α).

Algorithm Specialization

Computing the specialisation of PZ[HM] under the epimorphism determined by a collection of dual cycles

Input:

  • A veering triangulation V of a 3-manifold M

  • PZ[HM] expressed in terms of the basis fixed by FacePairings(V,[])

  • A finite list C of dual cycles of V

Output: The specialisation ρC(P) of P

1: n: = the number of tetrahedra of V

2: U, r: = FacePairings(V,[], return type = “matrix”)

3: A1: = the matrix obtained from U1 by deletings its first n+1r columns

4: U,s: = FacePairings(V,C, return type = “matrix”)

5: A2: = the matrix obtained from U by deletings its first n+1s rows

6: exp: = Exponents(P)

7: coeff: = Coefficients(P)

8: newExp: = []

9: for v in exp do

10: append newExp with A2A1(v)

11: end for

12: spec: = i=1length(coeff)coeff[i]·unewExp[i] # u=(u1,,us) and uv=u1v1usvs

13: return spec

Proposition 8.5.

Let (T,α) be a finite transverse taut triangulation of a 3-manifold M. Let PZ[HM] be expressed in terms of the basis fixed by FacePairings((T,α),[]). Let C be a list of dual cycles of (T,α). Then Specialization ((T,α),P,C) is equal to ρC(P).

Proof.

The whole proof follows from the discussion on page 10. Let n be the number of tetrahedra of T. Let Γ be the dual graph of T. The pair (U, r) on line 2 of the algorithm is such that r equals the rank of HM and the last r columns of the inverse U1GL(n+1,Z) give the expressions for the basis elements of HM as simplicial 1-cycles in Γϒ, the graph obtained from Γ by contracting a spanning tree ϒ to a point. The pair (U,s) on line 4 of the algorithm is such that s equals the rank of HMC and the last s rows of the matrix UGL(n+1,Z) encode the HMC-pairings of the faces dual to the edges of Γϒ.

Let A1 be the matrix obtained from U1 by deleting its first n+1r columns. Let A2 be the matrix obtained from U by deleting its first n+1s rows. Then the matrix A=A2·A1 represents the epimorphism ρC:HMHMC written in terms of the bases of HM,HMC fixed by the algorithm FacePairings. Note that we use the fact that the algorithm FacePairings is deterministic; see Remark 4.7.

Each monomial ah·h in P can be encoded by a pair (ah,v) where ahZ,vZr. Then the pair (ah,A2A1(v)) encodes the corresponding monomial ah·ρC(h) appearing in ρC(P). Therefore the polynomial spec on line 12 of the algorithm is equal to ρC(P). □

Note that it only make sense to apply the algorithm Specialization to an element of Z[HM] which, as a Laurent polynomial, is expressed in terms of the basis fixed by the algorithm FacePairings.

8.4 Algorithm TeichmüllerPolynomial

Let S be an oriented, closed or punctured, surface of finite genus. Let ψ:SS be a pseudo-Anosov homeomorphism. Denote by N the mapping torus of ψ. Let F be the fibered face of the Thurston norm on H2(N,N;R) such that [S]R+·F. We give an algorithm which computes the Teichmüller polynomial of F.

By Veering we denote an algorithm which given a pseudo-Anosov homeomorphism ψ:SS outputs

  • the veering triangulation V of the mapping torus of ψ°:S°S°, where S° is obtained from S by puncturing it at the singularities of ψ and ψ° is the restriction of ψ to S°,

  • a nonnegative solution w=(w1,,w2n) to the system of branch equations of V such that the carried surface Sw=i=12nwifi is homologous to the fiber S°.

Algorithm Veering is explained in [Citation1, Section 4]. It has been implemented by Mark Bell in flipper [Citation3].

Algorithm TeichmüllerPolynomial

Computing the Teichmüller polynomial of a fibered face of the Thurston norm ball

Input: A pseudo-Anosov homeomorphism ψ:SS

Output: The Teichmüller polynomial of the face F in H2(N,N;R), where N is the mapping torus of ψ and [S]R+·F

1: (V,w): = Veering(ψ)

2: C:=BoundaryCycles(V,w)

3: if the j-th torus cusp is not filled in N, remove C[j] from the list C

4: Θ:= Specialization(V,TautPolynomial(V),C)

5: return Θ

Proposition 8.6.

Let ψ:SS be a pseudo-Anosov homeomorphism. Denote by N its mapping torus. Let F be the fibered face of the Thurston norm ball in H2(N,N;Z) such that [S]R+·F. Then TeichmüllerPolynomial (ψ) is equal to the Teichmüller polynomial ΘF of F.

Proof.

Let S° denote the surface obtained from S by puncturing it at the singularities of the invariant foliations of ψ. The pair (V,w) on line 1 consists of the veering triangulation of M=Nsing(F) associated to F, and a nonnegative solution to its system of branch equations which puts S° in a fixed carried position. Then the list C constructed on line 2 consists of dual cycles homologous to the boundary components of S°=Sw. If a boundary torus T of the underlying manifold of V is not filled in N, we remove the dual cycle encoding SwT from the list C. After this, C satisfies HN=HMC, where the meaning of the superscript C is as in (4.3).

Let i:HMHN be the epimorphism determined by the inclusion of M into N. Since i=ρC, by Proposition 8.5 the polynomial Θ on line 4 is equal to i(ΘV) and hence, by Theorem 8.1, to ΘF. □

Declaration of Interest

No potential conflict of interest was reported by the author(s).

Acknowledgements

I am grateful to Samuel Taylor for explaining to me his work on the veering polynomial during my visit at Temple University in July 2019, and subsequent conversations. I thank Saul Schleimer and Henry Segerman for their generous assistance in implementing the algorithms presented in this paper. This implementation is based on their Veering Census [Citation9] and accompanying tools for computing with veering triangulations. I thank Mark Bell for answering my questions about flipper. I also thank the referees for many helpful suggestions.

Additional information

Funding

This work has been written during PhD studies of the author at the University of Warwick under the supervision of Saul Schleimer. It was supported by The Engineering and Physical Sciences Research Council (EPSRC) under grant EP/N509796/1 studentship 1936817.

References

  • Agol, I. (2011). Ideal triangulations of pseudo-Anosov mapping tori. In: Li, W., Bartolini, L., Johnson, J., Luo, F., Myers, R., and Rubinstein, J. H., eds. Topology and Geometry in Dimension Three: Triangulations, Invariants, and Geometric Structures, Vol. 560 of Contemporary Mathematics, pp. 1–19. American Mathematical Society.
  • Baik, H., Wu, C., Kim, K., Jo, T. (2020). An algorithm to compute the Teichmüller polynomial from matrices. Geometriae Dedicata 204: 175–189. doi:10.1007/s10711-019-00450-4
  • Bell, M. (2013–2020). flipper (computer software). pypi.python.org/pypi/flipper.
  • Billet, R., Lechti, L. (2019). Teichmüller polynomials of fibered alternating links. Osaka J. Math. 56(4): 787–806.
  • Burton, B. A. (2011). The Pachner graph and the simplification of 3-sphere triangulations. In Proceedings of the Twenty-Seventh Annual Symposium on Computational Geometry, pp. 153–162. Association for Computing Machinery.
  • Crowell, R., Fox, R. (1963). Introduction to Knot Theory, Volume 57 of Graduate Texts in Mathematics. New York: Springer-Verlag.
  • Fried, D. (2012). Fibrations over S1 with Pseudo-Anosov Monodromy. In Fathi, A., Laudenbach, F., and Poénaru, V., eds., Thurston’s work on surfaces, Chapter 14. Princeton, NJ: Princeton University Press, pp. 215–230.
  • Futer, D., Guéritaud, F. (2013). Explicit angle structures for veering triangulations. Algebr. Geom. Topol. 13(1): 205–235.
  • Giannopolous, A., Schleimer, S., Segerman, H. A census of veering structures. https://math.okstate.edu/people/segerman/veering.html.
  • Hodgson, C. D., Rubinstein, J. H., Segerman, H., Tillmann, S. (2011). Veering triangulations admit strict angle structures. Geom. Topol. 15(4): 2073–2089.
  • Lackenby, M. (2000). Taut ideal triangulations of 3-manifolds. Geom. Topol. 4(1): 369–395.
  • Landry, M., Minsky, Y. N., Taylor, S. J. A polynomial invariant for veering triangulations. arXiv:2008.04836 [math.GT].
  • Lanneau, E., Valdez, F. (2017). Computing the Teichmüller polynomial. Journal of the European Mathematical Society, 19: 3867–3910.
  • McMullen, C. T. (2000). Polynomial invariants for fibered 3-manifolds and Teichmüller geodesics for foliations. Ann. Scient. Éc. Norm. Sup., 33(4): 519–560.
  • Norman, C. (2012). Finitely Generated Abelian Groups and Similarity of Matrices over a Field. Springer Undergraduate Mathematics Series. London: Springer.
  • Northcott, D. (1976). Finite Free Resolutions. Cambridge Tracts in Mathematics, Cambridge: Cambridge University Press.
  • Oertel, U. (1988). Measured Laminations in 3-Manifolds. Transactions of the American Mathematical Society, 305(2): 531–573.
  • Penner, R., Harer, J. (1992). Combinatorics of Train Tracks. Number 125 in Annals of Mathematics Studies. Princeton, NJ: Princeton University Press.
  • Schleimer, S., Segerman, H. From veering triangulations to link spaces and back again. arXiv:1911.00006 [math.GT].
  • Shields, S. L. (1996). The stability of foliations of orientable 3-manifolds covered by a product. Transactions of the American Mathematical Society, 348(11): 4653–4671. doi:10.1090/S0002-9947-96-01631-5
  • Thurston, W. P. (1986). A norm for the homology of 3-manifolds. Memoirs of the American Mathematical Society, 59(339): 100–130.
  • Thurston, W. P. (1998). Hyperbolic structures on 3-manifolds, II: Surface groups and 3-manifolds which fiber over the circle. arXiv:math/9801045 [math.GT].
  • Traldi, L. (1982).The determinantal ideals of link modules. Pacific J. Math, 101(1): 215–222.