Concurrent reversibility has been studied in different areas, such as biological or dependable distributed systems. However, only ``rigid'' reversibility has been considered, allowing to go back to a past state and restart the exact same computation, possibly leading to divergence. In this paper, we present croll-$\pi$, a concurrent calculus featuring flexible reversibility, allowing the specification of alternatives to a computation to be used upon rollback. Alternatives in croll-$\pi$ are attached to messages. We show the robustness of this mechanism by encoding more complex idioms for specifying flexible reversibility, and we illustrate the benefits of our approach by encoding a calculus of communicating transactions.
%0 Conference Paper
%1 Lanese:2013:CFR
%A Lanese, Ivan
%A Lienhardt, Michael
%A Mezzina, Claudio Antares
%A Schmitt, Alan
%A Stefani, Jean-Bernard
%B Programming Languages and Systems
%D 2013
%E Felleisen, Matthias
%E Gardner, Philippa
%I Springer
%K Calculus Formalism Reversibility Transactions
%P 370--390
%T Concurrent Flexible Reversibility
%X Concurrent reversibility has been studied in different areas, such as biological or dependable distributed systems. However, only ``rigid'' reversibility has been considered, allowing to go back to a past state and restart the exact same computation, possibly leading to divergence. In this paper, we present croll-$\pi$, a concurrent calculus featuring flexible reversibility, allowing the specification of alternatives to a computation to be used upon rollback. Alternatives in croll-$\pi$ are attached to messages. We show the robustness of this mechanism by encoding more complex idioms for specifying flexible reversibility, and we illustrate the benefits of our approach by encoding a calculus of communicating transactions.
%@ 978-3-642-37036-6
@inproceedings{Lanese:2013:CFR,
abstract = {Concurrent reversibility has been studied in different areas, such as biological or dependable distributed systems. However, only ``rigid'' reversibility has been considered, allowing to go back to a past state and restart the exact same computation, possibly leading to divergence. In this paper, we present croll-$\pi$, a concurrent calculus featuring flexible reversibility, allowing the specification of alternatives to a computation to be used upon rollback. Alternatives in croll-$\pi$ are attached to messages. We show the robustness of this mechanism by encoding more complex idioms for specifying flexible reversibility, and we illustrate the benefits of our approach by encoding a calculus of communicating transactions.},
added-at = {2018-07-25T14:27:23.000+0200},
author = {Lanese, Ivan and Lienhardt, Michael and Mezzina, Claudio Antares and Schmitt, Alan and Stefani, Jean-Bernard},
biburl = {https://www.bibsonomy.org/bibtex/27e5b65695e6f09173dd92560339d2096/gron},
booktitle = {Programming Languages and Systems},
description = {Concurrent Flexible Reversibility | SpringerLink},
editor = {Felleisen, Matthias and Gardner, Philippa},
interhash = {c02fb87580fa9f7c4c1701b9a60de656},
intrahash = {7e5b65695e6f09173dd92560339d2096},
isbn = {978-3-642-37036-6},
keywords = {Calculus Formalism Reversibility Transactions},
pages = {370--390},
publisher = {Springer},
timestamp = {2018-07-25T14:27:23.000+0200},
title = {Concurrent Flexible Reversibility},
year = 2013
}