Depth-first iterative-deepening: an optimal admissible tree search
Artificial Intelligence
Empirical methods for artificial intelligence
Empirical methods for artificial intelligence
Chaff: engineering an efficient SAT solver
Proceedings of the 38th annual Design Automation Conference
Implementing the Davis–Putnam Method
Journal of Automated Reasoning
A fast pseudo-boolean constraint solver
Proceedings of the 40th annual Design Automation Conference
Saving Support-Checks Does Not Always Save Time
Artificial Intelligence Review
Efficient Data Structures for Backtrack Search SAT Solvers
Annals of Mathematics and Artificial Intelligence
MINION: A Fast, Scalable, Constraint Solver
Proceedings of the 2006 conference on ECAI 2006: 17th European Conference on Artificial Intelligence August 29 -- September 1, 2006, Riva del Garda, Italy
IJCAI'07 Proceedings of the 20th international joint conference on Artifical intelligence
IJCAI'95 Proceedings of the 14th international joint conference on Artificial intelligence - Volume 1
Refining the basic constraint propagation algorithm
IJCAI'01 Proceedings of the 17th international joint conference on Artificial intelligence - Volume 1
Maintaining arc consistency using adaptive domain ordering
IJCAI'05 Proceedings of the 19th international joint conference on Artificial intelligence
An optimal coarse-grained arc consistency algorithm
Artificial Intelligence
CP'07 Proceedings of the 13th international conference on Principles and practice of constraint programming
Implementing logical connectives in constraint programming
Artificial Intelligence
Limited discrepancy search revisited
Journal of Experimental Algorithmics (JEA)
Watched literals for constraint propagation in minion
CP'06 Proceedings of the 12th international conference on Principles and Practice of Constraint Programming
Short and long supports for constraint propagation
Journal of Artificial Intelligence Research
Hi-index | 0.00 |
I prove that an implementation technique for scanning lists in backtracking search algorithms is optimal. The result applies to a simple general framework, which I present: applications include watched literal unit propagation in SAT and a number of examples in constraint satisfaction. Techniques like watched literals are known to be highly space efficient and effective in practice. When implemented in the 'circular' approach described here, these techniques also have optimal run time per branch in big-O terms when amortized across a search tree. This also applies when multiple list elements must be found. The constant factor overhead of the worst case is only 2. Replacing the existing nonoptimal implementation of unit propagation in MiniSat speeds up propagation by 29%, though this is not enough to improve overall run time significantly.