English
Related papers

Related papers: Towards Reversible Sessions

200 papers

Traditional session types prescribe bidirectional communication protocols for concurrent computations, where well-typed programs are guaranteed to adhere to the protocols. However, simple session types cannot capture properties beyond the…

Programming Languages · Computer Science 2023-06-22 Ankush Das , Frank Pfenning

Session types are a discipline for the static verification of message-passing programs. A session type specifies a channel's protocol as sequences of exchanges. It is most relevant to investigate session-based concurrency by identifying the…

Programming Languages · Computer Science 2024-01-24 Alen Arslanagic , Jorge A. Pérez , Anda-Amelia Palamariuc

One of the well-known results in concurrency theory concerns the relationship between event structures and occurrence nets: an occurrence net can be associated with a prime event structure, and vice versa. More generally, the relationships…

Logic in Computer Science · Computer Science 2019-10-25 Hernán Melgratti , Claudio Antares Mezzina , Iain Phillips , G. Michele Pinna , Irek Ulidowski

In reversible computations one is interested in the development of mechanisms allowing to undo the effects of executed actions. The past research has been concerned mainly with reversing single actions. In this paper, we consider the…

Formal Languages and Automata Theory · Computer Science 2023-06-22 David de Frutos Escrig , Maciej Koutny , Łukasz Mikulski

One-to-one reversible automata are introduced. Their applicability to a modelling of the quantum mechanical measurement process is discussed.

Quantum Physics · Physics 2009-04-16 Karl Svozil

Reversible computing models settings in which all processes can be reversed. Applications include low-power computing, quantum computing, and robotics. It is unclear how to represent side-effects in this setting, because conventional…

Logic in Computer Science · Computer Science 2018-12-19 Chris Heunen , Robin Kaarsgaard , Martti Karvonen

We present a type checking algorithm for establishing a session-based discipline in the pi calculus of Milner, Parrow and Walker. Our session types are qualified as linear or unrestricted. Linearly typed communication channels are…

Programming Languages · Computer Science 2011-08-12 Marco Giunti

Reversible simulation of irreversible algorithms is analyzed in the stylized form of a `reversible' pebble game. While such simulations incur little overhead in additional computation time, they use a large amount of additional memory space…

Quantum Physics · Physics 2009-10-30 Ming Li , John Tromp , Paul Vitanyi

Reversible computation is an emerging computing paradigm that allows any sequence of operations to be executed in reverse order at any point during computation. Its appeal lies in its potential for lowpower computation and its relevance to…

Logic in Computer Science · Computer Science 2023-11-02 Kamila Barylska , Anna Gogolinska , Lukasz Mikulski , Anna Philippou , Marcin Piatkowski , Kyriaki Psara

Session types provide guarantees about concurrent behaviour and can be understood through their correspondence with linear logic, with propositions as sessions and proofs as processes. However, a strictly linear setting is somewhat…

Programming Languages · Computer Science 2024-10-23 Danielle Marshall , Dominic Orchard

The field of molecular programming allows for the programming of the structure and behavior of matter at the molecular level, even to the point of encoding arbitrary computation. However, current approaches tend to be wasteful in terms of…

Emerging Technologies · Computer Science 2023-05-15 Hannah Earley

This paper presents a study of causality in a reversible, concurrent setting. There exist various notions of causality in pi-calculus, which differ in the treatment of parallel extrusions of the same name. In this paper we present a uniform…

Formal Languages and Automata Theory · Computer Science 2018-08-28 Doriana Medic , Claudio Antares Mezzina , Iain Phillips , Nobuko Yoshida

Causal-consistent reversibility is the reference notion of reversibility for concurrency. We introduce a modular framework for defining causal-consistent reversible extensions of concurrent models and languages. We show how our framework…

Logic in Computer Science · Computer Science 2016-08-12 Alexis Bernadet , Ivan Lanese

Session types statically prescribe bidirectional communication protocols for message-passing processes and are in a Curry-Howard correspondence with linear logic propositions. However, simple session types cannot specify properties beyond…

Programming Languages · Computer Science 2020-01-27 Ankush Das , Frank Pfenning

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

We study a probabilistic variant of binary session types that relate to a class of Finite-State Markov Chains. The probability annotations in session types enable the reasoning on the probability that a session terminates successfully, for…

Logic in Computer Science · Computer Science 2020-07-24 Omar Inverso , Hernán Melgratti , Luca Padovani , Catia Trubiani , Emilio Tuosto

We introduce a method of reversing the execution of imperative concurrent programs. Given an irreversible program, we describe the process of producing two versions. The first performs forward execution and saves information necessary for…

Programming Languages · Computer Science 2022-05-04 James Hoey , Irek Ulidowski

Rollback recovery strategies are well-known in concurrent and distributed systems. In this context, recovering from unexpected failures is even more relevant given the non-deterministic nature of execution, which means that it is…

Programming Languages · Computer Science 2024-01-08 Germán Vidal

This work examines approaches to making computational models reversible. Broadly speaking, transforming a computational model into a reversible one, i.e. reversibilizing it, means extending its operational semantics conservatively in a way…

Programming Languages · Computer Science 2026-03-05 Matteo Palazzo , Luca Roversi

Imperative session types provide an imperative interface to session-typed communication. In such an interface, channel references are first-class objects with operations that change the typestate of the channel. Compared to functional…

Programming Languages · Computer Science 2023-06-22 Hannes Saffrich , Peter Thiemann