Skip Navigation
SBIR/STTR

A Scalable Semantics-Based Verification System for Flight Critical Software, Phase I

Completed Technology Project

Project Introduction

Modern 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. More »

Anticipated Benefits

Primary U.S. Work Locations and Key Partners

Share this Project

Organizational Responsibility

Project Management

Project Duration

Technology Maturity (TRL)

Technology Areas

A final report document may be available for this project. If you would like to request it, please contact us.

^