Reference. A Higher-Order Language for Markov Kernels and Linear Operators
Much work has been done to give semantics to probabilistic programming languages. In recent years, most of the semantics used to reason about probabilistic programs fall in two categories: semantics based on Markov kernels and semantics based on linear operators.
Both styles of semantics have found numerous applications in reasoning about probabilistic programs, but they each have their strengths and weaknesses. Though it is believed that there is a connection between them there are no languages that can handle both styles of programming.
In this work we address these questions by defining a two-level calculus and its categorical semantics which makes it possible to program with both kinds of semantics. From the logical side of things we see this language as an alternative resource interpretation of linear logic, where the resource being kept track of is sampling instead of variable use.
Cite
Cited by (2)
Separated and Shared Effects in Higher-Order Languages amorim_hsu_independent
Classical Linear Logic in Perfect Banach Lattices amorim_witzman_kozen_2025
Cites 24 works (3 here)
With notes (3)
Denotational validation of higher-order Bayesian inference scibior-2017-denotational
A convenient category for higher-order probability theory heunen-2017-a
Applicative programming with effects mcbride-2008-applicative
External (21)
- Extensional denotational semantics of higher-order probabilistic programs, beyond the discrete case (Geoffroy, unpublished) (2021)
- A synthetic approach to Markov kernels, conditional independence and theorems on sufficient statistics (2020)
- On the linear structure of cones (Ehrhard, LICS 2020) (2020)
- Probabilistic Relational Reasoning via Metrics (2019)
- Semantics of higher-order probabilistic programs with conditioning (2019)
- A Probabilistic and Non-Deterministic Call-by-Push-Value Language (2019)
- Modular verification for almost-sure termination of probabilistic programs (2019)
- Probabilistic call by push value (2019)
- Pointless Learning (2017)
- Measurable cones and stable, measurable functions: a model for probabilistic higher-order programming (2017)
- A new proof rule for almost-sure termination (2017)
- Probabilistic relational verification for cryptographic implementations (2014)
- Probabilistic Program Analysis with Martingales (2013)
- Tensors, monads and actions (2012)
- Probabilistic coherence spaces as a model of higher-order probabilistic computation (2011)
- Categorical semantics of linear logic (Melliès, Panoramas et synthèses 27) (2009)
- Call-by-push-value (Levy, PhD thesis) (2001)
- Call-by-name, call-by-value, call-by-need and the linear lambda calculus (1999)
- Linear logic, monads and the lambda calculus (1996)
- Handbook of Categorical Algebra (1994)
- Borel structures for function spaces (1961)