Static Analysis for Probabilistic Programs
Ryan Bernstein

TL;DR
This paper reviews the emerging field of static analysis for probabilistic programming, highlighting its potential to optimize learning, verify models, and enhance programming interfaces despite current limitations.
Contribution
It synthesizes major contributions in static analysis for probabilistic programming, providing a taxonomy and analyzing future research directions.
Findings
Current static analysis techniques have practical limitations.
There are promising future directions to enhance probabilistic programming.
The field is young and needs better organization and development.
Abstract
Probabilistic programming is a powerful abstraction for statistical machine learning. Applying static analysis methods to probabilistic programs could serve to optimize the learning process, automatically verify properties of models, and improve the programming interface for users. This field of static analysis for probabilistic programming (SAPP) is young and unorganized, consisting of a constellation of techniques with various goals and limitations. The primary aim of this work is to synthesize the major contributions of the SAPP field within an organizing structure and context. We provide technical background for static analysis and probabilistic programming, suggest a functional taxonomy for probabilistic programming languages, and analyze the applicability of major ideas in the SAPP field. We conclude that, while current static analysis techniques for probabilistic programs have…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsGaussian Processes and Bayesian Inference · Formal Methods in Verification · Numerical Methods and Algorithms
