The aim of this project is to integrate program verification based on Type theory into classical program verification. This will be done by building a wide-spectrum, partially constructive logic that includes computational and noncomputational reasoning along with higher-order functions, destructive operations, and assignment. The semantics for this logic does not dichotimize constructive and nonconstructive reasoning but instead views them as being two poles of a continuum, with the partially constructive verified programs interesting to computer scientists in between. The logic will be implemented and test programs will be written for it. This new logic will be an advance over the logics currently available for program verification: it will be powerful enough and flexible enough to support constructive reasoning over functional and imperative programs, using one common syntax and semantics. Programs written with the logic will be efficient and concise. In addition, the existence of such a logic can be used to claim that constructive and classical verification, often thought to be inherently incompatible, are actually related parts of a larger whole.

Project Start
Project End
Budget Start
1990-07-01
Budget End
1993-06-30
Support Year
Fiscal Year
1990
Total Cost
$47,703
Indirect Cost
Name
University of Maryland Baltimore County
Department
Type
DUNS #
City
Baltimore
State
MD
Country
United States
Zip Code
21250