Computer Algebra Systems

Posted on Friday, April 23, 2010 at 3:27 PM by Alec Mihailovs

Unfortunately, after 50 or so years of development, we still don’t have one.

Wolfram Alpha – seems to be the best one for a one-line calculation at a high school, or undergraduate calculus level.

  • Good – a flexible input, one doesn’t have to memorize any formal programming constructions. The output contains many details including plots and step-by-step solutions in many cases. Free of charge.
  • Bad – limited to one line of input. Not an open source.

Wolfram Mathematica – current “state of the art”.

  • Good – solves a wide range of high-school and undergraduate calculus problems. Has a large community. Supports Wolfram MathWorld and the Wolfram Functions Site. Good documentation.
  • Bad – One has to adjust to such notations as Sin[x], as well as series of other weird features – a horizontal cursor, for instance. Not an open source.

MuPad – a part of MATLAB.

  • Good – a nice notebook interface, nice plots. Easy to use programming language, similar to Maple.
  • Bad – covers less range of problems than Wolfram Mathematica. Not an open source.

Sage – a collection of many open source mathematical programs and libraries.

  • Good – a notebook running in Firefox.  Uses Python as a programming language. A large (and growing) collection of combinatorics, algebra, and number theory routines, significantly greater than in Wolfram Mathematica. Open source. Free of charge.
  • Bad – a mountain of bugs. Doesn’t run in Windows and BSD. Poor symbolic abilities, not good enough even for high school and low level Calculus. Incompetent and vicious developer community.

Maple – used to be a competitor for Wolfram Mathematica in the past century.

  • Good – the Classic worksheet is still usable (even not being maintained.) The programming language is still usable as well (except, maybe, in Linear Algebra and other packages developed in this century.)
  • Bad – another mountain of bugs. Slow. The Standard interface is not usable. The graphics is poor. The community has been dissolved. Not an open source.

Python(x,y) – includes NumPy, SciPy, SymPy, Mayavi2, and other Python libraries and tools, as well as Eclipse, Qt Designer and more.

  • Good – excellent numerical abilities, plots, and coding support. A wide and nice community. Open source. Free of charge.
  • Bad – the symbolical abilities provided by SymPy are rather limited.

Top