Relational parametricity for references and recursive types

Lars Birkedal, Kristian Støvring, Jacob Thamsborg
2008 Proceedings of the 4th international workshop on Types in language design and implementation - TLDI '09  
We present a possible world semantics for a call-by-value higherorder programming language with impredicative polymorphism, general references, and recursive types. The model is one of the first relationally parametric models of a programming language with all these features. To model impredicative polymorphism we define the semantics of types via parameterized (world-indexed) logical relations over a universal domain. It is well-known that it is non-trivial to show the existence of logical
more » ... tions in the presence of recursive types. Here the problems are exacerbated because of general references. We explain what the problems are and present our solution, which makes use of a novel approach to modeling references. We prove that the resulting semantics is adequate with respect to a standard operational semantics and include simple examples of reasoning about contextual equivalence via parametricity.
doi:10.1145/1481861.1481873 dblp:conf/tldi/BirkedalST09 fatcat:e5lt6gh5vbbdxmni2rcogtvebm