Procedure-level verification of real-time concurrent systems

  • Farn Wang
  • Chia-Tien Lo
Session 11: Model Checking (2)
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1051)


We want to develop verification techniques for real-time concurrent system specifications with high-level behavior structures. Nowadays, there is a big gap in between the classical verification theories and the engineering practice in real-world projects. This work identifies two common engineering guidelines respected in the development of realworld software projects, structured programming and local autonomy in concurrent systems, and experiments with special verification algorithm based on those engineering wisdoms. The algorithm we have adopted respects the integrity of program structures, treats each procedure as an entity instead of as a group of statements, allows local state space search to exploit the local autonomy in concurrent systems without calculating the Cartesian products of local state spaces, and derives from each procedure declaration characteristic information which can be utilized in the verification process anywhere the procedure is invoked. We have endeavored to implement our idea, test it against an abstract version of a real-world protocol in a mobile communication environment, and report the data.


Local State Time Expression Concurrent System Reachability Analysis Symbolic Model Check 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    R. Alur, C. Courcoubetis, D.L. Dill. Model Checking for Real-Time Systems, IEEE LICS, 1990.Google Scholar
  2. 2.
    R. Alur, T.A. Henzinger, P.-H. Ho. Automatic Symbolic Verification of Embedded Systems, in Proceedings of 1993 IEEE Real-Time System Symposium.Google Scholar
  3. 3.
    A.V. Aho, R. Sethi, J.D. Ullman, Compilers — Principles, Techniques, and Tools, pp. 393–396, Addison-Wesley Publishing Company, 1986.Google Scholar
  4. 4.
    J.R. Burch, E.M. Clarke, K.L. McMillan, D.L. Dill, L.J. Hwang. Symbolic Model Checking: 1020 States and Beyond, IEEE LICS, 1990.Google Scholar
  5. 5.
    B. Berthomieu, M. Diaz. Modeling and Verification of Time Dependent Systems Using Time Petri Nets. IEEE TSE, Vol. 17, No.3, March 1991.Google Scholar
  6. 6.
    Boyer, Moore. A Computational Logic Handbook, Academic Press, 1988.Google Scholar
  7. 7.
    D. Bosscher, I. Polak, F. Vaandrager. Verification of an Audio Control Protocol. Proceedings of Symposium on Formal Techniques in Real-Time and Fault-Tolerant Systems, 1994; in LNCS, Springer-Verlag.Google Scholar
  8. 8.
    R.E. Bryant. Graph-based Algorithms for Boolean Function Manipulation, IEEE Trans. Comput., C-35(8), 1986.Google Scholar
  9. 9.
    E. Clarke and E.A. Emerson. Design and Synthesis of Synchronization Skeletons using Branching-Time Temporal Logic, Proceedings of Workshop on Logic of Programs, Lecture Notes in Computer Science 131, Springer-Verlag, 1981.Google Scholar
  10. 10.
    E. Clarke, E.A. Emerson, and A.P. Sistla. Automatic Verification of Finite-State Concurrent Systems Using Temporal Logic Specifications, ACM Transactions on Programming Languages and Systems 8(2), 1986, pp. 244–263.Google Scholar
  11. 11.
    H.M. Deitel. An Introduction to Operating Systems, pp.110–115, Addison-Wesley, 1984.Google Scholar
  12. 12.
    E.A. Emerson, C.-L. Lei. Modalities for Model Checking: Branching Time Logic Strikes Back, Science of Computer Programming 8 (1987), pp.275–306, Elsevier Science Publishers B.V. (North-Holland).Google Scholar
  13. 13.
    M.J.C. Gordon. HOL — A Proof Generating System for Higher-Order Logic. Cambridge University, Computer Laboratory, 1987.Google Scholar
  14. 14.
    T.A. Henzinger, X. Nicollin, J. Sifakis, S. Yovine. Symbolic Model Checking for Real-Time Systems, IEEE LICS 1992.Google Scholar
  15. 15.
    C.A.R. Hoare. Communicating Sequential Processes, Prentice Hall, 1985.Google Scholar
  16. 16.
    E. Horowitz. Fundamentals of Programming Languages, Computer Science Press, 1984.Google Scholar
  17. 17.
    J.E. Hopcroft, J.D. Ullman. Introduction to Automata Theory, Languages, and Computation, Addison-Wesley, 1979.Google Scholar
  18. 18.
    C.B. Jones. Systematic Software Development using VDM, 2nd ed., Prentice Hall, 1990.Google Scholar
  19. 19.
    F. Jahanian and A.K. Mok. Safety analysis of timing properties in real-time systems, IEEE Transactions on Software Engineering, Vol.SE-12, No9, 1986, pp. 890–904.Google Scholar
  20. 20.
    F. Jahanian, D.A. Stuart. A Method for Verifying Properties of Modechart Specifications. IEEE RTSS 1988.Google Scholar
  21. 21.
    Y. Kesten, A. Pnueli, J. Sifakis, S. Yovine. Integration Graphs: a Class of Decidable Hybrid Systems. In Proc. Workshop on Theory of Hybrid Systems, LNCS 736, Springer-Verlag, 1993.Google Scholar
  22. 22.
    H.R. Lewis. Unsolvable Classes of Quantificational Formulus, 1979, Addison-Wesley Pub. Co.Google Scholar
  23. 23.
    K.L. McMillan, “Symbolic Model Checking”, Kluwer Academic Publishers, Boston, MA, 1993.Google Scholar
  24. 24.
    P. Merlin, D.J. Faber. Recoverability of Communication Protocols. IEEE Trans. Commun, Vol. COM-24, no. 9, Sept. 1976.Google Scholar
  25. 25.
    R. Milner. Communication and Concurrency. Prentice Hall, 1989.Google Scholar
  26. 26.
    O. Maler, Z. Manna, A. Pnueli. From Timed to Hybrid Systems. In Real Time: Theory in Practice, LNCS 600, pp. 447–484, Springer-Verlag, 1991.Google Scholar
  27. 27.
    Z. Manna, A. Pnueli. Verifying Hybrid Systems. In Proc. Workshop on Theory of Hybrid Systems, LNCS 736, Springer-Verlag, 1993.Google Scholar
  28. 28.
    R.S. Pressman. Software Engineering, A Practitioner's Approach. McGraw-Hill, 1982.Google Scholar
  29. 29.
    K. Slind. HOL90 Users Manual. Technical report, 1992.Google Scholar
  30. 30.
    J.M. Spivey. The Z Notation, A Reference Manual, second edition. Prentice Hall, 1992.Google Scholar
  31. 31.
    F. Wang, A.K. Mok, E.A. Emerson. Real-Time Distributed System Specification and Verification in APTL. ACM TOSEM, Vol. 2, No. 4, October 1993, pp. 346–378.Google Scholar
  32. 32.
    F. Wang. Timing Behavior Analysis for Real-Time Systems. IEEE LICS 1995.Google Scholar
  33. 33.
    F. Wang. Reachability Analysis at Procedure Level through Timing Coincidence, in Proceedings of the 6th CONCUR, Philadelphia, USA, August 1995, LNCS 962.Google Scholar
  34. 34.
    W. Wulf, M. Shaw, P. Hilfinger, L. Flon. Fundamentals of Computer Science, Addison-Wesley, Reading, Mass., 1981.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1996

Authors and Affiliations

  • Farn Wang
    • 1
  • Chia-Tien Lo
    • 1
  1. 1.Institute of Information ScienceAcademia SinicaTaipeiTaiwan 115, Republic of China

Personalised recommendations