48#ifndef GUM_GROUNDED_INFERENCE_H
49#define GUM_GROUNDED_INFERENCE_H
65 template < GUM_Numeric GUM_SCALAR >
106 std::string
name()
const override;
129 Tensor< GUM_SCALAR >& m)
override;
136 Tensor< GUM_SCALAR >& j)
override;
154#ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
Generic doubly linked lists.
<agrum/BN/inference/marginalTargetedInference.h>
<agrum/PRM/groundedInference.h>
void setBNInference(MarginalTargetedInference< GUM_SCALAR > *bn_inf)
Defines the bayesnet inference engine used by this class.
void joint_(const std::vector< typename PRMInference< GUM_SCALAR >::Chain > &queries, Tensor< GUM_SCALAR > &j) override
Generic method to compute the marginal of given element.
void evidenceAdded_(const typename PRMInference< GUM_SCALAR >::Chain &chain) override
This method is called whenever an evidence is added, but AFTER any processing made by PRMInference.
~GroundedInference() override
Destructor.
std::string name() const override
Returns the bayesnet inference engine used by this class.
void evidenceRemoved_(const typename PRMInference< GUM_SCALAR >::Chain &chain) override
This method is called whenever an evidence is removed, but BEFORE any processing made by PRMInference...
void posterior_(const typename PRMInference< GUM_SCALAR >::Chain &chain, Tensor< GUM_SCALAR > &m) override
Generic method to compute the marginal of given element.
GroundedInference & operator=(const GroundedInference &source)
Copy operator.
MarginalTargetedInference< GUM_SCALAR > * _inf_
The bayesnet inference engine used by this class.
List< const Tensor< GUM_SCALAR > * > _obs_
MarginalTargetedInference< GUM_SCALAR > & getBNInference()
Returns the bayesnet inference engine used by this class.
GroundedInference(const PRM< GUM_SCALAR > &prm, const PRMSystem< GUM_SCALAR > &system)
Default constructor.
std::pair< const PRMInstance< GUM_SCALAR > *, const PRMAttribute< GUM_SCALAR > * > Chain
Code alias.
PRMInference(const PRM< GUM_SCALAR > &prm, const PRMSystem< GUM_SCALAR > &system)
Default constructor.
A PRMSystem is a container of PRMInstance and describe a relational skeleton.
This class represents a Probabilistic Relational PRMSystem<GUM_SCALAR>.
Inline implementation of GroundedInference.
This file contains the abstract inference class definition for computing (incrementally) marginal pos...
namespace for all probabilistic relational models entities
gum is the global namespace for all aGrUM entities