HOME

TheInfoList



OR:

A computer algebra system (CAS) or symbolic algebra system (SAS) is any mathematical software with the ability to manipulate
mathematical expressions In mathematics, an expression or mathematical expression is a finite combination of symbols that is well-formed according to rules that depend on the context. Mathematical symbols can designate numbers ( constants), variables, operations, fun ...
in a way similar to the traditional manual computations of mathematicians and scientists. The development of the computer algebra systems in the second half of the 20th century is part of the discipline of "
computer algebra In mathematics and computer science, computer algebra, also called symbolic computation or algebraic computation, is a scientific area that refers to the study and development of algorithms and software for manipulating mathematical expressions ...
" or "
symbolic computation In mathematics and computer science, computer algebra, also called symbolic computation or algebraic computation, is a scientific area that refers to the study and development of algorithms and software for manipulating mathematical expressions ...
", which has spurred work in algorithms over mathematical objects such as polynomials. Computer algebra systems may be divided into two classes: specialized and general-purpose. 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 a user working in any scientific field that requires manipulation of mathematical expressions. To be useful, a general-purpose computer algebra system must include various features such as: *a user interface allowing a user to enter and display mathematical formulas, typically from a keyboard, menu selections, mouse or stylus. *a programming language and an interpreter (the result of a computation commonly has an unpredictable form and an unpredictable size; therefore user intervention is frequently needed), *a simplifier, which is a rewrite system for simplifying mathematics formulas, *a memory manager, including a garbage collector, needed by the huge size of the intermediate data, which may appear during a computation, *an arbitrary-precision arithmetic, needed by the huge size of the integers that may occur, *a large library of mathematical algorithms and special functions. The library must not only provide for the needs of the users, but also the needs of the simplifier. For example, the computation of polynomial greatest common divisors is systematically 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. Significant systems include
Axiom An axiom, postulate, or assumption is a statement that is taken to be true, to serve as a premise or starting point for further reasoning and arguments. The word comes from the Ancient Greek word (), meaning 'that which is thought worthy or f ...
, Maxima, Magma, Maple,
Mathematica Wolfram Mathematica is a software system with built-in libraries for several areas of technical computing that allow machine learning, statistics, symbolic computation, data manipulation, network analysis, time series analysis, NLP, optimizat ...
, and SageMath.


History

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 Artificial intelligence (AI) is intelligence—perceiving, synthesizing, and inferring information—demonstrated by machine A machine is a physical system using Power (physics), power to apply Force, forces and control Motion, moveme ...
. A prime example for the first development was the pioneering work conducted by the later Nobel Prize laureate in physics Martinus Veltman, who designed a program for symbolic mathematics, especially high-energy physics, called Schoonschip (Dutch for "clean ship") in 1963. Another early system was
FORMAC __NOTOC__ FORMAC, the FORmula MAnipulation Compiler, was the first computer algebra system to have significant use. It was developed by Jean E. Sammet and her team, as an extension of FORTRAN IV. The compiler was implemented as a preprocessor tak ...
. Using
Lisp A lisp is a speech impairment in which a person misarticulates sibilants (, , , , , , , ). These misarticulations often result in unclear speech. Types * A frontal lisp occurs when the tongue is placed anterior to the target. Interdental lisping ...
as the programming basis,
Carl Engelman Carl Engelman (October 21, 1929 – November 26, 1983) was an American computer scientist. Carl is best known as the creator of MATHLAB. He was employed by Mitre Corporation and Symbolics. He was a visiting professor at the University of Turin ...
created
MATHLAB MATHLAB is a computer algebra system created in 1964 by Carl Engelman at MITRE and written in Lisp. "MATHLAB 68" was introduced in 1967 and became rather popular in university environments running on DECs PDP-6 and PDP-10 under TOPS-10 or TE ...
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. The first popular computer algebra systems were muMATH, Reduce, Derive (based on muMATH), and Macsyma; a popular
copyleft Copyleft is the legal technique of granting certain freedoms over copies of copyrighted works with the requirement that the same rights be preserved in derivative works. In this sense, ''freedoms'' refers to the use of the work for any purpose, ...
version of Macsyma called Maxima is actively being maintained. Reduce became free software in 2008. As of today, the most popular commercial systems are
Mathematica Wolfram Mathematica is a software system with built-in libraries for several areas of technical computing that allow machine learning, statistics, symbolic computation, data manipulation, network analysis, time series analysis, NLP, optimizat ...
and Maple, which are commonly used by research mathematicians, scientists, and engineers. Freely available alternatives include SageMath (which can act as a front-end to several other free and nonfree CAS). In 1987,
Hewlett-Packard The Hewlett-Packard Company, commonly shortened to Hewlett-Packard ( ) or HP, was an American multinational information technology company headquartered in Palo Alto, California. HP developed and provided a wide variety of hardware components ...
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. In 1999, the independently developed CAS Erable for the HP 48 series became an officially integrated part of the firmware of the emerging HP 49/50 series, and a year later into the
HP 40 series HP may refer to: Businesses and organisations * HP Inc., an American technology company ** Hewlett-Packard, the predecessor to HP Inc. * HP Foods ** HP Sauce, formerly made by HP Foods * Handley Page, an aircraft company * Hindustan Petroleum * ...
as well, whereas the HP Prime adopted the Xcas system in 2013. The Texas Instruments company in 1995 released the TI-92 calculator with a CAS based on the software Derive; the
TI-Nspire series The TI-Nspire is a graphing calculator made by Texas Instruments, which was released in July 2007, notable for featuring a non-QWERTY keyboard and a different key-by-key layout than its predecessors. Development The original TI-Nspire ...
replaced Derive in 2007. The TI-89 series, first released in 1998, also contains a CAS. Casio released their first CAS calculator with the
CFX-9970G Graphic calculators made by Casio include the touchscreen ClassPad 300 as well as the models with traditional buttons which can be divided into two main generations listed below. Casio produced the world's first graphing calculator, the fx-700 ...
and succeeded it with the Algebra FX Series in 1999-2003 and the current ClassPad Series. More recently, computer algebra systems have been implemented using
artificial neural networks Artificial neural networks (ANNs), usually simply called neural networks (NNs) or neural nets, are computing systems inspired by the biological neural networks that constitute animal brains. An ANN is based on a collection of connected unit ...
.


