The first week of the Coding period is now almost over. Though this post is quite late, I'll try to post updates at the start of each week from now.
What makes my project so interesting (and challenging!) is that I need to work on two separate code bases- SymPy and Symengine. After discussing with Ondrej, I have started the part of my project related to SymPy.
Following are the goals of Phase I:
ring_series: There is already a partial implementation of
ring_seriesin SymPy. I will add more elementary and user functions, so that it has similar capabilities as the
- Write a class structure on top of
ring_seriesso that the user need not bother about calling separate functions for each function.
My main task, this week, was to port PR
ring_series . I have,
hence been working on PR 9262. I am
done porting most elementary functions and writing their tests, with the
A major issue that cropped up while writing tests is concerning Laurent series.
As of now,
polys do not accept negative exponents. I will either need to
poly rings to accept negative exponents or modify operations so that
they can use the present
poly structure to handle negative exponents.
My targets for the next week are:
ring_serieshandle Laurent series.
- Polish PR 9262 and get it merged. It has already grown big. I will probably need to send another PR.
- Discuss a class structure for series expansion and send a PR for it.
- Start working on the hashtable for Symengine with Sumith
Looking forward to another exciting week.