-
Notifications
You must be signed in to change notification settings - Fork 256
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 AdditiveGroup
trait + Field: AdditiveGroup
#577
Conversation
14e2ce7
to
9e68c0d
Compare
Hi @Pratyush ! I updated the PR with the changes you suggested over discord, can you please check it out? |
9e68c0d
to
a672e81
Compare
AdditiveGroup
trait + Field: AdditiveGroup
2a8748a
to
37685b2
Compare
37685b2
to
d1fc6d6
Compare
Hi @mmaker this looks mostly good. Could you add a section in the |
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.
This looks good now!
As followups to this PR, let's file an additional tracking issue to clean up the trait hierarchy:
- Make a new
ark-group
crate, - Move
AdditiveGroup
toark-group
(this might require some shenanigans in thatScalar
might no longer be aField
) - Let's also make a
MultiplicativeGroup
trait. - Finally, let's impl
MultiplicativeGroup
forField
and forPairingOutput
Great, any chance you can merge it? @yuwen01 needs it to work on ark-circom and update it to 0.4.0 |
Hm this is a breaking change to 0.4 as we are renaming traits and changing their contents. I don't think we can merge this in this release, and would probably have to wait until the next one. (Thankfully the next breaking release 0.5 should only be a few months away, and not 2 years away =P) |
agreed 👍 |
49a7b21
to
2537eba
Compare
Just curious: Arkworks handles many protocols in which subgroup checks become quite time consuming, so likely people do start doing non-prime order groups eventually. Any thoughts if this new trait improves that story? |
2537eba
to
2266869
Compare
* Add AdditiveGroup trait + Field: AdditiveGroup. This trait now integrates ZERO, double, double_in_place, and negate. Fix doctests accordingly (arkworks-rs#507) * Fix disambiguation of what is a ScalarField in bench-templates. Remove `ScalarField` from `CurveGroup` --------- Co-authored-by: Pratyush Mishra <pratyushmishra@berkeley.edu>
Description
closes: #507
Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.
Pending
section inCHANGELOG.md
Files changed
in the GitHub PR explorer