Dinur's gap theorem for 3-SAT #
The mathematical conclusion of the development. Every 3CNF formula is turned into a constraint graph over a fixed constant-size alphabet, of size polynomial in the formula, which is satisfiable when the formula is and whose unsatisfiability value is at least a universal constant when it is not.
Three ingredients meet: the reduction of ThreeSATCSP carried across alphabets
by GapReduction, the explicit expander family algFamily of FamilyFin (a
numbered tower over a constant-size base picked once by
Classical.choose exists_finBase), and the amplifier of Dinur, whose
dichotomy supplies the gap after logarithmically many rounds.
This module states the gap theorem as a reduction in the mathematical sense:
gapGraph is a noncomputable definition and no running time is claimed here.
The polynomial-time implementation is elsewhere: exists_pcp_of_mem_NP in
Complexitylib.Classes.PCP.Internal.AlgPCP runs the same amplifier over the
same tower (Dinur.amplifier (algF.toFamily algHd), with algF = algBase) and
packages it as a PCPVerifier with an FP query function and a P verdict.
Main definitions #
Complexity.dinurAmp— Dinur's amplifier, with the expander suppliedComplexity.gapGraph— the gap graph of a formula
Main results #
Complexity.satisfiable_gapGraph— completenessComplexity.gap_le_unsatVal_gapGraph— soundness, with a universal gapComplexity.numEdges_gapGraph_le— the size bound
Dinur's amplifier, with the expander family supplied.
Instances For
How many rounds of amplification a formula needs: enough that the doubling of the unsatisfiability value reaches the threshold, which is the bit length of the edge count.
Equations
- Complexity.gapRounds φ = Nat.log 2 (3 * List.length φ) + 1
Instances For
The gap graph of a formula: logarithmically many rounds of amplification applied to its constraint graph.
Equations
Instances For
Completeness.
The gap is at most one, as any unsatisfiability value is.
The size bound: a constant factor per round, and logarithmically many rounds, so polynomially many edges.