Skip to content

Feat/fast division #1001

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

Open
wants to merge 9 commits into
base: main
Choose a base branch
from
Open

Conversation

0xLucqs
Copy link
Contributor

@0xLucqs 0xLucqs commented Apr 28, 2025

TITLE

Description

Description of the pull request changes and motivation.

Type of change

Please delete options that are not relevant.

  • New feature
  • Bug fix
  • Optimization

Checklist

  • Linked to Github Issue
  • Unit tests added
  • This change requires new documentation.
    • Documentation has been added/updated.
  • This change is an Optimization
    • Benchmarks added/run

@0xLucqs 0xLucqs requested a review from a team as a code owner April 28, 2025 11:42
@0xLucqs 0xLucqs force-pushed the feat/fast_division branch from a0cd1b6 to d21d834 Compare April 28, 2025 11:43
@0xLucqs 0xLucqs force-pushed the feat/fast_division branch from d21d834 to 28a868b Compare April 28, 2025 11:45
let d = n - m; // Degree of the quotient
let a_rev = self.reverse(n);
let b_rev = divisor.reverse(m);
let inv_b_rev = Self::invert_polynomial_mod::<F>(&b_rev, d + 1)?;
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't get why this is faster than just evaluating the divisor polynomial at the FFT points, doing batch inverse and then multiplying everything out and interpolating. The method for inversion seems a bit convoluted

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think your suggestion works when there is a remainder

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