Foreword to the second edition |
|
vii | |
Preface |
|
ix | |
Introduction |
|
1 | (12) |
I Theory of computer arithmetic |
|
|
|
13 | (30) |
|
|
13 | (5) |
|
1.2 Complete lattices and complete subnets |
|
|
18 | (6) |
|
1.3 Screens and roundings |
|
|
24 | (11) |
|
1.4 Arithmetic operations and roundings |
|
|
35 | (8) |
|
|
43 | (19) |
|
|
43 | (11) |
|
|
54 | (8) |
|
3 Definition of computer arithmetic |
|
|
62 | (25) |
|
|
62 | (3) |
|
|
65 | (4) |
|
3.3 The traditional definition of computer arithmetic |
|
|
69 | (1) |
|
3.4 Definition of computer arithmetic by semimorphisms |
|
|
70 | (8) |
|
3.5 A remark about roundings |
|
|
78 | (1) |
|
3.6 Uniqueness of the minus operator |
|
|
79 | (2) |
|
|
81 | (6) |
|
|
87 | (70) |
|
4.1 Interval sets and arithmetic |
|
|
88 | (9) |
|
4.2 Interval arithmetic over a linearly ordered set |
|
|
97 | (4) |
|
|
101 | (6) |
|
|
107 | (3) |
|
4.5 Interval arithmetic on a screen |
|
|
110 | (8) |
|
4.6 Interval matrices and interval vectors on a screen |
|
|
118 | (8) |
|
4.7 Complex interval arithmetic |
|
|
126 | (6) |
|
4.8 Complex interval matrices and interval vectors |
|
|
132 | (5) |
|
4.9 Extended interval arithmetic |
|
|
137 | (4) |
|
4.10 Exception-free arithmetic for extended intervals |
|
|
141 | (5) |
|
4.11 Extended interval arithmetic on the computer |
|
|
146 | (3) |
|
4.12 Exception-free arithmetic for closed real intervals on the computer |
|
|
149 | (3) |
|
4.13 Comparison relations and lattice operations |
|
|
152 | (1) |
|
4.14 Algorithmic implementation of interval multiplication and division |
|
|
153 | (4) |
II Implementation of arithmetic on computers |
|
|
5 Floating-point arithmetic |
|
|
157 | (34) |
|
5.1 Definition and properties of the real numbers |
|
|
157 | (6) |
|
5.2 Floating-point numbers and roundings |
|
|
163 | (9) |
|
5.3 Floating-point operations |
|
|
172 | (8) |
|
5.4 Subnormal floating-point numbers |
|
|
180 | (1) |
|
5.5 On the IEEE floating-point arithmetic standard |
|
|
181 | (10) |
|
6 Implementation of floating-point arithmetic on a computer |
|
|
191 | (45) |
|
6.1 A brief review of the realization of integer arithmetic |
|
|
192 | (9) |
|
6.2 Introductory remarks about the level 1 operations |
|
|
201 | (5) |
|
6.3 Addition and subtraction |
|
|
206 | (4) |
|
|
210 | (2) |
|
|
212 | (1) |
|
|
212 | (2) |
|
|
214 | (2) |
|
6.8 A universal rounding unit |
|
|
216 | (1) |
|
6.9 Overflow and underflow treatment |
|
|
217 | (3) |
|
6.10 Algorithms using the short accumulator |
|
|
220 | (6) |
|
6.11 The level 2 operations |
|
|
226 | (10) |
|
7 Hardware support for interval arithmetic' |
|
|
236 | (13) |
|
|
236 | (1) |
|
7.2 Arithmetic interval operations |
|
|
237 | (4) |
|
7.2.1 Algebraic operations |
|
|
238 | (2) |
|
7.2.2 Comments on the algebraic operations |
|
|
240 | (1) |
|
7.3 Circuitry for the arithmetic interval operations |
|
|
241 | (1) |
|
7.4 Comparisons and lattice operations |
|
|
242 | (2) |
|
7.4.1 Comments on comparisons and lattice operations |
|
|
243 | (1) |
|
7.4.2 Hardware support for comparisons and lattice operations |
|
|
243 | (1) |
|
7.5 Alternative circuitry for interval operations and comparisons |
|
|
244 | (5) |
|
7.5.1 Hardware support for interval arithmetic on x86-processors |
|
|
245 | (2) |
|
7.5.2 Accurate evaluation of interval scalar products |
|
|
247 | (2) |
|
8 Scalar products and complete arithmetic |
|
|
249 | (58) |
|
8.1 Introduction and motivation |
|
|
250 | (2) |
|
|
252 | (5) |
|
8.3 The ubiquity of the scalar product in numerical analysis |
|
|
257 | (3) |
|
8.4 Implementation principles |
|
|
260 | (7) |
|
8.4.1 Long adder and long shift |
|
|
262 | (1) |
|
8.4.2 Short adder with local memory on the arithmetic unit |
|
|
262 | (1) |
|
|
263 | (2) |
|
8.4.4 Fast carry resolution |
|
|
265 | (2) |
|
8.5 Informal sketch for computing an exact dot product |
|
|
267 | (1) |
|
8.6 Scalar product computation units (SPUs) |
|
|
267 | (11) |
|
8.6.1 SPU for computers with a 32 bit data bus |
|
|
269 | (3) |
|
8.6.2 A coprocessor chip for the exact scalar product |
|
|
272 | (3) |
|
8.6.3 SPU for computers with a 64 bit data bus |
|
|
275 | (3) |
|
|
278 | (3) |
|
|
278 | (1) |
|
8.7.2 How much local memory should be provided on an SPU? |
|
|
279 | (2) |
|
8.8 The data format complete and complete arithmetic |
|
|
281 | (6) |
|
8.8.1 Low level instructions for complete arithmetic |
|
|
282 | (1) |
|
8.8.2 Complete arithmetic in high level programming languages |
|
|
283 | (4) |
|
8.9 Top speed scalar product units |
|
|
287 | (15) |
|
8.9.1 SPU with long adder for 64 bit data word |
|
|
287 | (5) |
|
8.9.2 SPU with long adder for 32 bit data word |
|
|
292 | (3) |
|
8.9.3 An FPGA coprocessor for the exact scalar product |
|
|
295 | (1) |
|
8.9.4 SPU with short adder and complete register |
|
|
295 | (6) |
|
8.9.5 Carry-free accumulation of products in redundant arithmetic |
|
|
301 | (1) |
|
8.10 Hardware complete register window |
|
|
302 | (5) |
III Principles of verified computing |
|
|
|
307 | (60) |
|
9.1 Basic properties of interval mathematics |
|
|
309 | (12) |
|
9.1.1 Interval arithmetic, a powerful calculus to deal with inequalities |
|
|
309 | (1) |
|
9.1.2 Interval arithmetic as executable set operations |
|
|
310 | (6) |
|
9.1.3 Enclosing the range of function values |
|
|
316 | (3) |
|
9.1.4 Nonzero property of a function, global optimization |
|
|
319 | (2) |
|
9.2 Differentiation arithmetic, enclosures of derivatives |
|
|
321 | (8) |
|
9.3 The interval Newton method |
|
|
329 | (3) |
|
9.4 The extended interval Newton method |
|
|
332 | (1) |
|
9.5 Verified solution of systems of linear equations |
|
|
333 | (7) |
|
9.6 Accurate evaluation of arithmetic expressions |
|
|
340 | (7) |
|
9.6.1 Complete expressions |
|
|
341 | (1) |
|
9.6.2 Accurate evaluation of polynomials |
|
|
342 | (4) |
|
9.6.3 Arithmetic expressions |
|
|
346 | (1) |
|
9.7 Multiple precision arithmetics |
|
|
347 | (13) |
|
9.7.1 Multiple precision floating-point arithmetic |
|
|
348 | (3) |
|
9.7.2 Multiple precision interval arithmetic |
|
|
351 | (5) |
|
|
356 | (2) |
|
9.7.4 Adding an exponent part as a scaling factor to complete arithmetic |
|
|
358 | (2) |
|
9.8 Remarks on Kaucher arithmetic |
|
|
360 | (7) |
|
9.8.1 The basic operations of Kaucher arithmetic |
|
|
364 | (3) |
A Frequently used symbols |
|
367 | (2) |
B On homomorphism |
|
369 | (2) |
Bibliography |
|
371 | (50) |
List of figures |
|
421 | (4) |
List of tables |
|
425 | (2) |
Index |
|
427 | |