Full abstraction and unnested recursion

  • Michael W. Mislove
  • Frank J. Oles
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 666)


We begin with the assumption that we are given a basic programming language L without identifiers (i.e., variables), which is, nonetheless, fairly expressive. We also assume L has been provided with both an operational semantics and a denotational semantics. Furthermore, the denotational semantics is adequate and fully abstract with respect to the operational semantics. After clarifying exactly what these assumptions entail,
  1. 1.

    we discuss what it means to extend L algebraically to a language L[X] by the addition of identifiers,

  2. 2.

    we discuss the semantics of L[X] in the context of possibly self-referential environments (i.e., systems of recursive definitions of the identifiers), and

  3. 3.

    we show that extremely mild topological assumptions about the operational model ensure that adequacy and full abstraction of the denotational semantics of L[X] with respect to its operational semantics follow automatically from the corresponding results for L.


Essentially, we will assume that the operational model is a Hausdorff space, and the operational process of unwinding a recursive program converges to its operational meaning. Some work has been done on the issues we are confronting, but from the standpoint of fair unwindings of recursive constructs. That work indicates that full abstraction results are not generally to be expected in all situations. Our goal, however, is to establish that full abstraction results are indeed available in a very general setting.


Full abstraction adequacy algebraic semantics homomorphism algebraic poset 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [AP86]
    Apt. K. and G. D. Plotkin, Countable nondeterminism and random, assignment, JACM 34 (1986), pp.724–767.Google Scholar
  2. [BW90]
    Baeten, J.C.M. and W.P. Weijland, Process Algebra, Cambridge University Press (Cambridge, England) (1990).Google Scholar
  3. [BK90]
    Bergstra, J.A., and J.W. Klop, An Introduction to Process Algebra in: Applications of Process Algebra, J.C.M. Baeten (Ed.). Cambridge University Press (Cambridge, England) (1990), pp. 1–21.Google Scholar
  4. [BKO88]
    Bergstra, J.A., J.W. Klop and E. R. Olderog, Readies and failures in the algebra of communicating processes SIAM Journal of Computing 17 (1988), pp. 1134–1177.Google Scholar
  5. [MaO92]
    Machlin, R.S. and P. J. Oles, Non-well-founded fully abstract semantics for concurrency, in preparation.Google Scholar
  6. [M91]
    Mislove, M.W., Algebraic posets, algebraic cpo's, and models of concurrency, Proceedings of the Oxford Symposium on Topology (1991).Google Scholar
  7. [MiO92a]
    Mislove, M. W. and F. J. Oles, A simple language supporting angelic nondeterminism and parallel composition, Lecture Notes in Computer Science 598 (1992), pp. 77–101.Google Scholar
  8. [MiO92b]
    Mislove, M. W. and F. J. Oles, A topological algebra for angelic nondeterminism, submitted for publication.Google Scholar
  9. [Oles87]
    Oles, F. J., Semantics for concurrency without powerdomains, Proceedings of the 14th ACM Symposium on the Principles of Programming Languages, ACM Press (1987) pp. 211–222.Google Scholar
  10. [W90]
    Wagner, E.G., Algebras, polynomials, and programs, Theoretical Computer Science 70 (1990) pp. 3–34.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1993

Authors and Affiliations

  • Michael W. Mislove
    • 1
  • Frank J. Oles
    • 2
  1. 1.Department of MathematicsTulane UniversityNew Orleans
  2. 2.Mathematical Sciences DepartmentIBM T.J. Watson Research CenterYorktown Heights

Personalised recommendations