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.
Symbolic manipulations
The symbolic manipulations supported typically include
- simplification to the smallest possible expression or some standard form, including automatic simplification with assumptions and simplification with constraints
- substitution of symbolic, functors or numeric values for expressions
- change of form of expressions: expanding products and powers, partial and full factorization, rewriting as partial fractions, constraint satisfaction, rewriting trigonometric functions as exponentials, etc.
- partial and total differentiation
- symbolic constrained and unconstrained global optimization
- solution of linear and some non-linear equations over various domains
- solution of some differential and difference equations
- taking some limits
- some indefinite and definite integration, including multidimensional integrals
- integral transforms
- arbitrary-precision numeric operations
- Series operations such as expansion, summation and products
- matrix operations including products, inverses, etc.
- display of mathematical expressions in two-dimensional mathematical form, often using typesetting systems similar to TeX (see also Prettyprint)
- add-ons for use in applied mathematics such as physics packages for physical computation
- plotting graphs and parametric plots of functions in two and three dimensions, and animating them
- APIs for linking it on an external program such as a database, or using in a programming language to use the computer algebra system
- drawing charts and diagrams
- string manipulation such as matching and searching
- statistical computation
- Theorem proving and verification
- graphic production and editing such as CGI and signal processing as image processing
- sound synthesis
(In the above, the word some indicates that the operation cannot always be performed.)
Many also include a programming language, allowing users to implement their own algorithms.
Some computer algebra systems focus on a specific area of application; these are typically developed in academia and are free. They can be relatively inefficient for numeric operations compared to numeric systems.
Types of expressions
The expressions manipulated by the CAS typically include polynomials in multiple variables; standard functions of expressions (sine, exponential, etc.); various special functions (Γ, ζ, erf, Bessel functions, etc.); arbitrary functions of expressions; optimization; derivatives, integrals, simplifications, sums, and products of expressions; truncated series with expressions as coefficients, matrices of expressions, and so on. Numeric domains supported typically include real, complex, interval, rational, and algebraic.
History
Computer algebra systems began to appear in the early 1970s, and evolved out of research into artificial intelligence, though the fields are now regarded as largely separate. Pioneering work was conducted by the Nobel Prize laureate Martin Veltman, who designed a program for symbolic mathematics, especially High Energy Physics, called Schoonschip (Dutch for "clean ship") in 1963.
The first popular systems were muMATH, Reduce, Derive (based on muMATH), and Macsyma; a copyleft version of Macsyma called Maxima is actively being maintained. The current market leader is Mathematica[1] which is commonly used by research mathematicians, scientists, and engineers. Maple, MuPAD and MathCad are other commercial systems.
In 1987 Hewlett-Packard introduced the first hand held calculator CAS with the HP-28 series, and it was possible, for the first time in a calculator, to arrange algebraic expressions, differentiation, limited symbolic integration, Taylor series construction and a solver for algebraic equations.
The Texas Instruments company in 1995 released the TI-92 calculator with an advanced CAS based on the software Derive. This, along with its successors (including the TI-89 series and the newer TI-Nspire CAS released in 2007) featured a reasonably capable and relatively inexpensive hand-held computer algebra system.
Mathematics used in computer algebra systems
See also
References
External links
|