Skip to main content
SpringerLink
Log in
Menu
Find a journal Publish with us
Search
Go to cart
  1. Home
  2. Formal Aspects of Computing
  3. Article
Tournaments for mutual exclusion: verification and concurrent complexity
Download PDF
Your article has downloaded

Similar articles being viewed by others

Slider with three articles shown per slide. Use the Previous and Next buttons to navigate the slides or the slide controller buttons at the end to navigate through each slide.

Cut-off theorems for the PV-model

01 December 2021

Lisbeth Fajstrup

Fine-Grained Complexity of Safety Verification

14 July 2020

Peter Chini, Roland Meyer & Prakash Saivasan

Recoverable mutual exclusion with abortability

18 August 2022

Prasad Jayanti & Anup Joshi

An algorithmic approach to the asynchronous computability theorem

29 May 2018

Vikram Saraph, Maurice Herlihy & Eli Gafni

Anomalies and similarities among consensus numbers of variously-relaxed queues

22 September 2018

Edward Talmage & Jennifer L. Welch

Rely-guarantee bound analysis of parameterized concurrent shared-memory programs

06 April 2021

Thomas Pani, Georg Weissenbacher & Florian Zuleger

Concurrency groups: a new way to look at real-time multiprocessor lock nesting

05 February 2021

Catherine E. Nemitz, Tanya Amert, … James H. Anderson

Relaxing the Irrevocability Requirement for Online Graph Algorithms

25 February 2022

Joan Boyar, Lene M. Favrholdt, … Kim S. Larsen

Bounds on maximum concurrent flow in random bipartite graphs

10 February 2020

Fernando E. Vilas, Eli V. Olinick & David W. Matula

Download PDF
  • Original Article
  • Open Access
  • Published: 27 January 2017

Tournaments for mutual exclusion: verification and concurrent complexity

  • Wim H. Hesselink  ORCID: orcid.org/0000-0002-1413-43201 

Formal Aspects of Computing volume 29, pages 833–852 (2017)Cite this article

  • 727 Accesses

  • 1 Citations

  • Metrics details

Abstract

Given a mutual exclusion algorithm MXd for \({d \geq 2}\) threads, a mutual exclusion algorithm for \({N > d}\) threads can be built in a tree of degree d with N leaves, with the critical section at the root of the tree. This tournament solution seems obviously correct and efficient. The present note proves the correctness, and formalizes the efficiency in terms of concurrent complexity by means of Bounded Unity. If the tree is balanced, the throughput is logarithmic in N. If moreover MXd satisfies FCFS (first-come first-served), the worst case individual delay of the tournament algorithm is of order N. This is optimal.

Download to read the full article text

Working on a manuscript?

Avoid the common mistakes