Symbolic manipulations

The symbolic manipulations supported typically include: *simplification to a smaller expression or some
standard form Standard may refer to: Symbols * Colours, standards and guidons, kinds of military signs * Standard (emblem), a type of a large symbol or emblem used for identification Norms, conventions or requirements * Standard (metrology), an object th ...
, including automatic simplification with assumptions and simplification with constraints *
substitution Substitution may refer to: Arts and media *Chord substitution, in music, swapping one chord for a related one within a chord progression * Substitution (poetry), a variation in poetic scansion * "Substitution" (song), a 2009 song by Silversun Pi ...
of symbols or numeric values for certain expressions *change of form of expressions: expanding products and powers, partial and full factorization, rewriting as
partial fraction In algebra, the partial fraction decomposition or partial fraction expansion of a rational fraction (that is, a fraction such that the numerator and the denominator are both polynomials) is an operation that consists of expressing the fraction as ...
s, constraint satisfaction, rewriting trigonometric functions as exponentials, transforming logic expressions, etc. * partial and total differentiation *some
indefinite Indefinite may refer to: * the opposite of definite in grammar ** indefinite article ** indefinite pronoun * Indefinite integral, another name for the antiderivative * Indefinite forms in algebra, see definite quadratic forms * an indefinite matr ...
and definite integration (see
symbolic integration In calculus, symbolic integration is the problem of finding a formula for the antiderivative, or ''indefinite integral'', of a given function ''f''(''x''), i.e. to find a differentiable function ''F''(''x'') such that :\frac = f(x). This is also ...
), including multidimensional integrals *symbolic constrained and unconstrained global optimization * solution of linear and some non-linear equations over various domains *solution of some differential and
difference equation In mathematics, a recurrence relation is an equation according to which the nth term of a sequence of numbers is equal to some combination of the previous terms. Often, only k previous terms of the sequence appear in the equation, for a parameter ...
s *taking some
limit Limit or Limits may refer to: Arts and media * ''Limit'' (manga), a manga by Keiko Suenobu * ''Limit'' (film), a South Korean film * Limit (music), a way to characterize harmony * "Limit" (song), a 2016 single by Luna Sea * "Limits", a 2019 ...
s *integral transforms * series operations such as expansion, summation and products *matrix operations including products, inverses, etc. * statistical computation * theorem proving and verification which is very useful in the area of experimental mathematics * optimized code generation In the above, the word ''some'' indicates that the operation cannot always be performed.


Additional capabilities

Many also include: *a programming language, allowing users to implement their own algorithms * arbitrary-precision numeric operations *exact integer arithmetic and number theory functionality * Editing of mathematical expressions in two-dimensional form *plotting graphs and parametric plots of functions in two and three dimensions, and animating them *drawing charts and diagrams *
APIs Apis or APIS may refer to: * Apis (deity), an ancient Egyptian god * Apis (Greek mythology), several different figures in Greek mythology * Apis (city), an ancient seaport town on the northern coast of Africa **Kom el-Hisn, a different Egyptian ci ...
for linking it on an external program such as a database, or using in a programming language to use the computer algebra system *
string manipulation In computer programming, a string is traditionally a sequence of characters, either as a literal constant or as some kind of variable. The latter may allow its elements to be mutated and the length changed, or it may be fixed (after creation). ...
such as matching and searching *add-ons for use in
applied mathematics Applied mathematics is the application of mathematical methods by different fields such as physics, engineering, medicine, biology, finance, business, computer science, and industry. Thus, applied mathematics is a combination of mathemat ...
such as physics,
bioinformatics Bioinformatics () is an interdisciplinary field that develops methods and software tools for understanding biological data, in particular when the data sets are large and complex. As an interdisciplinary field of science, bioinformatics combi ...
,
computational chemistry Computational chemistry is a branch of chemistry that uses computer simulation to assist in solving chemical problems. It uses methods of theoretical chemistry, incorporated into computer programs, to calculate the structures and properties of m ...
and packages for physical computation *solvers for differential equations Some include: *
graphic Graphics () are visual images or designs on some surface, such as a wall, canvas, screen, paper, or stone, to inform, illustrate, or entertain. In contemporary usage, it includes a pictorial representation of data, as in design and manufacture, ...
production and editing such as
computer-generated imagery Computer-generated imagery (CGI) is the use of computer graphics to create or contribute to images in art, printed media, video games, simulators, and visual effects in films, television programs, shorts, commercials, and videos. The images may ...
and signal processing as
image processing An image is a visual representation of something. It can be two-dimensional, three-dimensional, or somehow otherwise feed into the visual system to convey information. An image can be an artifact, such as a photograph or other two-dimensiona ...
* sound synthesis Some computer algebra systems focus on specialized disciplines; these are typically developed in academia and are free. They can be inefficient for numeric operations as compared to numeric systems.


Types of expressions

