mathomatic (1) - Linux Manuals

mathomatic: a computer algebra system


mathomatic - a computer algebra system
rmath - a computer algebra system with functions


mathomatic [ -bchqrtuvwx ] [ -s level ] [ -m number ] [ input_files ]
rmath [ input_files ]


Mathomatic is a portable Computer Algebra System (CAS) that can solve, simplify, combine, and compare algebraic equations, perform general complex number and polynomial arithmetic, etc. It does some calculus and handles all elementary algebra, except logarithms. Plotting expressions with gnuplot is also supported.

mathomatic is the main Mathomatic application that does interactive symbolic-numeric mathematics through a console interface. The numerical arithmetic is double precision floating point with up to 14 decimal digits accuracy. Many results will be exact, because multiple combined floating point numbers can be used for a single mathematical value; for example: 2^(1/3), which is the cubed root of 2 exactly.

rmath allows you to use Mathomatic with input of functions like sin(x) and sqrt(x) automatically expanded to equivalent algebraic expressions by the m4 macro processor.


Enable bold colors. Color mode will be turned on and colors will be brighter if this option is specified. Same as the "set bold color" command.

Toggle color mode. This mode outputs ANSI terminal escape sequences to make each level of parentheses a different color, for easier reading. Requires a terminal emulator that supports ANSI color escape sequences. If the colors are too hard to see, use the -b option to increase the brightness.

Display a brief help message listing all of these options and then exit.

-m number
Change the memory size of equation spaces. It is followed by a decimal floating point number which is a multiplier of the default equation space size. This allows larger equation spaces so that manipulating extremely large expressions will succeed without getting the "Expression too large" error. Specifying a number higher than 100 may make Mathomatic unresponsive.

Set quiet mode. The startup message and prompts are not displayed. This is useful when piping or redirecting input into Mathomatic, because the input won't be displayed, so prompt output should be turned off. This option does the same thing as the "set no prompt" command.

Disable readline input processing. Readline allows using the cursor keys and outputs terminal control codes which can be turned off with this option.

-s level
Set the enforced security level for the Mathomatic session. Level 0 is the default with no security. Level 1 disallows shelling out. Level 2 disallows shelling out and writing files. Level 3 disallows shelling out and reading/writing files for complete security. This run-time option was created for use on open public servers that can't use the SECURE compile-time define.

Set test mode. Used when testing and comparing output. Bypasses loading startup file, turns off color mode and readline, sets wide output mode, ignores pause command, etc.

Guarantee that standard output and standard error output are unbuffered. Useful when piping.

Display version number, compilation options used, maximum possible memory usage, then exit.

Set wide output mode for an unlimited width output device like the "set wide" command does. Sets infinite screen columns and rows so that 2D (two dimensional) expression output will always succeed and not be downgraded to 1D output when it doesn't fit in the display area. Use when redirecting output or with a terminal emulator that doesn't wrap lines. This mode only affects 2D output.

Enable HTML output mode (which is also valid XHTML). This makes Mathomatic output suitable for inclusion in a web page. The color mode and bold colors flags affect this mode, allowing HTML color output. Wide output mode is also set by this option, meaning expressions will always be displayed in 2D.


After any options, text files may be specified on the shell command line that will be automatically read in with the read command.

Mathomatic is best run from within a terminal emulator. It uses console line input and output for the user interface. First you type in your mathematical equations in standard infix notation, then you can solve them by typing in the variable name at the prompt, or perform operations on them with simple English commands. Type "help" or "?" for the help command. If the command is longer than 4 letters, you only need to type in the first 4 letters. Most commands operate on the current equation by default.

A command preceded by an exclamation point (such as "!ls") is taken to be a shell command and is passed unchanged to the shell (/bin/sh). "!" by itself invokes the default shell, which is specified in the SHELL environment variable. "!" is also the factorial operator.

Complete documentation is available in HTML format; see the local documentation directory or online at "" for the latest Mathomatic documentation.


The EDITOR environment variable specifies which text editor to use for the edit command.


Optional startup file containing Mathomatic set command options. It should be a text file with one set option per line. Do not include the word "set". For example, the line "no color" will make Mathomatic default to non-color mode, which is useful if you are not using a standard terminal emulator.


The command to take the limit of an expression is partially functional and experimental. All else should work perfectly; if not, report it as a bug on the Launchpad website: "". Please include version information, which you can find by running mathomatic -v or by entering the version command.


Mathomatic has been written by George Gesslein II (gesslein [at] with help from John Blommers ( It is free software, available under the terms and conditions of the GNU Lesser General Public License from "".