A non-local method for robustness analysis of floating point programs

Research output: Contribution to journalConference articlepeer-review

Abstract

Robustness is a standard correctness property which intuitively means that if the input to the program changes less than a fixed small amount then the output changes only slightly. This notion is useful in the analysis of rounding error for floating point programs because it helps to establish bounds on output errors introduced by both measurement errors and by floating point computation. Compositional methods often do not work since key constructs-like the conditional and the while-loop-Are not robust. We propose a method for proving the robustness of a while-loop. This method is non-local in the sense that instead of breaking the analysis down to single lines of code, it checks certain global properties of its structure. We show the applicability of our method on two standard algorithms: The CORDIC computation of the cosine and Dijkstra's shortest path algorithm.

Original languageEnglish
Pages (from-to)63-76
Number of pages14
JournalElectronic Proceedings in Theoretical Computer Science, EPTCS
Volume85
DOIs
Publication statusPublished - 3 Jul 2012
Event10th Workshop on Quantitative Aspects of Programming Languages and Systems, QAPL 2012 - Tallinn, Estonia
Duration: 31 Mar 20121 Apr 2012

Keywords

  • Floating-point arithmetic
  • Program analysis
  • Robustness to errors

Fingerprint

Dive into the research topics of 'A non-local method for robustness analysis of floating point programs'. Together they form a unique fingerprint.

Cite this