Set-Consensus Collections are Decidable

A natural way to measure the power of a distributed-computing model is to characterize the set of tasks that can be solved in it. %the model. In general, however, the question of whether a given task can be solved in a given model is undecidable, even if we only consider the wait-free shared-memory model. In this paper, we address this question for restricted classes of models and tasks. We show that the question of whether a collection $C$ of \emph{$(\ell,j)$-set consensus} objects, for various $\ell$ (the number of processes that can invoke the object) and $j$ (the number of distinct outputs the object returns), can be used by $n$ processes to solve wait-free $k$-set consensus is decidable. Moreover, we provide a simple $O(n^2)$ decision algorithm, based on a dynamic programming solution to the Knapsack optimization problem. We then present an \emph{adaptive} wait-free set-consensus algorithm that, for each set of participating processes, achieves the best level of agreement that is possible to achieve using $C$. Overall, this gives us a complete characterization of a read-write model defined by a collection of set-consensus objects through its \emph{set-consensus power}.

[1]  Maurice Herlihy,et al.  On the decidability of distributed decision tasks , 1996, PODC '96.

[2]  Eli Gafni,et al.  Generalized FLP impossibility result for t-resilient asynchronous computations , 1993, STOC.

[3]  Maurice Herlihy,et al.  Subconsensus Tasks: Renaming Is Weaker Than Set Agreement , 2006, DISC.

[4]  Maurice Herlihy,et al.  Wait-free synchronization , 1991, TOPL.

[5]  Rachid Guerraoui,et al.  The disagreement power of an adversary , 2011, Distributed Computing.

[6]  Petr Kuznetsov,et al.  Wait-freedom with advice , 2014, Distributed Computing.

[7]  Soma Chaudhuri,et al.  Understanding the Set Consensus Partial Order Using the Borowsky-Gafni Simulation (Extended Abstract) , 1996, WDAG.

[8]  Maurice Herlihy,et al.  Simulations and reductions for colorless tasks , 2012, PODC '12.

[9]  Nancy A. Lynch,et al.  The BG distributed simulation algorithm , 2001, Distributed Computing.

[10]  Eli Gafni,et al.  Three-Processor Tasks Are Undecidable , 1999, SIAM J. Comput..

[11]  Sam Toueg,et al.  The weakest failure detector for solving consensus , 1992, PODC '92.

[12]  Sanjay V. Rajopadhye,et al.  Unbounded knapsack problem: Dynamic programming revisited , 2000, Eur. J. Oper. Res..

[13]  Vassos Hadzilacos,et al.  All of Us Are Smarter than Any of Us: Nondeterministic Wait-Free Hierarchies Are Not Robust , 2000, SIAM J. Comput..

[14]  Eli Gafni,et al.  Immediate atomic snapshots and fast renaming , 1993, PODC '93.

[15]  Eli Gafni,et al.  The concurrency hierarchy, and algorithms for unbounded concurrency , 2001, PODC '01.

[16]  Maurice Herlihy,et al.  The topological structure of asynchronous computability , 1999, JACM.

[17]  Nir Shavit,et al.  Atomic snapshots of shared memory , 1990, JACM.

[18]  Nancy A. Lynch,et al.  Impossibility of distributed consensus with one faulty process , 1985, JACM.

[19]  Sam Toueg,et al.  Unreliable failure detectors for reliable distributed systems , 1996, JACM.

[20]  Petr Kuznetsov,et al.  Turning Adversaries into Friends: Simplified, Made Constructive, and Extended , 2010, OPODIS.

[21]  Rachid Guerraoui,et al.  Generalized Universality , 2011, CONCUR.

[22]  Michael E. Saks,et al.  Wait-free k-set agreement is impossible: the topology of public knowledge , 1993, STOC.

[23]  Deeparnab Chakrabarty,et al.  Knapsack Problems , 2008 .

[24]  Faith Ellen,et al.  Deterministic Objects: Life Beyond Consensus , 2016, PODC.

[25]  Maurice Herlihy,et al.  The decidability of distributed decision tasks (extended abstract) , 1997, STOC '97.

[26]  Nancy A. Lynch,et al.  Impossibility of distributed consensus with one faulty process , 1983, PODS '83.

[27]  Petr Kuznetsov,et al.  Relating L-resilience and wait-freedom via hitting sets , 2011, ICDCN 2011.