Abstract 1 Introduction 2 Model and definitions 3 Detailed description of our results 4 Lower Bound for Consensus 5 Conclusion References

Agreement Tasks in Fault-Prone Synchronous Networks of Arbitrary Structure

Pierre Fraigniaud ORCID Institut de Recherche en Informatique Fondamentale (IRIF), CNRS, Université Paris Cité, France Minh Hang Nguyen ORCID Institut de Recherche en Informatique Fondamentale (IRIF), CNRS, Université Paris Cité, France Ami Paz ORCID Laboratoire Interdisciplinaire des Sciences du Numérique (LISN), CNRS, Université Paris-Saclay, France
Abstract

Consensus is arguably the most studied problem in distributed computing as a whole, and particularly in the distributed message-passing setting. In this latter framework, research on consensus has considered various hypotheses regarding the failure types, the memory constraints, the algorithmic performances (e.g., early stopping and obliviousness), etc. Surprisingly, almost all of this work assumes that messages are passed in a complete network, i.e., each process has a direct link to every other process. A noticeable exception is the recent work of Castañeda et al. (Inf. Comput. 2023) who designed a generic oblivious algorithm for consensus running in radius(G,t) rounds in every graph G, when up to t nodes can crash by irrevocably stopping, where t is smaller than the node-connectivity κ of G. Here, radius(G,t) denotes a graph parameter called the radius of G whenever up to t nodes can crash. For t=0, this parameter coincides with radius(G), the standard radius of a graph, and, for G=Kn, the running time radius(Kn,t)=t+1 of the algorithm exactly matches the known round-complexity of consensus in the clique Kn.

Our main result is a proof that radius(G,t) rounds are necessary for oblivious algorithms solving consensus in G when up to t nodes can crash, thus validating a conjecture of Castañeda et al., and demonstrating that their consensus algorithm is optimal for any graph G. We also extend the result of Castañeda et al. to two different settings: First, to the case where the number t of failures is not necessarily smaller than the connectivity κ of the considered graph; Second, to the k-set agreement problem for which agreement is not restricted to be on a single value as in consensus, but on up to k different values.

Keywords and phrases:
Consensus, set-agreement, fault tolerance, crash failures
Funding:
Pierre Fraigniaud: Additional support from ANR projects DUCAT (ANR-20-CE48-0006), ENEDISC, and QuDATA (ANR-18-CE47-0010).
Minh Hang Nguyen: Additional support from ANR projects DUCAT (ANR-20-CE48-0006), TEMPORAL (ANR-22-CE48-0001), and ENEDISC, and by the European Union’s Horizon 2020 program H2020‑MSCA ‑COFUND‑2019 Grant agreement n° 945332.
Copyright and License:
[Uncaptioned image] © Pierre Fraigniaud, Minh Hang Nguyen, and Ami Paz; licensed under Creative Commons License CC-BY 4.0
2012 ACM Subject Classification:
Theory of computation Distributed algorithms
Related Version:
Full Version: https://arxiv.org/pdf/2410.21538 [16]
Acknowledgements:
The authors thank Stephan Felber, Mikaël Rabie, Hugo Rincon Galeana, and Ulrich Schmid for fruitful discussions on this paper.
Editors:
Olaf Beyersdorff, Michał Pilipczuk, Elaine Pimentel, and Nguyễn Kim Thắng

1 Introduction

For t0, the standard synchronous t-resilient message-passing model assumes n2 nodes labeled from 1 to n, and connected as a clique, i.e., as a complete graph Kn. Computation proceeds as a sequence of synchronous rounds, during which every node can send a message to each other node, receive the message sent by each other node, and perform some local computation. Up to t nodes may crash during the execution of an algorithm. When a node v crashes at some round r1, it stops functioning after round r and never recovers. Moreover, some (possibly all) of the messages sent by v at round r may be lost, that is, when v crashes, messages sent by v at round r may reach some neighbors, while other neighbors of v may not hear from v at round r. This model has been extensively studied in the literature (see, e.g., [2, 18, 23, 27]). In particular, it is known that consensus can be solved in t+1 rounds in the t-resilient model [13], and this is optimal for every t<n1 as far as the worst-case complexity is concerned [1, 13].

It is only very recently that the synchronous t-resilient message-passing model has been extended to the setting in which the complete communication graph Kn is replaced by an arbitrary communication graph G (see [4, 8]). Specifically, the graph G is fixed, but arbitrary, and the concern is to design algorithms for G. It was proved in [4] that if the number of failures is smaller than the connectivity of the graph, i.e., if t<κ(G), then consensus in G can be solved in radius(G,t) rounds in the t-resilient model, where radius(G,t) generalizes the standard notion of graph radius to the scenarios in which up to t nodes may fail by crashing. For t=0, radius(G,0) is the standard radius of the graph G. For the complete graph Kn, the radius(Kn,t) upper bound from [4] coincides with the seminal t+1 upper bound for consensus in Kn.

To get an intuition of radius(G,t), let us consider the case of the n-node cycle Cn, for n3. We have κ(Cn)=2, so we assume t1. The radius of Cn is n2, i.e., radius(Cn,0)=n2. For t=1, let v be the node that crashes. We have radius(Cn,1)n2, which is the distance between the two neighbors of v in Cn if v crashes “cleanly” at the first round, preventing them to communicate directly through v. However, we actually have radius(Cn,1)=n1. Indeed, v may crash at the first round, yet be capable to send a message to one of its neighbors, and this message needs n2 additional rounds to reach the other neighbor of v. That is, computing radius(G,t) requires to take into account not only which nodes crash, but when and how they are crashing – by “how”, it is meant that, for a node v crashing at some round r, to which neighbors they still succeed to communicate at this round, and to which they fail to communicate.

Importantly, the algorithm of [4] is oblivious, that is, the output of a node after radius(G,t) rounds is solely based on the set of pairs (node-identifier, input-value) collected by that node during radius(G,t) rounds (and not, e.g., from whom, when, and how many times it received each of these pairs). There are many reasons why to restrict the study to oblivious algorithms. Among them, oblivious algorithms are simple by design, which is desirable for their potential implementation. Moreover, they are known to be efficient, as illustrated by the case of the complete graphs in which optimal solutions can be obtained thanks to oblivious algorithms. As far as this paper is concerned (and maybe also as far as [4] is concerned) obliviousness is highly desirable for the design of generic solutions, that is “meta-algorithms” that apply to each and every graph G. In such algorithms, every node forwards pairs (node-identifier, input-value) during a prescribed number of rounds (e.g., during radius(G,t) rounds in the generic algorithm from [4]), and then decides on an output value according to a simple function of the set of input values received during these rounds, without having to track of the sequence of rounds at which each pair was received, and from which neighbor(s). Last but not least, intermediate nodes do not need to send complex information about the history of each piece of information transmitted during the execution, hence reducing the bandwidth requirement of the algorithms.

1.1 Objective

The question of the optimality of the consensus algorithm performing in radius(G,t) rounds in any fixed graph G for every number tκ(G) of failures was however left open in [4]. It was conjectured in [4] that, for every graph G, and for every 0t<κ(G), no oblivious algorithms can solve consensus in G in less than radius(G,t) rounds, but this was only proved for the specific case of symmetric (a.k.a. vertex-transitive) graphs111A graph G=(V,E) is vertex-transitive if, for every two nodes uv, there exists an automorphism f of G (i.e., a permutation f:VV preserving the edges and the non-edges of G) such that f(u)=v.. Although the class of symmetric graphs includes, e.g., the complete graphs Kn, the cycles Cn, and the d-dimensional hypercubes Qd, a lower bound radius(G,t) for every graph G in this class does not come entirely as a surprise since all nodes of a symmetric graph have the same eccentricity (i.e., maximum distance to any other node, generalized to include crash failures). The fact that all nodes have the same eccentricity implies that they can merely be ordered according to their identifiers for selecting the output value from the received pairs (node-identifier, input-value). Instead, if the graph is not symmetric, a node that received a pair (node-identifier, input-value) after radius(G,t) rounds does not necessarily know whether all the nodes have received this pair, and thus the choice of the output value from the set of received pairs is more subtle. Not only the design of an upper bound is made harder, but it also makes the determination of a strong lower bound more involved. The main question addressed in this paper is therefore the following: For every graph G, and every non-negative integer t<κ(G), is there an oblivious algorithm solving consensus in G in less than radius(G,t) rounds under the t-resilient model (i.e., when up to t nodes may fail by crashing)?

