Mathematical software


Mathematical software is software used to model, analyze or calculate numeric, symbolic or geometric data.
It is a type of application software which is used for solving mathematical problems or mathematical study. There are various views to what is the mathematics, so there is various views of the category of mathematical software which used for them, over from narrow to wide sense.
A type of mathematical software also used by built in the part of another scientific software. A most primary them may be in the category of mathematical software. They are often usually built in the general purpose systems as middleware. So to speak, mathematical software is not only an application software but also basis of another scientific software. And that is its one of the characteristic of mathematical software as that mean.

Several mathematical software often have good user interface for educational purpose. But the core parts of solver of them direct dependent to the algorism by the mathematical knowledge. So it may be common sense that it does not process if it not well solved on mathematical construction at least. That is typical difference of mathematical software for another application software.
Specially, it may be sure common sense that to the attention that there is a such as next case in mathematical software using:
  1. That is not always solvable.
  2. That may be solved theoretically, but most hard to solve actually or physically by computer caused by not in the polynomial time. Encryption software apply the second case.

    Evolution of mathematical software

and symbolic computation had been in most important place of the subject, but other kind of them is also growing now. A useful mathematical knowledge of such as algorism which exist before the invention of electronic computer, helped to mathematical software developing. On the other hand, by the growth of computing power, the new treatment needing conversely the progress of the mathematical science or applied mathematics.

The progress of mathematical information presentation such as TeX or MathML will demand to evolution form formula manipulation language to true mathematics manipulation language. And popularization of general purpose mathematical software, special purpose mathematical software so called one purpose software which used special subject will alive with adapting for environment progress at normalization of platform. So the diversity of mathematical software will be kept.

Software calculator

A software calculator allows the user to perform simple mathematical operations, like addition, multiplication, exponentiation and trigonometry. Data input is typically manual, and the output is a text label.

Computer algebra systems

Many mathematical suites are computer algebra systems that use symbolic mathematics. They are designed to solve classical algebra equations and problems in human readable notation.

Statistics

Many tools are available for statistical analysis of data. See also Comparison of statistical packages.

Theorem provers and proof assistants

Optimization software

Geometry

Numerical analysis

is a mathematical modeling and problem solving software system based on a declarative, rule-based language, commercialized by Universal Technical Systems, Inc..
The Netlib repository contains various collections of software routines for numerical problems, mostly in Fortran and C. Commercial products implementing many different numerical algorithms include the IMSL, NMath and NAG libraries; a free alternative is the GNU Scientific Library. A different approach is taken by the Numerical Recipes library, where emphasis is placed on clear understanding of algorithms.
Many computer algebra systems can also be used for numerical computations.
See also Comparison of numerical analysis software.

Music mathematics software

Music mathematics software utilizes mathematics to analyze or synthesize musical symbols and patterns.
Growing number of mathematical software is available in the web browser, without the need to download or install any code.

Programming libraries

Low-level mathematical libraries intended for use within other programming languages: