Computer algebra system

From Wikipedia, the free encyclopedia
Jump to: navigation, search

A computer algebra system (CAS) is a software program that allows computation of mathematical expressions in a way which is similar to the traditional handwritten computations of the mathematicians and other scientists. The development of the computer algebra systems has impulsed the rise, in the second half of the 20th century, of a new scientific area called "computer algebra" or "symbolic computation". In fact, "when the long-known finite step algorithms were first put on computers, they turned out to be highly inefficient".[1][2] Increasingly, modern numerical computation methods, require symbolic computation steps to deliver maximum efficiency and stability.

Computer algebra systems may be divided in two classes, the specialized ones and the general purpose ones. The specialized ones are devoted to a specific part of mathematics, such as number theory, group theory, or teaching of elementary mathematics.

General purpose computer algebra systems aim to be useful to users working in any scientific field, which have to manipulate mathematical expressions. For being useful, a general purpose computer algebra systems must include various features such as

The library must cover not only the needs of the users, but also the needs of the simplifier. For example, the computation of Polynomial greatest common divisors is systemically used for the simplification of expressions involving fractions.

This large amount of required computer capabilities explains the small number of general purpose computer algebra systems. The main ones are Axiom, Macsyma, Magma, Maple, Mathematica and Sage.

Symbolic manipulations[edit]

The symbolic manipulations supported typically include:

In the above, the word some indicates that the operation cannot always be performed.

Additional capabilities[edit]

Many also include:

Some include:

Some computer algebra systems focus on a specific area of application; these are typically developed in academia and are free. They can be inefficient for numeric operations compared to numeric systems.

Types of expressions[edit]

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, integer, complex, interval, rational, and algebraic.

History[edit]

Computer algebra systems began to appear in the 1960s, and evolved out of two quite different sources—the requirements of theoretical physicists and research into artificial intelligence.

A prime example for the first development was the pioneering work conducted by the later Nobel Prize laureate in physics Martin Veltman, who designed a program for symbolic mathematics, especially High Energy Physics, called Schoonschip (Dutch for "clean ship") in 1963.

Using LISP as the programming basis, Carl Engelman created MATHLAB in 1964 at MITRE within an artificial intelligence research environment. Later MATHLAB was made available to users on PDP-6 and PDP-10 Systems running TOPS-10 or TENEX in universities. Today it can still be used on SIMH-Emulations of the PDP-10. MATHLAB ("mathematical laboratory") should not be confused with MATLAB ("matrix laboratory") which is a system for numerical computation built 15 years later at the University of New Mexico, accidentally named rather similarly.

The first popular computer algebra systems were muMATH, Reduce, Derive (based on muMATH), and Macsyma; a popular copyleft version of Macsyma called Maxima is actively being maintained. As of today, the most popular commercial systems are Mathematica[3] and Maple, which are commonly used by research mathematicians, scientists, and engineers. Freely available alternatives include Sage (which can act as a front-end to several other free and nonfree CAS).

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 a CAS based on the software Derive.

CAS-equipped calculators are not permitted on the ACT, the PLAN, and in some classrooms[4] though it may be permitted on all of College Board's calculator-permitted tests, including the SAT, some SAT Subject Tests and the AP Calculus, Chemistry, Physics, and Statistics exams.

Mathematics used in computer algebra systems[edit]

See also[edit]

References[edit]

  1. ^ This Kaltofen's sentence is about the factorization of polynomials, but remains true, when applied to most algorithms of computer algebra
  2. ^ Kaltofen, Erich (1990), "Polynomial Factorization 1982-1986", in D. V. Chudnovsky; R. D. Jenks, Computers in Mathematics, Lecture Notes in Pure and Applied Mathematics 125, Marcel Dekker, Inc., retrieved October 14, 2012 
  3. ^ Interview with Gaston Gonnet, co-creator of Maple, SIAM History of Numerical Analysis and Computing, March 16, 2005
  4. ^ ACT's CAAP Tests: Use of Calculators on the CAAP Mathematics Test[dead link]

External links[edit]