PPSZ is better than you think
PPSZ, for long time the fastest known algorithm for k-SAT, works by going through the variables of the input formula in random order; each variable is then set randomly to 0 or 1, unless the correct value can be inferred by an efficiently implementable rule (like small-width resolution; or being implied by a small set of clauses). We show that PPSZ performs exponentially better than previously known, for all k ≥ 3. For Unique-3-SAT we bound its running time by O(1.306973^n), which is somewhat better than the algorithm of Hansen, Kaplan, Zamir, and Zwick, which runs in time O(1.306995^n). Before that, the best known upper bound for Unique-3-SAT was O(1.3070319^n). All improvements are achieved without changing the original PPSZ. The core idea is to pretend that PPSZ does not process the variables in uniformly random order, but according to a carefully designed distribution. We write "pretend" since this can be done without any actual change to the algorithm.
READ FULL TEXT