Moreover, the study in [4] let aside the design of a generic (oblivious) algorithm for solving the standard important relaxation of consensus, namely k-set agreement. (Recall that, in k-set agreement, the set of all values outputted by the nodes must be of cardinality at most k.) In fact, several tools developed in [4] do not extend to k-set agreement. Our next step is therefore to question the ability to design a generic algorithm for solving k-set agreement in arbitrary graphs G, for every k>1.

Last but not least, the study in [4] assumed that the number t of failures is smaller that the connectivity κ(G) of the graph G at hand. We question what can be said about the case where the number of failures may be larger, that is when tκ(G), for both consensus and k-set agreement?

1.2 Our Results

We extend the investigation of the t-resilient model in arbitrary graphs, in various complementary directions.

Lower Bounds for Consensus.

We affirmatively prove the conjecture from [4] that their consensus algorithm is indeed optimal (among oblivious algorithms) for every graph G, and not only for symmetric graphs. That is, we show that, for every graph G, no oblivious algorithms can solve consensus in G in less than radius(G,t) rounds under the t-resilient model. This result is achieved by revisiting the notion of information flow graph defined in [4] for fixing some inaccuracies in the original definition. We present a more robust (an accurate) definition of information flow graph, and we provide a characterization of the number of rounds required to solve consensus as a function of some structural property of that graph. With this characterization at hand, we establish the optimality of the algorithm in [4] by showing that radius(G,t) rounds are necessary for the information flow graph to satisfy the desired property required for consensus solvability.

Beyond the Connectivity Threshold.

Inspired by [8], we extend the study of consensus in the t-resilient model in arbitrary graphs to the case where the number t of crash failures is arbitrary, i.e., not necessarily lower than the connectivity κ(G) of the considered graph G. We show that the generic algorithm from [4] can be extended to this framework, at the mere cost of relaxing consensus to impose agreement to hold within each connected component of the graph resulting from removing the faulty nodes from G. Under this somehow unavoidable relaxation, we present extension of the consensus algorithm from [4] to t-resilient models for tκ(G), and express the round complexities of these algorithms in term of a non-trivial extension of the radius notion to disconnected graphs.

Extension to Set Agreement.

Finally, we extend the study of consensus under the t-resilient model in arbitrary graphs to k-set agreement, for an arbitrary fixed k1. We show that, for every integer k1, and every graph G, there exists an oblivious k-set agreement algorithm performing in radius(G,t,k) rounds, where radius(G,t,k) denotes a parameter extending radius(G,t) to the case where k nodes broadcast instead of just one, with the objective that each (non faulty) node receives a pair (node-identifier, input-value) from at least one of these k nodes. This extension holds for every t. For tκ(G) the k-set agreement tasks must however be relaxed similarly to consensus, so that agreement hold within each connected component of the graph separately. Due to lack of space, our results on k-set agreement are not included in this extended abstract, but they can be found in the full version of the paper (see [16]).

1.3 Related Work

Distributed computing in synchronous networks has a long tradition, including the early studies of the message complexity and round complexity of various tasks such as leader election, spanning tree constructions, BFS and DFS traversals, etc. (see, e.g., [2, 23]). The topic has then flourished in the 2000s under the umbrella of the so-called LOCAL and CONGEST models [19, 25], with the study of numerous graph problems such as coloring, maximal independent set, minimum-weight spanning tree, etc.

Distributed computing in synchronous fault-prone networks has also a long history, but it remained for a long time mostly confined to the special case of the message-passing model in the complete networks. That is, n nodes subject to crash or malicious (a.k.a. Byzantine) failures are connected as a complete graph Kn in which every pair of nodes has a private reliable link allowing them to exchange messages. In this setting, a significant amount of effort has been dedicated to narrowing down the complexity of solving agreement tasks such as consensus and, more generally, k-set agreement for k1. This includes in particular the issue of early stopping algorithms whose performances depend on the actual number of failures f experienced during the execution of the algorithm, and not on the upper bound t on the number of failures. We refer to a sequence of surveys on the matter [5, 26, 28].

In the Byzantine case, general communication graphs were studied early on [12], and are still being investigated [20]. In the stop-fault case, on the other hand, it is only recently that this approach has been extended to arbitrary networks, beyond the case of the complete graph Kn [4, 8]. Our paper is carrying on the preliminary investigations in [4], by extending them from consensus to k-set agreement, establishing various lower bounds including one demonstrating the optimality of the consensus algorithm in [4], and extending the analysis to the case where the number of crashes may exceed the connectivity threshold. The original work in [4] has been extended to solving consensus when links are subject to crash failures [8]. Several consensus algorithms were proposed in [8], but their round complexities are expressed as a function of the so-called stretch, defined as the number of connected components of the graph after removing the faulty links, plus the sum of the diameters of the connected components. Instead, the round-complexity of the algorithm in [4] is expressed in term of the radius, which is a more refined measure. Indeed, we show that the upper bound in [4] is tight (no multiplicative constants, nor even additive constants). The consensus algorithms in [8] however extend to the case where failures may disconnect the graph, and the task is then referred to as “disconnected agreement”. Again, the complexities of the algorithms are expressed in term of the stretch, while we shall express the complexity of our local consensus algorithm as a function of the more refined radius parameter. We actually conjecture that our local consensus algorithm is optimal (with no multiplicative nor additive constants) for all t, no matter whether t<κ(G) or tκ(G). On the other hand, some consensus algorithms proposed in [8] are early stopping, but the one with round-complexity close to the stretch of the actual failure pattern is not oblivious, and it uses messages with size significantly larger than the size of the messages in oblivious algorithms.

The case of omission failures has also attracted a lot of attention. In this context, nodes are reliable but messages may be lost. This is modeled as a sequence 𝒮=(Gi)i1 of directed graphs, where Gi captures the connections that are functioning at round i. The oblivious message adversary model allows an adversary to choose each communication graph Gi from a set 𝒢 and independently of its choices for the other graphs. The nodes know the set 𝒢 a priori, but not the actual graph picked by the adversary at each round). We refer to [9, 24, 29] for recent advances in this domain, including solving consensus. We also refer to the heard-of model [6, 7], which bears similarities with the oblivious message adversary model.

The case of transient failures is addressed in the context of self-stabilizing algorithms [14]. As opposed to most distributed algorithms for networks, which start from a given specific initial configuration, self-stabilizing algorithms must be able to start from any initial configuration (which may result from a corruption of the internal variables of the nodes). Under the synchronous scheduler, a self-stabilizing algorithm performs in a sequence of synchronous rounds, just that it must be able to cope with an arbitrary initial state of the system.

Last but not least, we underline the recent trend related to modeling communication between nodes (under the full-information paradigm) as a topological deformation of the input simplicial complex, and the computation (i.e., the decision of each node regarding its output value) as a simplicial map from the deformed input complex to the output simplicial complex [18]. The KNOW-ALL model [3] has been designed as a first attempt to understand the LOCAL model through the lens of algebraic topology. In particular, it was shown that k-set agreement in a graph G known to all the nodes a priori requires r rounds, where r is the smallest integer such that there exists a k-node dominating set in the r-th transitive closure of G. A follow-up work [17] minimized the involved simplicial complexes, and extended the framework to handle graph problems such as finding a proper coloring.

The study of anonymous networks, in which nodes may not be provided with distinct identifiers, and of asynchronous communication and computing, is beyond the scope of this paper, and we merely refer the reader to [10, 11, 15, 21, 22] for recent advances in these domains, as far as computing in (non-necessarily complete) networks is concerned.

2 Model and definitions

