# Open source computer algebra systems: SymPy

@article{Joyner2012OpenSC, title={Open source computer algebra systems: SymPy}, author={David Joyner and Ondrej Cert{\'i}k and Aaron Meurer and Brian E. Granger}, journal={ACM Commun. Comput. Algebra}, year={2012}, volume={45}, pages={225-234} }

This survey will look at SymPy, a free and open source computer algebra system started in 2005 by the second author (O.Č.). It is written entirely in Python, available from http://sympy.org. SymPy is licensed under the "modified BSD" license, as is its beautiful logo designed by Fredrik Johansson.

## Figures from this paper

## 55 Citations

Constructing a Computer Algebra System Capable of Generating Pedagogical Step-by-Step Solutions

- Mathematics
- 2016

For the problem of producing pedagogical step-by-step solutions to mathematical problems in education, standard methods and algorithms used in construction of computer algebra systems are often not…

Solving Polynomial Systems with phcpy

- Computer ScienceProceedings of the 18th Python in Science Conference
- 2019

This paper explores new developments in phcpy, a scripting interface for PHCpack, over the past five years, and finds certain classes of polynomial system frequently arise, to whichphcpy is well-suited.

Python in Computational Science: Applications and Possibilities

- Computer ScienceInternational Journal of Computer Applications
- 2018

The uptrend of adopting python as a general purpose language along with its vast collection of scientific libraries are reviewed in this paper, which ensures the long term presence of python and its growing user base in the foreseeable future.

Uncertainty Modeling with SymPy Stats

- Computer Science
- 2012

A random variable type is added to a mathematical modeling language to introduce uncertainty and produce and query stochastic models and motivates the use of symbolics and thin compilers in scientific computing.

Symbolic Statistics with SymPy

- MathematicsComputing in Science & Engineering
- 2012

Replacing symbols with random variables makes it possible to naturally add statistical operations to complex physical models, using new features from the popular SymPy project.

Improving CAS capabilities: New rules for computing improper integrals

- Mathematics, Computer ScienceAppl. Math. Comput.
- 2018

Algorithm 950

- Computer ScienceACM Trans. Math. Softw.
- 2015

An implementation for problems of noncommuting variables that creates the relaxation to be solved by SDPA--a high-performance solver that runs in a distributed environment and exploits the inherent sparsity of optimization problems in quantum physics to reduce the complexity of the resulting relaxations.

A Python extension for the massively parallel framework waLBerla

- Computer Science
- 2014

A Python extension to the massively parallel HPC framework WALBERLA, a framework for stencil based algorithms operating on block-structured grids, providing features like automatic nondimensionalization of physical quantities and handling of complex parameter dependencies.

PythonTeX: Fast Access to Python from within LaTeX

- Computer Science
- 2012

PythonTeX is a new LaTeX package that provides access to the full power of Python from within LaTeX documents. It allows Python code entered within a LaTeX document to be executed, and provides…

Verified lifting of stencil computations

- Computer SciencePLDI
- 2016

The benefits of verified lifting are demonstrated by first automatically summarizing Fortran source code into a high-level predicate language, and subsequently translating the lifted summaries into Halide, with the translated code achieving median performance speedups of 4.1X and up to 24X for non-trivial stencils as compared to the original implementation.

## References

SHOWING 1-5 OF 5 REFERENCES

Quantum Mechanics, Quantum Computation, and the Density Operator in SymPy

- Physics, Computer Science
- 2011

This paper shall discuss the code that has been added to an open-source computer algebra system, called SymPy, which models the abstraction of Dirac notation and the density operator, and focus on thedensity operator of statistical quantum mechanics using SymPy's density matrices as a guide.

Symbolic Quantum Circuit Simplification in SymPy

- Physics
- 2011

In the eld of quantum information science, one can design a series of quantum logic operations known as a circuit. Circuits are the basis for quantum computations in quantum computing. As circuits…

Design and Implementation Issues of a Computer Algebra System in an Interpreted

- Dynamically Typed Programming Language, Master’s Thesis,
- 2010

Guide to symbolic mathematics with SymPy

- SciPy conference 2011 presentation,
- 2011

Variation of Parameters and More, blog post available at http://asmeurersympy.wordpress.com/2009/08/01/variation-of-parameters-and-more

- 2009