The Regina Handbook

Benjamin Burton

Revision 4.96 (2014-08-29)

Both Regina and this handbook are licensed under the terms of the GNU General Public License.

Regina is a software package for studying 3-manifold triangulations, normal surfaces and angle structures. Other key features include census enumeration, combinatorial recognition of triangulations, and high-level tasks such as 3-sphere recognition and connected sum decomposition. Regina comes with a full graphical user interface, and also offers Python bindings and a low-level C++ programming interface.

This handbook is current as of 29 August 2014 for Regina 4.96.

Tip: You can also browse the alphabetical index of tasks.

Table of Contents

1. Introduction
Getting Started
What does Regina do?
Census Creation and Lookup
Normal Surfaces
Angle Structures
Splitting Surfaces
Data Files
Citing Regina
Who is Regina?
2. Working with Packets
The Packet Tree
Uneditable Packets
Different Packet Types
Container Packets
2-Manifold Triangulations
3-Manifold Triangulations
SnapPea Triangulations
Normal Surface Lists
Angle Structure Lists
Surface Filters
Text Packets
Script Packets
PDF Documents
General Operations on Packets
Creating New Packets
Cloning Packets
Renaming Packets
Deleting Packets and Subtrees
Moving Around the Tree
Refreshing the Tree
3. 3-Manifold Triangulations
New Triangulations
Importing Triangulations
Creating a Census
Validity, Orientability and Other Basic Properties
Viewing Tetrahedron Face Gluings
Skeletal Information
Algebraic Invariants
Combinatorial Composition
High-Level Recognition Routines
SnapPea Calculations
Vertex Links
Editing Tetrahedron Face Gluings
Automatic Simplification
Manual Simplification: Elementary Moves
Switching Between Real and Ideal
Orienting Triangulations and Double Covers
Puncturing and Drilling
Building Connected Sums
Cutting Along and Crushing Normal Surfaces
4. SnapPea Triangulations
Converting from a Regina Triangulation
New SnapPea Triangulations
Importing Triangulations
Analysis and Modification
Volume, Solution Type and Other Basic Properties
Cusps, Fillings and Tetrahedron Shapes
Homology and Fundamental Group
Exporting to Other Formats
Other Operations
5. 2-Manifold Triangulations
Identifying 2-Manifolds
6. Normal Surfaces
Enumerating Normal Surfaces
Summary of Surfaces
Details of Individual Surfaces
Original Matching Equations
Compatibility Between Surfaces
Crushing and Cutting
Using Filters
Creating Filters
Filtering by Surface Properties
Combining Several Filters
7. Angle Structures
Strict Angle Structures
Enumerating Angle Structures
Details of Individual Angle Structures
8. Importing and Exporting Data
Regina Data Files
SnapPea Triangulations
Orb / Casson Triangulations
Isomorphism Signature Lists
Dehydrated Triangulation Lists
PDF Documents
Python Scripts
Regina Data Files
SnapPea Triangulations
3-Manifold Recogniser Triangulations
C++ Source Code
Spreadsheet-Readable (CSV) Surface Lists
PDF Documents
Python Scripts
9. Python Scripting
Starting a Python Session
Graphical Python Consoles
Command-Line Sessions
Script Packets
Accessing Regina from Python
Caveats and Traps
Uneditable Packets
International and Special Characters
Ownership Issues and Boost.Python.ArgumentError / TypeError
Talking with SnapPy
Sample Python Sessions
Working with a triangulation
Working with a packet tree
Reporting progress of long operations
10. Configuration
General Options
Python Options
Tools Options
11. Compiling Regina Into Your Projects
Installing the Development Files
Compiler and Linker Flags
API Documentation
12. Troubleshooting and FAQ
13. Bug Tracking and Mailing Lists
A. Command Line: Main Applications
regina-gui - Regina's graphical user interface
regina-python - Regina's command-line Python interface
B. Command Line: Specialised Utilities
censuslookup - Search for triangulations in Regina's census databases
regconcat - Combine several Regina data files
regconvert - Convert between different Regina file formats
regfiledump - Dump the contents of a Regina data file
regfiletype - Identify the formats of Regina data files
sigcensus - Form a census of splitting surface signatures
tricensus - Form a census of 3-manifold triangulations
tricensus-mpi - Distribute a triangulation census amongst several machines using MPI
tricensus-mpi-status - Summarise the log file of an MPI census of triangulations
trisetcmp - Compare triangulations between two Regina data files
C. Version History
D. Authors and License
License Details
Copying and Modification
External Software