Model Checking Abstract State Machines with Answer Set Programming

  • Calvin Kai Fan Tang
  • Eugenia Ternovska
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3835)


Answer Set Programming (ASP) has been demonstrated as an effective tool in various application areas, including formal verification. In this paper we present Bounded Model Checking (BMC) of Abstract State Machines (ASMs) based on ASP. We show how to succinctly translate an ASM and a temporal property into a logic program and solve the BMC problem for the ASM by computing an answer set for the corresponding program. Experimental results for our method using the answer set solvers SMODELS and CMODELS are also given.


Model Check Logic Program Linear Temporal Logic Bound Model Check Monitor Function 
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.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Babovich, Y., Erdem, E., Lifschitz, V.: Fages’ theorem and answer set programming. In: Proceedings of the 8th International Workshop on Non-Monotonic Reasoning (2000)Google Scholar
  2. 2.
    Biere, A., Cimatti, A., Clarke, E.M., Strichman, O., Zhu, Y.: Bounded Model Checking. Advances In Computers, vol. 58. Elsevier, Amsterdam (2003)Google Scholar
  3. 3.
    Börger, E., Stärk, R.: Abstract State Machines: A Method for High-Level System Design and Analysis. Springer, New York (2003)zbMATHGoogle Scholar
  4. 4.
    Clarke, E.M., Grumberg, O., Peled, D.: Model Checking. MIT Press, Cambridge (1999)Google Scholar
  5. 5.
    Del Castillo, G.: ASM-SL, a Specification Language based on Gurevich’s Abstract State Machines: Introduction and Language Definition. Heinz Nixdorf Institut Paderborn, Germany (1999)Google Scholar
  6. 6.
    Dong, Y., Du, X., Ramakrishna, Y.S., Ramakrishnan, C.R., Ramakrishnan, I.V., Smolka, S.A., Sokolsky, O., Stark, E.W., Warren, D.S.: Fighting livelock in the i-Protocol: A comparative study of verification tools. In: Proceedings of the 5th International Conference on Tools and Algorithms, pp. 74–88 (1999)Google Scholar
  7. 7.
    Van Emden, M.H., Kowalski, R.A.: The semantics of predicate logic as a programming language. Journal of the ACM 23(4), 733–742 (1976)zbMATHCrossRefGoogle Scholar
  8. 8.
    Gargantini, A., Riccobene, E., Rinzivillo, S.: Using Spin to generate tests from ASM specifications. In: Börger, E., Gargantini, A., Riccobene, E. (eds.) ASM 2003. LNCS, vol. 2589, pp. 263–277. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  9. 9.
    Heljanko, K., Niemelä, I.: Bounded LTL model checking with stable models. Theory and Practice of Logic Programming 3(4&5), 519–550 (2003)Google Scholar
  10. 10.
    Lierler, Y., Maratea, M.: Cmodels-2: SAT-based answer set solver enhanced to non-tight programs. In: Proceedings of the 7th Conference on Logic Programming and Non-monotonic Reasoning, pp. 346–350 (2004)Google Scholar
  11. 11.
    Lifschitz, V.: Introduction to answer set programming. In: Introductory course at the 16th European Summer School in Logic, Language and Information (2004)Google Scholar
  12. 12.
    McMillan, K.L.: Symbolic Model Checking. Kluwer Academic Publishers, Norwell (1993)zbMATHGoogle Scholar
  13. 13.
    Simons, P.: Extending and Implementing the Stable Model Semantics. PhD thesis, Helsinki University of Technology (2000)Google Scholar
  14. 14.
    Winter, K.: Model Checking Abstract State Machines. PhD thesis, Technical University of Berlin (2001)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Calvin Kai Fan Tang
    • 1
  • Eugenia Ternovska
    • 1
  1. 1.School of Computing ScienceSimon Fraser UniversityBurnabyCanada

Personalised recommendations