SMT Techniques for Fast Predicate Abstraction [chapter]

Shuvendu K. Lahiri, Robert Nieuwenhuis, Albert Oliveras
2006 Lecture Notes in Computer Science  
Predicate abstraction is a technique for automatically extracting finite-state abstractions for systems with potentially infinite state space. The fundamental operation in predicate abstraction is to compute the best approximation of a Boolean formula ϕ over a set of predicates P . In this work, we demonstrate the use for this operation of a decision procedure based on the DPLL(T) framework for SAT Modulo Theories (SMT). The new algorithm is based on a careful generation of the set of all
more » ... ying assignments over a set of predicates. It consistently outperforms previous methods by a factor of at least 20, on a diverse set of hardware and software verification benchmarks. We report detailed analysis of the results and the impact of a number of variations of the techniques. We also propose and evaluate a scheme for incremental refinement of approximations for predicate abstraction in the above framework.
doi:10.1007/11817963_39 fatcat:bk53v3r7dvd4bp3wc4hrjmhhoq