Skip to main content
Log in

Competent predicate abstraction in model checking

  • Research Papers
  • Published:
Science China Information Sciences Aims and scope Submit manuscript

Abstract

The paper presents a new approach to computing the abstract state and a maximum weight heuristic method for finding the shortest counter-example in verification of imperative programs. The strategy is incorporated in a verification system based on the counterexample-guided abstraction refinement method. The proposed method slashes both the size of the abstract state space and the number of invokes of a decision procedure. A number of benchmarks are employed to evaluate the effectiveness of the approach.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Similar content being viewed by others

References

  1. Graf S, Saidi H. Construction of abstract state graphs with PVS. In: CAV97, Haifa, Isreal, 1997, 1254: 72–83

    Google Scholar 

  2. Das S, Dill D, Park P. Experience with predicate abstraction. CAV99, 1999, 1166: 187–201

    Google Scholar 

  3. Clarke E M, Grumberg O, Peled D A. Model Checking. Cambridge, MA: The MIT Press, 1999. 122–124

    Google Scholar 

  4. Cousot P, Cousot R. Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fix points. In: POPL77, Los Angeles, California, 1977. 238–252

  5. Loiseaux C, Graf S, Sifakis J, et al. Property preserving abstractions for the verification of concurrent systems. J FMSD, 1995, 6: 11–44

    MATH  Google Scholar 

  6. Ranzato F. On the completeness of model checking. ESOP’2001, 2001, 2028: 137–154

    Google Scholar 

  7. Clarke E M, Grumberg O, Jha S, et al. Counterexample-guided abstraction refinement. CAV00, 2000, 1855: 154–169

    Google Scholar 

  8. Henzinger T A, Jhala R, Majumdar R, et al. Lazy abstraction. POPL 2002, 2002, 37: 58–70

    Article  Google Scholar 

  9. Ball T, Majumdar R, Millstein T, et al. Automatic predicate abstraction of C programs. PLDI01, 2001, 36: 203–213

    Google Scholar 

  10. Ball T, Cook B, Das S, et al. Refining approximations in software predicate abstraction. TACAS04, 2004, 2988: 388–403

    Google Scholar 

  11. Henzinger T A, Majumdar R. A classification of symbolic transition systems. STACS00, 2000, 1770: 13–34

    MathSciNet  Google Scholar 

  12. Schmidt D A. Underapproximating predicate transformers. SAS06, 2006, 4134: 127–143

    Google Scholar 

  13. Dijkstra E W. A Discipline of Programming. Upper Saddle River, NJ: Prentice Hall 1976. 32–35

    MATH  Google Scholar 

  14. Huth M, Ryan M. Logic in Computer Science: Modelling and Reasoning about Systems. Cambridge: Cambridge University Press, 2001. 189–193

    Google Scholar 

  15. Fitting M. Kleene’s logic, generalized. J LC, 1991, 1: 797–810

    MATH  MathSciNet  Google Scholar 

  16. Beyer D, Chlipala A J, Henzinger T A, et al. The blast query language for software verification. SAS04, 2004, 3148: 2–18

    MathSciNet  Google Scholar 

  17. Rosenblum D S. A practical approach to programming with assertions. J IEEE TSE, 1995, 21: 265–265

    Google Scholar 

  18. McMillan K L. Application of craig interpolants in model checking. APN05, 2005, 3440: 1–12

    Google Scholar 

  19. McMillan K L. An interpolating theorem prover. J TCS, 2005, 345: 101–121

    Article  MATH  MathSciNet  Google Scholar 

  20. Li L, He K D, Li J, et al. Jckecher: A software model checker. http://code.google.com/p/jchecker/.

  21. Blei D, Harrelson C, Jhala R, et al. Vampyre: a proof generating theorem prover. http://www.eecs.berkeley.edu/~rupak/Vampyre.

  22. Henzinger T A, Majumdar R, Beyer D, et al. BLAST: Berkeley lazy abstraction software verification tool. http://mtc.epfl.ch/software-tools/blast/

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Li Li.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Li, L., Song, X., Gu, M. et al. Competent predicate abstraction in model checking. Sci. China Inf. Sci. 54, 258–267 (2011). https://doi.org/10.1007/s11432-010-4150-2

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11432-010-4150-2

Keywords

Navigation