Talk SymPy --- a library for doing symbolic mathematics in pure Python

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. SymPy is written entirely in Python and does not require any external libraries.

As of the beginning of 2009 SymPy implements algorithms supporting most important fields of mathematics including mathematical analysis, linear algebra, geometry, special functions, number theory, numerical analysis, statistics, probability and concrete mathematics.

The core functionality includes differentiation, Laurent truncated series, arbitrary precision numbers, numerical evaluation of expressions, pattern matching, substitutions, expansion, complex numbers and non-commutative algebra. SymPy features efficient univariate and multivariate polynomials, computation of Gröbner bases, factorization over various domains and solving systems of polynomial equations. It is also possible to compute symbolic integrals (using heuristic Risch algorithm), hypergeometric summations, limits (using Gruntz algorithm) or to solve algebraic, transcendental, recurrence and differential equations, and systems of linear equations.

One of characteristic SymPy's features is its printing engine which supports pretty-printing of expressions using Unicode character set. Other backends are also implemented: ASCII, LaTeX and MathML. Additional features include 2D and 3D plotting, integration with SAGE or physical units and quantities.

SymPy is distributed under BSD licence (like SciPy and NumPy), giving its users freedom on ways of using it. SymPy is available from in source code form or as a binary installer (for Windows users). The most recent version can be obtained from our GIT repository at SymPy is also included in SAGE and several Linux distributions, including Debian, Ubuntu and Gentoo.
tagged by
no related entity