SymPy is a Python library for symbolic mathematics. It aims to become a full-featured computer algebra system (CAS) while keeping the code as simple as possible in order to be comprehensible and easily extensible.
Main features:
- basic arithmetics *,/, ,-,**
- basic simplification (like a*b*b 2*b*a*b -> 3*a*b^2)
- expansion (like (a b)^2 -> a^2 2*a*b b^2)
- functions (exp, ln, ...)
- complex numbers (like exp(I*x).expand(complex=True) -> cos(x) I*sin(x))
- differentiation
- taylor (laurent) series
- substitution (like x -> ln(x), or sin -> cos)
- arbitrary precision integers, rationals and floats
- noncommutative symbols
- pattern matching