Weak Failures: Definitions, Algorithms and Impossibility Results

  • Gadi TaubenfeldEmail author
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11028)


The notion of weak failures, which should be viewed as fractions of traditional failures, is introduced and studied. It is known that there is no consensus algorithm using registers that can tolerate even a single crash failure. Is there a consensus algorithm using registers that can tolerate a “fraction” of a crash failure, i.e., a weak failure? It is known that there is no k-set consensus algorithm for \(n>k\) processes using registers that can tolerate k crash failures. How many weak failures can a k-set consensus algorithm which uses registers tolerate? Answers to these questions follow from our general possibility and impossibility results regarding the ability to tolerate weak failures.


Weak failures Shared memory Consensus k-set consensus Contention 


  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)CrossRefGoogle Scholar
  2. 2.
    Afek, Y., Dolev, D., Gafni, E., Merritt, M., Shavit, N.: A bounded first-in, first-enabled solution to the \(\ell \)-exclusion problem. ACM Trans. Program. Lang. Syst. 16(3), 939–953 (1994)Google Scholar
  3. 3.
    Anderson, J.H.: Composite registers. Distrib. Comput. 6(3), 141–154 (1993)CrossRefGoogle Scholar
  4. 4.
    Borowsky, E., Gafni, E.: Generalizecl FLP impossibility result for \(t\)-resilient asynchronous computations. In: Proceedings of 25th ACM Symposium on Theory of Computing, pp. 91–100 (1993)Google Scholar
  5. 5.
    Delporte-Gallet, C., Fauconnier, H., Guerraoui, R., Tielmanns, A.: The disagreement power of an adversary. Distrib. Comput. 24(3), 137–147 (2011)CrossRefGoogle Scholar
  6. 6.
    Dijkstra, E.W.: Solution of a problem in concurrent programming control. Commun. ACM 8(9), 569 (1965)CrossRefGoogle Scholar
  7. 7.
    Fischer, M.J., Lynch, N.A., Burns, J.E., Borodin, A.: Distributed FIFO allocation of identical resources using small shared space. ACM Trans. Program. Lang. Syst. 11(1), 90–114 (1989)CrossRefGoogle Scholar
  8. 8.
    Fischer, M.J., Lynch, N.A., Burns, J.E., Borodin, A.: Resource allocation with immunity to limited process failure. In: Proceedings of 20th IEEE Symposium on Foundations of Computer Science, pp. 234–254, October 1979Google Scholar
  9. 9.
    Fischer, M.J., Lynch, N.A., Paterson, M.S.: Impossibility of distributed consensus with one faulty process. J. ACM 32(2), 374–382 (1985)MathSciNetCrossRefGoogle Scholar
  10. 10.
    Guerraoui, R.: Indulgent algorithms. In: Proceedings of 19th ACM Symposium on Principles of Distributed Computing, pp. 289–298 (2000)Google Scholar
  11. 11.
    Guerraoui, R., Raynal, M.: The information structure of indulgent consensus. IEEE Trans. Comput. 53(4), 453–466 (2004)CrossRefGoogle Scholar
  12. 12.
    Herlihy, M.P., Shavit, N.: The topological structure of asynchronous computability. J. ACM 46(6), 858–923 (1999)MathSciNetCrossRefGoogle Scholar
  13. 13.
    Lamport, L.: The part-time parliament. ACM Trans. Comput. Syst. 16(2), 133–169 (1998)CrossRefGoogle Scholar
  14. 14.
    Loui, M.C., Abu-Amara, H.: Memory requirements for agreement among unreliable asynchronous processes. Adv. Comput. Res. 4, 163–183 (1987)MathSciNetGoogle Scholar
  15. 15.
    Pease, M., Shostak, R., Lamport, L.: Reaching agreement in the presence of faults. J. ACM 27(2), 228–234 (1980)MathSciNetCrossRefGoogle Scholar
  16. 16.
    Peterson, G.L.: Observations on \(\ell \)-exclusion. In: 28th Annual Allerton Conference on Communication, Control and Computing, pp. 568–577, October 1990Google Scholar
  17. 17.
    Raynal, M.: Algorithms for Mutual Exclusion. The MIT Press, Cambridge (1986). Translation of: Algorithmique du parallélisme (1984)zbMATHGoogle Scholar
  18. 18.
    Saks, M., Zaharoglou, F.: Wait-free \(k\)-set agreement is impossible: the topology of public knowledge. SIAM J. Comput. 29, 1449–1483 (2000)Google Scholar
  19. 19.
    Taubenfeld, G.: Synchronization Algorithms and Concurrent Programming, p. 423. Pearson/Prentice-Hall, London/Upper Saddle River (2006). ISBN 0-131-97259-6Google Scholar
  20. 20.
    Taubenfeld, G.: A closer look at fault tolerance. In: Proceedings of 31st ACM Symposium on Principles of Distributed Computing, pp. 261–270 (2012)Google Scholar
  21. 21.
    Taubenfeld, G., Katz, S., Moran, S.: Initial failures in distributed computations. Int. J. Parallel Program. 18(4), 255–276 (1989)MathSciNetCrossRefGoogle Scholar

Copyright information

© Springer Nature Switzerland AG 2019

Authors and Affiliations

  1. 1.The Interdisciplinary CenterHerzliyaIsrael

Personalised recommendations