In this section, we recall the definition of the (synchronous) t-resilient model for networks, and the graph theoretical notions related to this model, all taken from [4], as well as the consensus algorithm presented there.

2.1 The Model

Let G=(V,E) be an n-node undirected graph, which is also connected and simple (i.e., no multiple edges, nor self-loops). Each node vV is a computing entity modeled as an infinite state machine. The nodes of G have distinct identifiers, which are positive integers. For the sake of simplifying the notations, we shall not distinguish a node v from its identifier; for instance, by “the smallest node” we mean “the node with the smallest identifier”. Initially, every node knows the graph G, that is, it knows the identifiers of all nodes, and how the nodes are connected. The uncertainty is thus not related to the initial structure of the connections, but is only due to the presence of potential failures, in addition to the fact that, of course, every node is not a priori aware of the inputs of the other nodes.

Computation in G proceeds as a sequence of synchronous rounds. All nodes start simultaneously, at round 1. At each round, each node sends a message to each of its neighbors in G, receives the messages sent by its neighbors, and performs some local computation. Each node may however fail by crashing – when a node crashes, it stops functioning and never recover. However, if a node v crashes at round r, it may still send a message to a non-empty subset of its set N(v) of neighbors during round r. For every positive integer t0, the t-resilient model assumes that at most t nodes may crash. A failure pattern is defined as a set

φ={(v,Fv,fv)vF}

where FV is the set of faulty nodes in φ, with 0|F|t, and, for each node vF, we use fv to specify the round at which v crashes, and FvN(v) to specify the non-empty set of neighbors to which v fails to send messages at round fv.

A node vF such that Fv=N(v) is said to crash cleanly in φ (at round fv). All the nodes in VF are the correct nodes in φ. The failure pattern in which no nodes fail is denoted by φ. The set of all failure patterns in which at most t nodes fail is denoted by Φall(t). In any execution of an algorithm in graph G under the t-resilient model, the nodes know t and G, but they do not know in advance to which failure pattern they may be exposed. This absence of knowledge is the source of uncertainty in the t-resilient model.

2.2 Eccentricity, connectivity, and radius

The eccentricity of a node v in G with respect to a failure pattern φ, denoted by ecc(v,φ), is defined as the minimum number of rounds required for broadcasting a message from v to all correct nodes in φ. The broadcast protocol is by flooding, i.e., when a node receives a message at round r, it forwards it to all its neighbors at round r+1. That is ecc(v,φ) is the maximum, taken over all correct nodes v, of the length of a shortest causal path from v to v, where a causal path with respect to a failure pattern φ from a node v to a node v is a sequence of nodes u1,,uq with u1=v, uq=v, and, for every i{1,,q1}, ui+1N(ui), ui has not crashed in φ during rounds 1,,i1, and if ui crashes in φ at round i, i.e., if (ui,Fi,i)φ for some non-empty set FiN(ui), then ui+1Fi.

Note that ecc(v,φ) might be infinite, in case v cannot broadcast to all correct nodes in G under φ. A typical example is when v crashes cleanly at the first round in φ, before sending any message to any of its neighbors. A more elaborate failure pattern φ in which v fails to broadcast is φ={(v,N(v){w},1),(w,N(w),2)} where v crashes at round 1, and sends the message only to its neighbor w, which crashes cleanly at round 2.

The node-connectivity of G, denoted κ(G), is the smallest integer q such that removing q nodes disconnects the graph G (or reduces it to a single node whenever G is the complete graph Kn). The following was established in [4].

Proposition 1 (Lemma 1 in [4]).

For every graph G, every t<κ(G), every node v, and every failure pattern φ in the t-resilient model, ecc(v,φ)< if and only if there exists at least one correct node that becomes aware of the message broadcast from v.

Note that, in particular, thanks to proposition 1, if v is correct then ecc(v,φ)<. Let

Φv={φΦall(t)ecc(v,φ)<}

denote the set of failure patterns in the t-resilient model in which v eventually manages to broadcast to all correct nodes. The t-resilient radius is a key parameter defined in [4]:

Definition 2.

The t-resilient radius of G is radius(G,t)=minvVmaxφΦvecc(v,φ).

2.3 Consensus, oblivious algorithms, and the information flow graph

This section defines consensus, and survey the results in [4] regarding the round-complexity of oblivious consensus algorithms, which uses the notion of information flow graph. Note that this latter notion will be revisited, later in our paper.

2.3.1 Oblivious consensus algorithms

In the consensus problem, every node vV receives an input value xv from a set I of cardinality at least 2, and every correct node must decide on an output value yvI such that (1) yu=yv for every pair {u,v} of correct nodes, and (2) for every correct node vV, there exists uV (not necessarily correct) such that yv=xu.

Assuming that every node uV starts broadcasting the pair (u,xu) at round 1, we let view(v,φ,r) be the view of node v after r0 rounds in failure pattern φ, that is, the set of pairs (u,xu) received by v after r rounds. An algorithm solving consensus is said to be oblivious if the output yv of every correct node v depends only on the set of values received by v during the execution of the algorithm. That is, in an r-round oblivious algorithm executed under failure pattern φ, every node v outputs a value based solely on the set of pairs (u,xu)view(v,φ,r) (and not, say, on when each value was first received, or from which neighbor it was received). The following result was proved in [4].

Proposition 3 (Theorem 2 in [4]).

For every graph G and every t<κ(G), consensus in G can be solved by an oblivious algorithm running in radius(G,t) rounds under the t-resilient model.

That is, consensus can be solved in the minimal time it takes for a fixed node to broadcast in all failure patterns (in which it manages to broadcast). Note that radius(G,t) might be much larger than maxφΦall(t)minvVecc(v,φ). For instance, the radius of the clique Kn is t+1: consider a path (v1,,vt+1) in which v1=v, and, for every i{1,,t}, vi crashes at round i while sending only to vi+1. On the other hand, maxφΦall(t)minvVecc(v,φ)=1 because, for every failure pattern φ, there is a (correct) node v that broadcasts to all correct nodes in a single round. Similarly, the cycle Cn has radius n1, whereas maxφΦall(t)minvVecc(v,φ) is roughly n/2.

The consensus algorithm in [4] works as follows. It selects an ordered set of t+1 nodes s1,,st+1 according to the following rules. Node s1 is a node with smallest eccentricity, i.e., a node that broadcasts the fastest among all nodes. However, there are failure patterns for which s1 fails to broadcast (e.g., if s1 crashes cleanly at round 1). Node s2 is a node that broadcasts the fastest for all failure patterns in which s1 fails to broadcast, that is node s2 is a node that broadcasts the fastest for all failure patterns in Φall(t)Φs1. Similarly, node s3 is a node that broadcasts the fastest for all failure patterns in which s1 and s2 fail to broadcast, that is node s3 is a node that broadcasts the fastest for all failure patterns in Φall(t)(Φs1Φs2). And so on, for every 1<it+1, si is a node that broadcasts the fastest for all failure patterns in

Φall(t)j=1,,i1Φsj.

A key property of the sequence s1,,st+1 defined as above is that, for all 1<it+1, the worst-case broadcast time of si over all failure patterns in

Φall(t)j=1,,i1Φsj

is at most the worst-case broadcast time of si1 over all failure patterns in

Φall(t)j=1,,i2Φsj.

As a consequence, for every i{1,,t+1}, the worst-case broadcast time of si over all failure patterns in Φall(t)j=1,,i1Φsj is at most radius(G,t) rounds.

The algorithm in [4] merely consists of letting all nodes s1,,st+1 broadcast the pairs (si,xsi) by flooding during radius(G,t) rounds. Every node u then selects as output the input xsi of the node si with smallest index i such that the pair (si,xsi) was received by node u. It was shown that this choice guarantees agreement.

2.4 Information flow graph

The lower bound from [4] on the number of rounds for achieving consensus in vertex-transitive graphs used the core notion of information flow digraph. The (directed) graph 𝖨𝖥(G,r) captures the state of mutual knowledge of the nodes at the end of round r1, assuming every node u broadcasts the pair (u,xu) by flooding throughout the graph G, starting at round 1.

  • The vertices of 𝖨𝖥(G,r) are all pairs (v,view(v,r,φ)) for vV and φΦall(t) in which v does not crash in φ during the first r rounds. Note that a same vertex of 𝖨𝖥(G,r) can represent both (v,view(v,r,φ)) and (v,view(v,r,ψ)) if v has the same view after r rounds in φ and ψ.

  • There is an arc from (u,view(u,r,φ)) to (v,view(v,r,φ)) whenever (u,xu)view(v,r,φ), where xu is the input of u.

The connected components of 𝖨𝖥(G,r) play an important role, where by connected component we actually refer to the vertices of a connected component of the undirected graph resulting from 𝖨𝖥(G,r) by ignoring the directions of the arcs. A node vV of the communication graph G=(V,E) is said to dominate a connected component C of 𝖨𝖥(G,r) if, for every vertex (u,view(u,r,φ))C with uv there is a vertex (v,view(v,r,φ))C with an arc from (v,view(v,r,φ)) to (u,view(u,r,φ)) in 𝖨𝖥(G,r). The following result characterizes the round-complexity of consensus in G.

Proposition 4 (Theorem 3 in [4]).

For every graph G=(V,E) and every t<κ(G), consensus in G can be solved by an oblivious algorithm running in r rounds under the t-resilient model if and only if every connected component of 𝖨𝖥(G,r) has a dominating node in V.

It was proved in [4] that, if G is a symmetric graph then no node in V dominates 𝖨𝖥(G,radius(G,t)1). Property 4 immediately implies that consensus in G cannot be solved by an oblivious algorithm running in less than radius(G,t) rounds under the t-resilient model. Their proof, however, holds only for symmetric graphs, and does not extend to general graphs.

Remark.

The definition of the information flow digraph in [4] actually suffers from inconsistencies, and Theorem 3 there is formally incorrect. Roughly, it overlooks the possibility of deciding on an input of a process that already stopped. The “spirit” of the definition and the theorem is nevertheless plausible, and the specific consequences mentioned there are correct. For establishing our lower bound, we had to fix the inaccuracy in the definition of the information flow digraph, and the bugs in the proof of Theorem 3 of [4]. Concretely, we introduce a new information flow graph instead of the digraph of [4], and establish a correct version of Theorem 3 using that definition (cf. Theorem 9). See Section 4 for more details.

3 Detailed description of our results

In this section, we survey our results on consensus in detail, and, as already mentioned before, we refer to the full version [16] for our results on k-set agreement.

3.1 Lower bounds for consensus

We show that the consensus algorithm in [4] is optimal for every graph G, and not only for symmetric graphs. Specifically, we establish the following in Section 4.

Theorem 5.

For every graph G and every t<κ(G), consensus in G cannot be solved in less than radius(G,t) rounds by an oblivious algorithm in the t-resilient model.

This result was conjectured in [4], but only proved to be true for symmetric graphs. The class of symmetric graphs includes cliques, cycles and hypercubes, but remains limited. Moreover, in symmetric graphs, for every two nodes u and v,

ecc(u,Φall(t))=ecc(v,Φall(t))=radius(G,t),

which implies that a naive algorithm for consensus in which every node outputs the input received from the node with smallest identifier performs in radius(G,t) rounds. The fact that radius(G,t) is a tight upper bound for consensus is thus not surprising for the family of symmetric graphs because, essentially, the choice of the t+1 nodes s1,,st+1 defined in Section 2.3.1 does not matter.

Instead, for an arbitrary graph G, two different nodes may have different eccentricities, which may differ by a multiplicative factor 2 at least. As a consequence, the choice of the source nodes s1,,st+1 whose input can be adopted as output by the other nodes matters, as well as the ordering of these nodes (in case a node receives the input of two different source nodes).

3.1.1 A naive lower bound

A naive lower bound for the round-complexity of consensus is the maximum, over all failure patterns, of the time it takes some node to broadcast in the given pattern, obtained by switching the min and max operator in the definition of radius(G,t), i.e.,

maxφΦall(t)minvVecc(v,φ). (1)

Indeed, for every failure pattern φ, even binary consensus under failure pattern φ cannot be solved in less than R(φ)=minvVecc(v,φ) rounds. The proof of this claim is by a standard indistinguishability argument. Specifically, let us assume, for the purpose of contradiction, that there is an algorithm ALG solving consensus in G=(V,E) under failure pattern φ in R(φ)1 rounds. Let us order the nodes of G as v1,,vn arbitrarily. Let us consider the input configuration I0 in which all nodes have input 0. For every i=1,,n, we gradually change the input configuration as follows (see Figure 1).

Figure 1: Input configurations I0,,In of a graph G=(V,E), where V={v1,,vn}.

Since ecc(vi,φ)>R(φ), there exists a node wi that does not receive the input of vi in ALG. Let us then switch the input of vi from 0 to 1, and denote by Ii the resulting input configuration. Note that In is the input configuration in which all nodes have input 1. Note also that, for every i{1,,n}, node wi does not distinguish Ii1 from Ii, and therefore ALG must output the same at wi in both input configurations. Since, for every i{1,,n}, all nodes must output the same value for input configuration Ii, we get that the consensus value returned by ALG for I0 is the same as for In, which contradicts the validity condition.

It was conjectured in [4] that, in the t-resilient model, consensus needs longer time than maxφΦall(t)minvVecc(v,φ), and cannot be solved by an oblivious algorithm in less than radius(G,t) rounds, i.e., the time it takes a fixed node to broadcast. As said before, this conjecture was however proved only for vertex-transitive graphs.

3.1.2 Sketch of proof of Theorem 5

To show that the consensus algorithm in [4] is optimal, i.e., to establish Theorem 5, we use the characterization of Proposition 4. In fact, we first fix the aforementioned bugs in [4] by defining the information flow graph, and then establish Proposition 4, a correct version of their theorem, using this new definition. With this new definition and new proposition at hand, we show that for every graph G=(V,E) and every t<κ(G), there exists a connected component of 𝖨𝖥(G,radius(G,t)1) that has no dominating node in V. To achieve this fact, we show that for every node vV there exists a failure pattern φv such that

ecc(v,φv)radius(G,t),

with some additional desirable properties. Then, we define a notion of successor of any failure pattern satisfying these desirable properties, which satisfies two key features.

  • First, a failure pattern and its successor are in the same connected component of 𝖨𝖥(G,radius(G,t)1). Here we abuse terminology since the vertices of the information flow graph are not failure patterns, but pairs (node, view). What we formally mean is that the two subgraphs of 𝖨𝖥(G,radius(G,t)1) induced by all the views in the two failures patterns are both in the same connected component of 𝖨𝖥(G,radius(G,t)1).

  • Second, for every node vV, there exists a sequence of failure patterns φ0,φ1,,φ such that φ0=φv, φ=φ (the failure pattern in which no failures occur), and for every i{0,,1}, φi+1 is the successor of φi.

It follows from these two features that, for every node vV, φv and φ are in the same connected component of 𝖨𝖥(G,radius(G,t)1), namely the connected component of 𝖨𝖥(G,radius(G,t)1) containing φ. Let C be this connected component. For every node vV, since ecc(v,φv)radius(G,t), we have that v does not dominate C. Therefore, no nodes dominate C, and our new Proposition 4 thus implies that no oblivious algorithm can solve consensus in less than radius(G,t) rounds.

3.2 Beyond the connectivity threshold

The algorithm from [4] for consensus in the t-resilient model is under the assumption that t<κ(G) in graph G, that is, the number of failing nodes is (strictly) smaller than the connectivity of the graph. This assumption is motivated by the mere observation that a set of κ(G) nodes that, e.g., fails cleanly at the very first round, might disconnect the graph G, preventing tasks such as consensus to be solved. We show that, by slightly relaxing consensus and set-agreement, one can still consider the case where tκ(G), in a meaningful way, in the sense that if the t failing nodes do not disconnect the graph, then the standard consensus and set agreement tasks are solved.

3.2.1 Local consensus

For any given failure pattern φ, let comp(G,φ) be the set of connected components of G resulting by removing from G all nodes that fail in φ. If tκ(G), then the nodes in a connected component Ccomp(G,φ) of G may never hear from the nodes in a connected component CC, and vice versa, regardless of the number of rounds. To study consensus and k-set agreement for tκ(G), we merely relax the agreement condition: Agreement must hold component-wise, i.e., for each connected component separately, in the spirit of [8].

In other words, under φ, for any connected components C and C of comp(G,φ) all nodes in C must agree (on a single value for consensus, or on at most k values for k-set agreement), and all nodes in C must agree, but no conditions are imposed the two sets of agreement values corresponding to C and C. In particular, for consensus, the nodes in C may agree on x, but the nodes in C may agree on xx.

The validity condition remains unchanged, that is, every output value must be the input value of some node. Note however that a node can return an output value which was the input value of a node from a different connected component.

We refer to these variants of consensus and k-set agreement as local, because agreement must hold “locally”, i.e., inside each connected component.

Remark.

When t<κ(G), consensus and local consensus are the same tasks, and, for every k1, k-set agreement and local k-set agreement are the same tasks. More generally, for every graph G, and for every failure pattern φΦall(t), if the nodes failing in φ do not disconnect G, and an algorithm solving local consensus (resp., local k-set agreement) does solve standard consensus (resp., standard k-set agreement).

3.2.2 Consensus beyond the connectivity threshold

We design a local consensus algorithm for an arbitrary graph G in the t-resilient model, for every given t, which does not need to be less than the connectivity κ(G) of G. This algorithm satisfied the following property (see proof in the full version [16]).

Theorem 6.

For every connected graph G=(V,E), and every t0, local consensus in G can be solved by an oblivious algorithm running in radius(G,t) rounds under the t-resilient model.

In the statement above, radius(G,t) denotes an extension of the notion of t-resilient radius to the case where tκ(G), which coincide to the aforementioned notion of radius whenever t<κ(G). For the purpose of extending the notion of radius beyond the connectivity threshold, we revisit the notion of eccentricity entirely. Indeed, given a failure pattern φ, a node v may succeed to broadcast in some connected components but not in all of them. The control of the way information flow through the graph G with respect to the connected components is complex, as the connected components for one failure pattern are typically different from the connected components for another failure pattern.

Despite these difficulties, we are able to design and analyse an oblivious (and hence generic) local consensus algorithm. Given a graph G=(V,E), our algorithm performs in radius(G,t)=minvVecc(v,Φv) rounds, where the notion of eccentricity has been redefined and extended for allowing an arbitrary number t of failures. Again, for t<κ(G), the extended notion of eccentricity coincides with the notion of eccentricity defined for consensus in [4], which itself coincide with the graph-theoretical notions of eccentricity for t=0. We also note that our extended notion of radius, for all t0, provides a fine grain analysis of our local consensus algorithm, more refined than the notion of stretch defined in [8].

4 Lower Bound for Consensus

This section is entirely devoted to the proof of Theorem 5, that is, we show that, for every graph G and every t<κ(G), consensus in G cannot be solved in less than radius(G,t) rounds by an oblivious algorithm in the t-resilient model. We first establish a consistent notion of information flow graph, which can then be used to characterize consensus solvability, and we fix the bugs in the proof of Theorem 3 in [4] (see Proposition 4) resulting from inconsistencies in the original definition of the information flow digraph. Using our new characterization, we establish our lower bound.

4.1 Information flow graph revisited

The main issue with the notion of information flow digraph 𝖨𝖥(G,r) as defined in [4] comes from the fact that this directed graph includes only vertices (v,view(v,r,φ)) where v has not crashed in φ during rounds 1,,r. The main issue is related to the concept of domination, as defined in [4]. A vertex v dominates a connected component C of 𝖨𝖥(G,r) if the set {(v,view(v,r,φ))φΦall(t)} dominates C. This is too restrictive, as the correct nodes may agree on the input value of a node v that has already crashed. It follows that, for some failure pattern φ, the vertex (v,view(v,r,φ)) may not be present in 𝖨𝖥(G,r) (and therefore cannot dominate any other vertices of 𝖨𝖥(G,r)), whereas the nodes that are correct in φ may agree on the input value of v. The characterization of Theorem 3 in [4] is therefore incorrect, even if the “spirit” of the characterization remains conceptually valid, as we shall show in this section.

To provide an illustration of the problems resulting from the original definition of information flow digraph in [4], let us clarify that this definition was aiming for capturing any subset ΦΦall(t) of failure patterns (for instance the subset Φ of failure patterns in which nodes crash cleanly), in which case only the failure patterns φΦ are considered. Let us then consider the scenario displayed on Fig. 2. The graph G is a 6-node path plus a universal node v. The set Φ={φ} contains a single failure pattern φ in which v crashes cleanly at the second round.

Fig. 2 displays 𝖨𝖥(G,1,{φ}) and 𝖨𝖥(G,2,{φ}) as defined in [4] (the direction of the arcs are omitted, each edge corresponding to two symmetric arcs). A vertex (v,view(v,r,φ)) is present in the former but not in the latter, and thus, as opposed to what one might expect since nodes acquire more and more information as time passes, 𝖨𝖥(G,2,{φ}) is not a denser super graph of 𝖨𝖥(G,1,{φ}) nor it includes more vertices (with larger views), as some vertices present in 𝖨𝖥(G,1,{φ}) may disappear in 𝖨𝖥(G,2,{φ}). In fact, node v dominates 𝖨𝖥(G,1,{φ}), but it does not dominate 𝖨𝖥(G,2,{φ}). Therefore, when analyzing G with the set {φ} of failure patterns using the characterization theorem in [4], consensus should be solvable in 1 round but not in 2 rounds!

Figure 2: The information flow graph 𝖨𝖥(G,r,{φ}) as defined in [4] for r=1 and r=2, where φ is the failure pattern in which v crashes cleanly at the second round. No node dominates 𝖨𝖥(G,2,{φ}) (right), even though consensus is solvable in G under φ in 2 rounds.

We propose below a more robust notion of information flow graph (which is not directed anymore). The reader familiar with the algebraic topology interpretation of distributed computing [18] will recognize the mere 1-skeleton of the protocol complex after r rounds. For the purpose of fixing the issues in [4], we introduce 𝖨𝖥(G,r,Φ) for an arbitrary set of failure patterns ΦΦall(t).

Definition 7.

The information flow graph of a communication graph G=(V,E) after r0 rounds for a set ΦΦall(t), t0, of failure patterns is the graph 𝖨𝖥(G,r,Φ) defined as follows.

  • The vertices of 𝖨𝖥(G,r,Φ) are all pairs (v,view(v,r,φ)) for vV and φΦ, where v is correct in φ.

  • There is an edge between (v1,w1) and (v2,w2) in 𝖨𝖥(G,r,Φ) whenever there exists φΦ such that w1=view(v1,r,φ) and w2=view(v2,r,φ)

Remark.

Unlike the definition of [4], this new notion of information-flow graph is not limit limited to tκ(G).

Note that a same vertex (v,ω) of 𝖨𝖥(G,Φ,r) can represent both (v,view(v,r,φ)) and (v,view(v,r,ψ)) if v has the same view after r rounds in φΦ and ψΦ. Note also that, for every φΦ, the set

config(G,r,φ)={(v,view(v,r,φ))𝖨𝖥(G,r,Φ)vV}

is a clique in 𝖨𝖥(G,r,Φ). The connected components of 𝖨𝖥(G,r,Φ) play an important role, w.r.t. the following concept of domination.

Definition 8.

A node vV of the communication graph G=(V,E) is said to dominate a connected component C of 𝖨𝖥(G,r,Φ) if, for every φΦ and every uV,

(u,view(u,r,φ))C(v,xv)view(u,r,φ).

Note that only correct nodes need to be dominated, as

(u,view(u,r,φ))C𝖨𝖥(G,r,Φ)

