Abstract
We present a new co-inductive syntactic theory, eager normal form bisimilarity, for the untyped call-by-value lambda calculus extended with continuations and mutable references.We demonstrate that the associated bisimulation proof principle is easy to use and that it is a powerful tool for proving equivalences between recursive imperative higher-order programs.The theory is modular in the sense that eager normal form bisimilarity for each of the calculi extended with continuations and/or mutable references is a fully abstract extension of eager normal form bisimilarity for its sub-calculi. For each calculus, we prove that eager normal form bisimilarity is a congruence and is sound with respect to contextual equivalence. Furthermore, for the calculus with both continuations and mutable references, we show that eager normal form bisimilarity is complete: it coincides with contextual equivalence.
- S. Abramsky. The lazy lambda calculus. In D. Turner, editor, Research Topics in Functional Programming, pages 65--116. Addison-Wesley, 1990. Google Scholar
Digital Library
- S. Abramsky, K. Honda, and G. McCusker. A fully abstract game semantics for general references. In Proc. 13th Annual IEEE Symposium on Logic in Computer Science, pages 334--344, 1998. Google Scholar
Digital Library
- Z. M. Ariola and H. Herbelin. Minimal classical logic and control operators. In ICALP, volume 2719 of Lecture Notes in Computer Science, pages 871--885. Springer-Verlag, 2003. Google Scholar
Digital Library
- H. P. Barendregt. The Lambda Calculus: Its Syntax and Semantics. Number 103 in Studies in Logic and the Foundations of Mathematics. North-Holland, revised edition, 1984.Google Scholar
- G. M. Bierman. A computational interpretation of the lambda-mu calculus. In L. Brim, J. Gruska, and J. Zlatuska, editors, Proc. 23rd Mathematical Foundations of Computer Science, Brno, Czech Republic, volume 1450, pages 336--345. Springer-Verlag, 1998. Google Scholar
Digital Library
- R. David and W. Py. λμ-calculus and Böhm's theorem. Journal of Symbolic Logic, 66(1):407--413, 2001.Google Scholar
Cross Ref
- L. Egidi, F. Honsell, and S. Ronchi della Rocca. Operational, denotational and logical descriptions: a case study. Fundamenta Informaticae, 16(2):149--169, 1992. Google Scholar
Digital Library
- M. Felleisen and R. Hieb. The revised report on the syntactic theories of sequential control and state. Theoretical Computer Science, 103:235--271, 1992. Google Scholar
Digital Library
- D. P. Friedman and C. T. Haynes. Constraining control. In Proc. 12th ACM Symposium on Principles of Programming Languages, pages 245--254, 1985. Google Scholar
Digital Library
- A. D. Gordon. Bisimilarity as a theory of functional programming. Theoretical Computer Science, 228(1--2):5--47, 1999. Google Scholar
Digital Library
- A. D. Gordon and A. M. Pitts, editors. Higher Order Operational Techniques in Semantics. Publications of the Newton Institute. Cambridge University Press, 1998. Google Scholar
Digital Library
- P. de Groote. On the relation between the λμ-calculus and the syntactic theory of sequential control. In LPAR '94, volume 822 of Lecture Notes in Artificial Intelligence, pages 31--43. Springer-Verlag, 1994. Google Scholar
Digital Library
- V. Koutavas and M. Wand. Small bisimulations for reasoning about higher-order imperative programs. In Proc. 33rd ACM Symposium on Principles of Programming Languages, pages 141--152, 2006. Google Scholar
Digital Library
- J. Laird. Full abstraction for functional languages with control. In Proc. 12th Annual IEEE Symposium on Logic in Computer Science, pages 58--67, 1997. Google Scholar
Digital Library
- P. J. Landin. The mechanical evaluation of expressions. The Computer Journal, 6(4):308--320, 1964.Google Scholar
Cross Ref
- S. B. Lassen. Bisimulation up to context for imperative lambda calculus. Unpublished note. Presented at emphThe Semantic Challenge of Object-Oriented Programming, Schloss Dagstuhl, 1998.Google Scholar
- S. B. Lassen. Relational reasoning about contexts. In Gordon and Pitts citeHOOTS:95, pages 91--135. Google Scholar
Digital Library
- S. B. Lassen. Bisimulation in untyped lambda calculus: Böhm trees and bisimulation up to context. In MFPS XV, volume 20 of Electronic Notes in Theoretical Computer Science, pages 346--374. Elsevier, 1999.Google Scholar
- S. B. Lassen. Eager normal form bisimulation. In Proc. 20th Annual IEEE Symposium on Logic in Computer Science, pages 345--354, 2005. Google Scholar
Digital Library
- S. B. Lassen. Normal form simulation for McCarty's amb. In MFPS XXI, volume 155 of Electronic Notes in Theoretical Computer Science, pages 445--465. Elsevier, 2005. Google Scholar
Digital Library
- S. B. Lassen. Head normal form bisimulation for pairs and the λμ-calculus (extended abstract). In Proc. 21th Annual IEEE Symposium on Logic in Computer Science, 2006. Google Scholar
Digital Library
- P. B. Levy. Game semantics using function inventories. Talk given at emphGeometry of Computation 2006, Marseille, 2006.Google Scholar
- I. A. Mason and C. L. Talcott. Equivalence in functional languages with effects. Journal of Functional Programming, 1(3):297--327, 1991.Google Scholar
Cross Ref
- M. Merro and C. Biasi. On the observational theory of the CPS-calculus (extended abstract). In Proc. 22nd Conference on Mathematical Foundations of Programming Semantics, volume 158 of Electronic Notes in Theoretical Computer Science, pages 307--330. Elsevier, 2006.Google Scholar
- A. R. Meyer and K. Sieber. Towards fully abstract semantics for local variables: Preliminary report. In Proc. 15th ACM Symposium on Principles of Programming Languages, San Diego, CA, 1988. Google Scholar
Digital Library
- M. Parigot. λμ-calculus: An algorithmic interpretation of classical natural deduction. In A. Voronkov, editor, Proceedings Intl. Conf. on Logic Programming and Automated Reasoning, LPAR'92, St Petersburg, volume 624 of Lecture Notes in Computer Science, pages 190--201. Springer-Verlag, 1992. Google Scholar
Digital Library
- R. P. Perez. An extensional partial combinatory algebra based on λ-terms. In A. Tarlecki, editor, Proc. Mathematical Foundations of Computer Science, volume 520 of Lecture Notes in Computer Science, pages 387--396. Springer-Verlag, 1991.Google Scholar
- A. M. Pitts. Reasoning about local variables with operationally-based logical relations. In P. W. O'Hearn and R. D. Tennent, editors, Algol-Like Languages, volume 2, chapter 17, pages 173--193. Birkhauser, 1997. Reprinted from emphProceedings Eleventh Annual IEEE Symposium on Logic in Computer Science, 1996, pp 152--163. Google Scholar
Digital Library
- A. M. Pitts and I. D. B. Stark. Operational reasoning for functions with local state. In Gordon and Pitts citeHOOTS:95, pages 227--273. Google Scholar
Digital Library
- E. Ritter and A. M. Pitts. A fully abstract translation between a λ-calculus with reference types and Standard ML. In Proc. 2nd International Conference on Typed Lambda Calculus and Applications, Edinburgh, volume 902 of Lecture Notes in Computer Science. Springer-Verlag, 1995. Google Scholar
Digital Library
- D. Sangiorgi. The lazy lambda calculus in a concurrency scenario. Information and Computation, 111(1):120--153, 1994. Google Scholar
Digital Library
- E. Sumii and B. C. Pierce. A bisimulation for type abstraction and recursion. In Proc. 32nd ACM Symposium on Principles of Programming Languages, pages 63--74, 2005. Google Scholar
Digital Library
- C. Talcott. Reasoning about functions with effects. In Gordon and Pitts citeHOOTS:95, pages 347--390. Google Scholar
Digital Library
- M. Wand and G. T. Sullivan. Denotational semantics using an operationally-based term model. In Proc. 24th ACM Symposium on Principles of Programming Languages, pages 386--399, 1997. Google Scholar
Digital Library
Index Terms
A complete, co-inductive syntactic theory of sequential control and state
Recommendations
A complete, co-inductive syntactic theory of sequential control and state
POPL '07: Proceedings of the 34th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languagesWe present a new co-inductive syntactic theory, eager normal form bisimilarity, for the untyped call-by-value lambda calculus extended with continuations and mutable references.We demonstrate that the associated bisimulation proof principle is easy to ...
A complete, co-inductive syntactic theory of sequential control and state
Semantics and algebraic specificationWe present a co-inductive syntactic theory, eager normal form bisimilarity, for the untyped call-by-value lambda calculus extended with continuations and mutable references.
We demonstrate that the associated bisimulation proof principle is easy to use ...
Sound and Complete Equational Reasoning over Comodels
Comodels of Lawvere theories, i.e. models in Setop, model state spaces with algebraic access operations. Standard equational reasoning is known to be sound but incomplete for comodels. We give two sound and complete calculi for equational reasoning over ...






Comments