hakaru-0.3.0: A probabilistic programming language

CopyrightCopyright (c) 2016 the Hakaru team
LicenseBSD3
Maintainerppaml@indiana.edu
Stabilityexperimental
PortabilityGHC-only
Safe HaskellNone
LanguageHaskell2010

Language.Hakaru.Observe

Description

A simpler version of the work done in Disintegrate

In principle, this module's functionality is entirely subsumed by the work done in Language.Hakaru.Disintegrate, so we can hope to define observe in terms of disintegrate. This is still useful as a guide to those that want something more in line with what other probabilisitc programming systems support.

Documentation

observe :: ABT Term abt => abt '[] (HMeasure a) -> abt '[] a -> abt '[] (HMeasure a) Source #

freshenVarRe :: ABT syn abt => Variable (a :: k) -> abt '[] (b :: k) -> Variable a Source #

observeAST :: ABT Term abt => LC_ abt (HMeasure a) -> LC_ abt a -> abt '[] (HMeasure a) Source #

observeMeasureOp :: (ABT Term abt, typs ~ UnLCs args, args ~ LCs typs) => MeasureOp typs a -> SArgs abt args -> abt '[] a -> abt '[] (HMeasure a) Source #