26 #ifndef GUM_LEARNING_STRUCTURAL_CONSTRAINT_FORBIDDEN_ARCS_H 27 #define GUM_LEARNING_STRUCTURAL_CONSTRAINT_FORBIDDEN_ARCS_H 184 #ifndef DOXYGEN_SHOULD_SKIP_THIS 188 # define GUM_CONSTRAINT_CLASS_NAME StructuralConstraintForbiddenArcs 190 # undef GUM_CONSTRAINT_CLASS_NAME 191 #endif // DOXYGEN_SHOULD_SKIP_THIS 203 #ifndef GUM_NO_INLINE
Base classes for oriented graphs.
the structural constraint for forbidding the creation of some arcs during structure learning ...
virtual ~StructuralConstraintForbiddenArcs()
destructor
void addArc(const Arc &arc)
assign a new forbidden arc
the classes to account for structure changes in a graph
The class for notifying learning algorithms of new arc additionsThis class is convenient to know at c...
bool checkModificationAlone(const GraphChange &change) const
checks whether the constraints enable to perform a graph change
ArcSet _ForbiddenArcs__forbidden_arcs
the ForbiddenArcs on which we perform checks
StructuralConstraintForbiddenArcs & operator=(const StructuralConstraintForbiddenArcs &from)
copy operator
The class for notifying learning algorithms of arc removalsThis class is convenient to know at compil...
the base class for all structural constraints
void setArcs(const ArcSet &set)
assign a set of forbidden arcs
gum is the global namespace for all aGrUM entities
void setGraphAlone(const DiGraph &graph)
sets a new graph from which we will perform checkings
void eraseArc(const Arc &arc)
remove a forbidden arc
The base class for all directed edgesThis class is used as a basis for manipulating all directed edge...
const ArcSet & arcs() const
returns the set of mandatory arcs
the base class for all structural constraints
bool isAlwaysInvalidAlone(const GraphChange &change) const
indicates whether a change will always violate the constraint
Base class for all oriented graphs.
bool checkArcAdditionAlone(NodeId x, NodeId y) const
checks whether the constraints enable to add arc (x,y)
bool checkArcReversalAlone(NodeId x, NodeId y) const
checks whether the constraints enable to reverse arc (x,y)
The class for notifying learning algorithms of arc reversalsThis class is convenient to know at compi...
StructuralConstraintForbiddenArcs()
default constructor
void modifyGraphAlone(const ArcAddition &change)
notify the constraint of a modification of the graph
the structural constraint for forbidding the creation of some arcs during structure learning ...
Size NodeId
Type for node ids.
bool checkArcDeletionAlone(NodeId x, NodeId y) const
checks whether the constraints enable to remove arc (x,y)