[TYPES] Paper: Interfacing Hoare Logic and Type Systems for
Foundational Proof-Carrying Code
Nadeem Abdul Hamid
nadeem at acm.org
Fri May 14 20:25:45 EDT 2004
Dear Types readers,
We are pleased to announce the availability of our paper, "Interfacing
Hoare Logic and Type Systems for Foundational Proof-Carrying Code." An
abstract is below; the paper is available from:
http://flint.cs.yale.edu/flint/publications/rtpcc.html
Comments are most welcome.
--- Nadeem Abdul Hamid and Zhong Shao
Abstract
In this paper, we introduce a Foundational Proof-Carrying Code (FPCC)
framework for constructing certified code packages from typed assembly
language that will interface with a similarly certified runtime system.
Our framework permits the typed assembly language to have a ``foreign
function'' interface, in which stubs, initially provided when the
program is being written, are eventually compiled and linked to code
that may have been written in a language with a different type system,
or even certified directly in the FPCC logic using a proof assistant. We
have increased the potential scalability and flexibility of our FPCC
system by providing a way to integrate programs compiled from different
source type systems. In the process, we are explicitly manipulating the
interface between Hoare logic and a syntactic type system.
To our knowledge, this is the first account of combining such
certification proofs from languages at different levels of abstraction.
While type systems such as TAL facilitate reasoning about many programs,
they are not sufficient for certifying the most low-level system
libraries. Hoare logic-style reasoning, on the other hand, can handle
low-level details very well but cannot account for embedded code
pointers in data structures, a feature common to higher-order and
object-oriented programming. We outline for the first time a way to
allow both methods of verification to interact, gaining the advantages
of both and circumventing their shortcomings.
More information about the Types-list
mailing list