Advertisement

Verifying safety properties of a class of infinite-state distributed algorithms

  • Bengt Jonsson
  • Lars Kempe
Session 2: Invited Talk
Part of the Lecture Notes in Computer Science book series (LNCS, volume 939)

Abstract

We consider the problem of verifying correctness properties of a class of programs with states that are sets of ground atoms. Such programs can model specifications of telephone services, in which we are particularly interested. For this class of systems, we consider the problem of checking reachability properties. A large class of safety properties can also be reduced to the problem of checking reachability in a transformed system. The emphasis of our approach is on automated verification of such properties. Although the reachability problem is in general undecidable, we present a method for analyzing reachability properties, and show that it can be successfully applied to practical examples. The main idea of our method is the following. In order to check whether a certain set of “error” states can be reached from an initial state of the system, we first compute the set of “unsafe states” (i.e., states from which it is possible to reach an error state) as a fixpoint, and finally we prove that the initial state is not “unsafe”. We present the application of our method to an example of a simple telephone service.

Keywords

Model Check Reachability Analysis Telephone Service Ground Atom Reachability Problem 
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.

References

  1. 1.
    P. A. Abdulla and B. Jonsson. Verifying programs with unreliable channels. In Proc. 8 th IEEE Int. Symp. on Logic in Computer Science, 1993. Accepted for Publication in Information and Computation.Google Scholar
  2. 2.
    P. A. Abdulla and B. Jonsson. Undecidable verification problems for programs with unreliable channels. In Abiteboul and Shamir, editors, Proc. ICALP '94, volume 820 of Lecture Notes in Computer Science, pages 316–327. Springer Verlag, 1994.Google Scholar
  3. 3.
    R. Alur, C. Courcoubetis, and D. Dill. Model-checking for real-time systems. In Proc. 5 th IEEE Int. Symp. on Logic in Computer Science, pages 414–425, Philadelphia, 1990.Google Scholar
  4. 4.
    R. Alur, T. Henzinger, and P.-H. Ho. Automatic symbolic verification of embedded systems. In Proc. 14 th IEEE Real-Time Systems Symposium, pages 2–11, 1993.Google Scholar
  5. 5.
    M. Ben-Ari. Mathematical Logic for Computer Science. Prentice Hall, 1993.Google Scholar
  6. 6.
    J. Blom, B. Jonsson, and L. Kempe. Using temporal logic for modular specification of telephone services. In Feature Interactions in Telecommunications Systems, Amsterdam, Holland, May 1994.Google Scholar
  7. 7.
    T. Bowen, F. Dworack, C. Chow, N. Griffeth, G. Herman, and Y.-J. Lin. The feature interaction problem in telecommunications system. SETS, 1989.Google Scholar
  8. 8.
    O. Burkart and B. Steffen. Model checking for context-free processes. In Cleaveland, editor, Proc. CONCUR '92, Theories of Concurrency: Unification and Extension, number 630 in Lecture Notes in Computer Science, pages 123–137. Springer Verlag, 1992.Google Scholar
  9. 9.
    S. Christensen, Y. Hirshfeld, and F. Moller. Bisimulation equivalence is decidable for basic parallel processes. In Proc. CONCUR '93, Theories of Concurrency: Unification and Extension, pages 143–157, 1993.Google Scholar
  10. 10.
    S. Christensen, H. Hüttel, and C. Stirling. Bisimulation equivalence is decidable for all context-free processes. In W. R. Cleaveland, editor, Proc. CONCUR '92, Theories of Concurrency: Unification and Extension, pages 138–147, 1992.Google Scholar
  11. 11.
    E. M. Clarke and O. Grumberg. Avoiding the state explosion problem in temporal logic model checking algorithms. In Proc. 6 th ACM Symp. on Principles of Distributed Computing, Vancouver, Canada, pages 294–303, 1987.Google Scholar
  12. 12.
    M. Fischer and R. Ladner. Propositional dynamic logic of regular programs. Journal of Computer and Systems Sciences, 18:194–211, 1979.Google Scholar
  13. 13.
    S. M. German and A. P. Sistla. Reasoning about systems with many processes. Journal of the ACM, 39(3):675–735, 1992.Google Scholar
  14. 14.
    P. Jančar. Decidability of a temporal logic problem for petri nets. Theoretical Computer Science, 74:71–93, 1990.Google Scholar
  15. 15.
    B. Jonsson and J. Parrow. Deciding bisimulation equivalences for a class of nonfinite-state programs. Information and Computation, 107(2):272–302, Dec. 1993.CrossRefGoogle Scholar
  16. 16.
    F. J. Lin and Y.-J. Lin. A building block approach to detecting and resolving feature interactions. In L. Bouma and H. Velthuijsen, editors, Feature Interactions in Telecommuniactions Systems, pages 86–119. IOS Press, 1994.Google Scholar
  17. 17.
    Z. Shtadler and O. Grumberg. Network grammars, communication behaviours and automatic verification. In Sifakis, editor, Proc. Workshop on Computer Aided Verification, volume 407 of Lecture Notes in Computer Science, pages 151–165. Springer Verlag, 1990.Google Scholar
  18. 18.
    K. Čerāns. Decidability of bisimulation equivalence for parallel timer processes. In Proc. Workshop on Computer Aided Verification, volume 663 of Lecture Notes in Computer Science, pages 302–315, 1992.Google Scholar
  19. 19.
    P. Wolper. Expressing interesting properties of programs in propositional temporal logic (extended abstract). In Proc. 13 th ACM Symp. on Principles of Programming Languages, pages 184–193, Jan. 1986.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1995

Authors and Affiliations

  • Bengt Jonsson
    • 1
  • Lars Kempe
    • 1
  1. 1.Dept. of Computer SystemsUppsala UniversityUppsalaSweden

Personalised recommendations