Automatic Abstraction without Counterexamples

  • Kenneth L. McMillan
  • Nina Amla
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2619)

Abstract

A method of automatic abstraction is presented that uses proofs of unsatisfiability derived from SAT-based bounded model checking as a guide to choosing an abstraction for unbounded model checking. Unlike earlier methods, this approach is not based on analysis of abstract counterexamples. The performance of this approach on benchmarks derived from microprocessor verification indicates that SAT solvers are quite effective in eliminating logic that is not relevant to a given property. Moreover, benchmark results suggest that when bounded model checking successfully terminates, and the problem is unsatisfiable, the number of state variables in the proof of unsatisfiability tends to be small. In almost all cases tested, when bounded model checking succeeded, unbounded model checking of the resulting abstraction also succeeded.

References

  1. 1.
    F. Balarin and A. Sangiovanni-Vincentelli. An iterative approach to language containment. In Computer Aided Verification (CAV’93), pages 29–40, 1993.Google Scholar
  2. 2.
    J. Baumgratner, A. Kuehlmann, and J. Abraham. Property checking via structural analysis. In Computer-Aided Verification (CAV 2002), pages 151–165, 2002.Google Scholar
  3. 3.
    A. Biere, A. Cimatti, E. Clarke, and Y. Zhu. Symbolic model checking without BDDs. In TACAS’99, volume 1579 of LNCS, pages 193–207, 1999.Google Scholar
  4. 4.
    P. Bjesse, T. Leonard, and A. Mokkedem. Finding bugs in an alpha microprocessor using satisfiability solvers. In Computer Aided Verification (CAV 2001), 2001.Google Scholar
  5. 5.
    E. M. Clarke, O. Grumberg, S. Jha, Y. Lu, and H. Veith. Counterexample-guided abstraction refinement. In Computer Aided Verification, pages 154–169, 2000.Google Scholar
  6. 6.
    E. M. Clarke, A. Gupta, J. Kukula, and O. Strichman. SAT based abstraction-refinement using ILP and machine learning techniques. In Computer-Aided Verification (CAV 2002), pages 265–279, 2002.Google Scholar
  7. 7.
    F. Copty, L. Fix, F. R, E. Giunchiglia, G. Kamhi, A. Tacchella, and M. Y. Vardi. Benefits of bounded model checking in an industrial setting. In Computer Aided Verification (CAV 2001), pages 436–453, 2001.Google Scholar
  8. 8.
    S. German. Personal communication.Google Scholar
  9. 9.
    S. G. Govindaraju and D. L. Dill. Counterexample-Guided choice of projections in approximate symbolic model checking. In IEEE International Conference on Computer Aided Design (ICCAD 2000), pages 115–119, 2000.Google Scholar
  10. 10.
    J.R. Burch, E.M. Clarke, K.L. McMillan, D.L. Dill, and L.J. Hwang. Symbolic Model Checking: 1020 States and Beyond. In Proceedings of the Fifth Annual IEEE Symposium on Logic in Computer Science, pages 1–33, Washington, D.C., 1990. IEEE Computer Society Press.Google Scholar
  11. 11.
    O. Kupferman and M. Y. Vardi. Model checking of safety properties. Formal Methods in System Design, 19(3):291–314, 2001.MATHCrossRefMathSciNetGoogle Scholar
  12. 12.
    R. P. Kurshan. Computer-Aided-Verification of Coordinating Processes. Princeton University Press, 1994.Google Scholar
  13. 13.
    K. L. McMillan and N. Amla. Automatic abstraction without counterexamples. http://www-cad.eecs.berkeley.edu/~kenmcmil/papers, 2002.
  14. 14.
    M. W. Moskewicz, C. F. Madigan, Y. Z., L. Z., and S. Malik. Cha.: Engineering an efficient SAT solver. In Design Automation Conference, pages 530–535, 2001.Google Scholar
  15. 15.
    A. P. O. Lichtenstein. Checking that finite state concurrent programs satisfy their linear specification. In POPL’ 85, pages 97–107, 1985.Google Scholar
  16. 16.
    J. K. S. S. H. V. Pankaj Chauhan, Ed Clarke and D. Wang. Automated abstraction refinement for model checking large state spaces using sat based conflict analysis. In Formal Methods in Computer Aided Design (FMCAD’02), November 2002.Google Scholar
  17. 17.
    D. Plaisted and S. Greenbaum. A structure preserving clause form translation. Journal of Symbolic Computation, 2:293–304, 1986.MATHMathSciNetCrossRefGoogle Scholar
  18. 18.
    H. Saïdi and S. Graf. Construction of abstract state graphs with PVS. In O. Grumberg, editor, Computer-Aided Verification, CAV’ 97, volume 1254, pages 72–83, Haifa, Israel, 1997. Springer-Verlag.Google Scholar
  19. 19.
    J. P. M. Silva and K. A. Sakallah. GRASP-a new search algorithm for satisfiability. In Proceedings of the International Conference on Computer-Aided Design, November 1996, 1996.Google Scholar
  20. 20.
    R. M. T. A. Henzinger, R. Jhala and G. Sutre. Lazy abstraction. In Principles of Programming Languages (POPL 2002), 2002.Google Scholar
  21. 21.
    M. Vardi and P. Wolper. An automata-theoretic approach to automatic programverification. In Logic in Computer Science (LICS’ 86), pages 322–331, 1986.Google Scholar
  22. 22.
    D. Wang, P.-H. Ho, J. Long, J. H. Kukula, Y. Zhu, H.-K. T. Ma, and R. Damiano. Formal property verification by abstraction refinement with formal, simulation and hybrid engines. In Design Automation Conference, pages 35–40, 2001.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2003

Authors and Affiliations

  • Kenneth L. McMillan
    • 1
  • Nina Amla
    • 1
  1. 1.Cadence Design SystemsUSA

Personalised recommendations