Skip to main content

A Complete Characterization of Observational Equivalence in Polymorphic λ-Calculus with General References

  • Conference paper
Computer Science Logic (CSL 2009)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 5771))

Included in the following conference series:

Abstract

We give the first sound and complete proof method for observational equivalence in full polymorphic λ-calculus with existential types and first-class, higher-order references. Our method is syntactic and elementary in the sense that it only employs simple structures such as relations on terms. It is nevertheless powerful enough to prove many interesting equivalences that can and cannot be proved by previous approaches, including the latest work by Ahmed, Dreyer and Rossberg (POPL 2009).

Appendices online: http://www.kb.ecei.tohoku.ac.jp/~sumii/pub/polyref.pdf

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Abramsky, S., Honda, K., McCusker, G.: A fully abstract game semantics for general references. In: Thirteenth Annual IEEE Symposium on Logic in Computer Science, pp. 334–344 (1998)

    Google Scholar 

  2. Ahmed, A., Appel, A.W., Virga, R.: An indexed model of impredicative polymorphism and mutable references (2003), http://www.cs.princeton.edu/~amal/papers/impred.pdf

  3. Ahmed, A., Dreyer, D., Rossberg, A.: State-dependent representation independence. In: Proceedings of the 36th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pp. 340–353 (2009)

    Google Scholar 

  4. Appel, A.W., McAllester, D.: An indexed model of recursive types for foundational proof-carrying code. ACM Transactions on Programming Languages and Systems 23(5), 657–683 (2001)

    Article  Google Scholar 

  5. Birkedal, L., Støvring, K., Thamsborg, J.: Realizability semantics of parametric polymorphism, references, and recursive types. In: Foundations of Software Science and Computation Structures. LNCS, vol. 5504, pp. 456–470. Springer, Heidelberg (2009)

    Google Scholar 

  6. Birkedal, L., Støvring, K., Thamsborg, J.: Relational parametricity for references and recursive types. In: Types in Language Design and Implementation, pp. 91–104 (2009)

    Google Scholar 

  7. Bohr, N., Birkedal, L.: Relational reasoning for recursive types and references. In: Kobayashi, N. (ed.) APLAS 2006. LNCS, vol. 4279, pp. 79–96. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  8. Gabbay, M., Pitts, A.: A new approach to abstract syntax involving binders. In: 14th Annual IEEE Symposium on Logic in Computer Science, pp. 214–224 (1999)

    Google Scholar 

  9. Gordon, A.D.: Functional Programming and Input/Output. PhD thesis, University of Cambridge (1993)

    Google Scholar 

  10. Koutavas, V., Wand, M.: Small bisimulations for reasoning about higher-order imperative programs. In: Proceedings of the 33rd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pp. 141–152 (2006)

    Google Scholar 

  11. Laird, J.: A fully abstract trace semantics for general references. In: Arge, L., Cachin, C., Jurdziński, T., Tarlecki, A. (eds.) ICALP 2007. LNCS, vol. 4596, pp. 667–679. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  12. Lassen, S.B., Levy, P.B.: Typed normal form bisimulation for parametric polymorphism. In: 23rd Annual IEEE Symposium on Logic in Computer Science, pp. 341–352 (2008)

    Google Scholar 

  13. Meyer, A.R., Sieber, K.: Towards fully abstract semantics for local variables: Preliminary report. In: Proceedings of the 15th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pp. 191–203 (1988)

    Google Scholar 

  14. Mitchell, J.C.: On the equivalence of data representations. In: Artificial Intelligence and Mathematical Theory of Computation: Papers in Honor of John McCarthy, pp. 305–330. Academic Press, London (1991)

    Chapter  Google Scholar 

  15. Pierce, B.C.: Types and Programming Languages. MIT Press, Cambridge (2002)

    MATH  Google Scholar 

  16. Pierce, B.C., Sangiorgi, D.: Behavioral equivalence in the polymorphic pi-calculus. Journal of the ACM 47(3), 531–586 (2000); Extended abstract appeared in: Proceedings of the 24th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pp. 531–584 (1997)

    Article  MathSciNet  MATH  Google Scholar 

  17. Pitts, A.M., Stark, I.: Operational reasoning for functions with local state. In: Higher Order Operational Techniques in Semantics, pp. 227–273. Cambridge University Press, Cambridge (1998)

    Google Scholar 

  18. Reynolds, J.C.: Types, abstraction and parametric polymorphism. In: Information Processing 1983, Proceedings of the IFIP 9th World Computer Congres, pp. 513–523 (1983)

    Google Scholar 

  19. Sangiorgi, D., Kobayashi, N., Sumii, E.: Environmental bisimulations for higher-order languages. In: Twenty-Second Annual IEEE Symposium on Logic in Computer Science, pp. 293–302 (2007)

    Google Scholar 

  20. Sangiorgi, D., Milner, R.: The problem of “weak bisimulation up to”. In: Cleaveland, W.R. (ed.) CONCUR 1992. LNCS, vol. 630, pp. 32–46. Springer, Heidelberg (1992)

    Chapter  Google Scholar 

  21. Støvring, K., Lassen, S.B.: A complete, co-inductive syntactic theory of sequential control and state. In: Proceedings of the 34th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pp. 161–172 (2007)

    Google Scholar 

  22. Sumii, E.: A theory of non-monotone memory (or: Contexts for free). In: 18th European Symposium on Programming. LNCS, vol. 5502, pp. 237–251. Springer, Heidelberg (2009)

    Google Scholar 

  23. Sumii, E., Pierce, B.C.: A bisimulation for dynamic sealing. Theoretical Computer Science 375(1–3), 169–192 (2007); Extended abstract appeared in: Proceedings of the 31st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pp. 161–172 (2004)

    Article  MathSciNet  MATH  Google Scholar 

  24. Sumii, E., Pierce, B.C.: A bisimulation for type abstraction and recursion. Journal of the ACM 54(5-26), 1–43 (2007); Extended abstract appeared in: Proceedings of the 32nd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pp. 63–74 (2005)

    MathSciNet  MATH  Google Scholar 

  25. Tzevelekos, N.: Full abstraction for nominal general references. In: Twenty-Second Annual IEEE Symposium on Logic in Computer Science, pp. 399–410 (2007)

    Google Scholar 

  26. Wadler, P.: Theorems for free! In: Proceedings of the Fourth ACM SIGPLAN International Conference on Functional Programming Languages and Computer Architecture, pp. 347–359. ACM Press, New York (1989)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2009 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Sumii, E. (2009). A Complete Characterization of Observational Equivalence in Polymorphic λ-Calculus with General References. In: Grädel, E., Kahle, R. (eds) Computer Science Logic. CSL 2009. Lecture Notes in Computer Science, vol 5771. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-04027-6_33

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-04027-6_33

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-04026-9

  • Online ISBN: 978-3-642-04027-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics