Asynchronous Approximate Agreement with Quadratic Communication
Abstract
We study approximate agreement in an asynchronous network of parties, up to of which are byzantine. This an agreement task where the parties obtain approximately equal inputs in the convex hull of their inputs. In an asynchronous network, it can be solved with the optimal resilience by forcing the parties to reliably broadcast their messages and thus preventing inconsistent byzantine behavior. This costs messages per reliable broadcast, or messages per protocol iteration.
In this work, we forgo reliable broadcast to achieve asynchronous approximate agreement against faults with quadratic communication. In a tree with the maximum degree and the centroid decomposition height , we achieve edge agreement (agreement on two adjacent vertices) in at most rounds with messages of size per round. We do this by designing a 6-round multivalued 2-graded consensus protocol and using it to construct a recursive edge agreement protocol. Then, we achieve edge agreement in the infinite path , again by using 2-graded consensus. Finally, we show that our edge agreement protocol enables approximate agreement in (with outputs that are at most some small parameter apart) in rounds with messages of size per round, where is the maximum non-byzantine input magnitude.
Keywords and phrases:
Approximate agreement, byzantine fault tolerance, communication complexityCopyright and License:
2012 ACM Subject Classification:
Theory of computation Distributed algorithmsEditors:
Andrei Arusoaie, Emanuel Onica, Michael Spear, and Sara Tucci-PiergiovanniSeries and Publisher:
Leibniz International Proceedings in Informatics, Schloss Dagstuhl – Leibniz-Zentrum für Informatik
1 Introduction
We consider a fully connected asynchronous network of message-passing parties . Up to of these parties suffer from byzantine faults, while the rest are honest.
In an approximate (convex) agreement problem, the parties output approximately equal values in the convex hull of their inputs. The most classical example is approximate agreement in , where the inputs/outputs are in , and for some parameter the following hold:
-
validity: Each honest party output is between the minimum and maximum honest inputs.
-
-agreement: If any honest parties and output and , then .
Approximate agreement in was introduced in 1985 by Dolev, Lynch, Pinter, Stark and Weihl [14]. Like byzantine agreement, in synchronous networks it is possible against faults with setup (public key infrastructure to enable message signing) [21], but only possible when if perfect (signature-free) security is desired [14] or the network is asynchronous. What sets approximate agreement apart is that it is determinism-friendly. While deterministic byzantine agreement takes rounds in synchrony [13] and is impossible against just one crash in asynchrony [17], approximate agreement does not share these limitations. Thus, approximate agreement protocols are customarily and preferably deterministic.
In [14], Dolev et al. achieved -agreement in with a perfectly secure synchronous protocol secure against corruptions. Simplifying things slightly, in their protocol the parties estimate the spread of their inputs (the maximum difference between any two inputs), and run for rounds. In each round each party sends its value to every other party, and this is enough for the parties to halve the spread of their values. After rounds, the spread is at most of what it initially was, and thus -agreement is achieved. They presented an asynchronous version of this protocol as well, but only with the resilience as the parties can no longer wait to receive the value of each honest party in every iteration.
Asynchronous approximate agreement in with the optimal resilience was first achieved by Coan in 1988 [10], who designed a simple protocol like the one above that tolerated crash faults, and then upgraded this simple protocol into a byzantine fault tolerant one. He obtained this upgrade by using Bracha’s reliable broadcast [8] to prevent the byzantine parties from transmitting different values to different parties, and by introducing a scheme to ensure that the parties ignore any values that could not have been sent by protocol-following parties. This upgrade has the drawback of turning the base protocol’s raw broadcasts into reliable broadcasts, causing a -fold communication increase as reliable broadcast requires messages for deterministic [15] or strongly adaptive [2] security against faults. This means that the upgraded protocol costs messages per iteration.
Later in 2004, Abraham, Amit and Dolev achieved a similar result: A cubic-complexity asynchronous protocol for approximate agreement in with the optimal resilience . This protocol has an advantage over the previous ones: Its input spread estimation is fault tolerant, which means that its round complexity scales with the logarithm of the spread of only the honest parties’ inputs, rather than the spread of all inputs including the byzantine ones. Abraham et al. obtained this protocol by developing the witness technique, which involves each party reliably broadcasting a value and obtaining at least reliably broadcast values, with the guarantee that every two parties obtain the values of at least common parties. Since then, most asynchronous approximate agreement protocols have depended on this technique. Some examples are [1, 21] for agreement in , [16, 22, 26] for agreement in when , and [11, 29] for agreement in graphs (trees, chordal graphs, cycle-free semilattices).
The optimally resilient protocols above cost messages per round due to their use of reliable broadcast. However, asynchronous approximate agreement is possible with messages per round, as shown by the protocol in [14] which tolerates faults. So, we ask: Is there an asynchronous approximate agreement protocol that optimally tolerates faults with only a quadratic (proportional to ) amount of communication?
In this work, we answer this question affirmatively by forgoing reliable broadcast. First, we achieve edge agreement in finite trees [29] (agreement on two adjacent vertices) with the optimal resilience via multivalued 2-graded consensus iterations. Then, we extend our protocol to achieve edge agreement in the infinite path . Finally, we achieve -agreement in by reducing it to edge agreement in . Our final protocol for -agreement in takes rounds (where is the maximum honest input magnitude) with messages of size sent per round, which means that its total communication complexity is quadratic in . Note that we do not require the parties to know in advance for this.
Our work is inspired by [23], which achieves exact convex agreement in (on a single integer) with byzantine agreement iterations in a synchronous network. We instead achieve edge agreement in (on two adjacent integers) with iterations of graded consensus, which is a much simpler primitive than byzantine agreement, especially in asynchronous networks.
2 Model & Definitions
We consider an asynchronous network of message-sending parties which are fully connected via reliable and authenticated channels. An adversary corrupts up to parties, making them byzantine, and it takes control of these parties. The adversary adaptively chooses the parties it wants to corrupt during protocol execution, depending on the parties’ internal states and all sent messages. If a party is never corrupted, then we call it honest.
The parties do not have synchronized clocks. The adversary can schedule messages as it sees fit, and it is only required to eventually deliver messages with honest senders. If a party sends a message, then the adversary may corrupt the party instead of delivering the message.
We say that a party multicasts when it sends to every party. By corrupting a party that is multicasting a message, the adversary may deliver the message to only some parties.
Our protocols are live; i.e., they achieve liveness. That is, if the honest parties all acquire inputs and all run forever, then they all output. However, in Section 6, we explain a low-cost way to upgrade our live protocols into terminating versions that allow the parties to halt.
To define asynchronous round complexity, we imagine an external clock. If a protocol runs in rounds, then it is live or terminating, and the time elapsed between when every honest party running the protocol knows its input and when every honest party outputs/terminates is at most , where is the maximum honest message delay in the protocol’s execution. Note that this definition matches the notion defined as “time complexity” in [4].
Edge Agreement in a Tree
In edge agreement in a tree graph , each party acquires an input vertex , and outputs a vertex . We want the following properties:
-
edge agreement: Every two honest output vertices are either equal or adjacent in .
-
convex validity: For every honest output , there exist some (possibly equal) honest inputs and such that is on the path which connects and in .
Edge agreement in a tree generalizes edge agreement in a path, which is essentially the same task as approximate agreement in an interval in , but with the input/output domain restricted to the integers (with adjacent integers representing adjacent path vertices).
Graded Consensus
In -graded consensus, each party acquires an input in an input domain , and outputs some value-grade pair . The following must hold:
-
agreement: If any honest parties and output and , then , and if , then .
-
intrusion tolerance: If is an honest output, then is an honest input.
-
validity: If the honest parties have a common input , then they all output .
In this work, we use both binary 2-graded consensus (with ) and multivalued 2-graded consensus (with ). For the latter, there is a 9-round protocol in the literature that costs messages of size [4]. This protocol is enough for our asymptotic complexity results. However, it achieves a property called binding [4] that we do not need, and without this property, 6 rounds suffice. We show this in the appendix by constructing a family of multivalued -graded consensus protocols which each take rounds, with messages of size per round. We obtain this family by constructing a -graded consensus protocol , and by repeatedly grade-doubling it.111Repeated grade-doubling is a standard method to achieve -graded consensus in rounds [18, 5, 25], though note that synchronous networks allow -graded consensus in rounds [20].
3 Overview & Contributions
Our first contribution is a new protocol for edge agreement in finite trees. Against byzantine faults, this problem was first studied by Nowak and Rybicki [29]. It generalizes both edge agreement in finite paths (the discrete version of -agreement in ) and graded consensus.
Nowak and Rybicki achieve edge agreement in a finite tree of diameter with constant-round witness technique iterations and thus bits of communication, where the term arises from the party ID values that identify each witness technique reliable broadcast’s sender party. Meanwhile, we achieve edge agreement in at most rounds, where is a property which we formally define in Section 4 as the maximum of the heights of ’s centroid decompositions [30]. The integer value can be anywhere in , which means that our protocol’s round complexity is for some trees (though not for spider trees, trees with vertices such as paths etc.) worse than Nowak and Rybicki’s. However, our rounds only cost messages, each of size at most where is ’s maximum degree. So, our protocol requires roughly times less communication when .
In Section 4, we present a parametrized recursive protocol for edge agreement in a given finite tree . On a high level, it works as follows:
-
1.
If has 1 or 2 vertices, then each party outputs its input vertex. This is the base case.
-
2.
If has vertices, then the parties let be a centroid vertex of (whose deletion from results in a forest whose components all have at most vertices), and let be ’s neighbors sorted by vertex index. Then, they run 2-graded consensus, where each party’s input is either (if its edge agreement input is ) or some neighbor of (if its edge agreement input is in , which is how we refer to the tree component of that contains ). If the parties reach consensus on , then they output . Otherwise, if they reach consensus on some neighbor of , then the parties with input vertices outside adopt the new input , and we reduce the task to edge agreement in the subtree .
There is a snag. The explanation above only works if the parties actually reach unanimous agreement on either or one of its neighbors . However, 2-graded consensus does not guarantee this, as some parties might output from it. What allows us to overcome this issue is that if anybody outputs , then the parties all learn that they ran 2-graded consensus with differing inputs, and thus learn that is a safe output vertex w.r.t. convex validity.
Our approach for finite trees corresponds to binary search when the tree is a path. For example, the parties reach edge agreement in the path by either directly agreeing on , or by reducing the problem to edge agreement in either or .
Binary search does not support the infinite path . Fortunately, 2-graded consensus also enables exponential search. In Section 5, we present a protocol for edge agreement in that on a high level works as follows (with some complications that we skip over for now due to our use of 2-graded consensus instead of byzantine agreement).
-
1.
First, the parties reach 2-graded consensus on whether they prefer to agree on the left path or the right path , with each party preferring iff its input is in . Below, we explain what the parties then do if they decide to agree in . Otherwise, they follow the same steps, but with mirrored (sign-flipped) inputs and outputs.
-
2.
The parties run exponential search with the phases ; where in each phase they reach 2-graded consensus on if they have inputs in the left path or the right path . If they decide on the left path, then they reach edge agreement in it using our protocol for edge agreement in finite trees. Otherwise, if they decide on the right path, then they increment the phase counter and continue exponential search.
-
3.
Instead of directly using exponential search for edge agreement in , we take inspiration from [6], and design a two-stage protocol that is asymptotically twice as round-efficient. Roughly speaking, the parties run the protocol we described above based on exponential search to approximately agree on some such that the path contains safe output values w.r.t. convex validity, and then they reach edge agreement in this path.
When the maximum honest input magnitude is (when the honest input that is most distant from is either or ), our protocol for edge agreement in takes rounds, with messages of size per round. In Section 7, we reduce -agreement in to edge agreement in to show that this implies -agreement in in rounds with messages and bits of communication in total. Note that factor 6 in the round complexity here is due to us using our 6-round 2-graded consensus protocol. If for any other we used a -round protocol instead, like the 2-round 2-graded consensus protocol in [4] that tolerates faults, then this factor would be instead.
In terms of message and communication (though not round) complexity, our protocol for -agreement in is more efficient than that of Abraham et al. [1], who achieve -agreement in with constant-round witness technique iterations (where is the honest input spread, i.e. the maximum difference of any honest inputs), and with messages in total.
Another notable protocol is Delphi, by Bandarupalli, Bhat, Bagchi, Kate, Liu-Zhang and Reiter [5]. To efficiently achieve -agreement with -bit inputs in , they assume an input distribution (normal distribution for the following), and when the honest input spread is they achieve -agreement in rounds with bits of communication, while relaxing validity by allowing outputs outside the range of the honest inputs by at most . They use the parameter here to assume bounds on the honest inputs that hold except with a probability negligible in , and allow their protocol to fail if these bounds are violated. In comparison, we achieve -agreement in without relaxing validity or assuming any input bounds. As Table 1 shows, our protocol is also more efficient, in particular since Delphi requires a cubic amount of communication per round when .
4 Edge Agreement in a Tree
In , a set is straight-line convex if for all it contains the line segment (the shortest path in ) that connects and . This definition translates to convexity on a tree , where a set is convex if for all the set contains all the vertices on the shortest path (the only path) between and [29, 11]. Hence, we can define convex hulls on , where the convex hull of any vertex set is the set that consists of the vertices in and every other vertex that is on the path between some .
For edge agreement, the convex validity property is that when the honest parties have the set of inputs , they obtain outputs in . To achieve this, we rely on the following fact:
Proposition 1.
For every tree , and it holds that .
Proof.
Observe that for any tree and any , the graph (the subgraph of induced by ) is a connected union of paths from , which makes a tree itself. For any , the tree contains every , and as is a tree it also contains the path which connects and . That is, contains every vertex in .
Every finite tree has a set of centroid vertices (either one vertex or two adjacent ones) such that if one deletes a centroid vertex from , then every component tree of the resulting forest has at most half as many vertices as [24, 30]. For any finite tree , one can recursively define a centroid decomposition of to be a rooted tree with the following properties (helpfully visualized in [30]):
-
The root of is a centroid vertex of .
-
If in the centroid has exactly neighbors for any , then in the root has exactly child subtrees , such that for all the subtree is a centroid decomposition of the tree component that contains in the forest .
Finally, let us define the centroid decomposition height of a finite tree to be the maximum height of any centroid decomposition of . The recursive definition of a centroid decomposition above allows one to prove by induction that (where is the number of vertices), and this bound is tight if is a path and is a power of . However, there are trees that have low centroid decomposition heights despite having many vertices. For example, if is a star, then no matter how many vertices has, as removing a star’s unique centroid (its center vertex) leaves behind a forest of isolated vertices.
Below, we present a recursive protocol based on centroid decomposition for edge agreement in a finite tree . If has at most two vertices, then each party just outputs its input vertex. Otherwise, the parties let be the minimum-index centroid of , and run our 2-graded consensus protocol to either directly output , or to reduce edge agreement in to edge agreement in a component tree of , handled with a recursive instance. The recursion depth is at most since each recursive call represents a step from a vertex to its child in a centroid decomposition of whose height is upper bounded by .
The idea behind when has or more vertices is that either there is a component of that contains every honest input vertex , or there is no such component.
-
In the former case where there is such a component, every honest party runs with the input , outputs from it, lets , and obtains its final output from a recursive instance which it runs with the input . Thus, edge agreement in is reduced to edge agreement in , which the parties reach via .
-
In the latter case where there is no such component, there are some honest inputs and such that either or and are in different components of . So, is on the path which connects and in , which makes it a safe output vertex w.r.t. convex validity. Moreover, if some honest party outputs from for some and either or ’s input is not in , then some but not all of the honest parties have inputs in , which means that is a safe output vertex w.r.t. convex validity as it is incident to the edge that connects with the rest of the tree. With these in mind, we assign each output a behavior such that no matter which two adjacent outputs the parties settle on, they behave in a compatible manner that leads to edge agreement.
Theorem 2.
For any finite tree , suppose the honest parties run with input vertices in . Then, they reach edge agreement in based on their input vertices in at most rounds if they have a common input vertex, and in at most rounds otherwise.
Proof.
Below, we show for any finite tree that if works well (in accordance with the theorem) for every tree such that , then also works well. So, by strong induction on , works well for every finite tree , no matter what is.
In the base case where has at most vertices, the parties reach edge agreement in rounds by outputting their inputs. This is what happens when , as iff is a vertex. For the rest of the proof, suppose has at least vertices, which implies .
Let be the minimum-index centroid vertex of with the neighbors sorted by vertex index, and let be the corresponding tree components of such that contains for all . Observe that is greater than for all , as has some centroid decomposition rooted at , with child subtrees attached to where each subtree is a centroid decomposition of of height . So, our inductive assumption tells us that works well for all .
First, let us consider the simpler scenario, which is when there exists some such that the subtree contains every honest input vertex. In this scenario, the honest parties all run with the input , and thus all output from it. Then, each honest party sets , runs a common instance of with the other parties where its input is , and obtains its final output from this recursive instance. Therefore, edge agreement in follows from edge agreement in , which the parties reach via . The round complexity of here is at most that of and added together; which is always at most , and is at most if the honest parties run (and thus ) with a common input. Note that the honest parties do not output on Line 21 in this scenario since none of them obtain the grade from , which means that none of them multicast CENTER and thus that none of them receive the message CENTER from parties.
Now, let us consider the more complicated scenario where none of the subtrees contains every honest input vertex. Then, there exist some distinct honest inputs and such that either , or and are in different components of . In either case, is on the path that connects and in , which means that is in the convex hull of the honest inputs. In addition, if for some an honest party outputs from and either or ’s input is not in , then some but not all of the honest parties have inputs in (the “some” part by ’s intrusion tolerance and the “not all” part by either ’s grade being below or by ’s input not being in ), and this places inside the convex hull of the honest inputs since is on every path in that connects the honest inputs in with the honest inputs outside . With these in mind, let us consider all the ways a execution can go, depending on the honest parties’ outputs.
-
It could happen that the honest parties all output or from for some , with at least one outputting . This situation is similar to the one we considered previously, except for the fact that some honest parties (those with inputs outside and those with the grade ) set instead of setting . By Proposition 1, them doing this does not impact convex validity, as the convex hull of the honest input vertices is a superset of the convex hull of . So, edge agreement in follows from edge agreement in (in at most rounds), because after running , the honest parties all run with safe inputs in and all obtain their final outputs from . Again in this case, the parties do not output on Line 21 since none of them multicast CENTER.
-
It could happen that the honest parties all obtain outputs in . Then, every honest party outputs , either directly on Line 9 or Line 15 after outputting from , or even earlier by receiving CENTER messages. In either case, the honest parties reach exact agreement on the safe vertex , in at most rounds.
-
Finally, it could happen that the honest parties all output or from for some , with at least one outputting . Then, every honest party that runs does so with the tree set to and with the input vertex . For the honest parties that output from , this follows from Line 11 and Line 12. Meanwhile, for an honest party that outputs and thus sets on Line 17 upon receiving the message from parties; this follows from being equal to due to every honest KVAL message being on and this making the only value on which a party can receive KVAL messages. From all of these, we conclude that the honest parties can only output the safe vertex (on Line 15 or 21), or output ’s safe neighbor after outputting from , which the honest parties can only run with the input . It remains to show liveness. Observe that since , either honest parties output from , or honest parties output from .
-
–
If the former happens, then honest parties multicast CENTER after outputting from . Hence, after one round following (i.e. rounds after begins), every honest party becomes able to output on Line 21.
-
–
If the latter happens, then honest parties multicast after outputting from . So, after one round following (i.e. rounds after begins), the honest parties all learn and start running with the common input . Every honest party outputs from once rounds have passed, and thus outputs or from in at most rounds.
-
–
Complexity of .
The round complexity of is at most , by Theorem 2. If ’s maximum degree is , then in each of ’s at most recursive iterations the instance is run with inputs in and the KVAL messages carry values in . This means that each iteration costs messages, each of size at most , where the term is due to the iteration ID tags which distinguish different iterations’ messages from each other. So, ’s total message complexity is , and its total communication complexity is bits. Finally, for when we need edge agreement in paths, note that if is a path of length for any .
An Alternative Way.
A recent work has reduced edge agreement in a finite tree to two instances of edge agreement in paths of length [19]. If one uses this reduction with our protocol serving as the path edge agreement protocol, then edge agreement in a finite tree costs rounds, messages and bits of communication. The drawback of using the reduction here is that it can cost rounds even if . For example, the spider tree for multivalued -graded consensus with the input domain (the tree defined in Figure 1’s caption) has vertices, which means that the reduction allows edge agreement in in rounds, while only takes rounds because .
5 Edge Agreement in Infinite Paths
In this section, we achieve edge agreement in the infinite paths and . First, we achieve edge agreement in with a protocol based on exponential search where we again use to repeatedly shrink the agreement domain. Then, we build upon this protocol so that the parties need roughly half as many rounds to reach edge agreement when they have very large inputs. Finally, we upgrade edge agreement in to edge agreement with one initial iteration.
5.1 Edge Agreement in
We begin with a sequence of protocols , with each protocol allowing the parties to reach edge agreement in the infinite path . In , we use to reduce edge agreement in to edge agreement in either the left path , which the parties can reach via , or the right path , which the parties can recursively222Note that one could recast the recursive protocol sequence as a single iterative protocol. reach via . At some point, this recursion ends: When the parties run with inputs in for some , there is eventually some such that in (which recursively appears in ) the parties do not prefer the right path as they have inputs below , and consequently they reach edge agreement in the finite left path .
Theorem 3.
For any positive integer and any , suppose the honest parties run with inputs in . Then, they reach edge agreement in the path based on their inputs in at most rounds if they have the common input and in at most rounds otherwise.
We prove Theorem 3 in the appendix, with a proof similar to the one of Theorem 2. Note that the value in the theorem is not something that the parties need to know to run .
Complexity of .
Consider an execution with the maximum honest input . Let , i.e., let be the least positive integer such that every honest input is below . There is a minimum such that in (recursively a subprotocol of if ), the parties do not set and therefore do not run . So, the execution consists of the instances and the LEFT/CENTER/RIGHT multicasts of , plus the instance of . These total up to messages, each of size due to the message tags since for all one can assign -bit tags to and to its and subprotocols. Meanwhile, the round complexity is at most , by Theorem 3.
5.2 Nearly Halving the Round Complexity
The protocol is based on exponential search, which is a search algorithm to find a target value with approximately checks for different choices of whether or not. Each such check roughly corresponds to a 6-round instance in , and thus takes rounds by the simple fact that . However, it is possible to almost halve the number of checks. The strategy for this, from [6], is to accelerate exponential search by using it to find instead of , and then, knowing that , to run binary search with the lower and upper bounds and to find .
Below, we use an analogous strategy in our protocol for edge agreement in , where we let be any protocol for edge agreement in , and accelerate by using it in a two-stage manner. In , the parties roughly speaking use to agree on some such that the path intersects the convex hull of the honest inputs, with each party with the input wanting to be . Then, each party with an input outside this path adopts a new safe value in the path (the path endpoint closest to its value), and finally the parties run to reach edge agreement in the path. Naturally, we face the issue that does not guarantee agreement on a single , which means that the parties might output different (though adjacent) values from it and therefore behave differently after outputting from . Luckily, by making each party let its input be what it wants to be () rather than what it wants to be, we can ensure that the discrepancy between how each party behaves after outputting from is sufficiently small.
Theorem 4.
Suppose is a live protocol for edge agreement in which for some function takes at most rounds when the honest parties run it with inputs in . Then, is a live protocol for edge agreement in that takes at most rounds when the honest parties run it with inputs in .
We prove Theorem 4 in the appendix, with a proof similar to the one of Theorem 2. Though does not explicitly use graded consensus, it depends on the same core idea as and : The parties reach graded consensus on how to behave, and thus they behave well together. We do not need an actual graded consensus protocol in to implement this idea as the “grades” in are provided directly by , in the form of the value which a party obtains as the remainder when it divides its output by .
With one can obtain a sequence of protocols for edge agreement in , with each protocol corresponding to the algorithm in [6]. Letting be ’s round complexity depending on the maximum honest input , we have and for all . One can show by induction that for all , where and for all .
The protocol above notably takes times as many rounds as , and only times as many rounds as the protocols beyond it. Therefore, in the rest of the paper we use for edge agreement in .
Complexity of .
Consider a execution with the maximum honest input , and let . The initial in costs rounds, messages and bits of communication in total. Then, in ’s remaining rounds, each party runs an instance of . Due to and thus being fully symmetric protocols with balanced communication, each party (with an output that is upper bounded by ) sends messages and bits to the others in . So, we conclude that takes rounds, with messages and bits of communication in total.
5.3 Edge Agreement in
As before, let be a protocol for edge agreement in . Observe that the parties can reach edge agreement in by mirroring their inputs (multiplying them by ), running with their mirrored inputs, and mirroring their outputs. This allows the protocol above for edge agreement in , where the parties run with the input if they have negative inputs and the input otherwise, and afterwards use their outputs to determine how they should run . Note that [23] upgrades agreement in to agreement in similarly, though with byzantine agreement instead of 2-graded consensus.
Theorem 5.
If is a live protocol for edge agreement in , then is a live protocol for edge agreement in .
Complexity.
When the honest parties run with inputs in for some , they run , and then run with inputs upper bounded by . So, the outer shell adds an overhead of rounds, messages and bits of communication to . If , then ’s complexity is rounds, messages and bits of communication.
6 Termination
Our edge agreement and graded consensus protocols do not terminate. They require every honest party to run forever, and lose liveness if any honest party ever halts. Fortunately, there is a simple 3-round quadratic-complexity protocol which can address this shortcoming. We present it in the appendix. It is the same termination procedure as the one on page 18 in [28], with only cosmetic changes. It relies on the fact that edge agreement implies agreement on at most two values, i.e., implies that that for some and everybody outputs or . Note that unlike our other protocols, does not require every honest party to acquire an input.
Theorem 6.
In any execution where the maximum honest message delay is and the honest parties only acquire inputs in some set , if by some time either every honest party acquires an input in or some honest party terminates , then by the time every honest party terminates with an output that is an honest party’s input.
For any edge agreement protocol , there is an edge agreement protocol in which the parties reach edge agreement with and terminate with . In it, the parties run with their inputs, run by using their outputs as their inputs and terminate the whole protocol upon terminating , letting their outputs be their final outputs. The composed protocol inherits ’s agreement and validity properties since each honest output is some honest party’s output. Moreover, if achieves liveness in rounds, then terminates in rounds. This is because after rounds, either every honest has output from and thus acquired a input, or some honest party has terminated . Either way, the honest parties all terminate within rounds of every honest party acquiring a input. Note that some honest parties might terminate before rounds have passed and stop running before everybody outputs from . This might cause to lose its liveness, meaning that some honest parties might never output from and thus never acquire inputs. This is not an issue because if some honest party terminates , then every honest party terminates , even if not every honest party acquires a input.
In , each honest party multicasts one constant-size READY message and at most one message for each honest input . So, the overhead of terminating an edge agreement protocol with is rounds and messages which each carry honest outputs.
Termination for edge agreement in .
If the parties terminate with after reaching edge agreement in with inputs of magnitude at most , then each honest input is an integer in , with an -bit representation. So, for any live protocol for edge agreement in , is a terminating protocol for edge agreement in which costs more rounds, more messages and more bits of communication than .
Termination for edge agreement in trees.
If the parties run to terminate after they reach edge agreement in a tree , then each honest input is a vertex in , with an -bit representation. So, is a terminating version of that costs rounds, messages and bits of communication more than . Note that here does not asymptotically cost more communication than because we have , where is ’s maximum degree. To see why, let for any be the minimum value can have for any tree of maximum degree at most with at least vertices, and observe that for all as removing a centroid of degree at most from a tree with at least vertices creates a forest whose largest component has at least vertices. By induction, this implies for all .
7 Extension to Real Numbers
Termination is harder for approximate agreement in . As approximate agreement in does not entail agreement on two values, alone cannot directly provide termination. So, to achieve approximate agreement in with termination, we reduce it to edge agreement in .
Theorem 7.
For all , -agreement in with the maximum honest input magnitude can be reduced to edge agreement in with the maximum honest input magnitude .
Proof.
We reduce -agreement in with the maximum honest input magnitude to edge agreement in with the maximum honest input magnitude . This reduction implies the theorem since the parties can reach -agreement in by multiplying their inputs by , reaching -agreement, and dividing their outputs by .
Each party rounds its -agreement input to the nearest integer , rounding towards in the case of ties. Then, the parties reach edge agreement in with their rounded integers of magnitude at most , and each party obtains some edge agreement output . For all honest parties and it holds that and that , where and are respectively the indices of the honest parties with the minimum and maximum edge agreement inputs. Observe that this implies for all honest .
Afterwards, each party uses its 2-agreement input to convert into its -agreement output by letting if , and otherwise. That is, obtains by moving from towards its input by a distance of at most . For all honest and it holds that , which implies validity, and that , which implies -agreement.
As we can achieve edge agreement in in rounds with messages and bits of communication, the reduction enables -agreement in in rounds with messages and bits of communication. Note that here is (as always in this paper) not a parameter which must be known in advance, but a dynamic value that depends on the honest parties’ inputs.
Our reduction allows the parties to reach -agreement in by only sending each other discrete messages. So, it allows approximate agreement without any value rounding errors. In contrast, protocols where the parties send values in [14, 1, 21, 5] must in order to avoid rounding errors assume that the inputs in fit -bit strings, with affecting complexity.
Future Work.
It remains open to design a protocol for -agreement in that tolerates faults with quadratic communication in rounds, where is the honest input spread. Our protocol takes rounds, where possibly , while [1] takes rounds but requires cubic communication. In fact, this task is open even for the synchronous setting. The classical synchronous protocol in [14] takes as many rounds as the adversary wants since its complexity scales with the the spread of all inputs, including byzantine ones. Solving this issue remains open, especially in the asynchronous setting where a new approach seems necessary.
References
- [1] Ittai Abraham, Yonatan Amit, and Danny Dolev. Optimal resilience asynchronous approximate agreement. In Proceedings of the 8th International Conference on Principles of Distributed Systems, OPODIS ’04, pages 229–239, Berlin, Heidelberg, 2004. Springer-Verlag. doi:10.1007/11516798_17.
- [2] Ittai Abraham, T-H. Hubert Chan, Danny Dolev, Kartik Nayak, Rafael Pass, Ling Ren, and Elaine Shi. Communication complexity of byzantine agreement, revisited. In Proceedings of the 2019 ACM Symposium on Principles of Distributed Computing, PODC ’19, pages 317–326, New York, NY, USA, 2019. Association for Computing Machinery. doi:10.1145/3293611.3331629.
- [3] Nicolas Alhaddad, Sourav Das, Sisi Duan, Ling Ren, Mayank Varia, Zhuolun Xiang, and Haibin Zhang. Balanced byzantine reliable broadcast with near-optimal communication and improved computation. In Proceedings of the 2022 ACM Symposium on Principles of Distributed Computing, PODC ’22, pages 399–417, New York, NY, USA, 2022. Association for Computing Machinery. doi:10.1145/3519270.3538475.
- [4] Hagit Attiya and Jennifer L. Welch. Multi-Valued Connected Consensus: A New Perspective on Crusader Agreement and Adopt-Commit. In 27th International Conference on Principles of Distributed Systems (OPODIS 2023), volume 286 of Leibniz International Proceedings in Informatics (LIPIcs), pages 6:1–6:23, Dagstuhl, Germany, 2024. Schloss Dagstuhl – Leibniz-Zentrum für Informatik. doi:10.4230/LIPIcs.OPODIS.2023.6.
- [5] Akhil Bandarupalli, Adithya Bhat, Saurabh Bagchi, Aniket Kate, Chen-Da Liu-Zhang, and Michael K. Reiter. Delphi: Efficient Asynchronous Approximate Agreement for Distributed Oracles. In 2024 54th Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN), pages 456–469, Los Alamitos, CA, USA, June 2024. IEEE Computer Society. doi:10.1109/DSN58291.2024.00051.
- [6] Jon Louis Bentley and Andrew Chi-Chih Yao. An almost optimal algorithm for unbounded searching. Information Processing Letters, 5(3):82–87, 1976. doi:10.1016/0020-0190(76)90071-5.
- [7] Erica Blum, Jonathan Katz, and Julian Loss. Synchronous consensus with optimal asynchronous fallback guarantees. In Theory of Cryptography — TCC 2019, Cham, Switzerland, 2019. Springer International Publishing. doi:10.1007/978-3-030-36030-6_6.
- [8] Gabriel Bracha. Asynchronous byzantine agreement protocols. Information and Computation, 75(2), 1987. doi:10.1016/0890-5401(87)90054-X.
- [9] Jing Chen and Silvio Micali. Algorand: A secure and efficient distributed ledger. Theor. Comput. Sci., 777(C):155–183, July 2019. doi:10.1016/j.tcs.2019.02.001.
- [10] B. A. Coan. A compiler that increases the fault tolerance of asynchronous protocols. IEEE Trans. Comput., 37(12):1541–1553, December 1988. doi:10.1109/12.9732.
- [11] Andrei Constantinescu, Diana Ghinea, Roger Wattenhofer, and Floris Westermann. Convex Consensus with Asynchronous Fallback. In 38th International Symposium on Distributed Computing (DISC 2024), volume 319 of Leibniz International Proceedings in Informatics (LIPIcs), pages 15:1–15:23, Dagstuhl, Germany, 2024. Schloss Dagstuhl – Leibniz-Zentrum für Informatik. doi:10.4230/LIPIcs.DISC.2024.15.
- [12] Giovanni Deligios and Mose Mizrahi Erbes. Closing the efficiency gap between synchronous and network-agnostic consensus. In Advances in Cryptology – EUROCRYPT 2024, pages 432–461, Cham, 2024. Springer Nature Switzerland. doi:10.1007/978-3-031-58740-5_15.
- [13] D. Dolev and H. R. Strong. Authenticated algorithms for byzantine agreement. SIAM Journal on Computing, 12(4):656–666, 1983. doi:10.1137/0212045.
- [14] Danny Dolev, Nancy A. Lynch, Shlomit S. Pinter, Eugene W. Stark, and William E. Weihl. Reaching approximate agreement in the presence of faults. J. ACM, 33(3):499–516, May 1986. doi:10.1145/5925.5931.
- [15] Danny Dolev and Rüdiger Reischuk. Bounds on information exchange for byzantine agreement. J. ACM, 32(1):191–204, January 1985. doi:10.1145/2455.214112.
- [16] Maya Dotan, Gilad Stern, and Aviv Zohar. Validated byzantine asynchronous multidimensional approximate agreement, 2022. doi:10.48550/arXiv.2211.02126.
- [17] Michael J. Fischer, Nancy A. Lynch, and Michael S. Paterson. Impossibility of distributed consensus with one faulty process. J. ACM, 32(2):374–382, April 1985. doi:10.1145/3149.214121.
- [18] Matthias Fitzi, Chen-Da Liu-Zhang, and Julian Loss. A new way to achieve round-efficient byzantine agreement. In Proceedings of the 2021 ACM Symposium on Principles of Distributed Computing, PODC ’21, pages 355–362, New York, NY, USA, 2021. Association for Computing Machinery. doi:10.1145/3465084.3467907.
- [19] Marc Fuchs, Diana Ghinea, and Zahra Parsaeian. Brief announcement: Towards round-optimal approximate agreement on trees. In Proceedings of the ACM Symposium on Principles of Distributed Computing, PODC ’25, pages 54–57, New York, NY, USA, 2025. Association for Computing Machinery. doi:10.1145/3732772.3733555.
- [20] Diana Ghinea, Vipul Goyal, and Chen-Da Liu-Zhang. Round-optimal byzantine agreement. In Advances in Cryptology – EUROCRYPT 2022, pages 96–119, Cham, 2022. Springer International Publishing. doi:10.1007/978-3-031-06944-4_4.
- [21] Diana Ghinea, Chen-Da Liu-Zhang, and Roger Wattenhofer. Optimal synchronous approximate agreement with asynchronous fallback. In Proceedings of the 2022 ACM Symposium on Principles of Distributed Computing, PODC ’22, pages 70–80, New York, NY, USA, 2022. Association for Computing Machinery. doi:10.1145/3519270.3538442.
- [22] Diana Ghinea, Chen-Da Liu-Zhang, and Roger Wattenhofer. Multidimensional approximate agreement with asynchronous fallback. In Proceedings of the 35th ACM Symposium on Parallelism in Algorithms and Architectures, SPAA ’23, pages 141–151, New York, NY, USA, 2023. Association for Computing Machinery. doi:10.1145/3558481.3591105.
- [23] Diana Ghinea, Chen-Da Liu-Zhang, and Roger Wattenhofer. Communication-optimal convex agreement. In Proceedings of the ACM Symposium on Principles of Distributed Computing, PODC ’25, pages 39–49, New York, NY, USA, 2025. Association for Computing Machinery. doi:10.1145/3732772.3733551.
- [24] Camille Jordan. Sur les assemblages de lignes. Journal für die reine und angewandte Mathematik, 70:185–190, 1869. URL: http://eudml.org/doc/148084.
- [25] Simon Holmgaard Kamp. A new way to achieve round-efficient asynchronous byzantine agreement. Cryptology ePrint Archive, Paper 2025/143, 2025. URL: https://eprint.iacr.org/2025/143.
- [26] Hammurabi Mendes, Maurice Herlihy, Nitin Vaidya, and Vijay K. Garg. Multidimensional agreement in byzantine systems. Distrib. Comput., 28(6):423–441, December 2015. doi:10.1007/s00446-014-0240-5.
- [27] Mose Mizrahi Erbes and Roger Wattenhofer. Brief Announcement: Asynchronous Approximate Agreement with Quadratic Communication. In Dariusz R. Kowalski, editor, 39th International Symposium on Distributed Computing (DISC 2025), volume 356 of Leibniz International Proceedings in Informatics (LIPIcs), pages 61:1–61:7, Dagstuhl, Germany, 2025. Schloss Dagstuhl – Leibniz-Zentrum für Informatik. doi:10.4230/LIPIcs.DISC.2025.61.
- [28] Mose Mizrahi Erbes and Roger Wattenhofer. Quit-Resistant Reliable Broadcast and Efficient Terminating Gather. In 28th International Conference on Principles of Distributed Systems (OPODIS 2024), volume 324 of Leibniz International Proceedings in Informatics (LIPIcs), pages 15:1–15:22, Dagstuhl, Germany, 2025. Schloss Dagstuhl – Leibniz-Zentrum für Informatik. doi:10.4230/LIPIcs.OPODIS.2024.15.
- [29] Thomas Nowak and Joel Rybicki. Byzantine Approximate Agreement on Graphs. In 33rd International Symposium on Distributed Computing (DISC 2019), volume 146 of Leibniz International Proceedings in Informatics (LIPIcs), pages 29:1–29:17, Dagstuhl, Germany, 2019. Schloss Dagstuhl – Leibniz-Zentrum für Informatik. doi:10.4230/LIPIcs.DISC.2019.29.
- [30] A simple introduction to centroid decomposition. A Simple Blog, 2020. Accessed: 2025-08-15. URL: https://robert1003.github.io/2020/01/16/centroid-decomposition.html.
Appendix A Graded Consensus Protocols
In this section, we design a family of -graded consensus protocols that support inputs in for any public length parameter . The complexity of each protocol is rounds, messages and bits of communication. To obtain these protocols we begin with the 3-round , and then for all obtain by grade-doubling in 3 rounds. While we only use in this paper, note that grades above 2 can also be useful, as -graded consensus forms the “expand” part of the “expand-and-extract” paradigm of achieving byzantine agreement with an error probability [18].
As -graded consensus is a special case of edge agreement with the centroid decomposition height (see Figure 1), our edge agreement protocol is also a -graded consensus protocol, but one that takes up to rounds. The more restricted definition of -graded consensus allow us to achieve it in rounds instead. This is the round complexity of the binary -graded consensus protocol in [5], and it is for all lower than the round complexity of any previous multivalued -graded consensus protocol which we know of that tolerates faults with perfect security. Note that -graded consensus can be achieved in less rounds than if ( rounds [14, 4]) or if the parties can use a cryptographic setup ( rounds, [25]). If in our edge agreement protocols we replaced with a faster -round -graded consensus protocol, then our edge agreement protocols would become times faster, excluding some constant round complexity terms that would not change.
A.1 1-Graded Consensus
Below is our live 3-round multivalued 1-graded consensus protocol .
This protocol is based on the 4-round protocol in [12]. Our addition is the list of sets , which does not have. While according to a party would output upon observing that for some , in a party outputs upon observing that . As the parties fill their sets more readily than their sets (due to Line 7 having a weaker condition than Line 11), the sets let us shave off one round.
Theorem 8.
is a secure -round -graded consensus protocol with liveness.
Proof.
The simplest property is intrusion tolerance. It follows from the fact that if an honest party outputs for any , then is the party’s input, which makes it an honest input.
Agreement is also simple. Suppose there are two honest parties and who respectively output and . Then, has received proposals on , while has received proposals on . Hence, there are parties, or at least one honest party, who have sent a proposal on and a proposal on . This implies that because an honest party can only propose one value. The reason why this is true is that an honest party only proposes a value when it adds a bit to one of its sets and after doing so observes that , which can happen only once.
For validity, suppose the honest parties have a common input . In this case, they echo (multicast ), and they do not echo since they do not receive echoes on values other than . For all , since no honest party echoes or a string with the bit , the bit is the only bit that any honest party can add to or . Consequently, an honest party can neither output on Line 10 nor propose anything other than . This means that an honest party can only output after receiving proposals on , which leads to the party outputting since it has the input .
Finally, for liveness in 3 rounds, suppose that by some time every honest party acquires its input and thus echoes it. We show via case analysis that every honest party outputs by the time , where is the maximum honest message delay that the adversary causes.
-
1.
The easier case is if there is no input that honest parties have. Then, by the time , every honest party receives echo messages on inputs that are not its own, and therefore becomes able to output .
-
2.
Suppose instead that some is the input of honest parties. By the time , all the honest parties with inputs other than receive echoes on and thus echo . Then, by the time , for each each honest party receives echoes that are on or (which has the bit ), and thus adds to . So, by the time , either every honest party observes that for all , or some honest party obtains . In the former case, the honest parties all propose , which by the time leads to them all receiving proposals on and thus becoming able to output or . In the latter case, the honest party with has by the time for both bits received echo messages on or on strings with the bit from parties ( or more of which are honest). Hence, by the time , for both bits every honest party receives from honest parties echoes on or on strings with the bit , which means that obtains and becomes able to output .
Complexity.
The round complexity is , as proven above. The message complexity is as each party multicasts at most messages (an echo on , an echo on its input and a proposal), and the communication complexity is bits. Note that the communication is balanced evenly between the parties: Each party sends messages and bits to the others.
A.2 Grade Doubling
We achieve grade-doubling with a proposal protocol we call . In proposal, each party acquires an input in an input domain , and outputs a set of size or . To work properly, a proposal protocol requires there to exist a set of size (which the parties might not know in advance) such that the honest parties only acquire inputs in . If there exists such a set , a proposal protocol achieves liveness with the following safety properties:
-
agreement: If and are honest output sets, then .
-
validity: For every honest output set , every is an honest party’s input.
With binary inputs, proposal is equivalent to binary 1-graded consensus. Suppose the parties run a proposal protocol with inputs in . If they run it with a common input bit then they all output from it, and otherwise for some bit they each output or from it. These output guarantees are exactly those of binary 1-graded consensus when we map the proposal outputs to the 1-graded consensus outputs . However, when there are more than two possible inputs, a binary 1-graded consensus protocol cannot be used, whereas a proposal protocol still works with output guarantees comparable to those of 1-graded consensus as long as the honest parties happen to run it with at most two inputs and , even if the parties with the input do not know what is and vice versa.
Our 3-round proposal protocol is based on the 4-round protocol in [12], which is in turn based on the protocol in [7]. Again, we shave off one round. While according to ’s design a party would need to receive echoes on a value to add to its set , below in the party adds to after receiving echoes on . This change makes it easier for to add values to , obtain and output .
Note that using proposal to double grades is not a new invention. The BinAA protocol in [5] essentially uses proposal (therein called weak binary value broadcast) for this purpose.
Theorem 9.
is a secure 3-round proposal protocol with liveness.
Proof.
Below, we assume that there exists a set such that the honest parties only acquire inputs in . Without this, the agreement and liveness properties would be lost.
If an honest party echoes a value , then must be some honest party’s input. Otherwise, the first honest party that echoes would have to have received echoes on , at least one being from an honest party who contradictorily echoed earlier. For any value that is not any honest party’s input, the fact that no honest party echoes means that the honest parties cannot output sets that contain (i.e., that we have validity), due to the following:
-
1.
An honest party cannot add to its set , as would need to receive echoes on to do this. Therefore, if outputs when , then .
-
2.
An honest party cannot propose , as would need to receive echoes on to do this. This means that an honest party cannot output , as would have to receive proposals on to do this.
As for agreement, observe that by the validity property the honest parties can only output non-empty subsets of , as their inputs are all in . So, we only need to show that if some honest parties and respectively output and for some , then . Again, this follows from a traditional quorum intersection argument. If we have such parties and , then has received proposals on , while has received proposals on . So, there are parties, or at least one honest party, who have sent a proposal on and a proposal on . This implies as an honest party can only propose once.
It remains to show liveness in 3 rounds. As we did for , let us suppose that by some time every honest party has acquired an input in and thus echoed it. Let us show that every honest party outputs by the time , where is the maximum honest message delay that the adversary causes. Since there exists some that is at least honest parties’ input, we know that by the time every honest party receives echoes on and thus echoes even if is not its input. Then, by the time , every honest party receives echoes on . Finally, this is followed by one of the two cases below, in both of which the honest parties all output by the time .
-
1.
It could be the case that no honest party proposes any by the time . Then, by the time every honest party proposes after receiving echoes on . Consequently, by the time , every honest party receives proposals on , which allows the party to output if it did not output earlier.
-
2.
It could be the case that some honest party proposes some by the time . Then, at the time the party must have received echoes on , with at least of these echoes being from honest parties. Since both and get echoed by at least honest parties by the time , we conclude that by the time every honest party gains the ability to output after it receives echoes on both and and thus adds both and to .
Complexity.
The round complexity is , as proven above. The message complexity is as each party multicasts at most messages (two echoes and one proposal), with each honest party echo/proposal carrying an honest party’s input. Again, the communication is balanced.
With , it is simple to grade-double into . All we need to do is sequentially compose and , and interpret outputs as outputs.
Theorem 10.
For all , is a secure -graded consensus protocol with liveness.
Proof.
Naturally, this theorem follows by induction on . The base case is the protocol , which we have already proven secure. Below, we consider , where we obtain by sequentially composing and .
The honest parties begin by running with their inputs. So, for some honest input and some grade they each output either or from , where if and if . Afterwards, they run with inputs in , and therefore either they all output or from and thus all output or from , or they all output or from and thus all output or from . Either way, achieves liveness, intrusion tolerance and agreement.
If the honest parties run with a common input , then they all run with the input , output from it, run with the input , output from it, and finally output from . Hence, achieves validity as well.
Complexity.
As consists of one 3-round instance followed by sequential 3-round iterations, ’s round complexity is and its message complexity is . When the parties run with -bit inputs, they run with inputs in , and so costs bits of communication. Then, for each they run the iteration with inputs that are -graded consensus outputs in , of size , and so the iteration costs bits of communication. Overall, we see that ’s communication complexity is bits, with the term here also covering the iterations’ ID tags. Note that the communication in is balanced, as both and have balanced communication.
Appendix B The Termination Protocol
Theorem 6.
In any execution where the maximum honest message delay is and the honest parties only acquire inputs in some set , if by some time either every honest party acquires an input in or some honest party terminates , then by the time every honest party terminates with an output that is an honest party’s input.
Proof.
Suppose an honest party outputs some from . Then, has received echoes on , at least one of which is honest. An honest party only echoes a value if the value is its input or it receives echoes on the value (at least one of which is honest), which means that the first honest party who echoed did so because its input is . So, we see that the honest parties can only output honest party inputs from .
As for termination in rounds, let be the maximum honest message delay the adversary causes. We first prove a fact we will use later: If every honest party multicasts READY by some time , then every honest party terminates by the time . To see why, suppose every honest party multicasts READY by some time . At the time , the first honest party who has multicast READY has done so because it has received echoes on some , at least of which are honest. So, by the time every honest party receives honest echoes on , which allows to set if . Moreover, since every honest party multicasts READY by the time , every honest party receives honest READY messages by the time , which allows to terminate by the time with an output .
Now, let us show that if an honest party terminates by some time , then every honest party terminates by the the time . This is because if terminates by the time , it does so after receiving READY from parties, at least of which are honest. Since at least honest parties multicast READY by the time , every honest party receives honest READY messages and therefore multicasts READY by the time , and consequently every honest party terminates by the time .
Finally, suppose that by some time every honest party acquires an input. We want to show that every honest party terminates by the time . If some honest party terminates by the time , then this follows from what we have proven above; so, suppose no honest party terminates by the time . By the time , every honest party echoes its input in , and so there exists some that at least honest parties echo. By the time , every honest party receives echoes on before terminating, and thus echoes even if it has not acquired the input . By the time , every honest party receives echoes on , and thus multicasts READY. Finally, by the time , every honest party terminates .
Appendix C Skipped Proofs
Theorem 3.
For any positive integer and any , suppose the honest parties run with inputs in . Then, they reach edge agreement in the path based on their inputs in at most rounds if they have the common input and in at most rounds otherwise.
Proof.
To prove the theorem, we pick any arbitrary , and by induction prove for each (in this order) that is a protocol for edge agreement in the path that takes at most rounds if run with the common input and at most rounds otherwise.
Note that for any , if no honest party obtains the grade from in , then no honest party multicasts CENTER, and thus no honest party outputs on Line 22 upon receiving CENTER from parties. We use this fact in the rest of the proof below.
The induction’s base case is , where each honest party runs with an input . In this base case, the honest parties all input LEFT to , and thus all output from it. Then, each honest party sets , sets , runs with the other parties with the input , and finally lets its output be its final output. So, ’s security follows from ’s security, and takes at most rounds: rounds due to and rounds due to (since is run on a path of length ). However, if the honest parties have a common input, then only takes rounds, and thus takes rounds instead of .
Now, let us consider the cases that might arise when the honest parties run with inputs in for any , with the inductive assumption that provides edge agreement in in at most rounds when run with the common input and at most rounds otherwise.
-
1.
It could be the case that every honest input is less than . This case is identical to the base case above: The honest parties reach edge agreement in at most rounds if they have a common input and in at most rounds otherwise.
-
2.
It could be the case that every honest input is at least . Then, the honest parties all run with the input RIGHT, and thus all output from it. Then, each honest party sets , sets , runs with the other parties for edge agreement in the path with the input , and finally lets its output be its final output. Hence, ’s security follows from ’s security, and takes at most rounds: rounds due to the initial , and rounds due to . The last equality here follows from the fact that .
-
3.
The most challenging case is when some honest inputs are below , while others or not. In this case, the parties run with different inputs, and so for some they either all output or from , or all output or from . Below, we say that the corresponding protocol for the graded consensus value is , while the corresponding protocol for is .
-
(a)
The case where the parties output or from for some is like the two cases we considered above where they all output from , except for that some honest parties run the corresponding protocol with the input while some others run it with the input . As some honest inputs are below while others or not, is in the convex hull of the honest inputs, which means that some honest parties switching their inputs to it does not impact convex validity. So, the honest parties reach edge agreement in at most rounds by running in rounds and then running the corresponding protocol in at most rounds.
-
(b)
If the honest parties all output or from for some , then every honest party sets , which ensures that the honest parties can only run or with the input and thus only output from them. Hence, an honest party that outputs from can only output the valid value , no matter if it outputs on Line 12, 17, 20 or 22. What remains to show is liveness. For this, observe that since , there are either honest parties that output from , or honest parties that output from .
-
(i)
In the former case, the honest parties that output from multicast CENTER, and so, after one round (i.e. rounds after begins) every honest party becomes able to output on Line 22.
-
(ii)
In the latter case, the honest parties that output from multicast before running the corresponding protocol, and this allows the honest parties that output from to also set and run the corresponding protocol, albeit with one additional round of delay compared to the parties that output from . Therefore, every honest party that does not output on Line 22 eventually outputs by outputting this from the corresponding protocol. The corresponding protocol (which the honest parties run with the common input ) is either , which takes at most rounds, or , which takes at most rounds. So, every honest party outputs in at most rounds. Here, the first rounds are due to , the following round is due to the honest parties that output from needing one extra round to learn , and the final rounds are due to the corresponding protocol.
-
(i)
-
(a)
Theorem 4.
Suppose is a live protocol for edge agreement in which for some function takes at most rounds when the honest parties run it with inputs in . Then, is a live protocol for edge agreement in that takes at most rounds when the honest parties run it with inputs in .
Proof.
Let , let , and let . Observe that for every honest party and that if the maximum honest input is . The honest parties run with inputs in , and so they output adjacent integers in from it, in at most rounds.
If , then the honest parties all run with the common input , and thus they all output from it. Consequently, each honest party sets and obtains its final output from a common instance of which it runs with the input . Edge agreement thus follows from , in more rounds.
For the rest of the proof, we assume . Observe that the boundary values and arise from some honest inputs being such that and . These equalities respectively imply and , which means that every integer in is in the convex hull of the honest parties’ inputs.
When an honest party outputs from , it lets if , and lets otherwise. Let us show that in every possible case chooses a valid ; that is, sets to a value which is inside the convex hull of the honest inputs. If , then , and there are three cases we must consider: If then is valid since is between the valid values and , if then is valid since is between the valid values and , and finally if then is valid as well. Meanwhile, if , then by we have , which makes valid.
Convex validity follows from the fact that every honest party either directly outputs the valid value or obtains its output from a instance for which the honest parties can only acquire valid inputs. Note that the honest parties do not run with out-of-range inputs: The value which a party inputs to if or if is in range for both and , and the value which a party inputs to if is in-range as well.
The initial guarantees that there exists some where and such that every honest party outputs either or from it. Based on this, let us prove the edge agreement and liveness properties of via case analysis on .
-
1.
If , then the honest parties all run with in-range valid inputs, and obtain their final outputs from it. Edge agreement in thus follows from , in more rounds.
-
2.
If , then the honest parties all run with the common input , and thus all output from it in rounds. The honest parties that have output from after they output from , while those that have output directly after they output from .
-
3.
If , then every honest party has , which leads to it directly outputting after it outputs from . The fact that the honest parties with run while those with run is not an issue as none of the honest parties care about their outputs.
-
4.
If , then the honest parties run with the common input , and thus all output from it in rounds. The honest parties that have output from after they output from , while those that have output directly after they output from .
-
5.
If , then every honest party (both if and if ) runs with an in-range valid input, and obtains its final output from it. Edge agreement thus follows from , in more rounds.
Note that in all the cases above, takes at most rounds after . Hence, takes at most rounds. This is the round complexity stated in the theorem since by definition.
Theorem 5.
If is a live protocol for edge agreement in , then is a live protocol for edge agreement in .
Proof.
If the honest parties all have inputs in , then every honest party runs with the input , outputs from , lets , runs with the input , and finally outputs from when it outputs from . Thus, ’ security follows from ’s security.
Similarly, if the honest parties all have negative inputs, then every honest party runs with the input , outputs from , lets , runs with the input , and finally outputs from when it outputs from . Again, ’s security follows from ’s security. This is because by symmetry behaves as an edge agreement protocol for when the parties mirror (sign-flip) their inputs for it and outputs from it.
Finally, there is the case where some honest parties have negative inputs while others do not. In this case, the honest parties run with different inputs, and so for some they either all output or from , or all output or from . The case where they all output or from is similar to the cases above, though with some honest parties running with the input rather than . As is in the convex hull of the honest inputs, this does not impact validity, and the honest parties safely reach edge agreement via , with input/output mirroring if and without mirroring if . Meanwhile, if the honest parties all output or from , then they all run with the input . So, the honest parties with the output output from after outputting from , while those with the output output from directly without caring about their outputs.
