Correctness and concurrent complexity of the Black-White Bakery Algorithm

Research output: Contribution to journalArticleAcademicpeer-review

5 Citations (Scopus)
216 Downloads (Pure)

Abstract

Lamport’s Bakery Algorithm (Commun ACM 17:453–455, 1974) implements mutual exclusion for a fixed number of threads with the first-come first-served property. It has the disadvantage, however, that it uses integer communication variables that can become arbitrarily large. Taubenfeld’s Black-White Bakery Algorithm (Proceedings of the DISC. LNCS, vol 3274, pp 56–70, 2004) keeps the integers bounded, and is adaptive in the sense that the time complexity only depends on the number of competing threads, say N. The present paper offers an assertional proof of correctness and shows that the concurrent complexity for throughput is linear in N, and for individual progress is quadratic in N. This is proved with a bounded version of UNITY, i.e., by assertional means.
Original languageEnglish
Pages (from-to)325-341
Number of pages17
JournalFormal Aspects of Computing
Volume28
Issue number2
DOIs
Publication statusPublished - Apr-2016

Keywords

  • INTERPROCESS COMMUNICATION
  • SPACE
  • MUTUAL-EXCLUSION
  • Concurrent complexity
  • UNITY
  • Mutual exclusion
  • FCFS

Cite this