Engineering PapersSearch

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

BibTeXRIS

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.

KEEP EXPLORING

Related reports