Initial algebra semantics and concurrency

  • Maria Zamfir
Part VI New Directions
Part of the Lecture Notes in Computer Science book series (LNCS, volume 298)


The purpose of this paper is to show that initial algebra semantics has an immediate and useful application in the area of communicating computing systems. The major technical feature is a category of continuous many-sorted algebras ca led parallel-nondeterministic algebras. In this setting parallel and nondeterministic behaviors of communicating computing systems can be rigorously formulated as sequences of rewritings on abstract objects called parallel-nondeterministic terms or diamonds. It is shown that diamonds are free in the category of continuous parallel-nondeterministic algebras. (To demonstrate this fact, some results concerning categories of continuous algebras, which can be found in the work of the ADJ group, are presented in a self-contained form.)

Nondeterminism and parallelism are modeled explicitly by introducing a choice operator and a parallel operator, respectively.

In a companion paper [10] flow nets are introduced to describe parallel and nondeterministic behaviors of computing systems that communicate with each other, just as conventional flowcharts are used to describe sequential computations. In a continuous parallel-nondeterministic algebra a flow net is represented by its unfoldment — the solution of a finite system of recursive equations.


Operator Domain Equational System Concurrent System Naming Equation Technical Debt 
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. [1]
    Boudol, G., Computational Semantics of Term Rewriting Systems. In M. Nivat and J.C. Reynolds (editor) Algebraic Methods in Semantics. Cambridge University Press, 1985.Google Scholar
  2. [2]
    Goguen, J.A., Thatcher, J.W., Wagner, E.G., and Wright, J.B., Initial Algebra Semantics and Continuous Algebras. Jour. ACM 24(1), 68–95, 1977.CrossRefGoogle Scholar
  3. [3]
    Hoare, C.A.R., Communicating Sequential Processes. Comm. ACM 21(8), 666–677, Aug. 1978.CrossRefGoogle Scholar
  4. [4]
    Milne, G., and Milner, R., Concurrent Processes and their Syntax. Jour. ACM 26(2), 302–321, April, 1979.CrossRefGoogle Scholar
  5. [5]
    Peterson, J.L., Petri Net Theory and the Modelling of Systems. Prentice-Hall, 1981.Google Scholar
  6. [6]
    Strachey, C., and Wadworth, C.P., Continuations — A Mathematical Semantic Model for Handling Full Jumps. Technical Monograph PRG-11, Programming Research Group, Oxford University, Computing Laboratory, 1974.Google Scholar
  7. [7]
    Thatcher, J.W., Wagner, E.G., and Wright, J.B., Notes on Algebraic Fundamentals for Theoretical Computer Science. In J.B. De Bakker (editor), Foundations of Computer Science, Part 2: Languages, Logic, Semantics. Addison-Wesley, Amsterdam, 1979.Google Scholar
  8. [8]
    Wirth, N., MODULA: A language for modular multiprogramming. Res. Rep. 18, Inst. fur Informatik, Zurich, Switzerland, 1975.Google Scholar
  9. [9]
    Zamfir, M., On the Syntax and Semantics of Concurrent Computing. PhD Thesis, UCLA-CSD-820819, 1982.Google Scholar
  10. [10]
    Zamfir, M. and Martin, D., On the Syntax and Semantics of Concurrent Computing. Proceedings, Conference on the Mathematical Foundation of Programming Languages, KSU, April 1985, LNCS 239.Google Scholar
  11. [11]
    Zamfir, M., Algebraic Theories and Concurrency. KSU Technical Report TR-CS-87-6.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1988

Authors and Affiliations

  • Maria Zamfir
    • 1
  1. 1.Computer Science Department KSUManhattan

Personalised recommendations