Other General Purpose Computer Algebra Systems

(very rough yet)

MAGMA

Magma is a radically new system designed to solve computationally hard problems in algebra, number theory, geometry and combinatorics. Magma provides a mathematically rigorous environment for computing with algebraic and geometric objects.

The design of Magma emphasizes structural computation, that is, the ability to construct canonical representations of structures, thereby permitting such operations as membership testing, determination of structural properties and isomorphism testing.

Magma has been developed by the Computational Algebra Group, headed by Dr J. J. Cannon, in the School of Mathematics and Statistics at the University of Sydney.


Risa/Asir

This is an experimental computer algebra system developed at FUJITSU LABORATORIES LIMITED (FLL, hereunder), publicly available in binary form. Although FLL shall reserve its copyright, Risa/Asir is now publicly distributed and permitted to copy, use and re-distribute as it is without fee for non-profit purposes.

Risa/Asir's distribution binary includes binaries of other parties' contribution whose use is permitted for non-profit purposes. Permission to distribute Risa/Asir including their binaries is specially granted by the respective parties. They are
(1) Hans-J. Boehm's Garbage Collector, and
(2) Henri Cohen's PARI.
Permission granted to use, copy and re-distribute Risa/Asir is also subject to the conditions set for the respective softwares.

What is Risa/Asir? Risa/Asir is a computer algebra system, which provides a programming system Asir with several subroutine libraries that can also be used as parts of other programs. (In binary form, the usage as libraries for other program is at this moment difficult. Technical information for interfacing to libraries will be supplied some day in the future.) (The name `Risa' came after `Research instrument for symbolic algebra.')

It runs on major UNIX workstations, Macintoshes and MS-DOS machines under DOS-Extenders. Though its scope for symbolic and algebraic computation is very limited at this moment, its performance of doing several major algebraic operations in the polynomial ring is considerably high to cope with practical problems. Its programming system Asir has a C-like language, also called `Asir,' its interpreter and a dbx-like source-line debugger. The source line debugger is very helpful and may be indispensable for those who want to implement algorithms for algebraic computation.


SAML, the Simple Algebraic Math Library

Designed and implemented by Thierre Bousch

Description: SAML is a C library for symbolic calculations, accompanied by some application programs (samuel, factorint, induce). The library provides an object-oriented framework for defining and handling mathematical types, and implements the most common data types of computer algebra: integers, reals, fractions, complex numbers, polynomials, tensors, matrices, etc.
The application programs consist of an interactive symbolic calculator (samuel), a programming language (induce) and a program to factorize integers (factorint).
Platform: Requires a decent Un*x system, gcc 2.5.0 or later, gdbm, perl and gmake. Bison and TeXinfo can be useful.


Special Purpose Systems

CoCoA
CoCoA 4.0 (July 2000): The main new features of CoCoA 4.0 are: NEW FEATURES: NEW PACKAGE:

FORM

FORM is a symbolic manipulation program that is eminently suited for large problems in mathematics, physics and engeneering. The size of the formulae that it can manipulate is virtually unlimited: the major limitation is usually the size of the available disk space. It has been designed for speed so that large expressions may be dealt with in a finite amount of time. Overflowing the available amounts of physical memory results in only a minor slow down as the disk memory is managed by FORM itself rather than by the virtual memory manager of the computer (the memory management can slow down a computer algebra system enormously when expressions become large).
FORM is equipped with a set of basic commands that allow the user to construct his own composite commands. Very little `ready knowledge' has been built in. When comparing FORM to the popular computer algebra systems Maple, Reduce, Mathematica and Macsyma would be something like LISP or prolog and FORM would be something in the class of C: very versatile and powerful but you have to make everything yourself.

GAP

GAP is a system for computational discrete algebra, which was developed with particular emphasis on computational group theory, but which has already proved useful also in other areas. The name GAP is an acronym for *Groups, Algorithms, and Programming*.

GRTensor

A package for doing component tensor calculations in Maple.

Jacal

A Scheme based symbolic package (Does not have integration yet).

KANT

KANT V4 is developed by a research group at the Technische Universität Berlin under the project leadership of Prof. Dr. M.E. Pohst.
The main features of the current release are: There is a shell KASH, the KAnt V4 SHell.

Macaulay, a system for computation in algebraic geometry and commutative algebra, by Dave Bayer, Mike Stillman (and for M 2 also D. Gruson).
Description: Macaulay is a computer algebra system for mathematical computations in algebraic geometry and commutative algebra. At its core is a carefully tuned implementation of Grobner basis methods for manipulating systems of polynomial equations. Macaulay's user base consists largely of academic researchers and graduate students. It consists of roughly 30,000 lines of C code, documentation, and contributed scripts in Macaulay's command language (which has been dubbed affectionately by some users as "algebraic machine language"). Macaulay is freely available for Macintosh and Unix-based computers.

Macaulay 2 v. 0.8 is announced and available.

MAS Version 1.00

MAS (Modula-2 Algebra System) is an experimental computer algebra system, developed at the University of Passau. MAS combines imperative programming facilities with algebraic specification capabilities for design and study of algebraic algorithms. It contains a large library of implemented Groebner basis algorithms for nearly all algebraic structures where such methods exist. MAS further includes algorithms for real quantifier elimination, parametric real root counting, and for computing in (noncommutative) polynomial rings.

MathSoft

NTL , A Library for doing Number Theory. Autor: Victor Shoup.
NTL is a high-performance, portable C++ library providing data structures and algorithms for manipulating signed, arbitrary length integers, and for vectors, matrices, and polynomials over the integers and over finite fields.

MathTensor, a Mathematica-based package for performing tensor analysis by computer.

PARSAC
Ein paralleles System für symbolische Rechnungen.

REDLOG
Eine Erweiterung von REDUCE zu einem Computer-Logik-System.

Schur, by Brian G. Wybourne. An Interactive Program For Calculating Properties Of Lie Groups and Symmetric Functions
What is Schur?
Schur is a stand alone C program for interactively calculating properties of Lie groups and symmetric functions. Schur has been designed to answer questions of relevance to a wide range of problems of special interest to chemists, mathematicians and physicists - particularly for persons who need specific knowledge relating to some aspect of Lie groups or symmetric functions and yet do not wish to be encumbered with complex algorithms. The objective of Schur is to supply results with the complexity of the algorithms hidden from view so that the user can effectively use Schur as a scratch pad, obtaining a result and then using that result to derive new results in a fully interactive manner. Schur can be used as a tool for calculating branching rules, Kronecker products, Casimir invariants, dimensions, plethysms, S-function operations, Young diagrams and their hook lengths etc.

SIMATH 3.8.1
SIMATH wird an der Universit\"at des Saarlandes am Lehrstuhl von Prof. Dr. H.G. Zimmer -- haupts\"achlich f\"ur Anwendungen in der algebraischen Zahlentheorie und der Theorie der elliptischen Kurven -- entwickelt. Das System besteht aus mehreren C--Biblioheken, einer Schnittstelle zu diesen Bibliotheken (mit ausf\"uhrlicher Online-Hilfe) und einem interaktiven "Calculator" ( simcalc).

Alle Datentypen in SIMATH (beliebig lange ganze, rationale, reelle, komplexe Zahlen; Polynome in beliebig vielen Ver\"anderlichen; rationale Funktionen; elliptische Kurven und Punkte auf elliptischen Kurven; etc.) sind auf der Basis einfach-verketteter Listen implementiert. Eine automatische garbage-collection macht es sehr einfach, mit Hilfe der SIMATH--Bibliotheken eigene Programme zu schreiben.

SIMATH enth\"alt sehr viele h\"ohere Algorithmen aus dem Bereich der algorithmischen algebraischen Zahlentheorie und der Theorie der elliptischen Kurven, etwa Tate- und Manin-Algorithmus, Schoof-Shanks-Algorithmus in Primk\"orpern und in endlichen K\"orpern der Charakteristik 2, Ganzheitsbasenberechnung von Zahl- und Funktionenk\"orpern, Zerlegungsgesetze in Zahl- und Funktionenk\"orpern, und vieles andere mehr.

Singular
Singular is a computer algebra system for algebraic geometry, commutative algebra and singularity theory.

The basic algorithm in Singular is a general standard basis algorithm for any monomial ordering which is compatible with the natural semigroup structure of the exponents. This includes wellorderings (Buchberger algorithm) and tangent cone orderings (Mora algorithm) as special cases. It has also different syzygy algorithms for computation of free resolutions of modules and combinatorial algorithms for computing dimensions, hilbert series, multiplicities,

SymbMath 3.3.2: Computer Algebra System with Learning.
Author: Weiguang HUANG,
Dept. Analytical Chemsitry, University of New South Wales, Sydney, NSW 2052, Australia

from sci.math.symbolic:

    SymbMath (an abbreviation for Symbolic Mathematics) is a symbolic 
calculator that can solve symbolic math problems. 
    SymbMath is a computer algebra system that can perform exact 
numeric, symbolic and graphic computation. It manipulates complicated
formulas and returns answers in terms of symbols, formulas, exact
numbers, table and graph. 
    SymbMath is an expert system that is able to learn from user's input. 
If the user only input one formula without writing any code, it will 
automatically learn many problems related to this formula (e.g. it learns 
many integrals involving an unknown function f(x) from one derivative 
f'(x) ).
    SymbMath is a symbolic, numeric and graphics computing environment 
where you can set up, run and document your calculation, draw your graph, 
and use external functions in the same way as standard functions since 
the external functions are auto-loaded.
    SymbMath is a programming language in which you can define conditional, 
case, piecewise, recursion, multi-value functions and procedures, 
derivatives, intergrals and rules.
    SymbMath is database where you can search your data.
    SymbMath is a multi-windowed editor in which you can copy-and-paste 
anywhere in a file and between files, even from the Help file.
    It runs on IBM PCs (8086) with 400 KB free memory under MS-DOS.
    It can provide analytical and numeric answers for:
	o Differentiation: regular or higher order, partial or total,
	  mixed and implicit differentiation, one-sided derivatives.
	o Integration: indefinite or definite integration, multiple
	  integration, infinity as a bound, parametric or iterated 
	  integration, line or surface integrals, discontinuous or 
	  implicit integration.
	o Solution of equations: roots of a polynomial, systems of
	  algebraic or differential equations.
	o Manipulation of expressions: simplification, factoring or 
	  expansion, substitution, evaluation.
	o Calculation: exact and floating-point numeric computation
	  of integer, rational, real and complex numbers in the range 
	  from minus to plus infinity, even with different units.
	o Limits: real, complex or one-sided limits, indeterminate forms.
	o Complex: calculation, functions, derivatives, integration.
	o Sum and product: partial, finite or infinite.
	o Others: series, lists, arrays, vectors, matrices, tables, etc.
    Also included are:
	o Plot: functions, polar, parametric, data, and list.
	o Draw: lines, arcs, ellipse, cirlces, ovals.
	o Auto-loaded library in the source code.
	o Pull-down and pop-up menus, resizeable and colourable windows.
	o Procedural, conditional, iterational, recursive, functional,
	  rule-based, logic, pattern-matching and graphic programming.
	o Searching database.
    Its three versions (Shareware, Student, and Advanced) are available 
from the author. The shareware version is available from anonymous FTP 
sites (e.g. ftp://ftp.unsw.edu.au/pub/UNSW/symbmath/sm332a.zip, and will be
soon on simtel.coast.net/SimTel/msdos/calculat/sm332a.zip).