Modular Data Structure Verification (2007)
| Venue: | EECS DEPARTMENT, MASSACHUSETTS INSTITUTE OF TECHNOLOGY |
| Citations: | 32 - 21 self |
BibTeX
@TECHREPORT{Rinard07modulardata,
author = {Martin C. Rinard},
title = {Modular Data Structure Verification},
institution = {EECS DEPARTMENT, MASSACHUSETTS INSTITUTE OF TECHNOLOGY},
year = {2007}
}
Years of Citing Articles
OpenURL
Abstract
This dissertation describes an approach for automatically verifying data structures, focusing on techniques for automatically proving formulas that arise in such verification. I have implemented this approach with my colleagues in a verification system called Jahob. Jahob verifies properties of Java programs with dynamically allocated data structures. Developers write Jahob specifications in classical higher-order logic (HOL); Jahob reduces the verification problem to deciding the validity of HOL formulas. I present a new method for proving HOL formulas by combining automated reasoning techniques. My method consists of 1) splitting formulas into individual HOL conjuncts, 2) soundly approximating each HOL conjunct with a formula in a more tractable fragment and 3) proving the resulting approximation using a decision procedure or a theorem prover. I present three concrete logics; for each logic I show how to use it to approximate HOL formulas, and how to decide the validity of formulas in this logic. First, I present an approximation of HOL based on a translation to first-order logic, which enables the use of existing resolution-based theorem provers. Second, I present an approximation of HOL based on field constraint analysis, a new technique that enables







