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 derived impl of squaring for MontBackend #530

Merged
merged 11 commits into from
Dec 10, 2022
Merged

Conversation

Pratyush
Copy link
Member

@Pratyush Pratyush commented Dec 1, 2022

Description

Implements unrolled squaring algorithm for prime fields via the MontConfig macro. Incorporates the fix from #526.


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.

  • Targeted PR against correct branch (master)
  • Linked to GitHub issue with discussion and accepted design OR have an explanation in the PR that describes this work.
  • Wrote unit tests
  • Updated relevant documentation in the code
  • Added a relevant changelog entry to the Pending section in CHANGELOG.md
  • Re-reviewed Files changed in the GitHub PR explorer

@Pratyush Pratyush requested review from a team as code owners December 1, 2022 00:11
@Pratyush Pratyush requested review from mmagician and weikengchen and removed request for a team December 1, 2022 00:11
@mmagician
Copy link
Member

  1. Where does the unroll actually happen? Is this only due to the attribute macro on the trait definition? If that's the case then already the default impl should be getting unrolled no?
  2. What's the advantage of having two implementations, where the default trait impl and the one derived from macro are the same, as far as I can see? I think I might have missed some optimization step.

@Pratyush Pratyush merged commit be50d0d into master Dec 10, 2022
@Pratyush Pratyush deleted the macro-for-square branch December 10, 2022 03:06
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

Successfully merging this pull request may close these issues.

2 participants