Interval arithmetic involves expressing a real as a pair of numbers which represent an interval containing the number. A representation such as floating point arithmetic may be used to express the lower and upper bounds.
Interval arithmetic operations compute new upper and lower bounds on the result after the operation has been performed. This may be performed using floating point arithmetic, but rounding strictly upwards for the upper bounds and strictly downwards for the lower bounds.
Interval arithmetic is extremely useful. Once a suitable interval arithmetic package is available, no further analysis need be performed on specific computations themselves. Combining the results of the upper and lower bounds allows the result to be expressed to an appropriate number of correct significant digits. In addition, when an input is not known exactly but only to some small number of digits (eg. a physical measurement of some kind), this fact can be represented and is reflected in the tightness of the bound on the output result.
The major problem with interval arithmetic is that, like floating point arithmetic performed with error analysis, it does not make the computations any more exact. Although the user may have faith in the bounds of the result, the bounds may not be sufficiently close to provide a useful answer.