28 #ifndef GUM_LEARNING_STRUCTURAL_CONSTRAINT_DAG_H 29 #define GUM_LEARNING_STRUCTURAL_CONSTRAINT_DAG_H 51 StructuralConstraintDiGraph > {
198 #ifndef DOXYGEN_SHOULD_SKIP_THIS 202 # define GUM_CONSTRAINT_CLASS_NAME StructuralConstraintDAG 204 # undef GUM_CONSTRAINT_CLASS_NAME 205 #endif // DOXYGEN_SHOULD_SKIP_THIS 217 #ifndef GUM_NO_INLINE A class for detecting directed cycles in DAGs when trying to apply many changes to the graph...
bool checkModificationAlone(const ArcAddition &change) const
checks whether the constraints enable to add an arc
void setGraph(const DAG &graph)
sets a new graph from which we will perform checkings
The class for notifying learning algorithms of new arc additionsThis class is convenient to know at c...
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
void setGraphAlone(const DiGraph &graph)
sets a new graph from which we will perform checkings
The class for notifying learning algorithms of arc removalsThis class is convenient to know at compil...
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
void modifyGraphAlone(const ArcAddition &change)
notify the constraint of a modification of the graph
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
bool checkArcAdditionAlone(NodeId x, NodeId y) const
checks whether the constraints enable to add arc (x,y)
bool isAlwaysInvalidAlone(const GraphChange &change) const
indicates whether a change will always violate the constraint
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
the "meta-programming" class for storing structural constraintsIn aGrUM, there are two ways to store ...
bool checkArcReversalAlone(NodeId x, NodeId y) const
checks whether the constraints enable to reverse arc (x,y)
Base class for all oriented graphs.
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
StructuralConstraintDAG()
default constructor
bool checkArcDeletionAlone(NodeId x, NodeId y) const
checks whether the constraints enable to remove arc (x,y)
The class for notifying learning algorithms of arc reversalsThis class is convenient to know at compi...
std::size_t Size
In aGrUM, hashed values are unsigned long int.
StructuralConstraintDAG & operator=(const StructuralConstraintDAG &from)
copy operator
virtual ~StructuralConstraintDAG()
destructor
Size NodeId
Type for node ids.
DAGCycleDetector _DAG__cycle_detector
the cycle detector used to check quickly graph modifications
The base class for structural constraints imposed by DAGs.