Skip to content

Conversation

@srinathsetty
Copy link
Contributor

No description provided.

@srinathsetty srinathsetty merged commit 8b68f35 into main Jun 25, 2025
7 checks passed
@srinathsetty srinathsetty deleted the sumcheck branch June 25, 2025 22:02
srinathsetty added a commit that referenced this pull request Sep 25, 2025
…ere (#38)

* remove matrix evals from the prover

* make tau_at_rx public, cleanup ZK sum-check code; remove unnecessary parameters

* Cargo clippy
srinathsetty added a commit that referenced this pull request Oct 1, 2025
* feat: multi-round circuit trait (#1)

* multiround

* comments

* separate challenges

* feat: multiround instance and shape (#2)

* feat: multiround instance and shape

* clippy

* remove option

* fix new var calc

* remove public val from shape for now

* only absorb previous

* refactor to avoid clone

* intermediary simple permutation test (no challenges)

* fix bug, finish permutation test

* return err

* relaxed (#4)

* feat: folding (#5)

* fold

* clippy fmt docs

* validation of split instance

* permutation test

* transcript absorb

* remove commit T relaxed

* remove fold relaxed

* remove re-export

* feat: zk spartan (#6)

* zk spartan

* clena docs

* rename

* public values

* remove eval_Z

* docs

* squaring test

* interleave

* remove unused

* docs

* feat: integrate zk into spartan (#7)

* checkpoint

* checkpoint 1

* remove adapter

* debug logs removed

* nit

* remove option

* remove

* verify evals at the end

* unify transcript except tau

* same transcript for tau

* move to sumcheck

* delete more code

* nits

* snake

* tau check verifier

* remove interactive session

* remove unwrap or

* remove _orig

* naming

* process round returning chal

* move the conversion to reg to setup

* move inner/outer sumcheck

* call validate

* spartan_verifier_circuit

* refactor sumcheck

* include chal

* cleanup

---------

Co-authored-by: Srinath Setty <srinath@microsoft.com>

* feat: integrate zk into spartan (#7)

* checkpoint

* checkpoint 1

* remove adapter

* debug logs removed

* nit

* remove option

* remove

* verify evals at the end

* unify transcript except tau

* same transcript for tau

* move to sumcheck

* delete more code

* nits

* snake

* tau check verifier

* remove interactive session

* remove unwrap or

* remove _orig

* naming

* process round returning chal

* move the conversion to reg to setup

* move inner/outer sumcheck

* call validate

* spartan_verifier_circuit

* refactor sumcheck

* include chal

* cleanup

---------

Co-authored-by: Srinath Setty <srinath@microsoft.com>

* opt: small padding (#8)

* opt: small padding

* docs

* docs

* Fix lints: remove unnecessary parentheses (unused_parens) (#9)

* opt: shrink width (#10)

* fix: is_small for multiround (#11)

* optimize computation of eval_A, eval_B, and eval_C (#13)

* opt: par fold (#14)

* opt: remove fold inst (#15)

* opt: remove fold inst

* remove

* docs

* docs

* opt: jemalloc and clones (#16)

* opt: jemalloc

* clone removal

* remove unneeded clone

* feature

* feat: padding (#19)

* absorb missing public IO (#22)

* absorb missing public IO

* add transcript absorb in a uniform fashion with spartan.rs

* feat: zk neutronnova (#27)

* Implement zero-knowledge neutron nova protocol

- Add NIFS sumcheck implementation with ZK support
- Implement prove_zk in NIFS with multi-round verifier circuit integration
- Separate eval step and core functionality
- Add comprehensive logging and performance instrumentation
- Clean up debugging code and optimize memory allocations
- Integrate with multi-round Spartan witness system
- Add proper challenge derivation via Fiat-Shamir
- Fix API compatibility with updated check_partial function

* fmt

* use mr commitment width

* eval_x (#28)

* fix: pad Az/Bz/Cz to match tau length for outer sumcheck (#29)

* neutronnova: pad Az/Bz/Cz to match tau length for outer sumcheck; fix OOB under parallelism

* fmt

* make change to equalize

* fmt remove debug logs

* edits

---------

Co-authored-by: Ubuntu <zkid@zkid.ukmmb14z4vuuja3bcp1n0y0tha.phxx.internal.cloudapp.net>

* Finish making the proofs zero-knowledge (#32)

* eliminate the need for partial commitment type

* checkpoint

* fix bug

* switch ordering

* remove eval_W; cut unnecessary ck_s

* connect ZKPCS with NeutronNova

* remove sensitive info from proof

* Update src/spartan.rs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Darya Kaviani <daryakavi@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Rerandomize prep state (#33)

* add rerandomization to spartan prep state

* rerandomize neutronnova prep_snark

* cargo clippy

* optimize eval_W by reusing work from sum-check prover (#34)

* eliminate the need to evaluate W at r_y

* optimize eval_W in neutronnova

* Simplifications to ZK circuit (#36)

* simplifications

* reorder comm_W round to be one before, avoids linking

* fix off by one in the verifier + move code around

* Eliminate matrix evals from spartan prover; additional cleanup elsewhere (#38)

* remove matrix evals from the prover

* make tau_at_rx public, cleanup ZK sum-check code; remove unnecessary parameters

* Cargo clippy

* opt: neutronnova zk optimizations (#39)

* linear combination allocs removed

* tests

* clean

* remove dead code

* delete unneeded test

* quotient

* unnecessary constraints

* clean

* add back constraints

* additional cleanup

* cleanup NIFS verifier

* cargo fmt

* additional cleanup

* simplify code

* substantial cleanup of final step of outer sum-check; streamline the two circuits

* remove c_outer challenge that is not necessary

* clippy

* further cleanup

* further cleanup

* further simplifications

* cleanup

* refactor code

* code cleanup

* cleanup

* global rename to use vc as a shorthand for verifier circuit

* Update src/zk.rs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/zk.rs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/neutronnova.rs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Srinath Setty <srinath@microsoft.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* fixes

* ZK fixes (#44)

* add missing

* cargo fmt

* bring back non-zk Spartan

* cleanup

* update CI

* small fixes

* fix tests

* update README.md

* fix

* fix version

---------

Co-authored-by: Darya Kaviani <daryakavi@gmail.com>
Co-authored-by: Ubuntu <zkid@zkid.ukmmb14z4vuuja3bcp1n0y0tha.phxx.internal.cloudapp.net>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
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