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:

- Complete
`ring_series`

: There is already a partial implementation of`ring_series`

in SymPy. I will add more elementary and user functions, so that it has similar capabilities as the`series`

function. - Write a class structure on top of
`ring_series`

so that the user need not bother about calling separate functions for each function.

### So far

My main task, this week, was to port PR
609 into `ring_series`

. I have,
hence been working on PR 9262. I am
done porting most elementary functions and writing their tests, with the
exception of `rs_nth_root`

and `rs_cot`

.

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
rewrite `poly rings`

to accept negative exponents or modify operations so that
they can use the present `poly`

structure to handle negative exponents.

### Next Week

My targets for the next week are:

- Make
`ring_series`

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

Cheers!