Certifying Choreography Compilation

02/21/2021
by   Luís Cruz-Filipe, et al.
0

Choreographic programming is a paradigm for developing concurrent and distributed systems, where programs are choreographies that define, from a global viewpoint, the computations and interactions that communicating processes should enact. Choreography compilation translates choreographies into the local definitions of process behaviours, given as terms in a process calculus. Proving choreography compilation correct is challenging and error-prone, because it requires relating languages in different paradigms (global interactions vs local actions) and dealing with a combinatorial explosion of proof cases. We present the first certified program for choreography compilation for a nontrivial choreographic language supporting recursion.

READ FULL TEXT
POST COMMENT

Comments

There are no comments yet.

Authors

page 1

page 2

page 3

page 4

11/28/2017

Communications in Choreographies, Revisited

Choreographic Programming is a paradigm for developing correct-by-constr...
07/12/2021

Local Reasoning about Parameterized Reconfigurable Distributed Systems

This paper presents a Hoare-style calculus for formal reasoning about re...
04/24/2018

Connectors meet Choreographies

We present Cho-Reo-graphies (CR), a new language model that unites two p...
04/14/2018

Reasoning About TSO Programs Using Reduction and Abstraction

We present a method for proving that a program running under the Total S...
08/07/2020

Generating Distributed Programs from Event-B Models

Distributed algorithms offer challenges in checking that they meet their...
07/16/2020

Process, Systems and Tests: Three Layers in Concurrent Computation

In this position paper, we would like to offer a new template to study p...
10/08/2021

A subexponential view of domains in session types

Linear logic (LL) has inspired the design of many computational systems,...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.