Skip to content

fix: [ECCVM] in the transcript table, no-ops force the next accumulator to be 0.#20849

Merged
notnotraju merged 6 commits intomerge-train/barretenbergfrom
rk/eccvm-external-audit-1-transcript-no-op
Mar 6, 2026
Merged

fix: [ECCVM] in the transcript table, no-ops force the next accumulator to be 0.#20849
notnotraju merged 6 commits intomerge-train/barretenbergfrom
rk/eccvm-external-audit-1-transcript-no-op

Conversation

@notnotraju
Copy link
Contributor

No new subrelations.

@notnotraju notnotraju self-assigned this Feb 25, 2026
@notnotraju notnotraju added ci-no-fail-fast Sets NO_FAIL_FAST in the CI so the run is not aborted on the first failure ci-barretenberg-full Run all barretenberg checks. labels Feb 25, 2026
@notnotraju notnotraju requested a review from suyash67 February 25, 2026 11:39
@notnotraju notnotraju force-pushed the rk/eccvm-external-audit-1-transcript-no-op branch from 974e406 to f364d9b Compare February 25, 2026 11:50
auto accumulator_infinity_q_reset = q_reset_accumulator * (-is_accumulator_empty_shift + 1); // degree 2
auto accumulator_infinity_from_add =
any_add_is_active * (result_is_infinity - is_accumulator_empty_shift); // degree 3
// When opcode_is_zero (no-op row), the accumulator output is forced to (0,0) by lines 428-429.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: instead of referencing L428-429, describe the constraint you mean to refer. Line numbers will definitely get lost over time.

Copy link
Contributor

@suyash67 suyash67 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good. I'll suggest (if possible) adding a test or two to ensure the accumulator infinity behaviour is consistent

notnotraju added 5 commits March 5, 2026 16:26
…k/eccvm-external-audit-1-transcript-no-op

# Conflicts:
#	barretenberg/cpp/src/barretenberg/dsl/acir_format/gate_count_constants.hpp
@notnotraju notnotraju merged commit 4d2642d into merge-train/barretenberg Mar 6, 2026
10 checks passed
@notnotraju notnotraju deleted the rk/eccvm-external-audit-1-transcript-no-op branch March 6, 2026 12:38
github-merge-queue bot pushed a commit that referenced this pull request Mar 6, 2026
BEGIN_COMMIT_OVERRIDE
fix: add -g0 to zig presets to eliminate 11GB debug info bloat (#21071)
fix: resolve flaky p2p_client test race condition on ARM64 (#21088)
chore: remove domain iteration macros and address backing memory race
(#20988)
fix: [ECCVM] added domain separation for the multiset equality check.
(#20352)
feat: hybrid CRS hash verification — 8MB chunks, parallel, span-based
(#21113)
chore: unify splitting scalars interface (#20805)
chore: add a unique id to each origin tag (#20924)
chore: Native curve audit (#20936)
chore: Update bootstrap in test vk haven't changed script (#21153)
fix: use reduced form in WASM FromMontgomeryForm test (#21164)
chore: erase ephemeral secrets from memory in schnorr and aes (#21106)
chore: suppress clangd target triple version diagnostic (#21180)
feat: Optimise new claim calculation (#21179)
docs: add Quick Start build instructions to barretenberg README (#20951)
feat: batched chonk verification (#21083)
fix: link libc++ instead of libstdc++ for Rust FFI on Linux (#21203)
fix: [ECCVM] in the transcript table, no-ops force the next accumulator
to be 0. (#20849)
fix: resolve merge-train conflict with next (zig wrapper scripts + -g0)
(#21201)
fix: [ECCVM] rare edge case completeness issue when `z1 == 0` but `z2 !=
0` (#20858)
fix: use actual data extent for CommitmentKey in HypernovaDeciderProver
(#21206)
END_COMMIT_OVERRIDE
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci-barretenberg-full Run all barretenberg checks. ci-no-fail-fast Sets NO_FAIL_FAST in the CI so the run is not aborted on the first failure

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants