Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

Todo List

Class regina::NAbelianGroup
Optimise (long-term): Look at using sparse matrices for storage of SNF and the like.

Member regina::NCensus::findAllCompletions (NPacket *parent, NTriangulation *base, NBoolSet finiteness, NBoolSet orientability, AcceptTriangulation sieve=0, void *sieveArgs=0, NProgressManager *manager=0)
Bug (urgent): This routine currently does nothing!

Class regina::NDiscSetTet
Bug (long-term): Have some error flag so we can barf politely if the number of normal discs of a given type does not fit into an unsigned long.

Member regina::NFacePairing::findAllPairings (unsigned nTetrahedra, NBoolSet boundary, int nBdryFaces, UseFacePairing use, void *useArgs=0, bool newThread=false)
Optimise (long-term): When generating face pairings, do some checking to eliminate cases in which tetrahedron (k > 0) can be swapped with tetrahedron 0 to produce a smaller representation of the same pairing.

Feature: Allow cancellation of face pairing generation.

Member regina::NGluingPerms::findAllPerms (const NFacePairing *newPairing, const NFacePairingIsoList *autos, bool orientableOnly, bool finiteOnly, int whichPurge, UseGluingPerms use, void *useArgs=0)
Feature: Allow cancellation of permutation set generation.

Class regina::NGroupPresentation
Optimise (long-term): The simplification routines really need work!

Member regina::NGroupPresentation::intelligentSimplify ()
Feature (long-term): Make this simplification more effective.

Member regina::NGroupPresentation::recogniseGroup () const
Feature (long-term): Make this recognition more effective.

Class regina::NNormalSurface
Feature: Calculation of Euler characteristic and orientability for non-compact surfaces.

Feature (long-term): Determine which faces in the solution space a normal surface belongs to.

Member regina::NNormalSurface::cutAlong () const
Feature: Implement this routine.

Member regina::NNormalSurface::findNonTrivialSphere (NTriangulation *tri)
Optimise (urgent): Use maximisation of Euler characteristic to make this routine much faster than a plain vertex enumeration.

Member regina::NNormalSurface::findVtxOctAlmostNormalSphere (NTriangulation *tri)
Optimise (urgent): Use maximisation of Euler characteristic to make this routine much faster than a plain vertex enumeration.

Member regina::NNormalSurface::isCentral () const
Optimise: Cache results.

Member regina::NNormalSurface::isSplitting () const
Optimise: Cache results.

Member regina::NNormalSurface::isThinEdgeLink () const
Optimise: Cache results.

Member regina::NNormalSurface::isVertexLink () const
Optimise: Cache results.

Member regina::NNormalSurface::isVertexLinking () const
Optimise: Cache results.

Member regina::NNormalSurface::knownCanCrush () const
Feature: Implement this routine! At least for embedded 2-spheres.

Class regina::NNormalSurfaceList
Feature: Allow custom matching equations.

Feature: Allow generating only closed surfaces.

Feature: Generate facets of the solution space representing embedded surfaces.

Member regina::NNormalSurfaceList::enumerate (NTriangulation *owner, int newFlavour, bool embeddedOnly=true, NProgressManager *manager=0)
Feature: Allow picking up the first ``interesting'' surface and bailing en route.

Feature (long-term): Determine the faces of the normal solution space.

Feature (long-term): Allow either subsets of normal surface lists or allow deletion of surfaces from lists.

Optimise: Investigate obvious compressions.

Optimise: Investigate monte carlo methods.

Class regina::NNormalSurfaceVector
Feature: Implement quad-oct space.

Optimise (long-term): Investigate using sparse vectors for storage.

Class regina::NNormalSurfaceVectorMirrored
Bug: Allow modification of the vector by overwriting setValue(); this will require documentation changes in both this class and in NNormalSurfaceVector.

Class regina::NPacket
Feature: Provide automatic name selection/specification upon child packet insertion.

Member regina::NPillowTwoSphere::getReducedTriangulation (const NTriangulation *original) const
Bug (urgent): This routine currently does nothing!

Member regina::NPillowTwoSphere::reduceTriangulation () const
Bug (urgent): This routine currently does nothing!

Class regina::NSFS
Implement recognition of more common names.

Implement triangulation construction for more Seifert fibred spaces.

Member regina::NSnappedTwoSphere::getReducedTriangulation (const NTriangulation *original) const
Bug (urgent): This routine currently does nothing!

Member regina::NSnappedTwoSphere::reduceTriangulation () const
Bug (urgent): This routine currently does nothing!

Class regina::NSurfaceFilter
Feature: Implement property lastAppliedTo.

Class regina::NTriangulation
Feature: Is the boundary incompressible?

Feature: Add set of cusps and three corresponding get functions.

Feature (long-term): Am I obviously a handlebody? (Simplify and see if there is nothing left).

Feature (long-term): Is the triangulation Haken?

Feature (long-term): What is the Heegaard genus?

Feature (long-term): Have a subcomplex as a child packet of a triangulation.

Feature (long-term): Implement writeTextLong() for skeletal objects.

Feature (long-term): Random triangulation with n tetrahedra.

Member regina::NTriangulation::isIsomorphicTo (const NTriangulation &other) const
Optimise: Improve the complexity by choosing a tetrahedron mapping from each component and following gluings to determine the others.

Member regina::NTriangulation::crushMaximalForest ()
Bug (urgent): This algorithm needs to be changed from the current incorrect algorithm to Dave's algorithm that avoids crisis by using 2-3 moves.

Member regina::NTriangulation::intelligentSimplify ()
Optimise (urgent): Make this faster and more effective.

Member regina::NTriangulation::simplifyToLocalMinimum (bool perform=true)
Bug (urgent): This routine currently does not crush a maximal forest!

Member regina::NTriangulation::collapseEdge (NEdge *e, bool check=true, bool perform=true)
Bug (urgent): The restrictions on allowing this move to take place are currently wrong.

Member regina::NTriangulation::idealToFinite (bool forceDivision=false)
Optimise (long-term): Have this routine only use as many tetrahedra as are necessary, leaving finite vertices alone.

Member regina::NVertexEnumerator::enumerateVertices (OutputIterator results, RayIterator oldRaysFirst, RayIterator oldRaysLast, FaceIterator facesFirst, FaceIterator facesLast, const NMatrixInt &subspace, const NCompConstraintSet *constraints, NProgressNumber *progress=0) const =0
Optimise: Intersect the hyperplanes in a good order.

File matrixops.h
Feature (long-term): Add a routine to find the rank of an integer matrix; use this to show the rank of the matching equations.

Namespace regina
Bug: Derive from regina::boost::noncopyable where appropriate.

Feature (long-term): Enhance the test suite for the calculation engine.

Member regina::formSigCensus (unsigned order, UseSignature use, void *useArgs=0)
Feature: Add support for symbols of differing case.

Copyright © 1999-2004, Ben Burton
This software is released under the GNU General Public License.
For further information, or to submit a bug or other problem, please contact Ben Burton (bab@debian.org).