  In agreement problems, each process has an input value and must choose a
decision (output) value. Given $n\geq 2$ processes and $m \geq 2$ possible
different input values, we want to design an agreement algorithm that enables
as many processes as possible to decide on the (same) input value of one of the
processes, in the presence of $t$ crash failures. Without communication, when
each process simply decides on its input value, at least $\lceil (n-t)/m
\rceil$ of the processes are guaranteed to always decide on the same value. Can
we do better with communication? For some cases, for example when $m=2$, even
in the presence of a single crash failure, the answer is negative in a
deterministic asynchronous system where communication is either by using atomic
read/write registers or by sending and receiving messages. The answer is
positive in other cases.
