This would be useful for teaching math or prototyping. From their FAQ it sounds like performance is way too slow for problems where speed is an issue.<p>If you're looking for a fast symbolic math library for python, check out Theano. On CPU, it can take advantage of whatever BLAS you use, and on GPU, it will convert your code to optimized C++ and compile via nvidia's cuda sdk.<p>SymPy does seem a lot more feature rich than theano, which relies on numpy
Also check out Maxima [1], the GPL'ed version of the venerable computer algebra system DOE Macsyyma, which made the jump to PCs rather late and was therefore overtaken by Maple and Mathematica. Maxima is still under active development, has an community around it, and is available on Linux, Windows and Macs.<p>[1] <a href="http://maxima.sourceforge.net/" rel="nofollow">http://maxima.sourceforge.net/</a>
This is cool. However, NumPy, SciPy, SymPy, Maxima and a whole lot of other tools are included in Sage, which is a competitor to Mathematica, Matlab, and Maple. It's free and open-source. You can try it here: <a href="http://www.sagenb.org" rel="nofollow">http://www.sagenb.org</a>
Mathics (<a href="http://www.mathics.org/" rel="nofollow">http://www.mathics.org/</a>) is a pretty useful online algebra system (with MathJax display) for symbolic computing à la Mathematica, backed by SymPy for most tasks and Sage for advanced stuff. You can check gallery and docs at <a href="http://www.mathics.net/" rel="nofollow">http://www.mathics.net/</a>
SymPy is great. I've used it and read through the code (available open source). Also, my online calculator Encalc.com uses SymPy on the backend. For example: <a href="http://www.encalc.com/#expr=integrate(sin(x)" rel="nofollow">http://www.encalc.com/#expr=integrate(sin(x)</a>)
This seems to be a ery cool and useful project. Code generation is a killer feature for me.<p>Also check out the Sympy Live Shell: <a href="http://docs.sympy.org/dev/modules/utilities/codegen.html" rel="nofollow">http://docs.sympy.org/dev/modules/utilities/codegen.html</a>