RETRIANGULATE(1)
π RETRIANGULATE β The Regina Handbook, section 1 π
okay so bestie, you know how sometimes you've got a triangulation or a link diagram and you're like "is this literally the smallest it can be??" β yeah, this is the tool for that. it's retriangulate(1), and she EATS. π
β¨ NAME β¨
retriangulate β exhaustively search through triangulations or knot/link diagrams using local moves π¦
π SYNOPSIS π
retriangulate [ -h, --height=height ] [ -t, --threads=threads ] [ -3,
--dim3 | -4, --dim4 | -k, --knot ] [ -l, --all ] [ -a, --anysig ] [ -c,
--classical | -V, --virtual ] [ -- ] signature
retriangulate { -v, --version | -?, --help }
πΈ DESCRIPTION πΈ
so here's the vibe: you hand it a 3-manifold triangulation, a 4-manifold triangulation, or a link diagram, and it goes absolutely feral with local moves to hunt down every other triangulation/diagram of the same manifold or link that's the same size or smaller. and when we say "local moves" we mean Pachner moves for triangulations and Reidemeister moves for links. periodt. β¨
okay now the actual details, because the details are the whole point:
say your input triangulation or link diagram has n tetrahedra / pentachora / crossings (that's 3-manifold, 4-manifold, or link respectively, iykyk). this utility will exhaustively modify it using local moves, and it will never go over n + height tetrahedra/pentachora/crossings in total. and not only that β all such triangulations/diagrams are guaranteed to be found, each one once and only once (up to an appropriate notion of combinatorial isomorphism). no dupes, no missing pieces. we love a complete search. π
π§ what even counts as a "local move"?
- For 3-manifold triangulations, this utility will only attempt
2-3and2-3Pachner moves, never1-4or4-1moves. - For 4-manifold triangulations, this utility will use all types of Pachner moves.
- For link diagrams, this utility will use all of the classical (planar) Reidemeister moves. there's also an option to use the virtual (non-planar) type II move, which adds two crossings by pushing any two strands over one another from any direction β and which could thereby add a handle to the surface in which the diagram is embedded. by default, the virtual type II move is considered only if the input diagram has positive virtual genus (i.e., it's not a classical diagram); you can modify this behaviour with the options
--classicaland--virtual.
π¦ what does it assume about your input?
the input is assumed to represent a 3-manifold triangulation unless one of the options --dim4 or --knot is passed. (default behaviour stays winning, honestly.)
π what comes out the other end?
the program will output each triangulation or link diagram it finds of the same size n β and yes, that includes the original input triangulation/diagram, she's part of the squad. π
but here's the dramatic part: if it ever finds a smaller triangulation or diagram (thereby proving the original to be non-minimal π), it will output that smaller triangulation/diagram and then stop immediately. no further searching, we found what we came for.
otherwise it keeps outputting triangulations or diagrams of size n until no more can be found. and yeah, the program also finds larger triangulations/diagrams as part of its exhaustive search using local moves β and bestie there are typically many β but those will not be output unless the option --all is passed. π
β signatures, aka the receipts
all triangulations or link diagrams, both input and output, are described using isomorphism signatures and knot/link signatures respectively. these are short text strings that identify a triangulation or link diagram uniquely up to combinatorial isomorphism β which includes relabellings of tetrahedra/pentachora/crossings, relabellings of the vertices of tetrahedra/pentachora vertices, and various rotation/reflection/reversal operations on link diagrams. π
want to see the isomorphism signature of a triangulation? here's how:
- in Regina's graphical user interface you can find this in the Composition tab in the triangulation viewer.
- in Python you can call
t.isoSig()for a triangulationt.
want to see a knot/link signature? also easy:
- in Regina's graphical user interface this is available through the Codes tab in the knot/link viewer.
- in Python you can call
d.sig()for a link diagramd.
for a full and precise specification of isomorphism signatures for 3-manifolds, see Simplification paths in the Pachner graphs of closed orientable 3-manifold triangulations, Burton, 2011, arXiv:1110.6080. π
Tip: Very large triangulations or links have signatures that begin with a dash (-). Such a signature could be mistaken for an option when passing it on the command line. To avoid this, you can pass the special option--immediately before it: this indicates that all command-line options have finished, and whatever comes next should be treated as the input signature.example$ retriangulate -h1 -- -b-LLvALwvM...
π OPTIONS π
-h,--height=heightβ Specifies the number of additional tetrahedra, pentachora or crossings (for a 3-manifold, 4-manifold or link respectively) that we allow during intermediate stages of retriangulation. That is, if the input triangulation or link diagram hasntetrahedra/pentachora/crossings, then this utility will exhaustively search through all triangulations or link diagrams that it can reach via local moves that do not exceedn + heighttetrahedra/pentachora/crossings in total.
ngl, note that these larger intermediate triangulations or diagrams will not be written to output; however, a larger height may allow the program to access additional smaller triangulations or diagrams that were otherwise inaccessible. so sometimes you gotta go up to come back down. π¦
The given height must be a non-negative integer. In addition, for 3-manifolds it must be strictly positive, and for 4-manifolds it must be even.
If not specified, this option defaults to 1 when working with 3-manifolds or link diagrams, and it defaults to 2 when working with 4-manifolds.
Warning: In general, the running time can grow superexponentially with height. It is strongly suggested that you begin with--height=1(or2for 4-manifolds) and increase it one step at a time until the performance becomes unacceptable. π she escalates FAST.
-t,--threads=threadsβ Specifies the degree to which this utility uses parallel processing. Specifically, this program will use threads simultaneous threads of execution as it works its way through the different retriangulations or diagrams of the input manifold or link.
This program is typically able to use parallelism effectively, and so running with k threads should approximately divide the running time by k. slay. π
If not specified, this option defaults to 1 (i.e., single-threaded processing, with no parallelism).
-3,--dim3(default) β Indicates that the given signature is the isomorphism signature of a 3-manifold triangulation. The local moves used will be2-3and3-2Pachner moves.
This is the default if none of the arguments --dim3, --dim4 or --knot is passed. main character energy, honestly. π
-4,--dim4β Indicates that the given signature is the isomorphism signature of a 4-manifold triangulation. The local moves used will be1-5,2-4,3-3,4-2and5-1Pachner moves. all of them. the whole buffet. π-k,--knotβ Indicates that the given signature is a knot/link signature. The local moves used will be the Reidemeister moves, possibly including the virtual type II move; see--classicaland--virtualfor details.-l,--allβ Output the signatures of all triangulations or link diagrams that are visited, including those that are larger than the original.
By default, larger triangulations or link diagrams (of which there may be very many π) are not included in the output.
-a,--anysigβ Indicates that the output is not required to be classic isomorphism signatures.
Regina 7.0 introduced alternate types of isomorphism signatures. Like the original isomorphism signatures that were introduced many years earlier, each type of signature uniquely identifies a triangulation up to combinatorial isomorphism. Moreover, Regina can reconstruct a triangulation or link from a signature of any type. β¨
Internally, this utility uses one of the newer, alternate types of signature that is faster to compute. However, it still outputs classic signatures; that is, the same isomorphism signatures that were originally introduced back in 2011. This conversion from alternate to classic signatures adds extra overhead to the running time.
If you pass the option --anysig, Regina will not convert its output back to classic signatures; instead it will output whatever alternate signature type it uses internally. This will be faster, and you can still use these alternate signatures to reconstruct triangulations; the only reason not to do this is if you neeed to ensure compatibility with the original classical signatures (e.g., for matching against a list of signatures that was generated elsewhere).
Warning: The internal signature type is subject to change in future versions of Regina. That is, if you do use --anysig, then you may get different output depending upon which version of Regina you are using. π
Note: Currently Regina only uses alternate signature types with triangulations. For knot/link signatures, it still uses classic signatures, though again this is subject to change in future version of Regina.
-c,--classicalβ For link diagrams, only use the classical type I, II and III Reidemeister moves. This is the default behaviour when the input is a classical (planar) link diagram.
This option can only be used with --knot.
-V,--virtualβ For link diagrams, use the classical type I, II and III Reidemeister moves as well as the virtual type II move. The virtual type II move is like the classical type II move to add two crossings, except that we are allowed to push any two strands over one another from any direction; as a consequence, this could add a handle to the surface in which the link diagram is embedded. This option is the default behaviour when the input is a link diagram with positive virtual genus (i.e., a non-classical link diagram). π
This option can only be used with --knot.
--β Indicates that all other options have finished, and whatever comes next on the command line should be treated as the input signature.
This is useful when your signature begins with a dash, to avoid confusing your input signature with a regular command line option. lifesaver fr fr. π«Ά
-v,--versionβ Show which version of Regina is being used, and exit immediately.-?,--helpβ Display brief usage information, and exit immediately.
π EXAMPLES β¨
Okay bestie, so this triangulation of a 3-manifold is non-minimal, but like⦠it takes a little bit of work to actually see that. Watch:
example$ retriangulate -h2 hLLAAkbdceefggdonxdjxn
hLLAAkbdceefggdonxdjxn
hLALPkbcbefgfghxwnxark
Found 2 triangulation(s).
example$ retriangulate -h3 hLLAAkbdceefggdonxdjxn
hLLAAkbdceefggdonxdjxn
hLALPkbcbefgfghxwnxark
hLLMMkbcdfefgglcghtchj
gLLPQcdcefffqsjpunw
Triangulation is non-minimal!
Smaller triangulation: gLLPQcdcefffqsjpunw
example$
So like, even though the program stopped as soon as it found a smaller triangulation, you can simplify this even further:
example$ retriangulate gLLPQcdcefffqsjpunw
gLLPQcdcefffqsjpunw
fLAMcbbcdeedhwhxn
Triangulation is non-minimal!
Smaller triangulation: fLAMcbbcdeedhwhxn
example$
And a little more probing? It shows this is the cusped hyperbolic manifold m112. No cap:
example$ censuslookup fLAMcbbcdeedhwhxn
fLAMcbbcdeedhwhxn: 1 hit
m112 : #2 -- Cusped hyperbolic census (orientable)
example$
π MACOS USERS π
If you downloaded a drag-and-drop app bundle, bestie, this utility is shipped inside it. And if you dragged Regina to the main Applications folder, you can run it as /Applications/Regina.app/Contents/MacOS/retriangulate. Slay π«Ά
πΈ WINDOWS USERS π
The command-line utilities are installed beneath the Program Files directory. And on some machines, that directory is called Program Files (x86). You can start this utility by running:
c:\Program Files\Regina\Regina 7.4.1\bin\retriangulate.exe
π SEE ALSO π
regina-gui.
β¨ AUTHOR π
This utility was written by Benjamin Burton <bab@maths.uq.edu.au>. Many people have been involved in the development of Regina; see the users' handbook for a full list of credits. Iconic behaviour honestly π§
okay that's the whole page bestie, we ate and left no crumbs π
this one's from 25 August 2025 and it's the RETRIANGULATE(1) page β mwah, go simplify some triangulations π¦β
π¦ where this page comes from
- arch rolling: regina 7.4.1-4 Β· LicenseRef-Regina
- ubuntu resolute: regina-normal 7.4.1-1.1build1
- ubuntu stonking: regina-normal 7.4.1-1.2
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms