{'fraction_non_alphanumeric': 0.06642763512992521, 'fraction_numerical': 0.019456653044439304, 'mean_word_length': 3.3440518059509854, 'pattern_counts': {'":': 0, '<': 34, '<?xml version=': 0, '>': 14, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 37, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Ideal triangle groups, dented tori, and numerical analysis

We prove the Goldman-Parker Conjecture: A complex hyperbolic ideal triangle group is directly embedded in PU(2,1) if and only if the product of its three standard generators is not elliptic. We also prove that such a group is indiscrete if the product of its three standard generators is elliptic. A novel feature of this paper is that it uses a rigorous computer assisted proof to deal with difficult geometric estimates.


Introduction
A basic problem in geometry and representation theory is the deformation problem. Suppose that ρ 0 : Γ → G 1 is a discrete embedding of a finitely generated group Γ into a Lie group G 1 . Suppose also that G 1 ⊂ G 2 , where G 2 is a larger Lie group. The deformation problem amounts to finding and studying discrete embeddings ρ s : Γ → G 2 , which extend ρ 0 .
When Γ is the fundamental group of a surface, G 1 = Is(H 2 ), the isometry group of the hyperbolic plane, and G 2 = Is(H 3 ), the isometry group of hyperbolic three space, one is dealing with the theory of quasifuchsian groups, which is quite well developed. (See, for instance, the bibliography in [T].) The complex hyperbolic plane CH 2 is a 2-complex-dimensional manifold, which is negatively curved, Kähler, and also a symmetric space. It contains H 2 as a totally real, totally geodesic subspace, and is often considered to be its complexification. The theory of deforming Is(H 2 ) representations into Is(CH 2 ) is also quite rich, though much less developed. (For a representative sample of such work, see [FZ], [GKL], [GuP], [KR], [Tol].) 1.1. The Goldman-Parker conjecture. In [GP], Goldman and Parker took one of the first steps on the road to a theory of complex hyperbolic quasifuchsian groups. They defined and partially classified the complex hyperbolic ideal triangle groups, which are representations ρ s : Γ → Is(CH 2 ). Here Γ is the free product Z/2 * Z/2 * Z/2. The representation ρ s maps the standard generators of Γ to distinct, order-two, complex reflections, such that any product of two distinct generators is parabolic. A complex reflection is an isometry which has, for a fixed point set, a complex line in CH 2 . (See §2.3 for more information.) Modulo conjugation, there is a one-parameter family {ρ s | s ∈ R} of such representations. The indexing parameter, s, is the tangent of the angular invariant of the ideal triangle formed by the three complex lines fixed by the generators. The angular invariant measures the extent to which the vertices of the triangle fail to lie in a totally real subspace. (See §2.5 for a definition.) The representation ρ 0 is the complexification the familiar real ideal triangle group generated by reflections in the sides of an ideal triangle in H 2 .
Here is a sketch of the first half of this result. Let g s be the product of all three generators of ρ s (Γ), taken in any order. In [GP] it is shown that g s is loxodromic for |s| ∈ [0, s), parabolic for |s| = s, and elliptic for |s| > s. (See §2.1 for a classification of isometries.) If g s is elliptic, with finite order, then ρ s is not an embedding. If g s is elliptic, with infinite order, then ρ s is not discrete.
The theorem above is not sharp. For |s| > s the analysis in [GP] breaks down, but Goldman and Parker conjecture that ρ s remains a discrete embedding for |s| ∈ (s, s]. The significance of the result/conjecture combination is that it proposes the first complete description of a complex hyperbolic deformation problem.
1.2. Results and methods. The purpose of this paper is to prove a sharp version of the Goldman-Parker conjecture.
Main Theorem. ρ s is a discrete embedding if and only if g s is not elliptic. Also, ρ s is indiscrete if g s is elliptic.
Our indiscreteness proof uses some Galois theory to show that g s must have infinite order when it is elliptic.
For our discreteness proof, let Γ s = ρ s (Γ). Let ∂CH 2 be the ideal boundary of CH 2 . We construct a surface-like set Z(s) ⊂ ∂CH 2 , which we call a dented torus. We then prove that the orbit Γ s Z(s) consists of (essentially) disjoint surface-like sets. This phenomenon feeds into a variant of the Klein combination theorem to prove that ρ s is a discrete embedding.
We found Z(s) experimentally, using our interactive program [S1]. The technical part of this paper consists in making the pictures in [S1] into rigorous proofs, via computation and numerical analysis. While our proof is logically independent from [S1], most of the ideas came from analyzing the output of this program.
We use two kinds of programs to verify our computational claims. The first program, which computes quantities depending on the eigenvalues of g s , is Mathematica code [M]. This code runs with much more precision than we need. The second program, which is used for the bulk of the computation, is C code [KeR]. Our C code uses only those operations which conform to the IEEE standards [I] and employs interval arithmetic to bound the roundoff errors rigorously. Our code takes about 350 computational hours, when run on a Sparc Ultra 5. We ran the code, in parallel, on 11 such machines, over the course of a weekend.
Our code includes a variety of interactive visual displays, which allow the user to see, to a large extent, that everything operates as claimed. The code is available upon request.
We give explicit parametrizations of the main objects in the paper, as well as pseudocode expositions of the main algorithms. We hope this is enough information for the inclined (and energetic) reader to reproduce the results here in an independent experiment. 1.3. Overview. In Section 2 we review some basic complex hyperbolic geometry.
In Section 3 we define the triangle groups, establish the indiscreteness part of our main theorem, and study the eigenvalues of g s .
In Section 4, we study the action of Γ s on the Clifford torus, (The ideal boundary of CH 2 can be naturally identified with the three-sphere. ) We give an alternate proof of the Goldman-Parker discreteness result. Though our proof breaks down at the same place the proof in [GP] breaks down, it sheds new light on what should be done in the critical interval (s, s]. Our basic idea is to put some dents in the Clifford torus, so that the resulting surface moves around better under the action of the group. In Sections 5 and 6 we construct the "surfaces" which replace the Clifford torus. In Section 5, we introduce a projectively natural coning operation, the hybrid cone construction. This procedure creates surfaces called hybrid sectors, which are certain embedded solid triangles. In Section 6 we introduce, for each parameter s, the dented torus, Z(s), a surface which is made from cutting out two solid triangles from the Clifford torus and gluing back six hybrid sectors.
In Sections 7 and 9 we give the bulk of the proofs. In Section 7 we give the discreteness proof of the Main Theorem for the parameter s, modulo two technical estimates, 1 and 2. In Section 8 we establish the Year Lemma, a result which shows that we only need consider 365 parameters in the interval J = [s, s]. In Section 9 we give the general discreteness proof, modulo the two estimates, 1 and 2.
The remainder of the paper is devoted to establishing and illustrating Estimates 1 and 2. In Section 10 we describe the method by which we estimate the location of a hybrid sector in space using finitely many computations. In Section 11 we detail the computation scheme used to verify Estimates 1 and 2. In Section 12 we discuss the implementation and computational accuracy of our code. We also give a record of the actual calculations. In Section 13 we illustrate Estimates 1 and 2 with computer plots, produced with our code.
Suggested reading. We have indicated, through a series of remarks, the material in Sections 2-6 which is strictly necessary for the proof of the parabolic case. Read only this material, and then read Section 7. Following this, skip to Section 13, and look at the computer pictures, which give compelling evidence that Estimates 1 and 2 are true. Afterwards, try to understand the general case.
1.4. Related results. This paper is the first in a series. We prove in [S2] that the orbifold at infinity, in the parabolic case, is commensurable to the Whitehead link complement. [S2] also gives a noncomputational proof that there is some ε > 0 such that ρ s is a discrete embedding for s ∈ (s − ε, s]. In [S3] we explain (among other things) how to build models out of string, of the limit sets of the complex hyperbolic ideal triangle groups.
In [S4] we consider an extremely deformed discrete representation of the (4,4,4)-Hecke triangle group, and use it to produce the first example of a closed hyperbolic 3-manifold which bounds a complex hyperbolic 4-manifold. For some neat results and conjectures on the algebraic side of the complex hyperbolic ideal triangle groups see [Sa].
For another example of an application of computation to hyperbolic geometry, which is independent from ours, see the monumental [GMT]. 1.5. Acknowledgements. I must say that writing this paper has been an extremely gruelling experience, though sometimes an exhilarating one. I would like to thank Bill Goldman for his perspective and encouragement as well as for the efficient proof of Lemma 2.2. I would like to thank Martin Bridgeman, Peter Doyle, Jeremy Kahn, Josh Maher, Andy Mayer, Robert Miner, Robert Meyerhoff, John Parker, Bill Thurston, and Justin Wyss-Gallifent for interesting conversations relating to this work. I would like to thank the tireless referees for many helpful stylistic suggestions. Finally, I would like to thank my wife Brienne Brown for her C programming advice, and in particular for suggesting the elegant subdivision algorithms used in Section 10.8 and Section 11.1.
I dedicate this paper to my daughter, Lucina Caroline Schwartz, who was born right around the time I started thinking about triangle groups, and who is now learning about triangles herself. I also dedicate this paper to the memory of Hanna Sandler, a great enthusiast for the complex hyperbolic triangle groups, who passed away this winter.

Background
2.1. The complex hyperbolic plane. C 2,1 is a copy of the vector space C 3 equipped with the Hermitian form The spaces CH 2 and ∂CH 2 are respectively the projective images, in the complex projective plane CP 2 , of (See [G, p.67] or [E].) The map takes N − and N 0 respectively to the open unit ball and unit sphere in C 2 . Henceforth we identify CH 2 with the open unit ball. Given a point V ∈ CH 2 ∪ S 3 , we will say thatṼ ∈ Θ −1 (V ) is a lift of V and that a lift of the form (v 1 , v 2 , 1) is affinely normalized. We define the vector Θ −1 (V ) as the affinely normalized lift of V .
SU (2,1) is the group of , preserving, determinant 1 complex linear transformations. PU (2,1) is the projectivization of SU (2,1), and elements of PU(2, 1) preserve CH 2 . Concretely, eachT ∈ SU(2, 1) determines an element of PU(2, 1) via The mapT → T is a 3 − 1 surjective lie group homomorphism. An element T ∈ PU(2, 1) is called loxodromic if T has exactly two fixed points in S 3 , parabolic if it has exactly one fixed point in S 3 , and elliptic if it has a fixed point in CH 2 . This classification is exhaustive and exclusive. T is called ellipto-parabolic if T is parabolic and also stabilizes a complex line in CP 2 . (See [G, p. 203] for more details.) For instance, the element g s is ellipto-parabolic. CH 2 has a PU(2, 1)-invariant Riemannian metric, unique up to scale. Let δ denote the path metric induced by this Riemannian metric. When normalized as in [G, p. 78], (5) cosh 2 δ(v, w) 2 = ṽ,w w,ṽ ṽ,ṽ w,w =δ(v, w).

2.2.
Heisenberg space. Let ℜ(z) and ℑ(z) denote the real and imaginary parts of a complex number z. The Siegel domain is the affine subset Let H stand for C × R. We call H Heisenberg space. Given p ∈ S 3 , a Heisenberg stereographic projection from p is a map B : S 3 − {p} → H which has the form B = π •β. Here π(z, w) = (z, ℑ(w)) and β is a complex projective transformation of CP 2 which identifies CH 2 with the Siegel domain. We write ∞ = B(p) in this case. For instance is a Heisenberg stereographic projection which maps (−1, 0) to ∞. The map B 0 is a close relative of the Cayley Transform given in [G, p. 112]. The map B 0 conjugates the PU(2, 1) stabilizer of (−1, 0) to certain affine maps of H.
We call E 0 = {0} × R the center of Heisenberg space. The complex lines tangent to S 3 form a canonical contact distribution on S 3 . We call this distribution E. Heisenberg stereographic projection maps E to a corresponding distribution in H, which we give the same name. In H, the distribution E is the null distribution to the contact form [G, p. 124]). In this formula, C has been identified with R 2 in the usual way. E has cylindrical symmetry. It is preserved under maps of the form (z, t) → (λz, |λ| 2 t + r); λ ∈ C * , r ∈ R.
If Π is a plane in E, based at the point (z, t), then the maximum slope of a vector in Π is 2|z|. We say that a curve, in either S 3 or H, is E-integral if its tangent vector at every point is contained in E. The term E-integral is sometimes called CR horizontal. We prefer to use the former term, because the term horizontal comes up elsewhere in the paper.

C-circles.
A complex slice is the intersection of a complex line in C 2 with CH 2 . Complex slices are totally geodesic subspaces, when considered as Riemannian subspaces of CH 2 . A C-circle (also known as a chain) is the intersection of a complex line with S 3 , provided this intersection is more than a single point. A C-circle is a round circle, transverse to E. A C-arc is a nontrivial arc of a C-circle. Given two points p = q ∈ S 3 , there is a unique C-circle containing p and q.
Here is a method for parametrizing C-arcs. Suppose X, Y, Z are three distinct points contained in a common C-circle, C. After switching the order of X and Y if necessary, there are liftsX,Ỹ ,X, unique up to multiplying all three vectors by the same unit complex number, such that parametrizes the C-arc of C which joins X to Y and which avoids Z.
then there is the polar vector C * ∈ N + , unique up to scaling, such that C = {v ∈ N 0 | v, C * = 0}. There is a unique involution I C ∈ PU(2, 1) fixing C. This map is computed by setting (See [G, p. 70].) Another feature of the polar vector is this: Two C-circles, C 1 and C 2 are linked in S 3 if and only ifδ(C * 1 , C * 2 ) < 1, whereδ is as in Equation 5. We say that a Heisenberg chain is the image of a chain under a Heisenberg stereographic projection. Curves of the form ({z} × R) ∪ ∞ are chains. In particular, the center of H is a chain (with ∞ deleted.) All other Heisenberg chains are ellipses which project to round circles under the projection π C : H→ C. (See [G, p.125].) Let C be such a chain, with center of mass m. Let E m be the plane of E based at m. LetÊ m be the affine plane which is tangent to E m at m. We callÊ m the prolongation of E m . We have C ⊂Ê m . We will say that a round Heisenberg chain is one which is, itself, a round circle. The center of mass of a round Heisenberg chain is contained in the center of H. Such curves are contained in planes of the form C × {t}.

R-circles.
A real slice is a totally real, totally geodesic subspace of CH 2 . Every real slice is isometric to the real slice R 2 ∩CH 2 . An R-circle is the accumulation set, in S 3 , of a real slice. Every R-circle is PU(2, 1)-equivalent to the particular R-circle R 2 ∩ S 3 . All R-circles are E-integral.
We say that an R-circle is round if it is a round circle. An R-circle is round if and only if the real slice containing it lies in a real 2-plane in C 2 , which is true if and only if the real slice contains (0, 0). The geodesics in a round R-circle are line segments in C 2 . Not all R-circles are round. An R-arc is a nontrivial arc of an R-circle. There is an S 1 -family of R-arcs containing two points p = q ∈ S 3 . The union of all such arcs is called a spinal sphere. (See [G, p.152].) Here is a method for parametrizing R-arcs. Suppose X, Y, Z are three distinct points contained in a common R-circle, R. There are liftsX,Ỹ ,X, unique up to scaling all three vectors by the same complex number, such that (Compare §2.5 below.) We call {X,Ỹ ,Z} an equalized choice of lifts. The curve parametrizes the R-arc of R which joins X to Y , but which avoids Z. We say that a Heisenberg R-circle is the image of an R-circle under a Heisenberg stereographic projection. Any Heisenberg R-circle γ which contains ∞ is (the extension of) a straight line. We call these R-circles straight. Note that γ has the form (L × {t}) ∪ ∞ where L ∈ C is a line through the origin, if and only if γ is straight and intersects the center of H. In this case we call γ level. All other Heisenberg R-circles are curves, which project to lemniscates via the projection π C . (See [G, p.139 Here is a geometric interpretation of our parametrization: Proof. Since B 0 maps the R-circle containing X, Y, X to a straight line, the point P = B 0 (R Z (X, Y ; u)) must be a convex combination of B 0 (X) and B 0 (Y ). Our parametrization of R-arcs is natural in the following sense: If, for j = 1, 2, the points X j , Y j , Z j are contained on an R-circle, then an element of PU(2, 1) which carries {X 1 , Y 1 , Z 1 }, in order, to {X 2 , Y 2 , Z 2 }, also carries R Z 1 (X 1 , Y 1 ; u) to R Z 2 (X 2 , Y 2 ; u). Also, B 0 conjugates the stabilizer of Z = (−1, 0) to affine maps of H. The facts just mentioned imply that the particular convex combination depends only on u, and not on the triple of points chosen.
2.5. The angular invariant. See [G, pp. 210-214] for proofs of the results in this section.
Given three points X = Y = Z ∈ S 3 , the Cartan angular invariant is We have A(X, Y, Z) = ±π/2 if and only if these points lie in a common Ccircle, and A(X, Y, Z) = 0 if and only if these points lie in a common R-circle.
2.6. The group law on S 3 . Recall that S 3 is a Lie group. With S 3 as the unit sphere in C 2 , as above, the group law on S 3 is The right multiplication map R X (Y ) = Y · X is an element of PU(2, 1) which acts isometrically on S 3 , in the round metric, and moves all points by the same amount. The point here is that R X commutes with the complex structure, which is left multiplication by i.

2.7.
The Clifford torus. We do not know a reference for the material in this section.
The Clifford torus is the torus Define arg : T → T 0 by the formula arg(z, w) = (arg z, arg w). The preimages, under arg, of curves of slope 0, 1 and ∞ are all chains on T . We call such chains, respectively, horizontal, vertical, and diagonal. The preimages, under arg, of curves of slope −1 are round R-circles on T , having the form {(z, w)| zw = λ} ∩ S 3 , where |λ| = 1.
We say that a Clifford triangle is a solid triangle in T whose edges are contained in chains, one from each of the three foliations. See Figure 3.1 for an example.
We say that a Clifford rectangle is a solid rectangle whose boundary consists of two vertical C-arcs and two horizontal C-arcs. In parametrizing a Clifford rectangle we wish to avoid the exponential function, for computational reasons. Here is how we do it. Let Q be a Clifford rectangle. Let H and V be maximal horizontal and vertical C-arcs in ∂Q.
Let H 1 and H 2 be the endpoints of H and let H 3 be the midpoint of H − H. HereȞ is the C-circle containing H. Likewise define V 1 , V 2 and V 3 . We parametrize Q by Here π 1 and π 2 are projections onto the first and second factors, and the components of our parametrization come from Equation 10. We call this the rational parametrization of Q. It appears that there are two choices for H and two for V . However, recall from our definition of C H 3 (H 1 , H 2 ; t) that the points H 1 , H 2 , H 3 must be correctly ordered. Likewise for V 1 , V 2 , V 3 . These extra constraints make the rational parametrization unique.
Remark. The reader interested only in the parabolic case of the main theorem may skip this section.
Say that a pure translation along a geodesic γ ∈ CH 2 is one which preserves all real slices containing γ. Say that a pure translation flow along γ is a flow φ t : CH 2 → CH 2 such that φ t is a pure translation of γ, for all t. Let I be the geodesic (−1, 1) × {0}. Let be the Euclidean norm on C 2 .
Proof. Let B 0 be the map defined in Equation 7. Let (ζ, ω) = B 0 (z, w). We compute This vector field generates the flow ψ r (ζ, ω) = (rζ, r 2 ω). Clearly, ψ r is a flow by complex linear maps which preserves the Siegel domain. Hence, φ t is a flow by complex hyperbolic isometries, obviously preserving I and R 2 .
Lemma 2.3. Suppose thatR is a real 2-plane which contains (0, 0). Suppose p 1 , p 2 ∈R − CH 2 − S 3 are two points such that (0, 0), p 1 , p 2 are all contained on a line L ⊂R. Let β be the pure translation along L ∩ CH 2 such that β(p 1 ) = p 2 . Then, for all q ∈ S 3 , Proof. The stabilizer subgroup of (0, 0) in PU(2, 1) acts isometrically on S 3 and transitively permutes the real 2-planes through (0, 0), as well as the real lines through (0, 0). Thus, we may assume thatR = R 2 , that L = I, that p 1 = (x 1 , 0) and p 2 = (x 2 , 0), with 1 < x 1 < x 2 < ∞. Let V be the vector field from Lemma 2.2. Since sup x∈S 3 V (x) = 1, we conclude that ρ(q, φ t (q)) ≤ t for all q ∈ S 3 . The value of t, for which φ t (p 1 ) = p 2 , is 3. The triangle groups The angular invariant of these three points is ± arctan s, depending on the order in which they are taken. The first part of Figure 3.1 shows the images of these points under the arg map. Let H +,s , V +,s and D be the horizontal, vertical, and diagonal C-circles containing pairs of these points. Let R be the R-circle which bisects ∆ s . Define Note that d is the complex reflection fixing D and r is an antiholomorphic involution fixing R. Note that d and r commute.
We define H −,s = d(r(H +,s )) and V −,s = d(r(V +,s )). The second part of Figure 3.1 shows these chains. Let h ±,s be the complex reflection fixing H ±,s , etc. The group Γ s = ρ s (Γ) is generated by the triple {d, h +,s , h −,s }. These are not the standard generators of Γ s , but they are quite useful to us. We define Since r conjugates h ±,s to v ±,s and vice versa, . The representations ρ s and ρ −s have the same image in PU(2, 1), so we are justified in taking s ∈ [0, ∞). We define J = [s, s]. Usually we take s ∈ J.

3.2.
Matrices. We now give formulas for SU (2,1) lifts of some of the elements defined above.
Settingg =h +h−d , we have (23) Clearly,d is a lift of the map d(z, w) = (w, z). One can check easily that h ±,s is a determinant-one involution which preserves N 0 ⊂ C 2,1 . One can also check that this matrix has, as an eigenvector, a vector which is polar to H ±,s . One can also take traces of these matrices and their products, checking that they agree with the traces of the corresponding matrices in [GP].
3.3. Indiscreteness proof. We now show that ρ s is indiscrete for s ∈ (s, ∞). The work in [GP] shows that g s is elliptic for such s. We will show that g s has infinite order.
From the formula forg s , we see that the trace τ s ofg s satisfies the equation for N = 8. Note that ℜ(τ s ) < −1 as long as N ∈ N. If g s has finite order then (25) τ s = ω p n + ω q n + ω r n ; ω n = exp(2πi/n); p + q + r = 0.
Here n is taken as small as possible. Obviously n > 2. We suppose that Equations 24 and 25 are true for some N ∈ N, and derive a contradiction. We set τ = τ s . Proof. For k relatively prime to n, let σ k : Q[ω n ] → Q[ω n ] be the Galois automorphism determined by σ k (ω n ) = ω k n . Equation 24 is defined in Q[ω n ], so it remains true if we replace τ by σ k (τ ). In particular, ℜ(σ k (τ )) < −1. Summing over all those k ∈ {1, . . . , n − 1} which are relatively prime to n, we get ℜ( k σ k (τ )) < −φ(n). Here φ is the Euler phi function. Hence For m = p, q, r let (m, n) be the greatest common divisor of m and n. Let d m = n/(m, n). Note that ω m n is a primitive d th m root of unity, and the sum of all such roots is one of −1, 0, 1. The map Z/n → Z/d m induces a map (Z/n) * → (Z/d m ) * , which is onto, with multiplicity φ(n)/φ(d m ). Hence Combining Equations 25, 26 and 27 we get There is no positive integer k such that φ(k) = 3, and φ(k) = 2 only for k ∈ {2, 3, 4, 6}. We conclude that all three roots are 12 th roots of unity.
Remark. For each choice of N , Lemma 3.1 leaves only finitely many cases to check. One can finish the proof, for small choices of N , by a quick computer search. We did this for N = 8, the case of interest. The argument following this remark finishes the proof, in all cases, in a noncomputational manner.
Lemma 3.2. None of p, q, r is relatively prime to n.
Proof. Suppose that p is relatively prime to n. All our congruences will be taken mod n. Applying a Galois automorphism of Q[ω n ] we arrange that p = 1. Assume first that n is even. Since ℜ(τ ) < −1 we must have ℜ(ω q n +ω n ) < 0 and ℜ(ω r n + ω n ) < 0. This is only possible if q, r ≡ n/2. But then it is impossible to get p+q +r = 0. Similarly, if n is odd then q, r ≡ (n±1)/2. Since p+q +r = 0, and n > 2 we must have q ≡ r ≡ (n − 1)/2. Here ω q = ω r is a primitive n th root of unity. We apply a second Galois automorphism to get q = r = 1. Thus ℜ(ω q + ω r ) > 0, a contradiction. Lemma 3.2 says, in particular, that n must have more than one prime factor. Thus, n ∈ {6, 12}. Suppose n = 12. Since ω p n ω q n ω r n = 1, we see that d r divides the least common multiple n ′ of d p and d q . Lemma 3.2 says d p , d q , d r < 12. Suppose n ′ < 12. Since d p , d q , d r all divide n ′ we can replace n by n ′ , contradicting the minimality of n. Thus, n ′ = 12. Hence, (d p , d q ) must be one of (3,4), (4,3), (4,6) or (6,4). From this it is easily seen that d r = 12, a contradiction. The case n = 6 is similar.
Remark. The reader interested only in the parabolic case can skip to the next chapter at this point.

3.4.
Near monotonocity of the eigenvector. Let E s be the C-circle stabilized by the element g s , defined in Section 3.1. Let E * s be the affinely normalized vector which is polar to E s . Note that E * s is an eigenvector corresponding to the norm-one eigenvector λ s of g s . Since the element r conjugates Proof. We will show below that |e ′ (s)| < 3 for all s ∈ J. We explicitly evaluate the two functions above for 120001 maximally and evenly spaced points in J, and observe that the two functions are monotone decreasing on these points, up to a roundoff error of 10 −20 . See Section 12 for details of the calculation. Using the bound on the derivative, together with the fact that J has length less than .54, we get the result of this lemma.
We turn now to our bound on |e ′ (s)|. Let A 1 and A 2 be the functions defined in Section 3.2. Let We first establish the following implication: Assume that |X| > 4/3 and |e| < 1 at some parameter s ∈ J, which we suppress from our notation. Note that Equating the first and third coefficients respectively gives Combining these equations we obtain A 2 e 2 + A 1 e − e = 0. Differentiating with respect to s we get Basic calculus shows that |A ′ 1 (s)|, |A ′ 2 (s)| < .5 for s ∈ J. If |e| < 1 then the bracketed expression above has norm less than 1. Therefore Observe that Rearranging Equation 31 we arrive at Since u(s) is a unit complex number and |X| > 4/3 we see that We now know that Equation 29 is true. Say that s ∈ J is a good parameter if the two bounds on the left hand side of Equation 29 hold at s. Otherwise say that s is a bad parameter . Let s 0 , . . . , s 55 be the set of 56 maximally and evenly spaced points in the interval J. Note that J has length 125/3 − √ 35 < .55. Thus, every point of J is within .005 of some point s j . As explicit calculation shows that (See §12 for details of the calculation.) Suppose s ∈ J is some bad parameter. Let s j be the point in our list nearest to s. We can assume that all parameters in [s j , s] are good. This interval has length at most .005. Equation 29, says that |X| and |e| can each change by at most .1 on this interval. Hence, |X(s)| ≥ 1.49 − .1 > 1.3333... and |e(s)| < .8 + .1 < 1. This is a contradiction. Hence every parameter is good. Our bound follows immediately.

Images of the Clifford torus
4.1. A discreteness criterion. We begin with a discreteness criterion. This discreteness criterion is a close variant of the ping-pong lemma and the Klein combination theorem. For original sources, see [K] and [Mas]. A formulation which is similar to the one here appears in [Mac].
Recall that ρ s : Γ → PU(2, 1) is our basic representation. We have also set Γ s = ρ s (Γ). Let H s ⊂ Γ s be the group generated by h +,s and h −,s . We say that a compressing pair for ρ s is a pair of subsets (U 1 , U 2 ), having the following properties: Lemma 4.1. If ρ s has a compressing pair then ρ is a discrete embedding.
Proof. Any element g ∈ Γ has the property that where h j ∈ H s . The elements h n and h 1 can be trivial, but all the other h j are nontrivial. We perform induction on n. The inductive hypothesis is the following: For j = 1, 2, When n = 1, there is nothing to prove.
Suppose the induction hypothesis holds for n − 1. If h n = 1, then As in the ping pong lemma, we have shown that ρ s (g) does something uniformly nontrivial when g is not the identity element. Hence, ρ s is a discrete embedding.

The projection.
Recall that T is the Clifford torus. S 3 − T consists of two open solid tori: We will reprove the discreteness result in [GP] by showing that (U 1 , U 2 ) is a compressing pair for ρ s as long as s ∈ [0, s]. In this section we reduce this to a problem about disks in the hyperbolic plane.
Proof. Using the formula for h + given in Section 2.3 we see that is a disk and W 1 is an annulus. Hence, every finite union of the form h∈H ′ h(W 2 ) is a proper subset of W 1 . Here H ′ is a finite subset of H. The element h ± | W is an isometric rotation about a point p ± ∈ W , as shown in Figure 4.2. Hence, the product h + h − is loxodromic, regardless of parameter.
The Euclidean diameter of the set h(U 1 ) tends to 0 as the word length of h tends to ∞. This fact, together with the finite union property, implies that

4.3.
Patterns of disks. The disks W 2 and h ± (W 2 ) are tangent at the point p ± . Thus, the disks hh ± (W 2 ) and h (W 2 ) are tangent at the point h(p ± ). The points of tangency all lie on the geodesic A, through the points p ± . This geodesic is the translation axis for h + h − .  In the second half of Figure 4.3, the complex slice W has been identified with the upper half plane model and the geodesic A has been identified with the positive imaginary axis.
If h has odd word length then h is an isometric rotation about a point not in The point is that the hyperbolic distance from the hyperbolic center of W 2 to the hyperbolic center of h ′ (W 2 ) exceeds the hyperbolic distance from the hyperbolic center of W 2 to the hyperbolic center of h(W 2 ). Our conclusion: If h(W 2 ) ∩ W 2 = ∅, for h having word length 2, then (U 1 , U 2 ) is a compressing pair at the parameter in question. By A calculation, which we omit, shows that the distance between the hyperbolic center of W 2 and the hyperbolic center of h +,2 h −,s (W 2 ) is monotone decreasing in s, and that the two disks are tangent when s = s. This establishes the discreteness result in [GP].
Remark. Our discreteness criterion parallels [GP,Lemma 3.2]. Our Lemma 4.2 parallels [GP,Lemma 3.3]. The analysis in this section parallels the auxiliary lemma used to prove [GP,Lemma 3.3]. The omitted calculation parallels the calculation in [GP] concluding their discreteness proof. Our Clifford torus is contained in the ideal boundary of the Dirichlet polyhedron considered in [GP]. The map Π W corresponds to the map Π C used in [GP].

4.4.
Another point of view. The reader may think, at this point, that our proof above fails by accident. Let us give another point of view which shows that the proof must fail for structural reasons.
The fixed point p s of g s is contained in the Clifford torus, by symmetry. The point here is that the element r preserves the Clifford torus and conjugates g s to its inverse. Let Q be the complex line tangent to S 3 at p s . The element g s stabilizes Q, and rotates this plane nontrivially. Q is transverse to the Clifford torus T . This means that g s (T ) must intersect T transversely. For s sufficiently close to s the same phenomenon must occur, by continuity. One may think of s as the cutoff for this phenomenon. When s ∈ (s, s], the element g s does not have the translational strength to compensate for its rotational component in a direction transverse to T . In short, g s does not have the strength to pull T off of itself.

The hybrid cone
5.1. The basic construction. Suppose that (E, p) is a pair, where E is a C-circle and p ∈ E is a point.
Proof. We normalize by a Heisenberg stereographic projection so that E = E 0 , the center of H, and p = ∞. In this case, there is a unique level Heisenberg R-circle containing x. This is γ(E 0 , ∞; x). Let Ω(E, p; x) be the arc of γ(E, p; x) which connects X to p and which is We call Ω(E, p; S) the hybrid cone of S with respect to (E, p). We call the individual R-arcs, in the union above, the foliating arcs.
Our construction is natural: Ω(T (E), T (p); T (S)) = T (Ω(E, p; S)), when T is the restriction to S 3 of an isometry of CH 2 .
We define the endpoint map Remark. When f Ω (S) is a single point, Ω is a subset of a spinal sphere. (See [G,Ch. 5] for the theory of spinal spheres.) Thus the hybrid cone construction generalizes the spinal sphere construction.

5.2.
Hybrid disks and hybrid sectors. Let (E, p) be as above. If S is a C-arc, let S be the C-circle which contains S. A hybrid disk is a hybrid cone of the form Ω(E, p; S). A hybrid sector is a hybrid cone of the form Ω(E, p; S), where S is a proper nontrivial C-arc. We will sometimes write Ω(E, p; S) = Ω(E, p; S).  Proof. We will consider the case of hybrid sectors, the case of hybrid disks being similar. We normalize by a Heisenberg stereographic projection so that E = E 0 , the center of H, and p = ∞. In this setting Ω(E 0 , ∞; S) − ∞ is a surface with boundary, ruled by rays. The ruling rays are arcs of level Heisenberg R-circles. The endpoints of the rays are contained in S. The linking condition implies that the rays are pairwise disjoint. The rays certainly vary analytically with points on S. Our lemma is clear from this description.
When Ω(E, p; S) is normalized as in the previous lemma, we say that it is in standard position. 5.3. Canonical parametrization. In this section we describe a parametrization for hybrid sectors. The formulas for the parametrization are only important for the proof in the sense that our code actually uses them.
Let (E, p; S) be as above. Let q be the point of E diametrically opposite p. (This makes sense because E is a round circle.) Let ζ ∈ S 3 be some auxiliary point chosen so that p, q, ζ lie on a common R-circle. Let {p,q,ζ} be an equalized choice of lifts. Let E * be the polar vector to E s , chosen so that ζ, E * = p,q .
Let S be a C-arc as above. Let S 1 and S 2 be the endpoints of S, and let S 3 be the midpoint ofS − S. Referring to Equation 10 we define Note that A t lies on the complex slice determined by p and q. It is easily checked that Â t ,Â t = 0 and A(p, S t , A t ) = 0, so that A t = f Ω (S t ). With reference to Equation 13, the following map is a parametrization of Ω(E, p; S): 5.4. The elevation map: Basics. With notation as above, the formulas in this section are only relevant to the proof in that we actually use them in our code.
Recall that π(z, w) = (z, ℑ(w)). Define It is easy to see that the vector Next, the ζ-elevation map Ψ : S 3 − {p} → Υ is defined as follows: Technically, Ψ is a map from S 3 − p to subsets of Υ. This detail is absorbed into the statements of our estimates.
Say that a barrier for (E, p) is a pair (f, Ψ), where f : S 1 → R is a continuous function. Let Λ f be the graph of f in Υ. Let Λ 1,f and Λ 2,f be the two components of Υ − Λ f . We will take Λ 2,f to be the component above Λ f , as shown in Figure 5.3. In this figure, S 1 × R is mapped into the plane via the map (z, t) → (arg z, t).
Remark. At this point, the reader interested in the parabolic case of the Main Theorem can skip to the next chapter.
5.5. The elevation map: Fine points.
Lemma 5.5. Suppose that α is an R-arc, contained in an R-circleα. If α intersects E in two points, neither of which is p, and α intersects E in one point, then π R • Ψ is monotone on α. Proof. We set Y = Y ζ , and recall that Ψ = ξ •Y , as above. Also, π C •Y (α) is a lemniscate centered at the origin and Y (α) is an E-integral lift of this lemniscate. The slope of this lift is only 0 at the two points which cover 0. In particular, the slope of Y (α) vanishes only at the endpoint. (See [G, p.141] for an explicit parametrization.) Hence, the height function is monotone on Y (α).
Proof. The curve Ψ • γ(∂Ω) is a simple closed curve on Υ which, by hypothesis, is contained in Λ 2,f . This curve is a generator for the homology of Υ. From this it follows that there is some x ∈ γ(∂Ω) such that π R • Ψ(x) > max f . Let α be the R-arc of γ(Ω) which connects x to p. By Lemma 5.5, we have π R •Ψ(y) > max f for all y ∈ α. This obviously implies that Ψ(α) ∈ Λ 2,f . 5.6. Tame hybrid disks. Say that a hybrid disk Ω(E, p; S) is tame if the surface Ω − ∂Ω − p is never tangent to the distribution E.

4.
For some parameter s ∈ I, one of the foliating arcs of Ω(E, q s , S s ) is disjoint from Ω(E, p s , C s ).
Then Ω(E, p t , C t ) ∩ Ω(E, q t , S t ) = ∅ for all t ∈ I.
Proof. Let N denote the union of all foliating arcs of Ω(E, q t , S t ). The parameter t ranges throughout I in this definition. We equip N with the Hausdorff topology: Two elements of N are close if they are contained in small tubular neighborhoods of each other. Obviously, N is connected.
Let N ′ ⊂ N denote those arcs β such that β is a foliating arc for Ω(E, q t ; S t ) and β is disjoint from Ω(E, p t ; C t ). To establish this lemma, it suffices to prove that N ′ = N . Note that N ′ is nonempty, due to statement 4 above. Clearly, To finish the proof we show that N ′ is closed. Let β 1 , β 2 ... be a sequence of elements of N ′ which converge to some β ∈ N . Let t be the parameter associated to β.

Statement 3 implies that ∂β
The only possibility is that β − ∂β intersects Ω(E, p t , C t ) − C t − p t . If this intersection is transverse, then nearby arcs, including some of the β n , would intersect nearby hybrid disks. Hence β − ∂β is tangent to Ω(E, p t ; C t ) − C t − p t at some point x.
There is a foliating arc of Ω(E, p t , C t ) which contains x. Call it α. Since Ω(E, p t , C t ) is tame, the plane E x of E intersects the tangent plane T x to Ω(E, p t ; C t ) transversely, in a line L. Both α and β are tangent to Ω(E, p t , C t ) at x, and both α and β are E-integral. Hence, α and β are both tangent to L. The important conclusion here is that α and β are therefore tangent to each other.
We normalize so that Ω(E, p t ; C t ) is in standard position. Also, π C (α) is a straight line segment, contained on a ray through the origin and β is a Heisenberg R-arc, contained in a Heisenberg R-circleβ. The curves π C (α) and π C (β) are tangent at π C (x) = 0.
There are two cases to consider. Suppose first that π C (β) is a straight line. In this case, π C (α) and π C (β) are the same line through the origin. This implies thatα =β. Hence ∂α ∩ β = ∅ or ∂α ∩ β = ∅. Either possibility contradicts our assumptions.
We conclude that π C (β) is a lemniscate. Sinceβ intersects E 0 twice, π C (β) is centered at the origin. However, a straight line (π C (α)) through the origin cannot be tangent to a lemniscate centered at the origin (π C (β)) at a point (π C (x)) other than the origin. This is a contradiction.
Remark. For the reader only interested in the parabolic case, the first two sections of this chapter can be replaced by a single calculation at the parameter s. One can just skim this material.
Recall that E * s = (e(s), e(s), 1) is the eigenvector to g s , as in Section 3.4. Let S be the circle of radius √ 2/2. Let p 1 (s) and q 1 (s) be the points such that the tangent lines to S at p 1 (s) and q 1 (s) contain e(s). That is: The following result implies that p 1 (s) never exits the shaded region of the picture and q 1 (s) never enters the shaded region.
Let ∆ σ be the corresponding Clifford triangle, on the Clifford torus T . Let ∂ h ∆ be the arc of the horizontal C-circle which bounds ∆. Let ∂ v ∆ be the arc of the vertical C-circle which bounds ∆. Let ∂ d ∆ be the arc of the diagonal C-circle which bounds ∆. Thus, we have Lemma 6.2 (axis lemma). E s ∩ T consists of two points. One of them, p s , is contained in ∆ σ . The other point, q s is not. Also E s links each of the three C-circles in ∂∆ σ .
Proof. We repeat the notation from Section 6.1. Let S be the disk of radius √ 2/2 centered at the origin of C. Let p 1 (s) and q 1 (s) be the two points of ∂S such that the tangent lines through these points contain e(s). Define (42) p s = (p 1 (s), p 1 (s)); q s = (q 1 (s), q 1 (s)).
We claim that E s ∩ T = p s ∪ q s . By consruction, p s , q s ∈ T . Recall that R = {z = w} ∩ S 3 . Note that p s , q s ∈ R. Since R is a round R-circle, it is contained in the real sliceR = {z, z} ⊂ C 2 . The mapR → C given by (z, z) → z carries R to the disk S and carries geodesics inR to straight lines in C. Hence, the complex lines tangent to S 3 at p s and q s both contain E * s .
This is enough to conclude that E * s is Hermitian perpendicular to p s and q s . Hence, E s ∩R = p s ∪q s . If some other point o s lies in E s ∩T , then so does r(o s ) which is contained in the same diagonal chain as o s . This would force E s to be a diagonal C-circle, which it is not. The result of Section 6.1 is equivalent to the statement that p s ∈ ∆ and q s ∈ ∆ for all s ∈ J.
Calculations show that Here ∂ d ∆ * is a polar vector to the C-circle containing ∂ d ∆. Likewise for the other vectors. Let x be any one of d, v, h. The calculation above shows that E s links the C-circle containing ∂ x ∆. Since E s never intersects the C-circle containing ∂ x ∆ for s ∈ J, we see that E s always links this C-circle.
6.3. Main construction. We define For any subset S ⊂ S 3 let dS = d(S). Here d(z, w) = (w, z). Next, define By construction, Ω(s) is the union of 6 hybrid sectors. Next, we define We call Z(s) the dented torus. Z(s) has been constructed by cutting out two Clifford triangles from T and gluing back in 6 hybrid sectors. Figure 6.3 shows some of these sets schematically. d preserves Z(s) by construction. r preserves ∆, d∆, Ξ, E s , p s , dE s and dp s , all the sets which are relevant to the construction. Thus Z(s) has 4-fold dihedral symmetry. In particular, the points p s and q s , which are fixed by r, are diametrically opposed on the circle E s . Hence, the canonical parametrization of Ω x (s), for x = h, v, d, uses the point q s as the extra point. Define Since p s , q s , ζ ∈ R, the ζ-elevation map Ψ s is well defined for the pair (E s , p s ). By construction Ψ s (Ω x (s)) is in standard position, for x = h, v, d.
7. The discreteness proof: Parabolic case 7.1. Five disks. Let W be the complex slice used in Section 4. Let W * be the complex line {z = 0} which contains W as its unit disk. Let We define five disks which play a key role in our proof.

Let
Proof. We first deal with W − W ABC . Suppose first h has odd length. By construction, h preserves the axis A, and interchanges the two components of W − A. Therefore, We now turn to the images of W 2 . An explicit calculation shows that   Proof. See Section 12.
Proof. By the five disk lemma, and Corollary 7.3, we have h(Π W (Ω)) ⊂ W ABC . Hence Π W (Ω) ∩ Π W (h(Ω)) = ∅. Pulling back, we have Ω ∩ h(Ω) = ∅. By the five disk lemma, we have h(W 2 ) ⊂ W ABC . Hence, by Estimate 1, we have Π W (Ω) ∩ h(W 2 ) = ∅. Pulling back by Π −1 W , and using the fact that Π W (Ξ) ⊂ W 2 , we get Ω ∩ h(Ξ) = ∅. Since this is true for all nontrivial words h ∈ H − H 2 we have Ω ∩ h −1 (Ξ) = ∅. That is, h(Ω) ∩ Ξ = ∅. This result now follows from the fact that Z = Ω ∪ Ξ. Let x be the attracting fixed point of h + h − . This point is one of the two intersection points of the axis A with ∂W . In particular, By Estimate 1, we have x ∈ Z. Let U 1 be the component of S 3 − Z which contains x.
Proof. Note that W ABC − W 2 is path connected. Hence, there is a path δ 1 ⊂ W ABC − W 2 which joins y to x, the fixed point of h + h − . We can find a path δ 2 ⊂ S 3 such that Π W (δ 2 ) = δ 1 . One endpoint of δ 2 is necessarily x, since Π −1 W (x) = {x}. We can make the other endpoint any point of Π −1 W (y) we choose, since the fibers of Π W are connected. By construction, δ 2 ⊂ S 3 − Z.
Corollary 7.6. Both fixed points of h + h − are contained in U 1 . If σ is a fixed point of dh + h − d and h ∈ H then h(σ) ∈ U 1 .

Proof. For the first claim, the fixed points of
For the second claim, the fixed points of h + h − have zero first coordinate. Hence, σ has zero second coordinate: Π W (σ) = (0, 0) ∈ W A . If h has odd length then Π W (h(σ)) = h(0, 0) ⊂ W A − W 2 . If h has even length, at least 4, then Π W (h(σ)) = h(0, 0) ⊂ W ± C , which is disjoint from W 2 . If h has length 2 then h(0, 0) is contained in ∂W ± C . We have already seen that W 2 is disjoint from this disk. So, in all cases, h(0, 0) ∈ W ABC − W 2 . Pulling back by Π W , and applying Lemma 7.5 finish the proof.
Proof. Let y be the fixed point of the parabolic element h + d. Recall that H + is the horizontal chain on the Clifford torus which contains the horizontal arc bounding ∆, the Clifford triangle used in the construction of Z. By construction y ∈ H + . Hence, Π W (y) is the fixed point Let x be the fixed point of h + h − . There is a path δ 0 , connecting x to y, such that δ 0 −{y} ∈ U 1 , and δ 0 is transverse to Ξ at y. The path δ 1 = δ 0 ∪d(δ 0 ) joins x ∈ U 1 to d(x) ∈ U 2 . By construction, δ 1 intersects Ξ transversely in a single point and is disjoint from Z − Ξ = Ω. If U 1 = U 2 then there is some path δ ′ 1 which connects x to d(x) but which avoids Z. The path γ = δ 1 ∪ δ ′ 1 is a closed loop in S 3 which intersects Ξ once, transversely, and is disjoint from Ω. Hence γ and ∂Ω = ∂Ξ are algebraically linked.
Homological considerations say that γ links ∂∆ or γ links d∂∆, or both. Suppose, without loss of generality, that γ links ∂∆. Since Ω ∆ is the continuous image of a disk, attached to ∂∆ by a degree one map, we see that γ and Ω ∆ have nontrivial intersection. This is a contradiction. Proof. By Lemmas 7.3 and 7.4, the intersection X = h(Z) ∩ Z is either the empty set, or one of the two C-circles H ± . In either case, X neither disconnects Z nor h(Z). Basic topology now implies that one component of S 3 − Z, which we call the special component, contains all but one component of S 3 − h(Z) (and vice versa).
We now show that U 1 has nontrivial intersection with more than one component of S 3 − h(Z), meaning that U 1 is the special component. Since h interchanges the fixed points of h + h − , both of which are contained in U 1 , we see that h(U 1 ) ∩ U 1 = ∅. From Corollary 7.6 we see that U 1 also contains h(σ).
Proof. We already know that U 1 contains all components of S 3 − h(Z), except for one. We just have to rule out the possibility that h(U 2 ) is this one exceptional component of S 3 −h(Z). Assuming to the contrary, we get h(U 1 ) ⊂ U 1 . The element rd conjugates h to h −1 and preserves Z. Furthermore, since rd interchanges the fixed points of h + h − , we see that rd( This implies that h −1 (U 1 ) ∩ U 2 = ∅. By Corollary 7.6 we have h −1 (U 1 ) ∩ U 2 ⊃ {σ} = ∅, a contradiction.
Remark. Computer evidence suggests that Z(s) is a tamely embedded topological torus and, in particular, that S 3 − Z(s) consists of exactly two connected components. If this is true, our argument above could be somewhat simplified. While it is possible to convert the computer evidence into a proof, it is quite difficult to do so. We settle for the slightly complicated arguments above to avoid the extremely complicated arguments needed to analyze the topology of Z(s).
Proof. It suffices to consider the element h + h − , by symmetry. Note that h + h − (Z) = h + h − d(Z) = g(Z). From Estimate 2 and Lemma 5.4 we have g(Z) ∩ Z = {p}. Hence h + h − (Z) ∩ Z = {p}. Since p disconnects neither Z nor h + h − (Z), the same argument as above shows that h + h − (U 2 ) ⊂ U 1 .
All in all (U 1 , U 2 ) is a compressing pair for ρ, and ρ is a discrete embedding.

The year lemma
Recall that J = [s, s]. We partition J into 365 intervals of equal size. The set J 0 of midpoints of these intervals is given by Let I k be the partition interval containing s k .
The geometry of Z(s) varies slowly with s ∈ J. However, this variation is extremely difficult to estimate directly. In this chapter we replace the family of sets {Z(s)| s ∈ J} by a family of sets {Z(s k , t)| t ∈ I k ; k = 1, . . . , 365}. The set Z(s k , t) is a replacement for Z(t), whose geometry is essentially the same as the geometry of Z(s k ). In this way, we only have to deal with the geometry of the surfaces Z(s k ), for k = 1, . . . , 365.
8.1. Compatibility maps. Let s = s k , and t ∈ I k be some other parameter. Let (E s , p s ) be the pair used to define Z(s). There are many maps φ st ∈ PU(2, 1) such that φ st (E s , p s ) = (E t , p t ). In this section, we construct a canonical one which varies continuously with the parameters.
Let µ s be the midpoint of the shorter of the two arcs of R which connects p s to q s . Likewise define µ t . Let r s = Θ(E * S ) = (e(s), e(s)). Likewise define r t . We define φ st = β st • α st , where α st , β st ∈ PU(2, 1) stabilize R and 1. α st is a rotation such that α(µ s ) = µ t , 2. β st is a pure translation along the line which joins α st (r s ) to r t .
By construction, φ st commutes with the map r, which stabilizes R.
For any set X ⊂ S 3 let X ε be the ε tubulr neighborhood of X, as measured in ρ. Define

Main construction.
Define Ω(s, t) = Ω ∆ (s, t) ∪ dΩ ∆ (s, t). Here Finally, define For later use, we define the elevation map Here Ψ s is the ζ-elevation map associated to the (E s , p s ). By construction Ψ st is the ζ ′ -elevation map for (E t , p t ). Here ζ ′ = φ st (ζ). By construction, Thus, Ψ st maps the hybrid sectors in Ω ′ ∆ (s, t) to standard position. In particular, the hybrid sectors in Ω ′ ∆ (s, t) are as well adapted to the element g t as are the hybrid sectors in the discarded Ω ∆ (t).
At the same time Ω ′ ∆ (s, t) is a PU(2, 1)-image of Ω ∆ (s), and thus has essentially the same geometry. The object Z(s, t) retains the dihedral symmetry of Z(s). Finally, the set B(s, t) seals up the gaps created by the discontinuous nature of our construction.
We will not actually deal with Z(s, t) directly. Rather, we will estimate the mismatch between Z(s, t) and Z (s).
Define s)). The remainder of the chapter is devoted to proving the following result: 1. ε st < a.

g
To avoid redundancy, we will just prove Statements 1 and 2. Statement 3 has the same proof as Statement 2.

Computational ingredients.
Lemma 8.2. Let s k be as above and let t ∈ I k . There is a constant a k such that 1. 8||e(s k )| − |e(t)|| + | arg e(s k ) − arg e(t)| < a k < a.

4a
Each partition interval has the form [s k−1 , s k+1 ], with midpoint s k . Here k is odd. The two items above, combined with the near monotonicity lemma, give the result.
Let Π Z : C 2 → C be projection onto the first factor. Referring to Equation 23 define The Lipshitz lemma and the variation lemma below explain the significance of this set.
For later use, let F k ⊂ Σ k × Σ k denote those points (x, y) which can be joined by a geodesic segment−i.e. an arc of a great circle−which is contained entirely in Σ k . It remains to show that |β st | ≤ 8||e(s)| − |e(t)||. From the near monotonicity lemma, and from explicit evaluations at the endpoints of J, LetR be the real slice bounded by the round R-circle R. Note thatR = {(z, z)} ∩ CH 2 . We put the Euclidean metric onR. By construction, the points (0, 0); are all contained in a single line L. The element β st is a translation along L which maps p 1 = α st (e(s), e(s)) to p 2 = (e(t), e(t)). Note that

Combining this information with Lemma 2.3 and Equation 57
gives our estimate on |β st |.
Proof. Let s = s k . This follows from the fact that φ st moves every point of S 3 less than a k . Hence, dΩ ′ ∆ (s, t) is contained in the a k -neighborhood of dΩ ∆ (s). By construction, B(s, t) is contained in the a-tubular neighborhood of Ξ ∪ dΩ ∆ (s).

Proof of Statement 2.
Lemma 8.6 (the Lipschitz estimate). For all (x, y) ∈ F k , and all k ≥ 0, In particular, the quantity on the right-hand side is less than 4 for k = 3.
Proof. From the formula in Section 3.2 we have Note that |A 2 (s)| ≥ 3 √ 3/2 for s ∈ J. Let P 0 = P 0 (s) be as in Equation 56. We compute The bound in this lemma follows from integrating the differential bound along the arc of the great circle joining the two relevant points.
Lemma 8.7 (the variation estimate). For all s, t ∈ J and x ∈ Σ k , In particular, the quantity on the right-hand side is less than 2|s − t| for k = 3.
Here we have used the same bound on |A 2 | as in the previous section. Let N 0 (ε) ⊂ N 0 denote those points (z 1 , z 2 , z 3 ) such that |z 3 | ≥ ε. The above calculation shows thatg s (X) ⊂ N 0 ( 3 √ 3 2k ). We compute the differential Using the fact that |z 1 | 2 + |z 2 | 2 = |z 3 | 2 , we see that the sum of the squares of the matrix entries of dΘ is 3/|z 3 | 2 . It follows that Here V is any vector tangent to y. Therefore, given X ∈ Σ k , the path g s (X) has speed at most 2k 3 times the speed of the pathg s (X), at corresponding points. An exercise in calculus shows that |A ′ 1 (s)| < .5 and |A ′ 2 (s)| < .5 for all s ∈ J. From this it follows thatg s (X) has speed at most 1. Hence, the path g s (X) has speed at most 2k 3 . This is a reformulation of Lemma 8.7. Let x ∈ Ξ ∪ dΩ ∆ (s, t)) be arbitrary. By Corollary 8.5, there is some point y ∈ Ξ ∪ dΩ ∆ (s) such that ρ(x, y) < a k . By Lemma 8.3, and the triangle inequality, the points x and y are both at least b − a > a from S 3 − Σ 3 . Hence, (x, y) ∈ F 3 . From Lemmas 8.6 and 8.7 From the second statement of Lemma 8.2, and the triangle inequality: 9. The discreteness proof: General case 9.1. Five disks. The set of disks W ABC (s) can be defined, for each parameter, just as in Section 7. Here we define a single collection W ABC , which contains W ABC (s), for all s ∈ J. This collection is the union of the five disks defined below.
Proof. Here A s is the hyperbolic geodesic containing the fixed points of h +,s and h −,s , which move together symmetrically along ∂W 2 as s increases.
Lemma/Definition. Let W ± B (s) be the disk tangent to W 2 at the fixed point p ±,s of h ±,s , and also tangent to ∂W . Let σ = (s + s)/2. Let W B be the smallest disk, concentric with W ± B (σ) which contains both W ± B (s) and W ± B (s).
Proof. By construction, h ±,s (W 2 ) ⊂ W ± B (s). Since the disks W ± B (s) are all isometric they are all Euclidean isometric to each other, and move monotonically through the annulus W 1 , we see that Proof. We consider the case of W + C , the other case following from symmetry. Now, h +,s h −,s ({0} × R 2 ) is determined by its endpoints These are the functions from Equation 23. An exercise in calculus show that the real parts (and hence the arguments) of the second coordinates of the above points are monotone for s ∈ J. Explicit evaluations at the endpoints of J show that 0 < arg h + h − (0, 1) < arg h + h − (0, −1) < π/2, that arg h + h − (0, 1) decreases with the parameter and that arg h + h − (0, −1) increases. Hence W + C (s) ⊂ W + C (s) for all s ∈ J.
9.2. All words but two. Let a and b be as in the year lemma.
Corollary 9.5. Let s = s k ∈ J 0 . For all t ∈ I k , Proof. Statement 1 of the year lemma, combined with the triangle inequality, implies that We also know that Ψ st = Ψ s • φ −1 st . Hence, the set defined on the left-hand side of Statement 1 of the corollary is contained in the set defined on the left-hand side of Statement 1 of Estimate 2. This proves Statement 1 of the corollary. Statements 2-4 of the corollary have very similar proofs. Statement 5 of the corollary has just been copied down from Statement 5 of Estimate 2, for the sake of exposition. Statement 6 of the corollary follows from Statement 6 of Estimate 2, and Statement 2 of the year lemma.
Our goal is to show that Z(s, t) ∩ g t (Z(s, t)) = ∅ for t ∈ I k . We assume t < s. Once this is done, the same argument as in Section 7 shows that (U 1,t , U 2,t ) is a compressing pair for ρ t .
Proof. By Lemma 5.3, Combining this with Statement 1 of Corollary 9.5, we have Combining this with Statements 2 and 6 of Corollary 9.5 we have The element r conjugates g t to g −1 t and preserves every relevant set. By symmetry, then, g t (Z(s, t)) ∩ (Ξ ∪ dΩ ∆ (s, t)) = ∅.
The lemma now follows from the definition of Z(s, t).
Proof. First of all, we observe that g t (p t ) = p t , and Ω s, t). By Lemma 5.3 and Statement 2 of Corollary 9.5, s). Similarly, by Statement 4 of Corollary 9.5, . Applying Statement 5 of Corollary 9.5 and Lemma 3.4 to each of the foliating arcs of g t (Ω ′ d (s, t), we get π R • Ψ st • g t (Ω ′ d (s, t)) ⊂ I 2 (s). Since I 1 (s) ∩ I 2 (s) = ∅, the equations above combine to prove this lemma.
Lemma 9.8. Let s ∈ J 0 , the set defined in Section 8. The hybrid disks Ω h (s) and Ω v (s) are tame.
Proof. We check the hypothesis of Lemma 5.7 for each parameter in J 0 . (Compare Equation 43.) See Section 12 for details of this calculation.
Proof. This is an explicit calculation. See Section 12 for details.
Proof. We will take y = h. The case y = v has the same proof. We will show that the tame hybrid disks Ω h (s, t) and the hybrid sectors g t (Ω ′ d (s, t)) satisfy the hypotheses of Lemma 5.8.

The axis for Ω
The axis for g t (Ω ′ d (s, t)) is (E t , g t (p t )). Since t = s, and since the fixed points of g t are not contained in the Clifford torus, we have q t = g t (p t ) = p t . This shows hypothesis 1. (s, t) and ∂g t Ω d (s, t) ⊂ g t (Ξ(s, t)), Lemma 9.6 implies that Ω d (s, t) and g t (Ω h (s, t)) satisfy hypotheses 2 and 3.
Proof. The proof is the same as in the previous case. All we have to do is show that there is some foliating arc of g s ( Ω y (s, t)) which is disjoint from Ω x (s, t). This follows from Estimate 2 and Corollary 5.6.

Numerical analysis
10.1 The Clifford torus case. Recall that Ξ is the part of the dented torus which is also part of the Clifford torus; Ξ is the "outer rim" in Figure 10.1. We subdivide Ξ into five Clifford rectangles, as shown in Figure 10.1. (What looks like twelve rectangles is really 5.) Let {Ξ j : j = 1, 2, 3, 4, 5} be the set of these pieces. Let Ξ(t, u) be the rational parametrization of Ξ j , as described in Section 2.7. Given a rectangle Q ⊂ [0, 1] 2 , let Ξ j (Q) be the Clifford subrectangle of Ξ j parametrized by Q. We now construct a ball B(Ξ j , Q) ⊂ S 3 such that Ξ j (Q) ⊂ B(Ξ j , Q).
Let m be the midpoint of Q. Let V be the set of vertices of Q. Let B(Ξ j , Q) be the smallest ball centered at Ξ j (m) and containing the points Ξ j (V ) in its boundary. All four points are contained in the boundary by symmetry. Since each C-arc foliating Ξ j is contained in a semicircle, we have Ξ j (Q) ⊂ B(Ξ j , Q).
The rectangle algorithm computes B(Ξ j , Q), returns a 1 if the t-curves of Ξ j (Q) are longer than the u-curves and returns a 2 otherwise. The return of 1 tells the computer that it can more efficiently decrease the size of Ξ j (Q) by cutting Q in half so as to shorten the t-curves. A return of 2 tells the computer the opposite.
Remark. The analysis above uses, in a crucial way, the fact that the circular arcs in question are contained in semicircles. This property plays an important role in our analysis on several occasions. The key fact about such arcs is that their overall size is comparable to the distance between their endpoints. This is not true for circular arcs in general.
Let Ω = Ω(E, p; S) be a hybrid sector, with parametrization Ω(t, u). Let  , where Ω(t, U ) is an R-arc. We call Ω(T, u) a transverse arc. The goal of this chapter is to produce computable bounds L Ω (t, U ) and W Ω (T, U ) such that 2. E(Ω(T, u)) ≤ W Ω (T, U ) for any u ∈ U .
Our estimates are not general ones. We have only verified them for the clean subsectors of the hybrid sectors which actually participate in Estimates 1 and 2. (We will define below what we mean by clean.) Let T 1 and T 2 be the two intervals obtained from splitting T in half. Likewise define U 1 and U 2 . Let m = (t 3 , u 3 ) be the midpoint of Q. We have ρ (Ω(t, u), Ω(m) ≤ ρ (Ω(t, u), Ω(t 3 , u)) + ρ(Ω(t 3 , u), Thus, Ω(Q) is contained in the ball B(Ω, Q) centered at Ω(m) and having radius r(T, U ).
The rectangle algorithm produces the ball B(Ω, Q). Also, it returns a 1 if L Ω (t 1 , U ) ≤ W Ω (T, U ), and returns a 2 if L Ω (t 1 , U ) ≥ W Ω (T, U ). The integer values returned have a similar purpose as in the previous section.
10.3. Distortion of stereographic projection. Define Note that U (2) = S 3 . Let B 0 be the map from Equation 7. For any smooth map T , let dT be the linear differential of T .
Lemma 10.1. If V is a unit tangent vector to S 3 , based at a point p ∈ U (ε), then dB 0 Proof. By rotational symmetry, continuity, and integration, it suffices to assume that B 0 (p) ∈ R × R. Note that B −1 0 (R × R) consists of those points (z, w) such that w/(z + 1) ∈ R.
For (z, w) ∈ B −1 0 (R * × R), define A vector ν is tangent (resp. E-integral) to S 3 at p if and only if ℜ p, ν = 0 (resp p, ν = 0.) Using this criterion, we see that all three vectors above are tangent to S 3 , and that ν r is also E-integral.
Observe that all vectors have norm at most ε. In the third case, this is a short exercise in calculus, which uses the fact that |z| 2 + |w| 2 = 1. We will show that dB 0 maps the vectors above to an orthonormal basis. This implies our first differential bound. We will see, in particular, that d(π C • B 0 ) maps ν r to a unit vector. This implies the second bound.
Let β 1 and β 2 be the component functions of B 0 . We compute As we said above, ν θ is a real multiple of (0, iw), and this latter vector generates the flow (z, w) → (z, exp(it) w). The map B 0 conjugates this flow to the flow on H generated by r d dθ . Thus, we see that dβ 2 (ν θ ) = 0. The E-integrality of dβ 1 (ν r ), together with the fact that dβ 1 (ν r ) = 1, implies that dβ 2 (ν r ) = 0.
10.4. Clean hybrid sectors. Let f Ω be the endpoint map for Ω(E, p; S), as defined in Section 4.1. We say that Ω(E, p; S) is clean if 1. S is contained in a semicircle, Let Y be a Heisenberg stereographic projection mapping Ω to standard position. f Ω is injective on S if and only if π R • Y is injective on S. Now, Y (S) is contained in an ellipse, so that π R has at most one local maximum and one local minumum on Y (S).
Let {S i } be the set of arcs produced by the first three steps of the cleaning algorithm. We will implement step 4 of the cleaning algorithm by showing p is farther from either of the two points of f Ω (∂S i ) than these points are from each other. 10.5. Estimating the R-arcs. Let Ω(E, p; S) be a hybrid sector. Let S t be the canonical parametrization for S. Let A t = f Ω (S t ) be the image of the endpoint map, as in Section 5.3. We define the endpoint curves: We have used the group law on S 3 to define these curves. More generally, we define Proof. Apply Lemma 2.1 to the three points X = −p · A −1 t and Y = −S · A −1 t and Z = −A t · A −1 t = (−1, 0).
Combining Lemmas 10.1 and 10.3 we see that, for all u ∈ U , we have ρ (Ω(t, u), The 2 above is bracketed for purposes which will become clear in Section 10.7.
10.6. Estimating the transverse arcs. A dyadic interval is an interval of the form [a/2 k , b/2 k ], for a, b, k integers. When we run our main algorithm in the next section, we will only have to deal with dyadic subintervals of [0, 1]. Our analysis of transverse arcs works for dyadic subintervals which have length at most 1/4. If T is a longer interval, we set W (T, U ) = π, the diameter of S 3 . Henceforth, we assume that T is a dyadic subinterval of [0,1], having length at most 1/4. We would like to compare ω 3 = Ω(t 3 , u) and ω 4 = Ω(t 4 , u), for t 3 , t 4 ∈ T . The point ω j lies in the R-arc Ω j = Ω(t j , [0, 1]). Let A j = A t j and S j = S t j . Let R j be right multiplication by −A −1 j . Let X ′ j = R j (X j ) for any point X j ∈ Ω j . In particular, let Ω ′ j = R j (Ω j ). We have A ′ 1 = A ′ 2 = (−1, 0). Since R j moves all points on S 3 the same distance, and since A 1 , A 2 , A 3 , A 4 are contained, in order, on a semicircle, we get Let B 0 be the stereographic projection from Equation 7. Note that B 0 (0, −1) = ∞. Let X ′′ = B 0 (X ′ ) for all relevant X. We equip H with the Euclidean norm. In subsection 10.8 we will prove the following result.
When we run this algorithm, with the Lipschitz estimators defined below, for ε = .002, and for the curves p ′′ (t) = B 0 (−p·A −1 t ) and S ′′ (t) = B 0 (−S t ·A −1 t ), it halts without failure for every parameter in J 0 ∪{s}. See Section 12 for details of the calculation. This establishes the lemma.
Remark. For several parameters s ∈ J 0 , one of the hybrid sectors produced by the cleaning algorithm is tiny. In these cases, checking the "control by balls" condition involves the comparison of two tiny quantities. The roundoff error introduced by the computer interferes with this comparison. In these exceptional cases, we simply use our Lipschitz estimators to verify, in advance, that the relevant curves are entirely contained in a ball of radius .002, thereby bypassing our algorithm.
Proof. Let m be the midpoint of [a, b]. Since S| T is contained in a semicircle, we have ρ(p c , p m ) ≤ λ 1 . By the triangle inequality ρ(p ′ c , p ′ m ) ≤ λ 1 . By definition, p ′ m = B −1 0 (p ′′ m ) and likewise for c. Therefore, By the triangle inequality, The points B −1 0 (p ′′ (a)) and B −1 0 (p ′′ (c)) can be connected by an arc having length at most λ 1 . By Lemma 10.2, the restriction of B 0 to this arc expands distances along this arc by at most √ 6 max(1, λ −2 2 ).
Essentially the same argument gives P 0 (s) is evaluated from Equation 56 ( §8.3). See Section 12.6 for a list of the centers and radii of the disks used in this estimate. 11.3. Variation of the barrier function. We use the notation of Section 9.3. Let f s be the barrier function in Equation 58. Let π 1 : S 1 × R → S 1 be projection. Let Ψ s be the elevation map associated to the parameter s. For q ∈ S 3 define We have defined this function so that Let B ⊂ S 3 be a ball with center c and radius r. We define F s (B) = x∈B F s (b). If p ∈ B we redefine F s (B) = [−10, 10], which causes B to fail all further tests applied to it. If c = 0, we replace B by the ball of radius r + .0000001 centered at .0000001. Henceforth, we assume that c = 0 and p ∈ B. We also assume that the parameter s is fixed. Letc be the affinely normalized lift of c.
Given a vector V = (z 1 , z 2 , z 3 ), let Letp s andq s be any lifts of the points p s , q s ∈ E s . LetÊ * s be any vector polar to E s . Let r be the radius of B. Define To see this, let γ : [0, δ] → S 3 be a constant-speed geodesic which connects c to p. Letγ be the affinely normalized lift of γ. We certainly have A ≤ 2π. Define X(t) = arg(Ψ • γ(t)). By integration, By definition, Here log is a branch of the complex logarithm. By calculus, The third coordinate of γ ′ (t) is zero and γ ′ (t) = 1. By the Cauchy-Schwarz inequality, Here V is any vector whose third coordinate is 0. Another application of the Cauchy-Schwarz inequality gives Equation 76 follows straight from this. A very similar argument proves Given the definition of f s , we have (78) max f s − min f s = 2β(s); |df s /du| ≤ β(s).

The first inequality in Equation 78 immediately gives
(79) Integrating the second inequality in Equation 78 over the portion of S 1 which contains π 1 • Ψ s (B), we get Combining Equations 77, 79 and 80 we see that Hence F s (q) < 0. This is equivalent to the statement that Ψ(q) ⊂ Λ 1 . The other statements have similar proofs.
11.4. Acting on the ball. Let Σ k and P 0 (s), and F k be as in Lemma 8.6. Let B ∈ S 3 be a ball, with radius r and center c. Define Lemma 11.2. g s (B) ⊂ X(B, g s ), where X(B, g s ) is the ball having center g s (c) and radius Kr.
Proof. By construction, every point x ∈ B has the property that (c, x) ∈ F k . Therefore, the Lipschitz constant of g| B is at most K by Lemma 8.6. 11.5. Confining a particular curve. Let s ∈ J 0 and let I s be the corresponding partition interval. Let p s be the point used in the definition of the hybrid sectors of Ω ∆ (s).
Lemma 11.3. Let β s be the ball of radius .001 centered at g s (p s ). Then (g t (p t )) a ∈ β s for all t ∈ I s .
Proof. Recall that a = .00046. Let P 0 (s) be as in Equation 56. Define (82) From the year lemma, ρ(p s , p t ) < a. An exercise in calculus shows that the real and imaginary parts of P 0 (s) are monotone in s. Evaluating at the endpoints, we see that |P 0 (s) − P 0 (t)| < .02 for all s, t ∈ J. By the triangle 12. Implementation and roundoff error 12.1. Overview. The bulk of our computing is done in C. We use C code for Lemma 10.4 and also for Estimates 1 and 2. The C program only uses mathematical operations which are governed by the IEEE standards [I]. Namely, 1. The +, −, ×, ÷ and √ operations; 2. The < and > operations; 3. decimal ⇔ binary conversion.
We implement our code using interval arithmetic, so that the computations themselves produce the error bounds.
There are a number of places in the paper where we need a small amount of fairly precise computation. We perform these computations in Mathematica [W], which has arbitrary precision arithmetic. We compute all quantities to roughly 20 decimal places of precision. While Mathematica is not guaranteed to be free from computational bugs (and bugs have been found!) we think there is general agreement that Mathematica does not have bugs in the basic operations we use−the ordinary arithmetic operations and the numerical extraction of cube roots. We have ruled out such computational bugs by random tests on our data−e.g. plugging the root of a cubic back into the cubic.
The C program relies on some initial values, depending on the parameter s. For instance, the C program needs to have the vector E * s which in turn depends on the eigenvalues of g s . Our Mathematica code computes all initial values for the C code, and stores them in auxiliary files. When the C code runs, it reads in these files as needed. Thus, the C code never has to compute any quantity which depends on functions which are not listed above.
We will first discuss certain features of our Mathematica code. Following this, we will explain how the computer represents real numbers, and how we implement interval arithmetic. At the end of this chapter, we give a record of all the calculations. Finding the roots of the charactistic polynomial for g s leads to the formula where a(s) = −68 + 64is − 4s 2 , (84) b(s) = 8 exp(4πi/3)(−775 + 1734is + 1203s 2 − 308is 3 − 69s 4 (85) This formula is valid, in particular, for s ∈ J. Once Mathematica chooses branches of the square and cube root functions, it can compute the expression above to, say, 1000 decimal places. We will stop at 20 decimal places.
Mathematica can consistently choose a branch of the square root function for all s ∈ J. Mathematica takes the positive branch of √ 1 + s 2 and the positive imaginary branch of √ 3s 2 − 125. Mathematica needs to take a cube root in order to evaluate b(s). We have Mathematica compute b(s) along with λ s . For successive computed parameters s 1 , s 2 ∈ J, Mathematica checks These bounds show that Mathematica cannot switch branches of the cube root when computing successive parameters. An explicit check shows that Mathematica chooses the correct branches for s. Hence, the correct branches are always taken during the computation. Once again, we ruled out computational bugs in the Mathematica code by randomly checking that the computed eigenvalues and eigenvectors are indeed eigenvalues and eigenvectors.
12.3. Performing the cleaning algorithm. For each of the 366 parameters s ∈ J 0 ∪ {s}, we perform the cleaning algorithm on the hybrid sectors in Ω ∆ (s). Each of the resulting clean hybrid sectors Ω(E s , p s ; S j ) is specified by the parameter s, the axis, which is the collection {E * s ,p s ,q s ,ζ} normalized as in Section 5.4, and an equalized choice of lifts {Ŝ j 1 ,Ŝ j 2 ,Ŝ j 3 }. Here S j 1 and S j 2 are the endpoints of S j and S j 3 is the midpoint of S j − S j . The axis is the same for all the hybrid sectors. The real and imaginary parts of the components of all relevant vectors are what is stored in the file. Everything is stored to 20 significant digits. (This is slightly more precision than is used in our C code.) The routine Clean[datas,s] performs the cleaning algorithm for the parameter s and stores the result in the file datas. The data contained in the created files is read in by the C code at the time of its operation.
12.4. Doubles. Our C code represents real numbers by doubles. According to [I, §3.2.2], a double [x] is an object of the form (s, e, f ). Here 1. s is a single bit, determining the sign of x.
2. e is an 11 bit word, representing an integer between 0 and 2047.
3. f = ·b 1 · · · b 52 is a 52 bit word. To access the words comprising a double, we introduce an exact: typedef struct {int a,b;} exact.
Given an exact E, the integer E.a represents the first 32 bit word of the double (the high bits) and the integer E.b represents the second 32 bit word of the double (the low bits). Here is the code which enables one to convert between doubles and exacts. Summarizing [I, §3.2.2, 4.1, 5.6], we see that there is a map R 0 → D, which maps each point x ∈ R 0 to some [x] ∈ D which is closest to x. In case there are several equally close choices, the computer chooses one, as detailed in [I, §4.1].
Regarding the five basic operations, [I, §5]  We order exacts lexicographically, simply by concatenating the two integers, treating them as a single integer. The inclusion r : D → R induces a linear order on the doubles. Beautifully, the linear order on positive doubles coincides with the linear order we have imposed on the corresponding exacts. Every double x (except the largest and smallest) has a unique successor x + > x and a unique predecessor x − < x. To compute these, we convert x to an exact, concatenate the integers, add 1 or −1, split apart the resulting integer, and convert back.
One exceptional case requires mention: To avoid a certain kind of underflow error, we redefined 0 ± to be the double closest to ±10 −50 . In hindsight, this redefinition seems unnecessary. At any rate, it is certainly harmless to our calculations.
An interval is a pair I = (x, y) of doubles, such that x ≤ y. Say that I bounds z ∈ R 0 if x ≤ [z] ≤ y. This is true if and only if x ≤ z ≤ y. Define In all cases, one performs the relevant computations on the endpoints of the interval and then pushes the interval one click outward, to guarantee that 1. If I j bounds x j then I 1 * I 2 bounds x 1 * x 2 .
The only exception to this rule occurs when we are computing I 1 /I 2 , and the two endpoints of I 2 have different signs. In this case we automatically fail whatever computational test we are working on. A potential problem, related to the exceptional case, is that we might divide by a very small number, producing an overflow error. All the tests performed by our code fail if a calculation produces a sufficiently large number. Thus, an overflow error does not occur in the calculations which are relevant to our proof.
We define a complex interval to be an expression of the form X +iY , where X and Y are intervals. We define a vector interval to be a triple of complex intervals. We define a matrix interval to be a triple of vector intervals. And so on. We say that a vector interval bounds a vector if the components of the vector interval bound the components of the vector. Likewise for the other structures.
The algebra of the interval structures is identical to the corresponding algebra for the usual structures. At every step of our computation, the actual object is bounded by the corresponding interval version of the object. Thus, if one of our algorithms halts with success, as implemented, the information constitutes a proof that a perfectly accurate computing machine would also halt with success. 12.6. Record of the calculations. Our code is contained in the directory res/Computers/Proof. This directory is contained in the University of Maryland College Park mathnet system.
The calculations from Section 3.4 are called CALC1 and CALC2, and appear in the Mathematica code in the same order they appear in Section 3.4.
The calculation CALC3 is the calculation for the year lemma. The calculation CALC4 establishes Lemma 9.8. The calculation CALC5 establishes Lemma 9.9 and CALC6 establishes Lemma 11.3. Also, CALC7 establishes Corollary 11.4. We performed the first three calculations on Sept. 2,1999. The remaining four were done on Sept. 30, 1999. For all calculations, we used the computer legendre.umd.edu, which is a Sparc Ultra 5.
Our Mathematica code also calculates the five disks used in estimate 1. We computed these disks on Sept. 2, 1999, on the same machine. Here is the result: 1. W A has center 1.0757057484009542760... and radius .3964124835860459412....