[GSOC 2026] Zippels algorithm implementation (GCD improvement project)

86 views
Skip to first unread message

Luca Bertoni

unread,
Mar 7, 2026, 7:28:21 AMMar 7
to sympy
Hello dear sympy community, I write to share my proposal idea with you in case you have already some early feedbacks to share with me.
My idea was to implement the zippel algorithm for the gcd calculation of sparse polynomials. 
-Is this idea suitable for a gsoc project? 
-If yes what project lenght would fit best to it?

I gained some familiarity with the polys module while working on pr #29312, wich is also gcd related and based on an old unmerged gsoc pr.
I'm still studying Zippels paper to understand deeply the algorithm and how it could be implemented practically in sympy. I will share a proposal in the next weeks.

Best regards, Luca Bertoni

Oscar Benjamin

unread,
Mar 7, 2026, 7:34:41 AMMar 7
to sy...@googlegroups.com
On Sat, 7 Mar 2026 at 12:28, Luca Bertoni <kaiserve...@gmail.com> wrote:
>
> Hello dear sympy community, I write to share my proposal idea with you in case you have already some early feedbacks to share with me.
> My idea was to implement the zippel algorithm for the gcd calculation of sparse polynomials.
> -Is this idea suitable for a gsoc project?
> -If yes what project lenght would fit best to it?

Yes it is a suitable idea for a GSOC project.

I think that just the algorithm could be done in a short project but
it is also possible to have a bigger project with a broader focus on
improving polynomial GCD and benchmarks and improving the other
algorithms and so on.

The question about project duration should really be a question for
you: how much time do you want to spend on a project?

--
Oscar

Luca Bertoni

unread,
Mar 7, 2026, 12:53:03 PMMar 7
to sympy
Ok, thanks for the rapid answer. I will reflect about the project duration. 
Best regards, Luca Bertoni

Luca Bertoni

unread,
Mar 26, 2026, 8:31:50 AM (2 days ago) Mar 26
to sympy
Hello Oscar, at the end I decided to go for a long project, (350 hours) that besides Zippel's algorithm includes also: 
- finalization of the implementation of the sparse subresultant prs algorithm
-benchmarking of the various gcd algorithms (both old and newly implemented) on different types of polynomials 
-creation of a dispatching logic to choose the correct algorithm when gcd is called, based on the bechmarking results.

Here is a link to my proposal where every step is described in detail, in case you have time and interest in taking a look.
https://docs.google.com/document/d/1xkyiVnZ3skfN-1WbIgdJFAWNxqLbUghY53K9AZT6loA/edit?usp=sharing

Do you have any thoughts on this project?

Best regards, Luca Bertoni
Il giorno sabato 7 marzo 2026 alle 13:34:41 UTC+1 Oscar ha scritto:
Reply all
Reply to author
Forward
0 new messages