implies that u is correct at round r. On the other hand, any node may be dominating. The following result characterizes the round-complexity of consensus in G by fixing the aforementioned inaccuracies in the definition of the information flow graph in [4], with impact on the proof of their characterization theorem (Theorem 3 in [4]).

Theorem 9.

For every graph G=(V,E), every t0, and every set of failure patterns ΦΦall(t), consensus in G can be solved by an oblivious algorithm running in r rounds under the t-resilient model with failure patterns in Φ if and only if every connected component of 𝖨𝖥(G,r,Φ) has a dominating node in V.

Proof.

Let us first show that if every connected component of 𝖨𝖥(G,r,Φ) has a dominating node in V then consensus in G can be solved by an oblivious algorithm running in r rounds. For every connected component C of 𝖨𝖥(G,r,Φ), let vCV be a node of G that dominates C. The algorithm proceeds as follows. Every node vC broadcasts by flooding during r rounds. After r rounds, every correct node u considers its view, denoted by view(u). A crucial point is that view(u) may not be sufficient for u to determine what is the actual failure pattern φΦ experienced during the execution, merely because one may have

view(u)=view(u,r,φ)=view(u,r,ψ)

for two different failure patterns φ,ψ in Φ. However, view(u) is sufficient to determine the connected component C of 𝖨𝖥(G,r,Φ) to which (u,view(u)) belongs. Node u outputs the input xvC of node vC.

To establish correctness of this algorithm, observe first that (vC,xvC) belongs to the view of node u. To see why, let φΦ, and let us consider the execution of the algorithm under φ. Let C be the connected component of (u,view(u,r,φ)). Since vC dominates C, the mere definition of domination implies that (vC,xvC)view(u,r,φ). As a consequence, the algorithm is well defined. To show agreement, let uu be another correct node in φ. By definition of the information flow graph, there is an edge between (u,view(u,r,φ)) and (u,view(u,r,φ)), and thus these two vertices belong to the same connected component C, and both output the same value xvC.

For the other direction, we show the contrapositive. That is, we let C be a connected component of 𝖨𝖥(G,r,Φ) that is not dominated, and we aim at showing that there are no oblivious consensus algorithms in G running in r rounds. Let us assume, for the purpose of contradiction, that there exists an oblivious consensus algorithm ALG in G running in r rounds.

Claim 10.

Let (u,view(u,r,φ)) and (u,view(u,r,φ)) be two vertices of C, where u and u need not be different, nor do φ and φ. For the same input configuration, node u outputs the same value in ALG under φ as node u under φ.

To see why this claim holds, observe that, since (u,view(u,r,φ)) and (u,view(u,r,φ)) belong to the same connected component C, there is a sequence

(v0,view(v0,r,ψ0)),,(vk,view(vk,r,ψk))

of vertices of C such that

(v0,view(v0,r,ψ0))=(u,view(u,r,φ)),(vk,view(vk,r,ψk))=(u,view(u,r,φ)),

and, for every i{0,,k1}, there is an edge between the two vertices (vi,view(vi,r,ψi)) and (vi+1,view(vi+1,r,ψi+1)) in 𝖨𝖥(G,r,Φ). Note that, for every i{0,,k}, node vi is correct in ψi since (vi,view(vi,r,ψi)) belongs to the information flow graph. For every i{0,,k1}, the presence of an edge between (vi,view(vi,r,ψi)) and (vi+1,view(vi+1,r,ψi+1)) implies that there exists χΦ such that

(vi,view(vi,r,ψi))=(vi,view(vi,r,χ)),

and

(vi+1,view(vi+1,r,ψi+1))=(vi+1,view(vi+1,r,χ)).

As a consequence, since ALG is a consensus algorithm, ALG outputs the same value at vi+1 under ψi+1 as it outputs at vi under ψi, which is the value outputted by ALG under χ. Since this holds for every i{0,,k1}, we get that, in particular, u outputs the same value in φ as u in φ, as claimed.

For establishing a contradiction, let us enumerate the n nodes of G as u0,,un1 in arbitrary order. Since C is not dominated, for every node ui, i{0,,n1}, there exists a vertex (vi,view(vi,r,φi)) of C such that (ui,xui)view(vi,r,φi), where vi is correct in φi. For i{0,,n}, let us denote by Ii the input configuration in which the ni nodes u0,,un(i+1) have input 0, and all the other nodes have input 1. Thus, in particular, I0 is the configuration in which all nodes have input 0, and In is the configuration in which all nodes have input 1. Since, for every i{0,,n1}, (ui,xui)view(vi,r,φi), node ui does not distinguish Ii from Ii+1 under φi, and thus ALG must output the same at ui for both configurations.

Since consensus imposes that all (correct) nodes output the same value, this means that, for every i{0,,n1}, all nodes output the same in ALG for Ii and Ii+1 under φi. By Claim 10, all nodes output the same for Ii under φi as they do for Ii+1 under φi+1. It follows that all nodes output the same for I0 under φ0 as for In under φn. This is a contradiction as all nodes must output 0 for I0, whereas all nodes must output 1 for In.

Notation.

For a fixed upper bound t on the number of failures, for every graph G, and for every integer r0, we denote by 𝖨𝖥(G,r) the information flow graph for the set of all failure patterns in the t-resilient model, that is, 𝖨𝖥(G,r)=𝖨𝖥(G,r,Φall(t)).

4.2 Proof of Theorem 5

To prove Theorem 5, we define the notion of successor of a failure pattern. Given φΦall(t), we say that a node u is crashing last in φ if there exists a triple (u,Fu,fu)φ (i.e., u crashes in φ), and, for every (v,Fv,fv)φ, fufv.

Definition 11.

Let φΦall(t), let (u,Fu,fu)φ, and assume that u is crashing last in φ. A successor of φ with respect to u is a failure pattern

succ(φ,u)=(φ{(u,Fu,fu)}){(u,Fu,fu)}

where Fu and fu are defined as follows (see Fig. 3):

  1. 1.

    If Fu contains only faulty nodes in φ, then fu=fu+1, and Fu=N(u){w} for some arbitrary correct neighbor w of u.

  2. 2.

    If Fu contains exactly one correct node w in φ, then fu=fu+1, and Fu=N(u).

  3. 3.

    If Fu contains at least two correct nodes in φ, then fu=fu, and Fu=Fu{w} for some arbitrary correct node wFu.

Figure 3: A successor φ of a failure pattern φ with respect to node u. Red nodes are faulty in φ and white nodes are correct in it.

Note that the correct node w in Definition 11 is well defined as the number of failures satisfies t<κ(G)δ(G)deg(u), where δ(G) is the minimum degree of the nodes in G. Intuitively, succ(φ,u) is identical to φ, except that u fails at round fu+1, or it still fails at round fu but sends its message to one more correct neighbor before crashing.

Note also that a failure pattern may have different successors, which depends on the choice of the node u that crashes last, and on the choice of the correct neighbor w of u in the first and third cases of Definition 11. A correct neighbor w of u in Definition 11 is called a witness of the pair (φ,φ).

Still using the notations of Definition 11, let us set fu′′=fu in case 1, and fu′′=fu in cases 2 and 3. At the end of round fu′′, there is at most one correct node with different views in φ and succ(φ,u). The only correct node may have different views in φ and φ=succ(φ,u) at the end of round fu′′ is the witness of the pair (φ,φ). Before applying the notion of successor to derive our lower bound, let us observe the following.

Lemma 12.

For every node v, there exists a failure pattern φΦv such that no node uv fails at round 1 in φ, and ecc(v,φ)radius(G,t).

Proof.

By definition of the radius, for every vV, there exists ψΦv such that ecc(v,ψ)radius(G,t). The failure pattern φ is identical to ψ, except that, for every node uv that crashes at round 1 in ψ, u crashes cleanly at round 2 in φ. We have ecc(v,φ)=ecc(v,ψ) because every node that crashes later in φ than in ψ does not send any message to their neighbors after round 1 which may contain information received from v. Thus ecc(v,φ)radius(G,t).

The premises of the following lemma are justified by Lemma 12.

