Formula Caching in DPLL
Paul W. Beame, Russell Impagliazzo, Toniann Pitassi, Nathan Segerlind · ACM Transactions on Computation Theory · 2010
We consider extensions of the DPLL approach to satisfiability testing that add a version ofmemoization, in which formulas that the algorithm has previously shown to be unsatisfiable are remembered for later use. Suchformula cachingalgorithms have been suggested for satisfiability and stochastic satisfiability by several authors. We formalize these methods by developing extensions of the fruitful connection that has previously been developed between DPLL algorithms for satisfiability and tree-like resolution proofs of unsatisfiability. We analyze a number of variants of these formula caching methods and characterize their strength in terms of proof systems. These proof systems are new and simple, and have a rich structure. We compare them to several studied proof systems: tree-like resolution, regular resolution, general resolution, Res(k), and Frege systems and present both simulation and separations. One of our most interesting results is the introduction of a natural and implementable form of DPLL with caching, FCWreason. This system is surprisingly powerful: we prove that it can polynomially simulate regular resolution, and furthermore, it can produce short proofs of some formulas that require exponential-size resolution proofs.