lppl  v2.0.0
UpdateFilter< Impl, Policy, Queryer, Inference, I, O, Ts > Struct Template Reference

A filtering algorithm that operates on typed_map objects. More...

#include "update.hpp"

Public Types

using QueryResult = decltype(std::declval< Queryer >().emit())
 
using typed_map_ = typed_map< Policy, I, Ts... >
 

Public Member Functions

 UpdateFilter (upp_t< Policy, I, O, Ts... > &f, Queryer &q, Inference &infer)
 
typed_map_step (typed_map_ &m)
 

Public Attributes

upp_t< Policy, I, O, Ts... > & f
 
Inferenceinfer
 
Queryerq
 
Update< Impl, Policy, QueryResult, I, O, Ts... > updater
 

Detailed Description

template<template< template< typename > class, typename, typename, typename... > class Impl, template< typename > class Policy, class Queryer, class Inference, typename I, typename O, typename... Ts>
struct UpdateFilter< Impl, Policy, Queryer, Inference, I, O, Ts >

A filtering algorithm that operates on typed_map objects.

This algorithm performs the following steps:

  • Samples from the posterior distribution using the Inference algorithm
  • Constructs a view of the posterior using the Queryer
  • Using the distribution mapping defined by the Policy, updates to a new prior distribution as specified by the Impl.
Template Parameters
Implthe prior -> posterior update implementation
Policythe injection between distributions
Queryerthe view of the posterior distribution
Inferencethe algorithm for drawing samples from the posterior distribution
Ithe input type of the updateable probabilistic program
Othe output type of the updateable probabilistic program
Tsthe universe of possible types in the updateable probabilistic program

The documentation for this struct was generated from the following file: