Copyright © by SIAM. Unauthorized reproduction of this article is prohibited. SIAM J. COMPUT. c 2011 Society for Industrial and Applied Mathematics Vol. 40, No. 1, pp. 63–78 THE COMPLEXITY OF EARLY DECIDING SET AGREEMENT ELI GAFNI , RACHID GUERRAOUI , AND BASTIAN POCHON Abstract. In the k-set agreement problem, each processor starts with a private input value and eventually decides on an output value. At most k distinct output values may be chosen, and every processor’s output value must be one of the proposed values. We consider a synchronous message passing system, and we prove a tight bound of f/k+ 2 rounds of communication for all processors to decide in every run in which at most f processors fail. The lower bound proof proceeds through a simulation of a synchronous solution to k-set agreement in message passing, in an asynchronous shared memory system in which k 1 processors may fail, and which was proven to be impossible using topological approaches. In contrast to past complexity results on set agreement, our lower bound proof is purely algorithmic. It does not use any direct topological argument but uses instead the impossibility of asynchronous set agreement to encapsulate the needed topology. We thus derive an adaptive complexity lower bound for a message passing system from a static impossibility in a shared memory system. Key words. distributed algorithm, set agreement, lower bound, message passing system, shared memory system, simulation AMS subject classification. 68 DOI. 10.1137/050640746 1. Introduction. Results about the complexity of set agreement are intriguing, as they present an intrinsic trade-off between the degree of coordination that these processors can reach and the number of failures that are tolerated [7]. The complexity of early deciding [9] set agreement is even more intriguing as it brings to the picture the number of failures that actually occur in a given computation. 1.1. Set agreement. Set agreement is a natural generalization of the widely studied consensus problem [11]. In set agreement, just like in consensus, each pro- cessor is supposed to propose a value and eventually decide on some output that was initially proposed, such that every correct processor eventually decides. Processors are restricted not to decide on more than k distinct outputs. We talk about k-set agreement, and consensus is the special case where k = 1. Set agreement was introduced in [6], where it was conjectured that, in an asyn- chronous system, the problem has a solution if and only if strictly less than k proces- sors may crash. (An asynchronous model of distributed computation is characterized by the following two properties: (1) processors execute the algorithm assigned to them unless they crash, in which case they stop all their activities and they are said to be faulty (not correct); (2) processors make no assumption on their relative speed and message communication delay.) This conjecture has sparked a fruitful line of research [3, 14, 17]. Received by the editors September 20, 2005; accepted for publication (in revised form) October 18, 2010; published electronically January 11, 2011. This paper is a revised version of a paper by the same authors entitled “From a static impossibility to an adaptive lower bound: The complexity of early deciding set agreement,” which appeared in the Proceedings of the 37th Annual ACM Sym- posium on Theory of Computing (STOC’05). http://www.siam.org/journals/sicomp/40-1/64074.html Department of Computer Science, UCLA, Los Angeles, CA 90024 (eli@cs.ucla.edu). School of Computer and Communication Sciences, EPFL, 1015 Lausanne, Switzerland (rachid. guerraoui@epfl.ch, bastian.pochon@gmail.com). 63 Downloaded 06/01/15 to 128.178.154.12. Redistribution subject to SIAM license or copyright; see http://www.siam.org/journals/ojsa.php