The size–width tradeoff for resolution #
Ben-Sasson and Wigderson showed that short resolution refutations can be
made narrow: a formula whose clauses have width at most k, over N variables, with a refutation
of s lines has a refutation of width at most k + O(√(N log s))
(Cslib.Logic.PL.CNF.exists_refutableInWidth_le_of_refutableInSize). Lower bounds on width thus
give lower bounds on size.
The proof fixes variables one at a time. Its core is a lemma about a single variable
(Cslib.Logic.PL.CNF.RefutableInWidth.of_restrict): if fixing v to b leaves a formula
refutable in width w, and fixing v to !b leaves one refutable in width w + 1, then the
formula is refutable in width w + 1, provided its clauses have width at most w + 1. Lifting the
first refutation derives the unit clause of v with the value !b, at the cost of one more
literal per line, or the empty clause outright. Resolving that unit clause with the clauses
containing v with the value b derives the clauses of the second restricted formula, and the
second refutation then replays on top.
A line of a refutation is wide when its width exceeds a threshold d. If a refutation has f
wide lines, some literal occurs in at least a d / 2N fraction of them, and fixing it to be true
satisfies those lines and leaves a refutation of the restricted formula with at most
f (1 - d / 2N) wide lines; fixing it to be false leaves at most f of them, over fewer variables.
By induction, if f (2N - d) ^ b < (2N) ^ b then the formula is refutable in width max d k + b
(Cslib.Logic.PL.CNF.RefutableInWidth.of_refutableInSize). Choosing d and b of order
√(N log s) gives the tradeoff.
Main results #
Cslib.Logic.PL.CNF.RefutableInWidth.of_restrict: the key lemma on fixing one variable.Cslib.Logic.PL.CNF.RefutableInWidth.of_refutableInSize: refutations with few wide lines can be made narrow.Cslib.Logic.PL.CNF.exists_refutableInWidth_le_of_refutableInSize: the size–width tradeoff: a formula with clauses of width at mostkoverNvariables, refutable withslines, is refutable in width at mostk + 2 √(2 N log s) + 2.Cslib.Logic.PL.CNF.exp_le_of_refutableInSize: the same as a size lower bound: if refutations need widthW ≥ k + 2, they needexp ((W - k - 2)² / 8N)lines.
References #
Fixing one variable #
Lines resolved from lines of a proof, or clauses of the formula, extend the proof.
Clauses of a formula, listed in any order, form a proof from it.
Fixing one variable Ben-Sasson and Wigderson, Lemma 3.2. If the
clauses of φ have width at most w + 1, φ with v fixed to b is refutable in width w, and
φ with v fixed to !b is refutable in width w + 1, then φ is refutable in width w + 1.
Wide lines #
Refutations with few wide lines can be made narrow [Ben-Sasson and Wigderson, Theorem 3.5]
[BSW01]. Let the clauses of φ have width at most k, and let φ have at most
N variables. If φ has a refutation of s lines, and s (2N - d) ^ b < (2N) ^ b, then φ is
refutable in width at most max d k + b.
The size–width tradeoff #
The size–width tradeoff [Ben-Sasson and Wigderson, Theorem 3.5 and Corollary 3.6]
[BSW01].
A formula whose clauses have width at most k, with at most N variables, that has a refutation
of s lines has a refutation of width at most k + 2 √(2 N log s) + 2. Equivalently, a formula
that needs width w ≥ k + 2, with N > 0, needs refutations of at least
exp ((w - k - 2)² / 8N) lines.
Width lower bounds give size lower bounds [Ben-Sasson and Wigderson, Corollary 3.6]
[BSW01]. Let the clauses of φ have width at most k, and let φ have at most
N variables. If every resolution refutation of φ has width at least W ≥ k + 2, then every
resolution refutation of φ has at least exp ((W - k - 2)² / 8N) lines.