
% From hearn@rand.orgSat Sep 16 16:54:48 1995
% Date: Fri, 15 Sep 95 11:15:24 -0700
% From: Tony Hearn <hearn@rand.org>
% To: John Fitch <jpff@maths.bath.ac.uk>, Arthur Norman <acn1@cam.ac.uk>,
%     Winfried Neun <neun@sc.zib-berlin.de>
% Subject: Info package
% 
% Here's the latest version.  I have incorporated Arthur's suggestions in most
% places.  However, I haven't changed the table yet.  What I need is
% specific proposals from you guys, like:
% 
% Please add the following:
% 
% ...
% 
% Please delete the following:
% 
% ...
% 
% Please change the following:
% 
% ...
% 
% I'll put this on the server now so that it will go this weekend to the
% others.  I can then send out the announcement next week.

% -------------------------------------------------------------------------

%
%                        REDUCE INFORMATION PACKAGE
%
% To produce a printable version of this document, store it as info.tex and
% say:
%    latex info
%
% If you prefer, you can obtain a hard copy by sending a request to:
%
%       Anthony C. Hearn
%       RAND
%       1700 Main Street
%       P.O. Box 2138
%       Santa Monica CA 90407-2138 U.S.A.
%       Telephone: +1-310-393-0411 Ext. 6615
%       Facsimile: +1-310-393-4818
%       Electronic Mail: reduce@rand.org
%
\documentstyle[11pt]{article}
\textwidth 6.3in
\topmargin -0.4in
\textheight 8.7in
\evensidemargin 0.25in
\oddsidemargin 0.25in
\newcommand{\REDUCE}{REDUCE}
\newlength{\infoboxwidth}
\setlength{\infoboxwidth}{5in}
\begin{document}
\parindent 0pt
\parskip 6pt
\itemsep 0pt
\parsep 0pt
\topsep 0pt
\raggedbottom
\begin{center}
\LARGE
{\bf REDUCE Information Package}
\end{center}
{\REDUCE} is an interactive program designed for general algebraic
computations of interest to mathematicians, scientists and engineers.  Its
capabilities include:
\begin{itemize}
\item expansion and ordering of polynomials and rational functions;
\item substitutions and pattern matching in a wide variety of forms;
\item automatic and user controlled simplification of expressions;
\item calculations with symbolic matrices;
\item arbitrary precision integer and real arithmetic;
\item facilities for defining new functions and extending program syntax;
\item analytic differentiation and integration;
\item factorization of polynomials;
\item facilities for the solution of a variety of algebraic equations;
\item facilities for the output of expressions in a variety of formats;
\item facilities for generating optimized numerical programs from symbolic
input;
\item Dirac matrix calculations of interest to high energy physicists.
\end{itemize}
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:
\begin{enumerate}
\item 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.

\item 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.

\item 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.

\item 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 gopher 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.

\item 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.

\item 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.

\item 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.

\item 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.

\item Flexible Offerings.  To support the differing needs of the user
community, {\REDUCE} is available in a number of different configurations:

\begin{enumerate}
\item 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;

\item 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;

\item site licenses, which extend the professional system to cover all
similar machines at a single postal address.
\end{enumerate}

