Deriving Bisimulation Congruences for Reactive Systems

  • James J. Leifer
  • Robin Milner
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1877)


The dynamics of reactive systems, e.g. CCS, has often been defined using a labelled transition system (LTS). More recently it has become natural in defining dynamics to use reaction rules - i.e. unlabelled transition rules - together with a structural congruence. But LTSs lead more naturally to behavioural equivalences. So one would like to derive from reaction rules a suitable LTS.

This paper shows how to derive an LTS for a wide range of reactive systems. A label for an agent a is defined to be any context F which intuitively is just large enough so that the agent Fa (“a in context F”) is able to perform a reaction. The key contribution of this paper is a precise definition of “just large enough”, in terms of the categorical notion of relative pushout (RPO), which ensures that bisimilarity is a congruence when sufficient RPOs exist. Two examples - a simplified form of action calculi and term-rewriting - are given, for which it is shown that sufficient RPOs indeed exist. The thrust of this paper is, therefore, towards a general method for achieving useful behavioural congruence relations.


Label Transition System Reaction Rule Process Calculus Term Context Structural Congruence 
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.
    Ariola, Z. M. and Klop, J. W., Equational term graph rewriting. Fundamentae Informaticae, 26(3,4), pp. 207–240, 1996.zbMATHMathSciNetGoogle Scholar
  2. 2.
    Abadi, M. and Gordon, A. D., A calculus for cryptographic protocols: the spi calculus. Proc. Fourth ACM Conf. on Computer and Communications Security, Zürich, ACM Press, pp. 36–47, 1997.CrossRefGoogle Scholar
  3. 3.
    Baeten, J. C. and Weiland, W. P., Process algebra. CUP, 1990.Google Scholar
  4. 4.
    Berry, G. and Boudol, G., The chemical abstract machine. Theor. Comp. Sci. 96, pp. 217–248, 1992.zbMATHCrossRefMathSciNetGoogle Scholar
  5. 5.
    Cardelli, L. and Gordon, A. D., Mobile ambients. Foundations of System Specification and Computational Structures, LNCS 1378, pp. 140–155., 1998.Google Scholar
  6. 6.
    Corradini, A. and Montanari, U., An algebra of graphs and graph rewriting. Proc. Fourth Biennial Conf. on Category Theory and Computer Science, LNCS 530, pp. 236–260, 1991.CrossRefGoogle Scholar
  7. 7.
    Fournet, C., Gonthier, G., Lévy, J.-J., Maranget, L., and Rémy, D., A calculus of mobile agents. Proc. CONCUR’96, LNCS 1119, pp. 406–421Google Scholar
  8. 8.
    Gardner, P., Closed action calculi. Theor. Comp. Sci. 228(1,2), pp. 77–103, 1999.zbMATHCrossRefGoogle Scholar
  9. 9.
    van Glabbeek, R. J., The linear time-branching time spectrum. Proc. CONCUR’90, LNCS 458, pp. 278–297, 1990.Google Scholar
  10. 10.
    Groote, J. F. and Vaandrager, F. W., Structural operational semantics and bisimulation as a congruence. Information and Computation 100(2), pp. 202–260, 1992zbMATHCrossRefMathSciNetGoogle Scholar
  11. 11.
    Hasegawa, M. Models of sharing graphs (a categorical semantics of let and letrec). PhD thesis, LFCS, University of Edinburgh, 1997.Google Scholar
  12. 12.
    Hoare, C.A. R., Communicating Sequential Processes. Prentice Hall, 1985.Google Scholar
  13. 13.
    Jeffrey, A. and Rathke, J., Towards a theory of bisimulation for local names. Proc. LICS’99, IEEE Press, pp. 56–66, 1999.Google Scholar
  14. 14.
    Joyal, A., Nielsen, M. and Winskel, G., Bisimulation from open maps. Information and Computation 127(2), pp. 164–185, 1996.zbMATHCrossRefMathSciNetGoogle Scholar
  15. 15.
    Milner, R., Communication and Concurrency. Prentice Hall, 1989.Google Scholar
  16. 16.
    Milner, R., Functions as processes. Mathematical Structures in Computer Science 2(2), pp. 119–141, 1992.zbMATHMathSciNetCrossRefGoogle Scholar
  17. 17.
    Milner, R., Calculi for interaction. Acta Informatica 33(8), pp. 707–737, 1996.CrossRefMathSciNetGoogle Scholar
  18. 18.
    Milner, R., Parrow, J. and Walker, D., A calculus of mobile processes, Parts 1 and 2. Information and Computation 100(1), pp. 1–77, 1992.zbMATHCrossRefMathSciNetGoogle Scholar
  19. 19.
    Milner, R. and Sangiorgi, D., Barbed bisimulation. Proc. ICALP’92, LNCS 623, pp. 685–695, 1992.Google Scholar
  20. 20.
    Pitts, A. M. and Stark, I. D. B., Observable properties of higher order functions that dynamically create local names, or: What’s new? Proc. MFCS, LNCS 711, pp 122–141, 1993.Google Scholar
  21. 21.
    Park, D., Concurrency and automata on infinite sequences. Lect Notes Comput Sci 104, 1980.Google Scholar
  22. 22.
    Sewell, P., From rewrite rules to bisimulation congruences. Proc. CONCUR’98, LNCS 1466, pp. 269–284, 1998. [Revised version to appear in a special issue of Theor. Comp. Sci.]Google Scholar
  23. 23.
    Sewell, P., Global/local subtyping and capability inference for a distributed picalculus. Proc. ICALP’98, 4 1443, pp. 695–706Google Scholar
  24. 24.
    Turi, D. and Plotkin, G. Towards a mathematical operational semantics. Proc. LICS’97, IEEE Press, pp. 280–291, 1997.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2000

Authors and Affiliations

  • James J. Leifer
    • 1
  • Robin Milner
    • 1
  1. 1.University of Cambridge Computer LaboratoryCambridgeUK

Personalised recommendations