				Mathomatic
				    by
			    George Gesslein II

This archive contains the C source code for Mathomatic, the automatic
algebraic manipulator.  It should compile and run correctly under Unix,
GNU/Linux, and Mac OS-X, without any modifications.

Mathomatic is a small, portable, general purpose CAS (Computer Algebra
System) that can solve, simplify, and combine algebraic equations.  It does
some calculus and is very easy to use.

To compile, just type "make" at a shell prompt.  This will compile the C
source code to create the executable file named "mathomatic".  To run
Mathomatic, type "./mathomatic" at the shell prompt.

To test most functionality, type "make test".  To install, type "su root",
then "make install".

To add "readline" editing and history of all Mathomatic input, type "make
clean" then "make READLINE=1".

A typical installation is done by typing the following at the shell prompt:

	make READLINE=1
	make test
	sudo make install

This will install the executable, man page, and documentation in the proper
directories in "/usr/local".

To uninstall from the system, type:

	sudo make uninstall

This software is copyrighted and made available under the GNU Lesser GPL (see
"LICENSE.txt").

  The file "changes.txt" is the version history of Mathomatic.
  The directory "doc" contains the HTML Mathomatic documentation.
  The directory "tests" contains test scripts and other interesting scripts.
  The directory "primes" contains the Mathomatic Prime Number Tools.
  The directory "lib" contains files for using Mathomatic in other programs.

For quick help while running Mathomatic, use the "help" command.

For the latest source code and information, go to the Mathomatic website:
"http://www.mathomatic.com".

Author e-mail: gesslein@panix.com

Author postal address:

        George Gesslein II
	875 Cobb Street
	Groton, New York 13073
        USA

Please email me any equations that don't work perfectly with Mathomatic.

Thanks go to John Blommers at "http://www.blommers.org" and Gordon McKinney
at "http://gmckinney.info" for their support, testing, and good ideas.  And
to Marijke van Gans for her fine programming examples.  And to Jochen
Plumeyer at "http://plumeyer.org" for hosting "mathomatic.com".


             Compile-Time Defines for the Mathomatic Source Code
             ---------------------------------------------------

To compile Mathomatic for UNIX, GNU/Linux, Mac OS-X, or any POSIX compliant
OS, define "UNIX".  To compile Mathomatic for a generic system, simply
compile with no defines.  To compile for Microsoft Win32 using Cygwin, define
"CYGWIN".

Define "READLINE" and include the readline libraries at link time to use
readline mode.  This will allow easy command line editing and history.

Define "SILENT" to remove all helpful messages and debugging code.  This is
useful when using Mathomatic as a symbolic math library.  Code size is
reduced 10%.

Define "SECURE" to disable file reading and writing and shell escape.  This
is useful when making Mathomatic available to the public through telnet or
CGI programs.  It is also useful when making ROMable code.

Define "TIMEOUT_SECONDS" to set the maximum number of seconds Mathomatic may
run.  Upon timeout, Mathomatic properly exits.  This is useful when making
Mathomatic a CGI program, so it won't overload the server.

Define "I18N" to enable internationalization.
