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

UltraHonk on Grumpkin #636

Closed
maramihali opened this issue Jul 27, 2023 · 2 comments
Closed

UltraHonk on Grumpkin #636

maramihali opened this issue Jul 27, 2023 · 2 comments

Comments

@maramihali
Copy link
Contributor

This requires templating the plookup_tables folder so that theUltraCircuitBuilder can work on Grumpkin and have the UltraGrumpkin flavor use Grumpkin + IPA.

@maramihali
Copy link
Contributor Author

if we decide we will need UltraHonk on Grumpkin

maramihali added a commit to AztecProtocol/aztec-packages that referenced this issue Jul 31, 2023
# Description

This PR provides an initial solution for having a complete grumpkin
flavor in standard honk and contains the following modifications:
* the `FileCrsFactory` now has functionality to produce CRSes for both
curves (with their key differences) and I addressed any dependent
changes in the codebase
* the PCSes are now curve agnostic, having the curve set by their
parameters and missing tests were added (shlponk\gemini on both grumpkin
and bn254 which surfaced a bug in shplonk; unit testing
gemini+shplonk+ipa as only the kzg-variant was tested)
* continued work on enabling field-agnostic gates from
(AztecProtocol/barretenberg#557, i have to
link issues manually)
* to avoid divison by zero caused by inverting the root of unity in
`EvaluationDomain<grumpkin::fr>` we hardcode the roots of unity to 1
given Grumpkin does not have many roots of unity.

Opens AztecProtocol/barretenberg#635 
AztecProtocol/barretenberg#637
AztecProtocol/barretenberg#636, 
AztecProtocol/barretenberg#640
for subsequent work.

# Checklist:

- [ x] I have reviewed my diff in github, line by line.
- [ x] Every change is related to the PR description.
- [ x] 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 the issue(s) that it resolves.
- [x ] There are no unexpected formatting changes, superfluous debug
logs, or commented-out code.
- [x ] The branch has been merged or rebased against the head of its
merge target.
- [ x] I'm happy for the PR to be merged at the reviewer's next
convenience.
AztecBot pushed a commit that referenced this issue Jul 31, 2023
# Description

This PR provides an initial solution for having a complete grumpkin
flavor in standard honk and contains the following modifications:
* the `FileCrsFactory` now has functionality to produce CRSes for both
curves (with their key differences) and I addressed any dependent
changes in the codebase
* the PCSes are now curve agnostic, having the curve set by their
parameters and missing tests were added (shlponk\gemini on both grumpkin
and bn254 which surfaced a bug in shplonk; unit testing
gemini+shplonk+ipa as only the kzg-variant was tested)
* continued work on enabling field-agnostic gates from
(#557, i have to
link issues manually)
* to avoid divison by zero caused by inverting the root of unity in
`EvaluationDomain<grumpkin::fr>` we hardcode the roots of unity to 1
given Grumpkin does not have many roots of unity.

Opens #635 
#637
#636, 
#640
for subsequent work.

# Checklist:

- [ x] I have reviewed my diff in github, line by line.
- [ x] Every change is related to the PR description.
- [ x] 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 the issue(s) that it resolves.
- [x ] There are no unexpected formatting changes, superfluous debug
logs, or commented-out code.
- [x ] The branch has been merged or rebased against the head of its
merge target.
- [ x] I'm happy for the PR to be merged at the reviewer's next
convenience.
@codygunton
Copy link
Collaborator

We don't need this. If we did decide to take a Halo2-style approach, we would likely use the standard arithmetization anyway.

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

No branches or pull requests

2 participants