# Online tools for doing symbolic mathematics

This question is similar to this one, but specifically relates to resources available strictly as on-line web apps. Examples include:

Some basic needs:

• Ability to do symbolic manipulation on par with what you'd use Mathematica for
• Should be possible to do more than 'one-liners' (unlike Wolfram Alpha)
-
maple comes to mind as well –  con-f-use Jun 9 '11 at 22:07
@con-f-use Maple does not have an online interface. You can all it from Sage though.. –  user2468 Jun 9 '11 at 22:43

Added: I found the Wikipedia article Comparison of Computer Algebra Systems from a link on Sage's site. Various systems are listed in tables, each identifying cost, features, etc. for each of the programs. That may help you ultimately determine what works best for YOU!

I can't speak for hicalc (I've not heard of it!) but IMO, a good choice would be Sage Notebook: it integrates a whole bunch programs: GAP, R (statistics), Pari, etc. (see more programs listed below), and you can program, as well (Python?). I'm not sure about its graphing capabilities; though it does seem to come equipped with some graphing functionality. You can create your own account if you scroll down to the bottom of the webpage linked immediately above. (You can also peruse sample "Worksheets" from "notebooks").

Another "plus" about Sage Notebook is that you can create folders, save your work, etc, on-line, and can then thus access it (when on-line again) and pick up where you left off at another time.

Mathematics packages contained in Sage

Algebra: GAP, Maxima, Singular
Algebraic Geometry: Singular
Arbitrary Precision Arithmetic: MPIR, MPFR, MPFI, NTL, mpmath
Arithmetic Geometry: PARI/GP, NTL, mwrank, ecm
Calculus: Maxima, SymPy, GiNaC
Combinatorics: Symmetrica, Sage-Combinat
Linear Algebra: ATLAS, BLAS, LAPACK, NumPy, LinBox, IML, GSL
Graph Theory: NetworkX
Group Theory: GAP
Numerical computation: GSL, SciPy, NumPy, ATLAS
Number Theory: PARI/GP, FLINT, NTL

Other packages contained in Sage

Command line: IPython
Database: ZODB, Python Pickles, SQLite
Graphical Interface: Sage Notebook, jsmath
Graphics: Matplotlib, Tachyon3d, GD, Jmol
Interactive programming language: Python
Networking: Twisted

More details available here Wikipedia on Sage.

See also Sage Documentation, where you can find tutorials, manuals, references, etc. available on-line and as downloads (e.g. pdf)...I've personally found the "help" mechanism in Sage quite valuable.

-
Besides sagenb, you can use the Sagemath Cloud. Over there, you not only have Sage Worksheets, but also the IPython Notebook. In both cases, you can also work with SymPy, just as you wish ;) –  Harald Schilly Jan 4 at 4:08
Nice answer! +1 –  Sami Ben Romdhane Jan 4 at 14:46

Checkout http://live.sympy.org/, which is a SymPy session that runs on the Google App engine. It uses a persistent session system, so you can do more than just one-liners. It's actually just a Python shell, so you can do all kinds of nontrivial stuff. The only limitation is that the Google App Engine has a time limit on calculations (I think it's like 30 seconds or something).

You can also get nice LaTeX output by choosing "LaTeX" from the popup (the default is ASCII, which is more compatible, but still looks nice).

-
It's as though everything lately has been telling me to learn Python. +1 for answering with precisely what I asked for: a web-based app that provides symbolic manipulation that isn't limited to one-liners. –  Brian Vandenberg Jun 27 '11 at 16:34
By the way, we just updated it, so the interface is a little nicer (you no longer have to go to live.sympy.org/graphical to get nice LaTeX output, just choose "LaTeX" from the popup), and to fix some bugs. I'll update my answer. –  asmeurer Jun 28 '11 at 3:28
The online Sympy is certainly nice… when the computation is simple I prefer it to Sage, because it loads faster. The only thing that's missing is tab expansion (so you have to know the commands instead of being able to guess them). –  ShreevatsaR Jun 28 '11 at 4:29
@ShreevatsaR: I'll create an issue for this. Also, you can use the Python dir() function to get a list of all defined names, which will include all SymPy functions. And if you do dir(expr), where x is some SymPy object, you will get a list of possible methods/properties for that object. –  asmeurer Jun 28 '11 at 4:51
Ah that's useful, thanks. Should have thought of that. –  ShreevatsaR Jun 28 '11 at 15:05

There is QuickMath which works in it limited range if you can avoid the advertising.

-

Mathics is “a free, light-weight alternative to Mathematica with support for Sage”. It has an online version:

-

There's a magma calculator online here, but your programs are limited to 60 seconds which should be sufficient for most things.

-
+1, this looks like an interesting tool. –  Brian Vandenberg Jun 28 '11 at 16:18
120 seconds as of now –  Felix Goldberg Oct 24 '13 at 9:27

There are various online code compilers you could use for this purpose, assuming you know an appropriate language. Both the linked services support Haskell, a particular favorite of mine.

-