Asynchronous multi-process timed automata

Abstract

High-quality asynchronous programs are needed urgently to exploit multi-core hardware and cloud platforms. However, in real-time systems, formal models such as timed automata (TAs) are limited to concurrent programs where the number of processes is constant and no process is triggered on-the-fly. To better support the verification of asynchronous programs, we propose a new model called asynchronous multi-process timed automata (APTAs) based on TAs. Processes are abstracted as process timed automata (PTAs), which are almost the same as TAs except some states are for triggering new processes. A multiset is used to buffer triggered instances. The model is sufficiently expressive to describe real-time asynchronous programs with dynamic process creation. We show that the coverability problem, which is used for checking safety property of programs, is decidable by encoding it into read-arc timed Petri nets (RTPNs). We then propose an algorithm for the coverability problem and provide a proof of the termination and correctness.

This is a preview of subscription content, access via your institution.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6

References

  1. Abdulla, P.A., Cerans, K., Jonsson, B., & Tsay, Y.-K. (1996). General decidability theorems for infinite-state systems. In Proceedings of the 11th symposium on logic in computer science, (LICS’96), (pp. 313–321). IEEE Society.

  2. Abdulla, P.A., & Jonsson, B. (2001). Ensuring completeness of symbolic verification methods for infinite-state systems. Theoretical Computer Science, 256(1–2), 145–167.

    MathSciNet  Article  MATH  Google Scholar 

  3. Abdulla, P.A., & Nylén, A. (2001). Timed petri nets and BQOs. In Proceedings of the 22nd international conference on application and theory of petri nets (ICATPN’01), (pp. 53–70). Springer.

  4. Alur, R., Benedikt, M., Etessami, K., Godefroid, P., Reps, T.W., & Yannakakis, M. (2005). Analysis of recursive state machines. ACM Transactions on Programming Languages and Systems (TOPLAS), 27(4), 786–818.

    Article  Google Scholar 

  5. Alur, R., & Dill, D.L. (1994). A Theory of timed automata. Theoretical Computer Science, 126(2), 183–235.

    MathSciNet  Article  MATH  Google Scholar 

  6. Behrmann, G., David, A., & Larsen, K.G. (2004). A tutorial on UPPAAL. In Proceedings of the international school on formal methods for the design of computer, communication and software systems (SFM-RT’04), (pp. 200–236). Springer.

  7. Benerecetti, M., Minopoli, S., & Peron, A. (2010). Analysis of timed recursive state machines. In Proceedings of the 17th international symposium on temporal representation and reasoning (TIME’10), (pp. 61–68). IEEE Computer Society.

  8. Benerecetti, M., & Peron, A. (2016). Timed recursive state machines: timed recursive state expressiveness and complexity. Theoretical Computer Science, 625, 85–124.

    MathSciNet  Article  MATH  Google Scholar 

  9. Bengtsson, J., & Yi, W. (2003). Timed automata: semantics, algorithms and tools. In Proceedings of the lectures on concurrency and petri nets (LCPN’03), (pp. 87–124). Springer.

  10. Bérard, B., Cassez, F., Haddad, S., Lime, D.x, & Roux, O.H. (2005). Comparison of the expressiveness of timed automata and time petri nets. In Proceedings of the 3rd international conference on formal modeling and analysis of timed systems (FORMATS’05), (pp. 211–225). Springer.

  11. Bérard, B., Haddad, S., & Sassolas, M. (2012). Interrupt timed automata: verification and expressiveness. Formations Methods of System Design, 40(1), 41–87.

    Article  MATH  Google Scholar 

  12. Berthomieu, B., & Diaz, M. (1991). Modeling and verification of time dependent systems using time petri nets. IEEE Transactions on Software Engineering, 17(3), 259–273.

    MathSciNet  Article  Google Scholar 

  13. Berthomieu, B., & Menasche, M. (1983). An enumerative approach for analyzing time petri nets. In Proceedings of the 9th world computer congress (IFIP’83), (pp. 41–46). IEEE.

  14. Bouyer, P., Haddad, S., & Reynier, P.-A. (2008). Timed petri nets and timed automata: on the discriminating power of Zeno sequences. Information and Computation, 206(1), 73–107.

    MathSciNet  Article  MATH  Google Scholar 

  15. Bouyer, P., Reynier, P.-A., & Haddad, S. (2006). Extended timed automata and time petri nets. In Proceedings of the 6th international conference on application of concurrency to system design (ACSD’06), (pp. 91–100). IEEE Society.

  16. Byg, J., Jørgensen, K.Y., & Srba, J. (2009). An efficient translation of timed-arc petri nets to networks of timed automata. In Proceedings of the 11th international conference on formal engineering methods (ICFEM’09), (pp. 698–716). Springer.

  17. Cassez, F., & Roux, O.H. (2006). Structural translation from time petri nets to timed automata. Journal of Systems and Software, 79(10), 1456–1468.

    Article  MATH  Google Scholar 

  18. Esparza, J. (1997). Petri nets, commutative context-free grammars, and basic parallel processes. Fundamenta Informaticae, 31(1), 13–25.

    MathSciNet  MATH  Google Scholar 

  19. Fang, B., Li, G., Sun, D, & Cai, H. (2016). Schedulability analysis of timed regular tasks by under-approximation on wcet. In Proceedings of the 2nd international symposium on dependable software engineering, theories, tools, and applications (SETTA’16), (pp. 147–162). Springer.

  20. Fersman, E., Krcál, P., Pettersson, P., & Yi, W. (2007). Task automata: schedulability, decidability and undecidability. Information and Computation, 205(8), 1149–1172.

    MathSciNet  Article  MATH  Google Scholar 

  21. Fersman, E., Pettersson, P., & Yi, W. (2002). Timed automata with asynchronous processes: Schedulability and decidability. In Proceedings of the 8th international conference on tools and algorithms for the construction and analysis of systems (TACAS’02), (pp. 67–82). Springer.

  22. Guan, N., Tang, Y, Abdullah, J., Stigge, M., & Yi, W. (2015). Scalable timing analysis with refinement. In Proceedings of the 21st international conference on tools and algorithms for the construction and analysis of systems (TACAS’15), (pp. 3–18). Springer.

  23. Hopcroft, J., & Pansiot, J.-J. (1979). On the reachability problem for 5-dimensional vector addition systems. Theoretical Computer Science, 8(2), 135–159.

    MathSciNet  Article  MATH  Google Scholar 

  24. Karp, R.M., & Miller, R.E. (1969). Parallel program schemata. Journal of Computer and System Sciences, 3(2), 147–195.

    MathSciNet  Article  MATH  Google Scholar 

  25. Larsen, K.G., Pettersson, P., & Yi, W. (1997). UPPAAL in a nutshell. STTT, 1(1-2), 134–152.

    Article  MATH  Google Scholar 

  26. Li, G., Cai, X., Ogawa, M., & Yuen, S. (2013). Nested timed automata. In Proceedings of the 11th international conference on formal modeling and analysis of timed systems (FORMATS’13), (pp. 168–182). Springer.

  27. Li, G., Ogawa, M., & Yuen, S. (2015). Nested timed automata with frozen clocks. In Proceedings of the 13th international conference on formal modeling and analysis of timed systems (FORMATS’15), volume 9268 of lecture notes in computer science, (pp. 189–205). Springer.

  28. Norström, C., Wall, A., & Yi, W. (1999). Timed automata as task models for event-driven systems. In Proceedings of the 6th international workshop on real-time computing and applications symposium (RTCSA’99), (pp. 182–189). IEEE Society.

  29. Ruiz, V.V., De Frutos-Escrig, D., & Gomez, F.C. (1999). On nondecidability of reachability for timed-arc petri nets. In Proceedings of the 8th international workshop on petri nets and performance models (PNPM’99), (pp. 188–196). IEEE Society.

  30. Sen, K., & Viswanathan, M. (2006). Model checking multithreaded programs with asynchronous atomic methods. In Proceedings of the 18th international conference on computer aided verification (CAV’06), (pp. 300–314). Springer.

  31. Srba, J. (2005). Timed-arc petri nets vs. networks of timed automata. In Proceedings of the 26th international conference on applications and theory of petri nets (ICATPN’05), (pp. 385–402). Springer.

  32. Trivedi, A., & Wojtczak, D. (2010). Recursive timed automata. In Proceedings of the 8th international symposium on automated technology for verification and analysis (ATVA’10), volume 6252 of lecture notes in computer science, (pp. 306–324). Springer.

Download references

Acknowledgements

This study is supported by the National Natural Science Foundation of China (Nos. 61672340, 61472238, and 61472240).

Author information

Affiliations

Authors

Corresponding author

Correspondence to Guoqiang Li.

Rights and permissions

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Li, G., Liu, L. & Fukuda, A. Asynchronous multi-process timed automata. Software Qual J 26, 961–989 (2018). https://doi.org/10.1007/s11219-017-9380-8

Download citation

Keywords

  • Asynchronous multi-process timed automata
  • Coverability
  • Read-arc timed Petri nets
  • Timed automata