Transformations realizing fairness assumptions for parallel programs

  • K. R. Apt
  • E. -R. Olderog
Invited Lectures
Part of the Lecture Notes in Computer Science book series (LNCS, volume 166)


Parallel programs with shared variables are studied under a semantics which assumes the fair execution of all parallel components. We present transformations which reduce this fair semantics to a simple interleaving semantics with help of random assignments z:=?. In fact, different notions of fairness are considered: impartiality, liveness, weak and strong fairness. All transformations preserve the structure of the original programs and are thus suitable as a basis for syntax-directed correctness proofs.


Auxiliary Variable Parallel Program Proof System Boolean Expression Concurrent Program 
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. /AO/.
    K.R. Apt, E.-R. Olderog, Proof rules and transformations dealing with fairness, Science of Computer Programming 3 (1983) 65–100; extended abstract appeared in: D. Kozen (Ed.), Proc. Logics of Programs 1981, Lecture Notes in Computer Science 131 (Springer, Berlin, 1982) 1–8.Google Scholar
  2. /AP/.
    K.R. Apt, G.D. Plotkin, Countable nondeterminism and random assignment, Technical Report, Univ. of Edinburgh (1982); extended abstract appeared in: S. Even, O. Kariv (Eds.), Proc. 8th Coll. Automata, languages and Programming, Lecture Notes in Computer Science 115 (Springer, Berlin, 1981) 479–494.Google Scholar
  3. /APS/.
    K.R. Apt, A. Pnueli, J. Stavi, Fair termination revisited — with delay, in: Proc. 2nd Conf. on Software Technology and Theoretical Computer Science, Bangalore (1982).Google Scholar
  4. /Br1/.
    M. Broy, Transformational semantics for concurrent programs, Inform. Proc. Letters 11 (1980) 87–91.Google Scholar
  5. /Br2/.
    M. Broy, Are fairness assumptions fair?, in: Proc. 2nd Intern. Conf. on Distributed Computing Systems (IEEE, Paris, 1981) 116–125.Google Scholar
  6. /Di/.
    E.W. Dijkstra, A Discipline of Programming (Prentice Hall, 1976).Google Scholar
  7. /FP/.
    M.J. Fisher, M.S. Paterson, Storage requirements for fair scheduling, Manuscript, Univ. of Warwick (1982).Google Scholar
  8. /FS1/.
    L. Flon, N. Suzuki, Nondeterminism and the correctness of parallel programs, in: E.J. Neuhold (Ed.), Formal Description of Programming Concepts I (North Holland, Amsterdam, 1978) 589–608.Google Scholar
  9. /FS2/.
    L. Flon, N. Suzuki, The total correctness of parallel programs, SIAM J. Comp. 10 (1981) 227–246.Google Scholar
  10. /Fr/.
    N. Francez, Fairness, Unpublished Manuscript, Technion Univ. (1983).Google Scholar
  11. /HP/.
    M.C.B. Henessy, G.D. Plotkin, Full abstraction for a simple programming language, in: J. Bečvař (Ed.), Proc. 8th Symp. on Mathematical Foundations of Computer Science 74 (Springer, Berlin, 1979) 108–120.Google Scholar
  12. /Ho/.
    C.A.R. Hoare, Some properties of predicate transformers, J. ACM 25 (1978) 461–480.Google Scholar
  13. /LPS/.
    D. Lehmann, A. Pnueli, J. Stavi, Impartiality, justice and fairness: the ethics of concurrent termination, in: S. Even, O. Kariv (Eds.), Proc. 8th Coll. Automata, Languages and Programming, Lecture Notes in Computer Science 115 (Springer, Berlin, 1981) 264–277.Google Scholar
  14. /MP/.
    Z. Manna, A. Pnueli, Verification of concurrent programs: the temporal framework, in: R.S. Boyer, J.S. Moore (Eds.), The Correctness Problem in Computer Science, International Lecture Series in Computer Science (Academic Press, London, 1981).Google Scholar
  15. /OG/.
    S. Owicki, D. Gries, An axiomatic proof technique for parallel programs, Acta Informatica 6 (1976) 319–340.Google Scholar
  16. /OL/.
    S. Owicki, L. Lamport, Proving liveness properties of concurrent programs, ACM TOPLAS 4 (1982) 455–495.Google Scholar
  17. /Pa/.
    D. Park, On the semantics of fair parallelism, in: D. Bjørner (Ed.), Proc. Abstract Software Specifications, Lecture Notes in Computer Science 86 (Springer, Berlin, 1979) 504–526.Google Scholar
  18. /Pl/.
    G.D. Plotkin, A structural approach to operational semantics, Technical Report DAIMI-FN 19, Comp. Sci. Dept., Aarhus Univ. (1981).Google Scholar
  19. /Pn/.
    A. Pnueli, The temporal semantics of concurrent programs, Theoretical Computer Science 13 (1981) 45–60.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1984

Authors and Affiliations

  • K. R. Apt
    • 1
  • E. -R. Olderog
    • 2
  1. 1.LITP Université Paris VIIParis
  2. 2.Institut für InformatikUniversität KielKiel 1

Personalised recommendations