Skip to main content

Relating full abstraction results for different programming languages

  • Semantics
  • Conference paper
  • First Online:
Foundations of Software Technology and Theoretical Computer Science (FSTTCS 1990)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 472))

Abstract

We prove that Plotkin's model of bottomless cpos and partial continuous functions [19] is fully abstract for PCFv, a call-by-yalue version of the language PCF [17]. This settles a ‘folk theorem’ which has occasionally been misunderstood. We then show that the (known) full abstraction results for lazy PCF [2] and PCF with control [22] can be derived as corollaries from this theorem. Such a connection is particularly surprising, because observational congruence—the central notion in the definition of full abstraction—is usually not preserved by many known translations between different programming languages. We expect that new full abstraction theorems for some extensions of PCFv can be derived in the same way.

The author is supported by DFG Research Fellowship Si 373/2-1.

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

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. G. Berry, P. Curien, and J. Lévy. Full abstraction for sequential languages: the state of the art. In M. Nivat and J. C. Reynolds, editors, Algebraic Methods in Semantics, pages 89–132, Cambridge Univ. Press, 1985.

    Google Scholar 

  2. B. Bloom and J. G. Riecke. LCF should be lifted. In Proc. Conf. Algebraic Methodology and Software Technology, pages 133–136, Department of Computer Science, University of Iowa, 1989.

    Google Scholar 

  3. S. S. Cosmadakis. Computing with recursive types. In 4th Symposium on Logic in Computer Science, pages 24–38, IEEE, June 1989.

    Google Scholar 

  4. S. S. Cosmadakis, A. R. Meyer, and J. G. Riecke. Completeness for typed lazy equalities. In 5th Symposium on Logic in Computer Science, pages 312–320, IEEE, 1990.

    Google Scholar 

  5. P. Curien. Categorical Combinators, Sequential Algorithms and Functional Programs. Research Notes in Theoretical Computer Science, Pitman, Wiley, 1986.

    Google Scholar 

  6. M. Felleisen. The theory and practice of first-class prompts. In 15th Symposium on Principles of Programming Languages, pages 180–190, 1988.

    Google Scholar 

  7. D. P. Friedman, C. T. Haynes, and E. Kohlbecker. Programming with continuations. In P. Pepper, editor, Program Transformations and Programming Environments, pages 263–274, Springer-Verlag, 1985.

    Google Scholar 

  8. J. Y. Halpern, A. R. Meyer, and B. A. Trakhtenbrot. The semantics of local storage, or what makes the free-list free? In 11th Symp. on Principles of Programming Languages, pages 245–257, ACM, 1984.

    Google Scholar 

  9. H. Langmaack. Über vollständig operationell adäquate denotationelle Semantik funktionaler Programmiersprachen. Bericht 8901, Institut für Informatik und Praktische Mathematik der Christian-Albrechts-Universität Kiel, 1989.

    Google Scholar 

  10. A. R. Meyer. Semantical paradigms: Notes for an invited lecture, with two appendices by Stavros Cosmadakis. In 3rd Symposium on Logic in Computer Science, pages 236–253, IEEE, 1988.

    Google Scholar 

  11. A. R. Meyer and K. Sieber. Towards fully abstract semantics for local variables: preliminary report. In 15th Symp. on Principles of Programming Languages, pages 191–203, ACM, 1988.

    Google Scholar 

  12. E. Moggi. Computational lambda calculus and monads. In 4th Symposium on Logic in Computer Science, pages 14–23, IEEE, 1989.

    Google Scholar 

  13. K. Mulmuley. Full Abstraction and Semantic Equivalence. PhD thesis, Carnegie-Mellon University, 1985.

    Google Scholar 

  14. C. L. Ong. Fully abstract models of the lazy lambda calculus. In 29th Symposium on Foundations of Computer Science, pages 368–376, IEEE, 1988.

    Google Scholar 

  15. G. D. Plotkin. Call-by-name, call-by-value and the λ-calculus. Theoretical Computer Science, 1:125–159, 1975.

    Google Scholar 

  16. G. D. Plotkin. Lambda-definability in the full type hierarchy. In J. Seldin and J. Hindley, editors, To H. B. Curry: Essays on Combinatory Logic, Lambda Calculus and Formalism, pages 363–374, Academic Press, 1980.

    Google Scholar 

  17. G. D. Plotkin. LCF considered as a programming language. Theoretical Computer Science, 5:223–256, 1977.

    Google Scholar 

  18. G. D. Plotkin. A Structural Approach to Operational Semantics. Technical Report DAIMI FN-19, Aarhus University, Computer Science Department, Denmark, 1981.

    Google Scholar 

  19. G. D. Plotkin. (Towards a) logic for computable functions, CLSI summer school notes. 1985. Unpublished Manuscript.

    Google Scholar 

  20. J. Rees and W. Clinger. The revised3 report on the algorithmic language Scheme. SIGPLAN Notices, 21(12):37–79, 1986.

    Google Scholar 

  21. J. G. Riecke. A complete and decidable proof system for call-by-value equalities. In 17th International Colloqium on Automata, Languages, and Programming, pages 20–31, Warwick, England, 1990.

    Google Scholar 

  22. D. Sitaram and M. Felleisen. Reasoning with continuations II: Full abstraction for models of control. In Conference on Lisp and Functional Programming, Nice, France, 1990.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Kesav V. Nori C. E. Veni Madhavan

Rights and permissions

Reprints and permissions

Copyright information

© 1990 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Sieber, K. (1990). Relating full abstraction results for different programming languages. In: Nori, K.V., Veni Madhavan, C.E. (eds) Foundations of Software Technology and Theoretical Computer Science. FSTTCS 1990. Lecture Notes in Computer Science, vol 472. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-53487-3_58

Download citation

  • DOI: https://doi.org/10.1007/3-540-53487-3_58

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-53487-7

  • Online ISBN: 978-3-540-46313-9

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics