Documentation

Complexity.Computability.PolyTime.FineGrained.ParameterCheck

Polynomial-time parameter schedule and exact feasibility checks for subexponential #k-SAT #

In Section 4.7 (Lemma 4.8, pp. 34–35), Section 5.5 (pp. 38–39), and Section 6.4 (Proposition 6.4, pp. 43–44) of OpenAI, The Exponential Time Hypothesis is False, a uniform algorithm computes the discrete replacement and sparsification parameters from input sizes and verifies the numerical hypotheses of Lemma 4.7 and Lemma 4.8 in exact integer arithmetic, falling back to direct evaluation on the finitely many small inputs where those checks fail rather than referencing any noncomputable threshold constant N₀.

This module certifies the schedule parameters of ReplacementParams (numGroups, numNodes, rowBound, auxDim, intervalStart) directly under plain ComputableInPolyTime (including Proposition 6.4's integer-comparison characterization of numGroups via s ^ 2 * ν_n ^ 4 ≤ λ_n), adds the Section 5.5 parameter selectors (heavyDegreeCutoff, heavyIncidenceCutoff, chooseBeta), and proves exact cleared-denominator natural-number decision procedures (checkBinomTail, checkReplacementFeasible, checkScheduleFeasible) with bidirectional soundness/completeness and eventual-feasibility bridges to ReplacementParams.

Main definitions #

Main results #

References #

1. Section 5.5 / Section 6.4 Parameter Selectors and Full Schedule Tuple #

Auxiliary fifth-power polylogarithmic cutoff λ_n ^ 5 on n variables, where λ_n = Nat.clog 2 n.

Instances For

    Heavy-incidence threshold b₀ = ⌈M / n⌉ ⌈√λ_n⌉ of Section 5.5 ([OpenAI2026ETH], p. 38) for a system of total scope size M on n variables.

    Instances For

      Selector for the smallest integer β ≥ 1 satisfying b ≤ lam ^ β and w ≤ lam ^ β in Section 5.5 ([OpenAI2026ETH], pp. 38–39), defaulting to 1 when lam ≤ 1 and max b w > 1.

      Instances For

        Full discrete parameter schedule (λ, ν, r, Q, R, A₀) of Section 4.7 equation (4.17) and Lemma 4.8 ([OpenAI2026ETH], p. 34), reusing ReplacementParams directly.

        Instances For

          For 1 ≤ n, heavyIncidenceCutoff M n agrees with ⌈(M : ℝ) / n⌉₊ * ⌈√λ_n⌉₊ (§5.5, p. 38).

          theorem Cslib.Complexity.SubexponentialSAT.ParameterCheck.chooseBeta_spec {lam b w : ℕ} (hlam : 2 ≤ lam) :
          1 ≤ chooseBeta lam b w ∧ b ≤ lam ^ chooseBeta lam b w ∧ w ≤ lam ^ chooseBeta lam b w ∧ ∀ (β : ℕ), 1 ≤ β → β < chooseBeta lam b w → ¬(b ≤ lam ^ β ∧ w ≤ lam ^ β)

          Whenever 2 ≤ lam, chooseBeta lam b w returns the smallest integer β ≥ 1 satisfying b ≤ lam ^ β and w ≤ lam ^ β (§5.5, pp. 38–39).

          Proposition 6.4 integer-comparison characterization ([OpenAI2026ETH], pp. 43–44): ReplacementParams.numGroups n equals the Nat.findGreatest search for the largest s ≤ λ_n satisfying s ^ 2 * ν_n ^ 4 ≤ λ_n (and 0 when ν_n = 0).

          2. Cleared-Denominator ℕ Binomial-Tail and Feasibility Checkers #

          Cleared-denominator integer summand Q.choose w * (r - 1) ^ w * (r + 1) ^ (Q - w) of (2 r) ^ Q * Pr[W = w] for W ~ Bin(Q, (r - 1) / (2 r)).

          Instances For

            Exact cleared-denominator integer numerator (2 r) ^ Q * Pr[W ∉ [A₀, A₀ + R)) for W ~ Bin(Q, (r - 1) / (2 r)), summing binomTailTerm Q r w over w ∈ {0, …, Q} outside [A₀, A₀ + R).

            Instances For

              Exact integer decision procedure for the biased Binomial tail bound Pr[W ∉ [A₀, A₀ + R)) ≤ 1 / (b * r ^ 2 * lam) under W ~ Bin(Q, (r - 1) / (2 r)), including positivity guards 1 ≤ r, 1 ≤ b, and 1 ≤ lam.

              Instances For

                Exact integer decision procedure for the numerical hypotheses of Lemma 4.7 ([OpenAI2026ETH], pp. 33–34): checks 2 ≤ r, 1 ≤ R, R < Q, A₀ + R ≤ Q + 1, 2 * (b + wmax) * (r ^ (2 * Q)) ^ 2 ≤ M, 2 * Q * r ^ 2 ≤ n, and checkBinomTail.

                Instances For

                  Compute the full Section 4.7 schedule (λ, ν, r, Q, R, A₀) and verify in exact integer arithmetic both the Lemma 4.8 regime conditions (20 ≤ n, 32 ≤ R, 6 * R ≤ Q) and checkReplacementFeasible, deciding whether to run the subexponential replacement branch or the small-n direct-evaluation fallback of Theorem 2.2 / §5.5 ([OpenAI2026ETH], p. 39).

                  Instances For

                    Bridges to Finset sums, real probabilities, and ReplacementParams #

                    theorem Cslib.Complexity.SubexponentialSAT.ParameterCheck.binomTailNumerator_eq_sum (Q r A₀ R : ℕ) :
                    binomTailNumerator Q r A₀ R = ∑ w ∈ Finset.range (Q + 1) with ¬(A₀ ≤ w ∧ w < A₀ + R), Q.choose w * (r - 1) ^ w * (r + 1) ^ (Q - w)

                    binomTailNumerator as a Finset sum over {0, …, Q} outside [A₀, A₀ + R).

                    theorem Cslib.Complexity.SubexponentialSAT.ParameterCheck.checkBinomTail_eq_true_iff {Q r A₀ R b lam : ℕ} (hr : 1 ≤ r) (hb : 1 ≤ b) (hlam : 1 ≤ lam) :
                    checkBinomTail Q r A₀ R b lam = true ↔ ∑ w ∈ Finset.range (Q + 1) with ¬(A₀ ≤ w ∧ w < A₀ + R), ↑(Q.choose w) * ((↑r - 1) / (2 * ↑r)) ^ w * (1 - (↑r - 1) / (2 * ↑r)) ^ (Q - w) ≤ 1 / (↑b * ↑r ^ 2 * ↑lam)

                    Exact bridge from checkBinomTail to real Bin(Q, (r - 1) / (2 r)) tail probabilities: for 1 ≤ r, 1 ≤ b, and 1 ≤ lam, checkBinomTail Q r A₀ R b lam = true holds if and only if the real Binomial tail outside [A₀, A₀ + R) is at most 1 / (b * r ^ 2 * lam).

                    theorem Cslib.Complexity.SubexponentialSAT.ParameterCheck.checkBinomTail_eq_true_iff_notMem_Icc {Q r A₀ R b lam : ℕ} (hr : 1 ≤ r) (hR : 1 ≤ R) (hb : 1 ≤ b) (hlam : 1 ≤ lam) :
                    checkBinomTail Q r A₀ R b lam = true ↔ ∑ w ∈ Finset.range (Q + 1) with w ∉ Finset.Icc A₀ (A₀ + R - 1), ↑(Q.choose w) * ((↑r - 1) / (2 * ↑r)) ^ w * (1 - (↑r - 1) / (2 * ↑r)) ^ (Q - w) ≤ 1 / (↑b * ↑r ^ 2 * ↑lam)

                    Closed-interval (Finset.Icc A₀ (A₀ + R - 1)) form of checkBinomTail_eq_true_iff whenever 1 ≤ R, matching the interval I = {A₀, …, A₀ + R - 1} of Lemma 4.8.

                    theorem Cslib.Complexity.SubexponentialSAT.ParameterCheck.checkReplacementFeasible_eq_true_iff (n M b wmax lam Q r A₀ R : ℕ) :
                    checkReplacementFeasible n M b wmax lam Q r A₀ R = true ↔ 2 ≤ r ∧ 1 ≤ R ∧ R < Q ∧ A₀ + R ≤ Q + 1 ∧ 2 * (b + wmax) * (r ^ (2 * Q)) ^ 2 ≤ M ∧ 2 * Q * r ^ 2 ≤ n ∧ 1 ≤ b ∧ 1 ≤ lam ∧ ∑ w ∈ Finset.range (Q + 1) with ¬(A₀ ≤ w ∧ w < A₀ + R), ↑(Q.choose w) * ((↑r - 1) / (2 * ↑r)) ^ w * (1 - (↑r - 1) / (2 * ↑r)) ^ (Q - w) ≤ 1 / (↑b * ↑r ^ 2 * ↑lam)

                    Soundness and completeness characterization of checkReplacementFeasible, unpacking all numerical balance bounds and the exact real Binomial tail inequality.

                    Completeness of checkScheduleFeasible against ReplacementParams.Feasible: every feasible instance passes the exact integer-arithmetic feasibility checker.

                    theorem Cslib.Complexity.SubexponentialSAT.ParameterCheck.exists_checkScheduleFeasible_eq_true {β : ℕ} (hβ : 1 ≤ β) :
                    ∃ (n₀ : ℕ), 20 ≤ n₀ ∧ ∀ ⦃n b w M : ℕ⦄, n₀ ≤ n → 1 ≤ b → b ≤ Nat.clog 2 n ^ β → 1 ≤ w → w ≤ Nat.clog 2 n ^ β → n ≤ M → M ≤ b * n → checkScheduleFeasible n M b w β = true

                    Eventual passage of checkScheduleFeasible (Lemma 4.8, [OpenAI2026ETH], p. 34: "For fixed β, only finitely many n fail these checks"): for every 1 ≤ β, there exists n₀ ≥ 20 above which checkScheduleFeasible n M b w β = true holds for all valid (b, w, M).

                    Soundness of checkScheduleFeasible against ReplacementParams.Feasible: when 1 ≤ β and b ≤ λ_n ^ β, passing checkScheduleFeasible n M b w β implies the full ReplacementParams.Feasible bundle, including the strict Binomial tail bound and equation (4.18)'s rowCost bound.

                    Automatic soundness of checkScheduleFeasible when β = chooseBeta (Nat.clog 2 n) b w (§5.5, pp. 38–39), needing no external 1 ≤ β or b ≤ λ_n ^ β hypotheses.

                    3. Plain Polynomial-Time Certificates (ComputableInPolyTime) #

                    Internal plain building blocks #

                    ReplacementParams.auxDim (D = r ^ (2 Q) ≤ 2 ^ (λ / 128)) is polynomial-time over binary naturals (encNat to encNat).