English
Related papers

Related papers: Event structures for the reversible early internal…

200 papers

We define a pi-calculus variant with a costed semantics where channels are treated as resources that must explicitly be allocated before they are used and can be deallocated when no longer required. We use a substructural type system…

Logic in Computer Science · Computer Science 2015-07-01 Adrian Francalanza , Edsko DeVries , Matthew Hennessy

Type systems as a way to control or analyze programs have been largely studied in the context of functional programming languages. Some of those work allow to extract from a typing derivation for a program a complexity bound on this…

Logic in Computer Science · Computer Science 2019-10-08 Patrick Baillot , Alexis Ghyselen

We propose a type-based resource usage analysis for the π-calculus extended with resource creation/access primitives. The goal of the resource usage analysis is to statically check that a program accesses resources such as files and…

Programming Languages · Computer Science 2017-01-11 Naoki Kobayashi , Kohei Suenaga , Lucian Wischik

A famous result by Milner is that the lambda-calculus can be simulated inside the pi-calculus. This simulation, however, holds only modulo strong bisimilarity on processes, i.e. there is a slight mismatch between beta-reduction and how it…

Programming Languages · Computer Science 2013-02-27 Beniamino Accattoli

We investigate a graphical representation of session invocation interdependency in order to prove progress for the pi-calculus with sessions under the usual session typing discipline. We show that those processes whose associated dependency…

Programming Languages · Computer Science 2010-10-28 Marco Carbone , Søren Debois

A notion of probabilistic lambda-calculus usually comes with a prescribed reduction strategy, typically call-by-name or call-by-value, as the calculus is non-confluent and these strategies yield different results. This is a break with one…

Logic in Computer Science · Computer Science 2020-02-21 Ugo Dal Lago , Giulio Guerrieri , Willem Heijltjes

This work proposes tractable bisimulations for the higher-order pi-calculus with session primitives (HOpi) and offers a complete study of the expressivity of its most significant subcalculi. First we develop three typed bisimulations, which…

Logic in Computer Science · Computer Science 2015-02-11 Dimitrios Kouzapas , Jorge A. Pérez , Nobuko Yoshida

Reversible computation requires that intermediate data be explicitly undone rather than discarded. In quantum programming, this principle appears as uncomputation, usually treated as a technical cleanup mechanism. We instead present…

Quantum Physics · Physics 2026-03-17 Simone Faro , Francesco Pio Marino , Gabriele Messina

In the logic programming paradigm, it is difficult to develop an elegant solution for generating distinguishing formulae that witness the failure of open-bisimilarity between two pi-calculus processes; this was unexpected because the…

Logic in Computer Science · Computer Science 2017-06-01 Ki Yung Ahn , Ross Horne , Alwen Tiu

We propose an automated method for proving termination of $\pi$-calculus processes, based on a reduction to termination of sequential programs: we translate a $\pi$-calculus process to a sequential program, so that the termination of the…

Programming Languages · Computer Science 2021-09-02 Tsubasa Shoshi , Takuma Ishikawa , Naoki Kobayashi , Ken Sakayori , Ryosuke Sato , Takeshi Tsukada

We introduce the process calculus Multi-CCS, which extends conservatively CCS with an operator of strong prefixing able to model atomic sequences of actions as well as multiparty synchronization. Multi-CCS is equipped with a labeled…

Logic in Computer Science · Computer Science 2010-12-01 Roberto Gorrieri , Cristian Versari

In the setting of the pi-calculus with binary sessions, we aim at relaxing the notion of duality of session types by the concept of retractable compliance developed in contract theory. This leads to extending session types with a new type…

Logic in Computer Science · Computer Science 2017-12-01 Franco Barbanera , Ugo de'Liguoro

The $\pi$-calculus is the paradigmatical name-passing calculus. While being purely name-passing, it allows the representation of higher-order functions and store. We study how $\pi$-calculus processes can be controlled so that computations…

Logic in Computer Science · Computer Science 2025-04-25 Daniel Hirschkoff , Iwan Quémerais , Davide Sangiorgi

This work exploits the logical foundation of session types to determine what kind of type discipline for the pi-calculus can exactly capture, and is captured by, lambda-calculus behaviours. Leveraging the proof theoretic content of the…

Logic in Computer Science · Computer Science 2018-01-26 Bernardo Toninho , Nobuko Yoshida

Reversible distributed programs have the ability to abort unproductive computation paths and backtrack, while unwinding communication that occurred in the aborted paths. While it is natural to assume that reversibility implies full state…

Programming Languages · Computer Science 2016-02-12 Geoffrey Brown , Amr Sabry

Petri nets are a well-known model of concurrency and provide an ideal setting for the study of fundamental aspects in concurrent systems. Despite their simplicity, they still lack a satisfactory causally reversible semantics. We develop…

Logic in Computer Science · Computer Science 2023-06-22 Hernán Melgratti , Claudio Antares Mezzina , Irek Ulidowski

Initiated by Abramsky [1994], the Proofs as Processes agenda is to establish a solid foundation for the study of concurrent languages, by researching the connection between linear logic and the $\pi$-calculus. To date, Proofs as Processes…

Logic in Computer Science · Computer Science 2021-06-23 Fabrizio Montesi , Marco Peressotti

We study the correspondence between a concurrent lambda-calculus in administrative, continuation passing style and a pi-calculus and we derive a termination result for the latter.

Programming Languages · Computer Science 2011-02-14 Roberto Amadio

Janus is a paradigmatic example of a reversible programming language. Indeed, Janus programs can be executed backwards as well as forwards. However, its current small-step semantics (useful, e.g., for debugging or as a basis for extensions…

Programming Languages · Computer Science 2026-02-27 Ivan Lanese , Germán Vidal

We formalise the pi-calculus using the nominal datatype package, based on ideas from the nominal logic by Pitts et al., and demonstrate an implementation in Isabelle/HOL. The purpose is to derive powerful induction rules for the semantics…

Logic in Computer Science · Computer Science 2015-07-01 Jesper Bengtson , Joachim Parrow