Abstract
Model checking and theorem proving are two complementary approaches to formal verification. In this paper we show how binary decision diagram (BDD) based symbolic model checking algorithms may be embedded in a theorem prover to take advantage of the comparatively secure environment without incurring an unacceptable performance penalty.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Aagaard, M.D., Jones, R.B., Seger, C.-J.H.: Combining theorem proving and trajectory evaluation in an industrial environment. In: Design Automation Conference (DAC), pp. 538–541. ACM/IEEE (1998)
Agerholm, S., Skjodt, H.: Automating a model checker for recursive modal assertions in HOL. Technical Report 92, Aarhus University (January 1990)
Bryant, R.E.: Symbolic boolean manipulation with ordered binary decision diagrams. ACM Computing Surveys 24(3), 293–318 (1992)
The BuDDy ROBDD Package (2002), http://www.itu.dk/research/buddy
Burch, J.R., Clarke, E.M., Long, D.E.: Representing circuits more efficiently in symbolic model checking. In: Proceedings of the ACM Design Automation Conference (1991)
Church, A.: A formulation of the simple theory of types. Journal of Symbolic Logic 5(2), 56–68 (1940)
Clarke, E., Gupta, A., Kukula, J., Strichman, O.: SAT based abstractionrefinement using ILP and machine learning techniques. In: Brinksma, E., Larsen, K.G. (eds.) CAV 2002. LNCS, vol. 2404, p. 265. Springer, Heidelberg (2002)
Clarke, E.M., Grumberg, O., Peled, D.: Model Checking. The MIT Press, Cambridge (1999)
Clarke, E.M., Grumberg, O., Long, D.E.: Model checking and abstraction. ACM Transactions on Programming Languages and Systems 16(5), 1512–1542 (1994)
Cleaveland, R.: Tableau-based model checking in the propostional mu-calculus. Extended Abstract, Computer Science Department, University of Sussex (1988)
Das, S., Dill, D.L.: Counter-example based predicate discovery in predicate abstraction. In: Formal Methods in Computer-Aided Design (November 2002)
Dingel, J., Filkorn, T.: Model checking for infinite state systems using data abtraction, assumption-commitment style reasoning and theorem proving. In: Proceedings of the 1995 Workshop on Computer Aided Verification. LNCS, vol. 939, pp. 54–69. Springer, Heidelberg (1995)
Emerson, E.A., Lei, C.-L.: Efficient model checking in fragments of the propositional mu-calculus. In: 1st Annual Symposium on Logic in Computer Science, pp. 267–278. IEEE Computer Society Press, Los Alamitos (1986)
Fiore, M.P., Plotkin, G.D., Turi, D.: Abstract syntax and variable binding. In: Proceedings of the 14th Logic in Computer Science Conference, pp. 193–202. IEEE Computer Society Press, Los Alamitos (1999)
Gabbay, M.J., Pitts, A.M.: A new approach to abstract syntax with variable binding. Formal Aspects of Computing, Special issue in honour of Rod Burstall (2001)
Gordon, A.D., Melham, T.: Five axioms of alpha-conversion. In: von Wright, J., Harrison, J., Grundy, J. (eds.) TPHOLs 1996. LNCS, vol. 1125. Springer, Heidelberg (1996)
Gordon, M.J.C.: Programming combinations of deduction and bdd-based symbolic calculation. LMS Journal of Computation and Mathematics (August 2002)
Gordon, M.J.C., Melham, T.F.: Introduction to HOL (A theorem-proving environment for higher order logic). Cambridge University Press, Cambridge (1993)
Graf, S., Saidi, H.: Construction of abstract state graphs with pvs. In: Grumberg, O. (ed.) CAV 1997. LNCS, vol. 1254. Springer, Heidelberg (1997)
The HOL Proof Tool (2003), http://hol.sf.net
Holzmann, G.J., Peled, D.: The state of spin. In: Alur, R., Henzinger, T.A. (eds.) CAV 1996. LNCS, vol. 1102, pp. 385–389. Springer, Heidelberg (1996)
SRI International. Prototype verification system, http://pvs.csl.sri.com
Joyce, J., Seger, C.: The HOL-Voss system: Model checking inside a generalpurpose theorem prover. In: Higher Order Logic Theorem Proving and its Applications. LNCS, vol. 780, pp. 185–198. Springer, Heidelberg (1993)
Kozen, D.: Results on the propositional mu-calculus. Theoretical Computer Science 27, 333–354 (1983)
Kurshan, R.P., Lamport, L.: Verification of a multiplier: 64 bits and beyond. In: Courcoubetis, C. (ed.) CAV 1993. LNCS, vol. 697, pp. 166–180. Springer, Heidelberg (1993)
McMillan, K.L.: Symbolic Model Checking. Kluwer Academic Publishers, Dordrecht (1993)
Owre, S., Rajan, S., Rushby, J.M., Shankar, N., Srivas, M.K.: Pvs: Combining specification, proof checking, and model checking. In: Alur, R., Henzinger, T.A. (eds.) CAV 1996. LNCS, vol. 1102, pp. 411–414. Springer, Heidelberg (1996)
Pnueli, A., Rua, S., Zuck, L.: Automatic deductive verification with invisible invariants. In: Proceedings of Tools and Algorithms for the Construction and Analysis of Systems (2001)
Rajan, S., Shankar, N., Srivas, M.K.: An integration of model checking and automated proof checking. In: Wolper, P. (ed.) CAV 1995. LNCS, vol. 939. Springer, Heidelberg (1995)
Saidi, H.: Model checking guided abstraction and analysis. In: Proceedings of the 7th International Static Analysis Symposium (2000)
Seger, C.-J.H.: Voss - a formal hardware verification system: User’s guide. Technical report, The University of British Columbia, UBC-TR-93-45 (December 1993)
Skolem, T.: Some remarks on axiomatised set theory. In: van Heijenoort, J. (ed.) From Frege to Godel: A Source Book in Mathematical Logic, 1879-1931, pp. 290–301. Harvard University Press (1967)
Sprenger, C.: Deductive Local Model Checking. PhD thesis, Computer Networking Laboratory,Swiss Federal Institute of Technology, Lausanne, Switzerland (2000)
Stanford Temporal Prover, http://www-step.stanford.edu
Stirling, C., Walker, D.J.: Local model checking in the modal mu-calculus. In: Díaz, J., Orejas, F. (eds.) CAAP 1989 and TAPSOFT 1989. LNCS, vol. 351. Springer, Heidelberg (1989)
Symbolic Model Prover, http://www.cs.cmu.edu/~modelcheck/symp.html
Tarski, A.: A lattice-theoretical fixpoint theorem and its applications. Pacific Journal of Mathematics 5, 285–309 (1955)
Uribe, T.E.: Combinations of model checking and theorem proving. In: Kirchner, H. (ed.) FroCos 2000. LNCS, vol. 1794, pp. 151–170. Springer, Heidelberg (2000)
Winskel, G.: A note on model checking in the modal ν-calculus. In: Ronchi Della Rocca, S., Ausiello, G., Dezani-Ciancaglini, M. (eds.) ICALP 1989. LNCS, vol. 372. Springer, Heidelberg (1989)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2003 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Amjad, H. (2003). Programming a Symbolic Model Checker in a Fully Expansive Theorem Prover. In: Basin, D., Wolff, B. (eds) Theorem Proving in Higher Order Logics. TPHOLs 2003. Lecture Notes in Computer Science, vol 2758. Springer, Berlin, Heidelberg. https://doi.org/10.1007/10930755_11
Download citation
DOI: https://doi.org/10.1007/10930755_11
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-40664-8
Online ISBN: 978-3-540-45130-3
eBook Packages: Springer Book Archive