SymPy is a pure Python library for symbolic mathematics. By reusing a general purpose programming language, SymPy allows to take advantage of symbolic (or mixed symbolic-numeric) algorithms without the need for learning another domain specific language. It is also easily extensible and depends only on a Python interpreter (e.g. can be run in Google App Engine).
In this talk we will give an introduction to polynomials manipulation module in SymPy. Polynomials are ubiquitous in symbolic manipulation systems. They are very useful as a component of complex algorithms, e.g. for symbolic integration or simplification of expressions, as well as they can be used directly for solving many practical problems, e.g. in geometry or graph theory.
The main topics will include:
- general overview of the polynomials module
- constructing polynomials from expressions
- domains of computation
- brief discussion of implemented algorithms
- short introduction to Gröbner bases
- practical applications
- solving equations and systems of equations
- proving theorems in geometry
- coloring of graphs
- optimizing speed by using (pure mode) Cython