Replacement-Design Specialization of Sparse Parity Model Counting for CNF Formulas #
This module connects the compiled CNF parity-test equation systems and greedy zero-counting
reduction of Sections 6.1–6.3 (Complexity.Logics.Propositional.CNF.SparseParityCounter) directly
with the Section 4 algebraic replacement design specialization of Sections 5.3–5.5 and Appendix B.2
(Complexity.Foundations.BooleanAnalysis.SparseReplacementDesign) of
OpenAI, The Exponential Time Hypothesis is False (printed pp. 37–43, 48–50):
Branch-restricted CNF parity systems and neutral singleton scopes (§5.5 & §6.2–6.3): Given
φ : CNF V, parity-check rowsrows : List (Fin φ.length → Bool), a heavy-variable subsetS : Finset V, a free-variable equivalencee : ↥(univ \ S) ≃ Fin n', and a branch assignmentb : V → Bool:CNF.branchParityRowSystem φ rows S e b : Fin rows.length → Finset (Finset (Fin n'))restricts each compiled parity equationφ.parityRowSystem rows jtoSunderb(cancelling duplicate monomials modulo2) and relabels the remaining free variables alonge.CNF.branchParityRowScope φ rows S e bis its variable-scope family onFin n', andCNF.branchParityRowNeutralScope φ rows S e b : Fin rows.length ⊕ Fin n' → Finset (Fin n')augments those scopes with one neutral singleton scope{v}per free variablev : Fin n'viawithNeutralScope.- When every clause of
φhas width at mostkand every row inrowshas Hamming weight at mostW, each branch equation has degree at mostk, at mostW * 2 ^ kmonomials, and scope size at mostk * (W * 2 ^ k). On the canonical heavy-variable setS = heavyVars univ univ (fun j => equationScope (φ.parityRowSystem rows j)) b₀, every free variablev : Fin n'belongs to at mostb₀ + 1scopes ofbranchParityRowNeutralScope, total branch incidence satisfiesn' ≤ M'_b ≤ (b₀ + 1) * n', and Lemma 4.7 supplies a concreteReplacementDesign(CNF.exists_replacementDesign_branchParityRowNeutralScope).
Per-branch factor locality, polynomial degree, and coordinate
coeffNorm1bounds (§5.3–5.4 & Appendix B.2): For anyD : ReplacementDesign (φ.branchParityRowNeutralScope rows S e b) Q r A₀ R τ, instantiatingSparseReplacementDesignwithemb = Sum.inlautomatically discharges the monomial-degree (#M ≤ k), monomial-count (#(P j) ≤ W * 2 ^ k), and scope-containment (equationScope (P j) ⊆ scope (Sum.inl j)) premises from∀ c ∈ φ, c.length ≤ kand∀ r ∈ rows, weight r ≤ W, yielding:- node-point factor locality
(
CNF.eval_univariateMonomialSumPoly_branchParityRowSystem_nodePoint_eq), - the equation (5.5) degree bound
(k * (R - 1)) * (rows.length + 2 * (ℓ - 1))(CNF.natDegree_univariateClearedParityCoord_branchParityRowSystem_le,CNF.natDegree_univariateClearedParityTruncatedSum_branchParityRowSystem_le), and - the Appendix B.2 coordinate
ℓ₁-norm bound withS_mon = W * 2 ^ k(CNF.coeffNorm1_univariateClearedParityCoord_branchParityRowSystem_le).
- node-point factor locality
(
Exact branch-summed
ReplacementDesignrecovery ofcommonZeroCount,numPassing, andφ.modelCountOn Finset.univ(§5.4–5.5 & §6.2–6.3): Eliminating the abstract replacement-map hypothesesd_den,θ, andhθofSparseParityCounter, any per-branch family of replacement designsD brecoverscommonZeroCount univ (φ.parityRowSystem rows) = numPassing φ.violations rowsvia branch-summed evaluation atT = 0(CNF.commonZeroCount_parityRowSystem_eq_sum_branch_emod_ediv_design,CNF.numPassing_eq_sum_branch_emod_ediv_design), and recoversφ.modelCountOn Finset.univon the nose after3 * Fintype.card Vgreedy rounds (CNF.modelCountOn_eq_sum_branch_emod_ediv_design_greedy,CNF.exists_initialTests_modelCountOn_eq_sum_branch_emod_ediv_design_greedy), withmax D₀ Psimplified unconditionally toD₀ = initialRowWeightBound B φ.length(CNF.max_initialRowWeightBound_greedyRowListLength).
Main definitions #
Cslib.Logic.PL.CNF.branchParityRowSystem: branch-restricted and relabeled𝔽₂polynomial systemfun j => relabelRestrictedMonomials S e b (φ.parityRowSystem rows j).Cslib.Logic.PL.CNF.branchParityRowScope: variable-scope family ofbranchParityRowSystem.Cslib.Logic.PL.CNF.branchParityRowNeutralScope: neutral-singleton augmented scope familywithNeutralScope (φ.branchParityRowScope rows S e b).
Main results #
Cslib.Logic.PL.CNF.card_mem_branchParityRowSystem_le,Cslib.Logic.PL.CNF.card_branchParityRowSystem_le,Cslib.Logic.PL.CNF.card_branchParityRowScope_le,Cslib.Logic.PL.CNF.card_branchParityRowNeutralScope_le: per-branch monomial degree, sparsity, and scope-width bounds from clause width≤ kand row weight≤ W.Cslib.Logic.PL.CNF.varIncidence_branchParityRowNeutralScope_heavyVars_le,Cslib.Logic.PL.CNF.totalIncidence_branchParityRowNeutralScope_heavyVars_le,Cslib.Logic.PL.CNF.exists_replacementDesign_branchParityRowNeutralScope: post-branching free-variable incidence bounds and Lemma 4.7ReplacementDesignexistence on each branch.Cslib.Logic.PL.CNF.eval_univariateMonomialSumPoly_branchParityRowSystem_nodePoint_eq,Cslib.Logic.PL.CNF.natDegree_univariateClearedParityCoord_branchParityRowSystem_le,Cslib.Logic.PL.CNF.natDegree_univariateClearedParityTruncatedSum_branchParityRowSystem_le,Cslib.Logic.PL.CNF.coeffNorm1_univariateClearedParityCoord_branchParityRowSystem_le: per-branch locality, degree, andcoeffNorm1bounds for aReplacementDesign.Cslib.Logic.PL.CNF.commonZeroCount_parityRowSystem_eq_sum_branch_emod_ediv_design,Cslib.Logic.PL.CNF.numPassing_eq_sum_branch_emod_ediv_design,Cslib.Logic.PL.CNF.modelCountOn_eq_sum_branch_emod_ediv_design_greedy,Cslib.Logic.PL.CNF.max_initialRowWeightBound_greedyRowListLength,Cslib.Logic.PL.CNF.exists_initialTests_modelCountOn_eq_sum_branch_emod_ediv_design_greedy: end-to-endReplacementDesignrecovery ofcommonZeroCount,numPassing, andφ.modelCountOn Finset.univ.
References #
- OpenAI, The Exponential Time Hypothesis is False (Sections 5.3–5.5 and 6.1–6.3, printed pp. 37–43, 48–50)
1. Branch-restricted CNF parity systems and neutral singleton scopes #
The Fin rows.length-indexed sparse 𝔽₂ polynomial system on Fin n' obtained from
φ.parityRowSystem rows by fixing S : Finset V to b : V → Bool (cancelling duplicate
monomials modulo 2) and relabeling univ \ S ≃ Fin n' along e
([OAI26c], §5.5 & §6.3, pp. 38–39, 43).
Instances For
The variable scope equationScope (φ.branchParityRowSystem rows S e b j) : Finset (Fin n') of
restricted parity equation j on branch b.
Instances For
The neutral-singleton augmented scope family on Fin rows.length ⊕ Fin n' associated to
φ.branchParityRowScope rows S e b ([OAI26c], §5.3 & §5.5, pp. 37–38).
Instances For
Every monomial in φ.branchParityRowSystem rows S e b j has degree at most k whenever every
clause of φ has width at most k.
Every branch equation φ.branchParityRowSystem rows S e b j contains at most W * 2 ^ k
monomials whenever every clause of φ has width at most k and every row in rows has Hamming
weight at most W.
Every branch equation scope φ.branchParityRowScope rows S e b j has size at most
k * (W * 2 ^ k) whenever every clause of φ has width at most k and every row in rows has
Hamming weight at most W.
Every factor in φ.branchParityRowNeutralScope rows S e b has scope width at most
max 1 (k * (W * 2 ^ k)) whenever every clause of φ has width at most k and every row in
rows has Hamming weight at most W.
Total factor–variable incidence of φ.branchParityRowNeutralScope rows S e b equals
totalIncidence univ (φ.branchParityRowScope rows S e b) + n'.
Neutral singleton factors ensure n' ≤ M'_b on every branch b ([OAI26c], §5.5,
p. 38).
When S = heavyVars univ univ (fun j => equationScope (φ.parityRowSystem rows j)) b₀, every
free variable v : Fin n' occurs in at most b₀ restricted equation scopes of
φ.branchParityRowScope rows S e b.
When S = heavyVars univ univ (fun j => equationScope (φ.parityRowSystem rows j)) b₀, every
free variable v : Fin n' occurs in at most b₀ + 1 scopes of
φ.branchParityRowNeutralScope rows S e b.
When S = heavyVars univ univ (fun j => equationScope (φ.parityRowSystem rows j)) b₀, total
branch incidence of φ.branchParityRowNeutralScope rows S e b is at most (b₀ + 1) * n'.
§5.5 & §6.3 (Lemma 4.7 ReplacementDesign existence on each heavy-variable branch of a
compiled CNF parity system): if every clause of φ has width at most k and every row in rows
has Hamming weight at most W, then on every branch b : V → Bool of
S = heavyVars univ univ (fun j => equationScope (φ.parityRowSystem rows j)) b₀ with free-variable
relabeling e : ↥(univ \ S) ≃ Fin n', the neutral-augmented scope family
φ.branchParityRowNeutralScope rows S e b admits a Section 4
ReplacementDesign _ Q r A₀ R τ whenever the numerical balance and binomial-tail hypotheses of
Lemma 4.7 hold for b_occ = b₀ + 1 and w_width = max 1 (k * (W * 2 ^ k)).
2. Per-branch locality, degree, and coeffNorm1 bounds under a ReplacementDesign #
§5.3 factor-level locality on a branch-restricted CNF parity equation: for any
D : ReplacementDesign (φ.branchParityRowNeutralScope rows S e b) Q r A₀ R τ, the substituted
branch equation factor (univariateMonomialSumPoly ℚ (designReplacementMap D Sum.inl x j) (φ.branchParityRowSystem rows S e b j)).eval (nodePoint t) depends only on x restricted to
varGroup D.varAssign t (D.factorAssign (Sum.inl j) t) and the measurement vector
(varMeasurementMatrix Q r A₀ R ℚ D.place (scopeVarOf (φ.branchParityRowNeutralScope rows S e b))).mulVec (fun u => bitVal ℚ (x u)).
Equation (5.5) degree bound on a branch-restricted CNF parity system: if every clause of φ
has width at most k, then for any replacement design D on branch b (with factor embedding
emb : Fin rows.length → F) and s < ℓ, the cleared parity coordinate s on
φ.branchParityRowSystem rows S e b has
natDegree ≤ (k * (R - 1)) * (rows.length + 2 * (ℓ - 1)) (strengthening the manuscript's coarser
k * R * (rows.length + 2 * (ℓ - 1)) display in (5.5) via natDegree ≤ R - 1 from Lemma 4.3 and
§4.5 (4.14)).
Equation (5.5) degree bound for univariateClearedParityTruncatedSum on a branch-restricted
CNF parity system: under ∀ c ∈ φ, c.length ≤ k, the truncated sum has
natDegree ≤ (k * (R - 1)) * (rows.length + 2 * (ℓ - 1)) (strengthening the manuscript's coarser
k * R * (rows.length + 2 * (ℓ - 1)) display in (5.5) via natDegree ≤ R - 1 from Lemma 4.3 and
§4.5 (4.14)).
Appendix B.2 coordinate coeffNorm1 bound on a branch-restricted CNF parity system: if
every clause of φ has width at most k and every row in rows has Hamming weight at most W,
then for any replacement design D on branch b, every cleared parity coordinate s on
φ.branchParityRowSystem rows S e b satisfies the Appendix B.2 ℓ₁-norm bound with
S_mon = W * 2 ^ k.
3. End-to-end ReplacementDesign recovery of commonZeroCount, numPassing, and #F #
§5.4–5.5 single-branch ReplacementDesign recovery for φ.branchParityRowSystem: when
∀ c ∈ φ, c.length ≤ k and n' < ℓ, evaluating univariateClearedParityTruncatedSum at T = 0,
dividing by clearedProductDenom, and reducing modulo 2 ^ ℓ recovers the branch common-zero count
commonZeroCount univ (φ.branchParityRowSystem rows S e b).
§5.4–5.5 & §6 (branch-summed ReplacementDesign recovery of commonZeroCount on
φ.parityRowSystem rows): when every clause of φ has width at most k, summing the per-branch
ReplacementDesign modular residues of univariateClearedParityTruncatedSum at shared precision
branchPrecision (Fintype.card V) across all b ∈ branchAssignments S recovers
commonZeroCount univ (φ.parityRowSystem rows).
§5.4–5.5 & §6 (branch-summed ReplacementDesign recovery of
numPassing φ.violations rows): when every clause of φ has width at most k, the
branch-summed ReplacementDesign evaluation at T = 0 equals
(numPassing φ.violations rows : ℤ).
§5.4–5.5 & §6.2–6.3 (branch-summed ReplacementDesign recovery of
φ.modelCountOn Finset.univ after 3 * n greedy rounds): under the hypotheses of
CNF.commonZeroCount_parityRowSystem_greedy, for any heavy-variable set S : Finset V,
free-variable relabeling e : ↥(univ \ S) ≃ Fin n', and per-branch replacement design family
D b, summing the branch modular residues of univariateClearedParityTruncatedSum at T = 0
across b ∈ branchAssignments S recovers (φ.modelCountOn Finset.univ : ℤ) without any auxiliary
replacement hypotheses.
For all B, m : ℕ, the Lemma 6.2 greedy list length
P = 20000 * B ^ 2 * (Nat.log 2 m + 1) ^ 2 is at most the Lemma 6.1 initial row weight bound
D₀ = 320000 * B ^ 2 * (Nat.log 2 m + 1) ^ 3.
Consequently max (initialRowWeightBound B m) (greedyRowListLength B m) simplifies to
initialRowWeightBound B m.
Lemmas 6.1–6.2 & §§5.4–5.5, 6.3 (end-to-end initial + greedy parity-test compilation and
branch-summed ReplacementDesign recovery of φ.modelCountOn Finset.univ): for any width-≤ k
CNF φ on n = Fintype.card V ≥ 1 variables with φ.length ≤ B * n (B ≥ 1), there exist
initial parity rows A_init (A_init.length ≤ 3 * n, each of weight at most
D₀ = initialRowWeightBound B φ.length) such that for any greedy sequence
A (i + 1) = A i ++ [testRow (γ i)] with A 0 = A_init minimizing
commonZeroCount univ (φ.parityRowSystem (A i ++ [testRow γ'])) over candidate rows of list length
P = greedyRowListLength B φ.length:
- At every stage
i ≤ 3 * n,(A i).length ≤ 6 * n, and every compiled equationφ.parityRowSystem (A i) jhas degree at mostk, at mostD₀ * 2 ^ kmonomials, and variable-scope size#(equationScope (φ.parityRowSystem (A i) j)) ≤ k * (D₀ * 2 ^ k). - After
3 * nrounds, for any heavy-variable setS : Finset V, free-variable relabelinge : ↥(univ \ S) ≃ Fin n', and per-branch replacement design familyD b, the branch-summedReplacementDesignevaluation atT = 0equals(φ.modelCountOn Finset.univ : ℤ).