Commutative Monads for Probabilistic Programming Languages

01/31/2021
by   Xiaodong Jia, et al.
0

A long-standing open problem in the semantics of programming languages supporting probabilistic choice is to find a commutative monad for probability on the category DCPO. In this paper we present three such monads and a general construction for finding even more. We show how to use these monads to provide a sound and adequate denotational semantics for the Probabilistic FixPoint Calculus (PFPC) – a call-by-value simply-typed lambda calculus with mixed-variance recursive types, term recursion and probabilistic choice. We also show that in the special case where we consider continuous dcpo's, then all three monads coincide with the valuations monad of Jones and we fully characterise the induced Eilenberg-Moore categories by showing that they are all isomorphic to the category of continuous Kegelspitzen of Keimel and Plotkin.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
10/25/2019

A Calculus for Language Transformations

In this paper we propose a calculus for expressing algorithms for progra...
research
07/28/2021

Semantics for Variational Quantum Programming

We consider a programming language that can manipulate both classical an...
research
01/12/2023

Duoidally enriched Freyd categories

Freyd categories provide a semantics for first-order effectful programmi...
research
11/21/2021

The Central Valuations Monad

We give a commutative valuations monad Z on the category DCPO of dcpo's ...
research
12/30/2018

A Probabilistic and Non-Deterministic Call-by-Push-Value Language

There is no known way of giving a domain-theoretic semantics to higher-o...
research
10/16/2018

Simple game semantics and Day convolution

Game semantics has provided adequate models for a variety of programming...
research
01/21/2020

Profunctor optics, a categorical update

Profunctor optics are bidirectional data accessors that capture data tra...

Please sign up or login with your details

Forgot password? Click here to reset