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.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
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.
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.
S. S. Cosmadakis. Computing with recursive types. In 4th Symposium on Logic in Computer Science, pages 24–38, IEEE, June 1989.
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.
P. Curien. Categorical Combinators, Sequential Algorithms and Functional Programs. Research Notes in Theoretical Computer Science, Pitman, Wiley, 1986.
M. Felleisen. The theory and practice of first-class prompts. In 15th Symposium on Principles of Programming Languages, pages 180–190, 1988.
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.
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.
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.
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.
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.
E. Moggi. Computational lambda calculus and monads. In 4th Symposium on Logic in Computer Science, pages 14–23, IEEE, 1989.
K. Mulmuley. Full Abstraction and Semantic Equivalence. PhD thesis, Carnegie-Mellon University, 1985.
C. L. Ong. Fully abstract models of the lazy lambda calculus. In 29th Symposium on Foundations of Computer Science, pages 368–376, IEEE, 1988.
G. D. Plotkin. Call-by-name, call-by-value and the λ-calculus. Theoretical Computer Science, 1:125–159, 1975.
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.
G. D. Plotkin. LCF considered as a programming language. Theoretical Computer Science, 5:223–256, 1977.
G. D. Plotkin. A Structural Approach to Operational Semantics. Technical Report DAIMI FN-19, Aarhus University, Computer Science Department, Denmark, 1981.
G. D. Plotkin. (Towards a) logic for computable functions, CLSI summer school notes. 1985. Unpublished Manuscript.
J. Rees and W. Clinger. The revised3 report on the algorithmic language Scheme. SIGPLAN Notices, 21(12):37–79, 1986.
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.
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.
Author information
Authors and Affiliations
Editor information
Rights 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