\item Cost.  The cost of the complete {\REDUCE} system to the end-user is
moderate, and does not vary substantially from platform to platform.  In
addition, the personal system 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.
\end{enumerate}

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 this memo. {\REDUCE} is based on a dialect of Lisp called {\em
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.

In order to help users choose the best version of {\REDUCE} for their
purposes, we shall describe the general characteristics of the available
Lisps.  Following this will be a table showing the particular versions
supported on each machine, and finally the full names and addresses of the
{\REDUCE} distributors.

Since Standard Lisp includes a limited number of functions, it is possible
to run {\REDUCE} on most modern Lisps, since they contain these functions as
a subset.  However, the distributed versions of {\REDUCE} are based on two
easily available Lisps, namely:
\begin{itemize}
\item Portable Standard Lisp (PSL).
This is currently the Lisp used most widely for running {\REDUCE}.  It
evolved from the original Standard Lisp definition, but now contains many
more facilities.  It is quite efficient in its use of both space and time,
and has been optimized for algebraic computation.  All PSL versions of
{\REDUCE} are distributed with sufficient PSL support to run on the given
computing system.  PSL is supported on many architectures and is an ideal
system for those wanting to run {\REDUCE} as a standalone system. The 
current principal developer of PSL is the Konrad Zuse Center, Berlin (ZIB).

\item Codemist Standard Lisp (CSL).  This is a Lisp system written
completely in ANSI C, which makes it very easy to port to a new machine.
Like PSL, it is a faithful implementation of Standard Lisp and has been
optimized for running {\REDUCE}.  It requires a very small memory partition
for its Lisp support.  Furthermore, most of the {\REDUCE} facilities are
supported as machine independent pseudocode, which is quite compact.  In the
worst case, the performance of this system is about a factor of two slower
than PSL, though in many cases it matches PSL performance.  However, the
memory use is smaller.  All CSL versions are distributed with sufficient CSL
support to run on the given computing system.  This is an ideal system for
those wishing to embed algebraic calculations in a C-based programming
environment.  The developer of CSL is Codemist Ltd. A version with Japanese
language support is also available from Forbs Ltd.
\end{itemize}
\section*{Demonstration Versions}
Demonstration versions of the CSL-based {\REDUCE} for the IBM PC and
Macintosh described below are available by anonymous ftp from
ftp.bath.ac.uk in the directory pub/jpff/REDUCE .
\newpage
Demonstration versions of the PSL-based {\REDUCE} for the IBM PC described
below are available by anonymous ftp from ftp.zib-berlin.de as follows:
\begin{quote}
pub/reduce/demo/msdos:    MS-DOS and Windows 3.1 \\
pub/reduce/demo/linux:    LINUX
\end{quote}

\section*{Obtaining Further Information about {\REDUCE}}
You can obtain a current copy of this information form at any time by
including the line ``send info-package'' (or ``send info-package.tex'' for
a {\LaTeX} version) in a message to one of the {\REDUCE} network library
servers, namely reduce-netlib@rand.org, reduce-netlib@can.nl or
reduce-netlib@pi.cc.u-tokyo.ac.jp.  This message is answered by an
automated server.  The library includes packages made available since the
release of {\REDUCE} 3.6 and patches to correct any bugs that have been
discovered.  Further information on this library, as well as instructions
on how to join a {\REDUCE} electronic forum, can be obtained by including
``help'' on a separate line in the message.  Finally, a set of
introductory examples in {\LaTeX} format can be obtained by including
``send intro.tex'' on a line in your message.

The same information is available from an Internet gopher server with
the address info.rand.org.  The network library files are in a ``REDUCE
Library'' directory under the directory ``Publicly Available Software''.
The relevant URL is gopher://info.rand.org/11/software/reduce .

A World Wide Web {\REDUCE} server with URL http://www.rrz.uni-koeln.de/REDUCE/
is also supported.  In addition to general information about {\REDUCE}, this
server has pointers to the network library, the demonstration versions,
examples of {\REDUCE} programming, a set of manuals, and the {\REDUCE} online
help system.

To register for the electronic mail forum, or for further information,
please contact:
\begin{quote}
Anthony C. Hearn \\
RAND \\
1700 Main Street \\
P.O. Box 2138 \\
Santa Monica CA 90407-2138 \\
Telephone: +1-310-393-0411 Ext. 6615 \\
Facsimile: +1-310-393-4818 \\
Electronic Mail: reduce@rand.org
\end{quote}

\section*{Versions Available}

The following table describes the versions of {\REDUCE} supported by the
various distributors.  Contact them for detailed price and availability
information.  For some machines {\REDUCE} 3.6 may not be available, but 3.5
still distributed.

The generic ANSI C version requires some experience with the embedding
language for installation; the machine-specific versions have more
straightforward installation procedures.

\newpage
\begin{center}
\begin{tabular}{|p{2.8in}|p{2.8in}|}
\hline
\multicolumn{1}{|c|}{{\bf System Description}} & \multicolumn{1}{c|}
{{\bf Distributors (Lisp Used)}} \\ \hline
Generic ANSI C version & Codemist (CSL) \\ \hline

Acorn Archimedes & Codemist (CSL) \\ \hline

Apple Macintosh & Codemist (CSL) \\ \hline

Atari 1040ST and Mega & Codemist (CSL) \\ \hline

CDC Cyber 910 & ZIB (PSL) \\ \hline

CDC 4000 series & ZIB (PSL) \\ \hline

Convex C100, C200 and C300 series& ZIB (PSL) \\ \hline

Cray X-MP, Y-MP and C90 & ZIB (PSL) \\ \hline

Data General AViiON series & ZIB (PSL) \\ \hline

DEC Alpha PC running MS Windows NT & ZIB (PSL) \\ \hline

DEC Alpha series running OSF-1 or Open VMS& ZIB (PSL) \\ \hline

DEC DECStation series 2000, 3000 and 5000 & ZIB (PSL) \\ \hline

DEC VAX running VAX/VMS or Ultrix & ZIB (PSL) \\ \hline

Fujitsu M Mainframe Unix series & Forbs (CSL) \\ \hline

Fujitsu 2400 series running UXP/M & ZIB (PSL) \\ \hline

HP 9000/300 and 400 series & Forbs (CSL); ZIB (PSL) \\ \hline

HP 9000/700 and 800 series & Forbs (CSL); ZIB (PSL) \\ \hline

IBM-compatible PCs based on Intel 80286 with extended memory, 80386 and
80486 running MS-DOS & Codemist (CSL); Forbs (CSL) \\ \hline

IBM-compatible PCs based on Intel 80386 and 80486 running MS-DOS,
MS-Windows 3, OS/2 or Windows NT& ZIB (PSL) \\ \hline

IBM-compatible PCs based on Intel 80386 and 80486 running UNIX
(SCO-Unix, Interactive, Solaris or LINUX) & ZIB (PSL) \\ \hline

IBM-compatible PCs based on Intel 80386 and 80486 running Next Step
& ZIB (PSL) \\ \hline

IBM RISC System/6000 & ZIB (PSL) \\ \hline

ICL mainframes running VME & Codemist (CSL) \\ \hline

ICL DRS6000 & Codemist (CSL) \\ \hline

%\end{tabular}
%
%\begin{tabular}{|p{2.8in}|p{2.8in}|}
%\hline
%\multicolumn{1}{|c|}{{\bf System Description}} & \multicolumn{1}{c|}
%{{\bf Distributors (Lisp Used)}} \\ \hline
NEC EWS 4800 series & Forbs (CSL) \\ \hline

NEC PC-9800 series & Forbs (CSL) \\ \hline

NeXTstation & ZIB (PSL) \\ \hline

Siemens S400/40 series running UXP/M & ZIB (PSL) \\ \hline

Silicon Graphics IRIS or INDIGO& ZIB (PSL) \\ \hline

Sony NEWS & Forbs (CSL) \\ \hline

Sun 3 & Forbs (CSL); ZIB (PSL) \\ \hline

Sun 4,~~SPARCStation series and compatibles & Forbs (CSL);
ZIB (PSL) \\ \hline

Thinking Machines CM5 & ZIB (PSL) \\ \hline
\end{tabular}
\end{center}
\newpage
\section*{{\REDUCE} Distributors}
\begin{tabular}{l r}

Codemist: & \parbox[t]{\infoboxwidth}{

Codemist Limited                                     \\
``Alta'', Horsecombe Vale                            \\
Combe Down                                           \\
Bath BA2 5QR, UNITED KINGDOM                         \\
Telephone: +44-1225-837430                            \\
Facsimile: +44-1225-837430                            \\
Electronic Mail: jpff@maths.bath.ac.uk}           \\ \\

Forbs: & \parbox[t]{\infoboxwidth}{

Forbs System Co. Ltd         \\
Kannai JS Building           \\
207 Yamasitachou             \\
Naka-ku                      \\
Yokohama 231, JAPAN          \\
Telephone: +81-45-212-5020   \\
Facsimile: +81-45-212-5023}  \\ \\
% \end{tabular}
% \newpage
% \begin{tabular}{l r}

ZIB: & \parbox[t]{\infoboxwidth}{

Herbert Melenk                                               \\
Konrad-Zuse-Zentrum fuer Informationstechnik Berlin (ZIB)    \\
Heilbronner Str. 10                                          \\
D10711 Berlin, GERMANY
Telephone: +49-30-89604-195                                  \\
Facsimile: +49-30-89604-125                                  \\
Electronic Mail: melenk@sc.zib-berlin.de                     \\[3mm]
Ordering information for the ZIB versions is available from the URL \\
http://www.zib-berlin.de/Symbolik/reduce/dist/ or by
anonymous ftp from ftp.zib-berlin.de in pub/reduce/distribution.}

\end{tabular}   \\[0.15in]

\begin{flushright} \today \end{flushright}
\end{document}
