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

Tristan/war 529 deep sylow optimization #34

Closed
wants to merge 9 commits into from

Conversation

trbritt
Copy link
Collaborator

@trbritt trbritt commented Sep 6, 2024

This implements basic multi-precision integer arithmetic on the base field to begin totally removing the crypto_bigint dependency.

NOTE this is entirely standalone, as in only +, -, x, /, have been implemented but not integrated, aka you cannot just switch these two just yet, since there are methods like exp, sqrt, etc, that must still be implemented.

The division leaves much to be desired, and must be cleaned up and tightened heavily, as it curently does arithmetic in non-modular and modular forms.

Accuracy tests are written for basic stuff, and the full verification will come when we fully switch out crypto_bigint for these modules, since fp.rs has enough rigorous tests defined to verify the accuracy and speed of the scalar.rs.

Copy link

linear bot commented Sep 6, 2024

WAR-529 Deep sylow optimization

SIMD vectorized computations using dimensionals? Hand rolled finite field from organic heirloom tobacco? Seriously though, we can come up for air after WAR-540 and decide what's in or out of scope or needed to beat bn and become the defacto bn128 implementation in rust.

Copy link

codecov bot commented Sep 6, 2024

Codecov Report

Attention: Patch coverage is 89.51613% with 117 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
src/scalar/scalar.rs 88.24% 77 Missing ⚠️
src/scalar/const_choice.rs 71.66% 34 Missing ⚠️
src/scalar/inverter.rs 98.24% 6 Missing ⚠️

📢 Thoughts on this report? Let us know!

0xAlcibiades and others added 2 commits September 9, 2024 10:42
* [wip] first pass at framing arithmetic

* [wip] mult madness

* added some docs

* r

* interface from noether (#11)

* chore: bring in template

* fmt

* [wip] added egcd

---------

Co-authored-by: Tristan Britt <tristan.britt@mail.mcgill.ca>
Co-authored-by: Tristan Britt <53545754+trbritt@users.noreply.github.com>
@0xAlcibiades
Copy link
Member

@trbritt are we ever proceeding w this in our 80/20 time or should we close?

@trbritt trbritt closed this Jan 9, 2025
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