# Validated numerics

Validated numerics, or rigorous computation, verified computation, reliable computation, numerical verification (German:Zuverlässiges Rechnen) is numerics including mathematically strict error (rounding error, truncation error, discretization error) evaluation, and it is one field of numerical analysis. For computation, interval arithmetic is most often used, where all results are represented by intervals. Validated numerics were used by Warwick Tucker in order to solve the 14th of Smale's problems, and today it is recognized as a powerful tool for the study of dynamical systems.

## Importance

Computation without verification may cause unfortunate results. Below are some examples.

### Rump's example

In the 1980s, Rump made an example. He made a complicated function and tried to obtain its value. Single precision, double precision, extended precision results seemed to be correct, but its plus-minus sign was different from the true value.

### Phantom solution

Breuer–Plum–McKenna used the spectrum method to solve the boundary value problem of the Emden equation, and reported that an asymmetric solution was obtained. This result to the study conflicted to the theoretical study by Gidas–Ni–Nirenberg which claimed that there is no asymmetric solution. The solution obtained by Breuer–Plum–McKenna was a phantom solution caused by discretization error. This is a rare case, but it tells us that when we want to strictly discuss differential equations, numerical solutions must be verified.

### Accidents caused by numerical errors

The following examples are known as accidents caused by numerical errors:
* Failure of intercepting missiles in the Gulf War (1991)
* Failure of the Ariane 5 rocket (1996)
* Mistakes in election result totalization

## Main topics

The study of validated numerics is divided into the following fields:
* Verification in numerical linear algebra
** Validating numerical solutions of a given system of linear equations
** Validating numerically obtained eigenvalues
** Rigorously computing determinants
** Validating numerical solutions of matrix equations
* Verification of special functions:
** Gamma function
** Elliptic functions
** Hypergeometric functions
** Hurwitz zeta function
** Bessel function
** Matrix function
* Verification of numerical quadrature
* Verification of nonlinear equations (The Kantorovich theorem, Krawczyk method, interval Newton method, and the Durand–Kerner–Aberth method are studied.)
* Verification for solutions of ODEs, PDEs (For PDEs, knowledge of functional analysis are used.)
* Verification of linear programming
* Verification of computational geometry
* Verification at high-performance computing environment

## Tools

* INTLAB Library made by MATLAB/GNU Octave
* kv Library made by C++. This library can obtain multiple precision outputs by using GNU MPFR.
** kv on GitHub
* Arb Library made by C. It is capable to rigorously compute various special functions.
** arb on GitHub
* CAPD A collection of flexible C++ modules which are mainly designed to computation of homology of sets, maps and validated numerics for dynamical systems.
* JuliaIntervals on GitHub (Library made by Julia)
* Boost Safe Numerics - C++ header only library of validated replacements for all builtin integer types.
** Safe numerics on GitHub