skip to main content
article

A game-based framework for CTL counterexamples and 3-valued abstraction-refinement

Published:01 December 2007Publication History
Skip Abstract Section

Abstract

This work exploits and extends the game-based framework of CTL model checking for counterexample and incremental abstraction-refinement. We define a game-based CTL model checking for abstract models over the 3-valued semantics, which can be used for verification as well as refutation. The model checking process of an abstract model may end with an indefinite result, in which case we suggest a new notion of refinement, which eliminates indefinite results of the model checking. This provides an iterative abstraction-refinement framework. This framework is enhanced by an incremental algorithm, where refinement is applied only where indefinite results exist and definite results from prior iterations are used within the model checking algorithm. We also define the notion of annotated counterexamples, which are sufficient and minimal counterexamples for full CTL. We present an algorithm that uses the game board of the model checking game to derive an annotated counterexample in case the examined system model refutes the checked formula.

Skip Supplemental Material Section

Supplemental Material

References

  1. Asteroth, A., Baier, C., and Assmann, U. 2001. Model checking with formula-dependent abstract models. In Proceedings of the International Conference on Computer-Aided Verification (CAV). Lecture Notes in Computer Science, vol. 2102, 155--168. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Barner, S., Geist, D., and Gringauze, A. 2002. Symbolic localization reduction with reconstruction layering and backtracking. In Proceedings of the International Conference on Computer-Aided Verification (CAV). Copenhagen, Denmark. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Bollig, B., Leucker, M., and Weber, M. 2002. Local parallel model checking for the alternation-free mu-calculus. In Proceedings of the 9th International SPIN Workshop on Model Checking of Software. Springer-Verlag Inc. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Bruns, G. and Godefroid, P. 1999. Model checking partial state spaces with 3-valued temporal logics. In Proceedings of the International Conference on Computer-Aided Verification. 274--287. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Bruns, G. and Godefroid, P. 2000. Generalized model checking: Reasoning about partial state spaces. In Proceedings of the International Conference on Concurrency Theory (CONCUR'00). Lecture Notes in Computer Science, vol. 1877, 168--182. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Chauhan, P., Clarke, E., Kukula, J., Sapra, S., Veith, H., and D.Wang. 2002. Automated abstraction refinement for model checking large state spaces using sat based conflict analysis. In Proceedings of Formal Methods in Computer-Aided Design (FMCAD). Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Chechik, M., Devereux, B., and Easterbrook, S. 2001. Implementing a multi-valued symbolic model checker. In Proceedings of the International Conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS). 404--419. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Chechik, M., Gurfinkel, A., and Devereux, B. 2002. chi-chek: A multivalued model-checker. In Proceedings of the International Conference on Computer-Aided Verification (CAV). 505--509. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Clarke, E. and Emerson, E. 1981. Design and synthesis of synchronization skeletons using branching-time temporal logic. In Proceedings of the Workshop on Logics of Programs, vol. 131, Lecture Notes in Computer Science, Springer-Verlag, Berlin, 52--71. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Clarke, E., Grumberg, O., Jha, S., Lu, Y., and Veith, H. 2000. Counterexample-guided abstraction refinement. In Proceedings of the 12th International Conference on Computer-Aided Verification (CAV). Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Clarke, E., Grumberg, O., McMillan, K., and Zhao, X. 1995. Efficient generation of counterexamples and witnesses in symbolic model checking. In Proceedings of the 32nd Design Automation Conference (DAC). IEEE Computer Society Press. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Clarke, E., Grumberg, O., and Peled, D. 1999. Model Checking. MIT Press. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Clarke, E., Gupta, A., Kukula, J., and Strichman, O. 2002. SAT based abstraction-refinement using ILP and machine leraning techniques. In Proceedings of the International Conference on Computer-Aided Verification (CAV). Copenhagen, Denmark. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Clarke, E., Jha, S., Lu, Y., and Veith, H. 2002. Tree-like counterexamples in model checking. In Proceedings of the 17th Annual IEEE Symposium on Logic In Computer Science (LICS). Copenhagen, Denmark. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Cousot, P. and Cousot, R. 1977. Abstract interpretation: A unified lattice model for static analysis of programs by construction or approximation of fixpoints. In Proceedings of the ACM Symposium on Principles of Programming Languages (POPL). Los Angeles, CA, 238--252. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Dams, D., Gerth, R., and Grumberg, O. 1997. Abstract interpretation of reactive systems. ACM Trans. Program. Lang. Syst. 19, 2 (March). Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Das, S., Dill, D., and Park, S. 1999. Experience with predicate abstraction. In Proceedings of the Conference on Computer-Aided Verification. 160--171. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Eisner, C., Fisman, D., Havlicek, J., Lustig, Y., McIsaac, A., and Campenhout, D. V. 2003. Reasoning with temporal logic on truncated paths. In Proceedings of the 15th International Conference on Computer Aided Verification (CAV). Lecture Notes in Computer Science, vol. 2725. Springer, 27--39.Google ScholarGoogle Scholar
  19. Emerson, E. and Clarke, E. 1982. Using branching time logic to synthesize synchronization skeletons. Sci. Comput. Program. 2, 241--266.Google ScholarGoogle ScholarCross RefCross Ref
  20. Godefroid, P., Huth, M., and Jagadeesan, R. 2001. Abstraction-based model checking using modal transition systems. In Proceedings of International Conference on Concurrency Theory (CONCUR'01). Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Godefroid, P. and Jagadeesan, R. 2002. Automatic abstraction using generalized model checking. In Proceedings of the Conference on Computer-Aided Verification (CAV). Lecture Notes in Computer Science, vol. 2404. Springer Verlag, 137--150. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Godefroid, P. and Jagadeesan, R. 2003. On the expressiveness of 3-valued models. In Proceedings of the 4th Conference on Verification, Model Checking and Abstract Interpretation (VMCA). Lecture Notes in Computer Science, vol. 2575. Springer-Verlag, 206--222. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Govindaraju, S. and Dill, D. 1998. Verification by approximate forward and backward reachability. In Proceedings of the International Conference on Computer-Aided Design. 366--370. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Graf, S. and Saidi, H. 1997. Construction of abstract state graphs with PVS. In Proceedings of the Conference on Computer-Aided Verification (CAV). Lecture Notes in Computer Science, vol. 1254. Springer-Verlag, 72--83. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Gurfinkel, A. and Chechik, M. 2003a. Generating counterexamples for multivalued model-checking. In Proceedings of the IEEE International Symposium on Formal Methods Europe (FME'03). 503--521.Google ScholarGoogle Scholar
  26. Gurfinkel, A. and Chechik, M. 2003b. Proof-like counter-examples. In Proceedings of the Workshop on Tools and Algorithms for the Construction and Analysis of Systems (TACAS'03).Google ScholarGoogle Scholar
  27. Henzinger, T., Jhala, R., Majumdar, R., and Sutre, G. 2002. Lazy abstraction. In Proceedings of the 29th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL). ACM Press, Portland, Oregon, 58--70. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Huth, M., Jagadeesan, R., and Schmidt, D. 2001. Modal transition systems: A foundation for three-valued program analysis. In Proceedings of the European Symposium on Programming (ESOP). Lecture Notes in Computer Science, vol. 2028, 155--169. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Kupferman, O., Vardi, M., and Wolper, P. 2000. An automata-theoretic approach to branching-time model checking. J. ACM 47, 2, 312--360. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Kurshan, R. 1994. Computer-Aided-Verification of Coordinating Processes. Princeton University Press. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Larsen, K. and Thomsen, B. 1988. A modal process logic. In Proceedings of 3rd Annual Symposium on Logic in Computer Science (LICS). IEEE Computer Society Press, 203--210.Google ScholarGoogle Scholar
  32. Larsen, K. G. 1989. Modal specifications. In Proceedings of the International Workshop on Automatic Verification Methods for Finite State Systems. Grenoble, France. J. Sifakis, Ed. Lecture Notes in Computer Science, vol. 407. Springer-Verlag. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Lee, W., Pardo, A., Jang, J., Hachtel, G., and Somenzi, F. 1996. Tearing based automatic abstraction for CTL model checking. In Proceedings of the International Conference on Computer-Aided Design (ICCAD). 76--81. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Leucker, M. 1999. Model checking games for the alternation free mu-calculus and alternating automata. In Proceedings of the 6th International Conference on Logic for Programming and Automated Reasoning (LPAR99). Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. Lichtenstein, O. and Pnueli, A. 1985. Checking that finite state concurrent programs satisfy their linear specification. In Proceedings of the 12th Annual ACM Symposium on Principles of Programming Languages. 97--107. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. Lind-Nielsen, J. and Andersen, H. 1999. Stepwise CTL model checking of state/event systems. In Computer Aided Verification. 316--327. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. Loiseaux, C., Graf, S., Sifakis, J., Bouajjani, A., and Bensalem, S. 1995. Property preserving abstractions for the verification of concurrent systems. Formal Methods in System Design 6, 11--45. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. Namjoshi, K. 2001. Certifying model checkers. In Proceedings of the 13th Conference on Computer Aided Verification (CAV). Lecture Notes in Computer Science, vol. 2102. Springer-Verlag. Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. Namjoshi, K. and Kurshan, R. 2000. Syntactic program transformations for automatic abstraction. In Proceedings of Conference on Computer-Aided Verification (CAV). Lecture Notes in Computer Science, vol. 1855. Springer, 435--449. Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. Pardo, A. and Hachtel, G. 1997. Automatic abstraction techniques for propositional mucalculus model checking. In Computer Aided Verification. 12--23. Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. Pardo, A. and Hachtel, G. 1998. Incremental CTL model checking using BDD subsetting. In Proceedings of the Design Automation Conference. 457--462. Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. Quielle, J. and Sifakis, J. 1982. Specification and verification of concurrent systems in CESAR. In Proceedings of the International Symposium on Programming. Lecture Notes in Computer Science, vol. 137. Springer Verlag, 337--351. Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. Saidi, H. 2000. Model checking guided abstraction and analysis. In Proceedings of the 7th International Static Analysis Symposium (SAS). Santa Barbara, CA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  44. Saidi, H. and Shankar, N. 1999. Abstract and model check while you prove. In Proceedings of the 11th International Conference on Computer-Aided Verification (CAV). Trento, Italy. Google ScholarGoogle ScholarDigital LibraryDigital Library
  45. Shoham, S. 2003. A game-based framework for CTL counterexamples and abstraction-refinement. M.S. thesis, Department of Computer Science, Technion---Israel Institute of Technology.Google ScholarGoogle Scholar
  46. Stirling, C. 2001. Modal and Temporal Properties of Processes. Springer-Verlag. Google ScholarGoogle ScholarDigital LibraryDigital Library
  47. Tan, L. and Cleaveland, R. 2002. Evidence-based model checking. In Proceedings of the 14th Conference on Computer Aided Verification (CAV). Lecture Notes in Computer Science, vol. 2404. Springer Verlag, 455--470. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. A game-based framework for CTL counterexamples and 3-valued abstraction-refinement

              Recommendations

              Comments

              Login options

              Check if you have access through your login credentials or your institution to get full access on this article.

              Sign in

              Full Access

              • Published in

                cover image ACM Transactions on Computational Logic
                ACM Transactions on Computational Logic  Volume 9, Issue 1
                December 2007
                250 pages
                ISSN:1529-3785
                EISSN:1557-945X
                DOI:10.1145/1297658
                Issue’s Table of Contents

                Copyright © 2007 ACM

                Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

                Publisher

                Association for Computing Machinery

                New York, NY, United States

                Publication History

                • Published: 1 December 2007
                Published in tocl Volume 9, Issue 1

                Permissions

                Request permissions about this article.

                Request Permissions

                Check for updates

                Qualifiers

                • article

              PDF Format

              View or Download as a PDF file.

              PDF

              eReader

              View online with eReader.

              eReader