Home

About

Advanced Search

Browse by Discipline

Scientific Societies

E-print Alerts

Add E-prints

E-print Network
FAQHELPSITE MAPCONTACT US


  Advanced Search  

 
Semantic Foundations for Typed Assembly Languages
 

Summary: Semantic Foundations for
Typed Assembly Languages
AMAL AHMED, ANDREW W. APPEL, CHRISTOPHER D. RICHARDS,
KEDAR N. SWADI, GANG TAN, and DANIEL C. WANG
Princeton University
Typed Assembly Languages (TALs) are used to validate the safety of machine-language programs.
The Foundational Proof-Carrying Code project seeks to verify the soundness of TALs using the
smallest possible set of axioms--the axioms of a suitably expressive logic plus a specification
of machine semantics. This paper proposes general semantic foundations that permit modular
proofs of the soundness of TALs. These semantic foundations include Typed Machine Language
(TML), a type theory for specifying properties of low-level data with powerful and orthogonal type
constructors, and Lc, a compositional logic for specifying properties of machine instructions with
simplified reasoning about unstructured control flow. Both of these components, whose semantics
we specify using higher-order logic, are useful for proving the soundness of TALs. We demonstrate
this by using TML and Lc to verify the soundness of a low-level, typed assembly language, LTAL,
which is the target of our core-ML-to-sparc compiler.
To prove the soundness of the TML type system we have successfully applied a new approach,
that of step-indexed logical relations. This approach provides the first semantic model for a type
system with updatable references to values of impredicative quantified types. Both impredica-
tive polymorphism and mutable references are essential when representing function closures in

  

Source: Appel, Andrew W. - Department of Computer Science, Princeton University
Tan, Gang - Department of Computer Science and Engineering, Lehigh University

 

Collections: Computer Technologies and Information Sciences