Topological models for higher order control flow

  • J. W. de Bakker
  • F. van Breugel
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 802)


Semantic models are presented for two simple imperative languages with higher order constructs. In the first language the interesting notion is that of second order assignment x:=s, for x a procedure variable and s a statement. The second language extends this idea by a form of higher order communication, with statements c! s and c? x, for c a channel. We develop operational and denotational models for both languages, and study their relationships. Both in the definitions and the comparisons of the semantic models, convenient use is made of some tools from (metric) topology. The operational models are based on (SOS-style) transition systems; the denotational definitions use domains specified as solutions of domain equations in a category of 1-bounded complete ultrametric spaces. In establishing the connection between the two kinds of models, fruitful use is made of Rutten's processes as terms technique. Another new tool consists in the use of metric transition systems, with a metric defined on the configurations of the system. In addition to higher order programming notions, we use higher order definitional techniques, e.g., in defining the semantic mappings as fixed points of (contractive) higher order operators. By Banach's theorem, such fixed points are unique, yielding another important proof principle for our paper.


Transition System Semantic Model Operational Semantic Extended State Semantic State 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [ABKR89]
    P. America, J.W. de Bakker, J.N. Kok, and J.J.M.M. Rutten. Denotational Semantics of a Parallel Object-Oriented Language. Information and Computation, 83(2): 152–205, November 1989.Google Scholar
  2. [ACCL90]
    M. Abadi, L. Cardelli, P.-L. Curien, and J.-J. Lévy. Explicit Substitutions. In Proceedings of the 17th Annual ACM Symposium on Principles of Programming Languages, pages 31–46, San Francisco, January 1990.Google Scholar
  3. [AGR92]
    E. Astesiano, A. Giovini, and G. Reggio. Observational Structures and their Logics. Theoretical Computer Science, 96(1):249–283, April 1992.Google Scholar
  4. [AR87]
    E. Astesiano and G. Reggio. SMoLCS-driven Concurrent Calculi. In H. Ehrig, R. Kowalski, G. Levi, and U. Montanari, editors, Proceedings of the International Joint Conference on Theory and Practice of Software Development, volume 249 of Lecture Notes in Computer Science, pages 169–201, Pisa, March 1987. Springer-Verlag.Google Scholar
  5. [AR89]
    P. America and J.J.M.M. Rutten. Solving Reflexive Domain Equations in a Category of Complete Metric Spaces. Journal of Computer and System Sciences, 39(3):343–375, December 1989.Google Scholar
  6. [Ban22]
    S. Banach. Sur les Opérations dans les Ensembles Abstraits et leurs Applications aux Equations Intégrales. Fundamenta Mathematicae, 3:133–181, 1922.Google Scholar
  7. [Bar92]
    H.P. Barendregt. Lambda Calculi with Types. In S. Abramsky, Dov M. Gabbay, and T.S.E. Maibaum, editors, Handbook of Logic in Computer Science, volume 2, Background: Computational Structures, chapter 2, pages 117–309. Clarendon Press, Oxford, 1992.Google Scholar
  8. [BB92]
    G. Berry and G. Boudol. The Chemical Abstract Machine. Theoretical Computer Science, 96(1):217–248, April 1992.Google Scholar
  9. [BM88]
    J.W. de Bakker and J.-J.Ch. Meyer. Metric Semantics for Concurrency. BIT, 28:504–529, 1988.Google Scholar
  10. [Bou89]
    G. Boudol. Towards a Lambda-Calculus for Concurrent and Communicating Systems. In J. Diaz and F. Orejas, editors, Proceedings of the International Joint Conference on Theory and Practice of Software Development, volume 351 of Lecture Notes in Computer Science, pages 149–162, Barcelona, March 1989. Springer-Verlag.Google Scholar
  11. [BR92]
    J.W. de Bakker and J.J.M.M. Rutten, editors. Ten Years of Concurrency Semantics, selected papers of the Amsterdam Concurrency Group. World Scientific, Singapore, September 1992.Google Scholar
  12. [Bre93]
    F. van Breugel. Three Metric Domains of Processes for Bisimulation. This volume.Google Scholar
  13. [Bre94]
    F. van Breugel. Topological Models in Comparative Semantics. PhD thesis, Vrije Universiteit, Amsterdam, 1994. In preparation.Google Scholar
  14. [BZ82]
    J.W. de Bakker and J.I. Zucker. Processes and the Denotational Semantics of Concurrency. Information and Control, 54(1/2):70–120, July/August 1982.Google Scholar
  15. [Cur88]
    P.-L. Curien. The λρ-calculus: An Abstract Framework for Environment Machines. Report, LIENS, Paris, October 1988.Google Scholar
  16. [Hoa85]
    C.A.R. Hoare. Communicating Sequential Processes. Series in Computer Science. Prentice/Hall International, London, 1985.Google Scholar
  17. [JP90]
    R. Jagadeesan and P. Panangaden. A Domain-theoretic Model for a Higherorder Process Calculus. In M.S. Paterson, editor, Proceedings of the 17th International Colloquium on Automata, Languages and Programming, volume 443 of Lecture Notes in Computer Science, pages 181–194, Coventry, July 1990. Springer-Verlag.Google Scholar
  18. [KR90]
    J.N. Kok and J.J.M.M. Rutten. Contractions in Comparing Concurrency Semantics. Theoretical Computer Science, 76(2/3):179–222, 1990.Google Scholar
  19. [Kur56]
    K. Kuratowski. Sur une Méthode de Métrisation Complète des Certains Espaces d'Ensembles Compacts. Fundamenta Mathematicae, 43:114–138, 1956.Google Scholar
  20. [LTLG92]
    J.-J. Lévy, B. Thomsen, L. Leth, and A. Giacalone. CONcurrency and Functions: Evaluation and Reduction. Bulletin of the European Association for Theoretical Computer Science, 48:88–106, October 1992.Google Scholar
  21. [Mic51]
    E. Michael. Topologies on Spaces of Subsets. Transactions of the American Mathematical Society, 71:152–182, 1951.Google Scholar
  22. [Mil92]
    R. Milner. Functions as Processes. Mathematical Structures in Computer Science, 2(2):119–141, June 1992.Google Scholar
  23. [MPW92]
    R. Milner, J. Parrow, and D. Walker. A Calculus of Mobile Processes, I and II. Information and Computation, 1(100):1–40 and 41–77, September 1992.Google Scholar
  24. [MS92]
    R. Milner and D. Sangiorgi. Barbed Bisimulation. In W. Kuich, editor, Proceedings of the 19th International Colloquium on Automata, Languages and Programming, volume 623 of Lecture Notes in Computer Science, pages 685–695, Vienna, July 1992. Springer-Verlag.Google Scholar
  25. [Plo81]
    G.D. Plotkin. A Structural Approach to Operational Semantics. Report DAIMI FN-19, Aarhus University, Aarhus, September 1981.Google Scholar
  26. [RT92]
    J.J.M.M. Rutten and D. Turi. On the Foundations of Final Semantics: non-standard sets, metric spaces, partial orders. In J.W. de Bakker, W.-P. de Roever, and G. Rozenberg, editors, Proceedings of the REX Workshop on Semantics: Foundations and Applications, volume 666 of Lecture Notes in Computer Science, pages 477–530, Beekbergen, June 1992. Springer-Verlag.Google Scholar
  27. [Rut92]
    J.J.M.M. Rutten. Processes as Terms: Non-Well-Founded Models for Bisimulation. Mathematical Structures in Computer Science, 2(3):257–275, September 1992.Google Scholar
  28. [San92]
    D. Sangiorgi. Expressing Mobility in Process Algebras: First-Order and Higher-Order Paradigms. PhD thesis, University of Edinburg, Edinburg, 1992.Google Scholar
  29. [San93]
    D. Sangiorgi. An Investigation into Functions as Processes. This volume.Google Scholar
  30. [Tho89]
    B. Thomsen. A Calculus of Higher Order Communicating Systems. In Proceedings of the 16th Annual ACM Symposium on Principles of Programming Languages, pages 143–154, Austin, January 1989.Google Scholar
  31. [Tho90]
    B. Thomsen. Calculi for Higher Order Communicating Systems. PhD thesis, Imperial College, London, September 1990.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1994

Authors and Affiliations

  • J. W. de Bakker
    • 1
    • 2
  • F. van Breugel
    • 1
    • 2
  1. 1.Department of Software TechnologyCWISJ Amsterdam
  2. 2.Department of Mathematics and Computer ScienceVrije UniversiteitHV Amsterdam

Personalised recommendations