![]() |
aGrUM 2.3.2
a C++ library for (probabilistic) graphical models
|
the d-separation algorithm as described in Koller & Friedman (2009) More...
#include <dSeparationAlgorithm.h>
Public Member Functions | |
Constructors / Destructors | |
| dSeparationAlgorithm () | |
| default constructor | |
| dSeparationAlgorithm (const dSeparationAlgorithm &from) | |
| copy constructor | |
| dSeparationAlgorithm (dSeparationAlgorithm &&from) | |
| move constructor | |
| ~dSeparationAlgorithm () | |
| destructor | |
Operators | |
| dSeparationAlgorithm & | operator= (const dSeparationAlgorithm &from) |
| copy operator | |
| dSeparationAlgorithm & | operator= (dSeparationAlgorithm &&from) |
| move operator | |
Accessors / Modifiers | |
| void | requisiteNodes (const DAG &dag, const NodeSet &query, const NodeSet &hardEvidence, const NodeSet &softEvidence, NodeSet &requisite) const |
| Fill the 'requisite' nodeset with the requisite nodes in dag given a query and evidence. | |
| template<typename GUM_SCALAR, class TABLE> | |
| void | relevantTensors (const IBayesNet< GUM_SCALAR > &bn, const NodeSet &query, const NodeSet &hardEvidence, const NodeSet &softEvidence, Set< const TABLE * > &tensors) |
| update a set of tensors, keeping only those d-connected with query variables given evidence | |
the d-separation algorithm as described in Koller & Friedman (2009)
Definition at line 63 of file dSeparationAlgorithm.h.
| INLINE gum::dSeparationAlgorithm::dSeparationAlgorithm | ( | ) |
default constructor
Definition at line 53 of file dSeparationAlgorithm_inl.h.
References dSeparationAlgorithm().
Referenced by dSeparationAlgorithm(), dSeparationAlgorithm(), dSeparationAlgorithm(), ~dSeparationAlgorithm(), operator=(), and operator=().
| INLINE gum::dSeparationAlgorithm::dSeparationAlgorithm | ( | const dSeparationAlgorithm & | from | ) |
copy constructor
Definition at line 59 of file dSeparationAlgorithm_inl.h.
References dSeparationAlgorithm().
| INLINE gum::dSeparationAlgorithm::dSeparationAlgorithm | ( | dSeparationAlgorithm && | from | ) |
move constructor
Definition at line 64 of file dSeparationAlgorithm_inl.h.
References dSeparationAlgorithm().
| INLINE gum::dSeparationAlgorithm::~dSeparationAlgorithm | ( | ) |
destructor
Definition at line 69 of file dSeparationAlgorithm_inl.h.
References dSeparationAlgorithm().
| INLINE dSeparationAlgorithm & gum::dSeparationAlgorithm::operator= | ( | const dSeparationAlgorithm & | from | ) |
copy operator
Definition at line 75 of file dSeparationAlgorithm_inl.h.
References dSeparationAlgorithm().
| INLINE dSeparationAlgorithm & gum::dSeparationAlgorithm::operator= | ( | dSeparationAlgorithm && | from | ) |
move operator
Definition at line 80 of file dSeparationAlgorithm_inl.h.
References dSeparationAlgorithm().
| void gum::dSeparationAlgorithm::relevantTensors | ( | const IBayesNet< GUM_SCALAR > & | bn, |
| const NodeSet & | query, | ||
| const NodeSet & | hardEvidence, | ||
| const NodeSet & | softEvidence, | ||
| Set< const TABLE * > & | tensors ) |
update a set of tensors, keeping only those d-connected with query variables given evidence
Definition at line 56 of file dSeparationAlgorithm_tpl.h.
References gum::ArcGraphPart::children(), gum::DAGmodel::dag(), gum::HashTable< Key, Val >::empty(), gum::List< Val >::empty(), gum::HashTable< Key, Val >::erase(), gum::Set< Key >::erase(), gum::HashTable< Key, Val >::exists(), gum::Set< Key >::exists(), gum::List< Val >::front(), gum::HashTable< Key, Val >::insert(), gum::List< Val >::insert(), gum::Set< Key >::insert(), gum::IBayesNet< GUM_SCALAR >::nodeId(), gum::ArcGraphPart::parents(), gum::List< Val >::popFront(), and gum::NodeGraphPart::size().
| void gum::dSeparationAlgorithm::requisiteNodes | ( | const DAG & | dag, |
| const NodeSet & | query, | ||
| const NodeSet & | hardEvidence, | ||
| const NodeSet & | softEvidence, | ||
| NodeSet & | requisite ) const |
Fill the 'requisite' nodeset with the requisite nodes in dag given a query and evidence.
Requisite nodes are those that are d-connected to at least one of the query nodes given a set of hard and soft evidence
Definition at line 60 of file dSeparationAlgorithm.cpp.
References gum::ArcGraphPart::children(), gum::Set< Key >::clear(), gum::List< Val >::empty(), gum::Set< Key >::exists(), gum::List< Val >::front(), gum::List< Val >::insert(), gum::Set< Key >::insert(), gum::ArcGraphPart::parents(), gum::List< Val >::popFront(), and gum::NodeGraphPart::size().
Referenced by gum::SamplingInference< GUM_SCALAR >::contextualize().