scispace - formally typeset
Proceedings ArticleDOI

Chaff: engineering an efficient SAT solver

TLDR
The development of a new complete solver, Chaff, is described which achieves significant performance gains through careful engineering of all aspects of the search-especially a particularly efficient implementation of Boolean constraint propagation (BCP) and a novel low overhead decision strategy.
Abstract
Boolean satisfiability is probably the most studied of the combinatorial optimization/search problems. Significant effort has been devoted to trying to provide practical solutions to this problem for problem instances encountered in a range of applications in electronic design automation (EDA), as well as in artificial intelligence (AI). This study has culminated in the development of several SAT packages, both proprietary and in the public domain (e.g. GRASP, SATO) which find significant use in both research and industry. Most existing complete solvers are variants of the Davis-Putnam (DP) search algorithm. In this paper we describe the development of a new complete solver, Chaff which achieves significant performance gains through careful engineering of all aspects of the search-especially a particularly efficient implementation of Boolean constraint propagation (BCP) and a novel low overhead decision strategy. Chaff has been able to obtain one to two orders of magnitude performance improvement on difficult SAT benchmarks in comparison with other solvers (DP or otherwise), including GRASP and SATO.

read more

Content maybe subject to copyright    Report

Citations
More filters
Proceedings ArticleDOI

Dynamic transition relation simplification for bounded property checking

TL;DR: This paper presents a method that is based on a dual unfolding scheme that can find inductive invariants constructively by detecting when vertices are functionally equivalent across time frames and, in some cases, prove unbounded correctness of properties.

Hypergraph Partitioning and Clustering.

TL;DR: Since partitioning is critical in several practical applications, heuristic algorithms were developed with near-linear runtime, and move-based heuristics for k-way hypergraph partitioning appear in [46, 27, 14].
Book ChapterDOI

A Symbolic Approach to Predicate Abstraction

TL;DR: This paper proposes the use of a symbolic decision procedure and its application for predicate abstraction and provides two implementations: one based on BDDs which leverages the current advances in early quantification algorithms, and the other based on SAT-solvers.
Proceedings ArticleDOI

Enhancing Davis Putnam with extended binary clause reasoning

TL;DR: This paper experiments with a DPLL solver called 2CLS+EQ that makes more extensive use of binary clause reasoning than has been tried before and the results are very encouraging-2CLS-EQ is competitive with the very best DPLLsolvers.
Proceedings Article

Generalized nogoods in CSPs

TL;DR: It is demonstrated that nogoods in CSPs (as standardly defined) are too restrictive and can be lifted so that a CSP solver can learn more general and powerful nogOODs.
References
More filters
Book

Computers and Intractability: A Guide to the Theory of NP-Completeness

TL;DR: The second edition of a quarterly column as discussed by the authors provides a continuing update to the list of problems (NP-complete and harder) presented by M. R. Garey and myself in our book "Computers and Intractability: A Guide to the Theory of NP-Completeness,” W. H. Freeman & Co., San Francisco, 1979.
Book

Genetic Algorithms

Journal ArticleDOI

Tabu Search—Part II

TL;DR: The elements of staged search and structured move sets are characterized, which bear on the issue of finiteness, and new dynamic strategies for managing tabu lists are introduced, allowing fuller exploitation of underlying evaluation functions.
Book ChapterDOI

Optimization and Approximation in Deterministic Sequencing and Scheduling: a Survey

TL;DR: In this article, the authors survey the state of the art with respect to optimization and approximation algorithms and interpret these in terms of computational complexity theory, and indicate some problems for future research and include a selective bibliography.
Book

A machine program for theorem-proving

TL;DR: The programming of a proof procedure is discussed in connection with trial runs and possible improvements.