A Scalable Semantics-Based Verification System for Flight Critical Software
National Aeronautics and Space Administration
Agency Tracking Number:
Solicitation Topic Code:
Small Business Information
Runtime Verification Inc
IL, Champaign, IL, 61822-7460
Socially and Economically Disadvantaged:
AbstractModern flight-critical systems include hundreds of thousands to millions of lines of code. The Boeing 777, for instance, includes over 2 million lines of code. Future projects will only feature an increasing amount of source code, mostly written in the C programming language. The only way to completely ensure the safety of flight critical systems is through static, formal program verification. In order to effectively verify such large programs written in the C programming language, we propose a scaleable system for the verification of program written in C based on matching logic, or program verification logic. Matching logic has the benefit of being more scaleable than traditional Hoare/seperation logic verifiers because they build a large first order logic proof goal for entire functions at a time, while matching logic proceeds in program order, proving goals incrementally. Additionally, matching logic verifiers are based on operational semantics of the programming language in question. Operational semantics offer the benefit of being fully executable, so that one may increase belief that they are correct by testing typical compiler test suite programs, such as the GCC torture tests for the C language. Ultimately, our proposed research will result in a verifier that is both more scalable and more trustworthy than the competition.
* information listed above is at the time of submission.