Query Regarding Contributing towards Sympy

65 views
Skip to first unread message

Aizen

unread,
Aug 9, 2019, 4:57:21 AM8/9/19
to sympy
Hello. I am Yash, and I am pursuing a Masters in Mathematics and Statistics from the Indian Insitute of Science Education and Research, Kolkata. I also work in Sentiment Analysis, Algorithmic Prediction, and Web Development. 
I was looking for projects in Python and Mathematics in the Google Summer of Code Database and came across Sympy. I want to contribute to the development of this project. I am new to open source. Can anyone guide me towards the steps for it? How do I request to work on a new feature or new topic implementation in Statistics and Discrete Mathematics?
Thanks

Jason Moore

unread,
Aug 9, 2019, 11:25:26 AM8/9/19
to sympy
Yash,


Get familiar with using the software, setup your development environment, and then look for issues to solve. Let us know if you have any questions.

Jason

--
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/aec113cc-f4f3-43dc-973c-1def208d5f67%40googlegroups.com.

Aizen

unread,
Aug 10, 2019, 11:53:34 AM8/10/19
to sympy
Ok. 

Thank You for your response. 

I will do as suggested.

Yash

Aizen

unread,
Sep 2, 2019, 8:56:49 AM9/2/19
to sympy
I have spent time getting familiar with using Sympy regularly. I read the page regarding `Introduction to Contributing`, and it says that I should start by solving issues first(the easy ones). I would love to do that, but the reason I want to contribute is, as I and my peers work in the related stuff and we have to code from scratch every time on similar things. I realized that a lot of people use the same things and it would help if Sympy could provide that.
I want to introduce some new functionality from another field of mathematics which is not there in Sympy yet, but I believe would be a great addition for people in mathematical and statistical analysis.
How should I approach towards making a proposal for the same before I start contributing to that functionality, I am no experience about contributing at open source. Should I make an `issue` in the issues section which could later be marked as 'feature-request' by the administrators?
 Please guide me.

Thanks

Gagandeep Singh (B17CS021)

unread,
Sep 2, 2019, 9:34:05 AM9/2/19
to sy...@googlegroups.com
Can you please give a rough idea(name of the topics from mathematics with one or two line explanation) about the feature(S) you want to add to SymPy?

With Regards,
Gagandeep Singh
Github - https://www.github.com/czgdp1807
LinkedIn - https://www.linkedin.com/in/czgdp1807

--
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.
Message has been deleted

Aizen

unread,
Sep 8, 2019, 9:29:27 AM9/8/19
to sympy
All Right.
Topics such as Graph Theory( Creating Graph Data Structures, Standard Graph Algorithms such as BFS and DFS, Graph Analysis, Centrality and even trivial things such as checking if a degree sequence is a graphic or not, etc) 
Topology (Network Topology : Creating and testing).

I am sorry for the delay in responding because of some personal reasons. I will try to be quick from here now.

Yash
To unsubscribe from this group and stop receiving emails from it, send an email to sy...@googlegroups.com.

Gagandeep Singh (B17CS021)

unread,
Sep 8, 2019, 9:34:51 AM9/8/19
to sy...@googlegroups.com
In my opinion, SymPy is concerned about symbolic manipulation and mathematics. The topics you suggested will be more appropriate for a data structures and algorithms libraries. If other members agree on your suggestion, then feel free to draft a issue for further discussion. 
In addition, I see that you are doing a specialisation in statistics, so probably, `sympy.stats` can be the right module for you to contribute. I have just completed my GSoC 2019 project which was related to statistics project. So, if you are interested, you can continue from where I left. 

With regards,
Gagandeep Singh


On Sun, Sep 8, 2019 at 6:57 PM Aizen <yash...@gmail.com> wrote:
All Right.
Topics such as Graph Theory( Creating Graph Data Structures, Standard Graph Algorithms such as BFS and DFS, Graph Analysis and even trivial things such as checking if a degree sequence is a graphic or not, etc) and Network Topology (Creating and testing).


I am sorry for the delay in responding because of some personal reasons. I will try to be quick from here now.

On Monday, September 2, 2019 at 7:04:05 PM UTC+5:30, Gagandeep Singh (B17CS021) wrote:
To unsubscribe from this group and stop receiving emails from it, send an email to sy...@googlegroups.com.

--
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.

Oscar Benjamin

unread,
Sep 8, 2019, 7:08:28 PM9/8/19
to sympy
Graph theory has already been ruled out for SymPy:
https://github.com/sympy/sympy/issues/8186
Most graph-theoretic algorithms are not symbolic and don't really have
any connection to the symbolic manipulation that SymPy does.

That being said there is plenty of scope to use graph theoretic
algorithms to improve the inner workings of SymPy:
https://github.com/sympy/sympy/issues/16174
https://github.com/sympy/sympy/issues/16207

The connect components algorithm was added here:
https://github.com/sympy/sympy/pull/16225

I didn't get round to actually making proper use of it although you
can some demonstrations of what it might be able to improve in the
links above. I have an open PR here for using this in solve
https://github.com/sympy/sympy/pull/16550
which I should really finish.

There are many possible applications of the idea in matrices:
eigenvalues, determinants, solving linear systems, inverses etc.
> To view this discussion on the web visit https://groups.google.com/d/msgid/sympy/CAAvS0gXZcXo_Ob6GEn7c4fqqU3O_uAi67gh_Gb9biPx5VpsaKA%40mail.gmail.com.

Aizen

unread,
Sep 10, 2019, 4:16:11 PM9/10/19
to sympy
Hello. 
All right, I saw the stats implementation and I need some more theoretic background in Stats to be able to contribute to Sympy. But that is a really good option for me and I will look into it soon. I will contact you when I think I have understood the same for Sympy.
Thanks

Yash

Aizen

unread,
Sep 10, 2019, 4:34:29 PM9/10/19
to sympy
Thank You for letting me know about it. Perhaps I should also look at other topics that can connect with Symbolic Manipulation for which Sympy is targetted at.
And I see, we can use some graph algorithms to improve the inner workings of sympy. I think to do such stuff we need to learn about all the places where optimizations could be done along with their workings. 

Can we open an `optimizations` issue\section under which we can specify all optimization issues faced in other modules of the package (from the devs who have contributed to that part?) This way we can work on them faster and we wouldn't have to explore all the modules(their workings and functions used, etc) if we get issues from the people who are already working/using them. 
I am saying this because I think (from one of the links you shared which specify: `Tarjan's Algorithm`), I would have no way of knowing about such possible optimization or algorithm unless I am using the module and I face some issue or have knowledge about the function's complexity. Because it is always possible that I never explored that discipline implemented in Sympy but I can still do some optimization on it.
Also, I will study the issue that you mentioned here, and search for issues that are already opened regarding the same. 
>> To view this discussion on the web visit https://groups.google.com/d/msgid/sympy/9618f4ee-8544-4c56-b532-e08faeb683c9%40googlegroups.com.
>
> --
> 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 sy...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages