# Mathematical software

**Mathematical software** is software used to model, analyze or calculate numeric, symbolic or geometric data.[1]

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 (math library) also used by built in the part of another scientific software. A most primary them (for example, to calculate elementary function by floating point arithmetic) 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 (see educational math software). 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. (There is physical limitation of hardware.) 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:

- That is not always solvable.
- 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

Numerical analysis 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 (such as seeing on Moore's law), the new treatment (for example, a new kind of technique such as data assimilation which combined numerical analysis and statistics) needing conversely the progress of the mathematical science or applied mathematics.

The progress of mathematical information presentation such as TeX or MathML[2] will demand to evolution form *formula manipulation language* to true *mathematics manipulation language* (notwithstanding the problem that whether mathematical theory is inconsistent or not). And popularization of general purpose mathematical software, special purpose mathematical software[3] 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

TK Solver 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 (listed above) can also be used for numerical computations.

## Music mathematics software

*Music mathematics software utilizes mathematics to analyze or synthesize musical symbols and patterns.*

- Musimat (by Gareth Loy)[4]

## Websites

Growing number of mathematical software is available in the web browser, without the need to download or install any code.[5][6]

## Programming libraries

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

- GMP, the GNU Multi-Precision Library for extremely fast arbitrary precision arithmetic.
- Class Library for Numbers, a high-level C++ library for arbitrary precision arithmetic.
- AMD Core Math Library, a software development library released by AMD
- Boost.Math

## References

- See, e.g., the editorial charter Archived 2015-03-12 at the Wayback Machine of the
*ACM Transactions on Mathematical Software*or the problem taxonomy of the National Institute of Standards and Technology Guide to Available Mathematical Software (both retrieved 2015-02-15). - Both MathML and TeX may be only simple a kind of computer language which enable also to present the mathematical formula. However they also may be the mathematical software if the term of
*software*interpreted as whole technology on how to use computer, at most wide sense. - Included your written script code on the general purpose mathematical software.
- Musimathics website, freeware download
- Internet Accessible Mathematical Computation, Institute for Computational Mathematics, Kent State University, retrieved 2015-02-15.
- "Wolfram|Alpha Examples: Mathematics".
*www.wolframalpha.com*. Retrieved 2016-07-19.