| | |
Summary: Typed Closure Conversion Preserves Observational Equivalence
Amal Ahmed Matthias Blume
Toyota Technological Institute at Chicago
{amal,blume}@tti-c.org
Abstract
Language-based security relies on the assumption that all potential
attacks are bound by the rules of the language in question. When
programs are compiled into a different language, this is true only if
the translation process preserves observational equivalence.
We investigate the problem of fully abstract compilation, i.e.,
compilation that both preserves and reflects observational equiv-
alence. In particular, we prove that typed closure conversion for
the polymorphic -calculus with existential and recursive types is
fully abstract. Our proof uses operational techniques in the form of
a step-indexed logical relation and construction of certain wrapper
terms that "back-translate" from target values to source values.
Although typed closure conversion has been assumed to be
fully abstract, we are not aware of any previous result that actually
proves this.
Categories and Subject Descriptors D.3.1 [Programming Lan-
|