![]() |
aGrUM 2.3.2
a C++ library for (probabilistic) graphical models
|
class for graph triangulations for which we enforce a given partial ordering on the nodes eliminations, that is, the set of all the nodes is divided into several subsets. More...
#include <partialOrderedTriangulation.h>
Public Member Functions | |
Constructors / Destructors | |
| PartialOrderedTriangulation (const PartialOrderedEliminationSequenceStrategy &elimSeq=DefaultPartialOrderedEliminationSequenceStrategy(), const JunctionTreeStrategy &JTStrategy=DefaultJunctionTreeStrategy(), bool minimality=false) | |
| default constructor | |
| PartialOrderedTriangulation (const UndiGraph *graph, const NodeProperty< Size > *domsizes, const List< NodeSet > *partial_order, const PartialOrderedEliminationSequenceStrategy &elimSeq=DefaultPartialOrderedEliminationSequenceStrategy(), const JunctionTreeStrategy &JTStrategy=DefaultJunctionTreeStrategy(), bool minimality=false) | |
| constructor with a given graph | |
| PartialOrderedTriangulation (const PartialOrderedTriangulation &from) | |
| copy constructor | |
| PartialOrderedTriangulation (PartialOrderedTriangulation &&from) | |
| move constructor | |
| virtual PartialOrderedTriangulation * | newFactory () const |
| returns a fresh triangulation (over an empty graph) of the same type as the current object | |
| virtual PartialOrderedTriangulation * | copyFactory () const final |
| virtual copy constructor | |
| virtual | ~PartialOrderedTriangulation () |
| destructor | |
Accessors / Modifiers | |
| virtual void | setGraph (const UndiGraph *graph, const NodeProperty< Size > *domsizes) final |
| initialize the triangulation data structures for a new graph | |
| virtual void | setPartialOrder (const List< NodeSet > *partial_order) final |
| sets the elimination sequence's partial order (only a reference is stored) | |
Accessors / Modifiers | |
| const EdgeSet & | fillIns () |
| returns the fill-ins added by the triangulation algorithm | |
| const std::vector< NodeId > & | eliminationOrder () |
| returns an elimination ordering compatible with the triangulated graph | |
| Idx | eliminationOrder (const NodeId) |
| returns the index of a given node in the elimination order (0 = first node eliminated) | |
| const NodeProperty< NodeId > & | reverseEliminationOrder () |
| returns a table indicating, for each node, at which step it was deleted by the triangulation process | |
| const UndiGraph & | triangulatedGraph () |
| returns the triangulated graph | |
| const CliqueGraph & | eliminationTree () |
| returns the elimination tree of a compatible ordering | |
| const CliqueGraph & | junctionTree () |
| returns a compatible junction tree | |
| NodeId | createdJunctionTreeClique (const NodeId id) |
| returns the Id of the clique of the junction tree created by the elimination of a given node during the triangulation process | |
| const NodeProperty< NodeId > & | createdJunctionTreeCliques () |
| returns the Ids of the cliques of the junction tree created by the elimination of the nodes | |
| const CliqueGraph & | maxPrimeSubgraphTree () |
| returns a junction tree of maximal prime subgraphs | |
| NodeId | createdMaxPrimeSubgraph (const NodeId id) |
| returns the Id of the maximal prime subgraph created by the elimination of a given node during the triangulation process | |
| void | clear () |
| reinitialize the graph to be triangulated to an empty graph | |
| void | setMinimalRequirement (bool) |
| sets/unset the minimality requirement | |
| virtual bool | isMinimalityRequired () const final |
| indicates wether minimality is required | |
| void | setFillIns (bool) |
| sets/unsets the record of the fill-ins in the standard triangulation procedure | |
| const UndiGraph * | originalGraph () const |
| returns the graph to be triangulated | |
| EliminationSequenceStrategy & | eliminationSequenceStrategy () const |
| returns the elimination sequence strategy used by the triangulation | |
| JunctionTreeStrategy & | junctionTreeStrategy () const |
| returns the junction tree strategy used by the triangulation | |
Accessors / Modifiers | |
| double | maxLog10CliqueDomainSize () |
| returns the max of log10DomainSize of the cliques in the junction tree. | |
| const NodeProperty< Size > * | domainSizes () const |
| returns the domain sizes of the variables of the graph to be triangulated | |
Protected Member Functions | |
| virtual void | initTriangulation_ (UndiGraph &graph) final |
| the function called to initialize the triangulation process | |
Protected Attributes | |
| const List< NodeSet > * | _partial_order_ {nullptr} |
| the partial ordering to apply to eliminate nodes | |
| EliminationSequenceStrategy * | elimination_sequence_strategy_ {nullptr} |
| the elimination sequence strategy used by the triangulation | |
| JunctionTreeStrategy * | junction_tree_strategy_ {nullptr} |
| the junction tree strategy used by the triangulation | |
| const NodeProperty< Size > * | domain_sizes_ {nullptr} |
| the domain sizes of the variables/nodes of the graph | |
Private Member Functions | |
| PartialOrderedTriangulation & | operator= (const PartialOrderedTriangulation &) |
| forbid copy operator | |
| void | _triangulate_ () |
| the function that performs the triangulation | |
| void | _computeEliminationTree_ () |
| returns an elimination tree from a triangulated graph | |
| void | _computeMaxPrimeJunctionTree_ () |
| computes the junction tree of the maximal prime subgraphs | |
| void | _computeRecursiveThinning_ () |
| removes redondant fill-ins and compute proper elimination cliques and order | |
| void | _computeMaxPrimeMergings_ (const NodeId node, const NodeId from, std::vector< Arc > &merged_cliques, NodeSet &mark) const |
| used for computing the junction tree of the maximal prime subgraphs | |
Private Attributes | |
| const UndiGraph * | _original_graph_ {nullptr} |
| a pointer to the (external) original graph (which will be triangulated) | |
| UndiGraph | _triangulated_graph_ |
| the triangulated graph | |
| EdgeSet | _fill_ins_ |
| the fill-ins added during the whole triangulation process | |
| std::vector< NodeId > | _elim_order_ |
| the order in which nodes are eliminated by the algorithm | |
| NodeProperty< NodeId > | _reverse_elim_order_ |
| the elimination order (access by NodeId) | |
| NodeProperty< NodeSet > | _elim_cliques_ |
| the cliques formed by the elimination of the nodes | |
| CliqueGraph | _elim_tree_ |
| the elimination tree computed by the algorithm | |
| const CliqueGraph * | _junction_tree_ {nullptr} |
| the junction tree computed by the algorithm | |
| CliqueGraph | _max_prime_junction_tree_ |
| the maximal prime subgraph junction tree computed from the junction tree | |
| NodeProperty< NodeId > | _node_2_max_prime_clique_ |
| indicates which clique of the max prime junction tree was created by the elmination of a given node (the key of the table) | |
| bool | _has_triangulation_ {false} |
| a boolean indicating whether we have parformed a triangulation | |
| bool | _has_triangulated_graph_ {false} |
| a boolean indicating whether we have constructed the triangulated graph | |
| bool | _has_elimination_tree_ {false} |
| a boolean indicating whether the elimination tree has been computed | |
| bool | _has_junction_tree_ {false} |
| a boolean indicating whether the junction tree has been constructed | |
| bool | _has_max_prime_junction_tree_ {false} |
| indicates whether a maximal prime subgraph junction tree has been constructed | |
| bool | _has_fill_ins_ {false} |
| indicates whether we actually computed fill-ins | |
| bool | _minimality_required_ {false} |
| indicates whether the triangulation must be minimal | |
| std::vector< EdgeSet > | _added_fill_ins_ |
| a vector containing the set of fill-ins added after each node elimination (used by recursive thinning) | |
| bool | _we_want_fill_ins_ {false} |
| a boolean indicating if we want fill-ins list with the standard triangulation method | |
class for graph triangulations for which we enforce a given partial ordering on the nodes eliminations, that is, the set of all the nodes is divided into several subsets.
Within each subset, any ordering can be chosen. But all the nodes of the first subset must be eliminated before the nodes of the second, which must be eliminated before those of the third subset, and so on.
Definition at line 72 of file partialOrderedTriangulation.h.
| gum::PartialOrderedTriangulation::PartialOrderedTriangulation | ( | const PartialOrderedEliminationSequenceStrategy & | elimSeq = DefaultPartialOrderedEliminationSequenceStrategy(), |
| const JunctionTreeStrategy & | JTStrategy = DefaultJunctionTreeStrategy(), | ||
| bool | minimality = false ) |
default constructor
| elimSeq | the elimination sequence used to triangulate the graph |
| JTStrategy | the junction tree strategy used to create junction trees |
| minimality | a Boolean indicating whether we should enforce that the triangulation is minimal w.r.t. inclusion |
Definition at line 56 of file partialOrderedTriangulation.cpp.
References PartialOrderedTriangulation(), and gum::StaticTriangulation::StaticTriangulation().
Referenced by PartialOrderedTriangulation(), PartialOrderedTriangulation(), PartialOrderedTriangulation(), PartialOrderedTriangulation(), ~PartialOrderedTriangulation(), copyFactory(), newFactory(), and operator=().
| gum::PartialOrderedTriangulation::PartialOrderedTriangulation | ( | const UndiGraph * | graph, |
| const NodeProperty< Size > * | domsizes, | ||
| const List< NodeSet > * | partial_order, | ||
| const PartialOrderedEliminationSequenceStrategy & | elimSeq = DefaultPartialOrderedEliminationSequenceStrategy(), | ||
| const JunctionTreeStrategy & | JTStrategy = DefaultJunctionTreeStrategy(), | ||
| bool | minimality = false ) |
constructor with a given graph
| graph | the graph to be triangulated, i.e., the nodes of which will be eliminated |
| domsizes | the domain sizes of the nodes to be eliminated |
| partial_order | the list of the subsets constituting the partial ordering |
| elimSeq | the elimination sequence used to triangulate the graph |
| JTStrategy | the junction tree strategy used to create junction trees |
| minimality | a Boolean indicating whether we should enforce that the triangulation is minimal w.r.t. inclusion |
Definition at line 65 of file partialOrderedTriangulation.cpp.
References PartialOrderedTriangulation(), gum::StaticTriangulation::StaticTriangulation(), _partial_order_, gum::StaticTriangulation::elimination_sequence_strategy_, and gum::PartialOrderedEliminationSequenceStrategy::setPartialOrder().
| gum::PartialOrderedTriangulation::PartialOrderedTriangulation | ( | const PartialOrderedTriangulation & | from | ) |
copy constructor
Definition at line 82 of file partialOrderedTriangulation.cpp.
References PartialOrderedTriangulation(), gum::StaticTriangulation::StaticTriangulation(), and _partial_order_.
| gum::PartialOrderedTriangulation::PartialOrderedTriangulation | ( | PartialOrderedTriangulation && | from | ) |
move constructor
Definition at line 90 of file partialOrderedTriangulation.cpp.
References PartialOrderedTriangulation(), gum::StaticTriangulation::StaticTriangulation(), and _partial_order_.
|
virtual |
destructor
Definition at line 110 of file partialOrderedTriangulation.cpp.
References PartialOrderedTriangulation().
|
privateinherited |
returns an elimination tree from a triangulated graph
Definition at line 341 of file staticTriangulation.cpp.
References _elim_cliques_, _elim_order_, _elim_tree_, _has_elimination_tree_, _has_triangulation_, _original_graph_, _reverse_elim_order_, and _triangulate_().
|
privateinherited |
computes the junction tree of the maximal prime subgraphs
Definition at line 411 of file staticTriangulation.cpp.
References _computeMaxPrimeMergings_(), _has_junction_tree_, _has_max_prime_junction_tree_, _junction_tree_, _max_prime_junction_tree_, _node_2_max_prime_clique_, gum::Set< Key >::contains(), gum::HashTable< Key, Val >::insert(), junction_tree_strategy_, and junctionTree().
|
privateinherited |
used for computing the junction tree of the maximal prime subgraphs
Definition at line 379 of file staticTriangulation.cpp.
References _computeMaxPrimeMergings_(), _junction_tree_, _original_graph_, gum::Set< Key >::begin(), and gum::Set< Key >::end().
Referenced by _computeMaxPrimeJunctionTree_(), and _computeMaxPrimeMergings_().
|
privateinherited |
removes redondant fill-ins and compute proper elimination cliques and order
Definition at line 203 of file staticTriangulation.cpp.
References _added_fill_ins_, _elim_cliques_, _elim_order_, _fill_ins_, _has_fill_ins_, _reverse_elim_order_, _triangulated_graph_, gum::HashTable< Key, Val >::insert(), gum::PriorityQueueImplementation< Val, Priority, Cmp, Gen >::insert(), gum::Set< Key >::insert(), gum::PriorityQueueImplementation< Val, Priority, Cmp, Gen >::pop(), gum::PriorityQueueImplementation< Val, Priority, Cmp, Gen >::priority(), and gum::PriorityQueueImplementation< Val, Priority, Cmp, Gen >::setPriority().
Referenced by _triangulate_().
|
privateinherited |
the function that performs the triangulation
Definition at line 551 of file staticTriangulation.cpp.
References _added_fill_ins_, _computeRecursiveThinning_(), _elim_cliques_, _elim_order_, _fill_ins_, _has_fill_ins_, _has_triangulated_graph_, _has_triangulation_, _minimality_required_, _original_graph_, _reverse_elim_order_, _triangulated_graph_, _we_want_fill_ins_, gum::UndiGraph::addEdge(), gum::Set< Key >::begin(), elimination_sequence_strategy_, gum::Set< Key >::end(), gum::UndiGraph::eraseNode(), gum::EdgeGraphPart::existsEdge(), initTriangulation_(), gum::Set< Key >::insert(), gum::EdgeGraphPart::neighbours(), gum::Set< Key >::resize(), gum::NodeGraphPart::size(), and gum::Set< Key >::size().
Referenced by _computeEliminationTree_(), fillIns(), and triangulatedGraph().
|
virtualinherited |
reinitialize the graph to be triangulated to an empty graph
Implements gum::Triangulation.
Definition at line 173 of file staticTriangulation.cpp.
References _added_fill_ins_, _elim_cliques_, _elim_order_, _elim_tree_, _fill_ins_, _has_elimination_tree_, _has_fill_ins_, _has_junction_tree_, _has_max_prime_junction_tree_, _has_triangulated_graph_, _has_triangulation_, _junction_tree_, _max_prime_junction_tree_, _node_2_max_prime_clique_, _original_graph_, _reverse_elim_order_, _triangulated_graph_, elimination_sequence_strategy_, and junction_tree_strategy_.
Referenced by setGraph().
|
finalvirtual |
virtual copy constructor
Implements gum::StaticTriangulation.
Definition at line 105 of file partialOrderedTriangulation.cpp.
References PartialOrderedTriangulation().
returns the Id of the clique of the junction tree created by the elimination of a given node during the triangulation process
Implements gum::Triangulation.
|
virtualinherited |
returns the Ids of the cliques of the junction tree created by the elimination of the nodes
Implements gum::Triangulation.
returns the Id of the maximal prime subgraph created by the elimination of a given node during the triangulation process
Implements gum::Triangulation.
|
inherited |
returns the domain sizes of the variables of the graph to be triangulated
|
virtualinherited |
returns an elimination ordering compatible with the triangulated graph
Implements gum::Triangulation.
Referenced by gum::prm::StructuredInference< GUM_SCALAR >::CData::CData(), gum::prm::StructuredInference< GUM_SCALAR >::_buildReduceGraph_(), gum::prm::SVE< GUM_SCALAR >::_eliminateNodes_(), gum::prm::SVED< GUM_SCALAR >::_eliminateNodes_(), gum::prm::SVE< GUM_SCALAR >::_eliminateNodesWithEvidence_(), gum::prm::SVED< GUM_SCALAR >::_eliminateNodesWithEvidence_(), gum::prm::gspan::StrictSearch< GUM_SCALAR >::_elimination_cost_(), gum::prm::SVE< GUM_SCALAR >::_initLiftedNodes_(), gum::prm::SVED< GUM_SCALAR >::_initLiftedNodes_(), gum::prm::StructuredInference< GUM_SCALAR >::_reduceAloneInstances_(), and gum::prm::StructuredInference< GUM_SCALAR >::_reducePattern_().
returns the index of a given node in the elimination order (0 = first node eliminated)
Implements gum::Triangulation.
|
inherited |
returns the elimination sequence strategy used by the triangulation
References eliminationSequenceStrategy().
Referenced by eliminationSequenceStrategy().
|
virtualinherited |
returns the elimination tree of a compatible ordering
Implements gum::Triangulation.
|
virtualinherited |
returns the fill-ins added by the triangulation algorithm
Implements gum::Triangulation.
Definition at line 672 of file staticTriangulation.cpp.
References _fill_ins_, _has_fill_ins_, _has_junction_tree_, _has_triangulation_, _junction_tree_, _original_graph_, _triangulate_(), _we_want_fill_ins_, elimination_sequence_strategy_, junctionTree(), and gum::Set< Key >::size().
|
finalprotectedvirtual |
the function called to initialize the triangulation process
This function is called when the triangulation process starts and is used to initialize the elimination sequence strategy. Actually, the graph that is modified by the triangulation algorithm is a copy of the original graph, and this copy need be known by the elimination sequence strategy. initTriangulation_ is used to transmit this knowledge to the elimination sequence (through method setGraph of the elimination sequence class).
| graph | the very graph that is triangulated (this is a copy of original_graph_) |
Reimplemented from gum::StaticTriangulation.
Definition at line 131 of file partialOrderedTriangulation.cpp.
References _partial_order_, gum::Triangulation::domain_sizes_, gum::StaticTriangulation::elimination_sequence_strategy_, gum::PartialOrderedEliminationSequenceStrategy::setGraph(), and gum::PartialOrderedEliminationSequenceStrategy::setPartialOrder().
|
finalvirtualinherited |
indicates wether minimality is required
|
virtualinherited |
returns a compatible junction tree
Implements gum::Triangulation.
Referenced by _computeMaxPrimeJunctionTree_(), fillIns(), and triangulatedGraph().
|
inherited |
returns the junction tree strategy used by the triangulation
References StaticTriangulation(), initTriangulation_(), and junctionTreeStrategy().
Referenced by junctionTreeStrategy().
|
inherited |
returns the max of log10DomainSize of the cliques in the junction tree.
This is usefull for instance to estimate the complexity (both in space and in time) of the inference that will use the junction tree.
This method is not 'const' since it can be called before building any junction tree and hence it needs to build it...
Definition at line 86 of file triangulation.cpp.
References gum::CliqueGraph::clique(), domain_sizes_, and junctionTree().
Referenced by gum::MaxInducedWidthMCBayesNetGenerator< GUM_SCALAR, ICPTGenerator, ICPTDisturber >::_checkConditions_().
|
virtualinherited |
returns a junction tree of maximal prime subgraphs
Implements gum::Triangulation.
|
virtual |
returns a fresh triangulation (over an empty graph) of the same type as the current object
virtual copy constructor
note that we return a pointer as it enables subclasses to return pointers to their types, not Triangulation pointers. See item 25 of the more effective C++.
Implements gum::StaticTriangulation.
Definition at line 97 of file partialOrderedTriangulation.cpp.
References PartialOrderedTriangulation(), gum::StaticTriangulation::elimination_sequence_strategy_, and gum::StaticTriangulation::junction_tree_strategy_.
|
private |
forbid copy operator
References PartialOrderedTriangulation().
|
inherited |
returns the graph to be triangulated
References originalGraph().
Referenced by gum::DefaultJunctionTreeStrategy::copyFactory(), and originalGraph().
|
inherited |
returns a table indicating, for each node, at which step it was deleted by the triangulation process
|
inherited |
sets/unsets the record of the fill-ins in the standard triangulation procedure
References setFillIns().
Referenced by setFillIns().
|
finalvirtual |
initialize the triangulation data structures for a new graph
| graph | the graph to be triangulated, i.e., the nodes of which will be eliminated |
| domsizes | the domain sizes of the nodes to be eliminated |
| sequence | the order in which the nodes should be eliminated |
Reimplemented from gum::StaticTriangulation.
Definition at line 116 of file partialOrderedTriangulation.cpp.
References _partial_order_, gum::StaticTriangulation::elimination_sequence_strategy_, gum::StaticTriangulation::setGraph(), and setPartialOrder().
|
inherited |
sets/unset the minimality requirement
|
finalvirtual |
sets the elimination sequence's partial order (only a reference is stored)
sets the sequence of elimination
The elimination sequence is kept outside this class for efficiency reasons.
Definition at line 124 of file partialOrderedTriangulation.cpp.
References _partial_order_, gum::StaticTriangulation::elimination_sequence_strategy_, and setPartialOrder().
Referenced by setGraph(), and setPartialOrder().
|
virtualinherited |
returns the triangulated graph
Implements gum::Triangulation.
Definition at line 485 of file staticTriangulation.cpp.
References _has_junction_tree_, _has_triangulated_graph_, _has_triangulation_, _junction_tree_, _original_graph_, _triangulate_(), _triangulated_graph_, junctionTree(), and gum::Set< Key >::size().
|
privateinherited |
a vector containing the set of fill-ins added after each node elimination (used by recursive thinning)
Definition at line 312 of file staticTriangulation.h.
Referenced by StaticTriangulation(), StaticTriangulation(), StaticTriangulation(), _computeRecursiveThinning_(), _triangulate_(), clear(), and setGraph().
|
privateinherited |
the cliques formed by the elimination of the nodes
Definition at line 270 of file staticTriangulation.h.
Referenced by StaticTriangulation(), StaticTriangulation(), StaticTriangulation(), _computeEliminationTree_(), _computeRecursiveThinning_(), _triangulate_(), clear(), and setGraph().
|
privateinherited |
the order in which nodes are eliminated by the algorithm
Definition at line 264 of file staticTriangulation.h.
Referenced by StaticTriangulation(), StaticTriangulation(), StaticTriangulation(), _computeEliminationTree_(), _computeRecursiveThinning_(), _triangulate_(), clear(), and setGraph().
|
privateinherited |
the elimination tree computed by the algorithm
Definition at line 273 of file staticTriangulation.h.
Referenced by StaticTriangulation(), StaticTriangulation(), _computeEliminationTree_(), and clear().
|
privateinherited |
the fill-ins added during the whole triangulation process
Definition at line 261 of file staticTriangulation.h.
Referenced by StaticTriangulation(), StaticTriangulation(), _computeRecursiveThinning_(), _triangulate_(), clear(), and fillIns().
|
privateinherited |
a boolean indicating whether the elimination tree has been computed
Definition at line 295 of file staticTriangulation.h.
Referenced by StaticTriangulation(), StaticTriangulation(), _computeEliminationTree_(), clear(), and setGraph().
|
privateinherited |
indicates whether we actually computed fill-ins
Definition at line 305 of file staticTriangulation.h.
Referenced by StaticTriangulation(), StaticTriangulation(), _computeRecursiveThinning_(), _triangulate_(), clear(), fillIns(), and setGraph().
|
privateinherited |
a boolean indicating whether the junction tree has been constructed
Definition at line 298 of file staticTriangulation.h.
Referenced by StaticTriangulation(), StaticTriangulation(), _computeMaxPrimeJunctionTree_(), clear(), fillIns(), setGraph(), and triangulatedGraph().
|
privateinherited |
indicates whether a maximal prime subgraph junction tree has been constructed
Definition at line 302 of file staticTriangulation.h.
Referenced by StaticTriangulation(), StaticTriangulation(), _computeMaxPrimeJunctionTree_(), clear(), and setGraph().
|
privateinherited |
a boolean indicating whether we have constructed the triangulated graph
Definition at line 292 of file staticTriangulation.h.
Referenced by StaticTriangulation(), StaticTriangulation(), _triangulate_(), clear(), setGraph(), and triangulatedGraph().
|
privateinherited |
a boolean indicating whether we have parformed a triangulation
Definition at line 289 of file staticTriangulation.h.
Referenced by StaticTriangulation(), StaticTriangulation(), _computeEliminationTree_(), _triangulate_(), clear(), fillIns(), setGraph(), and triangulatedGraph().
|
privateinherited |
the junction tree computed by the algorithm
note that the junction tree is owned by the junctionTreeStrategy and, therefore, its deletion from memory is not handled by the static triangulation class.
Definition at line 279 of file staticTriangulation.h.
Referenced by StaticTriangulation(), _computeMaxPrimeJunctionTree_(), _computeMaxPrimeMergings_(), clear(), fillIns(), and triangulatedGraph().
|
privateinherited |
the maximal prime subgraph junction tree computed from the junction tree
Definition at line 282 of file staticTriangulation.h.
Referenced by StaticTriangulation(), StaticTriangulation(), _computeMaxPrimeJunctionTree_(), and clear().
|
privateinherited |
indicates whether the triangulation must be minimal
Definition at line 308 of file staticTriangulation.h.
Referenced by StaticTriangulation(), StaticTriangulation(), StaticTriangulation(), StaticTriangulation(), and _triangulate_().
|
privateinherited |
indicates which clique of the max prime junction tree was created by the elmination of a given node (the key of the table)
Definition at line 286 of file staticTriangulation.h.
Referenced by StaticTriangulation(), StaticTriangulation(), StaticTriangulation(), _computeMaxPrimeJunctionTree_(), clear(), and setGraph().
|
privateinherited |
a pointer to the (external) original graph (which will be triangulated)
Definition at line 255 of file staticTriangulation.h.
Referenced by StaticTriangulation(), StaticTriangulation(), StaticTriangulation(), _computeEliminationTree_(), _computeMaxPrimeMergings_(), _triangulate_(), clear(), fillIns(), setGraph(), and triangulatedGraph().
the partial ordering to apply to eliminate nodes
Definition at line 178 of file partialOrderedTriangulation.h.
Referenced by PartialOrderedTriangulation(), PartialOrderedTriangulation(), PartialOrderedTriangulation(), initTriangulation_(), setGraph(), and setPartialOrder().
|
privateinherited |
the elimination order (access by NodeId)
Definition at line 267 of file staticTriangulation.h.
Referenced by StaticTriangulation(), StaticTriangulation(), StaticTriangulation(), _computeEliminationTree_(), _computeRecursiveThinning_(), _triangulate_(), clear(), and setGraph().
|
privateinherited |
the triangulated graph
Definition at line 258 of file staticTriangulation.h.
Referenced by StaticTriangulation(), StaticTriangulation(), _computeRecursiveThinning_(), _triangulate_(), clear(), and triangulatedGraph().
|
privateinherited |
a boolean indicating if we want fill-ins list with the standard triangulation method
Definition at line 316 of file staticTriangulation.h.
Referenced by StaticTriangulation(), StaticTriangulation(), _triangulate_(), and fillIns().
|
protectedinherited |
the domain sizes of the variables/nodes of the graph
Definition at line 170 of file triangulation.h.
Referenced by Triangulation(), Triangulation(), Triangulation(), gum::OrderedTriangulation::initTriangulation_(), gum::PartialOrderedTriangulation::initTriangulation_(), gum::StaticTriangulation::initTriangulation_(), maxLog10CliqueDomainSize(), and gum::StaticTriangulation::setGraph().
|
protectedinherited |
the elimination sequence strategy used by the triangulation
Definition at line 247 of file staticTriangulation.h.
Referenced by gum::OrderedTriangulation::OrderedTriangulation(), gum::PartialOrderedTriangulation::PartialOrderedTriangulation(), StaticTriangulation(), StaticTriangulation(), StaticTriangulation(), StaticTriangulation(), ~StaticTriangulation(), _triangulate_(), clear(), fillIns(), gum::OrderedTriangulation::initTriangulation_(), gum::PartialOrderedTriangulation::initTriangulation_(), initTriangulation_(), gum::OrderedTriangulation::newFactory(), gum::PartialOrderedTriangulation::newFactory(), gum::OrderedTriangulation::setGraph(), gum::PartialOrderedTriangulation::setGraph(), gum::OrderedTriangulation::setOrder(), and gum::PartialOrderedTriangulation::setPartialOrder().
|
protectedinherited |
the junction tree strategy used by the triangulation
Definition at line 250 of file staticTriangulation.h.
Referenced by StaticTriangulation(), StaticTriangulation(), StaticTriangulation(), StaticTriangulation(), ~StaticTriangulation(), _computeMaxPrimeJunctionTree_(), clear(), gum::OrderedTriangulation::newFactory(), and gum::PartialOrderedTriangulation::newFactory().