APL and J (see "The Internet Notebook", April 1994) are not the only math-related freeware on the Internet. In fact, so much math software is available that I feel somewhat intimidated trying to discuss it. So, please view these notes as suggestive pointers, rather than any sort of comprehensive overview.


GAP (Groups, Algorithms, and Programming) is a substantial system for computational discrete algebra. It is archived in ftp://samson.math.rwthaachen.de/pub/gap/. JACAL, a symbolic math package based on scm, a scheme variant, is available in ftp://altdorf.ai.mit.edu/pub/scm/. Macaulay is a package for doing computer algebra. You can find a Macintosh-based version in ftp://zariski.harvard.edu/Macaulay/. A UNIX-oriented version is available in ftp://ftp.cae.wisc.edu/hpux8/Maths/Misc/. NCAlgebra is a set of Mathematica "functions" designed to facilitate manipulation and reduction of noncommutative algebraic expressions. It can be found in ftp://osiris.ucsd.edu/pub/ncalg/.


APL and J aside, several freeware desktop calculators are suitable for use by mathematicians. For calc, a C-style arbitrary-precision calculator, look in ftp://ftp.uu.net/pub/calc/. The GNU Emacs-based desk calculator of the same name is in ftp://prep.ai.mit.edu/pub/gnu/. C-calc (and a lot of Russell material) is located in ftp://parcftp.xerox.com/pub/russell/. A small scientific calculator, scicalc, can be found in ftp://monu1.cc.monash.edu.au/pub/. SIMATH, an elaborate math calculator with libraries, is archived on ftp://ftp.math.uni-sb.de/.

Dynamical Systems, etc.

The Dynamical System TOOLkit is a full-featured computational environment for exploring dynamical systems. You can find it, including copious documentation, in ftp://macomb.tn.cornell.edu/pub/dstool/. KAOS, a dynamical-system toolkit with an interactive graphic interface, is available on the same archive, in /pub/kaos. Gnans performs simulation of stochastic and deterministic dynamical systems. It can be found in ftp://ftp.mathematik.uni-bremen.de/pub/gnans/. graphtal is an L-system interpreter, useful for generating geometric objects such as trees, plants, and skyscrapers. For a pleasant (if somewhat demanding) introduction to L-systems, get a copy of "The Algorithmic Beauty of Plants" (Prusinkiewicz & Lindenmayer, Springer-Verlag, 1990, ISBN 0-387-97297-8). The Lyapunov Archive contains preprints and programs for nonlinear dynamics, signal processing, and related subjects. The README file in ftp://lyapunov.ucsd.edu/pub/ is the best starting point for this archive.


The Geometry Center at the University of Minnesota distributes several large packages for geometry. The archive is located in ftp://geom.umn.edu/pub/software/. Evolver, a package for modeling the evolution of surfaces, is in subdirectory evolver/. Geomview, a package for inspecting and manipulating 3-D objects, is in geomview/. SnapPea, a tool for manipulating hyperbolic structures on 3-manifolds, is in snappea/.

Maple, Mathematica, And MATLAB

Although these are all proprietary packages, redistributable material is available for each of them. ftp://daisy.waterloo.edu/maple/. contains a substantial archive of application codes, articles, bug fixes, documentation, and other files of interest to Maple users. MathSource, the official FTP (and Gopher) archive for Mathematica is maintained by Wolfram Research on ftp://mathsource.wri.com/. Another large set of contributed Mathematica application code can be found in ftp://yoda.physics.unc.edu/pub/Packages/. The MathWorks Library, a collection of MatLab-related documentation, product literature, patches, and contributed materials, is located on ftp://ftp.mathworks.com/. RLaB, a MATLAB-like matrix-oriented programming language and toolbox, is found in ftp://evans.ee.adfa.oz.au/pub/RLaB/.

Netlib And Statlib

Netlib is the premier Internet archive of math and modeling software. It contains hundreds of megabytes of software, so don't download the whole thing, unless you have both a need for it and a place to put it. Instead, FTP to ftp://netlib.att.com/netlib/. and pick up the file ls-lR.Z and the contents of the master directory.

Statlib contains more than a hundred megabytes of statistical software, data sets, and information. To get started, FTP to ftp://lib.stat.cmu.edu/. and retrieve the files GET.ME.FIRST and perhaps ls-lR. After perusing these, you should be ready to pick up individual packages. You can also retrieve Netlib and Statlib packages by e-mail. For details, send a note to netlib@research.att.com/ (statlib@lib.stat.cmu.edu/) containing the line "send index" in the message body.


Elliptic Curves and Primality Proving (ECPP) resides in ftp://world.std.com/math/ecpp/. morph is a package for performing mathematical morphology, used in image analysis and enhancement. It is archived in ftp://image.vuse.vanderbilt.edu/pub/. Otter, an automated reasoning program for mathematicians, is available in ftp://anagram.mcs.anl.gov/pub/Otter/. The PARI system is a package capable of doing formal computations on recursive types at high speed; it is primarily aimed at number theorists, but can be used by people whose primary need is speed. It is available in ftp://math.ucla.edu/pub/pari/. ftp://math.berkeley.edu/pub/Symbolic_Soft/. contains pointers to a variety of software for symbolic computation.