Bounded Model Checking with Description Logic Reasoning

  • Shoham Ben-David
  • Richard Trefler
  • Grant Weddell
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4548)


Model checking is a technique for verifying that a finite-state concurrent system is correct with respect to its specification. In bounded model checking (BMC), the system is unfolded until a given depth, and translated into a CNF formula. A SAT solver is then applied to the CNF formula, to find a satisfying assignment. Such a satisfying assignment, if found, demonstrates an error in the model of the concurrent system.

Description Logic (DL) is a family of knowledge representation formalisms, for which reasoning is based on tableaux techniques. We show how Description Logic can serve as a natural setting for representing and solving a BMC problem. We formulate a bounded model checking problem as a consistency problem in the DL dialect \(\cal{ALCI}\). Our formulation results in a compact representation of the model, one that is linear in the size of the model description, and does not involve any unfolding of the model. Experimental results, using the DL reasoner FaCT + + , significantly improve on a previous approach that used DL reasoning for model checking.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Baader, F., Calvanese, D., McGuinness, D., Nardi, D., Patel-Schneider, P.: The Description Logic Handbook. Cambridge University Press, Cambridge (2003)zbMATHGoogle Scholar
  2. 2.
    Beer, I., Ben-David, S., Landver, A.: On-the-fly model checking of RCTL formulas. In: Vardi, M.Y. (ed.) CAV 1998. LNCS, vol. 1427, Springer, Heidelberg (1998)CrossRefGoogle Scholar
  3. 3.
    Ben-David, S., Trefler, R., Weddell, G.: Model checking the basic modalities of CTL with description logic. In: Proc. International Workshop on Description Logics, pp. 223–230 (2006)Google Scholar
  4. 4.
    Biere, A., Cimatti, A., Clarke, E., Zhu, Y.: Symbolic model checking without BDDs. In: Cleaveland, W.R. (ed.) ETAPS 1999 and TACAS 1999. LNCS, vol. 1579, Springer, Heidelberg (1999)CrossRefGoogle Scholar
  5. 5.
    Bryant, R.: Graph-based algorithms for boolean function manipulation. In IEEE Transactions on Computers, vol. c-35(8) (1986)Google Scholar
  6. 6.
    Cimatti, A., Clarke, E., Giunchiglia, F., Roveri, M.: NuSMV: a new symbolic model verifier. In: Computer Aided Verification, pp. 495–499, (July 1999)Google Scholar
  7. 7.
    Clarke, E., Emerson, E.: Design and synthesis of synchronization skeletons using branching time temporal logic. In: Kozen, D. (ed.) Logics of Programs. LNCS, vol. 131, Springer, Heidelberg (1982)CrossRefGoogle Scholar
  8. 8.
    Clarke, E.M., Grumberg, O., Peled, D.: Model Checking. The MIT Press, Cambridge (2000)Google Scholar
  9. 9.
    Dershowitz, N., Hanna, Z., Katz, J.: Bounded model checking with QBF. In: Eighth International Conference on Theory and Applications of Satisfiability Testing, pp. 408–414, (June 2005)Google Scholar
  10. 10.
    Dovier, A., Quintarelli, E.: Model checking based data retrieval. In: Ghelli, G., Grahne, G. (eds.) DBPL 2001. LNCS, vol. 2397, Springer, Heidelberg (2002)Google Scholar
  11. 11.
    Gottlob, G., Grädel, E., Veith, H.: Linear Time Datalog for Branching Time Logic (chapter 19). In: Minker, J. (ed.) Logic-Based Artificial Intelligence, Kluwer, Boston (2000)Google Scholar
  12. 12.
    Gottlob, G., Grädel, E., Veith, H.: Datalog LITE: a deductive query language with linear time model checking. Computational Logic 3(1), 42–79 (2002)CrossRefGoogle Scholar
  13. 13.
    Horrocks, I.: The FaCT system. In: de Swart, H. (ed.) TABLEAUX 1998. LNCS (LNAI), vol. 1397, pp. 307–312. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  14. 14.
    Horrocks, I., Tobies, S.: Reasoning with axioms: Theory and practice. In: Proc. of the 7th Int. Conf. on Principles of Knowledge Representation and Reasoning (KR 2000), pp. 285–296 (2000)Google Scholar
  15. 15.
    Jussila, T., Biere, A.: Compressing bmc encodings with QBF. In: Fourth International Workshop on Bounded Model Checking, pp. 27–39, (August 2006)Google Scholar
  16. 16.
    McMillan, K.: Symbolic Model Checking. Kluwer Academic Publishers, Norwell (1993)zbMATHGoogle Scholar
  17. 17.
    Moskewicz, M., Madigan, C., Zhao, Y., Zhang, L., Malik, S.: Chaff: Engineering an efficient sat solver. In: 38th Design Automation Conference, pp. 530–535 (June 2001)Google Scholar
  18. 18.
  19. 19.
    Pnueli, A.: The temporal logic of programs. In: 18th IEEE Symposium on Foundation of Computer Science, pp. 46–57 (1977)Google Scholar
  20. 20.
    Quielle, J., Sifakis, J.: Specification and verification of concurrent systems in CESAR. In: 5th International Symposium on Programming (1982)Google Scholar
  21. 21.
    Sahasrabudhe, M.: SQL-based CTL model checking for telephony feature interactions. In: A Master Thesis, Univesity of Waterloo, Ontario, Canada (2004)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • Shoham Ben-David
    • 1
  • Richard Trefler
    • 1
  • Grant Weddell
    • 1
  1. 1.David R. Cheriton School of Computer Science, University of Waterloo 

Personalised recommendations