Solving the incremental satisfiability problem
Journal of Logic Programming
GRASP—a new search algorithm for satisfiability
Proceedings of the 1996 IEEE/ACM international conference on Computer-aided design
On applying incremental satisfiability to delay fault testing
DATE '00 Proceedings of the conference on Design, automation and test in Europe
An Incremental Branch-And-Bound Method for the Satisfiability Problem
INFORMS Journal on Computing
Hard and easy distributions of SAT problems
AAAI'92 Proceedings of the tenth national conference on Artificial intelligence
SATIRE: a new incremental satisfiability engine
Proceedings of the 38th annual Design Automation Conference
An Incremental Algorithm to Check Satisfiability for Bounded Model Checking
Electronic Notes in Theoretical Computer Science (ENTCS)
Incremental compilation-to-SAT procedures
SAT'04 Proceedings of the 7th international conference on Theory and Applications of Satisfiability Testing
Hi-index | 0.00 |
Boolean Satisfiability (SAT) and its application to a number of electronic design automation (EDA) problems have been the topic of extensive study over the last couple of decades. In many cases, a set of related SAT problems need to be solved in order to obtain an answer to a given application-specific problem. Incremental satisfiability (ISAT) refers to solving a set of related SAT problems by augmenting a previously solved problem with additional constraints, thereby reusing previous decision sequences. In this paper, we present a new ISAT engine that supports both the addition and removal of constraints. This can be achieved by keeping track of the relationship between constraints. We identify and define a special type of ISAT that occurs frequently in the context of path sensitization called stack-based ISAT and define the structure of this as a problem tree. In this type of ISAT, constraints are allowed to be added and removed only in last-in first-out (LIFO) order. We also introduce a solution cashing mechanism to expedite the search by recording the retrieving solutions to intermediate nodes in a problem tree.