The CompuTop.org Software Archive.
Welcome to CompuTop.org, a site for for people doing computational
stuff with low-dimensional topology. If you know any other software
that should be listed here, drop me a line. Suggestions are welcome.
--Nathan Dunfield
This website partially supported by NSF grant DMS-045491.
Recent additions
2008/6/23: Added CHomP the Computational Homology Project.
2008/3/18: Added a new program for computing knot Floer homology
2007/11/8: Added Kenzo for computations in algebraic topology.
2007/4/11: Added Twister which computes twisted Alexader polynomials
2006/11/14: Added some programs of to compute intersection numbers of curves on surfaces, as well as the Goldman bracket and Turaev cobracket.
2006/10/8: Added hfk, which computes knot Floer homology
2006/8/25: Added a new section with three programs for computing homology of more general spaces.
2006/5/10: Added SeifertView, for visualizing Seifert surfaces of knots in the 3-sphere.
2006/4/29: Added bdyslopes for studying incompressible surfaces in 2-bridge link complements.
- Programs for computing invariant train tracks of surface
homeomorphisms:
- By Toby
Hall for DOS, Windows, and Unix.
- BH
by W. Menasco and J. Ringland for Unix (C++ source).
- XTrain by Peter
Brinkman in Java.
- Circle Packing
Software by Ken Stephenson.
- Programs
for computing minimal intersection numbers of curves on surfaces, the
Goldman bracket, and the Turaev cobracket. By Moira Chas.
3-dimensional manifolds
SnapPea is a general purpose program for manipulation of
3-manifolds, with an emphasis on finite volume hyperbolic
3-manifolds. Allows entering of manifolds as Dehn surgery on
link complements and from an extensive census of small-volume
manifolds.
- Jeff Weeks's original SnapPea.
For Macintosh. (A semi-functional beta version for Unix is also
available).
- A. C. Manoharan's Windows
port. Note: This version also runs under Intel Linux using WINE, a Windows emulator. WINE
can be hard to install, so it's best have a Linux distribution
that includes it.
- An improved Python interface for SnapPea called SnapPeaPython, by Jeff
Weeks, Marc Culler, and Nathan Dunfield. A older version
(3.0d3) is available here.
An even earlier prototype interface (of limited interest) can be
found here.
- Oliver Goodman's Snap, for
computing arithmetic invariants of hyperbolic 3-manifolds.
- Damian Heard's Orb,
which, unlike SnapPea, allows orbifolds where the singular set
contains trivalent vertices.
- Additions to
SnapPea, mostly for generating link projections, from Nathan
Dunfield.
- Tables of properties of the SnapPea census manifolds, from Nathan
Dunfield.
- Joe Christy's
table
of knots and links in SnapPea format.
Other general 3-manifold programs.
- t3m, is a
general Python framework for
studying 3-manifolds and is a self-styled "box of tinker toys
for topologists". It can do normal surface theory via FXrays and is designed
to interact with SnapPeaPython. By Marc Culler and Nathan Dunfield.
- Regina, a
general program for studying 3-manifolds including support for
normal surfaces and angle structures. By Ben Burton.
- Heegaard, is for studying
3-manifolds via their Heegaard splittings. By John Berge.
- Geo
and Cusp two programs from Andrew Casson for geometrizing
3-manifolds.
- Spine a general 3-manifold
program based around the notion of a spine,
which (roughly) is a dual notion to a triangulation. By Sergei
V. Matveev and others.
- Software for constructing a manifold from a "twisted
face-pairing" by Cannon,
Floyd, and Parry.
- Twister,
a program for constructing triangulations from mapping class
descriptions of surface bundles and Heegaard splittings by Tracy
Hall and Saul Schleimer.
- Data
on 3-manifolds with small triangulations by Roberto Frigerio,
Bruno Martelli, and Carlo Petronio. Includes a complete list of
all closed 3-manifolds that can be triangulated with at most 9
tetrahedra.
- ographs
computer hyperbolic structures on 3-manifolds with totally
geodesic boundary. By Bruno Martelli. Unix source.
- Programs and data about the Virtual
Haken Conjecture: census manifolds and
twist knot
orbifolds. By Nathan Dunfield, Bill Thurston, and Frank
Calegari.
- Twister
is a program for computing twisted Alexander polynomials, which
give insight into the Thurston norm and whether a 3-manifold
fibers over the circle. By Stefal Friedl.
- For a library specific to the 2 and 3 torus, see the Novikov Torus Conjecture Library.
Normal Surface Theory
- FXrays is a fast
engine for finding extremal rays of polyhedral cones. Designed
to be used with t3m
which has support of normal surfaces, it is a small C program
which could easily be incorporated into other programs. By Marc
Culler.
- See also Regina and t3m.
Kleinian Groups
- Curt McMullen's klein for
generating pictures of limit sets of Kleinian groups (C source.)
- David Wright's
Kleinian Groups Software in Fortran.
- Masaaki Wada's OPTi
for visualizing quasi-conformal deformations of
once-punctured-torus groups (Macintosh).
- Subdivision programs to try to construct the sphere at
infinity, by Cannon, Floyd,
and Parry.
- David Dumas's Bear for
examining all kinds of punctured torus groups (e.g. producing
Ber's slices). (C Source.)
Foliations and other dynamics
Visualization
- Geomview has a module
Maniview for
visualizing the insides of 3-manifolds.
- A program for exploring
non-Euclidean spaces (Riemann surfaces, hyperbolic 3-manifolds)
via the notion of "kinematical topological spaces." By Pavel
S. Pankov and others. For Windows.
- CurvedSpaces by
Jeff Weeks. For Windows.
Knot Theory and related topics
- Morwen Thistlethwaite's and Jim Hoste's Knotscape
(Unix). A preliminary version for Mac OS X is here.
- Hugh Morton's knot theory
programs.
- Rob Scharein's KnotPlot: The pretty
pictures and the
software itself.
- SeifertView,
a program for visualizing Seifert surfaces for knots in the
3-sphere. For Windows. Written by Jarke van Wijk.
- Alexander Shumakovitch's KhoHo, a package for
computing Khovanov homology, which is related to the Jones
polynomial.
- Dror Bar-Natan's The Knot
Atlas, featuring online tables of knots and links with
pictures and polynomial invariants. Also includes a Mathematica
package for computing polynomial invariants of knots and links
which contains the information in the tables.
- Knotilus,
an online program for generating drawings of knots and links.
Includes access to all prime alternating knots of 22 or fewer
crossings, from PAKG.
- Nathan Dunfield's program to compute
boundary slopes of Montesinos knots.
- bdyslopes,
a program for studying incompressible surfaces in 2-bridge link
complements. By Jim Hoste and Patrick Shanahan.
- Book
Knot Simplifier, a program by Dynnikov and others for
studying link projections using Ivan Dynnikov's 3-page book
techniques (Java). It can be used to recognizing the unknot and
split links.
- Gridlink is
a tool for manipulating rectangular link diagrams (also called
"arc presentations") used by Ivan Dynnikov in this paper,
which are now used as a framework for studying Heegaard knot
Floer homology. Gridlink is written by Marc Culler in Python,
and should run on all platforms.
- hfk, a
program for computing Heegaard knot Floer homology, by John Baldwin and
William Gillam.
- A new
program for computing Heegaard knot Floer homology, by Jean-Marie Droz.
- The program cs
computes SU(2) and SO(3) representation curves for 2-bridge
knots, as well as associated Chern-Simons invariants on Dehn
surgeries. By Karl Schmidt and Alexander Pilz (Sun and
Mac, Unix source available on request).
- See also SnapPea.
- See also Twister.
Combinatorial/Geometric Group Theory
- MAGNUS from CCNY
(Unix).
- kbmag2
a package for Knuth-Bendix in monoids, and automatic groups by
Derek Holt (a descendent of the Warwick automatic groups
package) (Unix/C source).
Algebraic Topology
Here are some packages for computing the homology and cohomology of simplicial complexes and groups:
- Linbox, a C++ library with GAP and Maple interfaces.
- HAP: Homological Algebra Programming, a GAP package
- Moise, a Maple topology package by Andrew Hicks.
- Kenzo,
a Lisp program for computing homology, cohomology, and homotopy
groups. It implements several spectral sequences, can build the
first stages of the Whitehead and Postnikov towers, and has a
particular emphasis on iterated loop spaces.
- CHomP, the Computational
Homology Project, has a set of tools for computing the homology
of a collection of n-dimensional cubes, with a view
towards applied applications in dynamical systems, chaos theory,
and pattern characterization.