Published July 6, 2024
| Version v1
Software
Open
Artifact for Programmable MCMC with Soundly Composed Guide Programs
Creators
Description
In probabilistic programming with a newly proposed coroutine-based programmable inference framework, the user provides (i) a model coroutine and (ii) a
sequential composition of guide coroutines. The model coroutine specifies a probabilistic model for Bayesian inference. Meanwhile, the sequential
composition of guide coroutines customizes the Block Metropolis-Hastings (BMH) algorithm, where we successively run the guide coroutines, each of which is
followed by an MH acceptance routine. Each guide coroutine only updates a subset (i.e., block) of random variables. The model and guide coroutines communicate
with one another by message passing, and their communication protocols are described by guide types.
This artifact is a program analysis tool for statically checking the soundness of a probabilistic program in this coroutine-based framework. The artifact
offers three functionalities:
- Type-equality checking: check structural type equality of guide types.
- Type inference: infer guide types of model and guide coroutines (using the first functionality for structural-type-equality checking)
- Coverage checking: check whether the support of sequentially composed guide coroutines coincides with the support of a model coroutine.
Files
README.pdf
Files
(1.0 GB)
Name | Size | Download all |
---|---|---|
md5:68d6618eb662c766033d26da442648b1
|
1.0 GB | Download |
md5:489275fdb653510b2149fb5180fd3ff8
|
273.8 kB | Preview Download |
Additional details
Software
- Repository URL
- https://github.com/LongPham7/GuideTypes/tree/subguide_types
- Programming language
- OCaml, Python