2008
DOI: 10.1145/1353445.1353446
|View full text |Cite
|
Sign up to set email alerts
|

The pitfalls of verifying floating-point computations

Abstract: Current critical systems often use a lot of floating-point computations, and thus the testing or static analysis of programs containing floatingpoint operators has become a priority. However, correctly defining the semantics of common implementations of floating-point is tricky, because semantics may change according to many factors beyond source-code level, such as choices made by compilers. We here give concrete examples of problems that can appear and solutions for implementing in analysis software.

Help me understand this report
View preprint versions

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
93
0
5

Year Published

2009
2009
2014
2014

Publication Types

Select...
5
2
1

Relationship

0
8

Authors

Journals

citations
Cited by 147 publications
(98 citation statements)
references
References 29 publications
(34 reference statements)
0
93
0
5
Order By: Relevance
“…The execution of a program that manipulates the floating point numbers used by scientists is dependent on many factors outside the consideration of a program as a mathematical object 22 . Rounding errors can occur when numerous computations are repeatedly executed, as in weather forecasting 23 .…”
Section: The Failure Of Code Descriptionsmentioning
confidence: 99%
See 2 more Smart Citations
“…The execution of a program that manipulates the floating point numbers used by scientists is dependent on many factors outside the consideration of a program as a mathematical object 22 . Rounding errors can occur when numerous computations are repeatedly executed, as in weather forecasting 23 .…”
Section: The Failure Of Code Descriptionsmentioning
confidence: 99%
“…Although there is considerable research in this area, for example in arithmetic and floating point calculations [24][25][26][27] , algorithms 28 , verification 29 and fundamental practice 30 Third, there are well-known ambiguities in some of the internationally standardized versions of commonly used programming languages in scientific computation 13 . Monniaux 22 describes an alarming example relating to implementation of software features:…”
Section: The Failure Of Code Descriptionsmentioning
confidence: 99%
See 1 more Smart Citation
“…It is not the case, and (time -2000.0)/time = 2.7 × 10 −4 , since the initial error on the representation of 0.1 is always the same, and then, for all time between any [2 n , 2 n+1 [, all computations are rounded in the same direction. Invariant and safety The following example comes from [20].…”
Section: The Ieee-754 Standardmentioning
confidence: 99%
“…However, there are very few attempts to provide ways to specify and to prove behavioral properties of FP programs in deductive verification systems like those above mentioned. This is difficult because FP computations are described operationally and have tricky behaviors as shown by Monniaux [25]. Consequently, it is hard to describe denotationally in a logic setting.…”
Section: Introductionmentioning
confidence: 99%