The REDUCE Computer Algebra System
Current Version: REDUCE 3.8
Version 3.8 of the REDUCE Computer Algebra System was released 15 April 2004.
Information on this and future releases of REDUCE is now available from a dedicated website at reduce-algebra.com.
Information available from the current page (www.uni-koeln.de/REDUCE/) contains archival information on older versions of REDUCE, and is being
offered to support those who may still be running older versions of REDUCE.
Previous Versions
Version 3.7 of REDUCE was released on April 30th, 1999.
Please see the
announcement by Tony Hearn and the
documentation for the new version. The REDUCE Homepage of ZIB also includes much
more information on the current version of REDUCE.
There is also a Y2K compliance statement for REDUCE 3.7.
-
Introduction
-
Copyright Information
-
General Information
-
Ordering Information
-
Demonstration Versions
-
Main System Documentation and Online Help
-
Contributed Software Documentation
-
New Second Category Packages Documentation
-
Packages Available from Other Sources
-
REDUCE Demonstrations at other sites
-
REDUCE Network Library
-
Further Online Information Resources
-
Standard LISP and Symbolic Mode
-
Old Documentation
-
About the REDUCE Home Page
Introduction
REDUCE
is an interactive program designed for general algebraic computations of
interest to mathematicians, scientists and engineers. Its capabilities
include:
-
expansion and ordering of polynomials and rational functions;
-
substitutions and pattern matching in a wide variety of forms;
-
automatic and user controlled simplification of expressions;
-
calculations with symbolic matrices;
-
arbitrary precision integer and real arithmetic;
-
facilities for defining new functions and extending program syntax;
-
analytic differentiation and integration;
-
factorization of polynomials;
-
facilities for the solution of a variety of algebraic equations;
-
facilities for the output of expressions in a variety of formats;
-
facilities for generating optimized numerical programs from symbolic input;
-
calculations with a wide variety of special functions;
-
Dirac matrix calculations of interest to high energy physicists.
It is often used as an algebraic calculator for problems that are possible
to do by hand. However, the main aim of REDUCE is to support calculations
that are not feasible by hand. Many such calculations take a significant
time to set up and can run for minutes, hours or even days on the most
powerful computers. In support of this goal, REDUCE has the following characteristics:
-
Code stability. Various versions of REDUCE have been in use for over twenty
years. There has been a steady stream of improvements and refinements since
then, with the source being subject to wide review by the user community.
REDUCE has thus evolved into a powerful system whose critical components
are highly reliable, stable and efficient.
-
Wide user base. A particular algebra system is often chosen for a given
calculation because of its widespread use in a particular application area,
with existing packages and templates being used to speed up problem solving.
As evidenced by more than 800 reports listed in the current bibliography,
REDUCE has a large and dedicated user community working in just about every
branch of computational science and engineering. A large number of special
purpose packages are available in support of this, with many contributed
by users.
-
Full source code availability. From the beginning, it has been possible
to obtain the complete REDUCE source code, including the ``kernel''. Consequently,
REDUCE is a valuable educational resource and a good foundation for experiments
in the discipline of computer algebra. Many users do in fact effectively
modify the source code for their own purposes.
-
Flexible updating. One advantage of making all code accessible to the user
is that it is relatively easy to incorporate patches to correct small problems
or extend the applicability of existing code to new problem areas. An electronic
mail service and World Wide Web servers allow users to get such updates
and complete new packages as they become available, without having to wait
for a formal system release.
-
State-of-the-art algorithms. Another advantage of an ``open'' system is
that there is a shared development effort involving both distributors and
users. As a result, it is easier to keep the code up-to-date, with the
best current algorithms being used soon after their development. At the
present time, we believe REDUCE has the best available code for solving
nonlinear polynomial equations using Groebner
bases, real and complex root
finding to any precision, exterior
calculus calculations and optimized
numerical code generation among others. Its simplification strategy,
using a combination of efficient polynomial manipulation and flexible pattern
matching is focussed on giving users as natural a result as possible without
excessive programming.
-
Algebraic focus. REDUCE aims at being part of a complete scientific environment
rather than being the complete environment itself. As a result, users can
take advantage of other state-of-the-art systems specializing in numerical
and graphical calculations, rather than depend on just one system to provide
everything. To this end, REDUCE provides facilities for writing results
in a form compatible with
common programming numerical languages (such as Fortran) or document
processors such as TeX.
-
Portability. Careful design for portability means REDUCE is often available
on new or uncommon machines soon after their release. This has led to significant
user communities throughout the world. At the present time, REDUCE is readily
available on essentially all workstations and high-end microprocessor-based
machines in the market.
-
Uniformity. Even though REDUCE is supported with different Lisps on many
different platforms, much attention has been paid to making all versions
perform in the same manner regardless of implementation. As a result, users
can have confidence that their calculations will not behave differently
if they move them to a different machine.
-
Flexible Offerings. To support the differing needs
of the user community, REDUCE is available in a number of different configurations:
-
personal system, ready to run, available for a selection of common personal
computers, shipped without source and hence with less easy updatability
between major releases, but at lowest cost for a single user site;
-
professional system, which comes with source, and is licensed for use on
one CPU or fileserver and so can be especially attractive for laboratories
or work-groups;
-
site licenses, which extend the professional system to cover all similar
machines at a single postal address.
-
Cost. The cost of a complete REDUCE to the end-user
is moderate, and does not vary substantially from platform to platform.
In addition, the personal systems and site licenses are offered on very
generous terms. Moreover, since all systems are derived from the same source
base, they are very compatible from platform to platform (from a PC to
a Cray supercomputer). This makes it possible to have compatible versions
at home and work.
The most recent release of REDUCE (Version 3.6) is dated 15 July 1995.
It is available for most common computing systems, in some cases in more
than one version for the same machine, through a variety of distributors
listed in the REDUCE
Information Package. REDUCE is based on a dialect of Lisp called Standard
Lisp, and the differences between versions are the result of different
implementations of this Lisp; in each case the source code for REDUCE itself
remains the same. The complete source code for REDUCE is available. On-line
versions of the manual
and other support documents and tutorials are also normally included with
the distribution.
REDUCE Demonstrations at Other Sites
There are demonstrations of various REDUCE packages available at
other sites. These include:
-
The CATHODE 2 demonstrations
of solutions of differential equations
-
SPDE (Symmetries
of Partial Differential Equations)
Copyright
All information available through this service is
Copyright (c) Anthony C. Hearn 1998. All Rights Reserved.
Please see the Copyright
Notice for more information.
General Information
The REDUCE 3.6 Announcement
includes a short overview of the capabilities of the REDUCE 3.6 computer
algebra system.
A more detailed Introduction
to REDUCE 3.5 is also available.
The REDUCE Bibliography
lists several hundred books and papers citing REDUCE.
The central archive of the REDUCE mailing list, including recent
mail, is available at http://ftp.rand.org/software_and_data/reduce/info.
See also the section on "Further Online Information
Sources" below for references to other sources of general information
about REDUCE.
Ordering Information
The REDUCE computer algebra system is not in the public domain, but it
is available at a very low price (cost recovery for improving, porting,
supporting, and distributing it). In addition, there is a very generous
site license policy in effect.
The most important distributors for REDUCE are the following:
-
ZIB
-
offer a PSL based version for a wide range of computers. Online REDUCE
ordering information
is available from ZIB. Their address is:
Herbert Melenk
Konrad-Zuse-Zentrum für Informationstechnik Berlin (ZIB)
Takustr. 7
D-14195 Berlin-Dahlem, GERMANY
E-Mail:
Melenk@zib.de
-
Codemist
-
offer a C based version of REDUCE using their own CSL written in C. Online
REDUCE ordering
information is available from Codemist. Their address is:
Codemist Ltd.
"Alta", Horsecombe Vale
Combe Down
Bath BA2 5QR, UNITED KINGDOM
E-Mail:
jpff@maths.bath.ac.uk
The Information
Package (also available as a single ASCII
file) lists all the machines and operating systems REDUCE 3.6 is available
for, and more information on the various distributors of the software.
See also the section on "Further Online Information Sources"
below for references to other sources of ordering information about REDUCE.
Demonstration Versions
Demonstration versions of REDUCE 3.6 are available from two sites:
-
Konrad-Zuse Zentrum Berlin (ZIB)
-
offers PSL based demo versions of REDUCE 3.6 for IBM-compatible PCs running
MS/DOS, Windows
3.1, or Linux.
-
Codemist
Ltd.
-
offers CSL based demonstration
versions for PCs running MS/DOS (file demored.zip)
and for the Apple Macintosh (file demored.hqx).
A REDUCE 3.6 online
demo, a full-fledged REDUCE system for interactive use, is available
at ZIB (up to 3 simultaneous users on a small machine) and from Codemist
Ltd. for Intel platforms.
Main System Documentation
For REDUCE users, both the REDUCE 3.6 User's
Manual and the REDUCE 3.6 Online
Help system are available on this server, the latter containing a searchable
and browsable index to the help pages. Hardcopies
of the REDUCE 3.6 User's Manual and other REDUCE documentation may be ordered
from Codemist (cf. the corresponding ordering
information).
REDUCE 3.6 Contributed Software Documentation
The documentation for almost all of the REDUCE 3.6 Contributed Software
Packages is available
online. Hardcopies
of some of these documents may also be ordered.
New Second Category Packages
After the release of REDUCE 3.6, new packages contributed to REDUCE will
be available from the REDUCE Netlib,
the on-line repository of software and information related to REDUCE. The
documentation for some of these packages will be available for on-line
browsing soon after becoming available.
Note that sometimes there are new releases of user packages that were
already included in the REDUCE 3.6 distribution. The documentation for
these packages is not listed as a new package, but rather as Contributed
Software.
Packages Available from Other Sources
-
CALI 2.2
-
A Package for computational commutative algebra
Author: Hans-Gert Graebe
-
DIMSYM
-
Symmetry determination and linear differential equation package
Author: James Sherring
- Emacs Mode for REDUCE
- A major GNU Emacs editing mode for REDUCE files and sessions
Author: Francis J.Wright
-
GRG 3.2
-
making calculation in differential geometry and field theory as simple
and natural as possible
Author: Vadim V. Zhytnikov
-
REDLOG
-
REDuce LOGic system: symbolic algorithms on first-order formulas w.r.t.
temporarily fixed first-order languages and theories (theories currently
available are ordered fields and discretely valued fields).
Authors: Andreas Dolzmann, Thomas Sturm
-
REDTEN
-
Tensor manipulation package
Author: John Harper
-
SCOPE 1.5
-
Source Code Optimization
Author: Hans van Hulzen
REDUCE Network Library
The most important and up-to-date source of REDUCE online information is
the REDUCE Netlib
which is now accessible using the HTTP or FTP protocols. The URL for this
service is http://ftp.rand.org/software_and_data/reduce
(preferred) or ftp://ftp.rand.org/software_and_data/reduce
The REDUCE Netlib can also be accessed via electronic mail. To do so,
send a message containing the line
send index
to reduce-netlib@rand.org,
reduce-netlib@can.nl,
or
reduce-netlib@pi.cc.u-tokyo.ac.jp.
Further On-line Information Resources
ZIB Berlin
The experimental REDUCE
WWW-Server of the Symbolic
Computation group of Konrad-Zuse-Zentrum,
Berlin (ZIB), contains a lot of useful information on REDUCE, including
a hypertext overview
of REDUCE for newcomers, example files demonstrating the use of REDUCE
and its contributed software, answers to frequently asked questions about
REDUCE, patches to REDUCE, and ordering
information for the PSL based implementation of REDUCE.
Others
A.G.Grozin:
Using REDUCE in
High Energy Physics, Cambridge
University Press. Contains table of contents and full code examples
from the book.
Standard LISP and Symbolic Mode
The Standard LISP
Report is also available for online browsing. It defines the portable
language that REDUCE and most of its packages are written in.
There are also documents (in German) available as hypertext technical
reports of the Computer Center of the University of Cologne describing
in detail the port of PSL
(Portable Standard LISP) to an exotic machine architecture. This includes
a description of PSL internals.
Old Documentation
The REDUCE
3.5 Home Page (including the full REDUCE 3.5 documentation set) is
still available online.
About the REDUCE Home Page
Some information on the technical aspects of this service is available.
see also: The World Wide Web
Virtual
Library: Mathematics
(Specialized
Fields)
maintained by
Andreas
Strotmann
Regionales
Rechenzentrum
Universität
zu Köln
Strotmann@RRz.Uni-Koeln.DE
95-09-25