Deterministic search for CNF satisfying assignments in almost polynomial time (1801.03588v1)
Abstract: We consider the fundamental derandomization problem of deterministically finding a satisfying assignment to a CNF formula that has many satisfying assignments. We give a deterministic algorithm which, given an $n$-variable $\mathrm{poly}(n)$-clause CNF formula $F$ that has at least $\varepsilon 2n$ satisfying assignments, runs in time [ n{\tilde{O}(\log\log n)2} ] for $\varepsilon \ge 1/\mathrm{polylog}(n)$ and outputs a satisfying assignment of $F$. Prior to our work the fastest known algorithm for this problem was simply to enumerate over all seeds of a pseudorandom generator for CNFs; using the best known PRGs for CNFs [DETT10], this takes time $n{\tilde{\Omega}(\log n)}$ even for constant $\varepsilon$. Our approach is based on a new general framework relating deterministic search and deterministic approximate counting, which we believe may find further applications.