References

  1. Apt KR, de Boer FS, Olderog E-R (2009) Verification of sequential and concurrent programs. Springer, New York

  2. Buhr PA, Dice D, Hesselink WH (2015) High-performance N-thread software solutions for mutual exclusion. Concurr Comput Pract Exper. 27:651–701. doi:10.1002/cpe.3263

  3. Buhr PA, Dice D, Hesselink WH (2016) Dekker’s mutual exclusion algorithm made RW-safe. Concurr Comput Pract Exp 28:144–165. doi:10.1002/cpe.3659

  4. Burns JE (1981) Complexity of communication among asynchronous parallel processes, Ph.D. thesis, School of Information and Computer Science, Georgia Institute of Technology

  5. Chandy KM, Misra J (1988) Parallel program design, a foundation. Addison-Wesley, USA

    MATH  Google Scholar 

  6. de Bruijn NG (1967) Additional comments on a problem in concurrent programming control. Commun ACM 10:137–138 (Letter to the Editor)

  7. Dijkstra EW (1965) Solution of a problem in concurrent programming control. Commun ACM 8: 569

    Article  Google Scholar 

  8. Hesselink WH (1999) Progress under bounded fairness. Distrib Comput 12: 197–207

    Article  Google Scholar 

  9. Hesselink WH (2015) Mutual exclusion by four shared bits with not more than quadratic complexity. Sci Comput Program 102:57–75. doi:10.1016/j.scico.2015.01.001

  10. Hesselink WH (2016) Correctness and concurrent complexity of the Black-White Bakery algorithm. Formal Aspects Comput 28:325–341. doi:10.1007/s00165-016-0364-4

  11. Hesselink WH (2016) PVS proof script for: tournaments for mutual exclusion. http://wimhesselink.nl/mechver/tournaments (Accessed 8 Aug 2016)

  12. Kessels DE (1982) Arbitration without common modifiable variables. Acta Inf 17:135–141

  13. Knuth DE (1966) Additional comments on a problem in concurrent programming control. Commun ACM 9:321–322 (Letter to the Editor)

  14. Lamport L (1974) A new solution of Dijkstra’s concurrent programming problem. Commun ACM 17: 453–455

    Article  MathSciNet  MATH  Google Scholar 

  15. Lamport L (1986) The mutual exclusion problem—part I: a theory of interprocess communication, part II: statement and solutions. J ACM 33: 313–348

    Article  MATH  Google Scholar 

  16. Lycklama EA, Hadzilacos V (1991) A first-come-first-served mutual-exclusion algorithm with small communication variables. ACM Trans Program Lang Syst 13: 558–576

    Article  Google Scholar 

  17. Mellor-Crummey JM, Scott ML (1991) Algorithm for scalable synchronization on shared-memory multiprocessors. ACM Trans Comput Syst 9: 21–65

    Article  Google Scholar 

  18. Misra J (2001) A discipline of multiprogramming: programming theory for distributed applications. Springer, New York

    Book  MATH  Google Scholar 

  19. Owicki S, Gries D (1976) An axiomatic proof technique for parallel programs. Acta Inf 6: 319–340

    Article  MathSciNet  MATH  Google Scholar 

  20. Owre S, Shankar N, Rushby JM, Stringer-Calvert DWJ (2001) PVS Version 2.4, System Guide, Prover Guide, PVS Language Reference. http://pvs.csl.sri.com

  21. Peterson GL (1981) Myths about the mutual exclusion problem. Inf Process Lett 12: 115–116

    Article  MATH  Google Scholar 

  22. Peterson GL, Fischer MJ (1977) Economical solutions for the critical section problem in a distributed system (extended abstract). In: STOC ’77: Proceedings of the 9th annual ACM symposium on theory of computing, New York. ACM, pp 91–97

  23. Taubenfeld G (2004) The Black-White Bakery Algorithm and related bounded-space, adaptive, local-spinning and FIFO algorithms. In: Proceedings of the DISC, LNCS, vol 3274, pp 56–70

  24. Xu Q, de Roever W-P, He J (1997) The rely-guarantee method for verifying shared variable concurrent programs. Formal Aspects Comput 9:149–174

  25. Zhang X, Yan Y, Castenada R (1996) Evaluating and designing software mutual exclusion algorithms on shared memory multiprocessors. IEEE Parallel Distrib Technol Syst Appl 4:25–42

Download references

Author information

Authors and Affiliations

  1. Johann Bernoulli Institute for Mathematics and Computer Science University of Groningen, P.O.Box 407, 9700 AK, Groningen, The Netherlands

    Wim H. Hesselink

Authors
  1. Wim H. Hesselink
    View author publications

    You can also search for this author in PubMed Google Scholar

Corresponding author

Correspondence to Wim H. Hesselink.

Additional information

Xinyu Feng

Rights and permissions

Open Access This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.

Reprints and Permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Hesselink, W.H. Tournaments for mutual exclusion: verification and concurrent complexity. Form Asp Comp 29, 833–852 (2017). https://doi.org/10.1007/s00165-016-0407-x

Download citation

  • Received: 18 May 2016

  • Accepted: 23 November 2016

  • Published: 27 January 2017

  • Issue Date: September 2017

  • DOI: https://doi.org/10.1007/s00165-016-0407-x

Share this article

Anyone you share the following link with will be able to read this content:

Sorry, a shareable link is not currently available for this article.

Provided by the Springer Nature SharedIt content-sharing initiative

Keywords

  • Mutual exclusion
  • unity
  • Concurrency
  • Shared variables
  • Concurrent complexity
Download PDF

Working on a manuscript?

Avoid the common mistakes

Advertisement

Search

Navigation

  • Find a journal
  • Publish with us

Discover content

  • Journals A-Z
  • Books A-Z

Publish with us

  • Publish your research
  • Open access publishing

Products and services

  • Our products
  • Librarians
  • Societies
  • Partners and advertisers

Our imprints

  • Springer
  • Nature Portfolio
  • BMC
  • Palgrave Macmillan
  • Apress
  • Your US state privacy rights
  • Accessibility statement
  • Terms and conditions
  • Privacy policy
  • Help and support

Not affiliated

Springer Nature

© 2023 Springer Nature