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

Field creation automated through macros #551

Merged
merged 9 commits into from
Jul 8, 2024
Merged

Field creation automated through macros #551

merged 9 commits into from
Jul 8, 2024

Conversation

DmytroTym
Copy link
Contributor

@DmytroTym DmytroTym commented Jul 1, 2024

Describe the changes

Params files for fields now only require modulus specified by the user (also twiddle generator and/or non-residue in case either or both are needed). Everything else gets generated by a macro which seems to be much cleaner and easier than using python scripts / doing it by hand like it used to be before.

Future work

I also tried to do some general cleanup and minor perf improvements of primitives. Spent quite a bit of time trying to create correction-minimising formulas (sort of what Niall does here but for all fields and not just EC formula for a specific base field). This turned out to be much harder than expected and though I think I got it most of the way, the performance gains don't seem to justify the remaining effort considering significant increase in code complexity. If anyone is interested in this direction of work please let me know, I have an (almost) working prototype locally.

Most primitives related improvements I can think of are easier to do so if anything is particularly important to icicle right now, let me know. I can probably work on it in the background. Cheers.

@DmytroTym DmytroTym merged commit 2d4059c into main Jul 8, 2024
26 checks passed
@DmytroTym DmytroTym deleted the feat/primitives branch July 8, 2024 07:39
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.

3 participants