-
Notifications
You must be signed in to change notification settings - Fork 140
Commitment scheme abstraction with all previous improvements #84
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
Commitment scheme abstraction with all previous improvements #84
Conversation
6b5bd07 to
2d45008
Compare
8d60da2 to
70c11c1
Compare
70c11c1 to
d88de9a
Compare
therealyingtong
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM.
I only reviewed the final three commits; I did not review the Abstraction PR, or the already-merged PRs.
| /// the reasons that the circuit is not satisfied. | ||
| /// Constraints are only checked at `gate_row_ids`, | ||
| /// and lookup inputs are only checked at `lookup_input_row_ids`, parallelly. | ||
| pub fn verify_at_rows_par<I: Clone + Iterator<Item = usize>>( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Directly editing iter() -> par_iter() in verify_at_rows would make for a smaller diff. But I suppose that might cause conflicts in future rebases.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, was trying to just add things and avoid editing things for easier rebasing.
|
Can we maybe include: #86 ? |
be78085 to
801135d
Compare
davidnevadoc
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great work!
I went through all the changes paying special attention to the commits that are not part of a reviewed and approved PR. Overall everything LGTM :)
The only comment I'd make is that we maybe should parallelize compute_inner_product and include that change as part of this PR.
801135d to
470831c
Compare
@pinkiebell In trait EDIT: I just add another method |
470831c to
558a89c
Compare
@davidnevadoc I just realized that |
I think it's unnecessary to introduce parallelize to This PR is enough large so we should merge this and after that, improve more. |
558a89c to
8926366
Compare
Yes! That's all I needed :)
At the moment, I generated different keys for each |
Did you truncate the
Yes I think so, I have tried |
Yes. And after I took a look at |
50b8819 to
ac9839e
Compare
CPerezz
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Awesome job mate! Thanks for working on this!
ac9839e to
ebfb648
Compare
ebfb648 to
7724683
Compare
Add SHPLONK and GWC varians of KZG
…alo2 benches with main
7724683 to
3e4b27f
Compare
This PR aims to pick all previous improvements base on
abstraction, to make further integration easier. Each improvement is squashed into a single commit for easier rebasing in the future, and some are slightly modified to make as less changes as possible, they includes (in order):lookup_any#8With 4 more changes I made/picked:
MockProver::verify_*, cache the table if its identifier is same to previous one (which in most case several lookup to same table will be allocated adjacently), and check the cell indexes first in permutation check.MockProver::verify_at_rows_par(modified) by @spherel