Acta Informatica

, Volume 21, Issue 5, pp 417–441 | Cite as

A fair calculus of communicating systems

  • Gerardo Costa
  • Colin Stirling


In this paper we are concerned with an operational approach to fairness, the problem of defining and generating the fair execution sequences of a concurrent language. One solution invokes two semantic levels: one level (the positive) prescribes the finite and infinite execution sequences without regard to their fairness while the other (the negative) filters out the unfair ones. The first level is given as a set of generative rules whereas the second is encoded as a definition of fair execution sequence. Entirely positive approaches have been proposed which appeal to random assignment. Here we offer an alternative positive approach for a subset of Milner's CCS. We show that rules can be given for generating just the fair sequences which avoid random assignment.


Information System Operating System Data Structure Communication Network Information Theory 
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.
    Apt, K., Olderog, E.: Proof rules and transformations dealing with fairness. Sci. Comput. Progr. pp. 65–100 (1983)Google Scholar
  2. 2.
    Costa, G., Stirling, C.: Weak and strong fairness in CCS. Procs. of 11th Symposium on Mathematical Foundations of Computer Science, Prague. LNCS 176, 245–254 (1984)Google Scholar
  3. 3.
    Gabbay, D., Pnueli, A., Shelah, S., Stavi, J.: On the temporal analysis of fairness. Proc. 7th ACM POPL, Las Vegas (1980)Google Scholar
  4. 4.
    Hennessy, M.: Axiomatising finite delay operators. Technical Report CSR-124-82. Dept. of Computer Science, Edinburgh University (1982)Google Scholar
  5. 5.
    Hennessy, M., Milner, R.: On observing nondeterminism and concurrency. LNCS 85, pp. 299–309. (To appear in expanded form in JACM.) (1980)Google Scholar
  6. 6.
    Lehmann, D., Pnueli, A., Stavi, J.: Impartiality, justice and fairness: the ethics of concurrent termination. LNCS 115, pp. 264–77, Springer-Verlag (1981)Google Scholar
  7. 7.
    Milner, R.: A Calculus of Communicating Systems. LNCS 92, Springer-Verlag (1980)Google Scholar
  8. 8.
    Milner, R.: A finite delay operator in synchronous CCS. Technical Report CSR-116-82. Dept. of Computer Science, Edinburgh University (1982)Google Scholar
  9. 9.
    Milner, R.: Calculi for synchrony and asynchrony. Theoretical Computer Science pp. 267–310 (1983)Google Scholar
  10. 10.
    Owicki, S., Lamport, L.: Proving liveness properties of concurrent programs. ACM Transactions on Programming Languages and Systems pp. 455–495 (1982)Google Scholar
  11. 11.
    Park, D.: On the semantics of fair parallelism. LNCS 86, pp. 504–26, Springer-Verlag (1980)Google Scholar
  12. 12.
    Plotkin, G.: A powerdomain for countable non-determinism. LNCS 140, pp. 418–28, Springer-Verlag (1982)Google Scholar
  13. 13.
    Stirling, C.: A proof theoretic characterization of observational equivalence. Procs. of FCT-TCS, Bangalore (1983)Google Scholar

Copyright information

© Springer-Verlag 1984

Authors and Affiliations

  • Gerardo Costa
    • 1
  • Colin Stirling
    • 1
  1. 1.Department of Computer ScienceEdinburgh UniversityEdinburghUK

Personalised recommendations