To get the most out of the tutorials, you will need to have the correct software installed and running. Specific requirements for each tutorial are specified in the detailed description for each tutorial. But it's best to start with one of the scientific Python distributions to ensure an environment that includes most of the packages you'll need.

# Guide to Symbolic Computing with SymPy

Ondrej Certik -

Mateusz Paprocki -

Aaron Meurer - New Mexico State University

### Videos

### Bio(s)

Ondrej Certik

Ondrej Certik started SymPy in 2006. He finished his Ph.D. in Chemical Physics
in December 2012 and currently is a postdoc at Los Alamos National Laboratory.

Mateusz Paprocki

Mateusz Paprocki has been SymPy's core developer since 2007. He was a Google Summer of Code student and two-time mentor for SymPy. He also has given talks about SymPy at various conferences and scientific meetings (most notably EuroSciPy, Py4Science and PyCon.PL).

Aaron Meurer

Aaron Meurer is SymPy's core developer since 2009 and the current leader of the project. He was a Google Summer of Code student for SymPy twice, and is currently pursuing a Masters in mathematics from New Mexico State University.

### Description

SymPy is a pure 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.

In this tutorial we will introduce attendees to SymPy. We will start by showing how to install and configure this Python module. Then we will proceed to the basics of constructing and manipulating mathematical expressions in SymPy. We will also discuss the most common issues and differences from other computer algebra systems, and how to deal with them. In the last part of this tutorial we will show how to solve simple, yet illustrative, mathematical problems with SymPy.

This knowledge should be enough for attendees to start using SymPy for solving mathematical problems and hacking SymPy's internals (though hacking core modules may require additional expertise).

We expect attendees of this tutorial to have basic knowledge of Python and mathematics. However, any more advanced topics will be explained during presentation.

### Outline

- installing, configuring and running SymPy
- basics of expressions in SymPy
- traversal and manipulation of expressions
- common issues and differences from other CAS
- setting up and using printers
- querying expression properties
- not only symbolics: numerical computing (mpmath)
- Mathematical problem solving with SymPy

### Required Packages

Python 2.x or 3.x, SymPy (most recent version) Optional packages: IPython, matplotlib, NetworkX, GMPY, numpy, scipy