% from 11.1.91 hk, version 0.3

\appendix

\chapter{Distribution}

In this appendix we summarize several 
distribution ways of MAS and 
include some notes on the actual releases of MAS.

MAS is distributed in several ways. One way is 
by anonymous ftp from an internet node.
Other ways are directly by floppy disks or 
by electronic mail.

\section{Anonymous FTP}

The code and executable versions for the MAS System are
available via anonymous FTP:

\begin{deflist}{internet node}
\item[MAS site]       \verb/alice.fmi.uni-passau.de/
\item[internet node]  \verb/132.231.10.1/
\end{deflist}

There are several directories of the MAS System:

\begin{deflist}{mas/ibmpc}
\item[mas/ibmpc] executable IBM PC-AT versions (e.g. MAS*.EXE)
\item[mas/atari] executable Atari ST version
\item[mas/amiga] executable Commodore Amiga version
\item[mas/src]   source code (e.g. MAS*.* SAC*.* DIP*.*) 
                 of the Atari ST version 
\end{deflist}

There are *.ARC and *.UUE versions of the programs.
MASMAN.* contains a \TeX\ version of the MAS manual.
(called MASTUT in some places)

How to use ftp:
\begin{enumerate}
\item logon to a computer with internet access
\item enter \\
            \verb/->/ \verb*/ftp 132.231.10.1/
\item wait for \\
            \verb/->/ \verb/220 alice FTP server (...) ready/
\item enter user identification \\
            \verb/->/ \verb/ftp/ or \verb/anonymou/
\item enter password (= name )
\item wait for \\
            \verb/->/ \verb/ftp>/ prompt
\item enter \\
            \verb/->/ \verb/dir/ or \verb/ls/ or \verb/cd/ as desired
\item choose the stuff you are interested in
\item enter \\
            \verb/->/ \verb*/get stuff.bla/   
               to transfer the data set \verb/stuff.bla/
\item repeat steps 7 - 9 as desired
\item finaly enter \\
            \verb/->/ \verb/quit/ to close the connection
\end{enumerate}

If this procedure fails, the data sets can probably 
be sent by e-mail.

\section{Distribution Disk}

The contents of the distribution disk are:
\index{distribution}

\begin{center}
\begin{tabular}{ll}
     MAS.PRG or MAS.EXE  & execuable MAS program \\
     MAS.INI             & start up data set for MAS \\
     HELP directory      & Modula-2 definition modules \\
     SPEC directory      & specifications of algebraic objects \\
     EDITOR.PRG          & microEMACS 3.9 \\
     MAS.RC              & start up data set for microEMACS \\
                         & with system browser macros \\
     BROWSE.RC           & procedure to module cross reference \\
                         & used from system browser \\
     *.IN                & input data sets for MAS \\
     *.OUT               & output data sets from MAS \\
     MASMAN.ARC          & MAS manuals in \TeX \\
     READ.ME             & read this before using MAS \\
     RELNOTES.TXT        & notes on the actual release of MAS
\end{tabular}
\end{center}


\section{Installation}

No special installation procedures are required. 
Just copy the MAS data sets to an appropriate directory. 
For customization modify the \verb/MAS.INI/ data set 
as required.
\index{MAS.INI}

\section{Release Notes}

We summarize the changes between different releases 
of MAS.
\index{release notes}

The changes between release 0.03 and 0.30 are:
\index{release 0.3}
\begin{enumerate}
\item The MAS parser has been changed for better Modula-2
      compatibility.\index{parser}
\item MAS LISP has been made more robust against incorrect
      user input.\index{LISP}
\item The MAS main program has been enhanced to recognize
      the following command line parameters:
      \index{command line}
\begin{verbatim}
       -m number-of-KB
       -f data-set-name
\end{verbatim}
      \begin{itemize}
      \item the memory option `-m' gives the number of Kilo-Byte
            storage, requested from the operating system. This
            number includes the space reserved for the editor and
            other system calls. The number should be larger than
            about 250-300 on an Atari ST with microEMACS.
      \item the file name option `-f' can be used to overwrite the
            default file name `MAS.INI' during startup. With this
            option MAS can be run in batch mode if the EXIT
            statement is contained in the data set.
      \item the parameters may appear in any order.
            On multiple occurrences of parameters, the last
            occurrence is used.
      \end{itemize}
\item Additional commandline parameter for the 
      IBM PC Topspeed Modula--2 version: 
      \begin{itemize}
      \item \verb/-t data-set-name/
            This parameter defines an temporary data set name 
            used for storing MAS memory during external command 
            invocation. The default for data-set-name is 
            `CELLMEM.TMP'. i.e the temporary data set is created in 
            the actual directory. If you have a RAM-Disk installed, 
            say on drive `R', then with `\verb/MAS -t R:\temp.tmp/'   
            MAS will use the RAM-Disk for the temorary data set.
            \index{\verb/-t/}
            \end{itemize}
