Logical Relations for Dynamic Name Creation
Pitts and Stark’s nu-calculus is a typed lambda-calculus which forms a basis for the study of interaction between higher-order functions and dynamically created names. A similar approach has received renewed attention recently through Sumii and Pierce’s cryptographic lambda-calculus, which deals with security protocols. Logical relations are a powerful tool to prove properties of such a calculus, notably observational equivalence. While Pitts and Stark construct a logical relation for the nu-calculus, it rests heavily on operational aspects of the calculus and is hard to be extended. We propose an alternative Kripke logical relation for the nu-calculus, which is derived naturally from the categorical model of the nu-calculus and the general notion of Kripke logical relation. This is also related to the Kripke logical relation for the name creation monad by Goubault-Larrecq et al. (CSL’2002), which the authors claimed had similarities with Pitts and Stark’s logical relation. We show that their Kripke logical relation for names is strictly weaker than Pitts and Stark’s. We also show that our Kripke logical relation, which extends the definition of Goubault-Larrecq et al., is equivalent to Pitts and Stark’s up to first-order types; our definition rests on purely semantic constituents, and dispenses with the detours through operational semantics that Pitts and Stark use.
KeywordsKripke logical relation name creation nu-calculus categorical models of lambda calculi
Unable to display preview. Download preview PDF.
- 5.Mitchell, J.C.: Foundations of Programming Languages. MIT Press, Cambridge (1996)Google Scholar
- 6.Mitchell, J.C., Moggi, E.: Kripke-style models for typed lambda calculus. In: LICS 1987, pp. 303–314. IEEE Computer Society Press, Los Alamitos (1987)Google Scholar
- 7.Mitchell, J.C., Scedrov, A.: Notes on sconing and relators. In: Martini, S., Börger, E., Kleine Büning, H., Jäger, G., Richter, M.M. (eds.) CSL 1992. LNCS, vol. 702, pp. 352–378. Springer, Heidelberg (1993)Google Scholar
- 8.Moggi, E.: Computational lambda-calculus and monads. In: LICS 1989, pp. 14–23. IEEE Computer Society Press, Los Alamitos (1989)Google Scholar
- 9.Moggi, E.: An abstract view of programming languages. Technical Report ECS-LFCS-90-113, LFCS, Department of Computer Science, University of Edinburgh (1990)Google Scholar
- 11.Pitts, A., Stark, I.: Observable properties of higher order functions that dynamically create local names, or: What’s new? In: Borzyszkowski, A.M., Sokolowski, S. (eds.) MFCS 1993. LNCS, vol. 711, pp. 122–141. Springer, Heidelberg (1993)Google Scholar
- 12.Stark, I.: Names and Higher-Order Functions. PhD thesis, University of Cambridge (1994)Google Scholar
- 15.Sumii, E., Pierce, B.: Logical relations for encryption. In: CSFW 2001, pp. 256–272. IEEE Computer Society Press, Los Alamitos (2001)Google Scholar
- 16.Zhang, Y.: Logical relations for names. Master’s thesis, University of Paris 7 (2002), http://www.lsv.ens-cachan.fr/Publis/PAPERS/ZY-dea02.ps