Lemma 13.

Let φΦall(t) such that (1) at most one node crashes at round 1, and (2) if there exists a node v that crashes at round 1 in φ, then φΦv (i.e., v broadcasts despite the fact that it crashes at round 1). For every successor φ of φ, the following holds:

  • at most one node crashes at round 1 in φ;

  • if there is a node v that crashes at round 1 in φ, then v crashes at round 1 in φ as well;

  • there exists a correct node with the same view in φ and φ at the end of round radius(G,t)1.

Proof.

Let φ be a successor of φ, such that the entry (u,Fu,fu) of φ is replaced by the entry (u,Fu,fu) in φ. Let w be a witness for the pair (φ,φ) with respect to u. Using the notations from Definition 11, let fu′′=fu in Case 1, and fu′′=fu in Cases 2 and 3.

After fu′′ rounds, the only correct node that may have different views in φ and φ is w. Since u is a node crashing last in φ, we get that, after round fu′′, w needs the same number of rounds in φ and φ for broadcasting to all correct nodes. Indeed, all nodes that have not crashed in φ nor in φ up to round fu′′ included satisfy: (1) they are correct nodes in both φ and φ, (2) they have the same view in both φ and φ, and (3) the subgraph of G induced by the correct nodes in φ is identical to the subgraph of G induced by the correct nodes in φ.

Let R=radius(G,t). We consider two cases, depending on whether w broadcasts or not.

Let us first consider the case where, assuming that w starts broadcasting at round fu′′+1, w cannot broadcast to all correct nodes during rounds fu′′+1,,R1 under the failure patterns φ and φ. That is, under φ, some node s does not receive view(w,fu′′,φ) during rounds fu′′+1,,R1. As a consequence, this node s does not detect any difference between view(w,fu′′,φ) and view(w,fu′′,φ). It follows that s has the same view in φ and φ at the end of R1 rounds.

Consider now the case where, assuming that w starts broadcasting at round fu′′+1, w does succeed to broadcast to all correct nodes during rounds fu′′+1,,R1 under the failure patterns φ and φ. Since no node fails after round fu′′ in both φ and φ, a causal path from w to a node s in rounds fu′′+1,,R1 is also a causal path from s to w in rounds fu′′+1,,R1. At the end of round R1, every correct node can thus send to w its view at the end of round fu′′. Since no node sv fails at round 1, every node sv does send its input to some correct neighbor during round 1. Therefore, sview(w,R1,φ) and sview(w,R1,φ). Since φΦv, we get that, at the end of round fu′′, there exists a correct node x that heard from v, i.e., such that vview(x,fu′′,φ). At the end of round R1, this node x will send view(x,fu′′,φ) to w, so vview(w,R1,φ). Similarly, vview(w,R1,φ). As a consequence, view(w,R1,φ)=view(w,R1,φ), and w has a same view in both failure patterns after R1 rounds, as claimed.

Furthermore, at most one node v crashes at round 1 in φ, and φΦv, as desired.

Using the characterization of Theorem 9 of consensus solvability based on the information-flow graph, it is sufficient to prove the following result for establishing our lower bound.

Lemma 14.

The information-flow graph 𝖨𝖥(G,radius(G,t)1) has a connected component that is not dominated by any node of V.

Proof.

Let R=radius(G,t). For every node vV, we denote by φv a failure pattern in Φv such that φv contains no node uv that fails at round 1, and ecc(v,φv)R. The existence of φv is guaranteed by Lemma 12. Borrowing the notation from [4], for every failure pattern φ, and every r1, let

config(φ,r)={(v,view(v,φ,r))V(𝖨𝖥(G,r))vVis active in φ at round r},

where by v is active in φ at round r, we mean that v has not crashed in φ during rounds 1,,r. It was proved in [4] (see Lemma 4 in there) that, for every failure pattern φ, and every r1, the subgraph of 𝖨𝖥(G,r) induced by the vertices of config(φ,r) is connected.

We now show that, for every vV, config(φv,R1) and config(φ,R1) are contained in the same connected component of 𝖨𝖥(G,R1). Roughly, we shall construct a sequence of intermediate failure patterns from φv to φ such that, for every two consecutive failure patterns ψ and ψ in the sequence, there is a correct node with the same view in ψ and ψ. Note that the existence of this node implies that the subgraph of 𝖨𝖥(G,R1) induced by config(ψ,R1), and the subgraph of 𝖨𝖥(G,R1) induced by config(ψ,R1) are included in the same connected component of 𝖨𝖥(G,R1).

Let us order the crashing nodes in φv in a decreasing order of the rounds at which they crash where ties are broken arbitrarily, and let u1,,utv be the resulting sequence. We have tvt and, for every i{1,,tv1}, fuifui+1. Let us construct a sequence S=ψ0,,ψ of failure patterns, where ψ0=φv, and ψ=φ. This sequence is itself the concatenation of sub-sequences Si for i=1,,tv such that S1=ψ0,,ψ1, and, for every i{2,,tv}, Si=ψi1+1,,ψi with 012tv=. For every sub-sequence Si, i{1,,tv}, and for every j{i1+1,,i1}, we set

ψj+1=succ(ψj,ui).

Moreover, the first failure pattern ψi1+1 in the sequence Si is obtained from φv by removing the crashing nodes u1,,ui1, i.e., these nodes are correct in ψi1+1. The last failure pattern ψi of the sequence Si is when the node ui that crashes last in ψi fails at round R.

Claim 15.

For any two consecutive failure patterns ψj and ψj+1 in S, there exists a correct node wj with the same view in both patterns after R1 rounds, that is,

view(wj,ψj,R1)=view(wj,ψj+1,R1).

To see why the claim holds, let us first assume that ψj and ψj+1 belong to a same sub-sequence Si. In this case, the claim directly follows from Lemma 13. If ψj and ψj+1 do not belong to a same sub-sequence Si, then ψj is the last element of a sub-sequence Si, and ψj+1 is the first element of sub-sequence Si+1, then the claim follows from the fact that the sets of nodes crashing in ψj and ψj+1 during round r are the same, for every r{1,,R1}. This completes the proof of Claim 15.

From Claim 15, for any two consecutive failure patterns ψj and ψj+1 in S, config(ψj) and config(ψj+1) belong to the same connected component of 𝖨𝖥(G,R1). To wrap up, we have shown that, for every vV, there exists a connected component of 𝖨𝖥(G,R1) containing both config(φ) and config(φv). Recall that φv is a failure pattern in Φv satisfying that it contains no node different from v that fails at round 1, and ecc(v,φv)R. At the end of round R1, no node dominates the component that contains config(φ) because, for every node vV, v cannot dominates config(φv,R1).

5 Conclusion

In this paper, we have completed the picture for consensus in the t-resilient model for arbitrary graphs. That is, we have proved that the consensus algorithm in [4] is optimal, i.e., for every graph G and t<κ(G), consensus can be solved by an oblivious algorithm performing in radius(G,t) rounds under the t-resilient model, and no oblivious algorithms can solve consensus in G in less than radius(G,t) rounds under the t-resilient model. Moreover, we have extended the study of consensus beyond the connectivity threshold. Specifically, we defined the local consensus task, a generalization of consensus. We designed and analyzed a generic algorithm for this task, which we believe to be optimal among oblivious algorithms. The technical difficulty of establishing optimality of our algorithm for the local variant of consensus yields from the fact that we miss an analog of our characterization theorem (cf. Theorem 9 in Section 4) for local consensus. Finally, we have generalized the algorithm in [4] for consensus, as well as our algorithm for local consensus, to k-set agreement.

