NASA Logo

NTRS

NTRS - NASA Technical Reports Server

Back to Results
A Provably Correct Floating-Point Implementation of Well Clear Avionics ConceptsThe NASA DAIDALUS library provides formal definitions for Detect-and-Avoid avionics concepts such as when an aircraft is well-clear with respect to the surrounding air traffic, i.e., it does not operate in such proximity to create a collision hazard. While several properties are proven correct for DAIDALUS assuming ideal real number arithmetic, an actual implementation that uses floating-point numbers may behave unexpectedly because of round-off errors and run-time exceptions. This paper presents an experience report on the application of a formal methods toolchain to extract and verify floating-point C code from a real-valued specification of the well-clear module of DAIDALUS. This toolchain comprises the PVS theorem prover, the PRECiSA floating-point analyzer and code generator, and the Frama-C analysis suite. The generated code is automatically instrumented to detect when the control flow of the floating-point program may diverge from the ideal real number specification, and it is annotated with contracts that state the maximum accumulated round-off error. The absence of overflows is also formally verified for the generated code. In order to apply the toolchain to an industrial case study such as DAIDALUS, a formally verified pre-processing of the input specification is performed, which includes a program slicing and several semantic-preserving simplifications.
Document ID
20230007436
Acquisition Source
Langley Research Center
Document Type
Conference Paper
Authors
Nikson Bernardes Fernandes Ferreira
(University of Brasília Brasília, Brazil)
Mariano M. Moscato
(Analytical Mechanics Associates (United States) Hampton, Virginia, United States)
Laura Titolo
(Analytical Mechanics Associates (United States) Hampton, Virginia, United States)
Mauricio Ayala-Rincon
(University of Brasília Brasília, Brazil)
Date Acquired
May 11, 2023
Subject Category
Computer Programming and Software
Meeting Information
Meeting: Formal Methods in Computer-Aided Design 2023
Location: Ames, IA
Country: US
Start Date: October 23, 2023
End Date: October 27, 2023
Sponsors: Iowa State University
Funding Number(s)
WBS: 340428.02.20.07.01
Distribution Limits
Public
Copyright
Use by or on behalf of the US Gov. Permitted.
Technical Review
Single Expert
Keywords
Program verification
Floating-point
PVS
Detect and avoid
No Preview Available