Abstract
Existing formalisms for the algebraic specification and representation of networks of reversible agents suffer some shortcomings. Despite multiple attempts, reversible declensions of the Calculus of Communicating Systems (CCS) do not offer satisfactory adaptation of notions usual in “forward-only” process algebras, such as replication or context. Existing formalisms disallow the “hot-plugging” of processes during their execution in contexts with their own past. They also assume the existence of “eternally fresh” keys or identifiers that, if implemented poorly, could result in unnecessary bottlenecks and look-ups involving all the threads. In this paper, we begin investigating those issues, by first designing a process algebra endowed with a mechanism to generate identifiers without the need to consult with the other threads. We use this calculus to recast the possible representations of non-determinism in CCS, and as a by-product establish a simple and straightforward definition of concurrency. Our reversible calculus is then proven to satisfy expected properties. We also observe that none of the reversible bisimulations defined thus far are congruences under our notion of “reversible” contexts.
This work has been supported by French ANR project DCore ANR-18-CE25-0007.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
Of course, due credit should be given for those previous calculi, that strongly inspired ours, and into which our system can be partially embedded, cf. Sect. 3.3.
- 2.
We use this label to annotate the “internally non-deterministic” transitions introduced by the operator \(\sqcap \). It can be identified with \(\tau \) for simplicity if need be, and as \(\tau \), it does not have a complement.
References
Abadi, M., Blanchet, B., Fournet, C.: The applied Pi calculus: mobile values, new names, and secure communication. J. ACM 65(1), 1:1–1:41 (2018). https://doi.org/10.1145/3127586
Amadio, R.M.: Operational methods in semantics. Lecture notes, Université Denis Diderot Paris 7, December 2016. https://hal.archives-ouvertes.fr/cel-01422101
Arpit, Kumar, D.: Calculus of concurrent probabilistic reversible processes. In: ICCCT, pp. 34–40. ICCCT-2017. ACM, New York, NY, USA (2017). https://doi.org/10.1145/3154979.3155004
Aubert, C., Cristescu, I.: Reversible barbed congruence on configuration structures. In: ICE 2015. EPTCS, vol. 189, pp. 68–95 (2015). https://doi.org/10.4204/EPTCS.189.7
Aubert, C., Cristescu, I.: Contextual equivalences in configuration structures and reversibility. J. Log. Algebr. Methods Program. 86(1), 77–106 (2017). https://doi.org/10.1016/j.jlamp.2016.08.004
Aubert, C., Cristescu, I.: How reversibility can solve traditional questions: the example of hereditary history-preserving bisimulation. In: CONCUR. LIPIcs, vol. 2017, pp. 13:1–13:24. Schloss Dagstuhl (2020). https://doi.org/10.4230/LIPIcs.CONCUR.2020.13
Aubert, C., Cristescu, I.: Structural equivalences for reversible calculi of communicating systems (oral communication). Research report, Augusta University (2020). https://hal.archives-ouvertes.fr/hal-02571597, communication at ICE 2020
Aubert, C., Medić, D.: Enabling Replications and Contexts in Reversible Concurrent Calculus (Extended Version), May 2021. https://hal.archives-ouvertes.fr/hal-03183053
Baier, C., Kwiatkowska, M.Z.: Domain equations for probabilistic processes. MSCS 10(6), 665–717 (2000). https://doi.org/10.1017/S0960129599002984
Bednarczyk, M.A.: Hereditary history preserving bisimulations or what is the power of the future perfect in program logics. Technical report, Instytut Podstaw Informatyki PAN filia w Gdańsku (1991). http://www.ipipan.gda.pl/~marek/papers/historie.ps.gz
Boudol, G., Castellani, I.: Permutation of transitions: an event structure semantics for CCS and SCCS. In: Linear Time, Branching Time and Partial Order in Logics and Models for Concurrency, School/Workshop, Noordwijkerhout, The Netherlands, 30 May–3 June 1988, Proceedings. LNCS, vol. 354, pp. 411–427. Springer (1988). https://doi.org/10.1007/BFb0013028
Cox, G.: SimCCSK: simulation of the reversible process calculi CCSK. Master’s thesis, University of Leicester (4 2010). https://leicester.figshare.com/articles/thesis/SimCCSK_simulation_of_the_reversible_process_calculi_CCSK/ 10091681
Cristescu, I., Krivine, J., Varacca, D.: A compositional semantics for the reversible p-calculus. In: LICS, pp. 388–397. IEEE Computer Society (2013). https://doi.org/10.1109/LICS.2013.45
Cristescu, I., Krivine, J., Varacca, D.: Rigid families for CCS and the \(\pi \)-calculus. In: Theoretical Aspects of Computing - ICTAC 2015. LNCS, vol. 9399, pp. 223–240. Springer (2015). https://doi.org/10.1007/978-3-319-25150-9_14
Danos, Vincent, Krivine, Jean: Reversible communicating systems. In: Gardner, Philippa, Yoshida, Nobuko (eds.) CONCUR 2004. LNCS, vol. 3170, pp. 292–307. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-28644-8_19
Danos, V., Krivine, J.: Transactions in RCCS. In: Abadi, M., de Alfaro, L. (eds.) CONCUR 2005. LNCS, vol. 3653, pp. 398–412. Springer, Heidelberg (2005). https://doi.org/10.1007/11539452_31
Fischer, N., van Glabbeek, R.J.: Axiomatising infinitary probabilistic weak bisimilarity of finite-state behaviours. J. Log. Algebr. Methods Program. 102, 64–102 (2019). https://doi.org/10.1016/j.jlamp.2018.09.006
Frank, M.P., Brocato, R.W., Tierney, B.D., Missert, N.A., Hsia, A.H.: Reversible computing with fast, fully static, fully adiabatic CMOS. In: ICRC, Atlanta, GA, USA, 1–3 December 2020, pp. 1–8. IEEE (2020). https://doi.org/10.1109/ICRC2020.2020.00014
van Glabbeek, R.J.: On specifying timeouts. Electron. Notes Theor. Comput. Sci. 162, 173–175 (2006). https://doi.org/10.1016/j.entcs.2005.12.083
van Glabbeek, R.J., Höfner, P.: CCS: it’s not fair! - fair schedulers cannot be implemented in ccs-like languages even under progress and certain fairness assumptions. Acta Inform. 52(2–3), 175–205 (2015). https://doi.org/10.1007/s00236-015-0221-6
Goubault-Larrecq, J.: Isomorphism theorems between models of mixed choice. MSCS 27(6), 1032–1067 (2017). https://doi.org/10.1017/S0960129515000547
Graversen, E., Phillips, I., Yoshida, N.: Event structure semantics of (controlled) reversible CCS. In: RC 2018, Leicester, UK, September 12–14, 2018, Proceedings. LNCS, vol. 11106, pp. 102–122. Springer (2018). https://doi.org/10.1007/978-3-319-99498-7_7
Hennessy, M.: A distributed Pi-calculus. CUP (2007). https://doi.org/10.1017/CBO9780511611063
Hoare, C.A.R.: Communicating Sequential Processes. Prentice-Hall, Hoboken (1985)
Krivine, J.: Algèbres de Processus Réversible - Programmation Concurrente Déclarative. Ph.D. thesis, Université Paris 6 & INRIA Rocquencourt (2006). https://tel.archives-ouvertes.fr/tel-00519528
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., Medić, D., Mezzina, C.A.: Static versus dynamic reversibility in CCS. Acta Informatica 1–34 (2021). https://doi.org/10.1007/s00236-019-00346-6
Lanese, I., Phillips, I.C.C., Ulidowski, I.: An axiomatic approach to reversible computation. In: FOSSACS 2020, Dublin, Ireland, 25–30 April 2020, Proceedings. LNCS, vol. 12077, pp. 442–461. Springer (2020). https://doi.org/10.1007/978-3-030-45231-5_23
Lévy, J.J.: Réductions correctes et optimales dans le lambda-calcul. Ph.D. thesis, Paris 7, January 1978. http://pauillac.inria.fr/~levy/pubs/78phd.pdf
Matthews, D.: How to get started in quantum computing. Nature 591(7848), 166–167, March 2021. https://doi.org/10.1038/d41586-021-00533-x
Medić, D., Mezzina, C.A.: Static VS dynamic reversibility in CCS. In: RC 2016. LNCS, vol. 9720, pp. 36–51. Springer (2016). https://doi.org/10.1007/978-3-319-40578-0_3
Medić, D., Mezzina, C.A., Phillips, I., Yoshida, N.: A parametric framework for reversible \(\pi \)-calculi. Inf. Comput. 275, 104644 (2020). https://doi.org/10.1016/j.ic.2020.104644
Merro, M., Zappa Nardelli, F.: Behavioral theory for mobile ambients. J. ACM 52(6), 961–1023 (2005). https://doi.org/10.1145/1101821.1101825
Mezzina, C.A., Koutavas, V.: A safety and liveness theory for total reversibility. In: TASE 2017, Sophia Antipolis, France, 13–15 September, pp. 1–8. IEEE (2017). https://doi.org/10.1109/TASE.2017.8285635
Milner, R.: A Calculus of Communicating Systems. LNCS, Springer-Verlag (1980). https://doi.org/10.1007/3-540-10235-3
Palamidessi, C., Valencia, F.D.: Recursion vs replication in process calculi: Expressiveness. Bull. EATCS 87, 105–125 (2005). http://eatcs.org/images/bulletin/beatcs87.pdf
Perdrix, S., Jorrand, P.: Classically-controlled quantum computation. Electron. Notes Theor. Comput. Sci. 135(3), 119–128 (2006). https://doi.org/10.1016/j.entcs.2005.09.026
Phillips, I., Ulidowski, I.: Reversing algebraic process calculi. In: Aceto, L., Ingólfsdóttir, A. (eds.) FoSSaCS 2006. LNCS, vol. 3921, pp. 246–260. Springer, Heidelberg (2006). https://doi.org/10.1007/11690634_17
Phillips, I., Ulidowski, I.: Reversibility and models for concurrency. Electron. Notes Theor. Comput. Sci. 192(1), 93–108 (2007). https://doi.org/10.1016/j.entcs.2007.08.018
Rosenberg, A.L.: Efficient pairing functions - and why you should care. Int. J. Found. Comput. Sci. 14(1), 3–17 (2003). https://doi.org/10.1142/S012905410300156X
Sangiorgi, D.: Introduction to Bisimulation and Coinduction. CUP (2011)
Sangiorgi, D., Walker, D.: The Pi-calculus. CUP (2001)
Szudzik, M.P.: The Rosenberg-strong pairing function. CoRR abs/1706.04129 (2017)
de Visme, M.: Event structures for mixed choice. In: CONCUR. LIPIcs, vol. 140, pp. 11:1–11:16. Schloss Dagstuhl (2019). https://doi.org/10.4230/LIPIcs.CONCUR.2019.11
Acknowledgments
The authors wish to express their gratitude to Ioana Cristescu for asking some of the questions we tried to answer in this paper, to Assya Sellak for suggesting to use (something close to) caktus stacks to represent our memories, and to the reviewers for their interesting observations.
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
Aubert, C., Medić, D. (2021). Explicit Identifiers and Contexts in Reversible Concurrent Calculus. 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_9
Download citation
DOI: https://doi.org/10.1007/978-3-030-79837-6_9
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)