Abstract

In this paper, we investigate the semantic intricacies of conditioning in probabilistic programming, a major feature, e.g., in machine learning. We provide a quantitative weakest pre–condition semantics. In contrast to all other approaches, non–termination is taken into account by our semantics. We also present an operational semantics in terms of Markov models and show that expected rewards coincide with quantitative pre–conditions. A program transformation that entirely eliminates conditioning from programs is given; the correctness is shown using our semantics. Finally, we show that an inductive semantics for conditioning in non–deterministic probabilistic programs cannot exist.

Highlights

  • In recent years, interest in probabilistic programming has rapidly grown [9,11]

  • We study how to extend the notion of expectation transformers to conditioned probabilistic programs without non–determinism in conditional pGCL (cpGCL)

  • In the rest of this section we investigate some properties of the expectation transformer semantics of cpGCL

Read more

Summary

Introduction

Interest in probabilistic programming has rapidly grown [9,11]. This is due to its wide applicability, for example in machine learning for describing distribution functions; Bayesian inference is pivotal in their analysis. The semantics of languages without conditioning is well–understood: In his seminal work, Kozen [19] considered denotational semantics for probabilistic programs without non–determinism or observations. One of these semantics—the expectation transformer semantics—was adopted by McIver and Morgan [21], who added support for non–determinism; a corresponding operational semantics is given in [13]. Previous work on semantics for programs with observe statements [22,16] do neither consider the possibility of non–termination nor the powerful feature of non–determinism. The observe statement blocks all invalid runs violating its condition and renormalizes the probabilities of the remaining valid runs This differs, e.g., from program annotations like (probabilistic) assertions [25] as we will see later. An extended version of this paper including all proofs and further program transformations for eliminating observe statements is available in [12]

The Programming Language
Expectation Transformers in pGCL
Conditional Expectation Transformers
Operational Semantics for Conditional pGCL
Program Transformation
Denotational Semantics for Full cpGCL
Conclusion and Future Work

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.