Hi S.Y. Lee, I didn't see this message until now.
I think you would definitely be good as a mentor. It's not much
different from what you already do with helping people with pull
requests, except you would be helping one person with a project, and
making sure they keep on track for their timeline, and meet with them
once a week on Gitter.
There are no requirements about being new to the project to be a
student. As long as you meet the GSoC eligibility requirements you can
apply. Be aware that being an existing contributor does not guarantee
acceptance either. You would still need to write a good proposal.
I looked at your matrices ideas and they look good. I think the idea
of using data types from the polys is a particularly important one. It
isn't so much about supporting esoteric things like finite fields, but
rather making it so that a matrix has a fixed domain that it operates
in, similar to the polys. For instance, if you create Poly(x**2 + y*x,
x) then it creates the coefficient ring Z[y] as the "domain". This
ring has very fast operations that are very specific to it, so that
operations on things that are in Z[y] can be very fast. In the
matrices, if a matrix knew that all its elements were part of some
rational function field, say Q(x), then it could use the low-level
polys classes to operate on those very quickly. Furthermore things
like zero equivalence would be much faster. Instead of calling some
combination of simplification functions, zero equivalence would fall
directly out of the representation of the elements (since zero
equivalence of rational functions is trivial). It would also prevent
expression blow up since the polys domains keep things in canonical
form. The goal here would be to improve the performance of the
matrices by a lot. For example, if you dig into the heurisch
algorithm, whenever it is slow (which is often), it is trying to
compute the rref on a large (on the order of 1000 by 1000) sparse
matrix of polynomials in several variables. See
https://github.com/sympy/sympy/issues/6841 and
https://github.com/sympy/sympy/issues/4540.
Aaron Meurer
> --
> 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+un...@googlegroups.com.
> To view this discussion on the web visit
https://groups.google.com/d/msgid/sympy/50f9e60f-2552-43ec-96d3-8bf8d9ffebd7%40googlegroups.com.