-
Notifications
You must be signed in to change notification settings - Fork 327
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
chore!: cleanup recursion interface (#3528)
This PR aims to fix some of the long-standing issues with the recursion interface, in particular: - Users needing to manually handle the aggregation objects - asking users to pass the barretenberg proofs as inputs, and the public inputs. - The first is fixed by removing the notion of aggregation objects from the Noir program and defining it as a "proof system public input". - The second is fixed by defining a proof as only containing the proof elements and public inputs separately. (There is a PR up to do this more extensively, but it was temporarily shelved as we applied the changes more upstream to see what broke, after the recursion changes are made, I think we can merge that PR). There are a few other things that I'd like to address but may be left for another PR (due to them being significant breaking changes): - Users need to convert their proof and VK from bytes to packed fields. We currently have a 30K budget in terms of gates so it _should_ be possible to do this conversion in circuit. The benefits of this is that proofs no longer look - is_recursive can be added as a circuit definition, removing the need for the `is_recursive` flag # Checklist: Remove the checklist to signal you've completed it. Enable auto-merge if the PR is ready to merge. - [ ] If the pull request requires a cryptography review (e.g. cryptographic algorithm implementations) I have added the 'crypto' tag. - [ ] I have reviewed my diff in github, line by line and removed unexpected formatting changes, testing logs, or commented-out code. - [ ] Every change is related to the PR description. - [ ] I have [linked](https://docs.github.com/en/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue) this pull request to relevant issues (if any exist). --------- Co-authored-by: Maxim Vezenov <mvezenov@gmail.com>
- Loading branch information
1 parent
c0a24fb
commit 839ff73
Showing
10 changed files
with
136 additions
and
48 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Binary file modified
BIN
-143 Bytes
(89%)
noir/test_programs/acir_artifacts/double_verify_proof/target/acir.gz
Binary file not shown.
Binary file modified
BIN
-202 Bytes
(98%)
noir/test_programs/acir_artifacts/double_verify_proof/target/witness.gz
Binary file not shown.
Oops, something went wrong.