lppl  v2.0.0
ProductGenerator< Impl, V, O, Ts >::Q< typename, typename,... > Struct Template Reference

A queryer that emits \(V[p(z|x)] = \prod_a V[p(z_a|x)]\). More...

#include "query.hpp"

Inheritance diagram for ProductGenerator< Impl, V, O, Ts >::Q< typename, typename,... >:
Queryer< Q, EmitType, O, Ts... >

Public Types

using QContainer = std::unordered_map< std::string, Impl< V, O, Ts... > >
 

Public Member Functions

 Q (std::vector< std::string > &addrs)
 
void clear ()
 
EmitType emit ()
 Returns a product of maps from addresses to inferred values and maps from addresses to distributions at those sites. More...
 
void update (record_t< DTypes< Ts... >> &r, O output, double weight, inf_options_t opts)
 
- Public Member Functions inherited from Queryer< Q, EmitType, O, Ts... >
EmitType emit ()
 Emits the result of the query.
 
void update (record_t< DTypes< Ts... >> &r, O output, double weight, inf_options_t opts)
 Updates the state of the queryer. More...
 

Public Attributes

DContainer ds
 
QContainer qs
 

Detailed Description

template<template< typename, typename, typename... > class Impl, typename V, typename O, typename... Ts>
template<typename, typename, typename...>
struct ProductGenerator< Impl, V, O, Ts >::Q< typename, typename,... >

A queryer that emits \(V[p(z|x)] = \prod_a V[p(z_a|x)]\).

Template Parameters
O_The output type of the probabilistic program
Ts_The types of distributions in the probabilistic program

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