Automatic Generation of Guard-Stable Floating-Point CodeIn 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.
Document ID
20205003811
Acquisition Source
Langley Research Center
Document Type
Conference Paper
Authors
Laura Titolo (National Institute of Aerospace Hampton, Virginia, United States)
Mariano Miguel Moscato (National Institute of Aerospace Hampton, Virginia, United States)
Marco A Feliu (National Institute of Aerospace Hampton, Virginia, United States)
Cesar A Munoz (Langley Research Center Hampton, Virginia, United States)
Date Acquired
June 23, 2020
Subject Category
Computer Programming And Software
Meeting Information
Meeting: 16th International Conference on Integrated Formal Methods