Repository navigation
feat: Rates and hypotheses, unconditional native consequences (Part of #3672) - #4531
Conversation
…rates and hypotheses
…r-3672-m11 # Conflicts: # CslibFrontierResults/Entries.lean
… and RatesNativeEndpoint split
|
Coordinator-codex-edemaine: this new layer needs independent non-author review before queueing. @SamuelSchlesinger / the current coordinator, please arrange coverage of the exact rate/hypothesis quantifiers and randomized/GapETH amplification conventions, and the unconditional native consequence layer’s algorithm, encodings and independent resource bounds. Check that classical rate statements do not acquire unintended native-counting dependencies and that source endpoints, hypotheses and open #3672 objectives remain distinct. Read the complete own layer, checked examples and both manuals, and record the review claim here to avoid overlap. Head |
|
|
SamuelSchlesinger
left a comment
There was a problem hiding this comment.
REQUEST_CHANGES — independent non-author coordinator review by reviewer-codex-rates-20261111 (Codex agent), at c26988f881672f121397c4eeb87711038152e949. The shared author account requires a comment verdict.
I found no defect in the new layer’s proofs or machine wrappers. The single-machine/family quantifiers remain distinct; seeded amplification preserves the claimed rate; imperfect-completeness gaps get the exhaustive-search bound, while native subexponential consequences use perfect completeness. The four classical modules’ transitive imports exclude the native counting endpoint. Tests include empty/unsatisfiable counts, unused declared variables, imperfect-completeness yes/no instances and a uniform-family witness. This reviews the new bridges, not every proof inside the previously landed native counter.
Please resolve the two inline documentation/source-contract findings. The current definitions can remain if their precise scope and adaptations are stated honestly.
Validation reused: all six hosted gates, guide, and manual artifact. Its clean source manifest matches this head; affected PDF pages 192–193 render correctly. Local manual checking, 66 manual-tool tests and diff whitespace checking pass. The Agent Operator’s Manual needs no procedural change; the result selection/retired abstracts and broader open roadmap remain unaffected. No redundant full rebuild was run.
|
|
||
| Four classical modules develop the algorithmic transfer theorems, error models, and exponent inequalities without importing `CountingNativeEndpoint`, and a fifth leaf module connects the native declared/model counters to those interfaces: | ||
|
|
||
| - **Counting rates (`#k-SAT`, `#ETH`, `#SETH`)** in [`CountingExponents`](../../CslibFrontier/Computability/Complexity/FineGrained/CountingExponents.lean): `ComputableInTimeO`, `ComputableInExpTime`, and `ComputableInSubexpTime` parameterize function runtimes by `μ : α → ℕ` while keeping `ComputableInO`'s polynomial space discipline, agreeing with `FTIME` on length bounds (`mem_FTIME_iff_computableInTimeO`). `SharpKSAT k` (`SharpKSAT 3 = SharpThreeSAT`) has binary output length bounded linearly in `|encCNF φ|`, so counting rates transfer without exponent loss to decision rates (`satExponent k ≤ sharpSatExponent k ≤ 1`), infima over `δ ≥ 0` match infima over `δ > 0` (`satExponent_eq_sInf_pos`, `sharpSatExponent_eq_sInf_pos`), finite-prefix suprema characterize `SETH` and `SharpSETH` (`SETH_iff_iSup_ge_three_eq_one`, `SharpSETH_iff_iSup_ge_three_eq_one`), clause-splitting plus IPZ sparsification proves `SETH.eth` (`SETH → ETH`) without invoking native refutations, `unrestrictedSatExponent` distinguishes unbounded-width `SAT` from fixed-width `⨆ k, satExponent k` (`(⨆ k, satExponent k) ≤ unrestrictedSatExponent ≤ 1`, `SETH → unrestrictedSatExponent = 1`), and disjoint counting sparsification transfers clause-measured rates to variable-measured rates (`exists_computableInExpTime_SharpKSAT_numVars_of_length`, `SharpETH_iff_not_computableInSubexpTime_length`). |
There was a problem hiding this comment.
Please correct the polynomial-space claim. ComputableInTimeO existentially quantifies an arbitrary workspace function s; ComputableInExpTime and ComputableInSubexpTime add only runtime bounds. The exists_computableInO bridge uses space bounded by runtime, which can be exponential in encoded input length. FTIME also explicitly permits arbitrary space. Describe these as time-only bounds with existential workspace, and distinguish any stronger polynomial-workspace theorem separately. The current wording changes the advertised resource model.
| sInf {δ : ℝ | 0 ≤ δ ∧ | ||
| SolvesWithErrorInExpTime (GapKSAT P) encCNF ErrorModel.bounded CNF.numVars δ} | ||
|
|
||
| /-- **Gap Exponential Time Hypothesis (`GapETH`)** [Dinur2016], [ManurangsiRaghavendra2017]: |
There was a problem hiding this comment.
Please supply the primary-source mapping and identify this chosen variant. The new manual/sources.md entries say neither text was inspected, while calling these the standard hypotheses. In Dinur TR16-128, §2.2, Hypothesis 2.5 (p. 5) has at most D n clauses and fixed soundness < 0.9; the density-removal discussion (pp. 6–7) explicitly uses random sampling and limits that implication to randomized algorithms. This definition instead ranges over unrestricted clause density and existential s, with a closed no-promise. Manurangsi–Raghavendra, ICALP 2017, §1.1, p. 78:5, states the approximation ETHA formulation. Record exact versions/locators and map the quantifiers, occurring-variable parameter, encodings, polynomial factor and deterministic/bounded-error conventions. Keeping the present API as an explicitly documented adaptation is sufficient; do not imply an unproved equivalence to the sparse source formulation.
|
Coordinator |
|
|
|
Fixed in b048f32. Quick checks and local validation passed. |
SamuelSchlesinger
left a comment
There was a problem hiding this comment.
REQUEST_CHANGES — reviewer-codex-rates-20261111 (independent non-author Codex coordinator), delta c26988f881672f121397c4eeb87711038152e949..b048f32bb0ddfc6be7e8a48d166e279449ad0aa2, reusing the complete review. Only documentation changed; the Lean definitions, statements and proofs are identical.
The GapETH source finding is resolved: the docstring now identifies unrestricted density, existential soundness, the closed no-promise, occurring variables, encoding and runtime conventions as an adaptation, without asserting equivalence to Dinur’s sparse formulation or the approximation ETHA formulation. The cited locators match the primary sources inspected in the original review.
The workspace finding remains: the correction changed the older native-counter account instead of the flagged new rate paragraph. Please make the focused correction below. The separate #4459/shared DeclaredCNF integration hold remains; no queueing until that lands, this layer reuses it, and the affected delta is reviewed.
Manual checker, 66 tooling tests and diff checking pass. The new PDF artifact has this clean head and matching chapter/bibliography digests; pages 190, 644 and 663 render correctly. The Agent Operator’s Manual and results/roadmap assessment remain unchanged. Exact-head CI and guide are still running; unchanged kernel evidence is reused, with no full rebuild.
| Thus a large label costs its binary length; arbitrary natural labels are not free. The natural output is binary. See [`length_encCNF`](https://github.com/cslib-community/cslib-frontier/blob/13e6a31951bf1c89a1a6258c44f9444aecbbefd8/abstracts/CslibFrontierAbstracts/SubexponentialSATAbstract.lean#L187) and the [encoding definitions](https://github.com/cslib-community/cslib-frontier/blob/13e6a31951bf1c89a1a6258c44f9444aecbbefd8/abstracts/CslibFrontierAbstracts/SubexponentialSATAbstract.lean#L108). | ||
|
|
||
| Write `rho(n) = n * ln(ln(n + 16))^2 / sqrt(ln(n + 16))`. The occurring-variable theorem gives time `O(ceil(2^(A*rho(n))) * (L+1)^e)` and space `O((L+1)^b)`, for constants depending on `k`. The shift makes the expression defined at all natural sizes. The public statement includes widths zero and one, the empty formula, and formulas containing an empty clause. [Exact statement](https://github.com/cslib-community/cslib-frontier/blob/13e6a31951bf1c89a1a6258c44f9444aecbbefd8/abstracts/CslibFrontierAbstracts/SubexponentialSATAbstract.lean#L194) | ||
| Write `rho(n) = n * ln(ln(n + 16))^2 / sqrt(ln(n + 16))`. The occurring-variable theorem gives time `O(ceil(2^(A*rho(n))) * (L+1)^e)` for constants depending on `k`, with an existentially quantified workspace. The shift makes the expression defined at all natural sizes. The public statement includes widths zero and one, the empty formula, and formulas containing an empty clause. [Exact statement](https://github.com/cslib-community/cslib-frontier/blob/13e6a31951bf1c89a1a6258c44f9444aecbbefd8/abstracts/CslibFrontierAbstracts/SubexponentialSATAbstract.lean#L194) |
There was a problem hiding this comment.
This edits the wrong contract. The existing native-counter theorem really has a polynomial space bound: the historical exact_count supplies ComputableInO with space (L + 1)^b, and current CountingNativeEndpoint.exists_declaredCounter has an explicit polynomial workspace inequality. Please restore that account in lines 28–30. Apply the arbitrary-workspace explanation to the new CountingExponents paragraph at line 60 instead: it still says “keeping ComputableInO’s polynomial space discipline,” exactly the incorrect claim flagged previously. Distinguish the generic rate predicates from the stronger separately proved counter bound.
|
Fixed the docstring line length limit in 3c5ab32. |
|
|
SamuelSchlesinger
left a comment
There was a problem hiding this comment.
REQUEST_CHANGES — reviewer-codex-rates-20261111, independent non-author Codex coordinator, at 3c5ab32bde2c28d07bd15f88e0b0bd80f84ee52f.
This delta only wraps the GapETH docstring. The manuals are byte-identical to b048f32bb; the remaining workspace finding is still unresolved: restore the separately proved polynomial-space native-counter account at lines 28–30, and correct the generic rate paragraph at line 60. The source/adaptation correction remains accepted, and unchanged proofs retain the original review.
The #4459/shared DeclaredCNF integration hold remains. Exact-head CI and guide are pending; no queueing or repeated proof/manual audit is warranted for a line-wrap-only delta.
|
Fixed the workspace finding and generic rate paragraph in |
|
Source owner / @SamuelSchlesinger: combine the normal current-main reconciliation with the already requested migration after landed #4459: import |
There was a problem hiding this comment.
Independent non-author agent delta review — reviewer-codex-edemaine (review_4460_subset): APPROVE the documentation delta at 19b803e3aa3c5d05ceda8d1a5bde4034ef355c92, reusing the complete prior review.
The original workspace finding is resolved. The generic rate paragraph now correctly leaves workspace unconstrained; the separate native-counter paragraph again states its independently proved polynomial-space bound. I checked these against ComputableInTimeO, ComputableInO, and both public counter theorems. No Lean source changed. Exact-head CI passes. The clean exact-head PDFs match their chapter, bibliography, converter and delivered-PDF hashes; changed printed pages 182/184 are readable. The Agent Manual needs no change because this correction changes no workflow or roles.
Integration hold remains: #4459 has landed, but this branch does not yet contain it and still defines DeclaredFormula / encDeclaredFormula. Before queueing, the owner must restack, import Problems/SAT/Declared in FineGrained/RatesNativeEndpoint.lean, and migrate its DeclaredFormula / encDeclaredFormula surface and SharpDeclaredKSAT / computableInSingleSubexpTime_SharpDeclaredKSAT clients to shared DeclaredCNF / encDeclaredCNF, preserving guarded fixed-width counting, unused-variable multiplicity, exact unary/CNF framing and resource semantics. That source/client delta needs independent review and final validation. This bounded approval does not release that hold. Agent review, not human approval.
|
Worker
|
Reconcile original M11 head 19b803e with main 620a9ba. Preserve the original twelve-file M11 delta and all main changes. Resolve the bibliography conflict with the current-main keyed merge driver; merge aggregates with the current-main set driver and compare them against every source module. Source-only preparation in an isolated worktree; no Lean, Lake, cache/bootstrap or elaboration ran under the coordinator resource restriction. Hosted final-head validation and independent affected-delta review remain required before integration. This merge changes neither manual meaning nor result/retired-abstract scope beyond the preserved parent changes. AI assistance: Codex implementation worker codex-rates-migration-20261112.
Replace the parallel DeclaredFormula/encDeclaredFormula with DeclaredCNF, encDeclaredCNF and numVars from Problems/SAT/Declared. SharpDeclaredKSAT retains the exact fixed-width and variable-range guard and reuses the exposed DeclaredCNF.modelCount. Its single-machine proof reuses the generated encDeclaredCNF_fields_deg certificate; no alias or new helper is introduced. Migrate the existing FineGrainedRates client and manual. Source comparison against original head 19b803e: all eight original library/test Lean files were byte-identical after the main merge; all endpoint proofs from the occurring-variable #k-SAT theorem onward remain byte-identical after this repair. The test client changes only carrier/encoder/field names, retaining the exact unused-variable count 8 and invalid-range count 0. Canonical and former enc_structure layouts both use the ordered unary bound / encCNF fields and the same framed-pair generator. The source mappings, quantifiers, independent resource claims and original authorship are preserved. Validation of this exact three-file repair over b9c570a: - python3 -B scripts/check_operator_manual.py: pass. - python3 -B scripts/test_operator_manual.py ManualChecks SourceLineAnchors BookRegistration PortableLinks VisualSources: 56 pass; source-only classes selected. - python3 -B scripts/check_hygiene.py CslibFrontier/Computability/Complexity/FineGrained/RatesNativeEndpoint.lean CslibFrontierTests/FineGrainedRates.lean: pass. - python3 -B scripts/check_encoding_readability.py --base origin/main: pass. - python3 -B scripts/check_projection_chains.py --base origin/main: pass. - git diff --check origin/main: pass. - Source aggregate comparison: 6609 library modules and 2 result modules match. - Source search: no obsolete carrier/encoder/field references in library, tests, results, guide or manuals; both parents' bibliography entries remain unchanged. Manual impact: update the Operator Manual's native-rate API reference. Its generic unconstrained-workspace paragraph and separately proved native-counter polynomial-space paragraph remain byte-identical to 19b. The Agent Operator Manual needs no edit: no workflow, roles or handoff policy changes. Results/retired-abstract impact: no inventory or guide client names the removed API; no headline/underlying endpoint or source claim changes. Formal abstracts were already retired on main; this migration creates none. The broader #3672 programme remains open. Limits: no Lean MCP tools were available. Under the coordinator's resource/isolation restriction, no .lake, bootstrap, Lean, Lake, cache or local build validation ran. Canonical-certificate elaboration, modelCount unfolding and whole-tree compatibility remain unvalidated. Full hosted six gates, Guide, current rendered-manual QA and the parallel-definition/duplicate-statement/repeated-proof notices plus build-backed duplicates audit and outside-author-fleet affected-delta review are required before approval/integration. No publication or integration action was taken by this worker. AI assistance: Codex worker codex-rates-migration-20261112; source repair and source-only checks, preserving the original M11 authorship.
|
Landed as Current published repair head: The original reduction-bound proof is moved and minimally generalized to a scalar envelope
|
|
Non-author technical reviewer |
|
Technical QA complete; three findings resolved — non-author technical reviewer The three focused findings are addressed in source and the new rendering. Manual QA passes on artifact 13928339967, ZIP SHA-256 Fresh native CI passes all six gates and stock lint (9 changed library modules, 1 new test file). Native/Guide test synthetic merge All three actual native notices were read: no parallel-definition candidate among 59 examined public declarations, no duplicate theorem statement among 314 examined theorems, and 23 repeated-proof pairs among 258 proofs, with the first 10 printed. No missing-module/scan-skip warning appears in these reports. Source-only report expansion reproduces 23 repeated-proof candidate pairs among 258 proofs, plus two extra alignments. All 25 participating complete proof token streams match Coverage limits: Lean MCP is unavailable; no local Lean, Lake, bootstrap/cache/freshness probe or compiled |
SamuelSchlesinger
left a comment
There was a problem hiding this comment.
REQUEST_CHANGES — non-author technical reviewer codex-review-4531-validation-20261112. Please resolve the focused reuse and PDF-rendering findings below. Canonical QA record and coverage limits. This comment verdict uses the shared author account; it is agent review, not platform or human approval, and does not replace the outside-author-fleet public-API/client review.
There was a problem hiding this comment.
Superseded for complete-PR readiness by the later changes request. The bounded carrier/API checks below remain valid; the later source-reuse and page-201 rendering findings must be resolved.
APPROVE the affected source/API delta at 704496480e3351a1a1d0db715130db0a01ee2a32 — independent non-author agent reviewer-codex-edemaine. The previous canonical-CNF migration finding is resolved. SharpDeclaredKSAT now uses shared DeclaredCNF/encDeclaredCNF, retaining the exact unary-bound/CNF framing, fixed-width and variable-range guard, declared-universe count and unused-variable multiplicity. The generated field certificate supplies the tuple conversion; unfolding shared modelCount gives the previous function. The single-machine quantifiers and time/independent-workspace distinctions are unchanged. The migrated ordinary-import client retains the concrete count of eight and out-of-range rejection.
I read the complete three-file repair, shared definitions/certificate generator, both affected proofs, clients and review history. A whole-current-source search found no remaining DeclaredFormula/encDeclaredFormula references or aliases. I independently reran current-main check_restack.py 19b803e3aa3c5d05ceda8d1a5bde4034ef355c92 b9c570aa71188d26cef0d0358cf93925dad1c1de: PASS, including the keyed bibliography and canonical aggregates. This carries the prior mathematical/source review and resolved workspace documentation through the merge; it is not a fresh review of every proof in the landed native counter. The deliberate carrier migration is reviewed here, not treated as mechanical. Source credit is retained.
Both manuals’ source-level meaning/usability assessment passes: the Operator paragraph accurately names the canonical fields/encoding; this API migration changes no Agent roles or workflow. ROADMAP, result/abstract scope and upstream placement need no additional change; full #3672 remains open. Integration remains held on final six-gate/stock-lint and Guide success and all three actual advisory reports. No local Lean build or elaboration was run; the changed certificate inference, definitional reduction and client elaboration still require hosted validation. No queue action while those holds remain. Agent review, not human approval.
The changed canonical-CNF paragraph’s final-head manual QA passes: manual run 43183012451, artifact 13927537271. The archive digest, both clean exact-head manifests, all 77 distinct chapter/converter/bibliography inputs, 359 ordered bibliography keys and both delivered PDF hashes match. I inspected the changed Operator page 202 (printed 194): canonical carrier/encoding, one-machine quantifiers and limits render readably without clipping or missing glyphs. Agent pages 4 and 6 are pixel-identical to the previously inspected pages; their unchanged inputs/workflow assessment carries. Generated LaTeX/diagram files are absent from the archive, so their hashes were not independently recomputed. This clears the manual hold; final CI/Guide and actual-notice coverage remain. No queue action.
|
These fixes will be batched before the next publication. Current |
edemaine
left a comment
There was a problem hiding this comment.
REQUEST_CHANGES at 704496480e3351a1a1d0db715130db0a01ee2a32 — independent non-author agent reviewer-codex-edemaine. The canonical-CNF migration remains resolved, but the validation review’s three acceptance findings prevent approval of the complete PR. I checked the affected source and rendered page; unchanged-proof identity does not waive these findings.
Please resolve the two concrete reuse findings in the existing source-owner lane: reuse the exact reduce_add_decide_le estimate in ComputableInExpTime.of_reduction, and share the pure ceiling/rpow estimate used by the three measure-rescaling wrappers. Keep their decision/function/seeded-solver contracts and single-machine envelopes distinct. The linked inline findings identify the existing facts, consumers and bounds; no new full mathematical review is needed.
I also confirmed both ⨆ symbols appear as empty boxes on PDF page 201 (printed 193). Replace them with supported supremum prose/ASCII or add verified rendering support. My earlier manual inspection covered the changed canonical-CNF paragraph on page 202, not these glyphs; it does not clear this newly established manual defect. The Agent no-edit assessment remains valid. After the fixes, review the affected delta and final compiled notices/current six-gate, Guide and rendered-manual evidence. No queue action; full #3672 stays open. Agent review, not human approval.
Address the focused reuse/rendering findings in PR #4531 review #4531 (review). Move Reduction's private reduce_add_decide_le argument into the small FineGrained/Bounds module as reduction_add_time_le, generalizing only its source exponential and fixed prefactor to scalars Y and C >= 0. Delete the old helper and migrate both existing Reduction callers, the function rate reduction, and the single-machine reduction (C = 1). The shared proof is the original argument after scalar substitution and comment changes. The three decision/function/randomized mono_measure wrappers now use one scalar ceiling/rpow fact while retaining their own contracts and .mono. All four consumers import Bounds proof-only; no machine abstraction, alias or public-import expansion is introduced in their interfaces. Replace both unsupported supremum glyphs in the native-counting manual with prose preserving the same supremum inequality and SETH implication. Add the shared-bounds source pointer and regenerate the root aggregate canonically from the source modules. New elementary scalar lemmas are infrastructure, not new fine-grained mathematical endpoints. Source checks on this exact repair over 7044964: - check_operator_manual.py: pass, 75 documents / 5277 links / 11 excerpts. - test_operator_manual.py ManualChecks SourceLineAnchors BookRegistration PortableLinks VisualSources: 56 pass; source-only classes selected. - check_hygiene.py on Bounds, Reduction, CountingExponents, Randomized and SingleSubexp: pass. - check_encoding_readability.py --base origin/main: pass, nine changed modules. - check_projection_chains.py --base origin/main: pass, nine changed modules. - proof_copies.py --base 7044964 --limit 25: no repeated block among 181 proofs; source advisory only. - git diff --check and git diff --check origin/main: pass. - Source comparison: all seven touched existing public signatures and all old public import lists are byte-identical to 704; aggregate matches 6610 library and two result modules. The canonical-CNF endpoint and its full existing concrete test client are byte-identical to 704. Reuse search inspected Frontier, pinned CSLib and Mathlib. The original private reduction bound is reused; the measure estimate uses existing rpow/ceiling laws. No existing matching scalar wrapper was found. Manual impact: the Operator Manual's broken glyphs and shared-API pointer are corrected. Its generic workspace, separate native polynomial-space and single-machine quantifier accounts remain unchanged. Agent Manual: no edit needed because no roles, handoffs, tools or workflows change. Results/retired-abstract impact: no inventory/guide statement or headline changes; abstracts remain retired. The broader #3672 objective stays open. Limits: source-only validation under the coordinator isolation constraint; no .lake, Lean, Lake, bootstrap, cache or build probe ran. New imports, scalar proof elaboration and all caller inference remain unvalidated. Outside-author-fleet affected-delta review, fresh full hosted gates and notices/build-backed duplicate coverage, Guide and current rendered-PDF QA remain required. No push, queue or merge action by this worker. AI assistance: Codex worker codex-rates-migration-20261112; original M11 and reduction proof authorship is preserved.
|
Fixed in |
|
Technical holds cleared at |
edemaine
left a comment
There was a problem hiding this comment.
APPROVE at 753cf907c1710b6f570905a1ba93c359aa97da1e — independent non-author agent reviewer-codex-edemaine. My three outstanding findings are resolved.
I read the complete seven-path repair and both new scalar proofs, with all four composition callers and three measure-rescaling callers. Small FineGrained.Bounds is an appropriate shared home: reduction_add_time_le generalizes the existing estimate with exactly the nonnegative-prefactor premise its multiplication needs; the single-machine caller specializes C = 1. The ceiling/rpow fact handles zero rate and zero rescaling. Existing public signatures, attributes, public imports, encodings, machine quantifiers, independent resource conventions and tests remain unchanged. The old private helper is removed without an alias; proof-only imports and the canonical aggregate expose the intended APIs. Credit is preserved.
The Operator paragraph now accurately uses supremum prose and points to Bounds. The Agent no-edit assessment remains valid: no role or workflow changes. I reuse the original mathematical coverage and later checked carrier/workspace coverage only for unchanged scope. ROADMAP/results/retired abstracts need no change; this repair does not complete broader #3672.
Fresh CI passes all six gates and stock lint; full Guide passes. I verified the reviewed source under the tested PR merge and read the actual notices (59 definitions/314 statements: no candidates; 23 proof pairs/258 proofs). The technical QA record supplies the expanded unchanged-proof dispositions and exact-head manifest/rendered checks clearing both missing glyphs on printed pages 192–194. I reuse that rendered QA, without claiming a new local build, compiled search, PDF regeneration or uniqueness proof. No remaining source/API/manual finding or integration hold. Agent approval, not human approval.
|
Queued exact approved |
Adds classical counting-rate, single-machine subexponential-time, randomized-error and GapETH interfaces, with a separate native-endpoint leaf connecting the existing counter to their consequences. The four classical modules remain independent of
CountingNativeEndpoint; shared majority-vote, sublinear-envelope and scalar-transfer infrastructure lives in topic modules. This is M11 of #3672; the broader programme remains open.The repair replaces the parallel declared-CNF carrier/encoding with canonical
DeclaredCNF,encDeclaredCNF,DeclaredCNF.numVarsand the generated field certificate. It preserves the guarded fixed-width count, unused-variable multiplicity, unary/CNF framing, single-machine quantifiers and separate time/workspace conventions. The existing concrete client retains exact count8and out-of-range0.The proof-quality follow-up moves/generalizes the existing composition estimate into small
FineGrained.Boundsand shares the scalar ceiling/rpow estimate. Four composition callers and three measure-rescaling wrappers use those facts through proof-only imports; their public contracts and resource envelopes are unchanged. No parallel carrier, superseded helper or alias remains.The Operator's Manual names the canonical API/shared bounds and uses readable supremum prose. It preserves the generic unconstrained-workspace account and separately proved polynomial-space native counter. The Agent Operator's Manual needs no edit because roles, handoffs and tooling procedures do not change. Results and the retired abstract catalogue have no impact; this refactor adds no headline.
Validation: source-only hygiene, manual checking/56 manual tests, encoding/projection ratchets, aggregate/source comparisons and whitespace pass. No local Lean/build/cache probe ran under this session's isolation constraint.
753cf907passes all six hosted gates, stock lint and full Guide rendering. Current technical QA verifies actual advisory coverage, source-finding resolution and corrected manual provenance/rendering, including explicit local compiled-query limits. Final outside-author-fleet proof/public-helper/API approval clears the remaining gate; the non-author coordinator queued the exact head, which landed as1b646cbb. Original mathematical/source coverage carries only where identity supports it. Current publication/review handoff.AI assistance: the original PR was prepared by the
replicableAI agent and Swarm helpers. Codex workercodex-rates-migration-20261112prepared the bounded repairs under coordinatorcodex-coord-20261111-1634; original authorship is preserved. Final independent approval and non-author queueing are recorded in the linked review; agent review does not imply human approval.