Fault-Tolerant Consensus in Quantum Networks
Abstract
Fault-tolerant consensus is about reaching agreement on some of the input values in a limited time by non-faulty autonomous processes, despite of failures of processes or communication medium. This problem is particularly challenging and costly against an adaptive adversary with full information. Bar-Joseph and Ben-Or [8] (PODC’98) were the first who proved an absolute lower bound on expected time complexity of consensus in any classic (i.e., randomized or deterministic) message-passing network with processes succeeding with probability against such a strong adaptive adversary crashing processes.
Seminal work of Ben-Or and Hassidim [10] (STOC’05) broke the barrier for consensus in classic (deterministic and randomized) networks by employing quantum computing. They showed an (expected) constant-time quantum algorithm for a linear number of crashes .
In this paper, we improve upon that seminal work by reducing the number of quantum and communication bits to an arbitrarily small polynomial, and even more, to a polylogarithmic number – though, the latter in the cost of a slightly larger polylogarithmic time (still exponentially smaller than the time lower bound for classic computation).
Keywords: distributed algorithms, quantum algorithms, adaptive adversary, crash failures, Consensus, quantum common coin, approximate counting
1 Introduction
Consensus is about making a common decision among the processes’ initial input values in a limited time by every non-faulty process, despite the faulty behaviour of some of the players. Since its introduction by Pease, Shostak and Lamport [31] (JACM’80), who ruled out trivial solutions (such as always deciding on the same bit), fault-tolerant consensus has constantly been among foundation problems in distributed computing. This problem has been studied in synchronous/asynchronous and deterministic/randomized computation models and under various fault-tolerant or adversarial models: Fail-Stop (crashes) and Byzantine, Static and Adaptive, Computationally Bounded and Unbounded Adversaries - just to name a few (see Section 2.1 for related work).
While the landscape of Consensus problem under the classic model of computation is well-developed, much less is known if we allow for quantum computation. The seminal work of Ben-Or and Hassidim [10] (albeit a short 5-pager in STOC’05) broke the rounds time barrier for classic computing by employing quantum computing to further use the power of randomization in distributed computing. They showed an (expected) constant-time quantum algorithm for a linear number of crashes , however, the algorithm is inefficient in terms of communication bits and, even more importantly, in terms of the number of quantum bits (qubits), as it uses of them per process. Since then no algorithm has managed to reduce the quantum resources needed to solve Consensus. Because generating, maintaining and sending quantum bits is extremely costly (today’s quantum devices use less than 500 qubits), thus the main question of our paper emerges naturally:
Could the number of qubits be substantially reduced without harming the time complexity?
Distributed setting.
We consider a quantum synchronous message-passing model (c.f., [7]), consisting of synchronous processes (also called players), each with common clock (a clock tick is called a round or a step) and unique id from the known set .
Between any pair of processes we assume the existence of a quantum channel being able to transmit reliable***Messages are not lost nor corrupted while in transit. messages caring quantum bits, qubits. For the sake of completeness, we also augment the model by classic point-to-point channels between any pair of processes. In each round, a process can send (personalized) quantum and classic messages to any selected subset of other processes. After multicasting messages, in the same round a process receives messages that were just sent to it by other processes, and performs local computation, which involves both quantum and classic bits.†††Local computation also decides what messages to send in the next round and to whom.
Processes are prone to crash failures, also called fail-stops. A crashed process permanently stops any activity, including sending and receiving messages.
We model crashes as incurred by a full-information adversary (the same as in [8, 10]) that knows the algorithm, the exact pure quantum state (see Section 3) and the classic state of the system at any point of an execution, and has an unbounded computational power. The adversary decides which processes to fail and when. The adversary is also adaptive – it can make a decision on-line based on its current full-knowledge of the system. However, the adversary does not know the future computation, which means that it does not know future random bits drawn by processes.
As for the quantum part, the adversary can apply no quantum operation to the system, but it is aware of all quantum and classic changes of state that the network undergoes. If a process is crashed by the adversary, we assume that its quantum bits are not destroyed (in particular, entangled qubits in other processes do not collapse but maintain their entanglement), however they cannot be used in further computation.
Failures are not clean – when a process crashes when attempting to multicast a message, then some of the recipients may receive the message and some may not; this aspect is controlled by the adversary. A -adversary is additionally restricted by the the number of crashed processes being smaller than ; if then the -adversary is also called an unbounded adversary (note that even in such case, at least one process must survive for consensus to make sense). Throughout the paper, we will be calling the adversary described above “adaptive”, for short.
Consensus problem:
each process has its own initial value and has to output a (common) decision value, so that the following conditions hold: validity – decision must be on an input value of some process; agreement – no two processes decide on different values; and termination – each process eventually decides on some value, unless it is faulty. All those three requirements must hold with probability 1. We focus on binary consensus, in which initial values are in .
Correctness and complexity – in terms of time (the number of rounds needed for all processes to terminate) and the number of quantum bits (qubits) and communication bits – are analyzed and maximized (worst-case) against an adaptive adversary.
We say that a random event occurs with high probability (whp for short), if its probability could be made for any sufficiently large positive constant by linear scaling of parameters.
2 Our Results
In this work, we focus on improving quantum bits’ and communication complexities (without harming time complexity) of quantum algorithms solving Consensus problem with probability 1 against an adaptive full-information adversary capable of causing processes’ crashes. We observe that the maximum, per process, number of communication bits in Consensus problem is , therefore one can only hope to improve amortized communication complexity (per process), see Lemma 6 in Appendix D.
Our first main result is a quantum algorithm that solves Consensus (correctness with probability ) in expected constant number of rounds and amortized number of qubits and communication bits per process being an arbitrarily low polynomial. This directly improves, by a polynomial factor, the result of Ben-Or and Hassidim [10], which required a super-linear number of qubits and communication bits, amortized per process. More precisely, in Section 4 we give an algorithm and in Section A we prove the following result (see also its technical counterpart – Theorem 6):
Theorem 1.
For any , there is an algorithm solving consensus against an adaptive -adversary in expected rounds while using qubits and communication bits (amortized) per process, whp.
Although our algorithm, called CheapQuantumConsensus, uses an idea of so called weak global coin analogously to e.g., [19, 10], ours is based on two entirely different qubit-and-communication efficient algorithmic techniques. First technique is a new quantum implementation of a weak global coin, c.f., Definition 1, called CheapQuantumCoin. It works in constant, , time, uses an arbitrarily small polynomial number of bits , amortized per process (for any chosen constant ), and results in all non-faulty processes returning the same value with a non-zero constant probability, c.f., Theorem 3. Second is a deterministic algorithm for counting, which returns, in constant time, a count of the number of input 1 (or 0, resp.) among the processes. The output could be different at different processes, due to failures and a short time for counting, but each of them is a number not smaller than the number of processes with input 1 (0, resp.) at the end of the procedure and not larger than the number of processes with input 1 (0, resp.) in the beginning of the procedure. It uses only an arbitrary small polynomial number of communication bits, amortized per process. We give an overview of these two techniques in the next Sections 5 and 6, respectively, and their analysis in Sections B and C, respectively.
Although constant-time algorithms cannot achieve low communication, as we argue in Lemma 7 in Appendix D, interestingly, we show that our main algorithm could be re-instantiated in such a way that it uses only a polylogarithmic number of qubits and communication to solve consensus in a slightly (polylogarithmically) larger number of rounds (see Section 4 and Appendix A, and technical counterpart Theorem 7 for more details):
Theorem 2.
There is an algorithm solving consensus against an unbounded adaptive adversary in polylogarithmic number of rounds, in expectation, while using a polylogarithmic number of qubits and communication bits (amortized) per process, whp.
We believe that the newly developed techniques could be also applied to other types of failures, after failure-specific modifications. For example, although message omission failures require linear amortized communication per process (c.f., [24]), one could still use a small polynomial or even a polylogarithmic number of qubits (together with a linear number of classic communication bits) per process, if qubits are handled according to our techniques while some additional classic communication bits are introduced to handle message omissions. We leave details to follow-up work.
2.1 Previous and Related Work
Consensus in the classic (non-quantum) model.
Bar-Joseph and Ben-Or [8] (see also their extended version [9]) proved a lower bound on expected time complexity of consensus against an adaptive adversary. They also complemented it by time-optimal randomized algorithm. Their algorithm uses expected number of communications bits, amortized per process, which has been recently improved by Hajiaghay, Kowalski and Olkowski [25] to (while maintaining the almost-optimal round complexity ).
Fisher and Lynch [20] proved a lower bound on deterministic consensus with crashes (that actually occurred, i.e., ), thus separating deterministic solutions from randomized. Regarding communication complexity, Amdur, Weber and Hadzilacos [3] showed that the amortized number of messages per process is at least constant, even in some failure-free execution. Dwork, Halpern and Waarts [18] found a solution with messages per process, but requiring an exponential time, and later Galil, Mayer and Yung [22] developed a message-optimal algorithm working in over-linear time, for any . They also improved the communication further to a constant number of communication bits per process, but the resulting algorithm was exponential in the number of rounds. Chlebus and Kowalski [12] showed that consensus can be solved in time and with messages if only the number of non-faulty processors satisfies . It was later improved in [13] to time and number of communication bits. All the abovementioned communication complexities are amortized per process.
Quantum consensus.
To the best of our knowledge, almost all previous papers on quantum consensus concentrated on assuring feasibility of the problem against strong Byzantine adversaries, c.f., [15, 26, 28], or on optimizing time complexity, including the work of Ben-Or and Hassidim [10] achieving constant time against an adaptive adversary. Sparse quantum communication has been considered by Chlebus, Kowalski and Strojnowski in [14], but their protocols work correctly only with some probability smaller than and for a specific number of failures corresponding to the probability of success. Another difference is that they used quantum operations to encode the classical inputs in quantum registers and used it to directly solve consensus. In this paper, we show another, more-efficient approach, in which we first create a quantum, weak global coin and later employ this tool to the state-of-the-art framework of solving consensus based on the common coin. Other distributed computing problems, not necessarily fault-prone, were also analyzed in quantum models, c.f., [11, 32, 4, 33].
More efficient classic randomized solutions against weak adversaries.
Whenever weaker oblivious adversaries are considered, randomness itself occurred to be enough in reducing time complexity to a constant. Chor, Merritt and Shmoys [16] developed constant-time algorithms for consensus against an oblivious adversary – that is, the adversary who knows the algorithm but has to decide which process fails and when before the execution starts. Their solution, however, requires a linear number of communication bits per process. Gilbert and Kowalski [23] presented a randomized consensus algorithm that achieves optimal communication complexity of amortized communication bits per process while terminating in time with high probability (whp for short), as long as the number of crashes .
Classic consensus in more demanding models.
Dolev and Reischuk [17] and Hadzilacos and Halpern [24] proved the lower bound on the amortized message complexity per process of deterministic consensus for omission or (authenticated) Byzantine failures. However, under some limitation on the adversary and requiring termination only whp, the sublinear expected communication complexity per process can be achieved even in case of Byzantine failures, as proved by King and Saia [27]. Such limitations are apparently necessary to achieve subquadratic time complexity for Byzantine failures, c.f., Abraham et al. [1]. Asynchrony also implies large communication – Aspnes [5] proved a lower bound on communication complexity per process. The complexity bounds in this setting have been later improved, c.f., [6, 2].
3 Technical preliminaries
Quantum model of computation.
We focus on quantum properties relevant to our algorithms. A quantum system operates on qubits. Single qubit can be either in a pure or a mixed state. A pure state is a vector in a -dimensional Hilbert space , while a mixed state is modelled as a probabilistic distribution over pure states. Similarly, a register consisting of qubits can also be in a pure or a mixed state. A pure quantum state, denoted , is a vector of -dimensional Hilbert space . Again, a mixed state of larger dimension is viewed a probabilistic distribution over pure states. In our paper, we will operate only on pure states, and we will use only the standard computational basis of the Hilbert space, which consists of vectors , to describe the system. Therefore, any state can be expressed as , with the condition that , since quantum states can be only normalized vectors.
Transitions, or equivalently – changes of states of a quantum system, are given by unitary transformations on the Hilbert space of qubits. These unitary transformations are called quantum gates. These operations are exhaustive in the sense that any quantum computation can be expressed as a unitary operator on some Hilbert space. There are small-size sets of quantum gates working on two-dimensional space that are universal – any unitary transformation on a -dimensional quantum space can be approximated by a finite collection of these universal gates. In our applications, any quantum algorithm computation run by a process requires polynomial (in ) number of universal gates.
Finally, an important part of quantum computation is also a quantum measurement. Measurements are performed with respect to a basis of the Hilbert space – in our case this is always the computational basis. A complete measurement in the computational basis executed on a state leaves the state in one of the basis vectors, , for , with probability . The outcome of the measurement is a classic register of bits, informing to which vector the state has been transformed. It is also possible to measure only some qubits of the system, which is called a partial measurement. If describes the subset of qubits that we want to measure and is the remaining part of the system, then the partial measurement is defined by the set of projectors .‡‡‡Whenever it could be irrelevant, from the context, we may follow the standard notation in quantum computing and skip writing normalizing factors. In the former, a subscript refers to the part of the system on which the object exists, denotes the identity function, while is a functional of the dual space to the original Hilbert space (its matrix representation is the conjugate transpose of the matrix representation of ). If before the measurement the system was in a state then, after the measurement, it is in one of the states , where state is achieved with probability .§§§ and are simply linear operations on matrices and vectors. The reader can find a comprehensive introduction to quantum computing in [29].
Graph notations.
Let denote an undirected graph. Let be a set of nodes of . We say that an edge of is internal for if and are both in . We say that an edge of connects the sets and , or is between and , for any disjoint subsets and of , if one of its ends is in and the other in . The subgraph of induced by , denoted , is the subgraph of containing the nodes in and all the edges internal for in . A node adjacent to a node is a neighbor of and the set of all the neighbors of a node is the neighborhood of . denotes the set of all the nodes in that are of distance at most from some node in in graph . In particular, the (direct) neighborhood of is denoted .
The following combinatorial properties are of utter importance in the analysis of our algorithms. Graph is said to be -expanding, or to be an -expander, if any two subsets of nodes each are connected by an edge. Graph is said to be -edge-dense if, for any set of at least nodes, there are at least edges internal for , and for any set of at most nodes, there are at most edges internal for . Graph is said to be -compact if, for any set of at least nodes, there is a subset of at least nodes such that each node’s degree in is at least . We call any such set a survival set for .
4 Consensus Algorithm
On a very high level, our consensus algorithm CheapQuantumConsensus repeatedly uses the counting procedure FastCounting, specified in Section 6, to compute the number of 0’s and 1’s preferred by processes, see line 1. (Recall that the outcomes of FastCounting could be slightly different across processes, but by no more than the number of crashes.) Depending on the outcome, each process may change its preferred value to the dominating one (among the received preferred values), decide on it if the domination is substantial, or run the quantum common coin procedure in some almost-unbiased cases – see lines 1-1 in the pseudocode of CheapQuantumConsensus in Figure 1; all lines involving communication are underlined. The latter is a well-established general framework for solving consensus, proposed first by Bar-Joseph and Ben-Or [9] in the context of classic randomized computation against an adaptive adversary. Our novelty is in two new techniques, employed in lines 1 and 1 of the pseudocode in Figure 1: fast and quantum/communication-efficient counting and weak global coin, respectively. Both these techniques use parameters , which, roughly speaking, correspond to the density of random communication graphs used in these algorithms. The detailed performance formulas of these algorithms, with respect to those parameters, are stated in Theorems 3 and 5.
In the heart of these two techniques lies a crucial observation: consensus (as well as common coin and counting) could be achieved quickly even if many processes do not directly exchange messages, but use some carefully selected sparse set of communication links instead. This way, instead of creating qubits for each pair of processes, we could do it only per some pairs corresponding to some communication links to be used. Obviously, this set of links, modeled as an evolving communication graph, needs to be maintained adaptively and locally by processes throughout the execution – otherwise, an adaptive adversary would learn it and design crashes to separate processes and prevent consensus.
Algorithm’s description. Each process stores its current choice in (which is initialized to ’s input). The value in the end of the algorithm indicates ’s decision. Now, processes use (in expectation) phases to update their values such that eventually every process keeps the same decision. To do so, in a round every process calculates the number of processes whose current choice is and the number of processes whose current choice is , denoted and respectively. Based on these numbers, process : either sets to , if the number is large enough; or it sets to , if the number is large; or it replaces with a random bit, if the numbers of zeros and ones are close to each other. If for generating the random bit, in line 1, processes use a quantum implementation of a weak global coin (implemented with CheapQuantumCoin algorithm, specified in Section 5), they will all have the same value with constant probability unless more than third of alive processes crash. Assuming the presence of the adaptive adversary, this could not be achieved quickly if using classic communication only. Once it happens with the help of the quantum weak global coin, the conditional statements in lines 1-1, run in the next iteration of the “while” loop, guarantee that once the majority of processes have the same value , the system converges to this value in at most phases. Since the probability of this event is constant (guaranteed by the quantum weak global coin combined with the analysis of the first classic framework in [9]), the expected number of phases before the consensus algorithm terminates is constant. That reasoning holds, assuming that at most fraction of processes crashed (we will generalize it to any at the end of this section).
As mentioned earlier, the major improvement in the above protocol comes from using novel techniques for counting and weak global coin. For the former, we use the FastCounting algorithm, which, with the choice of parameters given in line 1, works in rounds and uses (classic) communication bits in total. Similarly, the CheapQuantumCoin algorithm, executed in line 1, terminates in rounds and uses both quantum and classic bits; we need to divide the communication formulas by to obtain the complexity amortized per process. By applying these two techniques in the fashion described above, we get Theorem 1; detail proof is deferred to Appendix A.
Handling arbitrary number of crashes.
Consider repetitions of the main loop (phases) of the CheapQuantumConsensus algorithm. If during these phases, the processes with value become a large majority (at least fraction of alive processes), then, as discussed before, every process will decide within the next two rounds. The same holds if processes with value start to overpopulate by a ratio of all non-faulty processes. On the other hand, if the cardinalities of the two groups with different values are close to each other, then the processes execute the CheapQuantumCoin algorithm. It outputs a random bit (the same in every participating process), under the assumption that at least a fraction of processes that started this phase as non-faulty have not crashed during this phase. However, in these phases there must be at least one phase in which the property of a fraction of processes survive holds. In what follows, we argue that if the adversary can crash arbitrarily many processes, but smaller than , then the expected number of phases should still be . Now, to obtain the algorithm stated in Theorem 2, we make two more adjustments of the original CheapQuantumConsensus algorithm. In lines 1 and 1, processes execute the algorithms FastCounting and CheapQuantumCoin, respectively, with parameters set as follows: . This corresponds to a use of sparse graph for communication (of degree roughly ). In consequence, the time complexity of the FastCounting algorithm increases to , but the communication complexity decreases to amortized per process. The details are presented in Section 6, and performance follows from putting the abovementioned parameters to the formulas in Theorem 5). Similarly, the time complexity of the CheapQuantumCoin algorithm increases to , but the communication complexity (both quantum and classical) decreases to amortized per process. The details are presented in Section 5, and performance follows from putting the abovementioned parameters to the formulas in Theorem 3).
5 Qubit-and-Communication Efficient Quantum Common Coin
In this section, we design a new -resilient weak global coin, for , with the help of quantum communication and computation. The coin must satisfy the following definition:
Definition 1 ([10]).
Let be a protocol for players (with no input), where each player outputs a (classical) bit . We say that the protocol is a -resilient weak global coin protocol (or computes a weak global coin, for short) with fairness , if for any adaptive -adversary and any value , with probability at least , for all good players .
On the high level, our protocol CheapQuantumCoin chooses a leader process uniformly at random and all other processes agree on the random bit proposed by the leader. Quantum phenomena is used to hide the random choices of the leader and its output from the adaptive adversary when processes communicate with each other. The idea was first proposed in [10], yet there are key differences between that work and our algorithm. Instead of all-to-all communication, which required large number of qubits, we use a sequence of random graphs of node degrees , respectively, where and are some integer parameters. The vertices of these graphs correspond to processes and edges correspond to communication link – each process communicates with neighbors in one of the graphs at a time. If the graph is chosen properly (i.e., so that there is no situation in which too many processes use denser graphs), it reduces the communication complexity, but simultaneously imposes a new challenge. Mainly, the communication procedure has to now assure delivery of quantum bits between every two non-faulty processes regardless of the pattern of crashes. For instance, if only one random graph of degree was used then the adversary could easily isolate any vertex using only crashes (i.e., by crashing all its neighbors). Hence, strictly speaking, assuring such delivery is not possible while using a sparse communication graph as relays, but we show that a certain majority could still come up with a common coin value based only on their exchanges with neighbors in the communication graphs; they could later propagate their common value to other processes by adaptively controlling their (increasing) set of neighbors, taken from subsequent communication graphs of increasing density. A thorough analysis shows that in this way it is possible to achieve the same quantum properties that are guaranteed by Ben-Or’s and Hassidim’s global coin [10], and at the same time reducing the quantum communication by a polynomial factor. Formally, we prove the following result.
Algorithm’s description.
We now describe the CheapQuantumCoin algorithm. Its pseudocode is presented in Figure 2. It takes as an input: a process name and two integers, and . The two latter parameters are used to determine communication pattern between non-faulty processes, and their choice determines complexity of the algorithm.
As mentioned before, processes use quantum equivalent of a procedure in which processes draw random names from the range and decide on a random bit proposed by the process with the largest name.¶¶¶Note that the latter procedure cannot be used against an adaptive adversary, as it could crash such a leader. We view the quantum part of the algorithm as a quantum circuit on the joint space of all qubits ever used by different processes. Due to the distributed nature of the system, not all quantum operations are allowed by the quantum circuit. That is, (i) any process can perform arbitrary unitary gates on its part of the system, (ii) unitary gates on qubits of different processes might be performed, but must be preceded by quantum communication that send qubits involved in the operation to a single process. The communication can be either direct or via relays. We next explain what unitary gates can be used to simulate the classic algorithm of the leader election in the quantum distributed setting. For the purpose of explanation, we assume that the qubits needed to execute each of the following gates have been delivered to proper processes. The pattern of communication assuring this delivery is described in the next paragraph.
-
1.
Hadamard gate. This unitary operation on a single qubit is given by the matrix . When applied to every qubit of an -qubit state , it produces a uniform superposition of vectors of the computational basis, i.e.,
In the beginning, every process applies this gate to its main register consisting of qubits, (line 2). This way the entire system is in the following state:
Observe, that if all processes measure the main registers in the computational basis, they the outcome has the same probability distribution as a random experiment in which every process draws a number from uniform distribution over (first qubits of each register) and a uniform random bit (the last qubit of each register).
-
2.
CNOT and Pairwise_CNOT. The is a 2-qubit gate given by the following unitary transform
The Pairwise_CNOT gate works on a register of qubits. Let be the first half of the register while is the second. The gate applies the gate qubit-wisely to corresponding pairs of qubits of and . We only use this gate when the part of the entire register is in the state . If the part of the enitre register is in a state then the unitary gate results in
Whenever a process decides to send its qubits to another process, it performs the Pairwise_CNOT gate on its qubits and the new block of qubits initialized to . Since, as a result, the information needed to be propagated is now also encoded on another qubits, the processes can send the new block to another part keeping the original qubits for itself. Observe, however, that this is not a universal copy gate (which is not possible in quantum model of computation), since it does not copy the part to the part , but rather achieves a specific form of entanglement that encodes the same information if described in the computational basis.
-
3.
F_CNOT and Controlled_Swap. Let be a Boolean function. Let be a register of qubits and be an additional single qubit register. The gate performs operation on the last qubit iff . If , then we get
The gate can be implemented using unitary transforms. For each vector from the computational basis such that , we apply on the last qubit and then compose at most such gates. We note here that we never use the F_CNOT gate on registers of more than qubits, therefore the F_CNOT has polynomial size.
The Controlled_Swap operates on a control register and two registers of the same size, and . It swaps the content of two registers of the same size if the control register is . Formally, the gate works as follows:
We use these two gates whenever a process receives qubits of another process. First, a control qubit is prepared by comparing the content of the received register and the main register of the process. The condition function used in the gate is the following:
Next, the qubit is passed to the Controlled_Swap gate, operating again on the main register and the newly received qubits. For the part of the control qubit, which corresponds to the fact that the received register has larger values in the computational basis, the gate switches the content of the two registers.
Let us now explain how all the gates listed above work together. As mentioned in the description of the Hadamard gate, after line 2 ends, the main registers of the system are in the state being a uniform superposition of all vectors of the computational basis. Starting from this point, the composition of all gates applied to different registers along the execution can be viewed as a single unitary gate on the entire system, consisting of the qubits that any processes ever created. Note that the unitary transformation might be different depending on the failure in communication, i.e., a failure in delivery of some block of qubits between two processes may result in abandoning gates involving these qubits, but for a moment let us assume that the links are reliable. Since the unitary transformation is linear, it is enough to consider how it affects the vectors of the computational basis. However, all the gates described above behave in the computational basis as their classic equivalents. More precisely, let be a vector from the computational basis spanning the whole circuit. Let be the process whose main register has the largest∥∥∥The probability of a tie is polynomially small value in the state . From the point of view of this register, the following happens in the algorithm. In each round, creates an entangled state on qubits (see point ) that has the same qubits on its new block of qubits as it has on the main register. Then, it propagates the new block to its neighbors (line 2). The neighbors compare the content of received qubits and exchange them with their main register if their content is smaller (gates F_CNOT and Controlled_Swap in lines 1). This operation is then repeated on the set of links defined by some random evolving graphs, see the later paragraph about adaptive communication pattern. In the end, the processes who, either directly or via relays, received the content of the largest main register, have the same value in their main register. Therefore, the result of the measurement in line 2 must be the same in all these processes.
Assume now that we are able to achieve bidirectional quantum communication between any pair of processes of an -fraction of the entire system, regardless of the (dynamic) actions of the adversary. From the above, the algorithm transforms any vector whose largest main register is one of the registers of the -fraction to a vector such that processes from the -fraction have the same values in main registers. Connecting the above discussion with the fact the algorithm is a to transformation on the linear space of states, we get that the probability of measuring the same values in the processes of the -fraction is at least the probability of measuring the largest value in one of the processes belonging to the -fraction, if the measurement was done before the quantum communication. Since the state is a uniform superposition at that time, the probability is at least and we can claim the following lemma.******The part contributes to the unlikely event that there are ties between largest values.
Lemma 1.
Let be a set of correct processes such that any pair of them was connected by quantum communication either directly or by relays. Then the probability that all processes from output the same bit from the algorithm CheapQuantumConsensus is at least .
Adaptive communication pattern.
As explained, we not only need that the communication should be efficient in terms of the number of qubits and classic bits, but also it should be such that any two correct processes of a large fraction of the entire system are connected by a short path of correct process so that quantum registers can be relayed. Let be two integers parameters. We define , , and . Initially, each process draws independently sets , where a set , for , includes each process from with probability .
Communication is structured into epochs, see line 2. Each epoch consists of communication rounds, also called testing rounds. They are scheduled in iterations within the loop “for” in line 2, each iteration containing two communication rounds (underlined in the pseudocode): sending/receiving inquiries in line 2 and sending/receiving responses in line 2. In the testing rounds of the first epoch, a process sends inquiries to processes in set . The inquired processes respond by sending in the next round (line 2) their current classic state and specially prepared, in line 2, quantum register. However, if in a result of crashes starts receiving less than responses per round, it switches its communication neighborhood from to the next, larger set, . A similar adaptation to a crash pattern is continued in the remaining epochs.
Process stores the cardinally of the set being inquired in an epoch in the variable (initialized to in line 2). For the purpose of testing rounds, copies the value to a variable (line 2). In every testing round, adapts its variable to the largest value such that it received at least responses from processes that have their variable adaptive_degree at least (loop “while” in line 2). If had to decrease the value in testing rounds of an epoch, it then increases the main variable by the factor before the next epoch, see line 2. The latter operation formally encodes the intuition that the process expected to have non-faulty neighbors with their values of degree at least as big as its own, but due to crashes it did not happen; Therefore, increases the number of inquired processes, by adopting the next, larger neighborhood set , randomly selected, in order to increase the chance of communication with the majority of non-faulty processes in the next epoch. On the other hand, the adaptive procedure of reducing adaptive_degree in testing rounds of a single epoch helps neighbors of to estimate correctly the size of the neighborhood that process is using in the current testing round, which might be much smaller than the value from the beginning of the epoch. This, in turn, calibrates the value of adaptive_degree of the neighbors of , and this calibration can propagate to other processes of distance up to from in the next iterations of testing rounds.
Analysis.
Let us define graphs , for , as the union of random sets . The probability distribution of the graph is the same as the random graph for . Chlebus, Kowalski and Strojnowski [13]
showed in their Theorem 2, applied for ,
that the graph has the following properties, whp:
(i) it is -expanding, which follows from -edge-expanding property,
(ii) it is -edge-dense,
(iii) it is -compact,
(iv) the degree of each node is at most .
Since the variable takes values in the set , the pigeonhole principle assures that eventually will participate in an epoch in which has not been increased (in the most severe scenario, will use the set , which consists of all other processes – because it contains each process, as a neighbor of , with probability ). The -dense-neighborhood property of random graphs composed from neighborhoods implies that will then contact a majority of other non-faulty processes via at most intermediate processes (during testing rounds). Formally, the following holds:
Lemma 2.
If a process does not change its variable at the end of an epoch , then at the beginning of epoch there exists a -dense-neighborhood of in the graph consisting of non-faulty processes with variable degree being at least in the epoch , whp.
On the other hand, -compactness of the (random) graph composed of processes that have the variable degree at least , guarantees that the total number of processes that use sets during the epoch is at most , which amortizes communication complexity.
Lemma 3.
For any integer , such that , at the beginning of each epoch there is at most processes with the variable degree greater than , whp.
The above discussion yields the following result.
Theorem 3.
For two integer parameters , the algorithm QuantumCoinFlip generates a weak global coin, provided that at most -fraction of initially non-faulty processes have crashed. It terminates in rounds and with high probability uses both quantum and classic communication bits (amortized) per process.
6 Constant-Time Communication-Efficient Fuzzy Counting
Although generating a weak global coin in a constant number of rounds against an adaptive adversary requires quantum communication (due to the lower bound by Ben-Or and Bar-Joseph [8]), the CheapQuantumCoin algorithm, even without quantum communication, achieves few other goals. As discussed in the previous section, its random communication pattern guarantees, whp, that any additional classic message, also called a rumor, of a non-faulty process can be conveyed to any other non-faulty process if added to every classic message sent/received in line 2. Even more, assume that there is a set of messages/rumors , distributed as inputs among some subset of processes (one message from per process). If processes always convey all the known rumors from set when using classic communication (avoiding repetition), then they solve a Gossip problem, whp, i.e., every rumor given to a non-faulty process, for , is known at the end of the protocol to every other non-faulty process. Observe that processes resign from the quantum content of communication for this purpose, and instead of bits (or qubits) per message, they use bits, where denotes the number of bits needed to encode all rumors from . Finally, if processes work in a model where the names of other processes are commonly known, they can withdraw from using random communication. Instead, they can use a deterministic family of graphs , for the same choice of parameters and . The proof of existence of such graphs, using the probabilistic argument, was described in [13] (Theorem 2). In such case, the set is the neighborhood of process in the deterministic graph . (Processes compute the same copies of graphs locally in the beginning of the algorithm.) The above augmentation of the algorithm, together with the proof of Theorem 3, from which we take the upper bound on the number of messages send and the upper bound on the number of rounds, leads to the following result.
Theorem 4.
For integer parameters , there is a deterministic algorithm that solves the gossip problem in rounds using communication bits per process (amortized), where is the number of bits needed to encode all rumors in .
Generalized Fuzzy Counting.
Definition 2 (Fuzzy Counting [25]).
An algorithm solves Fuzzy Counting if each process returns a number between the initial and the final number of active processes. Here, the notion of “being active” depends on the goal of the counting, e.g., all non-faulty processes, processes with initial value , etc.
Note that the returned numbers could be different across processes. Here, we refine the state-of-art method of solving the fuzzy counting problem, even deterministically, and propose a new recursive algorithm with any branching factor , called FastCounting. Formally, we prove the following:
Theorem 5.
For any and , the FastCounting deterministic algorithm solves the Fuzzy Counting problem in rounds, using communication bits (amortized) per process.
Obviously, the constant-time is achieved in Theorem 5 when , for a constant . In this case, the number of rounds is , while the communication complexity is (amortized) per process. In our approach, we generalize the method of Hajiaghayi et al. [25] to denser communication graphs of certain properties, which allows us to achieve constant running time. The constant running time is the key feature of the algorithm, since it is used in the implementation of (expected) constant-round quantum consensus protocol CheapQuantumConsensus. The main difference between ours and the state-of-art approach is a different Gossip protocol used in the divide-and-conquer method.
The FastCounting algorithm is recurrent. It takes as an input the following values: is the set of processes on which the algorithm is executed; is the name of a process which executes the algorithm; denotes if is active () or not; and parameters , where is the branching factor and steer the density of the communication graph in the execution. Knowing the set of processes, FastCounting splits the set into disjoint groups of processes, each of size between and . Name these groups . The groups are known to each participating process. The algorithm then makes parallel recursive calls on each of these groups. As a result, a process from a group , for , gets the number of the active processes in its group . In the merging step, all processes execute Gossip algorithm, proposed in Theorem 4, with parameters , where the input rumors are the numbers calculated in the recursive calls. To keep the communication small, when processes learn new rumors they always store at most one rumor corresponding to each of the groups. This way, the number of bits needed to encode all rumors is . Let be the rumors learned by process from the execution of the Gossip algorithm. The final output of is the sum . We provide the pseudocode of the algorithm in Figure 3. Note that all processes run the algorithm to help counting and Gossip, not only those with , but only the latter are counted (see lines 2, 5, 7). For detail analysis of the round and communication bit complexity we refer to Section C.
References
- [1] I. Abraham, T.-H. Hubert Chan, D. Dolev, K. Nayak, R. Pass, L. Ren, and E. Shi, Communication Complexity of Byzantine Agreement, Revisited, in Proceedings of the ACM Symposium on Principles of Distributed Computing (PODC), 2019, pp. 317 - 326.
- [2] D. Alistarh, J. Aspnes, V. King, and J. Saia, Communication-efficient randomized consensus, Distributed Computing, 31 (2018), 489 - 501.
- [3] S. Amdur, S. Weber, and V. Hadzilacos, On the message complexity of binary agreement under crash failures, Distributed Computing, 5 (1992) 175 - 186.
- [4] J. van Apeldoorn and T. de Vos, A Framework for Distributed Quantum Queries in the CONGEST Model. Proceedings of the ACM Symposium on Principles of Distributed Computing (PODC), 2022.
- [5] J. Aspnes, Lower Bounds for Distributed Coin-Flipping and Randomized Consensus, J. ACM 45(3) (1998): 415 - 450.
- [6] H. Attiya, and K. Censor, Tight bounds for asynchronous randomized consensus, Proceedings of the 39th Annual ACM Symposium on Theory of Computing, San Diego, California, USA, June 11-13, 2007
- [7] H. Attiya, and J. Welch, Distributed Computing: Fundamentals, Simulations and Advanced Topics, nd edition, Wiley, 2004.
- [8] Z. Bar-Joseph, and M. Ben-Or, A Tight Lower Bound for Randomized Synchronous Consensus, Proceedings of the Seventeenth Annual ACM Symposium on Principles of Distributed Computing (PODC), 1998, 193 - 199.
- [9] Z. Bar-Joseph, and M. Ben-Or, (2002) A Tight Lower Bound for Randomized Synchronous Consensus. DOI: 10.1145/277697.277733
- [10] M. Ben-Or and A. Hassidim, Fast quantum byzantine agreement, Proceedings of the 37th Annual ACM Symposium on Theory of Computing (STOC), 2005.
- [11] A. Broadbent and A. Tapp, Can quantum mechanics help distributed computing? SIGACT News, 39(3):67-76, 2008.
- [12] B.S. Chlebus, and D.R. Kowalski, Robust gossiping with an application to consensus, Journal of Computer and System Sciences, 72 (2006) 1262 - 1281.
- [13] B.S. Chlebus, D.R. Kowalski, and M. Strojnowski, Fast scalable deterministic consensus for crash failures, in Proceedings of the th ACM Symposium on Principles of Distributed Computing (PODC), 2009, pp. 111 - 120.
- [14] B.S. Chlebus, D.R. Kowalski, M. Strojnowski, Scalable Quantum Consensus for Crash Failures, in Proceedings of the 24th International Symposium on Distributed Computing (DISC), 2010.
- [15] V. Cholvi, Quantum Byzantine Agreement for Any Number of Dishonest Parties, Quantum Inf. Process., 21 (2022) 1 - 11.
- [16] B. Chor, M. Merritt, and D.B. Shmoys, Simple constant-time consensus protocols in realistic failure models, J. ACM, 36(3):591–614, 1989.
- [17] D. Dolev, and R. Reischuk, Bounds on information exchange for Byzantine agreement, Journal of the ACM, 32 (1985) 191 - 204.
- [18] C. Dwork, J. Halpern, and O. Waarts, Performing work efficiently in the presence of faults, SIAM Journal on Computing, 27 (1998) 1457 - 1491.
- [19] P. Feldman, and S. Micali, An optimal probabilistic protocol for synchronous Byzantine agreement, SIAM Journal on Computing, 26 (1997) 873 - 933.
- [20] M. Fisher, and N. Lynch, A lower bound for the time to assure interactive consistency, Information Processing Letters, 14 (1982) 183 - 186.
- [21] M. Fisher, N. Lynch, and M. Paterson, Impossibility of distributed consensus with one faulty process, Journal of the ACM, 32 (1985) 374 - 382.
- [22] Z. Galil, A. Mayer, and M. Yung, Resolving message complexity of Byzantine agreement and beyond, in Proceedings of the th IEEE Symposium on Foundations of Computer Science (FOCS), 1995, pp. 724 - 733.
- [23] S. Gilbert, and D.R. Kowalski, Distributed agreement with optimal communication complexity, in Proceedings of the st Annual ACM-SIAM Symposium on Discrete Algorithms (SODA), 2010, pp. 965 - 977.
- [24] V. Hadzilacos, and J.Y. Halpern, Message-optimal protocols for Byzantine agreement, Mathematical Systems Theory, 26 (1993) 41 - 102.
- [25] M. Hajiaghayi, D.R. Kowalski, and J. Olkowski, Improved communication complexity of fault-tolerant consensus, in Proceedings of the 54th Annual ACM Symposium on Theory of Computing (STOC), 2022, to appear.
- [26] L.K. Helm, Quantum distributed consensus, in Proceedings of the 27th ACM symposium on Principles of distributed computing (PODC), 2008.
- [27] Valerie King, Jared Saia Breaking the O(n) bit barrier: Scalable byzantine agreement with an adaptive adversary, J. ACM, (2011) 58, 18:1–18:24.
- [28] Q. Luo, K. Feng, and M. Zheng, Quantum multi-valued byzantine agreement based on -dimensional entangled states, International Journal of Theoretical Physics, 58 (2019) 4025 - 4032.
- [29] M. A Nielsen and I. Chuang, Quantum computation and quantum information, American Association of Physics Teachers
- [30] D. Peleg, (2000). Distributed Computing: A Locality-Sensitive Approach. SIAM.
- [31] M. Pease, R. Shostak, and L. Lamport, Reaching agreement in the presence of faults, Journal of the ACM, 27 (1980) 228 - 234.
- [32] S. Tani, H. Kobayashi, and K. Matsumoto, Exact Quantum Algorithms for the Leader Election Problem, ACM Transactions on Computation Theory, 4 (2012) 1 - 24.
- [33] X. Wu, and P. Yao, Quantum Complexity of Weighted Diameter and Radius in CONGEST Networks, Proceedings of the ACM Symposium on Principles of Distributed Computing (PODC), 2022
APPENDIX
Appendix A The Analysis of CheapQuantumConsensus Algorithm
To analyze the CheapQuantumConsensus algorithm we first recall a combinations of lemmas from [9].
Lemma 4 (Lemmas in [9]).
If all processes have the same value at the beginning of an iteration of the main while loop, then the algorithm returns the decision after at most two iterations.
Theorem 6.
For any , the CheapQuantumConsensus algorithm solves Consensus against -adversary in rounds in expectation while using qubits and communication bits per process (amortized), whp.
Proof.
First, we argue for correctness. Compared to the protocol of Bar-Joseph and Ben-Or [9], which works for an arbitrary number of failures , we changed the method of deriving random coin, c.f., line 1. Observe that even if CheapQuantumCoin fails to meet conditions of -resilient coin flip, it always outputs some bit in every non-faulty processes. Thus, regardless of number of crashes the output could be an output of local coin flips with a non-zero probability. Since Bar-Josephs’s and Ben-Or’s algorithm works with probability (see Theorem 3 in [9]), thus CheapQuantumConsensus also achieves correctness with probability .
Next, we estimate the expected number of phases (i.e. the number of iterations of the main while loop). We consider only good phases, i.e. phases in which the adversary crashed at most fraction of processes that were correct at the beginning of this iteration. Note, that there can be at most ”bad” phases.
Let be the number of non-faulty processes at the beginning of some good phase. We consider following cases:
Case a) There exists a process that in this iteration executes line 1 or line 1. In this case, all other processes have to execute line 1 or line 1, since the number of ones counted in different processes may differ by at most. All processes that in this iteration execute CheapQuantumCoin will set to with probability at least. What follows, in the next iteration all processes will start with set to and by Lemma 4 the algorithms will decide within two next phases.
Case b) There exists a process that in this phase executes line 1 or line 1. Similarly to the previous case, we observe that all other processes have to execute line 1 or line 1, since, again, the number of ones counted in different processes may differ by at most. Therefore the same arguments applies, but know the final decision will be .
Case c) None of processes executes one of lines 1, 1, 1, or 1. Thus, all processes participated in CheapQuantumCoin in line 1. By Theorem 3, with probability at least , all processes will set value to the same value. Thus, again by applying Lemma 4, we get that the algorithms will decide within two next phases.
We showed that if good phase happens, then the algorithm terminates within next iterations with probability at least . Since there can be at most bad iterations, thus we can calculate the expected number of iterations as follows
Executing a single phase takes rounds, which is the round complexity of the FastCounting algorithm and an upper bound of the time complexity of the CheapQuantumCoin algorithm, therefore the algorithm terminates in rounds in expectation. Similarly, by taking the upper bounds on the communication complexity of the algorithms FastCounting and CheapQuantumCoin we get that the expected number of amortized communication bits used by the algorithm is . ∎
Finally, let us analyze the modified version of the algorithm CheapQuantumConsensus with the difference that processes use parameters in lines 1 and 1.
Theorem 7.
The modified version of the CheapQuantumConsensus algorithm solves Consensus against any adversary in rounds in expectation while using qubits and communication bits per process (amortized), whp.
Proof.
For the correcntess we argue exactly the same as in the proof of previous Theorem. We also define good and bad phases, with only this differences that now the number of bad phases is at most , since the adversary has the full power of crashing arbitrary number of processes. This being said we get that, by the very same reasoning, that the expected number of phases is
By examining the time and bits complexity of the algorithms FastCounting and CheapQuantumCoin with parameters , we get a single phase lasts rounds and contributes bits to the total communication complexity. The latter, after dividing by , gives the sought complexity amortized per process. Thus, the theorem follows. ∎
Appendix B Omitted proofs from Section 5
Proof of Lemma 2.
Consider two last iterations of the epoch . Since the variable has not changed it the epoch, thus also the variable has remained unchanged in the epoch. In particular, examining line 2 assures, that in the last two testing rounds of this epoch, process received at least responses from processes that had the variable adaptive_degree at least .
Next, we proceed by induction. We claim, that in the and , for last testing rounds there existed -dense-neighborhood of with the properties the every processes belonging to this neighborhood is non-faulty and has its variable adaptive_degree at least . The induction step goes as follows. Assume that there exists -dense-neighborhood of with the mentioned properties. In particular in the last testing rounds, every process from this set had to receive at least responses from processes with the variable adaptive_degree at least as big as the variable adaptive_degree of the process. This follow from inspecting line 2. The set of processes who responded with large values of adaptive_degree constitute to the set .
Eventually, we obtain the existence of the set which satisfies the property of -dense-neighborhood. Each process from the neighborhood has the variable degree at least , since for every process it holds that . ∎
Proof of Lemma 3.
Assume to the contrary that there exists an epoch such that more than processes start this epoch with the variable degree set to a value greater than . Assume also w.l.o.g. that is the first such epoch and let be the set of processes that have the variable degree set to at least at the beginning of this epoch. Let be any survival set for with respect to the graph . Note that since is a set of processes that are correct in epoch , thus the processes from have been behaving correctly in epoch inclusively. Since the graph is -compact and , thus exists. At the beginning of the epoch , the variable degree of all processes from is greater than , thus there must be a round in which the last process from , say , increases its variable degree to . But this gives us the contradiction. In the epoch , all processes from operates in the graph , thus they have at least neighbors in . All these neighbors have the variable degree greater than . In particular, in this epoch, the process will not execute line 2 and therefore it will not increase its variable which give a contradiction with the maximality of and in consequence the minimality of . ∎
Note that in the above proof of Lemma 3 we use the fact that a suitable set of processes that have been correct throughout the whole epoch exists. We may choose this set and argue about it after the epoch, as the communication pattern in the algorithm is deterministic. Hence, in any round of the epoch, processes in have at least as many non-faulty neighbors in communication graph as they have neighbors from set . We use this number of neighbors in as a lower bound to argue about behavior of variables degree; therefore, our arguments do not depend on behavior of processes outside of and whether/when some of them fail during the epoch.
Lemma 5.
Any two non-faulty processes and were connected by a quantum path of communication during the run of the algorithm.
Proof.
First observe, that the variable can take at most different values. Since there is epochs, thus by the pigeonhole principle there must be a sequence of consecutive epochs in which the variable remains unchanged. Similarly, among these epochs there must be two epochs in which the variable remains unchanged. Let us denote these two epochs and . Since the variable has not changed in the epoch , thus by applying Lemma 2, we get that there exists a -dense-neighborhood of in the graph , say , consisting of processes that a) were non-faulty in the epoch b) their variable degree were at least . An immediate consequence is that all processes from were non-faulty in the epoch . Moreover, since is -dense-neighborhood of in the graph thus its size is at least (Lemma 1 [13]). Let be the analogues -dense-neighborhood of derived from the properties of the graph .
Now, consider quantum communication between sets and in the first testing round of the epoch . Processes from use the graph to communicate (or a denser graph) while processes from use the graph (or a denser graph). The graph is -expanding and the graph is at least -expanding. Therefore, at least one process from set inquires a process from set when executes line 2 in this testing round if ; or vice-versa if . Since the set has diameter (Lemma 1 [13]) and there remains testing rounds in the epoch , thus by the end of this epoch any quantum messages send from could reach . ∎
Proof of Theorem 3.
Let be the set of initially non-faulty processes. Assume that at least of them remains non-faulty during the execution of the algorithm. By Lemma 5, any pair of processes from is connected by quantum communication, therefore applying Lemma 1 to this set, gives that there is at least (which is greater than for sufficiently large n) probability that all non-faulty processes return the same output bit. Since and are equally likely, thus the probabilistic guarantee on the weak global coin follows.
The number of rounds is deterministic and upper bounded by . To bound the communication complexity, assume that each graph , for , satisfies the desired expanding properties listed in the description of the algorithm. This, by the union bound argument, holds whp. By Lemma 3 at the beginning of each epoch there is at most processes that inquires more than other processes in testing rounds of this epoch, for each . Since each message uses at most bits and qubits, thus a single testing round in an epoch adds at most
qubits and bits to communication complexity. Since there is exactly testing rounds, thus the upper bound on the total communication complexity of the algorithm follows. Dividing the latter by we receive amortized formula per process. ∎
Appendix C The Analysis of FastCounting algorithm
Proof of Theorem 5.
Let us first argue for the correctness. If , then the conditional statement in line 3 proves the correctness. Next, we proceed by induction. Assume that the correctness is proved for any subset . Therefore, whenever a process executes a recursive call in line 3, its variable is assigned to the number being an estimation of non-faulty active processes in the set . Consider now set . This is the set of input messages to the execution of the Gossip algorithm, see line 3. Thus, by Theorem 4, we get that unless all process from a group crashes, then all other non-faulty processes will have the number in their sets (line 3). Therefore, the sum returned in line 3 is the actual estimate of the number of all-non faulty processes in the set , since it can differ from the number of all processes starting the algorithm only by the number of crashed processes.
The bounds on time and communication complexity follows immediately from the bounds on complexity of the Gossip algorithm proposed in Theorem 4 and the fact that depth of the recursion at most . ∎
Appendix D Further Results
Lemma 6.
For any Consensus algorithm there is a strategy of an adaptive adversary under which some process sends messages with non-zero constant probability.
Proof.
Suppose otherwise. Consider any process and two executions, in one of them starts with value and in the other starts with . In both executions, the adversary fails all processes that want to send a message to and all to whom sends a message. For each pair , we obtain two probabilities , of sending a message to in the first and the second execution. The sum of probabilities is with constant probability , by contradictory assumption (recall that this sum is for the fixed process ).
Repeat the above for every process . This way we obtain a complete weighted graph (by weights and ). Again, by contradictory assumption, the total sum of all weights is with the same constant probability , therefore, because the number of pairs is , there is a pair such that
Consider an execution in which the adversary crashes all but processes in the very beginning. It assigns value to and value to . It follows that in this execution try to communicate directly with probability . With complementary probability, , they do not communicate. In this case, cannot distinguish this execution from another execution in which all processes start with value but the adversary crashes all of them but in the beginning – hence, by validity condition of consensus, must decide in both of these executions. Similarly, cannot distinguish the constructed execution from execution in which all processes start with value but the adversary crashes all of them but in the beginning – hence, by validity condition of consensus, must decide in both of these executions. Both the above facts must hold with probability , as validity is required with probability . Consequently, in the constructed execution , decides while decides , with probability , which violates agreement condition of consensus. This contradiction concludes the proof of the lemma. ∎
Next, we argue that no constant-time Consensus algorithm uses amortized polylogarithmic number of communication bits, per process.
Lemma 7.
Any quantum algorithm solving Consensus in expected time requires a polynomial number of messages per process (amortized), whp.
Proof.
Consider a Consensus algorithm working in expected number of rounds, for some . By Markov inequality, the algorithm terminates by time with probability at least , for every strategy of the (adaptive) adversary. We base on the idea in the proof of Lemma 6, but we do it for every round and for number of sent messages in a round being . Using recursive argument, we argue that there is a set of at least processes (instead of just a pair of elements as in the proof of Lemma 6) that communicate with each other with probability , with already sending messages, amortized per process in this set. In one of the rounds, however, a constant () fraction of alive processes must increase their communication peers by factor of at least , because in expected rounds (so also with constant probability) they need to contact other peers in some executions – again, by the same argument as in the proof of Lemma 6 (i.e., otherwise, we could find a pair of them, assign different values, and enforce decision on them with a constant probability, violating agreement condition). In such round, the adversary allows them to send their message without crashes, thus enforcing total number of messages, i.e., at least messages amortized per every process in the system. As this happens with a constant probability, the proof follows. ∎