SymPy is a symbolic manipulation package, written in pure Python. Its aim is to become a full featured CAS in Python, while keeping the code as simple as possible in order to be comprehensible and easily extensible. Currently, Sympy has only around 1600 lines of code (including comments), and its capabilities include basic arithmetics, basic simplification, series expansion, functions (exp, ln, sin, cos, tan, etc.), differentiation, integration (currently it can do only very simple integrals), basic substitution, arbitrary precision integers and rationals, standard (Python) floats, basic complex numbers, and symbolic limits.
License: GNU General Public License (GPL)
Changes:
Symbolic matrices, Pauli algebra, and polynomials (division, gcd, square free decomposition) are supported. Printing of advanced things was moved out of the core. Slices on sympy's objects were implemented. Slices are now the recomended way to access all of sympy's nested objects. The Derivative and Limit classes were added. unknown functions may be easily used for differentiation and other purposes. Complex numbers now work for exp(I*x) and other uses. The evalc() method and initial support for assumptions were added.