Graph-Based Algorithms for Boolean Function Manipulation
IEEE Transactions on Computers
A linear-time transformation of linear inequalities into conjunctive normal form
Information Processing Letters
The Complexity of the Optimal Variable Ordering Problems of Shared Binary Decision Diagrams
ISAAC '93 Proceedings of the 4th International Symposium on Algorithms and Computation
Generic ILP versus specialized 0-1 ILP: an update
Proceedings of the 2002 IEEE/ACM international conference on Computer-aided design
CAV '08 Proceedings of the 20th international conference on Computer Aided Verification
Propagation via lazy clause generation
Constraints
Algorithms for Weighted Boolean Optimization
SAT '09 Proceedings of the 12th International Conference on Theory and Applications of Satisfiability Testing
Why cumulative decomposition is not as bad as it sounds
CP'09 Proceedings of the 15th international conference on Principles and practice of constraint programming
BDDs for pseudo-boolean constraints: revisited
SAT'11 Proceedings of the 14th international conference on Theory and application of satisfiability testing
Reducing chaos in SAT-like search: finding solutions close to a given one
SAT'11 Proceedings of the 14th international conference on Theory and application of satisfiability testing
Pseudo-Boolean Solving by incremental translation to SAT
Proceedings of the International Conference on Formal Methods in Computer-Aided Design
SAT'13 Proceedings of the 16th international conference on Theory and Applications of Satisfiability Testing
Hi-index | 0.00 |
Two competing approaches to handling complex constraints in satisfaction and optimization problems using SAT and LCG/SMT technology are: decompose the complex constraint into a set of clauses; or (theory) propagate the complex constraint using a standalone algorithm and explain the propagation. Each approach has its benefits. The decomposition approach is prone to an explosion in size to represent the problem, while the propagation approach may require exponentially more search since it does not have access to intermediate literals for explanation. In this paper we show how we can obtain the best of both worlds by lazily decomposing a complex constraint propagator using conflicts to direct it. If intermediate literals are not helpful for conflicts then it will act like the propagation approach, but if they are helpful it will act like the decomposition approach. Experimental results show that it is never much worse than the better of the decomposition and propagation approaches, and sometimes better than both.