Already in Lamport’s bakery algorithm, integers are used for fair schedulers of concurrent processes. In this paper, we present the extension of a fair scheduler from ‘static control’ (the number of processes is fixed) to ‘dynamic control’ (the number of processes changes during execution). We believe that our results shed new light on the concept of fairness in the setting of dynamic control.


Transition Relation Dynamic Control Boolean Expression Select Transition Liveness Property 
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.


  1. 1.
    Apt, K.-R., Olderog, E.-R.: Verification of Sequential and Concurrent Programs, 2nd edn. Springer, Heidelberg (1997)zbMATHGoogle Scholar
  2. 2.
    Bauer, J., Schaefer, I., Toben, T., Westphal, B.: Specification and verification of dynamic communication systems. In: Goossens, K., Petrucci, L. (eds.) ACSD, Turku, Finland. IEEE, Los Alamitos (2006)Google Scholar
  3. 3.
    Best, E.: Semantics of Sequential and Parallel Programs. Prentice Hall, Englewood Cliffs (1996)zbMATHGoogle Scholar
  4. 4.
    Cook, B., Podelski, A., Rybalchenko, A.: Proving thread termination. In: PLDI. ACM Press, New York (2007)Google Scholar
  5. 5.
    Cousot, P., Cousot, R.: Abstract interpretation: A unified lattice model for static analysis of programs by construction or approximation of fixedpoints. In: POPL, pp. 238–252. ACM, New York (1977)Google Scholar
  6. 6.
    Dijkstra, E.W.: Guarded commands, nondeterminacy and formal derivation of programs. Comm. of the ACM 18, 453–457 (1975)zbMATHCrossRefMathSciNetGoogle Scholar
  7. 7.
    Francez, N.: Fairness. Springer, New York (1986)zbMATHGoogle Scholar
  8. 8.
    Lamport, L.: A new solution of Dijkstra’s concurrent programming problem. Comm. of the ACM 17(8), 453–455 (1974)zbMATHCrossRefMathSciNetGoogle Scholar
  9. 9.
    Musuvathi, M., Quadeer, S.: Fair stateless model checking. In: PLDI (June 2008)Google Scholar
  10. 10.
    Olderog, E.R., Apt, K.R.: Fairness in parallel programs, the transformational approach. ACM TOPLAS 10, 420–455 (1988)CrossRefGoogle Scholar
  11. 11.
    Plotkin, G.: A structural approach to operational semantics. J. of Logic and Algebraic Programming 60-61, 17–139 (2004)CrossRefMathSciNetGoogle Scholar
  12. 12.
    Pnueli, A., Podelski, A., Rybalchenko, A.: Separating fairness and well-foundedness for the analysis of fair discrete systems. In: Halbwachs, N., Zuck, L.D. (eds.) TACAS 2005. LNCS, vol. 3440, pp. 124–139. Springer, Heidelberg (2005)Google Scholar
  13. 13.
    Podelski, A., Rybalchenko, A.: Transition invariants. In: LICS 2004, pp. 32–41. IEEE Computer Society, Los Alamitos (2004)Google Scholar
  14. 14.
    Podelski, A., Rybalchenko, A.: Transition predicate abstraction and fair termination. In: POPL, pp. 132–144. ACM, New York (2005)Google Scholar
  15. 15.
    Vardi, M.Y., Wolper, P.: An automata-theoretic approach to automatic program verification. In: LICS, pp. 332–344. IEEE Computer Society, Los Alamitos (1986)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Jochen Hoenicke
    • 2
  • Ernst-Rüdiger Olderog
    • 1
  • Andreas Podelski
    • 2
  1. 1.Department für InformatikUniversität OldenburgOldenburgGermany
  2. 2.Institut für InformatikUniversität FreiburgFreiburgGermany

Personalised recommendations