Chaff: engineering an efficient SAT solver

  title={Chaff: engineering an efficient SAT solver},
  author={Matthew W. Moskewicz and Conor F. Madigan and Ying Zhao and Lintao Zhang and Sharad Malik},
  journal={Proceedings of the 38th Design Automation Conference (IEEE Cat. No.01CH37232)},
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… 

Figures and Tables from this paper

Tuning Parallel SAT Solvers

New implementation details and benchmarking results for the authors' parallel portfolio solver \topo are presented, and the impact of diversifying the solver by using different restart- , branching- and clause database management heuristics are discussed.

The External Interface for Extending WASP

The interface for extending the CDCL-based ASP solver wasp is presented and it is shown that it can be successfully used to extend wasp for solving effectively hard instances of both real-world and synthetic problems.

Exploiting Satisfiability Solvers for Efficient Logic Synthesis

A rapid algorithm for LEXSAT, which generates satisfying assignments in lexicographic order and can bring canonicity, which guarantees the generation of unique results when using SAT solvers in EDA applications, and a new SAT-based algorithm that progressively generates irredundant sums of products (SOPs), which still play a crucial role in many logic synthesis tools.

Understanding VSIDS Branching Heuristics in Conflict-Driven Clause-Learning SAT Solvers

The VSIDS branching heuristic, which combines additive bumping and multiplicative decay branching heuristics, has remained an enigma despite its widespread use and repeated attempts to understand it.

Améliorer SAT dans le cadre incrémental

De nombreux problèmes dont la classe de complexité est supérieure à NP peuvent être traités de manière pratique en se reposant directement ou indirectement sur l’utilisation de solveurs SAT.

Efficient satisfiability solver

An attempt is made to establish a chronology of events leading up to and including the events of 9/11 and the aftermath of that event.

Efficient Path Delay Test Generation with Boolean Satisfiability

Strengthening the heart of an SMT-solver : Design and implementation of efficient decision procedures. (Renforcement du noyau d'un démonstrateur SMT : Conception et implantation de procédures de décisions efficaces)

This thesis aims at improving the efficiency and the expressiveness of the Alt-Ergo SMT solver by designing a new decision procedure for the theory of linear integer arithmetic and extending Alt- Ergo with existing decision procedures to integrate additional interesting theories.

SAS+ Planning as Satisfiability

This work introduces a novel SAT encoding scheme (SASE) based on the SAS+ formalism that exploits the structural information in SAS+, resulting in an encoding that is both more compact and efficient for planning.

Learning from conflicts in propositional satisfiability

This paper addresses the learning paradigm used to explain failures or conflicts encountered during search, and focuses on clause learning in Boolean satisfiability (SAT), which is one of the key components of modern SAT solvers.



benchmarks available at

  • benchmarks available at

The Impact of Branching Heuristics in Propositional Satisfiability Algorithms

Empirical evidence is provided that for practical instances of SAT, the search pruning techniques included in the most competitive SAT algorithms may be of more fundamental significance than branching heuristics.

Three Scheduling Algorithms Applied to the Earth Observing Systems Domain

A fast and simple priority dispatch method is described and shown to produce acceptable schedules most of the time and a look ahead algorithm is introduced that outperforms the dispatcher by about 12% with only a small increase in run time.


The possible presence of clouds is the main origin of uncertainty when managing earth optical observation satellites. Forgetting it can lead to poor results in terms of really achieved photographs.

An algorithm for solving the job-shop problem

In this paper, we propose a branch and bound method for solving the job-shop problem. It is based on one-machine scheduling problems and is made more efficient by several propositions which limit the

A Fast Taboo Search Algorithm for the Job Shop Problem

A fast and easily implementable approximation algorithm for the problem of finding a minimum makespan in a job shop is presented. The algorithm is based on a taboo search technique with a specific