treeconstraint.h File Reference

Constraint classes for use with tree traversal enumeration methods. More...

`#include "maths/integer.h"`
`#include "surfaces/normalcoords.h"`
`#include "surfaces/normalsurface.h"`
`#include "enumerate/treelp.h"`

## Classes

class | regina::LPMatrix< IntType >
| A matrix class for use with linear programming. More...
struct | regina::LPCol< LPConstraint >
| Used by LPInitialTableaux<LPConstraint> to store a single column of the adjusted matching equation matrix in sparse form. More...
class | regina::LPInitialTableaux< LPConstraint >
| Stores an adjusted matrix of homogeneous linear matching equations based on a given triangulation, in sparse form. More...
class | regina::LPData< LPConstraint, IntType >
| Stores an intermediate tableaux for the dual simplex method, and contains all of the core machinery for using the dual simplex method. More...
class | regina::LPConstraintBase
| A base class for additional linear constraints that we can add to the tableaux of normal surface or angle structure matching equations. More...
struct | regina::LPConstraintBase::Coefficients
| Stores the extra coefficients in a single column for the nConstraints additional rows that we add to the tableaux to describe the nConstraints additional linear equations or inequalities. More...
class | regina::LPConstraintSubspace
| A subclass of LPConstraintBase used for constraints defined entirely by homogeneous linear equations. More...
class | regina::LPConstraintNone
| A do-nothing class that imposes no additional linear constraints on the tableaux of normal surface or angle structure matching equations. More...
struct | regina::LPConstraintNone::Coefficients
| Stores the extra coefficients in the tableaux associated with this constraint class (which for this class is a no-op, since in this case there are no extra coefficients). More...
class | regina::LPConstraintEuler
| A class that constraints the tableaux of normal surface matching equations to ensure that Euler characteristic is strictly positive. More...
struct | regina::LPConstraintEuler::Coefficients
| Stores the extra coefficients in the tableaux associated with this constraint class (in this case, one extra integer per column). More...
class | regina::LPConstraintNonSpun
| A class that constraints the tableaux of normal surface matching equations to ensure that normal surfaces in an ideal triangulation are compact (thereby avoiding spun normal surfaces with infinitely many triangles). More...
struct | regina::LPConstraintNonSpun::Coefficients
| Stores the extra coefficients in the tableaux associated with this constraint class (in this case, two extra integers per column). More...
class | regina::BanConstraintBase
| A base class for additional banning and marking constraints that we can place on tree traversal algorithms. More...
class | regina::BanNone
| A do-nothing class that bans no coordinates and marks no coordinates. More...
class | regina::BanBoundary
| A class that bans normal disc types that meet the boundary of the underlying triangulation. More...
class | regina::BanTorusBoundary
| A class that bans and marks disc types associated with torus boundary components. More...

## Namespaces

| regina
| Contains the entire Regina calculation engine.

## Detailed Description

Constraint classes for use with tree traversal enumeration methods.

Copyright © 1999-2016, The Regina development team
This software is released under the GNU General Public License, with some additional permissions; see the source code for details.
For further information, or to submit a bug or other problem, please contact Ben Burton (bab@maths.uq.edu.au).