Trinh @ Bath

This is an old revision of the document!


Computer Algebra Systems (CAS)

Computer algebra systems, such as Mathematica, Maple, SageMath, Matlab's Symbolic Math Toolbox, etc. are very useful for the following tasks (ranked in importance):

  • 1 = Deriving and manipulating exact closed-form quantities or special functions, including pattern recognition
  • 2 = Numerical scratchpad for exploration
  • 2 = High precision computations and variable precision arithmetic
  • 3 = (Floating-point) Numerical analysis and numerical solutions

In terms of alternatives to the above tasks, there is no real alternative to item 1 in terms of conventional software you will use. Items ranked 2-3 all have alternatives, e.g. Python, Matlab, C++, etc.

Choosing a software

  • Unfortunately, as far as I'm aware, there is no good competitor to Mathematica (education license \$1k; student license \$70/year). Maple is probably the closest, but it was previously unsatisfactory for my needs.
  • There is no good open source alternative…as far as I know. Perhaps we should do a benchmark test?

Example 1

I will do some simple 2D, 3D, and contour plotting.

Example 2

I will do an example showing quadrature using Mathematica. This will look at the SIAM 100-digit challenge problem 1.

Example 3