Abstract
In this paper, we present a process calculus called BigrTiMo that combines the rTiMo calculus and the Bigraph model. BigrTiMo calculus is capable of specifying a rich variety of properties for structure-aware mobile systems. Compared with rTiMo, our BigrTiMo calculus can specify not only time, mobility and local communication, but also remote communication. We then investigate the operational semantics of the BigrTiMo calculus and develop an executable formal specification of our BigrTiMo calculus in a declarative language called Maude. In addition, we verify safety properties and liveness properties of the mobile systems described by BigrTiMo using state exploration and LTL model checking in Maude. Based on Hoare and He's Unifying Theories of Programming (UTP), we study the semantic foundation of this highly expressive modelling language and propose a denotational semantic model and a set of algebraic laws for it. The semantic model in this paper covers time, location, communication and global shared variable at the same time. We also demonstrate the proofs of some algebraic laws based on our denotational semantics. Moreover, we explore how the algebraic semantics relates with the operational semantics and denotational semantics, which is conducted by the study of deriving the operational semantics and denotational semantics from algebraic semantics. We prove the equivalence between the derived transition system (e.g., the operational semantics) and the derivation strategy, which indicates that the operational semantics is sound and complete.
Similar content being viewed by others
References
Aman B, Ciobanu G (2007) Mobile ambients with timers and types. In: Theoretical aspects of computing—ICTAC 2007, 4th International colloquium, volume 4711 of lecture notes in computer science, pp 50–63, Macau, China, September 26–28. Springer
Agrigoroaiei, O., Ciobanu, G.: Rewriting logic specification of membrane systems with promoters and inhibitors. Electr Notes Theor Comput Sci 238(3), 5–22 (2009)
Aman B, Ciobanu G (2013) Real-time migration properties of rtimo verified in uppaal. In: Software engineering and formal methods—11th international conference, SEFM 2013, volume 8137 of lecture notes in computer science, pp 31–45, Madrid, Spain, September 25–27. Springer
Alur, R., Dill, D.L.: A theory of timed automata. Theor Comput Sci 126(2), 183–235 (1994)
Abadi, M., Gordon, A.D.: A calculus for cryptographic protocols: The spi calculus. Inf Comput 148(1), 1–70 (1999)
Behrmann G, David A, Guldstrand LK (2004) A tutorial on uppaal. In: Formal methods for the design of real-time systems, international school on formal methods for the design of computer, communication and software systems, SFM-RT 2004, Bertinoro, Italy, September 13–18, 2004, Revised Lectures, pp 200–236
Berger M (2004) Basic theory of reduction congruence fortwo timed asynchronous pi-calculi. In: CONCUR 2004—concurrency theory, 15th international conference, volume 3170 of lecture notes in computer science, pp 115–130, London, UK, August 31–September 3. Springer
Bergstra, J.A., Klop, J.W.: Process algebra for synchronous communication. Inf Control 60(1–3), 109–137 (1984)
Brookes, S.D.: Full abstraction for a shared-variable parallel language. Inf Comput 127(2), 145–163 (1996)
Clavel, M., Durán, F., Eker, S., Lincoln, P., Martí -Oliet N, Meseguer J, Quesada JF, : Maude: specification and programming in rewriting logic. Theor Comput Sci 285(2), 187–243 (2002)
Clavel M, Durán F, Eker S, Lincoln P, Martí -Oliet N, Meseguer J, Talcott CL (eds) (2007) All about Maude—a high-performance logical framework, how to specify, program and verify systems in rewriting logic, volume 4350 of lecture notes in computer science. Springer
Cardelli, L., Gordon, A.D.: Mobile ambients. Electr Notes Theor Comput Sci 10, 198–201 (1997)
Ciobanu, G., Koutny, M.: Timed mobility in process algebra and petri nets. J Log Algebr Program 80(7), 377–391 (2011)
Cavalcanti, A., Wellings, A.J., Woodcock, J.: The safety-critical java memory model formalised. Formal Asp Comput 25(1), 37–57 (2013)
Duran, A., Cavalcanti, A., Sampaio, A.: An algebraic approach to the design of compilers for object-oriented languages. Formal Asp Comput 22(5), 489–535 (2010)
Eker, S., Meseguer, J., Sridharanarayanan, A.: The maude LTL model checker. Electr Notes Theor Comput Sci 71, 162–187 (2002)
Gleirscher, M., Foster, S., Nemouchi, Y.: Evolution of formal model-based assurance cases for autonomous robots. In: Ölveczky, P.C., Salaün, G. (eds.) Software engineering and formal methods–17th international conference, SEFM 2019, Oslo, Norway, September 18–20, 2019, Proceedings. lecture notes in computer science, pp 87–104, vol. 11724. Springer (2019)
Hennessy, M.: Algebraic theory of processes. MIT Press series in the foundations of computing, MIT Press, Cambridge (1988)
Hennessy, M.: Semantics of programming languages–an elementary introduction using structural operational semantics. Wiley (1990)
He, J., Hoare, C.A.R.: From algebra to operational semantics. Inf Process Lett 45(2), 75–80 (1993)
Hoare CAR, He J (1998) Unifying theories of programming. Prentice Hall international series in computer science
Hoare, C.A.R., Hayes, I.J., He, J., Morgan, C., Roscoe, A.W., Sanders, J.W., Sørensen, I.H., Michael, S.J., Sufrin, B.: Laws of programming. Commun ACM 30(8), 672–686 (1987)
Hoare, C.A.R., He, J., Sampaio, A.: Normal form approach to compiler design. Acta Inf 30(8), 701–739 (1993)
Gérard H, Gilles K, Christine P-M (2004) The coq proof assistant a tutorial. Rapport Tech 178
He, J., Li, Q.: A new roadmap for linking theories of programming and its applications on GCL and CSP. Sci Comput Program 162, 3–34 (2018)
Hoare, C.A.R.: An axiomatic basis for computer programming (reprint). Commun ACM 26(1), 53–56 (1983)
Hoare, C.A.R.: Communicating sequential processes. Prentice-Hall, Upper Saddle River (1985)
Hoare CAR (2013) Unifying semantics for concurrent programming. In: Computation, logic, games, and quantum foundations. The many facets of Samson Abramsky—essays dedicated to Samson Abramsky on the occasion of his 60th birthday, volume 7860 of lecture notes in computer science, pp 139–149. Springer
Hennessy, M., Plotkin, G.D.: Full abstraction for a simple parallel programming language. Mathematical foundations of computer science 1979, proceedings, 8th symposium. lecture notes in computer science, vol. 74, pp. 108–120. Olomouc, Czechoslovakia, Springer (1979)
He, J., Seidel, K., McIver, A.: Probabilistic models for the guarded command language. Sci Comput Program 28(2–3), 171–192 (1997)
Hoare, T., van Staden, S.: In praise of algebra. Formal Asp Comput 24(4–6), 423–431 (2012)
Hoare, T., van Staden, S., Möller, B., Struth, G., Zhu, H.: Developments in concurrent kleene algebra. J Log Algebr Methods Program 85(4), 617–636 (2016)
He, J., Zhu, H., Pu, G.: A model for bpel-like languages. Front Comput Sci China 1(1), 9–19 (2007)
Lakos C (2005) A petri net view of mobility. In: Formal techniques for networked and distributed systems—FORTE 2005, 25th IFIP WG 6.1 international conference, Taipei, Taiwan, October 2–5, 2005, Proceedings, pp 174–188
Lakos, C.: Modelling mobile IP with mobile petri nets. Trans Petri Nets Other Models Concurr 3, 127–158 (2009)
Mäkelä M (2002) Maria: Modular reachability analyser for algebraic system nets. In: Applications and theory of Petri nets 2002, 23rd international conference, ICATPN 2002, Adelaide, Australia, June 24–30, 2002, Proceedings, pp 434–444
Meseguer, J.: Conditioned rewriting logic as a united model of concurrency. Theor Comput Sci 96(1), 73–155 (1992)
Milner, R.: A calculus of communicating systems. lecture notes in computer science, vol. 92. Springer, Berlin (1980)
Milner, R.: Communicating and mobile systems–the pi-calculus. Cambridge University Press, Cambridge (1999)
Milner, R.: The space and motion of communicating agents. Cambridge University Press, Cambridge (2009)
Milner, R., Parrow, J., Walker, D.: A calculus of mobile processes. I. Inf Comput 100(1), 1–40 (1992)
Milner, R., Parrow, J., Walker, D.: A calculus of mobile processes. II. Inf Comput 100(1), 41–77 (1992)
McCann, P.J., Roman, G.-C.: Modeling mobile IP in mobile UNITY. ACM Trans Softw Eng Methodol 8(2), 115–146 (1999)
Nielson, H.R., Nielson, F.: Semantics with applications–a formal introduction. Wiley professional computing, Wiley, Hoboken (1992)
Nipkow, T., Paulson, L.C., Wenzel, M.: Isabelle/HOL–a proof assistant for higher-order logic. lecture notes in computer science, vol. 2283. Springer, Berlin (2002)
O'Hearn, P.W.: Resources, concurrency, and local reasoning. Theor Comput Sci 375(1–3), 271–307 (2007)
Orava, F., Parrow, J.: An algebraic verification of a mobile network. Formal Asp Comput 4(6), 497–543 (1992)
Paulson LC (1994) Isabelle—a generic theorem prover (with a contribution by T. Nipkow), volume 828 of lecture notes in computer science. Springer, Berlin
Perkins, C.E.: IP mobility support for ipv4, revised. RFC 5944, 1–100 (2010)
Pereira E (2015) Mobile reactive systems over bigraphical machines—a programming model and its implementation. PhD thesis, University of California, Berkeley, USA
Plotkin, G.D.: A structural approach to operational semantics. J Log Algebr Program 60–61, 17–139 (2004)
Pita I, Riesco A (2015) Specifying and analyzing the kademlia protocol in maude. In: Theoretical aspects of computing—ICTAC 2015, volume 9399 of lecture notes in computer science, pp 524–541, Colombia, October 29–31. Springer
Potop-Butucaru, M., Sznajder, N., Tixeuil, S., Urbain, X.: Formal methods for mobile robots. In: Flocchini, P., Prencipe, G., Santoro, N. (eds.) Distributed computing by mobile entities, current research in moving and computing. lecture notes in computer science, pp 278–313, vol. 11340. Springer (2019)
Regensburger, F., Barnard, A.: Formal verification of SDL systems at the siemens mobile phone department. In: Steffen, B. (ed.) Tools and algorithms for construction and analysis of systems, 4th international conference, TACAS '98, Held as Part of the European joint conferences on the theory and practice of software, ETAPS'98, Lisbon, Portugal, March 28-April 4, 1998, proceedings. lecture notes in computer science, pp 439–455, vol. 1384. Springer (1998)
Riesco, A., Ogata, K., Futatsugi, K.: A maude environment for cafeobj. Formal Asp Comput 29(2), 309–334 (2017)
Reed, G.M., Roscoe, A.W.: A timed model for communicating sequential processes. Theor Comput Sci 58, 249–261 (1988)
Reisig, W., Rozenberg, G. (eds.): Lectures on Petri nets I: basic models. lecture notes in computer science, vol. 1491. Springer, Berlin (1998)
Reisig, W., Rozenberg, G. (eds.): Lectures on Petri nets II: applications. lecture notes in computer science, vol. 1492. Springer, Berlin (1998)
Sun, J., Liu, Y., Dong, J.S., Chen, C.: Integrating specification and programs for system modeling and verification. TASE 2009, third IEEE international symposium on theoretical aspects of software engineering, 29–31 July 2009, pp. 127–135. Tianjin, China (2009)
Sun J, Liu Y, Dong JS, Pang J (2009) Pat: Towards flexible verification under fairness volume 5643 of lecture notes in computer science, pp 709–714. Springer, Berlin
Stoy JE (1979) Foundations of denotational semantics. In: Abstract software specifications, 1979 Copenhagen Winter School, volume 86 of lecture notes in computer science, pp 43–99. Springer
Shi, L., Zhao, Y., Liu, Y., Sun, J., Dong, J.S., Qin, S.: A utp semantics for communicating processes with shared variables and its formal encoding in pvs. Formal Asp Comput 30(3–4), 351–380 (2018)
Tarski, A.: A lattice-theoretical fixpoint theorem and its applications. Pac J Math 5, 285–309 (1955)
Padberg, U., Schulz, A., (2016) Model checking reconfigurable petri nets with maude. In: Graph transformation–9th international conference, ICGT, : in memory of Hartmut Ehrig, held as part of STAF 2016. lecture notes in computer science, pp 54–70, Vienna, vol. 9761. Springer, Austria (2016)
Verdejo, A., Martí -Oliet N, : Executable structural operational semantics in maude. J Log Algebr Program 67(1–2), 226–293 (2006)
Watt, D.A.: Programming language syntax and semantics. Prentice Hall international series in computer science, Prentice Hall, Upper Saddle River (1991)
Xie, W., Xiang, S., Zhu, H.: A utp approach for rtimo. Formal Asp Comput 30(6), 713–738 (2018)
Xie W, Zhu H, Qin S (2018) UTP semantics for bigrtimo. In: Formal methods and software engineering—20th international conference on formal engineering methods, ICFEM 2018, volume 11232 of lecture notes in computer science, pp 337–353, Gold Coast, QLD, Australia, November 12–16. Springer
Xie W, Zhu H, Xu Q (2017) Bigrtimo-a process algebra for structure-aware mobile systems. In: 22nd International conference on engineering of complex computer systems, ICECCS 2017, pp 50–59, Fukuoka, Japan, November 5–8. IEEE Computer Society
Xie W, Zhu H, Zhang M, Lu G, Fang Y (2018) Formalization and verification of mobile systems calculus using the rewriting engine maude. In: 2018 IEEE 42nd annual computer software and applications conference, COMPSAC 2018, pp 213–218, Tokyo, Japan, 23-27. IEEE Computer Society
Zhu, H., He, J., Li, J., Bowen, J.P.: Algebraic approach to linking the semantics of web services. ISSE 7(3), 209–224 (2011)
Zhu, H., Qin, S., He, J., Bowen, J.P.: PTSC: probability, time and shared-variable concurrency. ISSE 5(4), 271–284 (2009)
Zhu H, Sanders JW, He J, Qin S (2012) Denotational semantics for a probabilistic timed shared-variable language. In: Unifying theories of programming, 4th international symposium, UTP 2012, volume 7681 of lecture notes in computer science, pp 224–247, Paris, France, August 27–28
Zhu, H., Yang, F., He, J., Bowen, J.P., Sanders, J.W., Qin, S.: Linking operational semantics and algebraic semantics for a probabilistic timed shared-variable language. J Log Algebr Program 81(1), 2–25 (2012)
Acknowledgements
This work was partly supported by National Key Research and Development Program of China (Grant No. 2018YFB2101300), National Natural Science Foundation of China (Grant No. 61872145, 62032024), Shanghai Collaborative Innovation Center of Trustworthy Software for Internet of Things (Grant No. ZF1213) and the Fundamental Research Funds for the Central Universities of China.
Author information
Authors and Affiliations
Corresponding author
Additional information
Jin Song Dong
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
About this article
Cite this article
Xie, W., Zhu, H. & Xu, Q. A process calculus BigrTiMo of mobile systems and its formal semantics. Form Asp Comp 33, 207–249 (2021). https://doi.org/10.1007/s00165-021-00530-x
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00165-021-00530-x