The expressions manipulated by the CAS typically include polynomials in multiple variables; standard functions of expressions (
sine In mathematics, sine and cosine are trigonometric functions of an angle. The sine and cosine of an acute angle are defined in the context of a right triangle: for the specified angle, its sine is the ratio of the length of the side that is oppo ...
, exponential, etc.); various special functions ( Γ, ζ,
erf Erf or ERF may refer to: Industry * Enerplus, a North American energy producer whose stock is listed as ERF under the TSX and NYSE * ERF (truck manufacturer), a former British truck manufacturer Mathematics * Error function, erf * Exponential ...
, 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 floating-point representation of real numbers, integers (of unbounded size), complex (floating-point representation), interval representation of reals, rational number (exact representation) and
algebraic number An algebraic number is a number that is a root of a non-zero polynomial in one variable with integer (or, equivalently, rational) coefficients. For example, the golden ratio, (1 + \sqrt)/2, is an algebraic number, because it is a root of the po ...
s.


Use in education

There have been many advocates for increasing the use of computer algebra systems in primary and secondary-school classrooms. The primary reason for such advocacy is that computer algebra systems represent real-world math more than do paper-and-pencil or hand calculator based mathematics. This push for increasing computer usage in mathematics classrooms has been supported by some boards of education. It has even been mandated in the curriculum of some regions. Computer algebra systems have been extensively used in higher education. Many universities offer either specific courses on developing their use, or they implicitly expect students to use them for their course work. The companies that develop computer algebra systems have pushed to increase their prevalence among university and college programs. CAS-equipped calculators are not permitted on the ACT, the PLAN, and in some classroomsACT's CAAP Tests: Use of Calculators on the CAAP Mathematics Test
though it may be permitted on all of
College Board The College Board is an American nonprofit organization that was formed in December 1899 as the College Entrance Examination Board (CEEB) to expand access to higher education. While the College Board is not an association of colleges, it runs ...
's calculator-permitted tests, including the SAT, some SAT Subject Tests and the AP Calculus,
Chemistry Chemistry is the scientific study of the properties and behavior of matter. It is a natural science that covers the elements that make up matter to the compounds made of atoms, molecules and ions: their composition, structure, propertie ...
, Physics, and
Statistics Statistics (from German language, German: ''wikt:Statistik#German, Statistik'', "description of a State (polity), state, a country") is the discipline that concerns the collection, organization, analysis, interpretation, and presentation of ...
exams.


Mathematics used in computer algebra systems

* Knuth–Bendix completion algorithm * Root-finding algorithms *
Symbolic integration In calculus, symbolic integration is the problem of finding a formula for the antiderivative, or ''indefinite integral'', of a given function ''f''(''x''), i.e. to find a differentiable function ''F''(''x'') such that :\frac = f(x). This is also ...
via e.g.
Risch algorithm In symbolic computation, the Risch algorithm is a method of indefinite integration used in some computer algebra systems to find antiderivatives. It is named after the American mathematician Robert Henry Risch, a specialist in computer algebra w ...
or
Risch–Norman algorithm In symbolic computation, the Risch algorithm is a method of indefinite integration used in some computer algebra systems to find antiderivatives. It is named after the American mathematician Robert Henry Risch, a specialist in computer algebra ...
* Hypergeometric summation via e.g. Gosper's algorithm * Limit computation via e.g. Gruntz's algorithm * Polynomial factorization via e.g., over finite fields,
Berlekamp's algorithm In mathematics, particularly computational algebra, Berlekamp's algorithm is a well-known method for factoring polynomials over finite fields (also known as ''Galois fields''). The algorithm consists mainly of matrix reduction and polynomial GC ...
or
Cantor–Zassenhaus algorithm In computational algebra, the Cantor–Zassenhaus algorithm is a method for factoring polynomials over finite fields (also called Galois fields). The algorithm consists mainly of exponentiation and polynomial GCD computations. It was invented by ...
. * Greatest common divisor via e.g.
Euclidean algorithm In mathematics, the Euclidean algorithm,Some widely used textbooks, such as I. N. Herstein's ''Topics in Algebra'' and Serge Lang's ''Algebra'', use the term "Euclidean algorithm" to refer to Euclidean division or Euclid's algorithm, is an effi ...
*
Gaussian elimination In mathematics, Gaussian elimination, also known as row reduction, is an algorithm for solving systems of linear equations. It consists of a sequence of operations performed on the corresponding matrix of coefficients. This method can also be used ...
* Gröbner basis via e.g. Buchberger's algorithm; generalization of Euclidean algorithm and Gaussian elimination * Padé approximant * Schwartz–Zippel lemma and testing polynomial identities *
Chinese remainder theorem In mathematics, the Chinese remainder theorem states that if one knows the remainders of the Euclidean division of an integer ''n'' by several integers, then one can determine uniquely the remainder of the division of ''n'' by the product of thes ...
*
Diophantine equation In mathematics, a Diophantine equation is an equation, typically a polynomial equation in two or more unknowns with integer coefficients, such that the only solutions of interest are the integer ones. A linear Diophantine equation equates to a c ...
s * Quantifier elimination over real numbers via e.g. Tarski's method/ Cylindrical algebraic decomposition * Landau's algorithm (nested radicals) * Derivatives of elementary functions and special functions. (e.g. See
derivatives of the incomplete gamma function In mathematics, the upper and lower incomplete gamma functions are types of special functions which arise as solutions to various mathematical problems such as certain integrals. Their respective names stem from their integral definitions, which ...
.) * Cylindrical algebraic decomposition


See also

* List of computer algebra systems * Scientific computation *
Statistical package Statistical software are specialized computer programs for analysis in statistics and econometrics. Open-source * ADaMSoft – a generalized statistical software with data mining algorithms and methods for data management * ADMB – a software ...
* Automated theorem proving * Algebraic modeling language *
Constraint-logic programming Constraint logic programming is a form of constraint programming, in which logic programming is extended to include concepts from constraint satisfaction. A constraint logic program is a logic program that contains constraints in the body of c ...
* Satisfiability modulo theories


References


External links


Curriculum and Assessment in an Age of Computer Algebra Systems
- From the Education Resources Information Center Clearinghouse for Science, Mathematics, and Environmental Education,
Columbus, Ohio Columbus () is the state capital and the most populous city in the U.S. state of Ohio. With a 2020 census population of 905,748, it is the 14th-most populous city in the U.S., the second-most populous city in the Midwest, after Chicago, and t ...
. *Richard J. Fateman. "Essays in algebraic simplification." Technical report MIT-LCS-TR-095, 1972. ''(Of historical interest in showing the direction of research in computer algebra. At the MIT LCS website

'' {{DEFAULTSORT:Computer Algebra System Computer algebra systems, Algebra education