A non-local method for robustness analysis of floating point programs
Ivan Gazeau (LIX, INRIA Saclay - Ile de France), Dale Miller (LIX,, INRIA Saclay - Ile de France), Catuscia Palamidessi (LIX, INRIA Saclay - Ile, de France)

TL;DR
This paper introduces a non-local method for analyzing the robustness of floating point programs, especially handling complex constructs like loops, and demonstrates its effectiveness on standard algorithms.
Contribution
It presents a novel non-local approach for proving robustness of while-loops in floating point programs, addressing limitations of compositional methods.
Findings
Method successfully applied to CORDIC cosine computation
Method successfully applied to Dijkstra's shortest path algorithm
Provides global structural properties for robustness analysis
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.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
