1: \documentclass[12pt]{article}
2:
3: \usepackage{epsf}
4: \usepackage{psfrag}
5:
6: \usepackage{amsmath}
7: \usepackage{amsthm}
8: \usepackage{amssymb}
9:
10:
11: \theoremstyle{plain}
12: \newtheorem{thm}{Theorem}[section]
13: \newtheorem{prop}[thm]{Proposition}
14: \newtheorem{cor}[thm]{Corollary}
15: \newtheorem{lem}[thm]{Lemma}
16: \newtheorem{conj}[thm]{Conjecture}
17:
18: \newtheorem{intlemnp}[thm]{Lemma}
19: \newenvironment{lemnp}{\begin{intlemnp}}{\qed \end{intlemnp}}
20: \newtheorem{intthmnp}[thm]{Theorem}
21: \newenvironment{thmnp}{\begin{intthmnp}}{\qed \end{intthmnp}}
22:
23: \theoremstyle{definition}
24: \newtheorem{defn}[thm]{Definition}
25: \newtheorem{ex}[thm]{Example}
26:
27: \theoremstyle{remark}
28: \newtheorem{rem}[thm]{Remark}
29: \newtheorem{prob}[thm]{Problem}
30:
31: \renewcommand{\epsfsize}[2]{0.8\textwidth}
32:
33: \def\thmref#1{Theorem~\ref{#1}}
34: \def\exref#1{Example~\ref{#1}}
35: \def\lemref#1{Lemma~\ref{#1}}
36: \def\lemsref#1{Lemmas~\ref{#1}}
37: \def\propref#1{Proposition~\ref{#1}}
38: \def\propertyref#1{Property~\ref{#1}}
39: \def\chapref#1{Chapter~\ref{#1}}
40: \def\figref#1{Figure~\ref{#1}}
41: \def\remref#1{Remark~\ref{#1}}
42: \def\secref#1{Section~\ref{#1}}
43: \def\appref#1{Appendix~\ref{#1}}
44: \def\propertyref#1{Property~\ref{#1}}
45: \def\presref#1{Presentation~(\ref{#1})}
46:
47: \def\Mod{\text{Mod}}
48:
49: \def\jmt{{\tt jmt}}
50: \def\jsnap{{\tt jsnap}}
51: \def\snappea{{\tt Snap\-Pea}}
52:
53: \def\co{\colon\thinspace}
54:
55: \title{Computing Triangulations of Mapping Tori of Surface Homeomorphisms}
56: \date{}
57: \author{Peter Brinkmann\footnote{%
58: This research was partially conducted by the
59: first author for the Clay Mathematics Institute.}
60: ~and Saul Schleimer}
61:
62: \begin{document}
63: \renewcommand{\thefootnote}{\null}
64: \maketitle%
65: \footnote{{\em 2000 Mathematics Subject Classification.} 57M27, 37E30.}
66: \footnote{{\em Key words and phrases.} Mapping tori of surface automorphisms,
67: pseudo-Anosov automorphisms, mapping class group, conjugacy problem.}
68: \setcounter{footnote}{0}
69: \renewcommand{\thefootnote}{\arabic{footnote}}
70:
71: \begin{abstract}
72: We present the mathematical background of a software package that
73: computes triangulations of mapping tori of surface homeomorphisms, suitable
74: for Jeff Weeks's program \snappea. The package is an extension of the
75: software described in \cite{pbexp}. It consists of two programs. \jmt~
76: computes triangulations and prints them in a human-readable format.
77: \jsnap~ converts this format into \snappea's triangulation file
78: format and may be of independent interest because it allows for quick
79: and easy generation of input for \snappea.
80: As an application, we obtain a new solution to the restricted conjugacy
81: problem in the mapping class group.
82: \end{abstract}
83:
84: \section{Introduction} \label{intro}
85: In \cite{pbexp}, the first author described a software
86: package that provides an
87: environment for computer experiments with automorphisms of surfaces with one
88: puncture.
89: The purpose of this paper is to present the mathematical background of an
90: extension of this package that
91: computes triangulations of mapping tori of such homeomorphisms, suitable
92: for further analysis with Jeff Weeks's program \snappea~\cite{snappea}.\footnote{Software
93: available at {\tt http://thames.northnet.org/weeks/index/SnapPea.html}}
94:
95: Pseudo-Anosov homeomorphisms are of particular interest because their mapping
96: tori are hyperbolic $3$-manifolds of finite volume \cite{thurston2}.
97: The software described in \cite{pbexp} recognizes pseudo-Anosov homeomorphisms.
98: Combining this with the programs discussed here, we obtain a powerful tool
99: for generating and analyzing large numbers of hyperbolic $3$-manifolds.
100:
101: The software package described in \cite{pbexp} takes an automorphism $\phi$
102: of a surface $S$ with one puncture (given as a sequence of Dehn twists) and
103: computes the induced outer automorphism of the fundamental group of $S$,
104: represented by a homotopy equivalence $f\co G\rightarrow G$ of a finite
105: graph $G\subset S$ homotopy equivalent to $S$, together with a
106: loop $\sigma$ in $G$ homotopic to a loop around the puncture of $S$.
107: The map $f$ and the loop $\sigma$ determine $\phi$ up
108: to isotopy \cite[Section~5.1]{pbexp}.
109:
110: In \secref{triang}, we describe an effective algorithm for computing
111: a triangulation of the mapping torus of $\phi\co S\rightarrow S$,
112: given only $f\co G\rightarrow G$ and $\sigma$ (\thmref{main}).
113: We also present an
114: analysis of the complexity of this algorithm (\propref{complexity}).
115: The first part of the
116: software package is a program (called \jmt) that implements
117: this procedure. The program \jmt~prints its output in an intermediate
118: human-readable format.
119:
120: In \secref{conjref}, we explain how to use the software discussed here and
121: the isometry checker of \snappea~to solve the restricted conjugacy problem
122: in the mapping class group (i.e., the question of whether two pseudo-Anosov
123: homeomorphisms are conjugate in the mapping class group). This problem
124: was previously solved in \cite{MR89f:57016} and \cite{MR80f:57003}. One
125: distinguishing feature of our solution is that much of it has already
126: been implemented.
127:
128: \appref{format} discusses the second program in the software package (called
129: \jsnap), which converts the intermediate format of \jmt~into
130: \snappea's triangulation file format. Since \snappea's format is rather
131: complicated, it is not easy to generate input files for \snappea, and
132: \jsnap~may be of independent interest
133: because it allows users to generate input for \snappea~without having
134: to understand \snappea's file format.
135:
136: Finally, in \appref{exsec}, we present some sample computations that exhibit
137: some of the capabilities of the combination of \snappea~and the software
138: discussed here.
139:
140: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
141: % Possible applications as requested by the second referee.
142: Immediate applications of the software described here include an
143: experimental investigation of possible relationships between dynamical
144: properties of pseudo-Anosov homeomorphisms (as computed by the first
145: author's train track software) and topological properties of their
146: mapping tori (as computed by \snappea). For example, one might look for
147: a relationship between growth rate and volume. Another area where the
148: package described in this paper has already been used is the study
149: of slalom knots as introduced by Norbert A'Campo \cite{acampo1}.
150: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
151:
152: The software package is written in Java and should be universally portable.
153: The programs \jmt~and \jsnap~are command line software and can be used to
154: examine a large number of examples as a batch job. A graphical user interface
155: with an online help feature is also available.
156:
157: The package, including binary files, source code, complete online
158: documentation, and a user manual, is available at
159: {{\tt http://www.math.uiuc.edu/ \~{}brinkman/}}.
160:
161: We would like to thank Mladen Bestvina and John Stallings
162: for many helpful discussions,
163: as well as Jeff Weeks and Bill Floyd for explaining \snappea's
164: intricacies. We would also like to express our gratitude to Kai-Uwe Bux
165: for critiquing an early version of this paper.
166:
167: \section{Computing triangulations}\label{triang}
168:
169: Let $\phi\co S\rightarrow S$ be an automorphism of a surface $S$ with one
170: puncture, represented by a homotopy equivalence $f\co G\rightarrow G$ of
171: a finite graph $G$ and a loop $\sigma$ in $G$ representing a loop
172: around the puncture of $S$ (see \secref{intro}).
173: There is no loss in assuming that $f\co G\rightarrow G$ maps vertices to
174: vertices and that the restriction of $f$ to the interior of each edge
175: of $G$ is an immersion.
176:
177: In this section, we outline an effective procedure that computes a
178: triangulation of the mapping torus of $\phi$ given only $f$ and $\sigma$.
179: To this end, we construct a simplicial $2$-complex $K$ and a face
180: pairing $e$ with the following properties.
181: \begin{enumerate}
182: \item \label{prop1} The space $|K|$ is homeomorphic to a torus.
183: \item For each $2$-simplex $\Delta$ of $K$, there exists a $2$-simplex
184: $\Delta'$ of $K$ and an orientation reversing simplicial homeomorphism
185: $e^{\null}_\Delta\co \Delta\rightarrow \Delta'$ such that
186: $e^{-1}_{\Delta'}=e^{\null}_\Delta$.
187: \item The space $K/e$ is homotopy equivalent to the mapping torus of $f$.
188:
189: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
190: % This paragraph addresses the two global comments of the first referee.
191:
192: \item \label{prop2} If we let $M=(\text{cone over~} K)/e$ and obtain $M'$
193: from $M$ by removing the cone point, then $M'$ is a $3$-manifold (in
194: particular, the links of vertices in $M'$ are 2-spheres).\label{3mfcond}
195: \end{enumerate}
196:
197: In this situation, $M'$ is homotopy equivalent to the mapping torus of $f$,
198: which in turn is homotopy equivalent to the mapping torus $M_\phi$ of $\phi$.
199: As $M'$ is a $3$-manifold, $M'$ is homeomorphic to $M_\phi$
200: \cite[page~6]{johann}.
201:
202: The triangulation of $K$ induces a triangulation of $M$, i.e., the tetrahedra
203: of $M$ are cones over the triangles of $K$. The vertices of $K$ give rise to
204: finite vertices of $M$, and the cone point is an ideal vertex corresponding
205: to the torus cusp of $M_\phi$. By computing the links of vertices,
206: \snappea~recognizes finite vertices (whose links are 2-spheres) and ideal
207: vertices (whose links are tori or Klein bottles).
208:
209: Hence, we have reduced to problem of constructing a triangulation of the
210: mapping torus of $\phi$ to the construction of the 2-complex $K$ and face
211: pairing $e$, given only the homotopy equivalence $f:G\rightarrow G$ and
212: the loop $\sigma$.
213: The construction of $K$ and $e$ is the purpose of the remainder of this
214: section.
215:
216: % End of modification.
217: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
218:
219: The construction of $K$ and $e$ proceeds in two steps. We construct the
220: $2$-torus $T$ by gluing annuli using
221: Stallings's folding construction \cite{stallings}.
222: Then we construct a triangulation and a face pairing for each of the annuli.
223:
224: \subsection{Step 1: Subdividing and folding}\label{foldsubsec}
225:
226: We review the notion of subdividing and folding \cite{stallings,hb1}.
227: Let $G,G'$ be finite graphs, and let $f\co G'\rightarrow G$ be a map that maps
228: vertices to vertices and edges to edge paths.
229:
230: If $f$ fails to be an
231: immersion, then there exist two distinct edges $a,~b$ in $G'$ emanating
232: from the same vertex such that
233: $f(a)$ and $f(b)$ have a nontrivial initial path in common.
234: We construct a new graph $G_1'$ by subdividing $a$ (resp.\ $b$) into two
235: edges $a_1,~a_2$ (resp.\ $b_1,~b_2$).
236:
237: Now $f$ factors through $G_1'$, i.e., there are maps
238: $s\co G'\rightarrow G_1'$ and $g\co G_1'\rightarrow G$ such that
239: $f=g\circ s$. Moreover, we can choose $s$ and $g$ such that $s(a)=a_1a_2$,
240: $s(b)=b_1b_2$ and $g(a_1)=g(b_1)$. We obtain a new graph $G_2'$ from $G_1'$
241: by identifying the edges $a_1$ and $b_1$. Then $g$ factors through
242: $G_2'$, i.e., there
243: is a map $h\co G_2'\rightarrow G$ such that $g=h\circ p$, where $p$ is the
244: natural projection $p\co G_1'\rightarrow G_2'$ (see \figref{stfoldpic}). We
245: refer to this process as {\em folding} $a_1$ and $b_1$.
246:
247: \begin{figure}[tb]
248: \renewcommand{\epsfsize}[2]{\textwidth}
249: \psfrag{a}{$a$}
250: \psfrag{b}{$b$}
251: \psfrag{c}{$c$}
252: \psfrag{d}{$d$}
253: \psfrag{a1}{$a_1$}
254: \psfrag{b1}{$b_1$}
255: \psfrag{a2}{$a_2$}
256: \psfrag{b2}{$b_2$}
257: \psfrag{a1eqb1}{$a_1=b_1$}
258: \psfrag{subdivision}{subdivision}
259: \psfrag{fold}{fold}
260: \centerline{\epsfbox{fold0.eps}}
261: \caption{Subdividing and folding.}\label{stfoldpic}
262: \end{figure}
263:
264: \begin{rem}
265: The notion of folds used in \cite{hb1} differs slightly from that
266: introduced in \cite{stallings}. In \cite{hb1}, the authors consider
267: homotopy equivalences $f:G\rightarrow G$, and folding changes {\em both}
268: the domain and the range of $f$, whereas in \cite{stallings}, the author
269: considers maps $f:G'\rightarrow G$, and folding only affects the domain $G'$.
270: The notion of folds used in this paper is a slight modification of the
271: folds in \cite{stallings}.
272: \end{rem}
273:
274: The remainder of this subsection details how to
275: construct a sequence of graphs and maps
276: $$ G=G_0 \overset{s_0}{\longrightarrow} G_1 \overset{p_0}{\longrightarrow} G_2
277: \ldots G_{2n-2} \overset{s_{n-1}}{\longrightarrow} G_{2n-1}
278: \overset{p_{n-1}}{\longrightarrow} G_{2n} \overset{g_{n}}{\longrightarrow} G$$
279: such that
280: $$f=g_{n}\circ p_{n-1} \circ s_{n-1} \circ \ldots \circ p_0 \circ s_0,$$
281: where $s_i\co G_{2i}\rightarrow G_{2i+1}$ is a subdivision,
282: $p_i\co G_{2i+1}\rightarrow G_{2i+2}$ is a Stallings fold,
283: and $g_{n}\co G_{2n}\rightarrow G_0$ is an immersion.
284: Since $f$ is a homotopy equivalence, $g_{n}$ will be onto, hence a
285: homeomorphism. Moreover, for each $i=0,\ldots,2n$, we will construct a
286: loop $\sigma_i$ in $G_i$ corresponding to a loop around the puncture of $S$.
287:
288: Let
289: $f\co G\rightarrow G$ be induced by a homeomorphism $\phi\co S\rightarrow S$,
290: and let $\sigma$ denote an edge loop in $G$ corresponding to a loop around the
291: puncture of $S$. Let $G=G_0$, $g_0=f\co G_0\rightarrow G$, and
292: $\sigma_0=\sigma$.
293:
294: Suppose that $g_0$ is not an immersion. Then there exist two edges $a,~b$
295: emanating from the same vertex in $G_0$ such that $g_0(a)$ and $g_0(b)$ have
296: a common initial segment. Since $g_0$ is induced by the homeomorphism
297: $\phi\co S\rightarrow S$, we can find $a$ and $b$ such that $a$ and $b$ are
298: adjacent in the embedding of $G_0$ in $S$.
299:
300: Since the loop $\sigma_0$ in $G$ is homotopic to a loop around the puncture,
301: $a$ and $b$ will be adjacent in the spelling of $\sigma_0$. Hence, we can
302: detect $a$ and $b$ algorithmically by looking for cancellation between the
303: images of adjacent edges in the spelling of $\sigma_0$.
304:
305: We obtain $G_1$ from $G_0$ by subdividing
306: $a$ and $b$, and we obtain $G_2$ from $G_1$ by folding the initial segments
307: of $a$ and $b$.
308: As above, we construct maps $s_0\co G_0\rightarrow G_1$,
309: $p_0\co G_1\rightarrow G_2$,
310: and $g_1\co G_2\rightarrow G$ such that $g_0=g_1\circ p_0\circ s_0$.
311: Let $\sigma_1 = s_0(\sigma_0)$ and obtain $\sigma_2$ from $p_0(\sigma_1)$
312: by tightening.
313: Since the edges $a$ and $b$
314: are adjacent in the embedding of $G$ in $S$, the embedding of $G_0$ in $S$
315: induces an embedding of $G_1$ and $G_2$ in $S$, and $\sigma_1$ and $\sigma_2$
316: are homotopic to $\sigma_0$ in $S$.
317:
318: Note that the {\em size} of $g_1$, i.e., the sum of the lengths of the
319: images under $g_1$ of the edges in $G_2$, is strictly smaller than the
320: size of $g_0$.
321: Hence, after repeating this construction finitely many times, we reach
322: a map $g_{n}\co G_{2n}\rightarrow G$ that cannot be folded and thus has
323: to be an immersion. We have found the desired sequence of subdivisions
324: and folds.
325:
326: \begin{ex}\label{ex1}
327: Let $G$ be the graph
328: with one vertex and four edges, labeled $a,\ldots,d$, embedded in a punctured
329: surface $S$ of genus $2$ as shown in \figref{embed}. We consider the
330: following homotopy equivalence $f\co G\rightarrow G$ induced by an
331: automorphism of $S$.
332: \begin{figure}[tb]
333: \renewcommand{\epsfsize}[2]{0.45\textwidth}
334: \psfrag{a}{$a$}
335: \psfrag{b}{$b$}
336: \psfrag{c}{$c$}
337: \psfrag{d}{$d$}
338: \centerline{\epsfbox{embed.eps}}
339: \caption{The graph $G$ embedded in the surface $S$. The corners of the octagon
340: correspond to the puncture of $S$. Two faces of the octagon are glued via an
341: orientation-reversing map if the edge labels match up. }
342: \label{embed}
343: \end{figure}
344:
345: \begin{eqnarray*}
346: f(a)&=&a\underline{cd\bar c\bar b}\\
347: f(b)&=&bc\bar d\bar cb\underline{cd\bar c\bar b}\\
348: f(c)&=&bc\bar d\bar d\\
349: f(d)&=&dd\bar c\bar bd\\
350: \sigma&=&a\bar b\bar abc\bar d\bar cd\\
351: \end{eqnarray*}
352: In $f(\sigma)$, cancellation occurs between the underlined parts of $f(a)$
353: and $f(\bar b)$, and we subdivide $a$ and $b$ in preparation for folding, which
354: gives us the maps $s_0\co G\rightarrow G_1$ and $g_1\co G_1\rightarrow G$
355: (see \figref{stfoldpic}).
356: In order to reduce notational complexity, we only change the labels of
357: those edges that are subdivided.
358: \begin{eqnarray*}
359: s_0(a)&=&a_1a_2\\
360: s_0(b)&=&b_1b_2\\
361: s_0(c)&=&c\\
362: s_0(d)&=&d\\
363: \sigma_1&=&a_1a_2\bar b_2\bar b_1\bar a_2\bar a_1b_1b_2c\bar d\bar cd\\
364: \end{eqnarray*}
365:
366: Now we fold the edges $\bar{a_2}$ and $\bar{b_2}$.
367: \begin{eqnarray*}
368: p_0(a_1)&=& a_1\\
369: p_0(a_2)&=& b_2\\
370: p_0(b_1)&=& b_1\\
371: p_0(b_2)&=& b_2\\
372: p_0(c)&=&c\\
373: p_0(d)&=&d\\
374: \end{eqnarray*}
375:
376: Finally, we compute the map $g_1\co G_2\rightarrow G$.
377:
378: \begin{eqnarray*}
379: g_1(a_1)&=& a\\
380: g_1(b_1)&=& bc\bar d\bar cb\\
381: g_1(b_2)&=& cd\bar c\bar b\\
382: g_1(c)&=& bc\bar d\bar d\\
383: g_1(d)&=& dd\bar c\bar bd\\
384: \sigma_2&=&a_1\bar b_1\bar b_2\bar a_1b_1b_2c\bar d\bar cd\\
385: \end{eqnarray*}
386:
387: \end{ex}
388:
389: \subsection{Step 2: Triangulating annuli}\label{triangsec}
390:
391: We can interpret the loops $\sigma_i$ as immersions
392: $\sigma_i\co S^1\rightarrow G_i$. The preimage of the vertex set of $G_i$
393: subdivides $S^1$ into intervals, and the restriction of $\sigma_i$ to such
394: an interval is a homeomorphism onto the interior of an edge in $G_i$. Hence,
395: we can label each interval with the corresponding edge in $G_i$.
396: We refer to this construction as {\em spelling $\sigma_i$
397: along $S^1$}.
398:
399: Now, for each $i\in\{0,\ldots,2n\},$ we take an annulus $A_i$ and
400: spell the word $\sigma_i$ along
401: one boundary component and $\sigma_{i+1}$ along the other.
402: We orient the two boundary components of $A_i$ such that they are
403: freely homotopic as oriented loops.
404:
405: This labeling
406: defines a gluing of $A_i$ and $A_{i+1}$, and the homeomorphism
407: $g_n\co G_{2n}\rightarrow G=G_0$ induces a gluing of $A_{2n-1}$ and $A_0$
408: (which we refer to as the {\em final gluing}),
409: giving us the desired torus $T$ (see \figref{layerpic}). \figref{exglfig}
410: shows the gluing of $A_0$ and $A_1$ for \exref{ex1}.
411:
412: \begin{figure}[tb]
413: \renewcommand{\epsfsize}[2]{0.5\textwidth}
414: \psfrag{fold}{fold}
415: \psfrag{subdivision}{subdivision}
416: \psfrag{finalgl}{final gluing}
417: \centerline{\epsfbox{layers.eps}}
418: \caption{Decomposition into annuli.}\label{layerpic}
419: \end{figure}
420:
421: \begin{figure}[tb]
422: \renewcommand{\epsfsize}[2]{0.9\textwidth}
423: \psfrag{A0}{$A_0$}
424: \psfrag{A1}{$A_1$}
425: \psfrag{a}{$a$}
426: \psfrag{b}{$b$}
427: \psfrag{c}{$c$}
428: \psfrag{d}{$d$}
429: \psfrag{a1}{$a_1$}
430: \psfrag{a2}{$a_2$}
431: \psfrag{b1}{$b_1$}
432: \psfrag{b2}{$b_2$}
433: \psfrag{D0}{$\Delta_0$}
434: \psfrag{D0p}{$\Delta_0'$}
435: \psfrag{D1}{$\Delta_1$}
436: \psfrag{D1p}{$\Delta_1'$}
437: \psfrag{D2}{$\Delta_2$}
438: \psfrag{D2p}{$\Delta_2'$}
439: \centerline{\epsfbox{glue1.eps}}
440: \caption{The gluing of $A_0$ and $A_1$ for \exref{ex1}.}\label{exglfig}
441: \end{figure}
442:
443: Fix some $i\in\{0,\ldots,2n\}$ and spell $\sigma_i$ along $S^1$. Notice that
444: each label on $S^1$ occurs twice, once for each direction (see \exref{ex1} and
445: \figref{embed}). If we identify
446: corresponding intervals, we obtain the graph $G_i$, and if we take the cone
447: over $S^1$, remove the cone point, and identify intervals with identical
448: labels, then we obtain the surface $S$ \cite[Section~5.1]{pbexp}.
449:
450: Hence, we only need to extend the edge pairing on the boundary of the
451: annulus $A_i$ to an appropriate face pairing of a triangulation of all of
452: $A_i$. Recall that we want to choose the face pairing in such a way that
453: the cone over $T$ (with the cone point removed) becomes a $3$-manifold
454: when we identify corresponding triangles.
455:
456: We first find a suitable triangulation of an annulus $A_{2i}$
457: corresponding to a subdivision $s_i$. We decompose $A_{2i}$ into rectangles
458: corresponding to edges that are not subdivided and pentagons corresponding
459: to those edges that are subdivided
460: (see \figref{exglfig}). The edge pairing on the boundary of $A_{2i}$ induces
461: a pairing of rectangles (resp.\ pentagons).
462: Finding a triangulation of $A_{2i}$ that is compatible with this pairing is
463: straightforward.
464:
465: We now construct a suitable triangulation of an annulus $A_{2i+1}$
466: corresponding to a fold $p_i$. Edges that are not involved in the fold give
467: rise to paired rectangles contained in $A_{2i+1}$ (see \figref{exglfig}),
468: and as above, we easily find a triangulation of these rectangles that is
469: compatible with the pairing.
470:
471: Let $a, b$ denote the two edges involved in the fold, i.e., we have
472: $p_i(a)=p_i(b)=b'$. By exchanging $a$ and $b$ or reversing the orientation
473: of $a$ and $b$ as necessary, we may assume that the loop $\sigma_{2i+1}$
474: has a subpath of the form $w=a\bar{b}u\bar{a}$ or $w=a\bar{b}ub$, where $u$
475: is a path that contains neither $a$ nor $b$. For concreteness, we focus on
476: the case $w=a\bar{b}u\bar{a}$. The first fold of \exref{ex1} falls into
477: this case, with $w=a_2\bar{b_2}\bar{b_1}\bar{a_2}$.
478: The construction in the remaining case is similar.
479:
480: The loop $\sigma_{2i+2}$ has a corresponding subpath of the form
481: $w'=u'\bar{b'}$. Let $\Delta_0$ be the triangle spanned by the initial
482: endpoint of $w'$ and the occurrence of $a$ in $w$. We pair $\Delta_0$ with
483: the triangle $\Delta_0'$ spanned by the terminal endpoint of $w'$ and
484: the occurrence of $\bar{a}$ in $w$ (see \figref{exglfig}).
485:
486: Let $\Delta_1$ be the triangle spanned by the occurrence of $\bar{b}$ in
487: $w$ and the initial endpoint of $w'$, and let $\Delta_2$ be the triangle
488: spanned by the occurrence of $\bar{b'}$ in $w'$ and the terminal endpoint
489: of $u$. Observe that after identifying paired edges, $\Delta_1$ and $\Delta_2$
490: have a side in common, so we can think of $\Delta_1$ and $\Delta_2$ as spanning
491: a rectangle between $\bar{b}$ and $\bar{b'}$, which induces a triangulation of
492: the rectangle spanned by the occurrence of $b$ in $\sigma_{2i+1}$ and the
493: occurrence of $\bar{b}$ in $\sigma_{2i+2}$ (see \figref{exglfig}).
494: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
495: % A bunch of new stuff in response to both referees.
496: This completes the triangulation
497: and face pairing of $A_{2i+1}$, which completes our construction.
498:
499: Given the triangulation of $A_{2i+1}$ constructed above, we can think of
500: the annulus $A_{2i+1}$ as interpolating between the graph $G_{2i+1}$ and
501: the graph $G_{2i+2}$. In other words, we think of the fold as occurring
502: continuously, by identifying larger and larger segments of the edges $a$
503: and $b$ (see \figref{contfold}). Moreover, this continuous folding process
504: is compatible with the embedding of the graphs in the surface $S$. This
505: observation shows that the complex $K$ and its triangulation have the
506: desired properties, in particular \propertyref{prop2}.
507:
508: \begin{figure}[tb]
509: \renewcommand{\epsfsize}[2]{0.9\textwidth}
510: \psfrag{a1}{$a_1$}
511: \psfrag{a2}{$a_2$}
512: \psfrag{a1}{$a_1$}
513: \psfrag{a1}{$a_1$}
514: \psfrag{b1}{$b_1$}
515: \psfrag{b2}{$b_2$}
516: \psfrag{b1}{$b_1$}
517: \psfrag{b2}{$b_2$}
518: \psfrag{b1}{$b_1$}
519: \psfrag{b2}{$b_2$}
520: \centerline{\epsfbox{contfold.eps}}
521: \caption{Continuous fold for \exref{ex1}.}
522: \label{contfold}
523: \end{figure}
524:
525: Summing up, we have obtained the following main result of this paper.
526:
527: \begin{thmnp}\label{main}
528: Let $f$ be a homotopy equivalence of a finite graph $G$, representing
529: a homeomorphism $\phi$ of a once-punctured surface. Then the following
530: is an effective procedure for computing a triangulation of the mapping
531: torus of $\phi$.
532:
533: \begin{enumerate}
534: \item Decompose the homotopy equivalence $f\co G\rightarrow G$ into a sequence
535: of subdivisions and folds, followed by a homeomorphism (\secref{foldsubsec}).
536: \item Obtain the torus $K$ as a gluing of one annulus for each subdivision
537: and fold in the above decomposition (\figref{layerpic}).
538: \item Triangulate the individual annuli and construct a face pairing
539: (\secref{triangsec}).
540: \item Construct a triangulation of the mapping torus of the surface
541: homeomorphism $\phi$ by taking the cone of $K$ and glue tetrahedra
542: according to the face pairing.
543: \end{enumerate}
544:
545: \end{thmnp}
546:
547: The program \jmt~is an implementation of this procedure.
548:
549: \subsection{Complexity analysis}
550:
551: The purpose of this subsection is to obtain an estimate on the number
552: of tetrahedra in the triangulation that we have constructed.
553:
554: Recall that we defined the size of a map $h\co G'\rightarrow G$ to be
555: the sum of the lengths (in the usual path metric) of the images
556: of the edges of $G'$. For example, the size of the first
557: map in \exref{ex1} is 23. Let $S(h)$ denote the size of $h$.
558:
559: We say that a map $g\co G'\rightarrow G$ is {\em tight} if
560: \begin{enumerate}
561: \item for every edge $e$ of $G'$, the restriction of $g$ to the
562: interior of $e$ is an immersion, and
563: \item for every vertex $v$ of $G'$, there are two edges emanating from
564: $v$ that cannot be folded (not even after a subdivision).
565: \end{enumerate}
566: Note that tightness can always be achieved by homotopy.
567:
568: \begin{prop}\label{complexity}
569: Let $f:G\rightarrow G$ be a tight homotopy equivalence representing a
570: homeomorphism $\phi$ of a once-punctured surface of genus $g$, and
571: assume that $G$ has no vertices of valence less than three.
572: Then the number of tetrahedra in the triangulation
573: of $M_\phi$ is bounded by $16(5g-2)S(f)$.
574: \end{prop}
575:
576: \begin{proof}
577:
578: Since folding reduces size and annuli come in pairs (a subdivision
579: annulus followed by a folding annulus), the number of annuli is bounded
580: above by $2S(f)$. A simple application of Euler characteristics shows
581: that $G$ has no more than $6g-3$ edges because the valence of each vertex
582: is at least three. Subdividing and folding, however, may create additional
583: edges as well as vertices of valence one or two, so we need to understand
584: the effect of subdividing and folding on the number of edges.
585:
586: To this end, we introduce the notion of {\em partial folds}, i.e.,
587: folds where both participating edges have to be subdivided, and
588: {\em full folds}, i.e., folds where at least one of the participating
589: edges is not subdivided \cite{hb1}. Clearly, a subdivision followed
590: by a full fold does not increase the number of edges, whereas a
591: subdivision followed by a partial fold increases the number of edges
592: by one.
593:
594: A partial fold reduces the number of possible folds by one
595: because the map resulting from it is an immersion around
596: the new vertex created by the fold, so the only folds that
597: are possible after a partial fold are those that were available before.
598:
599: Similarly, a full fold does not increase the number of possible folds.
600: This means that the number of partial folds that occurs in our construction
601: is bounded by the number of folds that the map $f\co G\rightarrow G$
602: admits. Since $f$ is tight, the number of folds at one vertex $v$ is bounded
603: by $\text{val}(v)-2$. Summing up, we see that the number of possible folds
604: is bounded by
605: \[
606: \sum_{v\in G^{(0)}}(\text{val}(v)-2)=-2\chi(G)=4g-2.
607: \]
608:
609: Hence, the number of edges after a fold is bounded by $6g-3+4g-2=10g-5$.
610: Subdivisions increase the number of edges, so the number of edges at any
611: point in our construction is bounded by $10g-4.$
612:
613: The number of tetrahedra belonging to one annulus
614: is bounded above by $8(5g-2)$ (four tetrahedra per edge), which gives
615: us a theoretical upper bound of $16(5g-2)S(f)$ on the number of tetrahedra
616: in our triangulation of $M_\phi$.
617: \end{proof}
618:
619: Similar arguments show that for fixed genus, the time it takes to compute
620: a triangulation is linear in the size of the input. We note that in
621: practice, partial folds seldom occur, and triangulations
622: tend to be considerably smaller than the bound given in \propref{complexity}.
623:
624: % end of a bunch of new stuff...
625: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
626:
627: \input{conj.tex}
628:
629: \appendix
630:
631: \section{Generating input for \snappea}\label{format}
632:
633: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
634: % This addresses the third global comment of the first referee.
635:
636: In order to generate input for \snappea, the output of \jmt~has
637: to be translated into \snappea's triangulation file format by a second
638: program (called \jsnap).
639: The purpose of this section is to discuss the intermediate format,
640: which allows for quick and easy generation of input for \snappea.
641: We illustrate this format with a familiar example from \cite{notes}.
642:
643: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
644:
645: The intermediate format admits two types of input lines, for tetrahedra
646: and for gluings. An input line defining a tetrahedron has the form
647: ``{\tt T~$v_1~v_2~v_3~v_4$},'' where $v_1,\ldots,v_4$ are distinct labels of
648: the vertices. Tetrahedra are glued implicitly if they have three vertices
649: in common, and they can be glued explicitly by entering a line of the form
650: ``{\tt G~$v_1~v_2~v_3~w_1~w_2~w_3$},'' where $v_1,v_2,v_3$ and $w_1,w_2,w_3$
651: are the labels of two faces of tetrahedra. In this gluing, the side $[v_1,v_2]$
652: is glued to the side $[w_1,w_2]$, the side $[v_2,v_3]$ is glued to the side
653: $[w_2,w_3]$, etc. Empty lines and comments beginning with `//' are also
654: allowed.
655:
656: Although the four vertex labels of a tetrahedron have to be distinct, two
657: or more vertices of a tetrahedron may be identified after gluing. Distinct
658: vertex labels are only needed in order to uniquely specify the sides of
659: tetrahedra.
660:
661: \begin{ex}[Figure-eight knot]\label{fig81}
662: Consider the familiar figure-eight knot (see \figref{fig8knot}). An ideal
663: triangulation of the complement of this knot can be expressed as a gluing
664: of two tetrahedra \cite[Chapter~1]{notes} (see \figref{fig8triang}).
665: \begin{figure}[tb]
666: \renewcommand{\epsfsize}[2]{0.4\textwidth}
667: \centerline{\epsfbox{fig8knot.eps}}
668: \caption{The figure-eight knot.}\label{fig8knot}
669: \end{figure}
670:
671: \begin{figure}[tb]
672: \renewcommand{\epsfsize}[2]{0.7\textwidth}
673: \psfrag{a}{$a$}
674: \psfrag{b}{$b$}
675: \psfrag{c}{$c$}
676: \psfrag{d}{$d$}
677: \psfrag{e}{$e$}
678: \centerline{\epsfbox{fig8.eps}}
679: \caption{The figure-eight knot complement, expressed as a gluing of two
680: ideal tetrahedra. Triangles are glued such that the line style and the
681: direction of arrows are matched \cite[Chapter~1]{notes}.}
682: \label{fig8triang}
683: \end{figure}
684:
685: We encode the gluing as follows.
686: \begin{verbatim}
687: T a b c d
688: T b c d e
689: G b e d a c d
690: G c b e a b d
691: G c e d a c b
692: \end{verbatim}%
693:
694: Feeding the above five lines into \jsnap~yields an encoding of the
695: triangulation in \snappea's file format. According to \snappea, the
696: fundamental group of the resulting manifold $M$ has the following
697: presentation, which we modify by a sequence of Tietze transformations
698: \cite[Chapter~II.2]{ls}.
699: \begin{align}
700: \pi_1(M)~&\cong~<x,~y~|~\bar y\bar x\bar x\bar x\bar yxyyx=1>\label{fig8snap}\\
701: &\cong~<x,~y~,~z~|~\bar y\bar x\bar x\bar x\bar yxyyx=1,~y=z\bar x>\notag\\
702: &\cong~<x,~z~|~x\bar z\bar x\bar x\bar zxz\bar xz=1>\notag\\
703: &\cong~<x,~z~|~\bar xzx\bar z\bar x\bar x\bar zxz=1>\label{fig8gp}
704: \end{align}
705: \presref{fig8gp} is the presentation of the fundamental group of
706: the complement of the figure-eight knot given in \cite[Example~3.8]{knots}.
707: \end{ex}
708:
709: While \snappea's format is an extremely efficient representation of
710: triangulations, understanding it requires some effort. The program
711: \jsnap~acts as an interface between \snappea~and the human user.
712: If you can draw or visualize a triangulation of a $3$-manifold,
713: then you can also enter it into \jsnap.
714:
715: \section{Sample Computations}\label{exsec}
716:
717: We present some sample computations that illustrate the power of the software
718: discussed here. We define surface automorphisms as compositions of Dehn twists
719: with respect to the set of curves shown in \figref{stdtwist}.
720: We equip the surface with a normal vector field. When twisting with respect
721: to a curve $c$, we turn right whenever we hit $c$ (resp.\ left for inverse
722: twists). The set of these Dehn twists generates the mapping class group
723: \cite{lickorish}.
724:
725: \begin{figure}[tb]
726: \renewcommand{\epsfsize}[2]{0.8\textwidth}
727: \psfrag{a0}{$a_0$}
728: \psfrag{b0}{$b_0$}
729: \psfrag{c0}{$c_0$}
730: \psfrag{d0}{$d_0$}
731: \psfrag{a1}{$a_1$}
732: \psfrag{b1}{$b_1$}
733: \psfrag{c1}{$c_1$}
734: \psfrag{d1}{$d_1$}
735: \centerline{\epsfbox{stdtwist.eps}}
736: \caption{A set of generators of the mapping class group.}
737: \label{stdtwist}
738: \end{figure}
739:
740: We first present an example for which we can easily verify correctness.
741:
742: \begin{ex}[Figure-eight knot revisited]\label{fig82}
743: Let $S$ be a punctured torus, and let $\phi\co S\rightarrow S$ be given by
744: $$\phi=D^{-1}_{a_0}D^{\null}_{d_0}.$$
745: The complement of the figure-eight knot (see \figref{fig8knot}) is
746: homeomorphic to the mapping torus of $\phi$ (we will verify this soon).
747: Given this composition of Dehn twists, the train track software described in
748: \cite{pbexp} determines that $\phi$
749: is pseudo-Anosov with growth rate $\lambda\approx 2.61803399,$ and
750: \snappea~determines that the mapping torus $M_\phi$ is a hyperbolic
751: $3$-manifold of volume $V\approx 2.02988321$ with one torus cusp.
752:
753: Moreover, the train track software computes the following topological
754: representative $f\co G\rightarrow G$ of $\phi$, where $G$ is a graph with one
755: vertex and two edges.
756: \begin{eqnarray*}
757: f(a)&=&ba\\
758: f(b)&=&bba\\
759: \sigma&=&a\bar b\bar ab\\
760: \end{eqnarray*}
761: This yields the following presentation of the fundamental group of the
762: mapping torus $M_\phi$ of $\phi$.
763: $$ \pi_1(M_\phi)~\cong~<a,~b,~t~|~\bar tat=ba,~\bar tbt=bba> $$
764: A few Tietze transformations
765: show that $\pi_1(M_\phi)$ is the fundamental group of the figure-eight
766: knot complement.
767: \begin{align*}
768: \pi_1(M_\phi)~&\cong~<a,~b,~t~|~\bar tat=ba,~\bar tbt=bba>\\
769: &\cong~<a,~t~|~t\bar a\bar ata\bar t\bar a\bar ta = 1>\\
770: &\cong~<a,~c~|~\bar aca\bar c\bar a\bar a\bar cac = 1>
771: \end{align*}
772: As in \exref{fig81}, we have obtained the presentation given in
773: \cite[Example~3.8]{knots}.
774: Finally, the presentation of $\pi_1(M_\phi)$ computed by \snappea~is
775: $$\pi_1(M_\phi)~\cong~<x,~y~|~\bar x\bar y\bar y\bar y\bar xyxxy = 1>,$$
776: which agrees with \presref{fig8snap} in \exref{fig81}.
777:
778: Alternatively, we can run \snappea's isometry checker on \exref{fig81} and
779: \exref{fig82} in order to see that we get the same hyperbolic $3$-manifold
780: in both examples.
781: \end{ex}
782: \begin{ex}[Genus 3]
783: Let $S$ be a surface of genus $3$ with one puncture, and let
784: $\phi\co S\rightarrow S$ be given by
785: $$\phi=D^{\null}_{d_0}D^{\null}_{c_0}D^{\null}_{d_1}D^{\null}_{c_1}D^{\null}_{d_2}D^{-1}_{a_2}.$$
786: The train track software identifies $\phi$ as a pseudo-Anosov
787: homeomorphism with growth rate $\lambda\approx 2.04249053$, and \snappea~
788: determines that the mapping torus $M_\phi$ is a hyperbolic $3$-manifold of
789: volume $V\approx 4.93524268$ with one torus cusp.
790: \end{ex}
791:
792: These applications only show a small part of all the possibilities. The train
793: track software computes a plethora of information about surface homeomorphisms
794: \cite{pbexp}, and \snappea~allows for a detailed analysis of (hyperbolic)
795: $3$-manifolds. We believe that the combination of the two packages may
796: become a valuable tool for topologists.
797:
798: \bibliographystyle{alpha}
799: \bibliography{$GLOBAL/all}
800: \par
801:
802: {\noindent \sc Peter Brinkmann\\
803: Department of Mathematics\\
804: 273 Altgeld Hall\\
805: 1409 W.\ Green Street\\
806: Urbana, IL 61801, USA\\
807: E-mail: brinkman@math.uiuc.edu\\
808: \\}
809: {\noindent \sc Saul Schleimer\\
810: Department of Mathematics\\
811: UC Berkeley\\
812: Berkeley, CA 94720, USA\\
813: E-mail: saul@math.berkeley.edu\\
814: \\}
815:
816: \end{document}
817:
818: