Hello everyone. Here is the brief summary of my work in the seventh week of GSoC period.
Last week, we found a solution for matching `exp` as `Pow`. This week major part was spent in testing exponential rules. Here are some problem faced.
1. UnevaluatedExpr is quite untested and results in recursion errors in many places.
like `u = UnevaluatedExpr(E)` now when we want to find imaginary and real part of `u`, using `im(u)`. It causes recursion error. There were other instances too. So in those functions, I replaced them back to `exp`.
2. There was a lot of index error because length of args of a `Pow` object is 2. Whereas for `exp` it's 1. Utility functions used in lot of places `.args`. I found all possible places where arguments of a `Pow` object was accessed using `.args and .args` . I replaced them with `.base` and `.exp`. This solved the problem
There were more minor changes in many utility functions. Currently, I have finished the exponential testing and almost all are passing. I have pushed all changes in this PR.
I have tested a small part of logarithmic tests. I will try to finish them in 2 days and next move on to either special functions on trigonometric rules.