Skip to content

Conversation

@fredrik-johansson
Copy link
Collaborator

Fixes #2421.

Explanation: the recently introduced initial value selection (taken from MPSolve) chooses a sequence of radii based on the convex hull of the logarithmic magnitudes of the coefficients, and places points on the circles with those radii with a quasi-uniform angular distribution.

For some polynomials, notably with coefficients in geometric progression, it can happen that one gets two or more instances of the same radius (within rounding error). For unfortunate combinations of degrees and coefficients, it could happen that the same angle was generated twice, resulting in a duplicated initial value. We add a small offset to avoid this possibility.

@fredrik-johansson fredrik-johansson merged commit 0259fc8 into flintlib:main Oct 27, 2025
13 checks passed
@thofma
Copy link
Contributor

thofma commented Oct 27, 2025

Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

non-monic polynomials in acb_poly_find_roots

2 participants