Skip to main content
Log in

A UTP approach for rTiMo

  • Original Article
  • Published:
Formal Aspects of Computing

Abstract

rTiMo is a real-time version of  TiMo (Timed Mobility), which is a process algebra for mobile distributed systems. In this paper, we investigate the denotational semantics for rTiMo. A trace variable tr is introduced to record the communications among processes as well as the location where the communication action takes place. Based on the formalized model, we study a set of algebraic laws, especially the laws about the migration and communication with real-time constraints. In order to facilitate the algebraic reasoning about the parallel expansion laws, we enrich rTiMo with a form of guarded choice. This can enable us to convert every parallel program to the guarded choice form. Moreover, we also provide a set of proof rules, which can be used to verify the correctness and real-time properties of programs.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Aman B, Ciobanu G (2013) Real-time migration properties of rtimo verified in Uppaal. In: 11th international conference, SEFM 2013 software engineering and formal methods, Madrid, Spain, September 25–27, 2013, proceedings, pp. 31–45

  2. Aman B, Ciobanu G(2015) Timed mobility and timed communication for critical systems. In: Formal methods for industrial critical systems-20th international workshop, FMICS 2015, Oslo, Norway, June 22–23, 2015 proceedings, pp. 146–161

    Chapter  Google Scholar 

  3. Aman B, Ciobanu G(2015) Verification of bounded real-time distributed systems with mobility. In: Proceedings of the 9th workshop on verification and evaluation of computer and communication systems, VECoS 2015, Bucharest, Romania, September 10-11, 2015, pp 109–120

  4. Apt, K.R., de Boer, F.S., Olderog, E.R.: Verification of sequential and concurrent programs. Springer, Texts in computer science (2009)

    Book  Google Scholar 

  5. Arthan, R., Martin, U., Oliva, P.: A Hoare Logic for linear systems. Formal Asp Comput 25(3), 345–363 (2013)

    Article  MathSciNet  Google Scholar 

  6. Barthe G, Gaboardi M, Arias EJG, Hsu J, Kunz C, Strub PY (2014) Proving differential privacy in Hoare logic. In:IEEE 27th computer security foundations symposium, CSF 2014, Vienna, Austria, 19–22 July, 2014, pp. 411–424

  7. Braghin, C., Sharygina, N., Barone-Adesi, K.: A model checking-based approach for security policy verification of mobile systems. Formal Asp Comput 23(5), 627–648 (2011)

    Article  Google Scholar 

  8. Cardelli, L., Gordon, A.D.: Mobile ambients. Theor Comput Sci 240(1), 177–213 (2000)

    Article  MathSciNet  Google Scholar 

  9. Ciobanu, G., Juravle, C.: Flexible software architecture and language for mobile agents. Concurrency and computation: practice and experience 24(6), 559–571 (2012)

    Article  Google Scholar 

  10. Ciobanu G, Koutny M (2011) Timed migration and interaction with access permissions. In:FM 2011: Formal methods-17th international symposium on formal methods, Limerick, Ireland, June 20-24, 2011, proceedings, pp 293–307

    Google Scholar 

  11. Ciobanu, G., Koutny, M.: Timed mobility in process algebra and Petri nets. J Log Algebr Program 80(7), 377–391 (2011)

    Article  MathSciNet  Google Scholar 

  12. Ciobanu, G., Koutny, M.: Pertimo: A model of spatial migration with safe access permissions. Comput J 58(5), 1041–1060 (2015)

    Article  Google Scholar 

  13. Ciobanu, G., Koutny, M., Steggles, L.J.: Strategy based semantics for mobility with time and access permissions. Formal Asp Comput 27(3), 525–549 (2015)

    Article  MathSciNet  Google Scholar 

  14. Christensen S, Petrucci L (1995) Modular state space analysis of coloured Petri nets. In:16th international conference application and theory of petri nets 1995, Turin, Italy, June 26–30, 1995, proceedings, pp 201–217

    Google Scholar 

  15. Christensen, S., Petrucci, L.: Modular analysis of Petri nets. Comput J 43(3), 224–242 (2000)

    Article  Google Scholar 

  16. Cavalcanti, A., Wellings, A.J., Woodcock, J.: The safety-critical java memory model formalised. Formal Asp Comput 25(1), 37–57 (2013)

    Article  MathSciNet  Google Scholar 

  17. de Boer, Frank S.: A Hoare logic for dynamic networks of asynchronously communicating deterministic processes. Theor Comput Sci 274(1–2), 3–41 (2002)

    Article  MathSciNet  Google Scholar 

  18. 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)

    Article  Google Scholar 

  19. Desharnais, J., Gupta, V., Jagadeesan, R., Panangaden, P.: Metrics for labelled markov processes. Theor Comput Sci 318(3), 323–354 (2004)

    Article  MathSciNet  Google Scholar 

  20. Ferreira, J.F., Gherghina, C., He, G., Qin, S., Chin, W.-N.: Automated verification of the FreeRTOS scheduler in Hip/Sleek. STTT 16(4), 381–397 (2014)

    Article  Google Scholar 

  21. Golze, U.: VLSI chip design with the hardware description language VERILOG-an introduction based on a large RISC processor design. Springer, Berlin (1996)

    Book  Google Scholar 

  22. Gordon Michael JC (1995) The semantic challenge of Verilog HDL. In: Proceedings, 10th annual IEEE symposium on logic in computer science, San Diego, California, USA, June 26-29, 1995, pp. 136–145

  23. He J (1994) Provably correct systems: modelling of communication languages and design of optimized compilers. The McGraw-Hill international series in software engineering

  24. He J (2016) A new roadmap for linking theories of programming. In: Unifying theories of programming-6th international symposium, UTP 2016, Reykjavik, Iceland, June 4–5, 2016, Revised Selected Papers, pp 26–43

  25. Hennessy, M.: Algebraic theory of processes. MIT Press series in the foundations of computing, MIT Press (1988)

    MATH  Google Scholar 

  26. He, J., Hoare, C.A.R.: From algebra to operational semantics. Inf Process Lett 45(2), 75–80 (1993)

    Article  MathSciNet  Google Scholar 

  27. Hoare CAR, He J (1998) Unifying Theories of Programming. Prentice Hall International Series in Computer Science

  28. Hoare, C.A.R., Hayes, I.J., He, J., Morgan, C., Roscoe, A.W., Sanders, J.W., Sørensen, I.H., Spivey, J.M., Sufrin, B.: Laws of programming. Commun ACM 30(8), 672–686 (1987)

    Article  MathSciNet  Google Scholar 

  29. Hoare, C.A.R., He, J., Sampaio, A.: Normal form approach to compiler design. Acta Inf 30(8), 701–739 (1993)

    Article  MathSciNet  Google Scholar 

  30. Huang, Y., He, J., Zhu, H., Zhao, Y., Shi, J., Qin, S.: Semantic theories of programs with nested interrupts. Front Comput Sci. 9(3), 331–345 (2015)

    Article  Google Scholar 

  31. Hoare, C.A.R.: An axiomatic basis for computer programming. Commun ACM 12(10), 576–580 (1969)

    Article  Google Scholar 

  32. Hoare CAR (1985) Communicating sequential processes. Prentice-Hall,

  33. Hoare T (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, pp 139–149

    Chapter  Google Scholar 

  34. Hooman J (1991) Compositional verification of real-time systems using extended hoare triples. In: Real-time: theory in practice, REX workshop, Mook, The Netherlands, June 3–7, 1991, proceedings, pp 252–290

    Chapter  Google Scholar 

  35. Hooman, J.: Extending Hoare Logic to real-time. Formal Asp Comput 6(6A), 801–826 (1994)

    Article  Google Scholar 

  36. He, J., Seidel, K., McIver, A.: Probabilistic models for the guarded command language. Sci Comput Program 28(2–3), 171–192 (1997)

    MathSciNet  MATH  Google Scholar 

  37. Hoare, T., van Staden, S.: In praise of algebra. Formal Asp Comput 24(4–6), 423–431 (2012)

    Article  MathSciNet  Google Scholar 

  38. 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)

    Article  MathSciNet  Google Scholar 

  39. He, J., Zhao, X.: Reasoning about actions with loops via Hoare logic. Front Comput Sci 10(5), 870–888 (2016)

    Article  Google Scholar 

  40. 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

    Chapter  Google Scholar 

  41. Lakos C (2009) Modelling mobile IP with mobile Petri nets.Transactions on petri nets and other models of concurrency III. Lecture notes in computer science 5800, Springer 2009, ISBN 978-3-642-04854-8, 3:127–158

  42. Luo, C., Qin, S., Qiu, Z.: Verifying BPEL-like programs with Hoare Logic. Front Comput Sci China 2(4), 344–356 (2008)

    Article  Google Scholar 

  43. 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

    Chapter  Google Scholar 

  44. Milner R (1980) A calculus of communicating systems  (Lecture notes in computer science), vol 92. Springer

  45. Milner, R.: Elements of interaction-turing award lecture. Commun ACM 36(1), 78–89 (1993)

    Article  MathSciNet  Google Scholar 

  46. Milner, R.: Communicating and mobile systems-the Pi-calculus. Cambridge University Press, Cambridge (1999)

    MATH  Google Scholar 

  47. McIver, A., Morgan, C.: Abstraction and refinement in probabilistic systems. SIGMETRICS Perform Eval Rev 32(4), 41–47 (2005)

    Article  Google Scholar 

  48. Ma, L., Tsai, J.J.P.: Formal modeling and analysis of a secure mobile-agent system. IEEE Trans Syst Man and Cyber Part A 38(1), 180–196 (2008)

    Article  Google Scholar 

  49. O'Hearn, P.W.: Resources, concurrency, and local reasoning. Theor Comput Sci 375(1–3), 271–307 (2007)

    Article  MathSciNet  Google Scholar 

  50. Paulson LC (1994) Isabelle-A Generic theorem prover (with a contribution by T. Nipkow), volume 828 of Lecture notes in computer science. Springer

  51. Plotkin, G.D.: A structural approach to operational semantics. J Log Algebr Program 60–61, 17–139 (2004)

    MathSciNet  MATH  Google Scholar 

  52. Vaughan RP (1990) Action logic and pure induction. In: Logics in AI, European workshop, JELIA '90, Amsterdam, The Netherlands, September 10–14, 1990, proceedings, pp 97–120

  53. Qin, S., He, G., Luo, C., Chin, W.-N., Yang, H.: Automatically refining partial specifications for heap-manipulating programs. Sci Comput Program 82, 56–76 (2014)

    Article  Google Scholar 

  54. Shi L (2009) Comparative studies, formal semantics and PVS encoding of CSP\(\#\). PhD thesis, East China Normal University,China

  55. 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)

    Chapter  Google Scholar 

  56. Stoy JE (1979) Foundations of denotational semantics. In:Abstract software specifications, 1979 Copenhagen Winter School, January 22 –February 2, 1979, proceedings, pp 43–99

    Google Scholar 

  57. Shi L, Zhao Y, Liu Y, Sun J, Dong JS, Qin S (2018) A UTP semantics for communicating processes with shared variables and its formal encoding in PVS.Formal Asp Comput

  58. Tarski, A.: A lattice-theoretical fixpoint theorem and its applications. Pac J Math 5(2), 285–309 (1955)

    Article  MathSciNet  Google Scholar 

  59. Valk R (1998) Petri nets as token objects: An introduction to elementary object nets. In:19th international conference application and theory of petri nets 1998 ICATPN '98, Lisbon, Portugal, June 22-26, 1998, proceedings, pp 1–25

    Google Scholar 

  60. von Oheimb, D.: Hoare logic for java in Isabelle/HOL. Concurr Comput Pract Exp. 13(13), 1173–1214 (2001)

    Article  Google Scholar 

  61. Watt, D.A.: Programming language syntax and semantics. Prentice Hall, Prentice Hall International series in computer science (1991)

    MATH  Google Scholar 

  62. Xie W, Xiang S (2016) UTP semantics for rTiMo. In Unifying theories of programming-6th international symposium, UTP 2016, Reykjavik, Iceland, June 4–5, 2016, Revised Selected Papers, pp. 176–196

  63. Zhu, H., He, J., Bowen, J.P.: From algebraic semantics to denotational semantics for Verilog. ISSE 4(4), 341–360 (2008)

    MATH  Google Scholar 

  64. Zhu, H., He, J., Li, J., Bowen, J.P.: Algebraic approach to linking the semantics of web services. ISSE 7(3), 209–224 (2011)

    Google Scholar 

  65. Zhu, H., He, J., Qin, S., Brooke, P.J.: Denotational semantics and its algebraic derivation for an event-driven system-level language. Formal Asp Comput 27(1), 133–166 (2015)

    Article  MathSciNet  Google Scholar 

  66. Zhu H (2005)Linking the semantics of a multithreaded discrete event simulation language. PhD thesis, London South Bank University UK

  67. 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)

    Article  MathSciNet  Google Scholar 

  68. Zou L, Zhan N, Wang S, Fränzle M, Qin S (2013) Verifying Simulink diagrams via a hybrid hoare logic prover. In: Proceedings of the international conference on embedded software, EMSOFT 2013, Montreal, QC, Canada, September 29–Oct. 4, 2013, pp 9:1–9:10

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Huibiao Zhu.

Additional information

Jin Song Dong

This paper extends the work published at UTP 2016 [XX16].

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Xie, W., Xiang, S. & Zhu, H. A UTP approach for rTiMo. Form Asp Comp 30, 713–738 (2018). https://doi.org/10.1007/s00165-018-0467-1

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00165-018-0467-1

Keywords

Navigation