A bisimulation for type abstraction and recursion
Authors:
Open Access
- 1 October 2007
- journal article
- Published by Association for Computing Machinery (ACM) in Journal of the ACM
- Vol. 54 (5) , 26
Abstract
We present a bisimulation method for proving the contextual equivalence of packages in λ-calculus with full existential and recursive types. Unlike traditional logical relations (either semantic or syntactic), our development is “elementary,” using only sets and relations and avoiding advanced machinery such as domain theory, admissibility, and TT-closure. Unlike other bisimulations, ours is complete even for existential types. The key idea is to consider sets of relations—instead of just relations—as bisimulations.Keywords
This publication has 24 references indexed in Scilit:
- Syntactic Logical Relations for Polymorphic and Recursive TypesElectronic Notes in Theoretical Computer Science, 2007
- An indexed model of recursive types for foundational proof-carrying codeACM Transactions on Programming Languages and Systems, 2001
- Proof Techniques for Cryptographic ProcessesSIAM Journal on Computing, 2001
- Behavioral equivalence in the polymorphic pi-calculusJournal of the ACM, 2000
- Parametric polymorphism and operational equivalenceMathematical Structures in Computer Science, 2000
- Comparing Object EncodingsInformation and Computation, 1999
- Existential types: Logical relations and operational equivalenceLecture Notes in Computer Science, 1998
- Proving Congruence of Bisimulation in Functional Programming LanguagesInformation and Computation, 1996
- Notions of computation and monadsInformation and Computation, 1991
- Protection in programming languagesCommunications of the ACM, 1973