At the heart of distributed computing lies the fundamental result that the level of agreement that can be obtained in an asynchronous shared memory model where t processes can crash is exactly t + 1. In other words, an adversary that can crash any subset of size at most t can prevent the processes from agreeing on t values. But what about the rest (2 2 n − n) adversaries that might crash certain combination of processes and not others? Given any adversary, what is its disagreement power? i.e., the biggest k for which it can prevent processes from agreeing on k values. This paper answers this question. We present a general characterization of adversaries that enables to directly derive their disagreement power. We use our characterization to also close the question of the weakest failure detector for k-set agreement. So far, the result has been obtained for two extreme cases: consensus and n − 1-set agreement. We answer this question for any k and any adversary.
In REF , a precise way is presented to characterize adversaries by introducing the notion of disagreement power: the biggest integer k for which the adversary can prevent processes from agreeing on k values when using registers only; and it is shown how to compute the disagreement power of an adversary.
The Disagreement Power of an Adversary
DISC
Computer Science