A Bunch of Sessions: A Propositions-as-Sessions Interpretation of Bunched Implications in Channel-Based Concurrency
Dan Frumin, Emanuele D'Osualdo, Bas van den Heuvel, Jorge A. P\'erez

TL;DR
This paper introduces a novel session type system based on Bunched Implications logic, offering a new approach to resource sharing and concurrency in message-passing programs, with formal guarantees and expressive power.
Contribution
It presents ${ m ext{ extpi}}$BI, a new ${ m ext{ extpi}}$-calculus with sessions based on BI logic, differing from Linear Logic-based systems, and establishes its fundamental properties.
Findings
Type preservation and deadlock-freedom for ${ m ext{ extpi}}$BI processes
An encoding of affine ${ m ext{ extpi}}$-calculus into ${ m ext{ extpi}}$BI
A non-interference property for resource access
Abstract
The emergence of propositions-as-sessions, a Curry-Howard correspondence between propositions of Linear Logic and session types for concurrent processes, has settled the logical foundations of message-passing concurrency. Central to this approach is the resource consumption paradigm heralded by Linear Logic. In this paper, we investigate a new point in the design space of session type systems for message-passing concurrent programs. We identify O'Hearn and Pym's Logic of Bunched Implications (BI) as a fruitful basis for an interpretation of the logic as a concurrent programming language. This leads to a treatment of non-linear resources that is radically different from existing approaches based on Linear Logic. We introduce a new -calculus with sessions, called BI; its most salient feature is a construct called spawn, which expresses new forms of sharing that are induced…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsLogic, programming, and type systems · Distributed systems and fault tolerance · Formal Methods in Verification
