On Wed, 17 Jan 2024 at 15:16, Spiros Maggioros <maggioroslo...@gmail.com> wrote:
>
> Hi everyone!

Hi Spiros,

> My name is Spiros Maggioros and i'm a 3rd year undegraduate electrical & 
> computer engineering student at National Technical University of Athens.I've 
> worked as a machine learning engineering intern at OTE(HTO), i'm the lead of 
> IEEEXtreme for the Greek section and a Computer Lab Assistant for my 
> university.I have my own computer science research team working on prediction 
> optimizations and algorithms.I would love to start contributing to SymPy and 
> start solving some issues.
>
> One year ago i wrote a paper for polynomials representation(in the sparse 
> representation) using AVL trees, and i would love to share my idea.

That sounds interesting. Do you have a link to it or can you explain
the idea briefly here?

> Also, i would love to help with the implementation of the Polynomial 
> GCD.Every help and details on what's the best way to contribute will be 
> helpful!

That's great. There was a GSOC project last Summer looking at
polynomial GCD which made some good progress but there is still plenty
more to do.

Polynomials in particular are a high priority item for SymPy. Right
now the two top priority items for polys are (any progress on either
would be good):

1. Improve SymPy's existing implementation and algorithms for polynomial gcd.
2. Expose Flint's sparse polynomials in python-flint and add the
wrapper code in SymPy so that SymPy can use them when python-flint is
available.

There is a start on the python-flint part here but it seems to be stalled:
https://github.com/flintlib/python-flint/pull/59

Working on python-flint requires working with C and Cython as well as
Python which might not be suitable.

As for SymPy's existing polynomial GCD algorithms there is a pull
request from GSOC 23 that never got finished:
https://github.com/sympy/sympy/pull/25442

I think that PR needs to be broken down. Some parts were extracted to
other PRs that got merged but the final piece didn't get finished.
Right now the problem with it is that it mixes up some things that
should be part of the general GCD preprocessing steps (like removing
unneeded variables) in with the PRS algorithm which should just be
implemented in a more direct way. The basic code there seems
reasonable but I don't think that it is organised in the right way.

Another thing that needs looking at is the code in
sympy/polys/modulargcd. It looks like good code but isn't used
anywhere and is not well tested.

For initial contribution you might want to look at something a bit
easier than working on the polys GCD code though. There are some 300
open issues with the polys tag if you are interested specifically in
polynomials:
https://github.com/sympy/sympy/issues?q=is%3Aissue+is%3Aopen+label%3Apolys+

--
Oscar

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sympy+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sympy/CAHVvXxSaRCwNLj0_EJSFFcqMExj%2BnSFmZ4RwMiauGGNBTQ7Nxg%40mail.gmail.com.

Reply via email to