Böck, M., Schröder, M., & Cito, J. (2024). Language-Agnostic Static Analysis of Probabilistic Programs. In ASE ’24: Proceedings of the 39th IEEE/ACM International Conference on Automated Software Engineering (pp. 78–90). Association for Computing Machinery. https://doi.org/10.1145/3691620.3695031
ASE '24: 39th IEEE/ACM International Conference on Automated Software Engineering
en
Event date:
27-Oct-2024 - 1-Nov-2024
-
Event place:
Sacramento, United States of America (the)
-
Number of Pages:
13
-
Publisher:
Association for Computing Machinery, New York, NY, USA
-
Peer reviewed:
Yes
-
Keywords:
probabilistic programming; language-agnostic; program analysis
en
Abstract:
Probabilistic programming allows developers to focus on the modeling aspect in the Bayesian workflow by abstracting away the posterior inference machinery.
In practice, however, programming errors specific to the probabilistic environment are hard to fix without deep knowledge of the underlying systems.
Like in classical software engineering, static program analysis methods could be employed to catch many of these errors.
In this work, we present the first framework to formulate static analyses for probabilistic programs in a language-agnostic manner: LASAPP.
While prior work focused on specific languages, all analyses written with our framework can be readily applied to new languages by adding easy-to-implement API bindings.
Our prototype supports five popular probabilistic programming languages out-of-the-box.
We demonstrate the effectiveness and expressiveness of the LASAPP framework by presenting four provably-correct language-agnostic probabilistic program analyses that address problems discussed in the literature and evaluate them on over 200 real-world programs.