Abstract
In the past two decades, model-checking has emerged as a promising and powerful approach to fully automatic verification of hardware systems. But model checking technology can be usefully applied to other application areas, and this article provides fundamentals that a practitioner can use to translate verification problems into model-checking questions. A taxonomy of the notions of “model,” “property,” and “model checking” are presented, and three standard model-checking approaches are described and applied to examples.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
R. Alur and D. L. Dill, A theory of timed automata. Theoretical Computer Science 126 (1994) 183–235.
H. Andersen, C. Stirling, and G. Winskel, A compositional proof system for the modal mu-calculus. In Proc. 9th LICS. IEEE Computer Society Press, 1994.
G. Birkhoff, Lattice Theory, 3d edition. Amer. Math. Soc., 1967.
R. Bryant, Graph-based algorithms for boolean function manipulation. IEEE Transactions on Computation, 8(35), 1986.
R. Bull and K. Segerberg, Basic Modal Logic. In Handbook of Philosophical Logic, Vol. 2, D. Gabbay and F. Guenther, eds., Kluwer, Dortdrecht, 1994, pp. 1–88.
J. Burch, E. Clarke, K. McMillan, D. Dill, and L. Hwang, Symbolic model checking: 1020 states and beyond. In Proc. 5th LICS. IEEE Computer Society Press, 1990.
O. Burkart, D. Caucal, F. Moller, and B. Steffen, Verification on infinite structures. In Handbook of Process algebra, Jan Bergstra, Alban Ponse, and Scott Smolka, eds., Elsevier, to appear.
O. Burkart and J. Esparza, More infinite results. Electronic Notes in Theoretical Computer Science 6 (1997). URL: http://www.elsevier.nl/locate/entcs/volume6.html.
K. Čerāns, J.C. Godesken, and K.G. Larsen, Timed modal specification–theory and tools. In Computer Aided Verification (CAV’93), C. Courcoubetis, ed., Lecture Notes in Computer Science 697, Springer, 1993, pp. 253–267.
E. Clarke, D. Long, and K. McMillan, Compositional model checking. In Proc. 4th LICS. IEEE Computer Society Press, 1989.
E. M. 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 (1996) 244–263.
E. M. Clarke, O. Grumberg, and D. Long, Verification tools for finite-state concurrent systems. In A Decade of Concurrency: Reflections and Perspectives, J.W. de Bakker, W.-P. de Roever, and G. Rozenberg, eds., Lecture Notes in Computer Science 803, Springer, 1993, pp. 124–175.
R. Cleaveland, M. Klein, and B. Steffen, Faster model checking for the modal mu-calculus. In Computer Aided Verification (CAV’92), G. v. Bochmann and D. K. Probst, eds., Lecture Notes in Computer Science 663, 1992, pp. 410–422.
R. Cleaveland, Pragmatics of Model Checking. Software Tools for Technology Transfer 2(3), 1999.
P. Cousot and R. Cousot, Abstract interpretation: A unified lattice model for static analysis of programs by construction or approximation of fixpoints. In Proceedings 4th POPL, Los Angeles, California, January 1977.
D. van Dalen, Logic and Structure, 3d edition. Springer, Berlin, 1994.
E. A. Emerson, Temporal and modal logic. In Handbook of Theoretical Computer Science, Vol B. J. van Leeuwen, ed., Elsevier Science Publishers B.V., 1990, pp. 995–1072.
R. Enders, T. Filkorn, and D. Taubner, Generating BDDs for symbolic model checking in CCS. In Computer Aided Verification (CAV’91), K. G. Larsen and A. Skou, eds., Lecture Notes in Computer Science 575, Springer, pp. 203–213.
P. Godefroid and P. Wolper, Using partial orders for the efficient verification of deadlock freedom and safety properties. n Computer Aided Verification (CAV’91), K. G. Larsen and A. Skou, eds., Lecture Notes in Computer Science 575, Springer, pp. 332–342.
P. Godefroid and D. Pirottin, Refining dependencies improves partial-order verification methods. In Computer Aided Verification (CAV’93), C. Courcoubetis, ed., Lecture Notes in Computer Science 697, Springer pp. 438–449.
G. Grätzer, General Lattice Theory. Birkhäuser Verlag, 1978.
S. Graf and C. Loiseaux, Program Verification using Compositional Abstraction. In Proceedings FASE/TAPSOFT, 1993.
S. Graf, B. Steffen, and G. Lüttgen, Compositional minimization of finite state systems using interface specifications. Formal Aspects of Computing, 8:607–616, 1996.
M. C. B. Hennessy and R. Milner, Algebraic laws for nondeterminism and concurrency. Journal of the ACM 32 (1985) 137–161.
G. Hughes and M. Cresswell. An Introduction to Modal Logic. Methuen, London, 1972.
S. Kleene, Introduction to Metamathematics. D. van Nostrand, Princeton, 1952.
D. Kozen, Results on the propositional mu-calculus, Theoretical Computer Science, 27 (1983) 333–354.
Kripke, S. A completeness theorem in modal logic. J. Symbolic Logic 24 (1959) 1–14.
Kripke, S. Semantical considerations on modal logic. Acta Philosophica Fennica 16 (1953) 83–94.
K. G. Larsen, B. Steffen, and C. Weise. A constraint oriented proof methodology based on modal transition systems. In Tools and Algorithms for the Construction and Analysis of Systems (TACAS’95), E. Brinksma, W. R. Cleaveland, K. G. Larsen, T. Margaria, and B. Steffen, eds, Lecture Notes of Computer Science 1019, Springer, pp. 17–40.
J.-L. Lassez, V. L. Nguyen, and E. A. Sonenberg, Fixed point theorems and semantics: A folk tale. Information Processing Letters 14 (1982) 112–116.
D. E. Long, A. Browne, E. M. Clarke, S. Jha, and W. R. Marrero, An improved algorithm for the evaluation of fixpoint expressions. In Computer Aided Verification (CAV’94), David L. Dill, ed., Lecture Notes in Computer Science 818, Springer pp. 338–349.
Robin Milner, Communication and Concurrency. Prentice Hall, 1989.
J. P. Queille and J. Sifakis, Specification and verification of concurrent systems in CESAR. In Proc. 5th Internat. Symp. on Programming, M. Dezani-Ciancaglini and U. Montanari, eds., Lecture Notes in Computer Science 137, Springer, 1982.
D. Schmidt and B. Steffen, Program analysis as model checking of abstract interpretations. In Static Analysis (SAS’98), Giorgio Levi, ed., Lecture Notes in Computer Science 1503, Springer, 1998, 351–380.
C. Stirling, Modal and temporal logics. In Handbook of Logic in Computer Science S. Abramsky, Dov M. Gabbay, and T. S. E. Maibaum, eds., Clarendon Press, 1992, pp 477–563.
C. Stirling and D. Walker, Local model checking in the modal mu-calculus, Proc. TAPSOFT’ 89, J. Diaz and F. Orejas, eds., Lecture Notes in Computer Science 351, Springer, 1989, pp. 369–383.
Special section on timed and hybrid systems, Software Tools for Technology Transfer 1 (1997) 64–153.
Special section on model checking, Software Tools for Technology Transfer 2/3 (1999).
A. Tarski, A lattice-theoretical fixpoint theorem and its application. Pacific Journal of Mathematics 5 (1955) 285–309.
W. Thomas, Automata on infinite objects. In Handbook of Theoretical Computer Science, Vol B. J. van Leeuwen, ed., Elsevier Science Publishers B.V., 1990, pp. 133–191.
M. Y. Vardi and P. Wolper, Reasoning about infinite computations. Information and Computation 115 (1994) 1–37.
A. Valmari, On-the-fly verification with stubborn sets. In Computer Aided Verification (CAV’93), C. Courcoubetis, ed., Lecture Notes in Computer Science 697, Springer, pp. 397–408.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1999 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Müller-Olm, M., Schmidt, D., Steffen, B. (1999). Model-Checking. In: Cortesi, A., Filé, G. (eds) Static Analysis. SAS 1999. Lecture Notes in Computer Science, vol 1694. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-48294-6_22
Download citation
DOI: https://doi.org/10.1007/3-540-48294-6_22
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-66459-8
Online ISBN: 978-3-540-48294-9
eBook Packages: Springer Book Archive