Skip to content

Add rational parametrization for algebraic curves#106

Merged
mohabsafey merged 43 commits intoalgebraic-solving:mainfrom
rprebet:paramcurve
Sep 13, 2025
Merged

Add rational parametrization for algebraic curves#106
mohabsafey merged 43 commits intoalgebraic-solving:mainfrom
rprebet:paramcurve

Conversation

@rprebet
Copy link
Contributor

@rprebet rprebet commented Jun 26, 2025

I chose the terminology and data structure according to the rational_parametrization function as it can be seen as a one-dimensional version of it. For this reason I included it in the "solvers" documentation page.
However the source code in a separate file param-curve.jl as it is not just an interface to msolve.

@mohabsafey
Copy link
Collaborator

Many thanks Rémi for this PR. I started to review your code ; I will go through in the coming days ; I may be slow but there are already two comments with suggestions of modifications

R = parent(first(F))
N = nvars(R)
if check_gen let
local INEW = Ideal(change_base_ring.(Ref(GF(65521)), vcat(F, gens(R)[N-1]-rand(ZZ,-100:100))))
Copy link
Collaborator

Choose a reason for hiding this comment

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

Line 69: same here, it is a bit dangerous to do these tests again over the same (small) prime field GF(65521); some randomisation should be introduced

Copy link
Contributor Author

@rprebet rprebet Jun 30, 2025

Choose a reason for hiding this comment

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

Also done in e3837be.
Do you think we should take a different p than above in Itest?

Copy link
Collaborator

Choose a reason for hiding this comment

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

Yes, I think you should take here a different prime to strengthen the tests

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Done in ddedb11

@ederc
Copy link
Collaborator

ederc commented Sep 11, 2025

@mohabsafey @rprebet Is this ready to be merged from your point of view? If so I would like to add it to the v0.10.0 release.

@mohabsafey
Copy link
Collaborator

There is still one change to perform in the code (some missing genericity test). Rémi is working on this. Can we wait for a couple of days before having the next release ?

@ederc
Copy link
Collaborator

ederc commented Sep 12, 2025

No problem, thanks for working on it.

@rprebet
Copy link
Contributor Author

rprebet commented Sep 12, 2025

I'm done

@mohabsafey mohabsafey merged commit bf5225a into algebraic-solving:main Sep 13, 2025
8 checks passed
@rprebet rprebet deleted the paramcurve branch September 24, 2025 14:19
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