, Volume 62, Issue 1–2, pp 595–629 | Cite as

Of Choices, Failures and Asynchrony: The Many Faces of Set Agreement

  • Dan Alistarh
  • Seth Gilbert
  • Rachid Guerraoui
  • Corentin Travers


Set agreement is a fundamental problem in distributed computing in which processes collectively choose a small subset of values from a larger set of proposals. The impossibility of fault-tolerant set agreement in asynchronous networks is one of the seminal results in distributed computing. In synchronous networks, too, the complexity of set agreement has been a significant research challenge that has now been resolved. Real systems, however, are neither purely synchronous nor purely asynchronous. Rather, they tend to alternate between periods of synchrony and periods of asynchrony. Nothing specific is known about the complexity of set agreement in such a “partially synchronous” setting.

In this paper, we address this challenge, presenting the first (asymptotically) tight bound on the complexity of set agreement in such systems. We introduce a novel technique for simulating, in a fault-prone asynchronous shared memory, executions of an asynchronous and failure-prone message-passing system in which some fragments appear synchronous to some processes.

We use this simulation technique to derive a lower bound on the round complexity of set agreement in a partially synchronous system by a reduction from asynchronous wait-free set agreement. Specifically, we show that every set agreement protocol requires at least \(\lfloor\frac{t}{k}\rfloor + 2\) synchronous rounds to decide. We present an (asymptotically) matching algorithm that relies on a distributed asynchrony detection mechanism to decide as soon as possible during periods of synchrony. From these two results, we derive the size of the minimal window of synchrony needed to solve set agreement.

By relating synchronous, asynchronous and partially synchronous environments, our simulation technique is of independent interest. In particular, it allows us to obtain a new lower bound on the complexity of early deciding k-set agreement complementary to that of Gafni et al. (in SIAM J. Comput. 40(1):63–78, 2011), and to re-derive the combinatorial topology lower bound of Guerraoui et al. (in Theor. Comput. Sci. 410(6–7):570–580, 2009) in an algorithmic way.


