Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update the RecursiveSNARK API (Nova forward port) #87

Merged
merged 2 commits into from
Oct 30, 2023

Conversation

huitseeker
Copy link
Contributor

@huitseeker huitseeker commented Oct 30, 2023

Ports microsoft/Nova#238 and microsoft/Nova#242 (squashed together, as part of #242 reverts part of #238).

TL;DR, z0 no longer needs to be provided to Nova on every prove_step, and the creation of the RecursiveSNARK copies a set of z0_{primary, secondary} passed by reference. This is expected to require adjustment in Lurk.

I added one commit for the SuperNova adjustments.

* remove unused digest computations

* avoid a verifier having to recompute a digest

* update crate version

Restore digest computation and fix API inconsistency (#242)

* Revert "Digest simplifications (#238)"

This reverts commit 71ecb66.

* upgrade neptune

* make the public interface uniform wrt refs vs. copies

* simplify prove_step
@huitseeker huitseeker marked this pull request as draft October 30, 2023 13:47
huitseeker added a commit to huitseeker/lurk-rs that referenced this pull request Oct 30, 2023
- Updated the `nova` dependency branch in Cargo.toml for compatibility testing
- adapts tohttps://github.com/lurk-lang/arecibo/pull/87
- Updated `RecursiveSNARK` struct in `supernova/mod.rs` to include `z0_primary` and `z0_secondary` fields, simplifying method parameters.
- Refactored `prove_step` method in `RecursiveSNARK` struct to leverage the new instance variables, `z0_primary` and `z0_secondary`,
- Replaced all usages of `z0_primary` and `z0_secondary` in function calls with their respective instance variables.
@huitseeker huitseeker force-pushed the forward_port_238_242 branch from 9f93572 to 95796df Compare October 30, 2023 14:21
@huitseeker huitseeker marked this pull request as ready for review October 30, 2023 14:32
@huitseeker
Copy link
Contributor Author

huitseeker commented Oct 30, 2023

Companion PR at lurk-lab/lurk-beta#811.

huitseeker added a commit to huitseeker/lurk-rs that referenced this pull request Oct 30, 2023
- Updated the `nova` dependency branch in Cargo.toml for compatibility testing
- adapts tohttps://github.com/lurk-lang/arecibo/pull/87
@huitseeker huitseeker added this pull request to the merge queue Oct 30, 2023
Merged via the queue into dev with commit f81bd4c Oct 30, 2023
4 of 6 checks passed
@huitseeker huitseeker deleted the forward_port_238_242 branch October 30, 2023 19:33
github-merge-queue bot pushed a commit to lurk-lab/lurk-beta that referenced this pull request Oct 30, 2023
* Adapt to upstream Nova RecursiveSNARK API changes

- Updated the `nova` dependency branch in Cargo.toml for compatibility testing
- adapts tohttps://github.com/lurk-lang/arecibo/pull/87

* refactor: Adapt to upstream Supernova changes

- Removed the unnecessary passing of `&z0_primary` and `&z0_secondary` as arguments in the `prove_step` method.

* fix: target the dev branch
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.

3 participants