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 foreign function for recursion #1154

Closed
1 task done
Tracked by #1098
kevaundray opened this issue Apr 14, 2023 · 2 comments · Fixed by #1594
Closed
1 task done
Tracked by #1098

Add foreign function for recursion #1154

kevaundray opened this issue Apr 14, 2023 · 2 comments · Fixed by #1594
Assignees
Labels

Comments

@kevaundray
Copy link
Contributor

Problem

Once recurson is added to acvm we would want a way to support this feature for users.

Proposed solution

As usual, we can add a foreign function which will handle this, the proposed function signature is as follows:

#[foreign(recursion)]
fn verify_proof(proof : [u8], verification_key : [u8], public_inputs : [u8]) -> bool;

Alternatives considered

No response

Additional context

No response

Submission Checklist

  • Once I hit submit, I will assign this issue to the Project Board with the appropriate tags.
@vezenovm
Copy link
Contributor

As per the discussion in noir-lang/acvm#198 the function signature will be changed to take in an input aggregation object and an output aggregation object:

#[foreign(verify_proof)]
fn verify_proof(_verification_key : [Field], _proof : [Field], _public_input : Field, _input_aggregation_object : [Field]) -> [Field] {}

@Savio-Sou Savio-Sou moved this from 📋 Backlog to 🏗 In progress in Noir Jun 5, 2023
@Savio-Sou
Copy link
Collaborator

Savio-Sou commented Jul 3, 2023

@github-project-automation github-project-automation bot moved this from 🏗 In progress to ✅ Done in Noir Jul 3, 2023
@Savio-Sou Savio-Sou linked a pull request Jul 21, 2023 that will close this issue
5 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
Archived in project
3 participants