Distributed computing Message passing Set agreement Eventual synchrony Time complexity Lower bounds 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Afek, Y., Attiya, H., Dolev, D., Gafni, E., Merritt, M., Shavit, N.: Atomic snapshots of shared memory. J. ACM 40(4), 873–890 (1993) CrossRefzbMATHGoogle Scholar
  2. 2.
    Alistarh, D., Gilbert, S., Guerraoui, R., Travers, C.: How to solve consensus in the smallest window of synchrony. In: Proceedings of the 22nd International Symposium on Distributed Computing (DISC), pp. 32–46 (2008) Google Scholar
  3. 3.
    Attiya, H., Rachman, O.: Atomic snapshots in O(nlogn) operations. SIAM J. Comput. 27(2), 319–340 (1998) CrossRefzbMATHMathSciNetGoogle Scholar
  4. 4.
    Biely, M., Schmid, U., Weiss, B.: Synchronous consensus under hybrid process and link failures. Theor. Comput. Sci. 412(40), 5602–5630 (2011) CrossRefzbMATHGoogle Scholar
  5. 5.
    Borowsky, E., Gafni, E.: Generalized FLP impossibility result for t-resilient asynchronous computations. In: Proceedings of the 25th Annual ACM Symposium on Theory of Computing (STOC), pp. 91–100 (1993) Google Scholar
  6. 6.
    Cerf, V., Icahn, R.: A protocol for packet network intercommunication. Comput. Commun. Rev. 35(2), 71–82 (2005) CrossRefGoogle Scholar
  7. 7.
    Charron-Bost, B., Schiper, A.: The heard-of model: computing in distributed systems with benign faults. Distrib. Comput. 22(1), 49–71 (2009) CrossRefGoogle Scholar
  8. 8.
    Chaudhuri, S.: More choices allow more faults: set consensus problems in totally asynchronous systems. Inf. Comput. 105(1), 132–158 (1993) CrossRefzbMATHGoogle Scholar
  9. 9.
    Chaudhuri, S., Herlihy, M., Lynch, N.A., Tuttle, M.R.: A tight lower bound for k-set agreement. J. ACM 47(5), 912–943 (2000) MathSciNetGoogle Scholar
  10. 10.
    Dutta, P., Guerraoui, R.: The inherent price of indulgence. Distrib. Comput. 18(1), 85–98 (2005) CrossRefGoogle Scholar
  11. 11.
    Dwork, C., Lynch, N., Stockmeyer, L.: Consensus in the presence of partial synchrony. J. ACM 35(2), 288–323 (1988) CrossRefMathSciNetGoogle Scholar
  12. 12.
    Gafni, E.: Round-by-round fault detectors: Unifying synchrony and asynchrony (extended abstract). In: Proceedings of the 17th Annual ACM Symposium on Principles of Distributed Computing (PODC), pp. 143–152 (1998) Google Scholar
  13. 13.
    Gafni, E.: The Extended BG simulation and the characterization of t-resiliency. In: Proceedings of the 41st Annual ACM Symposium on Theory of Computing (STOC) (2009) Google Scholar
  14. 14.
    Gafni, E., Guerraoui, R., Pochon, B.: The complexity of early deciding set agreement. From a static impossibility to an adaptive lower bound: the complexity of early deciding set agreement. SIAM J. Comput. 40(1), 63–78 (2011) CrossRefzbMATHMathSciNetGoogle Scholar
  15. 15.
    Guerraoui, R., Herlihy, M., Pochon, B.: A topological treatment of early-deciding set-agreement. Theor. Comput. Sci. 410(6–7), 570–580 (2009) CrossRefzbMATHMathSciNetGoogle Scholar
  16. 16.
    Herlihy, M., Shavit, N.: The topological structure of asynchronous computability. J. ACM 46(6), 858–923 (1999) CrossRefzbMATHMathSciNetGoogle Scholar
  17. 17.
    Keidar, I., Shraer, A.: Timeliness, failure-detectors, and consensus performance. In: Proceedings of the 25th Annual ACM Symposium on Principles of Distributed Computing (PODC), pp. 169–178 (2006) Google Scholar
  18. 18.
    Lamport, L., Shostak, R., Pease, M.: The byzantine generals problem. ACM Trans. Program. Lang. Syst. 4(3), 382–401 (1982) CrossRefzbMATHGoogle Scholar
  19. 19.
    Raipin Parvédy, P., Raynal, M., Travers, C.: Strongly terminating early-stopping set agreement in synchronous systems with general omission failures. Theory Comput. Syst. 47(1), 259–287 (2010) CrossRefzbMATHMathSciNetGoogle Scholar
  20. 20.
    Saks, M.E., Zaharoglou, F.: Wait-free k-set agreement is impossible: the topology of public knowledge. SIAM J. Comput. 29(5), 1449–1483 (2000) CrossRefzbMATHMathSciNetGoogle Scholar
  21. 21.
    Widder, J., Schmid, U.: Booting clock synchronization in partially synchronous systems with hybrid process and link failures. Distrib. Comput. 20(2), 115–140 (2007) CrossRefGoogle Scholar
  22. 22.
    Yang, J., Neiger, G., Gafni, E.: Structured derivations of consensus algorithms for failure detectors. In: Proceedings of the 17th Annual ACM Symposium on Principles of Distributed Computing (PODC), pp. 297–308 (1998) Google Scholar

Copyright information

© Springer Science+Business Media, LLC 2011

Authors and Affiliations

  • Dan Alistarh
    • 1
  • Seth Gilbert
    • 2
  • Rachid Guerraoui
    • 1
  • Corentin Travers
    • 3
  1. 1.Swiss Federal Institute of TechnologyLausanneSwitzerland
  2. 2.Department of Computer ScienceNational University of SingaporeSingaporeSingapore
  3. 3.LaBRIUniversity of Bordeaux 1TalenceFrance

Personalised recommendations