Our results open a vast domain for further investigations. In particular, what could be said for sets of failure patterns Φ distinct from Φall(t)? The case Φclean of clean failures, for which there are no known generic consensus algorithms applying to arbitrary graphs, is particularly intriguing. Another intriguing and potentially challenging area for further research is exploring scenarios where no upper bounds on the number of failing nodes are assumed, by concentrating solely on the set Φconnect of failure patterns that do not result in disconnecting the graph. The main difficulties is that basic results such as Lemma 1 in [4] (cf. Proposition 1) do not hold anymore in this framework. Indeed, some ill behaviors that do not occur when the number of failures is bounded from above by the connectivity of the graph, or when the problems are considered in each connected component separately, pop up when the number of failures is arbitrarily large yet preserving connectivity. Finally, the design of early-stopping algorithms in the t-resilient model for arbitrary graphs is also highly desirable. The early-stopping algorithms in [8] are very promising, but their analysis must be refined to a grain finer than the stretches of the failure patterns, by focusing on, e.g., eccentricities and radii.

References

  • [1] Marcos Kawazoe Aguilera and Sam Toueg. A simple bivalency proof that t-resilient consensus requires t+ 1 rounds. Information Processing Letters, 71(3-4):155–158, 1999. doi:10.1016/S0020-0190(99)00100-3.
  • [2] Hagit Attiya and Jennifer Welch. Distributed computing: fundamentals, simulations, and advanced topics, volume 19. John Wiley & Sons, 2004.
  • [3] Armando Castañeda, Pierre Fraigniaud, Ami Paz, Sergio Rajsbaum, Matthieu Roy, and Corentin Travers. A topological perspective on distributed network algorithms. Theoretical Computer Science, 849:121–137, 2021. doi:10.1016/J.TCS.2020.10.012.
  • [4] Armando Castañeda, Pierre Fraigniaud, Ami Paz, Sergio Rajsbaum, Matthieu Roy, and Corentin Travers. Synchronous t-resilient consensus in arbitrary graphs. Inf. Comput., 292:105035, 2023. doi:10.1016/J.IC.2023.105035.
  • [5] Armando Castañeda, Yoram Moses, Michel Raynal, and Matthieu Roy. Early decision and stopping in synchronous consensus: A predicate-based guided tour. In 5th International Conference on Networked Systems – (NETYS), volume 10299 of LNCS, pages 206–221, 2017. doi:10.1007/978-3-319-59647-1_16.
  • [6] Bernadette Charron-Bost and Stephan Merz. Formal verification of a consensus algorithm in the heard-of model. Int. J. Softw. Informatics, 3(2-3):273–303, 2009. URL: http://www.ijsi.org/ch/reader/view_abstract.aspx?file_no=273&flag=1.
  • [7] Bernadette Charron-Bost and André Schiper. The heard-of model: computing in distributed systems with benign faults. Distributed Comput., 22(1):49–71, 2009. doi:10.1007/S00446-009-0084-6.
  • [8] Bogdan S. Chlebus, Dariusz R. Kowalski, Jan Olkowski, and Jedrzej Olkowski. Disconnected agreement in networks prone to link failures. In 25th International Symposium on Stabilization, Safety, and Security of Distributed Systems (SSS), volume 14310 of LNCS, pages 207–222. Springer, 2023. doi:10.1007/978-3-031-44274-2_16.
  • [9] Étienne Coulouma and Emmanuel Godard. A characterization of dynamic networks where consensus is solvable. In International Colloquium on Structural Information and Communication Complexity, pages 24–35. Springer, 2013. doi:10.1007/978-3-319-03578-9_3.
  • [10] Carole Delporte-Gallet, Hugues Fauconnier, Sergio Rajsbaum, and Nayuta Yanagisawa. A characterization of t-resilient colorless task anonymous solvability. In 25th International Colloquium on Structural Information and Communication Complexity (SIROCCO), volume 11085 of LNCS, pages 178–192. Springer, 2018. doi:10.1007/978-3-030-01325-7_18.
  • [11] Carole Delporte-Gallet, Hugues Fauconnier, and Andreas Tielmann. Fault-tolerant consensus in unknown and anonymous networks. In 29th IEEE International Conference on Distributed Computing Systems (ICDCS), pages 368–375, 2009. doi:10.1109/ICDCS.2009.36.
  • [12] Danny Dolev. The byzantine generals strike again. J. Algorithms, 3(1):14–30, 1982. doi:10.1016/0196-6774(82)90004-9.
  • [13] Danny Dolev and H. Raymond Strong. Authenticated algorithms for byzantine agreement. SIAM Journal on Computing, 12(4):656–666, 1983. doi:10.1137/0212045.
  • [14] Shlomi Dolev. Self-Stabilization. MIT Press, 2000.
  • [15] Pierre Fraigniaud, Patrick Lambein-Monette, and Mikaël Rabie. Fault tolerant coloring of the asynchronous cycle. In 36th International Symposium on Distributed Computing (DISC), volume 246 of LIPIcs, pages 23:1–23:22. Schloss Dagstuhl – Leibniz-Zentrum für Informatik, 2022. doi:10.4230/LIPICS.DISC.2022.23.
  • [16] Pierre Fraigniaud, Minh Hang Nguyen, and Ami Paz. Agreement tasks in fault-prone synchronous networks of arbitrary structure. CoRR arXiv, abs/2410.21538, 2024. doi:10.48550/arXiv.2410.21538.
  • [17] Pierre Fraigniaud and Ami Paz. The topology of local computing in networks. In 47th International Colloquium on Automata, Languages, and Programming (ICALP), volume 168 of LIPIcs, pages 128:1–128:18. Schloss Dagstuhl – Leibniz-Zentrum für Informatik, 2020. doi:10.4230/LIPICS.ICALP.2020.128.
  • [18] Maurice Herlihy, Dmitry N. Kozlov, and Sergio Rajsbaum. Distributed Computing Through Combinatorial Topology. Morgan Kaufmann, 2013.
  • [19] Juho Hirvonen and Jukka Suomela. Distributed Algorithms. Aalto University, Finland, 2023.
  • [20] Muhammad Samir Khan, Syed Shalan Naqvi, and Nitin H. Vaidya. Exact byzantine consensus on undirected graphs under local broadcast model. In PODC, pages 327–336. ACM, 2019. doi:10.1145/3293611.3331619.
  • [21] Giuseppe Antonio Di Luna and Giovanni Viglietta. Computing in anonymous dynamic networks is linear. In 63rd IEEE Annual Symposium on Foundations of Computer Science (FOCS), pages 1122–1133, 2022. doi:10.1109/FOCS54457.2022.00108.
  • [22] Giuseppe Antonio Di Luna and Giovanni Viglietta. Optimal computation in leaderless and multi-leader disconnected anonymous dynamic networks. In 37th International Symposium on Distributed Computing (DISC), volume 281 of LIPIcs, pages 18:1–18:20. Schloss Dagstuhl – Leibniz-Zentrum für Informatik, 2023. doi:10.4230/LIPICS.DISC.2023.18.
  • [23] Nancy A. Lynch. Distributed Algorithms. Morgan Kaufmann, 1996.
  • [24] Thomas Nowak, Ulrich Schmid, and Kyrill Winkler. Topological characterization of consensus under general message adversaries. In Proceedings of the 2019 ACM symposium on principles of distributed computing, pages 218–227, 2019. doi:10.1145/3293611.3331624.
  • [25] David Peleg. Distributed Computing: A Locality-sensitive Approach. SIAM, 2000.
  • [26] Michel Raynal. Consensus in synchronous systems: A concise guided tour. In 9th Pacific Rim International Symposium on Dependable Computing (PRDC), pages 221–228. IEEE, 2002. doi:10.1109/PRDC.2002.1185641.
  • [27] Michel Raynal. Fault-tolerant Agreement in Synchronous Message-passing Systems. Synthesis Lectures on Distributed Computing Theory. Morgan & Claypool Publishers, 2010. doi:10.2200/S00294ED1V01Y201009DCT003.
  • [28] Michel Raynal and Corentin Travers. Synchronous set agreement: A concise guided tour. In 12th IEEE Pacific Rim International Symposium on Dependable Computing (PRDC), pages 267–274, 2006.
  • [29] Kyrill Winkler, Ami Paz, Hugo Rincon Galeana, Stefan Schmid, and Ulrich Schmid. The time complexity of consensus under oblivious message adversaries. Algorithmica, pages 1–32, 2024.