\item The macros for microEMACS have been modified for version
      3.9+ of microEMACS.\index{microEMACS}
      \begin{itemize}
      \item F3: function key Shift-f3 opens a system browser window
              with a list of all algorithm names of MAS. Use
              search-string to locate algorithm names.
      \item F4: function key Shift-f4 switches to a window containing
              the definition module where the algorithm description
              is located.
      \end{itemize}
\end{enumerate}

The major changes between release 0.30 and 0.60 are:
\index{release 0.6}
\begin{enumerate}
\item added language extensions for specification capabilities,
\item added a parser for the ALDES language and 
      possibility for interpretation of ALDES programs,
\item added a linear algebra package,
\item added an interface between the MAS language 
      and the distributive polynomial system,
\item improved symbol handling by hash tables 
      combined with balanced trees,
\item EMS support for IBM PC implementations.
\end{enumerate}

The minor changes between release 0.30 and 0.60 are:
\begin{enumerate}
\item PRAGMA construct for the state definition of 
      the MAS executable program.
\item Overloading of MAS arithmetical operators 
      by generic function names.
\item Typed string constants in MAS expressions.
\item VAR parameters in MAS procedure declarations in 
      ALDES style.
\item Static scope analysis by the parser.\index{scope}
\item Explicit stack overflow check since not all compilers 
      handled stack overflow correctly.
\end{enumerate}


%geht nicht \chapter*{Bibliography}
\addcontentsline{toc}{chapter}{Bibliography}
\def\etal{{\em et. al. }}

\begin{thebibliography}{Stoutemyer 86}

\bibitem[Appel \etal 88]{Appel 88} A. W. Appel, R. Milner, 
        R. W. Harper, D. B. MacQueen,
        {\em Standard ML Reference Manual (preliminary draft)},
        University of Edinburgh, LFCS Report, 1988.

\bibitem[Buchberger 65]{Buchberger 65} B. Buchberger.
        {\em Ein Algorithmus zum Auffinden der Basiselemente des
        Restklassenringes nach einem nulldimensionalen
        Polynomideal},
        Dissertation, University of Insbruck 1965.

\bibitem[Buchberger 70]{Buchberger 70} B. Buchberger.
        {\em Ein algorithmisches Kriterium f\"ur die L\"osbarkeit
        eines algebraischen Gleichungssystems},
        Aequ. Math. {\bf 4}, 1970, pp 374--383.

\bibitem[Buchberger \etal 82]{BCL 82} B. Buchberger, 
        G. E. Collins, R. G. Loos,
        {\em Computer algebra -- symbolic and algebraic computation}
        Computing Supplement,
        Vienna: Springer, 1982.

\bibitem[Buchberger 85]{Buchberger 85} B. Buchberger.
        {\em Gr\"obner bases: An algorithmic method in
        polynomial ideal theory},
        In:(N.K.Bose ed.) Progress, directions and open problems
        in multidimensional systems theory. pp 184--232.
        Dordrecht: Reidel Publ. Comp. (1985)

