paperbot · PL 论文追踪

RSS

Formally Verified Samplers from Probabilistic Programs with Loops and Conditioning

PLDI 7(PLDI)2023
Alexander Bagnall, Gordon Stewart, Anindya Banerjee

尚未生成 AI 速览(可能缺少 API key 或等待下次运行补跑)。

原文摘要(Abstract)

We present Zar: a formally verified compiler pipeline from discrete probabilistic programs with unbounded loops in the conditional probabilistic guarded command language (cpGCL) to proved-correct executable samplers in the random bit model. We exploit the key idea that all discrete probability distributions can be reduced to unbiased coin-flipping schemes. The compiler pipeline first translates cpGCL programs into choice-fix trees, an intermediate representation suitable for reduction of biased probabilistic choices. Choice-fix trees are then translated to coinductive interaction trees for execution within the random bit model. The correctness of the composed translations establishes the sampling equidistribution theorem: compiled samplers are correct wrt. the conditional weakest pre-expectation semantics of cpGCL source programs. Zar is implemented and fully verified in the Coq proof assistant. We extract verified samplers to OCaml and Python and empirically validate them on a number of illustrative examples.

链接与引用

DOI 原文 ·

BibTeX
@article{paperbot1954,
  title = {Formally Verified Samplers from Probabilistic Programs with Loops and Conditioning},
  author = {Alexander Bagnall and Gordon Stewart and Anindya Banerjee},
  journal = {Proceedings of the ACM on Programming Languages},
  volume = {7},
  number = {PLDI},
  year = {2023},
  doi = {10.1145/3591220}
}