Gordon, Andrew; Henzinger, Thomas AIST Austria ; Nori, Aditya; Rajamani, Sriram
Probabilistic programs are usual functional or imperative programs with two added constructs: (1) the ability to draw values at random from distributions, and (2) the ability to condition values of variables in a program via observations. Models from diverse application areas such as computer vision, coding theory, cryptographic protocols, biology and reliability analysis can be written as probabilistic programs. Probabilistic inference is the problem of computing an explicit representation of the probability distribution implicitly specified by a probabilistic program. Depending on the application, the desired output from inference may vary-we may want to estimate the expected value of some function f with respect to the distribution, or the mode of the distribution, or simply a set of samples drawn from the distribution. In this paper, we describe connections this research area called \Probabilistic Programming" has with programming languages and software engineering, and this includes language design, and the static and dynamic analysis of programs. We survey current state of the art and speculate on promising directions for future research.
Proceedings of the on Future of Software Engineering
167 - 181
FOSE: Future of Software Engineering
2014-05-31 – 2014-06-07
Gordon A, Henzinger TA, Nori A, Rajamani S. Probabilistic programming. In: Proceedings of the on Future of Software Engineering. ACM; 2014:167-181. doi:10.1145/2593882.2593900
Gordon, A., Henzinger, T. A., Nori, A., & Rajamani, S. (2014). Probabilistic programming. In Proceedings of the on Future of Software Engineering (pp. 167–181). Hyderabad, India: ACM. https://doi.org/10.1145/2593882.2593900
Gordon, Andrew, Thomas A Henzinger, Aditya Nori, and Sriram Rajamani. “Probabilistic Programming.” In Proceedings of the on Future of Software Engineering, 167–81. ACM, 2014. https://doi.org/10.1145/2593882.2593900.
A. Gordon, T. A. Henzinger, A. Nori, and S. Rajamani, “Probabilistic programming,” in Proceedings of the on Future of Software Engineering, Hyderabad, India, 2014, pp. 167–181.
Gordon A, Henzinger TA, Nori A, Rajamani S. 2014. Probabilistic programming. Proceedings of the on Future of Software Engineering. FOSE: Future of Software Engineering, 167–181.
Gordon, Andrew, et al. “Probabilistic Programming.” Proceedings of the on Future of Software Engineering, ACM, 2014, pp. 167–81, doi:10.1145/2593882.2593900.