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

Add recursive proof Solidity tests #3127

Closed
Savio-Sou opened this issue Oct 30, 2023 · 1 comment
Closed

Add recursive proof Solidity tests #3127

Savio-Sou opened this issue Oct 30, 2023 · 1 comment
Labels
C-barretenberg Component: barretenberg cryptography library

Comments

@Savio-Sou
Copy link
Member

Savio-Sou commented Oct 30, 2023

Context

Now that basic Solidity verifier tests have been reintroduced with #2997, it would be great to expand the tests to cover more barretenberg features exposed through Noir to better guarantee they work end-to-end from a Noir app dev perspective.

Separately, we currently do have a recursive test(?) but that doesn't seem to capture the failing workflow below.

Problem

Similar to #3048, I would suggest prioritizing also the testing of recursive proof given issues reported with the particular function:

The failing workflow goes by:

  1. We generated an inner proof with bb
  2. We then generated a final proof which verified the inner proof with bb
  3. We then tried to verify that outer proof with the solidity verifier contract

Extending our current tests to cover the failing workflow asap should help provide further insights on how to debug the existing issues.

Objectives

(Open to discussion as I am in lack of barretenberg's technical context to judge if these make sense.)

Extend tests to cover:

  1. Generate an inner proof as a part of recursion
  2. Generate a final proof that verifies the inner proof
  3. Verify the final proof natively
  4. Generate a corresponding Solidity verifier
  5. Verify the final proof via the Solidity verifier

Using:

  1. Native barretenberg
  2. bb binary
  3. bb.js
@Savio-Sou Savio-Sou added the C-barretenberg Component: barretenberg cryptography library label Oct 30, 2023
@github-project-automation github-project-automation bot moved this to Todo in A3 Oct 30, 2023
@Savio-Sou Savio-Sou added this to Noir Oct 30, 2023
@github-project-automation github-project-automation bot moved this to 📋 Backlog in Noir Oct 30, 2023
@Maddiaa0
Copy link
Member

closed by #3161

@github-project-automation github-project-automation bot moved this from Todo to Done in A3 Nov 23, 2023
@github-project-automation github-project-automation bot moved this from 📋 Backlog to ✅ Done in Noir Nov 23, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-barretenberg Component: barretenberg cryptography library
Projects
Archived in project
Development

No branches or pull requests

2 participants