skip to main content
research-article

Modeling and verifying hierarchical real-time systems using stateful timed CSP

Published:04 March 2013Publication History
Skip Abstract Section

Abstract

Modeling and verifying complex real-time systems are challenging research problems. The de facto approach is based on Timed Automata, which are finite state automata equipped with clock variables. Timed Automata are deficient in modeling hierarchical complex systems. In this work, we propose a language called Stateful Timed CSP and an automated approach for verifying Stateful Timed CSP models. Stateful Timed CSP is based on Timed CSP and is capable of specifying hierarchical real-time systems. Through dynamic zone abstraction, finite-state zone graphs can be generated automatically from Stateful Timed CSP models, which are subject to model checking. Like Timed Automata, Stateful Timed CSP models suffer from Zeno runs, that is, system runs that take infinitely many steps within finite time. Unlike Timed Automata, model checking with non-Zenoness in Stateful Timed CSP can be achieved based on the zone graphs. We extend the PAT model checker to support system modeling and verification using Stateful Timed CSP and show its usability/scalability via verification of real-world systems.

References

  1. Aceto, L., Bouyer, P., Burgueño, A., and Larsen, K. G. 2003. The power of reachability testing for timed automata. Theor. Comput. Sci. 300, 1--3, 411--475. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Alur, R. and Dill, D. L. 1994. A theory of timed automata. Theor. Comput. Sci. 126, 183--235. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Barold, S. S., Stroopbandt, R. X., and Sinnaeve, A. F. 2004. Cardiac Pacemakers Step by Step: An Illustrated Guide. Blackwell Publishing.Google ScholarGoogle Scholar
  4. Behrmann, G., Larsen, K. G., Pearson, J., Weise, C., and Yi, W. 1999. Efficient timed reachability analysis using clock difference diagrams. In Proceedings of the 11th International Conference on Computer Aided Verification. Lecture Notes in Computer Science, vol. 1633. Springer, 341--353. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Bengtsson, J. and Yi, W. 2003. Timed automata: Semantics, algorithms and tools. In Lectures on Concurrency and Petri Nets. Lecture Notes in Computer Science, vol. 3098. Springer, 87--124.Google ScholarGoogle Scholar
  6. Berthomieu, B. and Menasche, M. 1983. An enumerative approach for analyzing time Petri nets. In Proceedings of the IFIP Congress. 41--46.Google ScholarGoogle Scholar
  7. Bowman, H. and Gómez, R. 2006. How to stop time stopping. Formal Aspects Comput. 18, 4, 459--493. Google ScholarGoogle ScholarCross RefCross Ref
  8. Bozga, M., Daws, C., Maler, O., Olivero, A., Tripakis, S., and Yovine, S. 1998. Kronos: A model-checking tool for real-time systems. In Proceedings of the 10th International Conference on Computer Aided Verification. Lecture Notes in Computer Science, vol. 1427. Springer, 546--550. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Brooke, P. 1999. A timed semantics for a hierarchical design notation. Ph.D. thesis, University of York.Google ScholarGoogle Scholar
  10. Butterfield, A., Sherif, A., and Woodcock, J. 2007. Slotted-circus. InProceedings of the 6th International Conference on Integrated Formal Methods. Lecture Notes in Computer Science, vol. 4591. Springer, 75--97. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Chaki, S., Clarke, E. M., Ouaknine, J., Sharygina, N., and Sinha, N. 2004. State/event-based software model checking. In Proceedings of the 4th International Conference on Integrated Formal Methods. Lecture Notes in Computer Science, vol. 2999. Springer, 128--147.Google ScholarGoogle Scholar
  12. Closse, E., Poize, M., Pulou, J., Sifakis, J., Venter, P., Weil, D., and Yovine, S. 2001. TAXYS: A tool for the development and verification of real-time embedded system. In Proceedings of the 13th International Conference on Computer Aided Verification. Lecture Notes in Computer Science, vol. 2102. Springer, 391--395. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. David, A., David, R., and Möller, M. O. 2001. From HUPPAAL to UPPAAL - A Translation from Hierarchical Timed Automata to Flat Timed Automata.Google ScholarGoogle Scholar
  14. Davies, J. 1993. Specification and Proof in Real-Time CSP. Cambridge University Press. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Dill, D. L. 1989. Timing assumptions and verification of finite-state concurrent systems. In Proceedings of the International Workshop onAutomatic Verification Methods for Finite State Systems. Lecture Notes in Computer Science, vol. 407. Springer, 197--212. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Dong, J. S., Hao, P., Qin, S. C., Sun, J., and Yi, W. 2004. Timed patterns: TCOZ to timed automata. In Proceedings of the 3rd International Conference on Formal Engineering Methods. Lecture Notes in Computer Science, vol. 3308. Springer, 483--498.Google ScholarGoogle Scholar
  17. Dong, J. S., Hao, P., Qin, S. C., Sun, J., and Yi, W. 2008. Timed Automata Patterns. IEEE Trans. Software Eng. 34, 6, 844--859. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Dong, J. S., Hao, P., Sun, J., and Zhang, X. 2006. A reasoning method for timed CSP based on constraint solving. In Proceedings of the 8th International Conference on Formal Engineering Methods. Lecture Notes in Computer Science, vol. 4260. Springer, 342--359. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Dong, J. S., Mahony, B. P., and Fulton, N. 1999. Modeling Aircraft Mission Computer Task Rates. In Proceedings of the World Congress on Formal Methods in the Development of Computing Systems. Lecture Notes in Computer Science, vol. 1708. Springer, 1855. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Floyd, R. W. 1962. Algorithm 97: Shortest path. Commun. ACM 5, 6, 345. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Gastin, P. and Oddoux, D. 2001. Fast LTL to Büchi automata translation. In Proceedings of the 14th International Conference on Computer Aided Verification. Lecture Notes in Computer Science, vol. 2102. Springer, 53--65. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Gómez, R. and Bowman, H. 2007. Efficient detection of Zeno runs in Timed Automata. In Proceedings of the 5th International Conference on Formal Modeling and Analysis of Timed Systems. Lecture Notes in Computer Science, vol. 4763. Springer, 195--210. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Harel, D. 1997. Some thoughts on statecharts, 13 years later. In Proceedings of the 9th International Conference on Computer Aided Verification. Lecture Notes in Computer Science, vol. 1254. Springer, 226--231. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Harel, D. and Gery, E. 1997. Executable object modeling with statecharts. IEEE Comput. 30, 7, 31--42. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Henzinger, T. A., Nicollin, X., Sifakis, J., and Yovine, S. 1994. Symbolic model checking for real-time systems. Inf. Comput. 111, 2, 193--244. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Herbreteau, F. and Srivathsan, B. 2010. Efficient on-the-fly emptiness check for timed büchi automata. In Proceedings of the 8th International Symposium on Automated Technology for Verification and Analysis. Springer. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Herbreteau, F., Srivathsan, B., and Walukiewicz, I. 2010. Efficient emptiness check for timed Büchi automata. In Proceedings of the 22nd International Conference on Computer Aided Verification. Lecture Notes in Computer Science, vol. 6174. Springer, 148--161. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Hoare, C. A. R. 1985. Communicating Sequential Processes. International Series in Computer Science. Prentice-Hall. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Holzmann, G. J. 2003. The SPIN Model Checker: Primer and Reference Manual. Addison-Wesley. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Jin, X., Ma, H., and Gu, Z. 2007. Real-time component composition using hierarchical timed automata. In Proceedings of the 7th International Conference on Quality Software. IEEE Computer Society, 90--99. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Lai, L. M. and Watson, P. 1997. A case study in timed CSP: The railroad crossing problem. In Proceedings of the International Workshop on Hybrid and Real-Time Systems. Lecture Notes in Computer Science, vol. 1201. Springer, 69--74. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Larsen, K. G., Pettersson, P., and Wang, Y. 1997. Uppaal in a nutshell. Int. J. Softw. Tools Technol. Trans. 1, 1--2, 134--152.Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Lindahl, M., Pettersson, P., and Wang, Y. 2001. Formal design and analysis of a gearbox controller. Int. J. Softw. Tools Technol. Trans. 3, 3, 353--368.Google ScholarGoogle ScholarCross RefCross Ref
  34. Liu, Y., Sun, J., and Dong, J. S. 2010. Developing model checkers using PAT. In Proceedings of the 8th International Symposium on Automated Technology for Verification and Analysis. Springer. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. Liu, Y., Sun, J., and Dong, J. S. 2011. PAT 3: An extensible architecture for building multidomain model checkers. In Proceedings of the 22nd International Symposium on Software Reliability Engineering. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. Lynch, N. A. and Vaandrager, F. W. 1996. Action transducers and timed automata. Formal Asp. Comput. 8, 5, 499--538.Google ScholarGoogle ScholarCross RefCross Ref
  37. Mahony, B. P. and Dong, J. S. 1998. Network topology and a case study in TCOZ. In Proceedings of the 11th International Conference of Z Users. Lecture Notes in Computer Science, vol. 1493. Springer, 308--327. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. Mahony, B. P. and Dong, J. S. 2000. Timed communicating object Z. IEEE Trans. Soft. Eng. 26, 2, 150--177. Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. Nicollin, X. and Sifakis, J. 1994. The algebra of timed processes, ATP: Theory and application. Inf. Comput. 114, 1, 131--178. Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. Nicollin, X., Sifakis, J., and Yovine, S. 1992. Compiling Real-Time Specifications into Extended Automata. IEEE Trans. Soft. Eng. 18, 9, 794--804. Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. Ouaknine, J. and Worrell, J. 2002. Timed CSP = closed timed safety automata. Electr. Notes Theor. Comput. Sci. 68, 2, 142--159.Google ScholarGoogle ScholarCross RefCross Ref
  42. Ramchandani, C. 1974. Analysis of asynchronous concurrent systems by timed Petri nets. Ph.D. thesis, Massachusetts Institute of Technology.Google ScholarGoogle Scholar
  43. Reed, G. M. and Roscoe, A. W. 1986. A timed model for communicating sequential processes. In Proceedings of the 13th International Colloquium on Automata, Languages and Programming. Lecture Notes in Computer Science, vol. 226. Springer, 314--323. Google ScholarGoogle ScholarDigital LibraryDigital Library
  44. Rokichi, T. G. 1993. Representing and modeling digital circuits. Ph.D. thesis. Google ScholarGoogle ScholarDigital LibraryDigital Library
  45. Roscoe, A. W. 2001. Compiling shared variable programs into CSP. In Proceedings of PROGRESS Workshop.Google ScholarGoogle Scholar
  46. Roscoe, A. W. 2005. On the Expressive Power of CSP Refinement. Formal Aspects Comput. 17, 2, 93--112. Google ScholarGoogle ScholarCross RefCross Ref
  47. Roscoe, A. W., Gardiner, P. H. B., Goldsmith, M., Hulance, J. R., Jackson, D. M., and Scattergood, J. B. 1995. Hierarchical compression for model-checking CSP or how to check 1020 dining philosophers for deadlock. In Proceedings of the 1st International Workshop on Tools and Algorithms for Construction and Analysis of Systems. Lecture Notes in Computer Science, vol. 1019. Springer, 133--152. Google ScholarGoogle ScholarDigital LibraryDigital Library
  48. Schneider, S. 1995. An operational semantics for timed CSP. Inf. Comput. 116, 2, 193--213. Google ScholarGoogle ScholarDigital LibraryDigital Library
  49. Schneider, S. 2000. Concurrent and Real-Time Systems. John Wiley and Sons.Google ScholarGoogle Scholar
  50. Sifakis, J. 1999. The compositional specification of timed systems: A tutorial. In Proceedings of the 11th International Conference on Computer Aided Verification. Lecture Notes in Computer Science, vol. 1633. Springer, 2--7. Google ScholarGoogle ScholarDigital LibraryDigital Library
  51. Sun, J., Liu, Y., Dong, J. S., Liu, Y., and Shi, L. Stateful timed CSP: Models and experiments. http://www.comp.nus.edu.sg/˜ pat/rts.Google ScholarGoogle Scholar
  52. Sun, J., Liu, Y., Dong, J. S., and Pang, J. 2009a. PAT: Towards flexible verification under fairness. In Proceedings of the 20th International Conference on Computer Aided Verification. Lecture Notes in Computer Science, vol. 5643. Springer. Google ScholarGoogle ScholarDigital LibraryDigital Library
  53. Sun, J., Liu, Y., Dong, J. S., and Zhang, X. 2009b. Verifying stateful timed CSP using implicit clocks and zone abstraction. In Proceedings of the 11th IEEE International Conference on Formal Engineering Methods. Lecture Notes in Computer Science, vol. 5885. Springer, 581--600. Google ScholarGoogle ScholarDigital LibraryDigital Library
  54. Tasiran, S., Alur, R., Kurshan, R. P., and Brayton, R. K. 1996. Verifying abstractions of timed systems. In Proceedings of the 7th International Conference on Concurrency Theory. Lecture Notes in Computer Science, vol. 1119. Springer, 546--562. Google ScholarGoogle ScholarDigital LibraryDigital Library
  55. Tripakis, S. 1999. Verifying progress in timed systems. In Proceedings of the 5th International AMAST Workshop ARTS on Formal Methods for Real-Time and Probabilistic Systems. Lecture Notes in Computer Science, vol. 1601. Springer, 299--314. Google ScholarGoogle ScholarDigital LibraryDigital Library
  56. Tripakis, S. 2009. Checking Timed Büchi Automata Emptiness on Simulation Graphs. ACM Transactions on Computational Logic 10, 3, 1--19. Google ScholarGoogle ScholarDigital LibraryDigital Library
  57. Tripakis, S., Yovine, S., and Bouajjani, A. 2005. Checking timed Büchi Automata emptiness efficiently. Formal Meth. Syst. Des. 26, 3, 267--292. Google ScholarGoogle ScholarDigital LibraryDigital Library
  58. Vardi, M. Y. and Wolper, P. 1986. An automata-theoretic approach to automatic program verification (preliminary report). In Proceedings of the Symposium on Logic in Computer Science. IEEE Computer Society, 332--344.Google ScholarGoogle Scholar
  59. Yi, W. 1991. CCS + Time = an interleaving model for real time systems. In Proceedings of the 18th International Colloquium on Automata, Languages and Programming. Lecture Notes in Computer Science, vol. 510. Springer, 217--228. Google ScholarGoogle ScholarDigital LibraryDigital Library
  60. Yi, W., Pettersson, P., and Daniels, M. 1994. Automatic verification of real-time communicating systems by constraint-solving. In Proceedings of the 7th IFIP WG6.1 International Conference on Formal Description Techniques. IFIP Conference Proceedings, vol. 6. Chapman&Hall, 243--258. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Modeling and verifying hierarchical real-time systems using stateful timed CSP

              Recommendations

              Comments

              Login options

              Check if you have access through your login credentials or your institution to get full access on this article.

              Sign in

              Full Access

              • Published in

                cover image ACM Transactions on Software Engineering and Methodology
                ACM Transactions on Software Engineering and Methodology  Volume 22, Issue 1
                February 2013
                229 pages
                ISSN:1049-331X
                EISSN:1557-7392
                DOI:10.1145/2430536
                Issue’s Table of Contents

                Copyright © 2013 ACM

                Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

                Publisher

                Association for Computing Machinery

                New York, NY, United States

                Publication History

                • Published: 4 March 2013
                • Accepted: 1 August 2011
                • Revised: 1 April 2011
                • Received: 1 October 2010
                Published in tosem Volume 22, Issue 1

                Permissions

                Request permissions about this article.

                Request Permissions

                Check for updates

                Qualifiers

                • research-article
                • Research
                • Refereed

              PDF Format

              View or Download as a PDF file.

              PDF

              eReader

              View online with eReader.

              eReader