NASA NTRS · 20205003811
Automatic Generation of Guard-Stable Floating-Point Code
Abstract
In floating-point programs, test instability occurs when the control flow of a conditional statement diverges from its ideal execution under real arithmetic. This phenomenon is caused by the presence of round-off errors in floating-point computations. Writing programs that correctly handle test instability often require expertise on finite precision computations and rounding errors. This paper presents a fully automatic tool chain that generates and formally verifies a test-stable floating-point C program from its functional specification in real arithmetic. The generated program is instrumented to soundly detect when unstable tests may occur and, in these cases, to issue a warning. The proposed approach combines the PRECiSA floating-point static analyzer, the Frama-C software verification suite, and the PVS theorem prover.
Explore related subjects
Keep this discovery
Explore connections, maps & timelines
Laura Titolo, Mariano Miguel Moscato, Marco A Feliu, Cesar A Munoz. Automatic Generation of Guard-Stable Floating-Point Code. https://ntrs.nasa.gov/citations/20205003811
Cite the original work for its findings. Save a collection to share your selection of sources.