Mathomatic

Mathomatic
Mathomatic
Mathomatic screenshot
Mathomatic on a terminal emulator
Developer(s) George Gesslein II
Initial release 1987, 23–24 years ago[1]
Stable release 15.7.1 / November 18, 2011; 0 days ago (2011-11-18)
Development status Active
Written in C
Operating system Cross-platform, Unix-like
Available in English
Type Computer algebra system
License GNU Lesser General Public License
Website mathomatic.org

Mathomatic is a free, portable, general-purpose computer algebra system (CAS) that can symbolically solve, simplify, combine, and compare algebraic equations, perform complex number, modular, and polynomial arithmetic, etc. It does some symbolic calculus (derivative, extrema, Taylor series, and polynomial integration and Laplace transforms) and handles all elementary algebra except logarithms. Trigonometric functions can be entered and manipulated using complex exponentials, with the GNU m4 preprocessor. Not currently implemented are general functions like f(x), arbitrary-precision and interval arithmetic, and matrices.

Contents

Features

Mathomatic excels at solving, differentiating, simplifying, and calculating elementary algebra.

The software does not include a GUI except on the iPhone.[2] It is a console mode application using a color command-line interface based on GNU readline that runs in a terminal emulator under any UNIX-like operating system. The console interface is very simple and requires little more than learning the basic algebra notation to get started.[3]

There is no programming capability; the interpreter works like an algebraic calculator. Expressions and equations are entered in standard algebraic infix notation. Operations are performed on them by entering simple English commands.

Because all numeric arithmetic is double precision floating point, and round-off error is not tracked, Mathomatic is not suitable for applications requiring high precision, such as astronomical calculations. It is useful for symbolic-numeric calculations of about 14 decimal digits accuracy, although many results will be exact, if possible.

Mathomatic can be used as a floating point or integer arithmetic code generating tool, simplifying and converting equations into optimized assignment statements in the Python, C, and Java programming languages.

The Mathomatic source code can be compiled as a symbolic math library with a very simple API, which can be linked to C compatible programs that need to use the Mathomatic symbolic math engine.

Session examples

Mathomatic screenshot
1-> x = (a+1)*(b+2)

#1: x = (a + 1)*(b + 2)

1-> b ; solve for b

           x
#1: b = ------- - 2
        (a + 1)

1-> code C ; output C programming language code
b = ((x/(a + 1.0)) - 2.0);
1-> variables C ; define the variables for the C compiler
double x;
double a;
double b;
1->

History

Development of Mathomatic was started in the year 1986 by George Gesslein II, as an experiment in computerized mathematics.[4] It was originally written in Microsoft C for MS-DOS. Versions 1 and 2 were published by Dynacomp of Rochester, New York in 1987[1] and 1988[5] as a scientific software product for DOS. Afterwards it was released as shareware and then emailware, with a 2D equation graphing program. At the turn of the century, Mathomatic was ported to the GNU C Compiler under Linux and became free software. The graphing program was discontinued; 2D/3D graphing of equations is now accomplished with gnuplot.

The name "Mathomatic" is a portmanteau of "math" and "automatic", and was inspired by the naming and automation of Rog-O-Matic, which was an early experiment in artificial intelligence.

Available platforms

Mathomatic is available for Microsoft Windows using MinGW.[6] It is available for Mac OS X,[7] for the iPhone,[2] and for the Nintendo DS under DSLinux and stand-alone.[8] Fedora Linux,[9] Slackware,[10] Debian,[11] Ubuntu,[12] Gentoo Linux,[13] and all of the BSD Unix distributions include Mathomatic as an automatically installable package. The ports are all maintained by separate individuals.

Requirements

Building from source requires a C compiler with the standard C libraries. If compiled with the GCC C compiler for a Unix-like operating system, no changes need to be made to the source code.

Mathomatic can be ported to any computer with at least 1 megabyte of free RAM. The Mathomatic standard distribution[14] memory requirement defaults to a maximum of 400 megabytes, depending on the size of the equation spaces and how many expressions have been entered. Equation spaces are fixed size arrays that are allocated as needed, the size of which is set during compilation or startup. Each algebraic expression or equation entered at the main prompt is stored in an equation space.

See also

References

External links


Wikimedia Foundation. 2010.

Игры ⚽ Нужна курсовая?

Look at other dictionaries:

  • Comparison of computer algebra systems — The following tables provide a comparison of computer algebra systems (CAS). Contents 1 General 1.1 Functionality 1.2 Operating system support 2 Hand held calculator CAS …   Wikipedia

  • Software matemático — es aquel software que se utiliza para realizar, apoyar o ilustrar problemas matemáticos; entre este tipo de software se encuentran los sistemas algebraicos computacionales y graficadores de funciones, entre otros. Existen grupos y proyectos… …   Wikipedia Español

  • MATLAB — For the region in Bangladesh, see Matlab Upazila. MATLAB MATLAB R2011a screenshot …   Wikipedia

  • Mathematica — For other uses, see Mathematica (disambiguation). Mathematica Mathema …   Wikipedia

  • Computer algebra system — A computer algebra system (CAS) is a software program that facilitates symbolic mathematics. The core functionality of a CAS is manipulation of mathematical expressions in symbolic form. Contents 1 Symbolic manipulations 2 Additional capabilities …   Wikipedia

  • Maple (software) — Maple Maple interface Developer(s) Waterloo Maple (Maplesoft) Stable release 15.01 / June 21, 2011; 4 months ago (2011 06 21) …   Wikipedia

  • Maxima (software) — For other uses, see Maxima (disambiguation). Maxima wxMaxima screenshot …   Wikipedia

  • Magma computer algebra system — Magma Developer(s) Computational Algebra Group, School of Mathematics and Statistics, University of Sydney Stable release 2.17 8 / May 27, 2011 Operating system …   Wikipedia

  • MuPAD — Developer(s) The Mathworks Inc. Stable release …   Wikipedia

  • Derive (computer algebra system) — Derive Developer(s) Texas Instruments Stable release 6.1 Development status Discontinued Written in muLISP Operatin …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”