Counterexample-guided abstraction refinement for symbolic model checking
Top Cited Papers
- 1 September 2003
- journal article
- Published by Association for Computing Machinery (ACM) in Journal of the ACM
- Vol. 50 (5) , 752-794
- https://doi.org/10.1145/876638.876643
Abstract
The state explosion problem remains a major hurdle in applying symbolic model checking to large hardware designs. State space abstraction, having been essential for verifying designs of industrial complexity, is typically a manual process, requiring considerable creativity and insight.In this article, we present an automatic iterative abstraction-refinement methodology that extends symbolic model checking. In our method, the initial abstract model is generated by an automatic analysis of the control structures in the program to be verified. Abstract models may admit erroneous (or "spurious") counterexamples. We devise new symbolic techniques that analyze such counterexamples and refine the abstract model correspondingly. We describe aSMV, a prototype implementation of our methodology in NuSMV. Practical experiments including a large Fujitsu IP core design with about 500 latches and 10000 lines of SMV code confirm the effectiveness of our approach.Keywords
This publication has 36 references indexed in Scilit:
- Model Checking Partial State Spaces with 3-Valued Temporal LogicsPublished by Springer Nature ,1999
- Verification of Infinite-State Systems by Combining Abstraction and Reachability AnalysisPublished by Springer Nature ,1999
- Free Bits, PCPs, and Nonapproximability---Towards Tight ResultsSIAM Journal on Computing, 1998
- Combining Symbolic Model Checking with Uninterpreted Functions for Out-of-Order Processor VerificationPublished by Defense Technical Information Center (DTIC) ,1998
- Computing abstractions of infinite state systems compositionally and automaticallyPublished by Springer Nature ,1998
- Automatic generation of invariants and intermediate assertionsTheoretical Computer Science, 1997
- An iterative approach to language containmentPublished by Springer Nature ,1993
- Property preserving simulationsPublished by Springer Nature ,1993
- On the complexity of VLSI implementations and graph representations of Boolean functions with application to integer multiplicationIEEE Transactions on Computers, 1991
- Graph-Based Algorithms for Boolean Function ManipulationIEEE Transactions on Computers, 1986