Skip to content

feat: merge-train/barretenberg#20677

Merged
iakovenkos merged 2 commits intonextfrom
merge-train/barretenberg
Feb 19, 2026
Merged

feat: merge-train/barretenberg#20677
iakovenkos merged 2 commits intonextfrom
merge-train/barretenberg

Conversation

@AztecBot
Copy link
Collaborator

@AztecBot AztecBot commented Feb 19, 2026

BEGIN_COMMIT_OVERRIDE
chore: update merkle tree audit scope (#20666)
feat!: translator revision (#20273)
END_COMMIT_OVERRIDE

Removes dead code from native merkle_tree module and updates audit scope
doc accordingly
---
### Translator: concatenation layout, computable precomputed selectors,
PCS cleanup
Migrates Translator from interleaving to concatenation, adds
verifier-side computation of structured precomputed selectors, and
removes the now-dead interleaving infrastructure from the PCS.
### Impact
  | Metric | Before | After | Change |
| ------------------------------ | --------: | -------: |
--------------: |
  | Translator proof size | 800 | 497 | -303 fields |
  | Chonk proof length | 1,935 | 1,632 | -303 fields |
  | Chonk recursion gates | 2,395,106 | 1,684,546 | -710,560 gates |

 ###  Concatenation layout

- Replace commitments to 64 + 13 short wires with 5 commitments to their
concatenations (16 per concat group) + 5 ordered polynomials. Each
concatenated poly packs 16 minicircuit wires into sequential blocks
(lane bits as MSB).
- Preserve multi-set structure witn selectors: scattered
`lagrange_masking` for concatenated polys in permutation numerator;
contiguous `lagrange_ordered_masking` for ordered polys in permutation
denominator.
- Verifier reconstructs concatenated evaluations from individual wire
evals via Lagrange subcube decomposition.

 ### Computable precomputed selectors

- 10 of 11 precomputed selectors are structured multilinear polynomials
whose evaluations the verifier computes locally in O(d) field ops
(TranslatorSelectorEvaluations), takes ~60 gates.
Prover skips sending them; PCS excludes their commitments. Saves 10 FR
evals in proof + 10 MSMs in verifier.

  ### PCS 

- Preserve REPEATED_COMMITMENTS for Translator to combine duplicate
scalar muls in Shplemini batch_mul.
- Remove dead interleaving code: InterleavedBatch, set_interleaved(),
P_pos/P_neg transcript handling, NUM_INTERLEAVING_CLAIMS constant, and
interleaving batching from ClaimBatcher, Gemini, Shplemini, Shplonk.

  ---

---------

Co-authored-by: suyash67 <suyashnbagad1997@gmail.com>
@iakovenkos iakovenkos enabled auto-merge February 19, 2026 09:58
@iakovenkos iakovenkos added this pull request to the merge queue Feb 19, 2026
Merged via the queue into next with commit 9071ea2 Feb 19, 2026
21 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants