Formal verification promises to deliver software that works precisely according to a given mathematical specification. The last decade has seen several impressive formally verified software artifacts that are provably free of large classes of defects. However, these artifacts required Herculean feats of engineering, using specialized proof assistants that are separated, by a wide chasm, from the legacy languages and libraries that are used to engineer efficient parallel software. This project's novelties are in new techniques to enable the development of efficient parallel computing systems with formal assurances about correctness and reliability. This project's impacts will be to make formal verification a part of mainstream software development.

This project will build on two approaches discovered by the investigators. The first is refinement reflection, which turns existing programming languages into theorem provers, where the proofs are merely programs in that same language. Second, the investigators have introduced lattice variables, scheduling algorithms and a new linear type system to simplify the construction of efficient parallel software with well-defined behavior. This project will combine the above ideas into a framework wherein engineers can develop and verify parallel software, simply by writing programs in their host language, thereby economically integrating formal proofs within existing software development cycles.

This award reflects NSF's statutory mission and has been deemed worthy of support through evaluation using the Foundation's intellectual merit and broader impacts review criteria.

Agency
National Science Foundation (NSF)
Institute
Division of Computer and Communication Foundations (CCF)
Type
Standard Grant (Standard)
Application #
1911213
Program Officer
Anindya Banerjee
Project Start
Project End
Budget Start
2019-10-01
Budget End
2022-09-30
Support Year
Fiscal Year
2019
Total Cost
$250,000
Indirect Cost
Name
University of California San Diego
Department
Type
DUNS #
City
La Jolla
State
CA
Country
United States
Zip Code
92093