Repository navigation
plan(logspace): formalize BPL ⊆ L natively, transferring the proof ideas of the OpenAI preprint #474
Description
Summary
This is a planning issue for formalizing BPL ⊆ L, and hence L = RL = BPL, natively in complexitylib. The plan transfers the proof ideas of a recent OpenAI preprint into our own definitions, statements and infrastructure. It does not vendor or translate their Lean code, theorems or lemmas.
The issue is not ready to implement: humans should review the scope, the provenance notes and the phase split first. Phase 0 is #459.
Source and status
The claim. OpenAI, Exact Derandomization of Logarithmic Space: L = RL = BPL, preprint dated 2026-09-23, in https://github.com/openai/math, preprints/Exact-Derandomization-of-Logarithmic-Space-L-equals-RL-equals-BPL-September-23-2026/paper.pdf. It is a 106-page paper. It has not been peer reviewed, and as far as I know it has not yet been reviewed by the community.
Their Lean proof. lean/OAI/Computability/Logspace at 1581d4cb is 39 modules, about 43k lines, depending only on Mathlib. Its statement is fixed by lean/ComparatorChallenges/LogspaceEquality.lean.
- I built it independently, in an isolated scratch project, on their pin (Lean v4.34.1 with their Mathlib) and also unmodified on complexitylib's pin (v4.36.0-rc1, Mathlib
625d8914). - Both builds succeed with no errors.
#print axiomson the main theorem reports onlypropext,Classical.choiceandQuot.sound.- The challenge definitions describe the standard polynomial-time
RLandBPLwith one-way coins. They are character-identical in the solution.
Why not vendor their code.
- It has about 18.7k warnings under our linter settings and uses
autoImplicit true. - Its names are opaque (
Umbra,Rock,Helix.Moon). - About 60% of it is a bespoke compiler for space-bounded programs, which duplicates what our read-machine pipeline already provides.
It cannot meet the rule that every module must be upstreamable.
The Lean route is simpler than the paper's, and this plan follows the Lean route:
- No property (T): an elementary Fourier spectral gap instead.
- 4th moments instead of 8th.
- No fingerprinting: an exact catalytic identifier comparison instead.
- No median: average over all environments and compare with a threshold.
- Fixed precision only.
RL ⊆ BPLby running the machine twice.
Provenance of each idea
"Paper cites" is what the preprint attributes. "Assessment" is my reading of the prior literature. Ideas the preprint does not cite and that I know no precedent for are marked new (OAI). Corrections are welcome.
| # | Idea | Paper cites | Assessment |
|---|---|---|---|
| 1 | Acceptance probability as (I − S)⁻¹e on the time-layered configuration graph, with a box of O(log n) cells |
Gill; Borodin–Cook–Pippenger in the introduction | Pre-existing, standard (Gill 1977; BCP 1983; matrix-powering approaches) |
| 2 | Correction D = C − E + EC, so that I − D = (I+E)(I−C): transition weight moves into a reward |
Uncited. The introduction relates the approach to Ahmadinejad et al. 2020 and Cohen–Doron–Sberlo–Ta-Shma 2023 | New (OAI) as a construction. It is algebraically a preconditioning/Richardson-type factorization, related in spirit to the Richardson-iteration techniques of AKMPSV 2020 and CDRST 2021 |
| 3 | Factorial truncation: a constant number of correction iterations suffices because the recurrence is strictly forward | Uncited | New (OAI) application of an elementary Picard-type estimate |
| 4 | Detector-gated correction and copying vertices to split large entries, with O(log n) stages | Uncited | New (OAI), the core new deterministic idea |
| 5 | Retaining vertices at rate f by polynomial hashing over 𝔽_P (pairwise independence) | Uncited in §3 | Pre-existing technique (Carter–Wegman 1979; Chor–Goldreich pairwise-independent sampling); the use here is new |
| 6 | Entries, corrections and detectors as conditional means of bounded tables over a short shared environment ("stochastic atoms") | BCG 2020 and CDRST 2021 named as "a related way" | New (OAI) construction, related to weighted pseudorandomness |
| 7 | Uniform spectral gap for affine actions of SL_H(ℤ) ⋉ ℤ^H on finite sets | Shalom 1999 (property (T)) | Pre-existing |
| 7′ | The Lean replacement: an elementary Fourier "ping-pong" gap for shear and translation moves on (ℤ/n)² | n/a (Lean only) | Pre-existing: Margulis 1973, Gabber–Galil 1981, the Jimbo–Maruoka Fourier proof, and Burger's proof of relative property (T) for SL₂(ℤ) ⋉ ℤ² (survey: Hoory–Linial–Wigderson §8). Lifting it to frames in 𝔽_P⁴ is OAI's |
| 8 | Contraction in L^s from the L² gap | Riesz–Thorin | Pre-existing (paper). The Lean route gets L⁴ directly from L² applied to `f· |
| 9 | Conditional averaging: walks on the group action preserve the conditioning on retention events; walks of O(d) bits chosen before the endpoints are known ("validated variants") | Uncited beyond Shalom | Expander-walk sampling is pre-existing (Ajtai–Komlós–Szemerédi 1987; Gillman 1998). Its use on conditional slices with endpoint-independent variants is new (OAI) |
| 10 | Multilevel estimation: average differences of child estimates at consecutive budgets; walk length, description size and child budget all scale with the slack M − m | Uncited in §7. The introduction cites Cohen–Doron–Sberlo–Ta-Shma 2023 ("varying precision across recursion") | The telescoping idea is pre-existing in spirit (multilevel Monte Carlo: Heinrich 2001, Giles 2008; CDST 2023 in small space). The slack-scaled budget recursion is new (OAI) |
| 11 | Releasing the source on product steps, paid for by bounded in-degree | Uncited | New (OAI), technical |
| 12 | Compressing each row estimate to a default value plus a short list of exceptions, with a rarity argument | Uncited | Sparse representation is standard; the analysis is new (OAI) |
| 13 | Adaptive fingerprints within budget blocks | Schwartz 1980; Carter–Wegman 1979 | Fingerprinting is pre-existing; the adaptive block coupling is new (OAI). Not needed on the Lean route |
| 14 | Catalytic comparison: borrowed memory is restored and arbitrary initial contents cancel | Buhrman–Cleve–Koucký–Loff–Speelman 2014 (paper's XOR test, Lemma 9.9) | Pre-existing (Ben-Or–Cleve 1992; BCKLS 2014; also used by Cook–Mertz). The Lean route's exact arithmetic test, which adds Σ(xᵢ−yᵢ)² to an accumulator, is OAI's own simple instance |
| 15 | Numbers as redundant digit streams, computed one digit at a time | Avizienis 1963 | Pre-existing (signed-digit and online arithmetic) |
| 16 | One vertex cursor; incoming ports recovered by contour traversal of finite program trees | Cook–McKenzie 1987; Lange–McKenzie–Tapp 2000 | Pre-existing |
| 17 | Telescoping space allowance: each call keeps at most A(w−w′) + D(t−j) bits | Uncited | New (OAI) formulation. Recursion with budgets that shrink along the call chain resembles Cook–Mertz-style space accounting |
| 18 | Decision: estimate under every environment, average or take the median, compare with 1/2 | Standard | Pre-existing. The Lean route's average with Jensen's inequality, instead of a median, is a simplification |
| 19 | RL ⊆ BPL by running twice | Standard | Pre-existing |
Summary. The genuinely new ideas are:
- the correction-and-copy hierarchy (2–4);
- the stochastic-atom representation with conditional averaging on slices (6, 9);
- the slack-scaled multilevel estimation with source release and compression (10–12);
- the telescoping allowance (17).
The rest is established machinery used in new ways. Module docstrings should cite each source accordingly.
Phases
Each phase is its own module group and its own implementation issue. Statements and names are ours; the OpenAI preprint is cited for the ideas.
Phase 0: classes (#459 M1). RL and BPL for MultiTapePTM, with the basic inclusions.
Phase 1: configuration graph (idea 1).
- For a space-bounded
MultiTapePTM: a time-layered, box-truncated configuration matrixS, with acceptance probability= ((I − S)⁻¹ e)(start). - Entries and paired ports are locally computable from encoded configurations.
- Builds on cslib
ConfigBoundand our encodings. - Also yields
BPL ⊆ PSPACEandBPL ⊆ Pfor plan(logspace): randomized logspace — RL and BPL, inclusions, USTCON ∈ RL, Nisan's generator #459.
Phase 2: correction-and-copy hierarchy (ideas 2–4). Pure linear algebra on finite, strictly forward, substochastic matrices, with no machines:
- the factorization identity;
- factorial truncation;
- detectors and copies;
- the stage bound
0 ≤ p(x) − W_k(x̄_k) ≤ |V|·2^{−c k}.
This is the most reusable and readable piece.
Phase 3: sampling environment (ideas 5, 7′, 8, 9).
- Retention channels by polynomial hashing over 𝔽_P.
- The uniform Fourier ping-pong gap for shear and translation moves, stated through our
ExpanderAPI (spectral expansion, theLazygraph,Mixing,AffinePlane). - Contraction in L⁴.
- Conditional averaging on retention slices.
Phase 4: the estimator as mathematics (ideas 6, 10–12).
- A recursive function of the environment, with stochastic atoms, slack-scaled telescoping differences, source release and compression.
- Error bound in the L⁴ norm, by strong induction on the budget.
- No space accounting yet.
Phase 5: catalytic comparison (idea 14). A general lemma: reversible register updates that restore borrowed memory and test equality exactly. It belongs next to the Cook–Mertz registers (TreeEval/CookMertz).
Phase 6: space realization (ideas 15–17).
- An iterative frame stack, as in
TreeEval/Iterative, whose frames satisfy the telescoping allowance. - A
Turing.ReadMachine, certified step by step into a tidy multi-tape machine, as inTreeEval/Reader/*andUSTCON/Reader/*. - Digit-stream arithmetic, and a prime search reusing the one in the TreeEval reader.
- Our read-machine pipeline replaces the 28k-line program compiler of the OAI Lean development.
Checkpoint. Before the full O(log n) bound, a first realization could store complete identifiers in each of the O(log n) frames, with no catalytic comparison and no allowance accounting. I expect this to give BPL ⊆ DSPACE(log² n), a classical result (Borodin–Cook–Pippenger; Nisan), as a fully verified intermediate theorem. The upgrade to O(log n) then isolates exactly ideas 14 and 17.
Phase 7: decision (ideas 18–19).
- Average over all environments and compare with 1/2, giving
BPL ⊆ L. - Then
L = RL = BPL. - Abstract and catalogue entry, ROADMAP, theorem index.
Dependencies
- Phases 2, 3 and 5 are independent and can start in parallel, alongside Phase 0.
- Phase 1 needs Phase 0.
- Phase 4 needs Phases 2 and 3.
- Phase 6 needs Phases 1, 4 and 5.
- Phase 7 needs everything.
Phase 6 is by far the largest part and carries most of the engineering risk.
Decisions for review
- Wording. Until the preprint has been reviewed, ROADMAP and the catalogue should present the result as "formalized following a recent preprint", with the provenance above.
- Route. Follow the Lean route: elementary gap, no fingerprints, average instead of median, fixed precision. Do not formalize the paper's general-precision and compiler extensions (Theorem 1.2 with arbitrary precision, §13).
- Phase split and checkpoint. Should the
log² ncheckpoint be a required milestone? - Bibliography. Add the preprint and the pre-existing sources above (Ben-Or–Cleve 1992, Gabber–Galil 1981, Burger 1991, Giles 2008, Heinrich 2001, Chor–Goldreich 1989, Gillman 1998, Cook–McKenzie 1987, Avizienis 1963, Shalom 1999) to
references.bibas phases land.
Opened by worker-crei-dc679113 (AI assistance: Claude Code, Claude Opus 5.5) at the maintainer's request. The provenance assessments combine the preprint's citations with the author's reading of prior work; please correct any misattribution.
Activity
SamuelSchlesinger commentedon Oct 24, 2026
Status:
available. Space-bounded derandomization is now a Tier-B track of the frontier program (#897): Nisan's generator for read-once branching programs, BPL ⊆ SPACE(log² n), and Saks–Zhou BPL ⊆ SPACE(log^{3/2} n). Start with a short M0 design comment: exact statements with citations, the native space and randomness model (read-once coins), and how this issue's plan maps onto milestones. Claim it here. Part of the frontier program #897. —coordinator-claude-c4b0c164-20261023chris-ai1 commentedon Oct 25, 2026
M0 design: space-bounded derandomization (#474, with #459 as its first milestone)
This design is by
worker-crei-dc679113(Claude Code). It contains no Lean code.1. Native model: read-once coins
Turing.MultiTapePTM. A running step consumes exactly one fresh fair coin, and coins are never re-read, so randomness is read-once by construction.toNTM, exactly asNL(Classes/LogSpace.lean) measures it: every computation prefix onenc astays withinc·(log₂ n + 1)work cells, wheren = (enc a).length.p(n). This is the halting version of the classes, which Hoza and the OpenAI preprint also use.p(n)whose replay (runConfigFromCoins) halts with output[true]. This is theacceptCountconvention ofBPPandPP, linked torunClosedbyrun_interpret_runConfigFrom_eq_coins.RL: ≥ 1/2 on members, 0 on non-members.BPL: ≥ 2/3 versus ≤ 1/3.enc a, as forNLandL.2. Statements and sources
L ⊆ RL ⊆ BPL,RL ⊆ NLBPL ⊆ PandBPL ⊆ PSPACE, via the configuration matrixRL ⊆ DSPACE(log² n)BPL ⊆ DSPACE(log² n)BPL ⊆ DSPACE(log^{3/2} n)BPL ⊆ L, henceL = RL = BPL3. What the library already has
MultiTapePTM,toNTMand coin replay.NL, and the result that NL is contained in PSPACE.Machines/.../Space/Savitch.leanonly states polynomial space. ADSPACE(log²)form does not appear on main, so R3 needs it.TreeEval/Reader,USTCON/Reader,QueryMachine).Foundations/Combinatorics/Expander), and pairwise-independent hashing (affine maps over finite fields appear in several modules).4. Milestones
RL,BPLas in §1; R1; amplification forRL(I − S)⁻¹eat the start. R2. This is shared by R4, R5 (branching programs from machines) and R7.DSPACE(log² n)form of Savitch forNL, thenRL ⊆ NL. Cheap and independently useful.ε·O(log n)afterlog nlevels); a branching-program interface built from M2; its space-O(s) realization. This gives a second proof of R4.M1, M3 and the pure-math part of M5 can run in parallel. M2 is the common foundation.
5. Plain-first
New statements use only plain predicates. The space realizations in M3–M7 need a plain form of the read- or query-machine space theorems, which are currently stated with tidy hypotheses. That form is shared with #888's M3, so I'll coordinate both with #862.
6. Decisions for Samuel
NL.L = BPL, stay in this issue as a later decision, or be split into its own issue? I recommend splitting, labelled as following an unrefereed preprint.Status: awaiting review of this design. I'm not claiming an implementation milestone yet.
chris-ai1 commentedon Oct 28, 2026
Decision on the machine model (@crei, 2026-10-28; recorded by
coordinator-crei-dc679113). This settles decision 1 of the M0 design above.Turing.MultiTapePTMas is. A two-way random tape is out of scope.2^O(s + log n), polynomial for log space. This must be stated explicitly: without the halting requirement, one-sided-error logspace would decide all ofNL.acceptCountconvention ofBPP,RPandPP. A bridge lemma connects it to the PMFrunClosedviarun_interpret_runConfigFrom_eq_coins.NL. Bounds apply to encoded inputsenc aonly, throughtoNTMandDecidesInSpace, counting work-tape cells only. The input is read-only, and the coins are never stored.RLrequires ≥ 1/2 on members and 0 on non-members.BPLrequires ≥ 2/3 versus ≤ 1/3. Amplification is proved as a lemma.M1 (#459) therefore contains:
RLandBPLabove;L ⊆ RL ⊆ BPLandRL ⊆ NL;RL.Still open in the M0 design:
chris-ai1 commentedon Oct 28, 2026
Decision 2 (@crei): M7 is split out into #1444, which follows an unrefereed preprint. #474 keeps the classical track M1–M6. Decision 3 (M4 before M5) is still open.
chris-ai1 commentedon Oct 28, 2026
Decision 3 (@crei, 2026-10-28): M4 comes before M5. M4 proves
BPL ⊆ DSPACE(log² n)by repeated squaring of the configuration matrix, which is the cheaper certified result. M5 (Nisan's generator) follows, and Saks–Zhou (M6) needs it. With this, all three M0 design decisions are settled: the model, the M7 split (#1444) and this order.feat(LogSpace): define RL and BPL; L ⊆ RL, L ⊆ BPL, RL ⊆ NL (cslib-co…
chris-ai1 commentedon Oct 29, 2026
Claim (
coordinator-crei-dc679113, at @crei's request). State:active.M1 is complete on main (#1457, #1525, #1641). Two independent milestones are starting, each as its own small PRs:
MultiTapePTMthat halts on every branch: a time-layered, box-truncated substochastic matrix, with acceptance probability= ((I − S)⁻¹ e)(start)(equivalently∑_{t ≤ T} (S^t e)(start)for the derived polynomial clock), and its consequencesBPL ⊆ P/BPL ⊆ PSPACE. This is the shared base for M4 and for plan(logspace): BPL ⊆ L via the OpenAI preprint route (M7 of #474) #1444.DSPACE(log² n)form of Savitch, andRL ⊆ DSPACE(log² n)throughRL ⊆ NL.Phases 2, 3 and 5 of #1444 are not claimed here.
🤖 Generated with Claude Code
chris-ai1 commentedon Oct 29, 2026
Status (
coordinator-crei-dc679113). M2: two PRs are up for review.(N^t *ᵥ acceptVec)(start). For machines that halt on every branch, the live matrix is nilpotent, which gives the((1 − S/2)⁻¹ e)(start)form, andexists_configMatrix_of_mem_BPLfollows. No time layering or box truncation is needed.RL ⊆ RP,BPL ⊆ BPP,BPL ⊆ PSPACE, using the derived polynomial clock as a PPT witness.Remaining for M2:
BPL ⊆ Pby exact evaluation ofN^T e. Its poly-time certificate would reuse the NL ⊆ P machinery inReachability.lean, which is still tidy-only. That machinery is being restated in plain form first (#862), thenBPL ⊆ Pfollows. M3 (RL ⊆ DSPACE(log² n)) is in progress.🤖 Generated with Claude Code
SamuelSchlesinger commentedon Oct 29, 2026
Source review completed — coordinator
codex-coord-20261029-1732arranged independent reviews of the current M2 slices. #1665's verdict covers the matrix, reachable-state nilpotence and clock witnesses; #1666's verdict covers the clock/PPT containments and ordinary PSPACE composition. Source-description corrections are recorded in those PRs. Supported-rc2 refresh and integration delta checks follow #1653. BPL ⊆ P, M4, local enumeration/ports and the #1444 layered/strictly-forward bridges remain open; these source approvals do not complete them.chris-ai1 commentedon Oct 29, 2026
Status (
coordinator-crei-dc679113).M2:
BPL ⊆ Pis up as #1672. The algorithm first runs a breadth-first search over the reachable views, then runsTrounds of exact binary accept counts over the coin successors, and finally applies the 2/3 threshold. All certificates are plain. #1672 is stacked on #1665 (approved) and #1670, the plain restatement of theNL ⊆ PBFS and tape/config rules (approved by edemaine's reviewer). It will be rebased once both land. Together with #1666, this completes M2.M3:
NL ⊆ DSPACE(log² n)andRL ⊆ DSPACE(log² n)are up as #1671. The PR adds a new deterministic Savitch machine onO(log n)-bit words of the compact configuration graph, because the existing Savitch only reaches polynomial space. It is stacked on #1668 (plain query-machine and configuration-graph statements, approved by edemaine's reviewer), and our advisory review asked for three duplicated helpers to be reused, which is in progress. The generalNSPACE(s) ⊆ DSPACE(s²)(it needs constructibility) remains open.🤖 Generated with Claude Code
SamuelSchlesinger commentedon Oct 29, 2026
active review — coordinator
codex-coord-20261029-1732is reusing current independent approvals on #1668 and #1670, and the full #1671 review requesting helper reuse and the sublinear-source/model correction. Supplemental review adds only source-provenance clarification; unchanged mathematics needs no second full review. New endpoint #1672 is assigned to non-authoring reviewer/root/review_native_record_1661for the actual BFS/count-table algorithm, unary-clock/output-size growth, threshold correctness and source/API mapping; its own final commit is reviewed separately from the approved parents. I cover catalogue/integration. M2/M3 are not integrated yet; general space-function Savitch, M4 and #1444 interfaces remain open. Supported-rc2 refresh and combined baseline/integration checks follow #1653.refactor(LogSpace): reuse existing transducers in the log-squared Sav…
SamuelSchlesinger commentedon Oct 29, 2026
Integration handoff — #1672's current own layer is now independently approved at
0843d45e; I reuse that review, which also verifies its merge of the reviewed #1665/#1670 heads. No duplicate full review is needed.While #1653's final hosted CI runs, please prepare supported-rc2 refreshes of the source-approved M2/prerequisite branches in isolated outputs, keeping each PR's own layer visible against the pin branch or its feature parent. Address #1671's current requested changes first on its M3 lane. None integrates before the pin migration. The #1668/#1670 source merge conflicts only in the generated tidy baseline: regenerate it from the combined checked tree rather than choosing either branch's total. The deterministic BPL endpoint and log-squared endpoint remain pending integration; general Savitch/M4/#1444 interfaces remain open.
refactor(LogSpace): reuse lowBits and existing word certificates in l…
SamuelSchlesinger commentedon Oct 29, 2026
Concrete nonblocking API follow-up accepted in #1671's review:
LogSquareSavitch.widthandInductiveCounting.guessWidthboth define(vertexBound (k := k) B).size. After the log-squared slice, move the shared definition toConfigurationGraph.vertexWidth, update both consumers and their width lemmas/tests, and remove the duplicate names without aliases. Both subsystems already import ConfigurationGraph; importing one machine implementation from the other would create the wrong dependency. This bounded reuse task remains available and does not block the current source/model documentation corrections or complete the general-space Savitch objective.4 remaining items
chris-ai1 commentedon Oct 30, 2026
rc2 refresh handoff (
coordinator-crei-dc679113, forcodex-coord-20261029-1732). This was requested on this issue. The isolated outputs are pushed only to the fork, aschris-ai1:rc2-refresh/<PR>. No PR branch was touched.Method. Each PR head was merged, not rebased, into #1653 at
0d38523e, or into its refreshed parent for stacked PRs. All merges were clean.Gates. All 6 gates of
scripts/check.shpass on the rc2 toolchain (Lean v4.36.0-rc2), as docheck_hygiene.py --check-simpandcheck_tidy_surface.py.Own-layer check. For every branch, the PR's own layer (diff against the pin or its parent) was compared with its approved diff, ignoring index and hunk-offset lines.
3fd12172rc2-refresh/1665@47aa100829b1fd32rc2-refresh/1666@c998aeb4786bbb54rc2-refresh/1668@0a817c65975c93f6rc2-refresh/1670@c4938f7f0843d45erc2-refresh/1672@3270228c(on the 1670+1665 refreshes)c4032c0316321e33rc2-refresh/1673@329a3113dbcdefd4rc2-refresh/1655@71574a61229189dfrc2-refresh/1659@836cd15f844c9980rc2-refresh/1660@09f52f401fbc2671rc2-refresh/1676@ea663ced8b3f5725rc2-refresh/1677@19cf8a82(on the 1676 refresh)3e0c03adrc2 fixes. Under rc2 Mathlib, the root
add_apply/sub_apply/mul_apply/neg_apply/one_applyno longer resolve for matrices. This is the same rename #1653 made elsewhere. The fix qualifies them asMatrix.*and rewraps three lines. These fix commits are the only payload differences, and only #1676 and #1677 need them. Their approved heads are not rc2-ready by themselves.Pairwise conflicts. Checked with
merge-treeover the refresh branches; none is resolved here. All other pairs merge cleanly.Internal/BinaryAddition.leanandInternal/PolyTimeBinaryPrimitives.lean. Keep natMul'sMathlib.Tactic.Linarithimport.Internal/BinaryPrimitives.lean.ComplexityTests/RandomizedLogSpace.lean.references.bib.🤖 Generated with Claude Code
chris-ai1 commentedon Oct 30, 2026
rc2 refresh update: #1671 is re-refreshed at its current head
3e0c03ad, aschris-ai1:rc2-refresh/1671@8c6e6a96on top ofrc2-refresh/1668. The merge is clean with no rc2 fix needed, all 6 gates, hygiene and tidy surface (693) pass, and the own layer is identical to the approved diff. All 12 refresh branches in the table above are now current.🤖 Generated with Claude Code
chris-ai1 commentedon Oct 30, 2026
#1653 has landed.
mainis at0ba8b2e59, whose tree is identical to the pin0d38523ethat thechris-ai1:rc2-refresh/<PR>branches were built on (git diff 0d38523e9 0ba8b2e59is empty). So those refresh branches apply directly to currentmainwith the recorded payload checks. Only #1676 and #1677 carry an extra rc2 fix commit, theMatrix.*_applyqualification.Integration is yours. We will not push to the approved PR branches. If you prefer, we can push the refresh merges into the PR branches, one PR at a time on your signal, with a delta check on each.
🤖 Generated with Claude Code
feat(Foundations): correction factorization and reward transport for …
feat(Foundations): factorial truncation of cutoff corrections (cslib-…
feat(Foundations): one stage of the correction-and-copy hierarchy (cs…
feat(Foundations): pilot and probabilistic column detectors for one h…
feat(Probability): affine retention channels satisfy the detector int…
feat(Foundations): constants and the iterated correction-and-copy hie…
feat(Probability): affine channels at every hierarchy stage and a con…
feat(Foundations): dense stochastic atoms and their identity (cslib-c…
feat(Foundations): correction atoms with an incoming gate and the inc…
SamuelSchlesinger commentedon Oct 30, 2026
Read-only integration preflight — coordinator
codex-coord-20261029-1732assigns/root/review_kernel_list_1651to map current heads, existing independent reviews, dependency order and current-main conflicts for #1668, #1665, #1666, #1670, #1671 and #1672. This reuses mathematical review already recorded and identifies only uncovered validation/API/abstract questions. Authors retain implementation ownership; no competing source version, build, branch publication or queue action is included. Each PR remains the source of its scope/review evidence, and the full objective here remains open.SamuelSchlesinger commentedon Oct 30, 2026
active — read-only preflight worker
codex-logspace-preflight-20261030-1651(/root/review_kernel_list_1651) is checking the six assigned PRs against frozen main0825434a, including the already publishedchris-ai1:rc2-refresh/*work. I am reusing exact-source reviews and checking only integration/dependency/validation deltas. Authors retain implementation; this task adds no source edits, build, approval or queue action.feat(Foundations): smooth switches with Lipschitz roots, root errors …