aGrUM 3.0.0
a C++ library for (probabilistic) graphical models
doAST.h File Reference

Abstract Syntax Tree (AST) for algebraic probability expressions used in do-Calculus. More...

#include <map>
#include <memory>
#include <set>
#include <string>
#include <vector>
#include <agrum/agrum.h>
#include <agrum/BN/IBayesNet.h>
#include <string_view>
#include <agrum/CM/tools/doAST_tpl.h>
Include dependency graph for doAST.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  gum::ASTtree< GUM_SCALAR >
 Root abstract node for the AST of algebraic expressions. More...
class  gum::ASTBinaryOp< GUM_SCALAR >
 Base class for binary algebraic operators (e.g., +, -, ×, ÷). More...
class  gum::ASTplus< GUM_SCALAR >
 Sum of two AST sub-expressions. More...
class  gum::ASTminus< GUM_SCALAR >
 Difference of two AST sub-expressions (left minus right). More...
class  gum::ASTmult< GUM_SCALAR >
 Elementwise product of two AST sub-expressions. More...
class  gum::ASTdiv< GUM_SCALAR >
 Elementwise division of two AST sub-expressions (left / right). More...
class  gum::ASTposteriorProba< GUM_SCALAR >
 Posterior probability term ( \mathbb{P}_{bn}(\mathrm{vars}\mid\mathrm{knw}) ). More...
class  gum::ASTjointProba< GUM_SCALAR >
 Joint probability term ( \mathbb{P}(\mathrm{vars}) ) in an observational BN. More...
class  gum::ASTsum< GUM_SCALAR >
 Summation (marginalization) over one or more variables. More...

Namespaces

namespace  gum
 gum is the global namespace for all aGrUM entities

Functions

template<GUM_Numeric GUM_SCALAR>
std::unique_ptr< ASTtree< GUM_SCALAR > > gum::productOfTrees (std::vector< std::unique_ptr< ASTtree< GUM_SCALAR > > > &&lterms)
 Build a product AST from a list of terms.
template std::unique_ptr< ASTtree< double > > gum::productOfTrees< double > (std::vector< std::unique_ptr< ASTtree< double > > > &&)

Detailed Description

Abstract Syntax Tree (AST) for algebraic probability expressions used in do-Calculus.

Definition in file doAST.h.