1 Simple and Special Polyhedra 1.1 Spines of 3-Manifolds 1.1.1 Collapsing 1.1.2 Spines 1.1.3 Simple and Special Polyhedra 1.1.4 Special Spines 1.1.5 Special Polyhedra and Singular Triangulations 1.2 Elementary Moves on Special Spines 1.2.1 Moves on Simple Polyhedra 1.2.2 2-Cell Replacement Lemma 1.2.3 Bubble Move 1.2.4 Marked Polyhedra 1.3 Special Palyhedra Which are not Spines 1.3.1 Various Notions of Equivalence for Polyhedra 1.3.2 Moves on Abstract Simple Polybedra 1.3.3 How to Hit the Target Without Inverse U-Turns 1.3.4 Zeeman's Collapsing Conjecture 2 Complexity Theory of 3-Manifolds 2.1 What is the Complexity of a 3-Manifold? 2.1.1 Almost Simple Polyhedra 2.1.2 Defiultion and Estimation of the Complexity 2.2 Properties of Complexity 2.2.1 Converting Almost Simple Spines into Special Ones 2.2.2 The Finiteness Property 2.2.3 The Additivity Property 2.3 Closed Manifolds of Small Complexity 2.3.1 Enumeration Procedure 2.3.2 Simplification Moves 2.3.3 Manifolds of Complexity ≤ 6 2.4 Graph Manifolds of Waldhausen 2.4.1 Properties of Graph Manifolds 2.4.2 Manifolds of Complexity ≤ 8 2.5 Hyperbolic Manifolds 2.5.1 Hyperbolic Manifolds of Complexity 9 2.6 Lower Bounds of the Complexity 2.6.1 Logarithmic Estimates 2.6.2 Complexity of Hyperbolic 3-Manifoffis 2.6.3 Manifolds Having Special Spines with One 2-Cell 3 Haken Theory of Normal Surfaces 3.1 Basic Notions and Haken's Scheme 3.2 Theory of Normal Curves 3.2.1 Normal Curves and Normal Equations 3.2.2 Fundamental Solutions and Fundamental Curves 3.2.3 Geometric Summation 3.2.4 An Alternative Approach to the Theory of Normal Curves 3.3 Normal Surfaces in 3-Manifolds 3.3.1 Incompressible Surfaces 3.3.2 Normal Surfaces in 3-Manifolds with Boundary Pattern 3.3.3 Normalization Procedure 3.3.4 Fundamental Surfaces 3.3.5 Geometric Summation 3.4 Normal Surfaces in Handle Decompositions 4 Applications of the Theory of Normal Surfaces 4.1 Examples of Algorithms Based on Haken's Theory 4.1.1 Recognition of Splittable Links 4.1.2 Getting Rid of Clean Disc Patches 4.1.3 Recognizing the Unknot and Calculating the Genus of a Circle in the Boundary of a 3-Manifold 4.1.4 Is M^3 Irreducible and Boundary Irreducible? 4.1.5 Is a Proper Surface lncompressible and Boundary Incompressible? 4.1.6 Is M^3 Sufficiently Large? 4.2 Cutting 3-Manifolds along Surfaces 4.2.1 Normal Surfaces and Spines 4.2.2 Triangulations vs. Handle Decompositions 5 Algorithmic Recognition of S^3 5.1 Links in a 3-Ball 5.1.1 Compressing Discs and One-legged Crowns 5.1.2 Thin Position of Links 5.2 The Rubinstein Theorem 5.2.1 2-Normal Surfaces 5.2.2 Proof of the Rubinstein Theorem 5.2.3 The Algorithm 6 Classification of Haken 3-Manifolds 6.1 Main Theorem 6.2 The Waldhausen Theorem 6.2.1 Deforming Homotopy Equivalences of Surfaces 6.2.2 Deforming Homotopy Equivalences of 3-Manifolds to Homemorphisms 6.3 Finiteness Properties for Surfaces 6.3.1 Two Reformulations of the Recognition Theorem 6.3.2 Abstract Extension Moves 6.3.3 First Finiteness Property and a Toy Form of the Second 6.3.4 Second Finiteness Property for Simple 3-Maaifolds 6.4 Jacc-Shalen-Johannson Decomposition 6.4.1 Improving Isotopy that Separates Surfaces 6.4.2 Does M^3 Contain Essential Tori and Annuli? 6.4.3 Different Types of Essential Tori and Annuli 6.4.4 JSJ-Decomposition Exists and is Unique 6.4.5 Seifert and I-Bundle Chambers 6.4.6 Third Finiteness Property 6.5 Extension Moves 6.5.1 Description of General Extension Moves 6.5.2 Structure of Chambers 6.5.3 Special Extension Moves:Easy Case 6.5.4 Difficult Case 6.5.5 Recognition of Simple Stallings Manifolds with Periodic Monodromy 6.5.6 Recognition of Simple Stallings Manifolds with Nonperiodic Monodromy 6.5.7 Recognition of Quasi-Stallings Manifolds 6.5.8 Subdivision of Solid Tori 6.5.9 Proof of the Recognition Theorem 7 3-Manifold Recognizer 7.1 Computer Presentation of 3-Manifolds 7.1.1 Cell Complexes 7.1.2 3-Manifolds as Thickened Spines 7.2 Simplifying Manifolds and Spines 7.2.1 Coordinate Systems on Tori 7.2.2 Reduction of Cell Structure 7.2.3 Collapses 7.2.4 Surgeries 7.2.5 Disc Replacement Moves 7.3 Labeled Molecules 7.3.1 What is a Labeled Molecule? 7.3.2 Creating a Labeled Molecule 7.3.3 Assembling Seifert Atoms 7.4 The Algorithm 7.5 Tabulation 7.5.1 Comments on the Table 7.5.2 Hyperbolic Manifolds up to CompIexity 12 7.5.3 Why the Table Contains no Duplicates? 7.6 Other Applications of the 3-Manifold Recognizer 7.6.1 Enumeration of Heegaard Diagrams of Genus 2 7.6.2 3-Manifolds Represented by Crystallizations with ≤ 32 Vertices 7.6.3 Classification of Crystallizations of Genus 2 7.6.4 Recognition of Knots and Unknots 7.7 Two-Step Enumeration of 3-Manifolds 7.7.1 Relative Spines and Relative Complexity 7.7.2 Assembling 7.7.3 Modified Enumeration of Manifolds and Spines 8 The Turaev-Viro Invariants 8.1 The Turner Viro Invariants 8.1.1 The Construction 8.1.2 Turaev-Viro Type Invariants of Order r ≤ 3 8.1.3 Construction and Properties of the ε-Invariant 8.1.4 Turaev-Viro Invariants of Order r ≥ 3 8.1.5 Computing Turaev-Viro Invariants 8.1.6 More on ε-Invaniant 8.2 3-Manifolds Having the Same Invariants of Turaev-Viro Type A Appendix A.1 Manifolds of Complexity ≤ 6 A.2 Minimal Spines of Manifolds up to Complexity 6 A.3 Minimal Spines of Some Manifolds of Complexity 7 A.4 Tables of Turaev Viro Invariants References Index