Abstract
This is a paper on distinguishing and relating two important kinds of calculi through expressiveness, settling some critical but long unanswered questions. The delimitation of higher-order and first-order process calculi is a basic and pivotal topic in the study of process theory. Particularly, expressiveness studies mutual encodability, which helps decide whether process-passing or name-passing is more fundamental, and the way they ought to be used in both theory and practice. In this paper, we contribute to such demarcation with three major results. Firstly \(\pi \) (first-order pi-calculus) can faithfully express \(\varPi \) (basic higher-order pi-calculus). The calculus \(\varPi \) has the elementary operators (input, output, composition and restriction). This actually is a corollary of a more general result, that \(\pi \) can encode \(\varPi ^r\) (\(\varPi \) enriched with the relabelling operator). Secondly \(\varPi \) cannot interpret \(\pi \) reasonably. This is of more significance since it separates \(\varPi \) and \(\pi \) by drawing a well-defined boundary. Thirdly an encoding from \(\pi \) to \(\varPi ^r\) is revisited and discussed, which not only implies how to make \(\varPi \) more useful but also stresses the importance of name-passing in \(\pi \).
Similar content being viewed by others
Notes
An example: \(Q\stackrel{def}{=}(d)Q_1, Q_1\stackrel{def}{=}\overline{a}[d{.}0]{.}\overline{d}{.}0\). Then \(Q{\xrightarrow {(d)\overline{a}[d{.}0]}} \overline{d}{.}0\).
Noticing \( {[}\!{[}Q_1 {]}\!{]}^{}_{}\equiv (m)(\overline{a}m{.} {[}\!{[}\overline{d}{.}0 {]}\!{]}^{}_{} |\,!m(Id) {.} {[}\!{[}d{.}0 {]}\!{]}^{}_{})\), we know
$$\begin{aligned} \begin{array}{lll} {[}\!{[}Q {]}\!{]}^{}_{}&\equiv&(d) {[}\!{[}Q_1 {]}\!{]}^{}_{} \\&\equiv&(d)(m)(\overline{a}m {.} {[}\!{[}\overline{d}{.}0 {]}\!{]}^{}_{} |\,!m(Id){.} {[}\!{[}d{.}0 {]}\!{]}^{}_{}) \\&{\xrightarrow {\overline{a}(m)}}&(d)( {[}\!{[}\overline{d}{.}0 {]}\!{]}^{}_{} |\,!m(Id){.} {[}\!{[}d{.}0 {]}\!{]}^{}_{}) \end{array} \end{aligned}$$e.g., \(T{\xrightarrow {\tau }} _{j\times k} \; (m\widetilde{c})( {[}\!{[}P_1^{\prime } {]}\!{]}^{}_{\rho } |\, {[}\!{[}E {]}\!{]}^{}_{\rho }\{\epsilon /x\} |\,\prod ^j {[}\!{[}A {]}\!{]}^{}_{} |\,!m(\rho _1){.} {[}\!{[}A {]}\!{]}^{}_{})\) , where \( {[}\!{[}E {]}\!{]}^{}_{\rho }\{\epsilon /x\} \) naively means cancelling the prefix occurrences \(x\) in \( {[}\!{[}E {]}\!{]}^{}_{\rho }\), and \(\prod ^j {[}\!{[}A {]}\!{]}^{}_{}\) means the composition of \(j\) number of \( {[}\!{[}A {]}\!{]}^{}_{}\).
References
Baeten, J.: Branching bisimilarity is an equivalence indeed. Inform. Process. Lett. 58, 141–147 (1996)
Bundgaard, M., Godskesen, J.C., Hildebrandt, T.: Encoding the pi-calculus in higher-order calculi. Tech. Rep. TR-2008-106, IT University of Copenhagen (2008)
Bundgaard, M., Hildebrandt, T., Godskesen, J.C.: A cps encoding of name-passing in higher-order mobile embedded resources. Theor. Comput. Sci. 356, 422–439 (2006)
Busi, N., Gabbrielli, M., Zavattaro, G.: Replication vs recursive definitions in channel based calculi. In: Proceedings of ICALP 2003, LNCS, vol. 2719, pp. 133–144. Springer, Berlin (2003)
Busi, N., Gabbrielli, M., Zavattaro, G.: Comparing recursion, replication and iteration in process calculi. In: Proceedings of ICALP04, LNCS, vol. 3142, pp. 307–319. Springer, Berlin (2004)
Castagnaa, G., Vitekb, J., Nardelli, F.Z.: The seal calculus. Inform. Comput. 201(1), 1–54 (2005)
Engberg, U.H., Nielsen, M.: A calculus of communicating systems with label passing. Tech. Rep. DAIMI PB-208, Computer Science Department, University of Aarhus (1986). http://www.daimi.aau.dk/PB/208/
Engberg, U.H., Nielsen, M.: A calculus of communicating systems with label passing—ten years after. In: Proof, language, and interaction: essays in honour of Robin Milner, pp. 599–622. MIT Press, Cambridge (2000)
Fu, Y.: Checking equivalence for higher order processes (2005). BASICS (http://basics.sjtu.edu.cn) Shanghai Jiao Tong University
Fu, Y.: On quasi open bisimulation. Theor. Comput. Sci. 338(1–3), 96–126 (2005)
Fu, Y.: Theory of interaction (2009). BASICS (http://basics.sjtu.edu.cn) Shanghai Jiao Tong University
Fu, Y., Lu, H.: On the expressiveness of interaction. Theor. Comput. Sci. 411, 1387–1451 (2010)
Fu, Y., Zhu, H.: Theory of name passing calculus (2009). BASICS (http://basics.sjtu.edu.cn) Shanghai Jiao Tong University
Glabeek, R.: The linear time-branching time spectrum ii. In: Proceedings of CONCUR, LNCS, vol. 715, pp. 66–81. Springer, Berlin (1993)
Gorla, D.: Towards a unified approach to encodability and separation results for process calculi. In: Proceedings of CONCUR’ 08, LNCS, vol. 5201, pp. 492–507. Springer, Berlin (2008)
Hildebrandt, T., Godskesen, J.C., Bundgaard, M.: Bisimulation congruences for Homer—a calculus of higher order mobile embedded resources. Tech. Rep. TR-2004-52, IT University of Copenhagen (2004)
Lanese, I., Perez, J., Sangiorgi, D., Schmitt, A.: On the expressiveness and decidability of higher-order process calculi. In: Proceedings of the 23rd annual IEEE symposium on logic in computer science (LICS 2008), pp. 145–155. IEEE Computer Society (2008). Journal version in [22]
Lanese, I., Pérez, J.A., Sangiorgi, D., Schmitt, A.: On the expressiveness and decidability of higher-order process calculi. Inform. Comput. 209(2), 198–226 (2010)
Lanese, I., Pérez, J.A., Sangiorgi, D., Schmitt, A.: On the expressiveness of polyadic and synchronous communication in higher-order process calculi. In: Proceedings of ICALP 2010, LNCS, pp. 442–453. Springer, Berlin (2010)
Milner, R.: Communication and Concurrency. Prentice Hall, New Jersey (1989)
Milner, R.: Functions as processes. J. Math. Struct. Comput. Sci. 2(2), 119–141, : Research Report 1154. INRIA, Sofia Antipolis (1992). 1990
Milner, R., Parrow, J., Walker, D.: A calculus of mobile processes (parts i and ii). Inform. Comput. 100(1), 1–77 (1992)
Milner, R., Sangiorgi, D.: Barbed bisimulation. In: Proceedings 19-the International Colloquium on Automata, Languages and Programming (ICALP ’92), LNCS, Vol. 623, pp. 685–695. Springer, Berlin (1992)
Nestmann, U., Pierce, B.: Decoding choice encodings. In: Proceedings of CONCUR 1996, LNCS, vol. 1119, pp. 179–194. Springer, Berlin (1996)
Palamidessi, C.: Comparing the expressive power of the synchronous and the asynchronous pi-calculus. Math. Struct. Comput. Sci. 13, 685–719 (2003)
Palamidessi, C., Saraswat, V., Valencia, F.D., Victor, B.: On the expressiveness of linearity vs. persistence in the asychronous pi-calculus. In: Proceedings of the 21st Annual IEEE Symposium on Logic in Computer Science (LICS’06), pp. 59–68. IEEE Computer Society (2006)
Plotkin, G.: A structural approach to operational semantics. Tech. Rep. DAIMI FN-19, Aarhus Universitetsforlag (1981)
Pous, D.: Up-to techniques for weak bisimulation. In: Proceedings of International Colloquium on Automata, Languages and Programming (ICALP 2005), LNCS, Vol. 3580, pp. 730–741. Springer, Berlin (2005)
Sangiorgi, D.: Expressing mobility in process algebras: first-order and higher-order paradigms. Ph.d. thesis, University of Edinburgh (1992)
Sangiorgi, D.: From \(\pi \)-calculus to higher-order \(\pi \)-calculus—and back. In: Proceedings TAPSOFT ’93, LNCS, Vol. 668, pp. 151–166. Springer, Berlin (1992)
Sangiorgi, D.: Bisimulation for higher-order process calculi. Inform. Comput. 131(2), 141–178 (1996)
Sangiorgi, D.: Pi-calculus, internal mobility and agent-passing calculi. Theor. Comput. Sci. 167(2) (1996)
Sangiorgi, D.: A theory of bisimulation for \(\pi \)-calculus. Acta Informatica 33(1), 69–97 (1996)
Sangiorgi, D.: On the bisimulation proof method. Math. Struct. Comput. Sci. 8(6), 447–479 (1998)
Sangiorgi, D., Milner, R.: The problem of weak bisimulation up-to. In: Proceedings of CONCUR’92, LNCS, vol. 630, pp. 32–46. Springer, Berlin (1992)
Sangiorgi, D., Walker, D.: On barbed equivalences in pi-calculus. In: Proceedings of CONCUR’01, LNCS, vol. 2154, pp. 292–304. Springer, Berlin (2001)
Sangiorgi, D., Walker, D.: The Pi-calculus: a Theory of Mobile Processes. Cambridge Universtity Press, Cambridge (2001)
Schmitt, A., Stefani, J.B.: The m-calculus: A higher-order distributed process calculus. In: Proceedings of the 30th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pp. 50–61. ACM (2003)
Schmitt, A., Stefani, J.B.: The kell calculus: A family of higher-order distributed process calculi. In: Proceedings of the International Workshop on Global Computing 2004 Workshop (GC 2004), pp. 146–178. Springer, Berlin (2004)
Thomsen, B.: Calculi for higher order communicating systems. Ph.d. thesis, Department of Computing, Imperial College (1990)
Thomsen, B.: Plain chocs, a second generation calculus for higher-order processes. Acta Informatica 30(1), 1–59 (1993)
van Glabbeek, R.: What is branching time semantics and why to use it? In: G. Paun, G. Rozenberg, A. Salomaa (eds.) Current trends in theoretical computer science; entering the 21th century, pp. 469–479. World Scientific (1994)
van Glabbeek, R.: Linear time-branching time spectrum i. In: Handbook of process algebra, pp. 3–99. North-Holland (2001)
van Glabbeek, R., Luttik, B., Trčka, N.: Branching bisimilarity with explicit divergence. Fundamenta Informaticae 93, 371–392 (2009)
van Glabbeek, R., Weijland, W.: Branching time and abstraction in bisimulation semantics. In: Information processing’89, pp. 613–618. North-Holland (1989)
Xu, X.: On the bisimulation theory and axiomatization of higher-order process calculi. Ph.D. thesis, BASICS, Department of Computer Science and Engineering, Shanghai Jiao Tong University, Shanghai, China, P.R. (2008)
Xu, X.: Expressing first-order \(\pi \)-calculus in higher-order calculus of communicating systems. J. Comput. Sci. Technol. 24(1), 122–137 (2009)
Xu, X.: On bisimulation theory in linear higher-order pi-calculus. Trans. Petri Nets Other Models Concurr. III(5800), 244–274 (2009)
Yin, Q., Long, H.: Process passing calculus, revisited. J. Shanghai Jiao Tong Univ. (Sci.) (2012). To appear
Acknowledgments
We are particularly grateful to the anonymous referees for their instructive criticism and suggestions. We appreciate greatly the interest and advice from editor Ernst-Ruediger Olderog. We also thank Yuxi Fu, Huan Long, Qiang Yin and other members of the BASICS lab at SJTU for their helpful discussion.
Author information
Authors and Affiliations
Corresponding author
Additional information
The work is supported by the National Natural Science Foundation of China (60903020, 60903189, 61173048) and the Doctoral Fund of Ministry of Education of China (20090073120024).
Rights and permissions
About this article
Cite this article
Xu, X. Distinguishing and relating higher-order and first-order processes by expressiveness. Acta Informatica 49, 445–484 (2012). https://doi.org/10.1007/s00236-012-0168-9
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00236-012-0168-9