Reasoning about Choreographic Programs

04/27/2023
by   Luís Cruz-Filipe, et al.
0

Choreographic programming is a paradigm where a concurrent or distributed system is developed in a top-down fashion. Programs, called choreographies, detail the desired interactions between processes, and can be compiled to distributed implementations based on message passing. Choreographic languages usually guarantee deadlock-freedom and provide an operational correspondence between choreographies and their compiled implementations, but until now little work has been done on verifying other properties. This paper presents a Hoare-style logic for reasoning about the behaviour of choreographies, and illustrate its usage in representative examples. We show that this logic is sound and complete, and discuss decidability of its judgements. Using existing results from choreographic programming, we show that any functional correctness property proven for a choreography also holds for its compiled implementation.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
09/12/2022

A Bunch of Sessions: A Propositions-as-Sessions Interpretation of Bunched Implications in Channel-Based Concurrency

The emergence of propositions-as-sessions, a Curry-Howard correspondence...
research
10/28/2020

Actris 2.0: Asynchronous Session-Type Based Reasoning in Separation Logic

Message passing is a useful abstraction for implementing concurrent prog...
research
11/04/2002

The DLV System for Knowledge Representation and Reasoning

This paper presents the DLV system, which is widely considered the state...
research
07/12/2021

Local Reasoning about Parameterized Reconfigurable Distributed Systems

This paper presents a Hoare-style calculus for formal reasoning about re...
research
11/28/2017

Communications in Choreographies, Revisited

Choreographic Programming is a paradigm for developing correct-by-constr...
research
04/17/2019

On Resolving Non-determinism in Choreographies

Choreographies specify multiparty interactions via message passing. A re...
research
02/01/2023

Ideas for the future of Prolog inspired by Oz

Both Prolog and Oz are multiparadigm languages with a logic programming ...

Please sign up or login with your details

Forgot password? Click here to reset