Abstract
This paper analyses the introduction of a non-reversible mechanism in a reversible calculus (called \(\varOmega \rho \pi \)), intended to be used as an oracle which contains persistent memories of previously reversed computation. As a second step, we introduce the notion of weak causal consistency which relaxes the classical causal consistency by allowing the backward semantics not to revert to a previous state, but to a state related to a previous state and we show that \(\varOmega \rho \pi \) is weakly causally consistent. We finally present a practical application of this calculus.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
Note that, actually, it still has some sort of causal consistency, in that backward semantics undo the latter messages first. Therefore it is not possible to have an effect without its cause, but the resulting state is not reachable without backward sequence.
- 2.
We could generalize this rule by relaxing the constraint that \(Q\precsim P\), by introducing a binary relation of processes \(\mathcal {R}\) as parameter and requiring that \(\langle P, Q\rangle \in \mathcal {R}\), and then instantiating our semantics with \(\precsim \) as \(\mathcal {R}\) in this paper. However, the implications of such generalization are not trivial, in particular with respect to the weak causal consistency result presented latter in this paper. Therefore, for the sake of simplicity, we restrict ourself to the restricted definition.
- 3.
Notice that, due to the pending \(\langle k_5^1, \tilde{k_5}\rangle : c\langle P_1\rangle \) that remains after the choice, if \(k_1\) reduces at this point, when reading \(c\) it could actually receive from this pending process. For the sake of simplicity, we ignore this, since that garbage process is cleaned up when \(k_2\) returns in its initial state.
- 4.
The proof is trivial. Due to length constraints, we omit it.
References
Berry, G., Boudol, G.: The chemical abstract machine. In: Proceedings of the 17th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 1990, pp. 81–94 (1989). https://doi.org/10.1145/96709.96717
Berry, G., Boudol, G.: The chemical abstract machine. Theoret. Comput. Sci. 96(1), 217–248 (1992). https://doi.org/10.1016/0304-3975(92)90185-I
Caires, L., Ferreira, C., Vieira, H.: A process calculus analysis of compensations. In: Kaklamanis, C., Nielson, F. (eds.) TGC 2008. LNCS, vol. 5474, pp. 87–103. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-00945-7_6
Giachino, E., Lanese, I., Mezzina, C.A.: Causal-consistent reversible debugging. In: Gnesi, S., Rensink, A. (eds.) FASE 2014. LNCS, vol. 8411, pp. 370–384. Springer, Heidelberg (2014). https://doi.org/10.1007/978-3-642-54804-8_26
Kuhn, S., Aman, B., Ciobanu, G., Philippou, A., Psara, K., Ulidowski, I.: Reversibility in chemical reactions. In: Ulidowski, I., Lanese, I., Schultz, U.P., Ferreira, C. (eds.) RC 2020. LNCS, vol. 12070, pp. 151–176. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-47361-7_7
Kuhn, S., Ulidowski, I.: A Calculus for Local Reversibility (2016). https://core.ac.uk/display/191241654
Kuhn, S., Ulidowski, I.: Local reversibility in a Calculus of Covalent Bonding (2017). https://core.ac.uk/display/328692337?source=3. Publisher: ‘Elsevier BV’
Lanese, I., Lienhardt, M., Mezzina, C.A., Schmitt, A., Stefani, J.-B.: Concurrent flexible reversibility. In: Felleisen, M., Gardner, P. (eds.) ESOP 2013. LNCS, vol. 7792, pp. 370–390. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-37036-6_21
Lanese, I., Mezzina, C.A., Schmitt, A., Stefani, J.-B.: Controlling reversibility in higher-order Pi. In: Katoen, J.-P., König, B. (eds.) CONCUR 2011. LNCS, vol. 6901, pp. 297–311. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-23217-6_20
Lanese, I., Mezzina, C.A., Stefani, J.-B.: Reversing higher-order Pi. In: Gastin, P., Laroussinie, F. (eds.) CONCUR 2010. LNCS, vol. 6269, pp. 478–493. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-15375-4_33
Mezzina, C.A.: Reversing execution in Higher-Order Pi. Theses, Université de Grenoble, February 2012. https://tel.archives-ouvertes.fr/tel-00683964
Mezzina, C.A.: On reversibility and broadcast. In: Kari, J., Ulidowski, I. (eds.) RC 2018. LNCS, vol. 11106, pp. 67–83. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-99498-7_5
Milner, R. (ed.): A Calculus of Communicating Systems. LNCS, vol. 92. Springer, Heidelberg (1980). https://doi.org/10.1007/3-540-10235-3
Perumalla, K.S., Park, A.J.: Reverse computation for rollback-based fault tolerance in large parallel systems. Clust. Comput. 17(2), 303–313 (2013). https://doi.org/10.1007/s10586-013-0277-4
Philippou, A., Psara, K.: Reversible computation in petri nets. In: Kari, J., Ulidowski, I. (eds.) RC 2018. LNCS, vol. 11106, pp. 84–101. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-99498-7_6
Phillips, I., Ulidowski, I., Yuen, S.: A reversible process calculus and the modelling of the ERK signalling pathway. In: Glück, R., Yokoyama, T. (eds.) RC 2012. LNCS, vol. 7581, pp. 218–232. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-36315-3_18
Sangiorgi, D.: Introduction to Bisimulation and Coinduction. University Press, Cambridge (2011). https://doi.org/10.1017/CBO9780511777110
Vassor, M., Stefani, J.-B.: Checkpoint/rollback vs causally-consistent reversibility. In: Kari, J., Ulidowski, I. (eds.) RC 2018. LNCS, vol. 11106, pp. 286–303. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-99498-7_20
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2021 Springer Nature Switzerland AG
About this paper
Cite this paper
Vassor, M. (2021). Reversibility and Predictions. In: Yamashita, S., Yokoyama, T. (eds) Reversible Computation. RC 2021. Lecture Notes in Computer Science(), vol 12805. Springer, Cham. https://doi.org/10.1007/978-3-030-79837-6_10
Download citation
DOI: https://doi.org/10.1007/978-3-030-79837-6_10
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-79836-9
Online ISBN: 978-3-030-79837-6
eBook Packages: Computer ScienceComputer Science (R0)