We show how the binary encoding and decoding of typed data and typed programs can be understood, programmed, and verified with the help of question-answer games. The encoding of a...
We define seal, an untyped call-by-value -calculus with primitives for protecting abstract data by sealing, and develop a bisimulation proof method that is sound and complete with...
In computing systems, trust is an expectation on the dynamic behavior of an agent; static analysis is a collection of techniques for establishing static bounds on the dynamic behav...
Programs are often structured around the idea that different pieces of code comprise distinct principals, each with a view of its environment. Typical examples include the module...
Steve Zdancewic, Dan Grossman, J. Gregory Morriset...
This paper gives the first proof that the subtyping relation of a higherorder lambda calculus, Fω ≤, is anti-symmetric, establishing in the process that the subtyping relation...