English

Predicate Abstraction with Indexed Predicates

Logic in Computer Science 2007-05-23 v1

Abstract

Predicate abstraction provides a powerful tool for verifying properties of infinite-state systems using a combination of a decision procedure for a subset of first-order logic and symbolic methods originally developed for finite-state model checking. We consider models containing first-order state variables, where the system state includes mutable functions and predicates. Such a model can describe systems containing arbitrarily large memories, buffers, and arrays of identical processes. We describe a form of predicate abstraction that constructs a formula over a set of universally quantified variables to describe invariant properties of the first-order state variables. We provide a formal justification of the soundness of our approach and describe how it has been used to verify several hardware and software designs, including a directory-based cache coherence protocol.

Keywords

Cite

@article{arxiv.cs/0407006,
  title  = {Predicate Abstraction with Indexed Predicates},
  author = {Shuvendu K. Lahiri and Randal E. Bryant},
  journal= {arXiv preprint arXiv:cs/0407006},
  year   = {2007}
}

Comments

27 pages, 4 figures, 1 table, short version appeared in International Conference on Verification, Model Checking and Abstract Interpretation (VMCAI'04), LNCS 2937, pages = 267--281