Algebraic specification of reactive systems

  • Manfred Broy
Conference Invited Talk
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1101)


We present an algebraic method for the specification of reactive distributed systems. We introduce basic operators on specifications making the set of specifications into a specification algebra. This allows us to work with an algebra of system specifications in analogy to the process algebras that provide algebras of reactive programs. However, in contrast to process algebras we work with a concrete representation (a mathematical system model) of specifications and use algebaric equations to specify components and not programming languages. A specification is represented by a predicate that describes a set of behaviors. A deterministic component has exactly one behavior. A behavior is represented by a stream processing function. We introduce operations on behaviors and lift them to specifications. We show how algebraic system specifications can be used as an algebraic and logical basis for state automata specifications and state transition diagrams.


Finite Automaton Output Channel Input Channel Parallel Composition Process Algebra 
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. [Broy 83]
    M. Broy: Applicative Real Time Programming. In: Information Processing 83, IFIP World Congress, Paris 1983, North Holland Publ. Company 1983, 259–264Google Scholar
  2. [Broy 85]
    M. Broy: Specification and Top Down Design of Distributed Systems. In: H. Ehrig et al. (eds.): Formal Methods and Software Development. Lecture Notes in Computer Science 186, Springer 1985, 4–28, Revised version in JCSS 34:2/3, 1987, 236–264Google Scholar
  3. [Broy 86]
    M. Broy: A Theory for Nondeterminism, Parallelism, Communication and Concurrency. Habilitation, Fakultät für Mathematik und Informatik der Technischen Universität München, 1982, Revised version in: Theoretical Computer Science 45 (1986) 1–61Google Scholar
  4. [Broy 87a]
    M. Broy: Semantics of Finite or Infinite Networks of Communicating Agents. Distributed Computing 2 (1987), 13–31Google Scholar
  5. [Broy 87b]
    M. Broy: Predicative Specification for Functional Programs Describing Communicating Networks. Information Processing Letters 25 (1987) 93–101Google Scholar
  6. [Broy 93]
    M. Broy: Functional Specification of Time Sensitive Communicating Systems. ACM Transactions on Software Engineering and Methodology 2:1, Januar 1993, 1–46Google Scholar
  7. [Broy 95]
    M. Broy: Equations for Describing Dynamic Nets of Communicating Systems. In: E. Astesiano, G. Reggio, A. Tarlecki (eds): Recent Trends in Data Types Specification, 10th Workshop on Specification of Abstract Data Types joint with the 5th COMPASS Workshop, S.Margherita, Italy, May/June 1994, Lecture Notes in Computer Science 906, Springer 1995, 170–187Google Scholar
  8. [Broy 96]
    M. Broy: The Specification of System Components by State Transition Diagrams. Technical Memo 1996Google Scholar
  9. [Broy, Stefanescu 95]
    M. Broy, G. Stefanescu: Algebra of Stream Processing Functions. Forthcoming paperGoogle Scholar
  10. [Broy, Stølen 94]
    M. Broy, K. Stølen: Specification and Refinement of Finite Dataflow Networks — a Relational Approach. In: Langmaack, H. and de Roever, W.-P. and Vytopil, J. (eds): Proc. FTRTFT'94, Lecture Notes in Computer Science 863, 1994, 247–267Google Scholar
  11. [Dybier, Sander 88]
    P. Dybier, H. Sander: A Functional Programming Approach to the Specification and Verification of Concurrent Systems. Chalmers University of Technology and University of Göteborg, Department of Computer Sciences 1988Google Scholar
  12. [FOCUS 94]
    M. Broy, M. Fuchs, T. F. Gritzner, B. Schätz, K Spies, K Stølen: Summary of Case Studies in FOCUS — a Design Method for Distributed Systems. Technische Universität München, Institut für Informatik, TUM-I9423, Juni 1994Google Scholar
  13. [Grosu 94]
    R. Grosu: A Formal Foundation for Concurrent Object Oriented Programming. Ph. D. Thesis, Technische Universität München, Fakultät für Informatik, 1994Google Scholar
  14. [Grosu et al. 95]
    R. Grosu, K. Stølen, M. Broy: A Denotational Model for Mobile Data Flow Networks. To appearGoogle Scholar
  15. [Kahn, MacQueen 77]
    G. Kahn, D. MacQueen: Coroutines and Networks of Processes, Proc. IFIP World Congress 1977, 993–998Google Scholar
  16. [Lynch, Stark 89]
    N. Lynch, E. Stark: A Proof of the Kahn Principle for Input/Output Automata. Information and Computation 82, 1989, 81–92Google Scholar
  17. [Lynch, Turtle 87]
    N. A. Lynch, M. R. Turtle: Hierarchical Correctness Proofs for Distributed Algorithms. In: Proceedings of the Sixth ACM Symposium on Principles of Distributed Computing, 1987Google Scholar
  18. [Milner et al. 92]
    R. Milner, J. Parrow, D. Walker: A Calculus of Mobile Processes. Part i + ii, Information and Computation, 100:1 (1992) 1–40, 41–77Google Scholar
  19. [Park 80]
    D. Park: On the Semantics of Fair Parallelism. In: D. Björner (ed.): Abstract Software Specification. Lecture Notes in Computer Science 86, Berlin-Heidelberg-New York: Springer 1980, 504–526Google Scholar
  20. [Park 83]
    D. Park: The “Fairness” Problem and Nondeterministic Computing Networks. Proc. 4th Foundations of Computer Science, Mathematical Centre Tracts 159, Mathematisch Centrum Amsterdam, (1983) 133–161Google Scholar
  21. [SDL 88]
    Specification and Description Language (SDL), Recommendation Z. 100. Technical Report, CCITT 1988Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1996

Authors and Affiliations

  • Manfred Broy
    • 1
  1. 1.Institut für InformatikTechnische Universität MünchenMünchen

Personalised recommendations