Skip to content

Review/ecsm ecdas corrections - #796

Merged
jotabulacios merged 3 commits into
feat/ecsm-spec-updatefrom
review/ecsm-ecdas-corrections
Jul 8, 2026
Merged

jotabulacios merged 3 commits into
feat/ecsm-spec-updatefrom
review/ecsm-ecdas-corrections

Conversation

@diegokingston

Copy link
Copy Markdown
Collaborator

No description provided.

NUM_COLUMNS is 667 after k widened 32 bytes -> 256 bit-columns and
xg_sub_p (16 halfwords) was added. Comment-only; no behavior change.
The mu-gated R*P term (rq()) is applied in all three relations -- Lambda,
Xr, and Yr (ecdas.rs s_i: Lambda/Xr/Yr all call rq()), not just lambda/xR.
Comment-only; no behavior change.
The mu-gated p^2 term was multiplied by mu once per inner-loop term
(up to i+1 times per limb). Accumulate the constant sum first and apply
mu once per limb, mirroring ECDAS rq(). Algebraically identical
(mu distributes over the sum; p_byte_expr is a constant), degree
unchanged; ~Sum(i+1) fewer field muls per Yg limb over the LDE domain.

Validated: ecsm_tests::yg_padding_closes_via_mu_gated_p2_and_b,
constraints_hold_on_generated_trace, ecsm_constraint_set_folder_capture_agree,
and test_prove_elfs_ecsm{,_multi} + forged-mu rejection all pass.
@diegokingston
diegokingston marked this pull request as ready for review July 8, 2026 20:49
@jotabulacios
jotabulacios merged commit 860e323 into feat/ecsm-spec-update Jul 8, 2026
12 checks passed
@jotabulacios
jotabulacios deleted the review/ecsm-ecdas-corrections branch July 8, 2026 21:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants