This work presents a memory-efficient All-SAT engine which, given a prepositional formula over sets of important and non-important variables, returns the set of all the assignments to the important variables, which can be extended to solutions (satisfying assignments) to the formula. The engine is built using elements of modern SAT solvers, including a scheme for learning conflict clauses and non-chronological backtracking. Re-discovering solutions that were already found is avoided by the search algorithm itself, rather than by adding blocking clauses. As a result, the space requirements of a solved instance do not increase when solutions are found. Finding the next solution is as efficient as finding the first one, making it possible to solve instances for which the number of solutions is larger than the size of the main memory. We show how to exploit our All-SAT engine for performing image computation and use it as a basic block in achieving full reachability which is purely SAT-based (no BDDs involved). We implemented our All-SAT solver and reachability algorithm using the state-of-the-art SAT solver Chaff [19] as a code base. The results show that our new scheme significantly outperforms All-SAT algorithms that use blocking clauses, as measured by the execution time, the memory requirement, and the number of steps performed by the reachability analysis. © Springer-Verlag 2004.
CITATION STYLE
Grumberg, O., Schuster, A., & Yadgar, A. (2004). Memory efficient all-solutions SAT solver and its application for reachability analysis. Lecture Notes in Computer Science (Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), 3312, 275–289. https://doi.org/10.1007/978-3-540-30494-4_20
Mendeley helps you to discover research relevant for your work.