\bibitem[B\"oge \etal 85]{BGK 85} W. B\"oge, R. Gebauer, H. Kredel.
        {\em Gr\"obner bases using SAC--2},
        Proc. EUROCAL '85
        European Conference on Computer Algebra.
        Linz 1985,
        Springer Lect. Notes Comp. Sci. {\bf 204}, pp 272--274, 1986.

\bibitem[B\"oge \etal 86]{BGK 86} W. B\"oge, R. Gebauer, H. Kredel.
        {\em Some Examples for Solving Systems of Algebraic
        Equations by Calculating Gr\"obner Bases.}
        J. Symbolic Computation (1986) {\bf 1}, pp 83--98.

\bibitem[Calmet \etal 87]{Calmet 87} J. Calmet, D. Lugiez,
        {\em A knowledge--based system for Computer Algebra},
        SIGSAM Bulletin 1987, {\bf 21} / 1, pp 7--13, February 1987.

\bibitem[Collins \etal 82]{Collins 82} G.E. Collins, R. Loos,
        {\em ALDES / SAC--2 now available},
        SIGSAM Bulletin 1982, and several reports distributed
        with the ALDES / SAC--2 system.

\bibitem[Davenport \etal 90]{Davenport 90} J. H. Davenport,
        B. M. Trager,
        {\em Scratchpad's View of Algebra I:
        Basic Commutative Algebra},
        Proc. DISCO 90 Capri, LNCS 429, pp 40--54, Springer, 1990.

\bibitem[Engeln \etal 88]{Engeln 88} 
        G. Engeln--M\"ullges, F. Reutter, \\
        {\em Formelsammlung zur Numerischen Mathematik
             mit Modula--2 Programmen},
        BI--Wissenschaftsverlag, Mannheim 1988.

\bibitem[Fitch \etal 77]{Fitch 77} J.P. Fitch, A.C. Norman,
        {\em Implementing LISP in a High--level Language},
        Software--Practice and Experience Vol.7, pp 713--725 (1977).

\bibitem[Gebauer \etal 83]{Gebauer Kredel 83} R. Gebauer, H. Kredel.
        {\em Distributive Polynomial System.}
        Several Technical Reports,
        Institut f\"ur Angewandte Mathematik,
        Universit\"at Heidelberg, 1983.

\bibitem[Gebauer \etal 83a]{Gebauer Kredel 83a} R. Gebauer, H. Kredel.
        {\em Buchberger algorithm system.}
        Technical Report,
        Institut f\"ur Angewandte Mathematik,
        Universit\"at Heidelberg, 1983.
        (see also SIGSAM Bulletin Vol. 18, No. 1, p 19.)

\bibitem[Char \etal  86]{Geddes 86} B. W. Char, G. J. Fee,
        K. O. Geddes, G. H. Gonnet, M. B. Monagan,
        {\em A Tutorial Introduction to Maple},
        J. Symbolic Computation 2, pp 179--200, 1986.

\bibitem[Goldberg 81]{Goldberg 81} A. Goldberg,
        {\em Introducing the Smalltalk--80 System},
        Byte 6, 8 pp 14--35, (August 1981).

\bibitem[Hearn 87]{Hearn 87} A.C. Hearn,
        {\em REDUCE 3.3},
        The Rand Corporation, 1987.

\bibitem[Jenks \etal 84]{Jenks 84} R. D. Jenks {\em et al.}
        {\em SCRATCHPAD II, An Experimental Computer Algebra System,
        Abbreviated Primer and Examples},
        Mathematical Sciences Department, IBM, Yorktown Heights, 1984.

\bibitem[Jenks \etal 85]{Jenks 85} R. D. Jenks {\em et al.},
        {\em Scratchpad II Programming Language Manual},
        Computer Algebra Group, IBM, Yorktown Heights, NY, 1985.

\bibitem[Kredel 87]{Kredel 87} H. Kredel,
        {\em Primary Ideal Decomposition},
        Proc. EUROCAL '87 Leipzig, Lecture Notes Computer Science 378,
        pp 270--281, 1989.

\bibitem[Kredel 88]{Kredel 88} H. Kredel,
        {\em From SAC--2 to Modula--2},
        Proc. ISSAC '88 Rome, Lecture Notes Computer Science 358,
        pp 447--455, 1989.

\bibitem[Kredel 88a]{Kredel 88a} H. Kredel,
        {\em Real Roots of Zero Dimensional Ideals},
        MIP--8824, FMI, University of Passau, 1988.

\bibitem[Kredel \etal 88]{Kredel 88b} H. Kredel, V. Weispfenning,
        {\em Computing Dimension ans Independent Sets 
        for Polynomial Ideals},
        J. Symbolic Computation (1988) {\bf 6}, pp 231--247.

\bibitem[Kredel 90]{Kredel 90} H. Kredel,
        {\em MAS Modula--2 Algebra System},
        Proc. DISCO 90 Capri, LNCS 429, pp 270--271, Springer, 1990.

\bibitem[Kredel 90a]{Kredel 90a} H. Kredel,
        {\em Computing in Polynomial Rings of Solvable Type},
        Proc. IV. Int. Conf. Computer Algebra in Physical Research, 
        JINR Dubna, UdSSR, May 1990.

\bibitem[Kredel 91]{Kredel 91} H. Kredel,
        {\em Semantics of the MAS Language},
        Proc. ISSAC' 91, {\em to appear}.

\bibitem[Lawrence 87]{Lawrence 87} D.M. Lawrence,
        {\em micro EMACS 3.8 Editor}, 1987.

\bibitem[Loos 76]{Loos 76} R. G. K. Loos.
        {\em The Algorithm Description Language ALDES (Report)},
        SIGSAM Bulletin {\bf 14}/1, pp 15--39, 1976.

\bibitem[Marti \etal 78]{Marti 78} J. B. Marti,
        A. C. Hearn, M. L. Griss, C. Griss.
        {\em Standard Lisp Report.}
        University of Utah, Salt Lake City, 1978.

\bibitem[Mateti 88]{Mateti 88} P. Mateti,
        {\em Gul\"am Shell}, 1987.

\bibitem[Pavelle \etal 85]{Pavelle 85} R. Pavelle, P. R. Wang,
        {\em MACSYMA From F to G},
        J. Symbolic Computation 1, pp 69--100, 1985.

\bibitem[Rich \etal 88]{Rich 88} A. Rich, J. Rich, D. R. Stoutemyer.
        {\em DERIVE A Mathematical Assistant},
        The Soft Warehouse. Honolulu, Hawaii, 1988.

\bibitem[Robbiano 85]{Robbiano 85} L. Robbiano,
        {\em Term orderings on the polynomial ring.}
        Proc. EUROCAL '85
        European Conference on Computer Algebra.
        Linz 1985,
        Springer Lect. Notes Comp. Sci. {\bf 204}, pp. 513--517, 1986.

\bibitem[Schrader 76]{Schrader 76} R. Schrader.
        {\em Zur konstruktiven Idealtheorie.} \\
        Diplomarbeit,
        Mathematisches Institut II,
        Universit\"at Karlsruhe, 1976.

\bibitem[Stoutemyer 86]{Stoutemyer 86} D. R. Stoutemyer.
        {\em $\mu$--MATH--86},
        The Soft Warehouse. Honolulu, Hawaii, 1986.

\bibitem[Stoyan \etal 84]{Stoyan 84} H. Stoyan, G. Goerz,
        {\em LISP},
        Springer Verlag, Heidelberg, 1984.

\bibitem[TDI 86]{TDI 86} TDI,
        {\em Modula--2/ST Compiler},
        Clifton, Bristol, UK, 1986.

\bibitem[Trinks 78]{Trinks 78} W. Trinks,
        {\em \"Uber Buchbergers Verfahren Systeme algebraischer
        Gleichungen zu l\"osen.}
        J. Number Theory, Vol. 10, pp 475--488, 1978.

\bibitem[Weispfenning 87]{Weispfenning 87} V. Weispfenning,
        {\em Admisible orders and linear forms.}
        ACM SIGSAM Bulletin, Vol. 21, No. 2, pp 16--18, May 1987.

\bibitem[Winkler \etal 85]{Winkler 85} F. Winkler, B. Buchberger,
        F. Lichtenberg, H. Rolletschek.
        {\em An algorithm for constructing canonical bases
        (Gr\"obner bases) of polynomial ideals}.
        ACM/TOMS {\bf 11}, pp 66--78, 1985.

\bibitem[Wirsing 86]{Wirsing 86} M. Wirsing,
        {\em Structured Algebraic Specifications:
        A Kernel Language},
        Theoretical Computer Science {\bf 42}, pp 123--249,
        Elsevier Science Publishers B.V. (North--Holland) (1986).

\bibitem[Wirth 85a]{Wirth 85a} N. Wirth,
        {\em Programming in Modula--2},
        Springer, Berlin, Heidelberg, New York, 1985.

\bibitem[Wirth 85b]{Wirth 85b} N. Wirth,
        {\em Compilerbau},
        Teubner Verlag, Stuttgart, 1985.

\bibitem[Wirth 88]{Wirth 88} N. Wirth,
        {\em From Modula to Oberon}, pp 661--670,
        {\em The Programming Language Oberon}, pp 670--690,
        Software--Practice and Experience Vol. 18(7) (July 1988).

\bibitem[Wirth \etal 89]{Wirth 89} N. Wirth, J. Gutknecht,
        {\em The Oberon System}, \mbox{  } pp 857--893,
        Software--Practice and Experience Vol. 19(9) (September 1989).

\bibitem[Wolfram 88]{Wolfram 88} Wolfram Research Inc.,
        {\em Mathematica},
        Addison--Wesley, Reading, 1988.

\end{thebibliography}




