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.

REDUCE 3.6 Table of Contents

  1. Introduction
  2. Copyright Information
  3. General Information
  4. Ordering Information
  5. Demonstration Versions
  6. Main System Documentation and Online Help
  7. Contributed Software Documentation
  8. New Second Category Packages Documentation
  9. Packages Available from Other Sources
  10. REDUCE Demonstrations at other sites
  11. REDUCE Network Library
  12. Further Online Information Resources
  13. Standard LISP and Symbolic Mode
  14. Old Documentation
  15. 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: 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:
  1. 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.
  2. 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.
  3. 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.
  4. 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.
  5. 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.
  6. 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.
  7. 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.
  8. 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.
  9. Flexible Offerings. To support the differing needs of the user community, REDUCE is available in a number of different configurations:
    1. 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;
    2. 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;
    3. site licenses, which extend the professional system to cover all similar machines at a single postal address.
  10. 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:
  1. The CATHODE 2 demonstrations of solutions of differential equations
  2. 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.orgreduce-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