Verified computations for closed hyperbolic 3-manifolds
Matthias Goerner

TL;DR
This paper presents a verified computational method for confirming hyperbolic structures on closed 3-manifolds using interval arithmetic, extending previous techniques and solving an open problem in knot theory.
Contribution
It introduces a new theoretical result ensuring redundancy among edge equations, enabling verification of hyperbolic structures on closed 3-manifolds.
Findings
Successfully verified structures on known manifolds
Determined hyperbolic branched double covers for knots up to 14 crossings
Extended verification methods to closed 3-manifolds
Abstract
Extending methods first used by Casson, we show how to verify a hyperbolic structure on a finite triangulation of a closed 3-manifold using interval arithmetic methods. A key ingredient is a new theoretical result (akin to a theorem by Neumann-Zagier and Moser for ideal triangulations upon which HIKMOT is based) showing that there is a redundancy among the edge equations if the edges avoid "gimbal lock". We successfully test the algorithm on known examples such as the orientable closed manifolds in the Hodgson-Weeks census and the bundle census by Bell. We also tackle a previously unsolved problem and determine all knots and links with up to 14 crossings that have a hyperbolic branched double cover.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
[email protected] \urladdrhttp://unhyperbolic.org/
\subjclass
[2010]57M50, 65G40
Verified computations for
closed hyperbolic 3-manifolds
Matthias Goerner
Abstract
Extending methods first used by Casson, we show how to verify a hyperbolic structure on a finite triangulation of a closed 3-manifold using interval arithmetic methods. A key ingredient is a new theoretical result (akin to a theorem by Neumann-Zagier and Moser for ideal triangulations upon which HIKMOT is based) showing that there is a redundancy among the edge equations if the edges avoid “gimbal lock”. We successfully test the algorithm on known examples such as the orientable closed manifolds in the Hodgson-Weeks census and the bundle census by Bell. We also tackle a previously unsolved problem and determine all knots and links with up to 14 crossings that have a hyperbolic branched double cover.
Contents
- 1 Introduction
- 2 Hyperbolic structures on finite triangulations
- 3 Cocycles
- 4 Extending cocycles on genus 0 surfaces
- 5 Extending cocycles on triangulations
- 6 Examples of (non-)gimbal lock
- 7 Algorithm
- 8 Results
- 9 Discussion
- 10 Appendix: The uncited theorem HIKMOT relies on
1 Introduction
Up to isometry, a finite hyperbolic 3-simplex is determined by its edge parameters, by which we mean either the edge lengths or the respective entries of its vertex Gram matrix . Thus, an assignment of a parameter to each edge of a finite triangulation of a closed 3-manifold determines a hyperbolic structure for each -simplex of . If certain conditions are fulfilled, the hyperbolic structures on the individual simplices are compatible and form a hyperbolic structure on the manifold (see [Hea05] and Section 2).
Existing software (such as Casson’s Geo [Cas] and Heard’s Orb [Hea]) finds a numerical approximation for the edge parameters using Newton’s method and reports whether the necessary equations are fulfilled within an error smaller than a certain . This suggests but does not prove hyperbolicity. The aim of this paper is to describe how to take such a numerical approximation and rigorously prove hyperbolicity by giving real intervals that are verified to contain a solution to all the necessary equations and inequalities. An algorithm either returning such intervals or (conservatively) reporting failure is described in Section 7. The algorithm is a hyperbolicity verification procedure but not a hyperbolicity decision procedure since its failure just means that the given candidate approximation was not close enough to a hyperbolic structure or needs to be perturbed to avoid “gimbal lock” (explained below). An implementation of this algorithm is available at [Goe19b]. Therefore, this paper is achieving for finite triangulations what Hoffman, Ichihara, Kashiwagi, Masai, Oishi, and Takayasu [HIK*+*16] did for ideal triangulations (HIKMOT’s functionality has been integrated into SnapPy [CDGW] by the author since version 2.3).
This is motivated by applications that benefit from using geometric finite triangulations in place of geometric spun triangulation. In particular, such applications no longer need to overcome the incompleteness locus. An example is the generation of cohomology fractals for a closed hyperbolic 3-manifold. As shown in [BGSS20, Figure 8.7], the incompleteness locus produces artifacts in the raytraced image of a cohomology fractal which simply disappear when using finite triangulations instead. Another example is the algorithm proposed in [HHGT17] to rigorously compute the length spectrum for a hyperbolic 3-manifold. This algorithm requires tiling \H{^}3 with translates of a fundamental domain to cover a ball of specified radius and thus would not work if there is incompleteness locus.
An even more basic motivation is proving hyperbolicity of a closed 3-manifold by finding a triangulation admitting a geometric structure. Restricting ourselves to just spun triangulations introduces a bottleneck. For example, the obvious spun triangulation of a closed census manifold such as m135(1,3) can fail to be geometric. Thus finding a geometric spun triangulation requires drilling and filling (or, in other words, finding a different closed geodesic such that there is a geometric triangulation spun about ). Even worse, some hyperbolic 3-manifolds such as m007(3,1) seem to lack any geometric spun triangulation unless we pass to a cover111In not yet published work, Maria Trnkova has proven that there is no geometric spun triangulation of m007(3,1) with a small number of tetrahedra.. Note that a geometric spun triangulation is known for every orientable closed manifold in the SnapPy census (except for m007(3,1) where a 3-fold cover is needed), see [HIK*+*16]. However, the process of finding such (covers admitting) geometric spun triangulations can be tedious and is not known to be possible in general. Furthermore, passing to a cover can complicate applications such as computing the length spectrum.
Potential future work might generalize the techniques of this paper to Heard’s work [Hea05] on 3-orbifolds and Frigerio and Petronio’s work [FP04] on 3-manifolds with geodesic boundary. To find hyperbolic structures on these, Heard’s program Orb [Hea] uses triangulations with finite as well as ideal and “hyperinfinite” vertices. Note that some of the theory in this paper also carries over to spherical and Euclidean geometry and might generalize to yield methods for verifying spherical or Euclidean structures on finite triangulations.
Like [HIK*+*16], we use interval arithmetic methods such as the interval Newton method or the Krawczyk test. These methods can only show the existence of a solution to a system of equations if the Jacobian matrix is invertible near that solution. If the Jacobian fails to be invertible, these methods can only show the existence of a solution to a subset of the equations. This applies to the edge equations whether we are solving for shapes in the cusped case or for edge lengths in the closed case. Hence, in both cases, we need an additional result showing that there is a redundancy among the edge equations such that solving a suitable subset of them is sufficient. For ideal triangulations, this result is due to Neumann-Zagier [NZ85, Neu92] and Moser [Mos09] (see Appendix). For finite triangulations, we derive such a result in this paper.
Note that while we actually have exactly as many variables as equations in the case of finite triangulations (namely, one per edge), the Jacobian of this system of equations has a kernel at a solution corresponding to a hyperbolic structure. This is because we can move each individual finite vertex of a triangulation in the hyperbolic manifold and obtain a whole family of solutions (see Theorem 9.1). Thus, we need to use a two-step strategy to verify a hyperbolic structure: First, we drop some edge equations and fix an equal number of edge parameters such that we can apply interval arithmetic methods to find intervals verified to contain a solution to the subsystem of equations we kept. Next, we show that this solution is also a solution to the equations we dropped earlier and thus that the intervals for the edge parameters contain a point giving a hyperbolic structure. Interval arithmetic can verify that the error of the dropped equations is small and we will show that if the dropped equations are fulfilled approximately, then they are fulfilled exactly provided that a certain condition we call “gimbal lock” is avoided.
To define gimbal lock, we will look at the complex of doubly-truncated simplices associated to the triangulation and an assignment of -matrices to the edges of the complex computed from the edge parameters (see Section 3). The cocycle condition says that the matrices on the edges of a polygon must multiply to the identity. Since a subset of the edge equations is known to be fulfilled, the cocycle condition is known to hold for some polygons but not necessarily for others. The goal is to show that it holds for all polygons so that we get a -representation of the fundamental group (see Section 4 and 5 and examples in Section 6). Roughly speaking, the idea is that if the product of three small rotations about three axes in generic position is the identity, then each rotation must be the identity. Inspired by the mechanical device called gimbal (see Figure 8), we say that we avoid “gimbal lock”: if a gimbal is not in its locked position, then we can apply any small rotation to the inner-most ring, or equivalently, if we fix the inner-most ring, none of the other rings can be turned.
We describe the resulting algorithm to obtain real intervals in Section 7. The algorithm is effective and able to verify a hyperbolic structure on all 36093 closed orientable manifolds in the Hodgson-Weeks census [HW94] and in the census bundle by Bell [Bel15], see Section 8. Branched double covers of knots or links (or more precisely: double covers of branched over a knot or link) provide a good class of test cases since finding a geometric spun-triangulation of some of them can be challenging. Using finite triangulations instead, we are able to prove the following new result: {theorem} Out of the 313230 knots with up to 15 crossings (not including the unknot), exactly 193839 have a hyperbolic branched double cover.
Out of the 120573 links with up to 14 crossings (with at least two components), exactly 37709 have a hyperbolic branched double cover.
Section 9 concludes with a conjecture that implies that a hyperbolic structure on a finite triangulation can always be perturbed so that the algorithm can verify it.
The appendix in Section 10 points out a gap in the argument (but not the algorithm) of the HIKMOT paper.
Acknowledgements
The author wishes to thank Marc Culler, Nathan Dunfield, Damian Heard, Neil Hoffman, and Christian Zickert for helpful discussions. Special thanks goes to Nathan Dunfield for finding some mistakes and providing some of the examples and some Python scripts for Regina.
2 Hyperbolic structures on finite triangulations
Consider the isometry class of a positively oriented, finite geodesic simplex with vertices labeled in \H{^}3. We briefly review the relationship of the edge lengths and the angles of following [Hea05] with one difference though: we use a slightly simpler definition for the vertex Gram matrix where all diagonal entries are since we are not interested in generalized simplices here. To be consistent with the vertex labels, we [math]-index the rows and columns of a matrix (so denotes the top left-most entry).
Let denote the length of the edge between vertex and . The vertex Gram matrix associated to the simplex is the symmetric -matrix with entries
[TABLE]
The edge lengths as well as the vertex Gram matrix uniquely determine the isometry class of the simplex. Let denote the respective cofactor of which is given by
[TABLE]
where is obtained by deleting the -th row and -th column. The dihedral angle between face and and the angle at vertex of the triangle (derived from the law of cosines) are then given by (also see Figure 3):
[TABLE]
{definition}
Let be a real symmetric -matrix with on the diagonal. We say that is realized if is the vertex Gram matrix of some finite, non-flat simplex.
The following theorem is a special case of [Hea05, Theorem 1.5] (also compare to [Rat94, Theorem 7.2.2]): {lemma} is realized if and only if
has one negative and three positive eigenvalues (which is equivalent to the characteristic polynomial having coefficients , , by the Budan-Fourier theorem [BPcR06]), 2. 2.
for all , and 3. 3.
for all and ,
where denotes the respective cofactor of .
Let be an oriented, finite 3-dimensional triangulation (i.e., all vertex links are -spheres) and let denote the set of edges of . Assume we have an assignment of a length , or equivalently, a parameter to each where the two are related by the formula . This induces a symmetric -matrix for each simplex of where and if and the edge of from vertex to is incident to . Let denote the sum of all dihedral angles incident to the edge of . We can now use [Hea05, Lemma 2.4] to check whether this assignment yields a hyperbolic structure on : {theorem} An assignment of a parameter to each edge of an oriented, finite triangulation induces a hyperbolic structure on if
each matrix is realized (i.e., fulfills the conditions of Lemma 3) and 2. 2.
for every .
3 Cocycles
We will describe how to compute a representation222For consistency on how arrows in a category compose, the loop traversing the loop first and the loop second is denoted by in . from an assignment of parameters as in Theorem 2 using cocycles inspired by [GGZ15, Section 9] as follows: {definition} Let be a group and be a space with a polyhedral decomposition. A -cocycle on is an assignment of elements in to the oriented edges of such that the product around each face is the identity and such that reversing the orientation of an edge replaces the labeling by its inverse.
All cocycles in this section are -cocycles.
Given a matrix fulfilling the conditions in Lemma 3, we will construct a cocycle on the doubly truncated simplex coming from a simplex , see Figure 3. We index a vertex of by the permutation such that the vertex of closest to is , the edge of closest to is , and the face of closest to is . We label an oriented long, middle, or short edge of by respectively if it starts at the vertex indexed by . Let us introduce the notion of standard position to define the -matrices assigned to these edges.
We think of the upper half space model of hyperbolic 3-space as a subset \H{^}3=\{w=z+t\jmath:t>0\} of the quaternions. Recall that \mathrm{Isom}^{+}(\H{^}3)\cong\mathrm{PGL}_{2}(\C)\cong\mathrm{PSL}_{2}(\C) where the action of a -matrix on \H{^}3 is given by
[TABLE]
{definition}
We say that a positively oriented, finite simplex is in -standard position where if vertex
- •
is at ,
- •
at with ,
- •
at with and
- •
at with if is even and otherwise.
An example of this is shown in Figure 4. Geometrically, the motivation for this definition is that two faces of two (not necessarily distinct) simplices line up in \H{^}3 if the respective edge lengths match and the two simplices are in the respective standard positions. More precisely, let be a face of the simplex and of . Let with be a pairing of the two faces. If the edge lengths match under this pairing, then the faces match if each is in -standard position where is any permutation with and .
This definition also gives us a cocycle as follows (also see Figure 4):
{definition}
Consider the isometry class of a finite simplex . Given an oriented edge of , let and be the permutations that index the vertex where starts and, respectively, ends. The natural cocycle on is the cocycle assigning to each edge the -matrix taking from -standard position to -standard position.
Note that we can identify Euclidean 3-vector space isometrically with the tangent space of a point in \H{^}3 such that the tangents corresponding to the -, -, and -axis are parallel to the real line, the imaginary line, respectively, the line (see Figure 4). Thus, we can associate a -matrix to an element in \Isom^{+}(\H{^}3) fixing a (finite) point of \H{^}3. Let
[TABLE]
be the rotation about the -axis by the angle .
{lemma}
The natural cocycle on can be computed from the vertex Gram matrix as follows (apply even permutations to obtain labels for all edges):
[TABLE]
[TABLE]
[TABLE]
Note that and fix the point \jmath\in\H{^}3 and the associated -matrices are:
[TABLE]
{proof}
is an involution exchanging the points and . The associated -automorphism is of the form and exchanges and . An elementary calculation gives the value for .
Consider the hyperbolic plane \H{^}2=\{x+t\jmath:x\in\R,t>0\}\subset\H{^}3. is the composition of the rotation of \H{^}2 about by with the involution fixing the line pointwise. We obtain the -matrix for the rotation of \H{^}2 by conjugating the rotation of the unit disk by with the matrix taking the upper half plane model to the Poincare disk model of hyperbolic 2-space:
[TABLE]
Given an oriented triangulation , let be the complex obtained by replacing each simplex by the double truncated simplex . The long and short edges of about an edge of form a prism, see Figure 3. Given an assignment of edge parameters for , this prism about an edge is a cocycle if and only if the short edges compose to the identity, which is equivalent to being a multiple of . Let denote the complex .
{theorem}
Consider an assignment of a parameter to each edge of an oriented, finite triangulation .
If each matrix is realized, we obtain a natural cocycle on and, thus, a representation (up to conjugation, unless we pick a vertex of as basepoint). 2. 2.
If, furthermore, is a multiple of for every , the cocycle extends to and, thus, yields a representation of . 3. 3.
If, furthermore, for every , the representation is giving a hyperbolic structure on .
{proof}
Note that and in Lemma 3 are involutions and only involve the parameters on the edges of the triangle containing the respective and . Hence, the matrices on two big hexagons on two doubly-truncated simplices are compatible and the hexagons can be identified if the edge parameters on the respective triangles of the corresponding tetrahedra match. This proves \eqrefcocycCondA.
\eqrefcocycCondB follows from the above comment about the prisms being cocycles and the fact that differs from only by a set of 3-balls which do not change .
\eqrefcocycCondC is just restating Theorem 2.
4 Extending cocycles on genus 0 surfaces
Let us define a punctured topological polyhedron which we will use as model for a “vertex link” of when removing some prisms.
{definition}
Let be a topological polyhedron, i.e., a decomposition of an oriented -sphere into polygons. Let be selected two-cells of such that for all . We call a punctured topological polyhedron.
The complex will often be equipped with the following kind of cocycle.
{definition}
Let be a surface with boundary and with a decomposition into polygons. A -cocycle on is a -cocycle where edges in the boundary are labeled by rotations about the -axis.
The goal of this section is to give a criterion when such a cocycle on extends to a -cocycle on .
{definition}
Let be a -complex. An edge-loop is a word in the oriented edges of such that the end of one edge coincides with start of the next edge (when reading the word from right to left and cyclically).
Note that by parametrizing the oriented edges of and concatenating them in the order given by , we obtain a geometric realization of that is a (based) topological loop in . Also note that a -cocycle on assigns a value in to an edge-loop obtained by multiplying the labels of the oriented edges in the respective order. The value assigned to depends only on the homotopy type of (the geometric realization of) and, in particular, is trivial if the loop is contractible in .
{definition}
Let be a punctured topological polyhedron. A gimbal loop is a word in the oriented edges of and the selected two cells such that
- •
each is contained in exactly once,
- •
each in is preceeded (when reading the word from right to left and cyclically) by an edge such that the endpoint of is a vertex of , and
- •
dropping all from results in an edge loop. This edge loop bounds a disk in . The interior of the disk embeds into matching the orientation of .
{example}
Figure 6 shows an example of a gimbal loop for . The corresponding word is
{definition}
Let be a punctured topological polyhedron and be a gimbal loop. Fix a -cocycle on . Assume we are given numbers . Recall that the cocycle assigns a -matrix to every edge in . Assign to each in the rotation . We call the product of the matrices assigned to the letters in the gimbal matrix . Furthermore, we call the function
[TABLE]
assigning the upper triangular entries of the gimbal matrix the gimbal function.
Recall that a -cocycle on assigns a rotation to each edge in (with orientation induced from the orientation of ) where we pick . Let denote the sum of all the angles over the edges of . For example, in Figure 6 is the sum of the angles associated to the edges and
{lemma}
Using the same setup as in Definition 4, we have .
{proof}
Assume each . Then each is the identity and thus can be dropped from the gimbal matrix . Thus the gimbal matrix is equal to the matrix the cocycle assigns to the edge loop obtained when dropping the . This edge loop is contractible. Thus the gimbal matrix is the identity and .
The gimbal loop can also be turned into an edge loop by replacing each in by a word in the oriented edges in . Here we use the orientation of induced from the and start traversing at the endpoint of the preceding edge. Figure 6 shows this edge loop for Example 4. The corresponding word is:
[TABLE]
Note that by definition of , the matrix assigned to this edge loop by the cocycle is equal to the gimbal matrix . This edge loop is again contractible and thus . To see that the edge loop is contractible, note that a genus 0 surface with boundary components can be obtained by attaching a 2-cell to a 1-complex consisting of loops and arcs connecting the loops to common base point. The edge looped can be homotoped into this form since it bounds a disk with interior embedding into , see Figure 8.
Let denote the Jacobian of and be the interval closure of , i.e., the smallest (axis-aligned) closed box containing when thinking of the matrix space as . We say that is invertible if every matrix in is invertible.
{definition}
Using the same setup as in Definition 4, let be a box. We say that avoids gimbal lock with respect to if is invertible.
{remark}
The term gimbal lock is inspired by the mechanical device called gimbal or Cardan suspension used to achieve an arbitrary rotation in , see Figure 8. Letting and denote the Euler angles at the joints from the grounding boxes to the inner-most ring, the rotation achieved by the gimbal is given by the matrix
[TABLE]
and a configuration of where this map does not have full rank is known as gimbal lock. Note the formal similarity of this product to the gimbal matrix .
The following lemma is not useful in the general setting, but illustrates the principle we will use later (also see Example 6):
{lemma}
Using the same setup as in Definition 4, let be a box avoiding gimbal lock with respect to such that . If , then all and the cocycle extends to .
{proof}
A standard result about the interval Newton method says that is injective on since is invertible. Thus, Lemma 6 implies that .
5 Extending cocycles on triangulations
Let be a triangulation with an assignment of edge parameters such that each is realized (i.e., fulfills the conditions of Lemma 3). Let be a partition of the edges into two disjoint sets where with being the number of vertices of . Assume that we know that for every edge , but we only know that is close to for . Thus, the -cocycle in Theorem 3 might only extend to , the complex where the prisms (including the top and bottom face) about the edges in have been removed. The goal of this section is to give a criterion that forces for all , so that the conclusions of Theorem 3 apply and the edge parameters yield a hyperbolic structure for .
Let be the vertices of . If we drop all all -edges and all - and -cells adjacent to any -edge from , the remaining complex has a connected component for each vertex . We call such a connected component the “vertex link” of and denote it by . Starting with instead of , we similarly obtain a subcomplex for each . Note that is a punctured topological polyhedron as in Definition 4 and the -cocycle on descends to a -cocycle on each formed by the - and -edges. Let us fix a gimbal loop for each , giving us gimbal functions as in Definition 4.
Let us label the edges in and . We again want to construct a gimbal function, but this time in one variable per edge instead of a variable per removed polygon as in Section 4. Note that each edge corresponds to two polygons and that have been removed (from the “vertex links” and in ) to obtain and (with and not necessarily distinct), see Figure 9. We obtain a gimbal function in for each vertex by setting in Definition 4. We combine these gimbal functions into a single one:
{definition}
Let be a triangulation with an assignment of edge parameters such that each fulfills the conditions of Lemma 3. Let and be a partition of and fix gimbal loops . The gimbal function is given by
[TABLE]
A box avoids gimbal lock if is invertible.
Note that the orientation on in the above definitions must be chosen such that the boundary of a small hexagon in contains a for .
{example}
Figure 9 shows examples of gimbal loops for two “vertex links” of . The corresponding gimbal matrices would be given by
[TABLE]
The gimbal function for the triangulation is obtained by taking the upper triangular entries of the gimbal matrix for each vertex.
{theorem}
Let , , and , and be as in Definition 5. Let be a box avoiding gimbal lock such that . If
and 2. 2.
then for all , so the edge parameters yield a hyperbolic structure on .
{proof}
By applying Lemma 6 to each vertex , we see that
[TABLE]
Hence, the proof from Lemma 8 applies here as well and we have . Therefore, all conditions of Theorem 3 are fulfilled.
6 Examples of (non-)gimbal lock
This section is giving examples where the condition from Theorem 2 is known to be fulfilled for most but not all edges. Let be a finite, orientable triangulation with vertices and edges. We partition the edges as and depending on whether we know that is close to or, respectively, exactly equal to .
Geometrically, this yields a singular hyperbolic structure with cone singularities along the edges with . Looking at a vertex connected to such an edge, its neighborhood is the hyperbolic cone of its link which is topologically but has a spherical cone structure different from the standard . In this section, we extend Definition 5 to the case where might not be and say that gimbal lock is avoided if has no kernel.
{example}
Consider the case with connecting two distinct vertices and . Assume . The links of and would have a spherical cone structure with exactly one singularity. These do not exist, so . This also follows from Lemma 8.
{example}
[Gimbal lock] Let us start with a (non-singular) hyperbolic structure on such that the edges form a simple closed geodesic. Such a hyperbolic structure can often be deformed so that the geodesic becomes a cone singularity333For example, Manifold("m003(-3.3,1.1)") in SnapPy gives a geometric spun triangulation for the singular hyperbolic structure on the closed Weeks manifold m003(-3,1) with cone angle ., i.e., such that are close but not equal to . Note that the spherical structure of the link of a vertex connected to and gets deformed to have two conical singularities at antipodal points with equal cone angle. In the language of cocycles, pick a gimbal loop for as in Definition 4 such that the associated gimbal matrix is of the form
[TABLE]
where is a rotation by about an axis orthogonal to . Then whenever , so has a non-trivial kernel. If we add edges to such that , still has a non-trivial kernel, so we have gimbal lock and thus not a contradiction to Theorem 5.
{example}
[Perturbing previous example to avoid gimbal lock] Consider the situation in the previous example but move one vertex, say , slightly. Assume . The link of would be a spherical cone structure with exactly two cone singularities having distance (when scaling such that the curvature is ). Such a cone structure does not exist [MP16, Corollary 3.5]. In the language of cocycles, in Equation 2 is now a rotation by an angle strictly between [math] and , so is the product of two rotations about two different axes and thus only the identity when . In fact, this forces .
{example}
[A non-hyperbolic manifold fulfilling all but six edge equations] Consider the two tetrahedron triangulation of obtained by identifying the boundary of the first tetrahedron with the boundary of the second tetrahedron via the identity map. Assign the same length to all edges such that each tetrahedron has a hyperbolic structure individually but all of the six edges equations are violated. Perform several 1-4 moves on one or both of the tetrahedra preserving the hyperbolic structure on each tetrahedron. This gives an example of a non-hyperbolic manifold where more than but not all edge equations are fulfilled. Compare this to the ideal case where Neumann-Zagier (see Appendix) state that all edge equations must be fulfilled whenever are fulfilled.
We give a characterization of gimbal lock in 1-vertex triangulations later in Theorem 9.2.
7 Algorithm
7.1 Overview
Let be an oriented, finite 3-dimensional triangulation. Let be the number of vertices and index the edges . Assume we are given floating-point approximations for the edge parameters such that the are approximately (e.g, using the program Orb [Hea] based on the methods described in [Hea05, Section 2.2]).
We will either fail in one of the steps or obtain intervals guaranteed to contain values for yielding a hyperbolic structure on as follows:
- I.
Find a subsystem of equations of full rank:
Since the given approximations for the edge parameters are close to a hyperbolic structure, evaluating the Jacobian
[TABLE]
gives a matrix close to a singular matrix that we expect to have rank (see Conjecture 9). Pick a suitable set of rows and columns such that the resulting submatrix of has full rank.
This corresponds to picking two partitions of the edges of
[TABLE]
such that
[TABLE]
has full rank near the given values. Keep the values of fixed from now on. 2. II.
Find an interval solution to the above subsystem of equations:
Using interval Newton method or Krawczyk test, find large enough intervals
[TABLE]
for the edges in such that they contain a point where for every . To have intervals for all edges of the triangulation, simply use the interval containing only the fixed value for each remaining edge . 3. III.
Ensure solutions are valid for a simplex:
Using the intervals for each edge, use interval arithmetic to verify the conditions of Lemma 3 for each simplex . 4. IV.
Ensure that the remaining edge equations are “approximately” fulfilled:
Use these intervals to compute intervals for the sums of dihedral angles adjacent to an edge in to ensure that for every such edge. 5. V.
Ensure that the remaining edge equations are fulfilled exactly:
Find a gimbal loop for each vertex and consider the resulting gimbal function . Ensure that avoids gimbal lock for the intervals computed in the previous step using interval arithmetics.
7.2 Computing the Jacobian
Note that the formulas given in [Hea05, Lemma 2.5] for the derivatives (where ) run into a division by zero when . To obtain formulas avoiding this problem, we take the total derivative of Equation 1
[TABLE]
and note that each is, up to sign, the sum of at most two cofactors of , namely, the ones corresponding to the -matrices that can be obtained by deleting from the row and column corresponding to row or and column , respectively, of .
Using this, we can compute the Jacobian in \eqrefeqn:jacobian using floating point (in Step I), respectively, interval arithmetics (in Step II) avoiding the need for automatic differentiation.
7.3 Step I: Finding a submatrix of full rank
This step is necessary since interval methods (e.g., interval Newton method or Krawczyk test) only work for systems with invertible Jacobian. To obtain a subsystem of full rank, we apply the following algorithm to with :
Input:
Square-matrix with expected rank .
Output:
Sets and of indices of rows, respectively, columns. The submatrix of formed by these rows and columns will have full rank.
Algorithm:
. .
Repeat times:
Let be the index of the entry in with the largest absolute value when ignoring the rows in and columns in .
Add multiples of row to all other rows of to make all entries except for in column zero.
Add multiples of column to all other columns of to make all entries except for in row zero.
. .
{remark}
Note that the algorithm has the following stability properties:
We obtain the same set of rows and columns of when permuting the rows or columns of the input matrix , i.e., the result is obtained by applying the same permutation to , respectively, — unless there are ties in Step 2.1. 2. 2.
Transposing results in interchanging and .
{remark}
This algorithm is a simplified version of -factorization with full pivoting, i.e., a decomposition where and are permutation matrices, and unit-lower, respectively, unit-upper triangular matrices and a diagonal matrix.
7.4 Step II
This step is a straightforward application of the interval Newton method or Krawczyk test to the equations in variables (keeping fixed). Note that even for high precision solutions, computing the approximate inverse in the Krawczyk test using IEEE754 double-precision floating point numbers is usually sufficient.
If we are interested in increasing the precision of the solution, we can optionally perform the ordinary Newton method to the subsystem from Step I before Step II.
7.5 Steps III and IV
These conditions are straightforward to check with interval arithmetics given the comment about the Budan-Fourier theorem in Lemma 3.
7.6 Step V: Finding gimbal loops
We need to pick a gimbal loop in each “vertex link” . Note that this complex consists of the small hexagons (with alternating - and -edges) of the doubly-truncated simplices (see Figure 3) and polygons coming from the ends of the prisms (see Figure 3 and 9). For a vertex , pick a hexagon in , mark it as “used” and starting with its boundary (oriented such that it traverses a with ), expand this edge-loop until it touches each boundary component of as follows: pick a -edge of the edge-loop that is adjacent to an unused hexagon and replace the -edge by the five other edges of , marking as “used” (see Figure 10). It is faster to exhaust all -edges of one hexagon first in breadth-first search manner (vs depth-first search) before moving on to the next hexagon.
7.7 Step V: Computing the gimbal function’s derivative
We then need to compute which boils down to computing the derivatives of the gimbal matrices associated to the gimbal loops . Focusing on one and , note that is given by an alternating product the form
[TABLE]
where stands for a product of - and -matrices and rotations with ( is actually at most three since an edge of has two ends which might or might not end in the same vertex). We can then compute the derivative as
[TABLE]
We need to evaluate this using the intervals from Step II for the - and -matrices and the intervals from Step IV for and all the .
7.8 Step V: Verifying invertibility
To show that a square matrix with real interval entries is invertible (in the sense used in Definition 4 and 5), we can find an approximate inverse (usually IEEE754-double precision is sufficient) and verify that each entry of has absolute value strictly less than where is the number of rows.
8 Results
Our implementation of the algorithm in Section 7 is available at [Goe19b]. Lists of all knots and links from Theorem 1 as well as the isomorphism signatures of the finite triangulations we used are available at [Goe19a].
To produce the input to the algorithm, we used SnapPy [CDGW] to produce a finite triangulation of a manifold and Orb [Hea] to find unverified floating point edge parameters. Note that there are finite triangulations that admit hyperbolic structures but Orb is unable to find one. However, for all examples of hyperbolic manifolds considered here, we are always able to make Orb succeed in finding edge parameters by randomizing the finite triangulation in SnapPy several times.
We were able to verify a hyperbolic structure on a finite triangulation of each of the 11031 orientable closed manifolds in the Hodgson-Weeks census [HW94] and the 21962 genus 2 surface bundles and 3100 genus 3 surface bundles in the census by Bell [Bel15]. In particular, we have an independent proof of [HIK*+*16, Theorem 5.2] that all manifolds in SnapPy’s OrientableClosedCensus are hyperbolic.
To prove Theorem 1, we went through all knots and links up to 15, respectively, 14 crossings tabulated by Hoste-Thistlethwaite444See HTLinkExteriors, AlternatingKnotExteriors, and NonalternatingKnotExteriors in SnapPy. and used SnapPy to produce the branched double cover. We either used the above method to prove that the resulting manifold is hyperbolic or used Regina [Bur18] to prove that it is not hyperbolic by
- •
finding the triangulation in Regina’s census or
- •
recognizing that the triangulation has a structure fitting one of Regina’s
StandardTriangulation’s making it, e.g., a Seifert fiber space, or
- •
finding an essential torus using normal surface theory.
Note that the first two methods sometimes require some randomizations and simplifications of the triangulation in SnapPy to work and that the last method can be quite expensive.
The number of tetrahedra in the triangulations used to prove hyperbolicity was between 9 and 46. Most triangulations are single vertex, few have two vertices, and only one had three vertices.
Testing the algorithm on the bundle census and branched double covers was suggested by Nathan Dunfield since the geodesics isotopic to the components of the branching locus tend to be long and spun triangulations spinning about one of these geodesics very often fail to be geometric. By filling and drilling the triangulation, Dunfield found geometric spun triangulations (about a different geodesic) for the branched double covers of 42367 non-alternating knots and links up to 14 crossings, missing 1593.
{remark}
We also investigate how the occurrence of gimbal lock depends on the edge partition with where is number of vertices. For this, we fix a triangulation and a hyperbolic structure and check numerically whether the derivative of the gimbal function has singular values close to zero for different partitions (exhausting all partitions when and sampling otherwise). We did this for several triangulations of orientable closed census manifolds including some with three and four vertices obtained by performing 1-4 moves. This lead to Conjecture 9.
9 Discussion
Let be a finite, orientable triangulation with vertices and edges. We have proven that admits a hyperbolic structure if the checks in each step of the algorithm in Section 7 pass. But are there hyperbolic structures which the algorithm cannot verify — even as we increase the precision and give the algorithm better and better approximations of the edge lengths of the hyperbolic structure as input?
We conjecture that such hyperbolic structures are special and can always be avoided by a random perturbation. We state this in the following conjecture where “generic” means that a statement is true except for a closed measure zero set of hyperbolic structures on (we will see later that a natural measure exists on the space of all hyperbolic structures in Theorem 9.1):
{conjecture}
Let be a finite, orientable triangulation with vertices and edges admitting a hyperbolic structure. Then a generic hyperbolic structure on gives rise to edge lengths or equivalently edge parameters such that
in \eqrefeqn:jacobian has rank and 2. 2.
any choice of linearly independent rows from avoids gimbal lock. More precisely, for any partition into and edges, we have that
the rows of corresponding to the edges in are linearly independent
implies that
the derivative of the gimbal function in Definition 5 is invertible.
Note that if Part \eqrefsubconjecture:gimbalLock were false, the choice of the partition made in Step I could be such that Step II passes but the algorithm fails later in Step V.
{remark}
Numerically, we found that the converse of Part \eqrefsubconjecture:gimbalLock is not true, i.e., we found examples where the gimbal function is invertible even though the chosen rows of are linearly dependent.
{remark}
Compare the conjecture to the ideal case where we do not know in general whether every cusped, finite volume hyperbolic 3-manifold has a geometric triangulation (see [PW00, LST08, Goe17]).
9.1 The space of hyperbolic structures
Let be a finite, orientable triangulation with vertices and edges admitting a hyperbolic structure. We are able to prove that the solution set of the edge equations has dimension . This is weaker than Part \eqrefsubconjecture:Rank of Conjecture 9 since it implies that the rank of is at most (for example, yields a [math]-dimensional submanifold of the 1-dimensional , yet the Jacobian has rank [math] at [math] instead of the expected ).
Earlier, we defined a hyperbolic structure on as a compatible assignment of an isometry class of finite simplices in \H{^}3 to each simpex in . The space of hyperbolic structures on can be described in the following ways:
, the set of all tuples fulfilling the conditions of Theorem 2 (since the edge lengths of a hyperbolic structure yield a point in and determine the hyperbolic structure uniquely). 2. 2.
The space of geodesic homeomorphisms in a fixed homotopy class in where is a hyperbolic 3-manifold homeomorphic to . By Mostow rigidity, this yields all hyperbolic structures. By fixing the homotopy class, a hyperbolic structure gives a unique geodesic homeomorphism, instead of multiple related by the isometries of . 3. 3.
The space of all developing homeomorphisms, i.e., -equivariant homeomorphisms d:\tilde{\mathcal{T}}\to\H{^}3 where is a fixed vertex of and is a fixed geometric representation. This gives the homeomorphism in \eqrefitem:geodHomeo when letting \mathcal{M}=\H{^}3/\Gamma where .
{theorem}
Let be a finite, orientable triangulation with vertices and edges admitting a hyperbolic structure. The space of hyperbolic structures on is a -dimensional smooth submanifold of , is (non-canonically) diffeomorphic to an open subset U\subset\left(\H{^}3\right)^{o}, and has a canonical measure induced from \left(\H{^}3\right)^{o}.
{proof}
We call a -equivariant geodesic map d:\tilde{\mathcal{T}}\to\H{^}3 a developing map.
Claim: Fix a vertex of and a geometric representation . Then developing maps are in 1-1 correspondence to (\H{^}3)^{o}.
Pick a lift in of each vertex of of . By -equivariance, the images of all vertices of are determined by (d(\tilde{v_{1}}),\dots,d(\tilde{v_{o}}))\in(\H{^}3)^{o}. A geodesic map is determined uniquely by the image of all the vertices.
Claim: Under the above assumptions, the homeomorphisms among the developing maps form an open subset U\subset(\H{^}3)^{o}. We have a bijection .
By invariance of domain, a developing map is a homeomorphism if and only if it is an embedding. A developing map is an embedding if and only if the image of each simplex is positively oriented. The condition on a single simplex in to be positively oriented is open in the four vertex positions of the simplex. As a function of (x_{1},\dots,x_{o})\in(\H{^}3)^{o}, each of these four vertex positions is given by some where is a hyperbolic isometry in . Thus, the condition is also open in (\H{^}3)^{o}. By -equivariance, it is sufficient to check this for one lift of each of the finitely many simplices of , so is open.
Claim: The map is smooth where is the inclusion.
The distance function \H{^}3\times\H{^}3\to\R_{\geq 0} is smooth for all with .
Claim: The inverse is continuous.
Fix a simplex in and . Given a point in , let us consider the developing map d^{\prime}:\tilde{\mathcal{T}}\to\H{^}3 obtained by starting with in -standard position (see Definition 3) and developing simplex by simplex. Note that is equivariant with respect to a conjugate but different representation . In other words, there is a unique element such that for all and is -equivariant. We can compute as follows: fix such that the attractive fixed points p_{i}\in\partial\H{^}3 of are distinct. Let p^{\prime}_{i}\in\partial\H{^}3 be the attractive fixed points of . Then is the unique Moebius transformation with . Note that the all as well as all and thus depend continuously on the point in . Thus, (d(\tilde{v_{1}}),\dots,d(\tilde{v_{o}}))\in U\subset(\H{^}3)^{o} depends continuously on the point in .
Claim: The differential of is injective at every point in .
Assume that has non-trivial kernel. That is, there is a path with but . In other words, we have a 1-parameter family of developing maps d:\tilde{\mathcal{T}}\to\H{^}3 where at least one of the points is moving with non-zero velocity but the derivatives of all the edge lengths is zero. As we shall see, this cannot happen.
From the edge lengths , we can construct a 1-parameter family of developing maps as above. Since the derivatives of the lengths is zero, the vertices all have velocity zero. It is not hard to see that the entries of the from above also have zero derivative. Thus, the points have zero velocity.
Claim: The measure on induced from \left(\H{^}3\right)^{o} is independent of the above choices.
A different choice of lifts of vertices corresponds to the action of (\H{^}3)^{o} by an element in and thus does not change the induced measure. A different choice of is conjugate to by an element . The measure on (\H{^}3)^{o} is invariant under the action of .
9.2 1-vertex triangulations
Consider a 1-vertex triangulation admitting a hyperbolic structure. Let be the vertex of and be a geometric representation. Note that each edge of forms a loop in and denote by the set of the corresponding fixed points. {theorem} Let and be a partition of the edges of . Gimbal lock occurs for every hyperbolic structure on if there are with . Otherwise, gimbal lock is generically avoided.
{remark}
It is imaginable that there is a 1-vertex triangulation such that and gimbal lock occurs for each choice of giving a counterexample to Conjecture 9.
{proof}
The edges become geodesics with a potential kink at the image of in . Let and be the directions (of unit length) in which the two ends of approach d(p)\in\H{^}3 in the developing embedding d:\tilde{\mathcal{T}}\to\H{^}3. We can identify the tangent space at with Euclidean 3-space such that the gimbal matrix is the product of six rotations (the order depending on the choice of gimbal loop )
[TABLE]
where denotes the rotation about by angle . Let denote the -th component of . At the point where all , we have
[TABLE]
[TABLE]
where Thus, is invertible if and are linearly independent. Figure 11 shows that is pointing from to the geodesic spanned by (respectively pointing to if ) and if it lies on that geodesic.
Claim: Given a point x\in\H{^}3, consider the directions from to the point on closest to (respectively pointing to if ). The set of where these directions lie in a plane is closed and has measure zero if all sets are distinct. Otherwise V=\H{^}3.
Let f:\H{^}3\setminus\cup_{i}g_{i}\to\R,x\mapsto\omega(\overline{a}_{1},\overline{a}_{2},\overline{a}_{3}) where is the volume form on \H{^}3. Since is the Hodge dual to the gradient of the distance of to , is analytic. It is not hard to see that there is some with as long as no two and are equal. Thus and have measure zero.
10 Appendix: The uncited theorem HIKMOT relies on
As pointed out in the introduction, the full system of equations for finding a hyperbolic structure on a triangulation fails to have rank equal to the number of variables in both the finite and ideal case. Thus, verification by interval methods in the ideal case also relies on a theorem showing that if a suitable subsystem is fulfilled, all equations are fulfilled. Unfortunately, the paper [HIK*+*16] did not cite this crucial theorem correctly. We want to point out that the algorithm in [HIK*+*16] is correct and its implementation can be trusted since the theorem it relies on has been proven by [Mos09, Lemma 2.4]. However the theorem from [NZ85] cited in [HIK*+*16] is insufficient since it assumes hyperbolicity to begin with and its conclusion is too weak. Being the counterpart of the result in this paper in the ideal case, we will briefly state the correct theorem missing from [HIK*+*16].
Recall, that given an ideal triangulation with vertices, Thurston [Thu80, Chapter 4] gave compatibility equations in one complex variable per tetrahedron which are all of the form
[TABLE]
such that a solution with (called a geometric solution) yields a complete hyperbolic structure on the manifold obtained by filling in some cusps. There is one such equation with for each of the edges, one with for each filled cusped and one (sometimes two are given, but it is easy to see that one is sufficient) with for each unfilled cusp. Note that this system of equations consists of equations in variables and thus is overdetermined. To find a non-overdetermined system, let and and consider the -matrices and where ranges over the edge equations: {theorem} The matrix has rank . Pick linearly independent rows of and consider the system of equations consisting of the corresponding edge equations and the cusp equations.
Any solution to this system fulfills the remaining edge equations as well. 2. 2.
Near a geometric solution, the Jacobian of this system of equations is invertible.
Note that \eqrefitem:moser1 is sufficient for an algorithm to prove a manifold to be hyperbolic. Statement \eqrefitem:moser2 ensures that such an algorithm succeeds if given a solution close enough to the geometric one.
[NZ85] states the rank of but assumes hyperbolicity. Neumann revisted the result in [Neu92] to give a purely combinatorial statement where the rank of occurs as rank of the map in a certain chain complex. However, even Theorem 4.1 in [Neu92] only implies that the remaining edge equations in the above theorem are fulfilled modulo since it does not involve the of the edge equations. For a proof of the above Theorem, see [Mos09, Section 2.3.1].
The reference list from the paper itself. Each links out to its DOI / PubMed record.
- 1[Bel 15] Mark C. Bell, Surface bundle censuses , available at \url https://github.com/Mark C Bell/bundles/ (09/09/2020, commit ec 4d 8cc ), 2015.
- 2[BGSS 20] David Bachmann, Matthias Goerner, Saul Schleimer, and Henry Segerman, Cohomology fractals and Cannon–Thurston maps , in preparation.
- 3[B Pc R 06] Saugata Basu, Richard Pollack, and Marie-Françoise Roy, Algorithms in Real Algebraic Geometry , 2nd ed., Berlin: Springer, 2006 (English).
- 4[Bur 18] Benjamin A. Burton, Regina: Normal surface and 3-manifold topology software , available at \url https://regina-normal.github.io/ (08/01/2018, version 5.1), 2018.
- 5[Cas] Andrew Casson, Geo, a program for geometrizing 3-manifolds , \url http://computop.org/.
- 6[CDGW] Marc Culler, Nathan M. Dunfield, Matthias Goerner, and Jeffrey R. Weeks, Snap Py, a computer program for studying the geometry and topology of 3 3 3 -manifolds , available at \url http://snappy.computop.org/ (06/30/2018, version 2.6).
- 7[FP 04] Roberto Frigerio and Carlo Petronio, Construction and recognition of hyperbolic 3-manifolds with geodesic boundary , Trans. Am. Math. Soc. 356 (2004), no. 8, 3243–3282 (English), ar Xiv:math/0109012 .
- 8[GGZ 15] Stavros Garoufalidis, Matthias Goerner, and Christian Zickert, Gluing equations for PGL ( n , ℂ ) PGL 𝑛 ℂ \mathrm{PGL}(n,\mathbb{C}) -representations of 3-manifolds , Algebr. Geom. Topol. 15 (2015), no. 1, 565–622 (English), ar Xiv:1207.6711 .
