INTLAB — INTerval LABoratory
Paper · 1999 · Siegfried M. Rump
Summary
Rump presents INTLAB, a Matlab toolbox for interval arithmetic. It addresses a long-standing tension in verified numerics: guaranteed computation tends to be slow, hard to port, or awkward to program. The design rests on two ideas. First, interval operations are recast so that they rely only on BLAS matrix routines. Hardware vendors heavily optimise BLAS, so the same code runs fast on many machines. Second, Matlab serves as an interactive front end, so verification algorithms read almost like published pseudo-code. Interpretation overhead is avoided by working with whole matrices rather than loops.
The only component not written in Matlab is a small routine that switches IEEE 754 rounding modes. Everything else, including rigorous I/O, standard functions, gradients, slopes and multiple precision, is Matlab code. Timing tests on machines from PCs to parallel computers show verified matrix and linear-system computations running in the same order of time as plain floating-point code. For nonlinear problems, the cost of evaluating the user's function dominates. The toolbox thus makes fast prototyping of validated algorithms practical.
Key points
- Rounding-mode switching: The toolbox assumes IEEE 754 arithmetic with a persistent rounding switch,
setround(i)with i ∈ {−1, 0, 1}. It is described as the first interval library built on BLAS, and it is distributed as freeware. - Point × interval matrix products: Several variants are compared.
- A. Neumaier's sign-split method, proposed at SCAN 98, needs four floating-point matrix products.
- S. Oishi's midpoint/radius conversion needs three.
- For tiny radii, the ratio of result radii ranged from 0.48 to 1.87. For linear systems up to dimension 500, results agreed to within less than 0.01% of the radius, so the faster midpoint/radius variant is recommended.
- Nonlinear system solver:
verifynlsscombines a floating-point Newton phase with a modified Krawczyk operator, epsilon inflation and automatic differentiation. - Abbott–Brent test problem: On the discretised boundary-value problem,
verifynlsstook 5.4 s for n = 50, 8.5 s for n = 100 and 20.3 s for n = 200. - Profiling results (n = 200):
- Most of the time is spent evaluating the function.
- More than half goes to refining the poor starting guess.
- Inverting the tridiagonal 200 × 200 Jacobian takes only about 1% of the time.
Institutions
Fields, topics and concepts
📚 Shelves 4The field of science this work belongs to (OpenAlex fields).Computer Science · 19,503 worksMathematics · 233 worksComputational Theory and Mathematics · 496 worksModeling and Simulation · 12 works
Cite
Cite as Siegfried M. Rump. 1999. INTLAB — INTerval LABoratory. Developments in Reliable Computing (ed. T. Csendes), Kluwer, 77–104.
@inproceedings{rump1999intlab,
title = {{INTLAB — INTerval LABoratory}},
author = {Siegfried M. Rump},
booktitle = {Developments in Reliable Computing (ed. T. Csendes), Kluwer, 77–104},
year = {1999},
doi = {10.1007/978-94-017-1247-7\_7},
url = {https://doi.org/10.1007/978-94-017-1247-7_7}
}Updated
This page in Markdown → https://md.research.elamur.ai/free/en/papers/rump-1999-intlab-interval-laboratory/