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

Integrate Vamp-IR into Taiga #151

Open
3 tasks done
bazzilic opened this issue Mar 24, 2023 · 6 comments · Fixed by #157
Open
3 tasks done

Integrate Vamp-IR into Taiga #151

bazzilic opened this issue Mar 24, 2023 · 6 comments · Fixed by #157
Assignees
Labels
enhancement New feature or request prio:high

Comments

@bazzilic
Copy link
Contributor

bazzilic commented Mar 24, 2023

  • Import trivial VPs (1=1 and 1=0) and attempt to prove them within taiga codebase; adjust taiga if necessary.
  • List questions for Vamp-IR team and functional requirements for Vamp-IR to be integrated into Taiga (e.g., I think currently Vamp-IR is only available as a separate binary, but we’d probably like to see it as a library we can import into taiga code; we need vampir to output a VK, which I am not sure it currently does)
  • Further determine scope of this task and add more items below
@bazzilic
Copy link
Contributor Author

bazzilic commented Apr 3, 2023

Currently blocked by anoma/vamp-ir#74

@bazzilic
Copy link
Contributor Author

bazzilic commented Apr 11, 2023

Also blocked by anoma/vamp-ir#57
If this issue is resolved, then the other blocker disappears as well.

@XuyangSong XuyangSong linked a pull request Apr 23, 2023 that will close this issue
2 tasks
@XuyangSong
Copy link
Collaborator

Some problems needed to discuss with Vampir Team:
#157 (comment)

The basic underlying gadgets we need to create Taiga Predicate(mandatory/basic constraints):
Poseidon hash, Elliptic curve operation(addition and multiplication), sinsemilla commitment

@XuyangSong
Copy link
Collaborator

XuyangSong commented May 11, 2023

Some improvements to be made:

  • Export the instances(public inputs) from vamp_ir. fixed by handle the public inputs in vampir circuit #166
  • Correctly handle the instances(public inputs) from vamp_ir. There might be a bug about instances handling based on Halo2 in vamp_ir. fixed by handle the public inputs in vampir circuit #166
  • Remove the params from the VampIRValidityPredicateCircuit when vamp_ir supports setting the params size manually.
  • Add an interface to create VP from proof and verifying key when vamp_ir can export the verifying key

@XuyangSong
Copy link
Collaborator

XuyangSong commented Jul 26, 2023

Remove the params from the VampIRValidityPredicateCircuit when vamp_ir supports setting the params size manually.

Some VampIR VP circuit tests failed because of the small params. It will be solved by setting bigger params manually. We need the feature in VampIR as above.
The failed tests are ignored. Retest them when we have the feature.

@paulcadman
Copy link
Contributor

Proposed prove and verify vamp-ir API that exports the verifying key anoma/vamp-ir#120

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request prio:high
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants