Self-Stabilizing Fully Adaptive Maximal Matching
Abstract
A self-stabilizing randomized algorithm for mending maximal matching (MM) in synchronous networks is presented. Starting from a legal MM configuration and assuming that the network undergoes faults or topology changes (that may occur in multiple batches), the algorithm is guaranteed to stabilize back to a legal MM configuration in time in expectation and with high probability (in ), using constant size messages. The algorithm is simple to implement and is uniform in the sense that it does not assume unique identifiers, nor does it assume any global knowledge of the communication graph including its size. It relies on a generic probabilistic phase synchronization technique that may be useful for other self-stabilizing problems. The algorithm compares favorably with the existing self-stabilizing MM algorithms in terms of the dependence of its run-time on , a.k.a. fully adaptive run-time. In fact, this dependence is asymptotically optimal for uniform algorithms that use constant size messages.111This paper is extracted from (a much longer) full version [18]. The main contribution of [18] is a self-stabilizing black-box transformer that can be applied to LCL problems in general. The self-stabilizing MM algorithm developed in the current paper is closely related to the one obtained by invoking the transformer on the (fault free) algorithm presented in Sec. 4.1, although the run-time and message size bounds of the former are better than those of the latter.
Keywords and phrases:
self-stabilization, maximal matching, fully adaptive run-time, dynamic graphsFunding:
Yuval Emek: supported by the Bernard M. Gordon Center for Systems Engineering at the Technion.Copyright and License:
![[Uncaptioned image]](x1.png)
2012 ACM Subject Classification:
Computer systems organization Fault-tolerant network topologiesEditors:
Silvia Bonomi, Letterio Galletta, Etienne Rivière, and Valerio SchiavoniSeries and Publisher:

1 Introduction
Distributed systems are notoriously subject to faults and much of the effort in the design and implementation of distributed algorithms is devoted to fault tolerance issues. Introduced in the seminal paper of Dijkstra [26], self-stabilization is a fundamental approach to fault tolerance requiring that the system recovers from any number of transient faults and stabilizes back to a legal configuration within finite time. The strong guarantees of this natural approach attracted a lot of attention over the years making self-stabilization an extensively studied research field (see [27, 4] for textbooks).
The main performance measure for self-stabilizing algorithms is their stabilization run-time. With very few exceptions (discussed in Sec. 1.3), this is measured as a function of the size of the system: the more processors are in the system, the longer is the time it takes for the algorithm to stabilize. However, while self-stabilizing systems are guaranteed to recover from any number of transient faults, in most systems, the common scenario is that over a limited time interval, only few faults occur. Although a small number of faults can seriously hinder the operation of the whole system [51], one may hope that the system recovers from them faster than the recovery time from a larger number of faults, regardless of the total number of processors.
With this hope in mind, we turn to the notion of fully adaptive run-time that expresses the recovery time of a self-stabilizing algorithm as a function of the number of faults (supporting also dynamic topology changes), rather than the size of the system. Our goal in the current paper is to investigate this appealing complexity measure in the context of the classic maximal matching (MM) problem as we now turn to define.
1.1 Model, Problem, and Complexity Measure
Consider a distributed algorithm running on a message passing communication network represented as a simple undirected graph . Under , the nodes operate in synchronous rounds so that in each round , every node executes the following operations: (1) performs local computation that includes reading from and writing to its registers; (2) sends messages to (a subset of) its neighbors; and (3) receives the messages sent to it by its neighbors in round . Round is assumed to span the time interval so that time marks the beginning of the round. The configuration of at time is an abstract object that encodes the content of all nodes’ registers at that time.
Let be the set of neighbors of a node and let be its degree. We adhere to the conventions of the port numbering model of distributed graph algorithms where each node is associated with an (arbitrarily chosen) port bijection so that from ’s perspective, node is referred to as neighbor for each . Assuming that and , when (resp., ) sends a message to its neighbor (resp., ), this message is written into a designated port register (resp., ) that (resp., ) can read during the local computation step of the subsequent round. We do not assume that (resp., ) knows anything about the identity of its neighbor (resp., ) otherwise. In fact, in the current paper, we focus on uniform algorithms, namely, the nodes do not have unique identifiers, nor do they hold any global knowledge of the graph (including its size).
Self-Stabilizing Maximal Matching.
An edge subset is a matching in if the degree of every node in the graph is at most . A matching is maximal if is not a matching for any . We assume that the interface of each node in a distributed maximal matching (MM) algorithm includes a designated matching register whose semantics is as follows: indicates that is still undecided; indicates that is (decided to be) unmatched; and indicates that is matched to its neighbor .
To support the consistency of the nodes’ matching registers, the interface of node also includes, for each , a designated (matching) status field , within the port register , whose role is to “reflect” the content of . Specifically, assuming that and , the semantics of the status field is as follows: indicates that ; indicates that ; indicates that ( stands for ’(matched) here’); and indicates that ( stands for ’(matched) elsewhere’).
Assuming that and , nodes and are said to be strongly matched if (1) and ; and (2) . Node is said to be strongly unmatched if (1) ; (2) for all ; and (3) every node is strongly matched. We say that a configuration of a distributed MM algorithm is legal if every node is either strongly matched or strongly unmatched, observing that the strongly matched nodes induce a maximal matching in ; we refer to this maximal matching as the output of .
A distributed algorithm is self-stabilizing if it is guaranteed to reach a legal configuration in finite time from any initial configuration (see [26, 27]). This notion is captured by a malicious adversary, who knows the algorithm but is oblivious to its coin tosses, that determines the algorithm’s initial configuration.
For reasons that will become clear soon, in the current paper, the adversary is allowed to “intervene” in the algorithm’s execution also after time (corresponding to the initial configuration) and modify the content of any register maintained by the algorithm including the aforementioned port registers (and their status fields ) and matching registers . The adversary can also impose dynamic topology changes including the addition (resp., removal) of nodes and edges which are reflected in adding new port registers (resp., removing existing port registers) and updating the port bijections . In this regard, a node is said to be manipulated (by the adversary) in round if at least one of the following three events occur during round : (i) the content of (any of) ’s registers is modified; (ii) the port bijection is modified; or (iii) is added to the graph as a new node. (Notice that condition (ii) includes topological changes involving any edges incident on as well as “rewiring” of ’s ports.)
Fully Adaptive Run-Time.
Let be a distributed self-stabilizing MM algorithm. Consider times and integer and suppose that (1) is in a legal configuration at time ; (2) the adversary manipulates nodes during the time interval ; and (3) the adversary does not manipulate any node from time onwards. We say that has fully adaptive run-time for some function if it is guaranteed that there exist some time and maximal matching such that (i) is in a legal configuration with output from time onwards; and (ii) . If (and ) are random variables determined by the coin tosses of , then we require that condition (ii) holds in expectation and with high probability, where throughout this paper, the term with high probability (abbreviated w.h.p.) refers to events that occur with probability at least for a constant that can be made arbitrarily large.
It is important to point out that the number of manipulated nodes is chosen by the adversary and is not known to the algorithm that also does not know any bound on .
1.2 Our Contribution
Our main contribution is cast in the following theorem.
Theorem 1.1.
There exists a randomized uniform self-stabilizing MM algorithm that uses messages of size whose fully adaptive run-time is .
The reader may have noticed that the guarantees of our algorithm do not depend in any way on the size of the graph . Indeed, Theorem 1.1 holds also for infinite graphs as long as the node degrees are finite (though not necessarily bounded).222In infinite graphs, the notion of fully adaptive run-time can be extended to support an infinite number of manipulations as long as the manipulated nodes can be partitioned into clusters of size at most which are sufficiently far away from each other. We believe that distributed computation in infinite graphs is a fascinating research domain and advocate using the notion of (fully) adaptive run-time as a natural complexity measure when it comes to self-stabilizing algorithms in this domain.
As established in [48], any uniform (non-self-stabilizing) distributed MM algorithm with constant size messages requires time in expectation when running on rings (and paths) of size . This implies that any uniform self-stabilizing MM algorithm with constant size messages requires time in expectation to stabilize from transient faults, which means that the fully adaptive run-time bound promised in Thm. 1.1 is asymptotically optimal.
1.3 Related Work and Discussion
Self-stabilizing symmetry breaking is an extensively studied research topic, see, e.g., [38] for a survey. In particular, there is a long line of works on self-stabilizing algorithms for maximal matching (and closely related problems) [42, 64, 21, 22, 40, 37, 35, 36, 57, 58, 63, 7, 46, 24, 5, 43, 65, 15]. Under synchronous schedules (assumed in the current paper), the state-of-the-art MM self-stabilization run-time upper bounds are , obtained by the (randomized uniform) algorithm of Turau [65], and , obtained by the (deterministic non-uniform) algorithm of Barenboim et al. [15], where is the number of nodes in the graph and is its maximum degree. Notice that those run-time upper bounds are not fully adaptive.
The MM problem received a lot of attention also in the literature on fault free (non-self-stabilizing) distributed graph algorithms, see, e.g., [45, 44, 54, 39, 61, 16, 32, 30, 12, 33]. Some of the algorithmic ideas in the current paper are inspired by ideas originated in that literature, e.g., [44]. Another source of inspiration is the algorithm of [66] for the related task of approximating maximum matching.
The self-stabilizing research community has a special interest in generic transformers that translate non-self-stabilizing algorithms into self-stabilizing ones, see, e.g., [10, 8, 9, 2, 1, 53, 13]. None of the existing transformers though can produce self-stabilizing algorithms that use constant size messages and run in sub-diameter time (as the algorithm developed in the current paper does). Moreover, with the exception of the transformer presented in the full version [18], none of the existing transformers (provably) guarantees a fully adaptive stabilization run-time, regardless of the graph’s size and diameter or any probabilistic assumption on the distribution of faults.
There has been a lot of interest in saving run-time in dynamic models by adapting to the actual load on the algorithm. In the non-self-stabilizing computing context, Lamport suggested that an algorithm should benefit from the common case where the number of contending processes is small [52]. A maximum matching approximation can be mended following a single topological change in constant distributed time [55]. A distributed algorithm that mends a maximal independent set after a single change in constant time was presented in [20]. Mending other local functions in a similar setting, also in constant distributed time, was addressed in [47]. Mending after a small number of changes was addressed in [59]. In the context of distributed fault tolerance, a similar motivation stands behind the notions of obstruction freedom [41].
In highly dynamic graphs, mending of various functions has been treated recently [14, 19]. Comparing these papers to the current one, their algorithms are not self-stabilizing. Moreover, the authors of [19] optimize the amortized time complexity (vs. the worst case time complexity used in the current paper) assuming that the graph is initially empty, whereas the run-time of the algorithm of [14] is expressed as a (logarithmic) function of rather than (so it is not adaptive). Both papers rely on messages of super-constant size.
For non-distributed algorithms, the area of dynamic algorithms started with addressing algorithms that already computed a complete and correct output (say a minimum spanning tree [31]) and need to mend the output following a single change to the input. A non-distributed update of MM in dynamic graphs for the deletion or the removal of a single edge is performed in amortized (expected) time [17] or worst case (deterministic) time, where denotes the number of edges [60].
In the context of self stabilization, the notion of super-stabilization [28] is concerned with decreasing the impact of topological changes on the complexity of self-stabilizing algorithms and the notion of containment [34] has been used to ensure that if only a single fault occurred, then the complexity is smaller than in the general fault case. For the maximal independent set problem, multiple simultaneous changes to the input were handled in [50] assuming a model that is only partially self-stabilizing (the adversary may change the data structure, but not other registers, e.g., the program counter). Moreover, while the run-time measure there is adaptive, expressed as a function of the number of faults, it is not fully adaptive since all the faults are assumed to occur in a single batch before the mending starts. In contrast, the run-time analysis in the current paper is fully adaptive in the sense that it allows the adversary to divide the faults (and/or topology changes) over multiple batches.
1.4 Phase Based Distributed Algorithms
A common design pattern in distributed algorithms working under the synchronous fault free model is to divide the execution into phases so that each phase is composed of a fixed number of single round steps, grouped together to fulfill a task that cannot be achieved in a single round. The execution then progresses by running the phases in succession, where step of phase is executed in round . A key property of this design pattern is that the nodes execute their phases in synchrony so that step of phase is executed by all nodes in the same round.
More often than not, the algorithm runs the same code in each phase which means that the nodes do not have to keep track of the current round ; rather, it suffices that they have access to a step oracle, denoted hereafter by , that simply returns the current step . We refer to the family of such algorithms as phase based algorithms and note that this family includes the distributed graph algorithm “classics” of [23] (-coloring of trees), [56, 3] (maximal independent set), and [44] (maximal matching), as well as more recent distributed graph algorithms, see, e.g., [16, 29, 62, 32].
The step oracle discussion is usually avoided in the literature on synchronous fault free algorithms as these algorithms can easily maintain a register that keeps track of . This is not the case in the self-stabilizing setting though: the adversary may modify this register, causing the nodes to execute their phases “out of sync” indefinitely. Indeed, we cannot assume that the nodes in a self-stabilizing algorithm have free access to a step oracle, hence the adaptation of a phase based algorithm designed to operate in a fault free environment to the self-stabilization setting imposes a significant challenge (cf. [65]).
To overcome this challenge, we introduce a technique called probabilistic phase synchronization. In high level terms (refer to Sec. 3 for a formal exposition), this technique replaces the step oracle by a generic (algorithm independent) module, referred to as , whose implementation is based on a simple ergodic Markov chain, maintained independently at each node. The state space of the Markov chain is , where states are identified with the steps of the phase and and are auxiliary states whose role is explained in the sequel.
Using the module, the adaptation of a fault free phase based algorithm into a self-stabilizing algorithm becomes almost a “black-box compiler” based on the following two modifications: (i) Replace each call to by a call to a procedure named that returns the current state of . (ii) When executing the phase, node restricts its communication to its phase synchronized neighbors, namely, adjacent nodes whose state agrees with that of .
We design the module so that (a) if nodes and start a phase in the same round, then they remain phase synchronized until the phase ends; and (b) the Markov chain admits a mixing time, ensuring that every pair of adjacent nodes become phase synchronized sufficiently often. As we show in the sequel (see [18] for more details), these two properties guarantee progress on behalf of the algorithm, allowing us to bound the stabilization time. While our analysis is specific to maximal matching, the aforementioned adaptation is fairly generic and serves as the cornerstone for the transformer discussed in the full version [18].
2 Preliminaries
The algorithms are presented from the perspective of a node and for clarity of the exposition, they are described as if can address its neighbors directly, rather than through the proxy of the port bijection . Specifically, we use to denote the message received by from neighbor , recalling that this message is actually written into the port register and that does not know beyond its (local) port number . Likewise, we define to be the neighbor pointed to by the matching register if ; and otherwise (i.e., if or ). Implementing our algorithm based on the proxy of the port bijections (as defined in Sec. 1.1) is straightforward.
For a node and a register of , let denote the value of at time , that is, at the beginning of round prior to any local computation. Notice that if is not manipulated during the time interval , as is guaranteed for every , then the value is also the value of at the end of round .
Given some graph and a node in , we use the notation and for ’s neighbor set and degree, respectively, in .
3 Probabilistic Phase Synchronization
Let be a phase based (fault free) distributed algorithm with phase length . We assume that under , each node calls in every round and proceeds according to the step number it receives. Our goal in this section is to apply the probabilistic phase synchronization “compiler” to , obtaining an algorithm that has no access to .
Consider a node . The design of (from ) is based on the module that can be viewed as an ergodic Markov chain over the state space that runs, independently of the other nodes. The current state of (’s copy of) is stored in a register denoted by ; to minimize the interface between and the generic module , the access of to is made by means of procedure that simply returns the current value of this register. The main idea is that each call of to is replaced by a call to under .
Beside , the module has one additional procedure whose role is to implement the Markov chain, advancing it in every round. This procedure is denoted by (see Algorithm 1) and it is assumed to be invoked by in every round, towards the end of the local computation stage, after any call to has already been made. We emphasize that is the only procedure that writes to the register; any other access of to this register is restricted to the read-only procedure . The fundamental properties of are summarized in the following observation (see Fig. 1 for an illustration of the underlying Markov chain).
Observation 3.1.
For every time and node , we have
-
for every ;
-
; and
-
.
This holds independently of any coin toss of prior to time and of any coin toss of all other nodes.
Consider some round and for , let
We say that adjacent nodes are phase synchronized in round if they both belong to for some . Notice that node cannot be phase synchronized (with any node) in round if .
Fix some node . If for some , then runs in round under the same code that runs in step with one crucial difference: progresses as if it operates in the graph induced by . In other words, for the sake of the simulation of , node restricts its interaction to its phase synchronized neighbors, that is, the nodes in , ignoring any node in . Notice that still sends messages to all its neighbors, however the messages sent to the nodes in do not carry any -related information.
To make this possible, each node appends the value of to its outgoing messages (sent to all its neighbors) in round , thus allowing its neighbors to determine if they are phase synchronized with in round . Indeed, Obs. 3.1 ensures that if the message that a node receives from its neighbor in round indicates that for some , then can deduce that unless the adversary manipulates or during the time interval .
The role of state is to allow the nodes to identify their phase synchronized neighbors already in step so that they can simulate a full phase of . Specifically, if , then node does not do anything in round other than appending to its outgoing messages, allowing any neighbor to identify that it is phase synchronized with in the next round .
Similarly to state , state is also special in the sense that it does not correspond to any step in and as such, corresponds to an “empty code”: If , then node does not do anything in round other then appending to its outgoing messages.
We now turn to bound the mixing time of the Markov chain associated with . To this end, let denote its state space. The following lemma is established by showing that this ergodic Markov chain belongs to a family of Markov chains that has been identified and analyzed in [67]; its proof is deferred to Appendix A.
Lemma 3.2.
Fix some time , node , and . For every , there exists a time such that for every , it holds that
This holds independently of any coin toss of prior to time and of any coin toss of all other nodes.
Corollary 3.3.
Fix some time , node , and . For and , it holds that . This holds independently of any coin toss of prior to time and of any coin toss of all other nodes.
4 A Self-Stabilizing MM Algorithm
In this section, we develop the self-stabilizing MM algorithm promised in Thm. 1.1, referred to as . First, we present a phase based fault free MM algorithm, referred to as , similar in its spirit to the classic distributed algorithm of Israeli and Itai [44].333Israeli and Itai [44] present their MM algorithm under the CRCW-PRAM model, but by now, it is better known in its implementation as a distributed message passing algorithm (cf. [66]). Next, we apply our probabilistic phase synchronization technique to and slightly modify it to obtain .
We use to denote the message sent from to ; the algorithms are described so that the content of this register is constructed (during the local computation) gradually until it is sent to . Recall that every message includes a status field, referred to hereafter as the -field, that is part of the node’s interface (see Sec. 1.1). The status field reflects the node’s matching register and it is set before the message is sent (see Algorithm 2). The messages include additional fields on top of the -field; we use a superscript to refer to the -field of the message so that and denote the -fields in the messages sent from to and received by from , respectively. For ease of reference, Table 1 summarizes the various registers of and and the values they can hold.
4.1 Algorithm
Like the algorithm of [44], algorithm , presented in Algorithm 3, is phase based with a phase of length . In round of the phase, each undecided node tosses an unbiased coin that determines if is active or passive (for the duration of the current phase); active nodes then send a matching request to an undecided neighbor picked uniformly at random. In round of the phase, a passive node that received a matching request from at least one neighbor picks one such neighbor (arbitrarily) and replies that ’s matching request is accepted. Finally, in round of the phase, each edge over which a matching request was accepted is added to the output MM. To implement this logic, the messages sent by use one additional field (on top of the aforementioned -field), namely, the -field that takes values in (stands for ’matching request’ and ’accept’, respectively).
4.2 Algorithm
Our self-stabilizing algorithm , presented in Algorithm 5, is obtained from through the following two modifications: (1) We add an error detection subroutine, presented in Algorithm 4, which is invoked in every round (see line 2 in Algorithm 5). In this subroutine, node checks whether its available local information indicates that it is either strongly matched or strongly unmatched; if is neither, then it becomes undecided by setting . (2) We apply the probabilistic phase synchronization “compiler” of Sec. 3. To this end, the outgoing messages are augmented with an additional -field (stands for ’step’). This field is used to communicate ’s current step so that is set to the value of before the message is sent by calling (see line 23 in Algorithm 5).
5 Analysis
Assume that is in a legal configuration at time and that the adversary manipulates nodes during the time interval and does not manipulate any node from time onwards. Our goal in this section is to establish Thm. 1.1 by proving that stabilizes to a legal configuration by time in expectation and w.h.p. (in ).
Recall that the phase length of is , where is the phase length of . Although the analysis presented in this section is dedicated to , it is performed with respect to a general parameter (and ) so that it can be applied to self-stabilizing algorithms derived from other phase based algorithms. Since the adversary may add/remove nodes/edges, the graph may change during the time interval ; in what follows, we reserve for the graph that exists at time , recalling that this is also the graph at any time .
5.1 Outline
This section presents the general structure of ’s analysis. It hinges on Prop. 5.1–5.6 whose combination yields Thm. 1.1. We start with Prop. 5.1 ensuring that once the algorithm reaches a legal configuration, it stays in a legal configuration.
Proposition 5.1.
For every and , if is strongly matched (resp., unmatched) at time , then is strongly matched (resp., unmatched) at time .
We say that is locally matched to node if (i) ; and (ii) ; when the identity of is not important, we may refer to as being locally matched without explicitly mentioning . Notice that by definition, if is strongly matched, then is also locally matched. Given some , let be the set of nodes which are not locally matched at time , let , and let be the graph induced on by . When combined with Prop. 5.1, the following proposition implies that we do not have to worry about the nodes that are no longer in .
Proposition 5.2.
For every and , if is locally matched at time , then is strongly matched at time .
By combining Prop. 5.1 and 5.2 with the following proposition, we deduce that if , then is in a legal configuration at time and will remain so indefinitely.
Proposition 5.3.
For every and , if , then is strongly unmatched at time .
The rest of the analysis is devoted to showing that it takes rounds in expectation and w.h.p. for the set to become empty. Let be the parameter promised in Cor. 3.3. The next proposition implies that from time , algorithm stabilizes in rounds in expectation and w.h.p. (in ), which is when is a constant as in . This means in particular that once reaches a configuration in which , it takes additional rounds in expectation and w.h.p. for the algorithm to stabilize.
Proposition 5.4.
Fix some time and a configuration at time . There exist universal positive constants and such that .
Unfortunately, by manipulating nodes, the adversary can lead the algorithm to a graph whose edge set is arbitrarily large (and not polynomially bounded) with respect to . To resolve this obstacle, we prove that it takes the algorithm rounds in expectation and w.h.p. to reduce the number of edges in down to . This relies on the following proposition derived from a nice combinatorial property of maximal matching.
Proposition 5.5.
Let . There exists a node set of size such that is an independent set in .
Consider the sets and promised in Prop. 5.5 and some positive constant whose value is determined later on. For , let and let be the random variable that takes on the earliest time such that . Since is an independent set, every edge in is incident on at least one vertex in , thus . Recalling that is a constant in , the proof of Thm. 1.1 is completed due to the following proposition, implying, by standard probabilistic arguments (see Appendix B), that in expectation and w.h.p.
Proposition 5.6.
Fix some time and a configuration at time . There exists a universal positive constant such that for every node .
5.2 Correctness of the Detection Process
We begin the journey towards proving Prop. 5.1–5.6 by establishing two simple structural observations regarding the operation of .
Observation 5.7.
For every time , node , and node , the following three statements are logically equivalent: (1) ; (2) ; (3) for every .
Observation 5.8.
For every and , if is strongly matched at time , then is strongly matched at time .
Proof.
Proof of Prop. 5.1.
The statement regarding a strongly matched node is proved by Obs. 5.8. If is a strongly unmatched at time , then , for every , and all neighbors of are strongly matched. The design of ensures that in this case, after the call to in line 2, hence at the end of the round and . By Obs. 5.8, all of ’s neighbors remain strongly matched, and by Obs. 5.7 we know that, for every .
Proof of Prop. 5.2.
Since is locally matched to at time , it holds that and . By Obs. 5.7, we know that and .
Proof of Prop. 5.3.
Since we know that all of ’s neighbors are locally matched. By Prop. 5.2, all of ’s neighbors are also strongly matched. Since is not locally matched we conclude that none of ’s neighbors are strongly matched to him. In this case, by Obs. 5.7, , for every . Moreover, by Prop. 5.1 and Obs. 5.7 it holds that, for every , is strongly matched at time and .
5.3 Eliminating the Graph
Our goal in this section is to establish Prop. 5.4– 5.6, starting with some additional definitions. For every time , let
be the subset of nodes that start a phase in round , recalling that is the state of ’s module at time . Let and let be the graph induced on by .
A key feature of is that in each phase, node writes to before reading from it for every register other than and . Therefore, we can conceptually assume that these registers are reset to an arbitrary default value at step .
Consider some graph . Node is said to be good in if at least of its neighbors in have degree . The following lemma is established by Alon et al. [3, Lem. 4.4].
Lemma 5.9.
Let be an undirected graph. At least of the edges in are incident on a good node.
Lem. 5.9 is exploited in the following two lemmas to show that sufficiently many edges are removed with a sufficiently high probability; Prop. 5.4 follows by a standard Markov inequality argument (see Appendix B).
Lemma 5.10.
Fix some time and a configuration at time . There exists a universal positive constant such that for every good node .
Proof.
Denote by the degree of node in , i.e., . Node is good, thus there exist such that for every . Recall that by the definition of , nodes and start a phase (in synchrony) at time . Node marks itself as passive in step of the phase with probability ; condition hereafter on this event. For , let be the event that marks itself as active and sends a message to in step of the phase, noticing that . Since the events are independent, it follows that the probability that none of them occurs is up-bounded by . The assertion follows since the occurrence of any of the events implies that becomes locally matched by the end of the phase that lasts for rounds.
Lemma 5.11.
Fix some time and a configuration at time . There exists a universal positive constant such that .
Proof.
Denote . Let be the (random) set of nodes such that and let . For every edge let be the event that . By Cor. 3.3, for every edge , we have
(1) |
Hence,
(2) |
Let and notice that . We partition the set into two (possibly empty) disjoint sets, and . By the definition of , it holds that .
By Lem. 5.9, in the (random) graph at least half of the edges are incident on a good node (at least one). Every good node in is removed with probability at least , where is the constant promised in Lem. 5.10. Hence, the expected number of removed edges in the time interval can be low-bounded as follows
By definition, , hence and by Eq. 2, . This allows us to low-bound the expected number of edges removed in the time interval by
thus completing the proof.
We now turn to establishing Prop. 5.5.
Proof of Prop. 5.5.
Let be the set of nodes in that are manipulated (by the adversary) during the time interval . Let be the set of nodes in that are strongly matched at time , referred to hereafter as orphans. We define and establish the assertion by proving that (1) ; and (2) is an independent set in .
For every orphan , let be the node with which is strongly matched at time . Note that does not necessarily exist in as it may have been removed during the time interval . Since and are no longer strongly matched at time and since is not manipulated during the time interval , Obs. 5.8 implies that must be manipulated during that time interval. We conclude that as the mapping defined by is injective. The bound follows since .
It remains to show that is an independent set in . This is done by arguing that every node is strongly unmatched at time . This establishes the assertion recalling that by definition, the nodes in are not manipulated during the time interval , hence the adversary does not introduce new edges in . To that end, assume by contradiction that there exists some node that is not strongly unmatched at time . Since is in a legal configuration at time , it follows that must be strongly matched at that time. But by definition, the nodes in that are strongly matched at time belong to either or , in contradiction to .
Corollary 5.12.
Fix some time and a configuration at time . If and , then is good in .
Proof.
Let . Node has at most neighbors from the set , thus at least of ’s neighbors in belong to . By Prop. 5.5, every node has degree at most which completes the proof.
The analysis is completed by establishing Prop. 5.6.
Proof of Prop. 5.6.
For every node , let be the first time after time such that . According to the definition of the module it must hold that and notice that is fully determined by . Denote by the event that for every . By Obs. 3.1, it holds that the event is independent of any coin toss of prior to time and of any coin toss of all other nodes and that
(3) |
For every node , we augment the power of the adversary by allowing it choose the outcome of any coin toss in the time interval . Notice that this adversary can only choose the outcome of coin tosses that are within a phase and cannot choose the outcome of coin tosses of the module. Let be the set of nodes that are not locally matched at time , i.e., . Let be the graph induced on by .
Fix some node . If node is locally matched at time or , then with probability . Otherwise ( is not locally matched at time and more than of its neighbors are in ), we will show that with probability node is locally matched at time which implies that .
Let be the event that . We start by showing that there exists such that . For every , let be the event that occurred and . By Eq. 3 and Obs. 3.1 we conclude that . Moreover, the events in are independent.
Denote and let be the neighbors of is . Let be the random variable that counts the number of occurrences of events . Notice that if and occurs, then event occur; moreover, events and are independent and since .
By choosing and applying Chernoff’s (lower tail) bound we conclude that
Thus . By Cor. 5.12 and Lem. 5.10, occurrence of implies that is good in and a good node is removed with at least a constant probability by the end of the phase, i.e., at time . We conclude that
thus establishing the assertion.
Remark.
Unfortunately, we did not manage to prove Prop. 5.6 based on the promise of Cor. 3.3 as we did in the proof of Lem. 5.11. Instead, we used the weaker promise of Obs. 3.1 that results in an exponential, rather than polynomial, dependency on the phase length . As is a constant in , this does not affect its asymptotic run-time.
References
- [1] Yehuda Afek and Shlomi Dolev. Local stabilizer. Journal of Parallel and Distributed Computing, 62(5):745–765, 2002. doi:10.1006/jpdc.2001.1823.
- [2] Yehuda Afek, Shay Kutten, and Moti Yung. The local detection paradigm and its applications to self-stabilization. Theoretical Computer Science, 186(1-2):199–229, 1997. doi:10.1016/S0304-3975(96)00286-1.
- [3] Noga Alon, László Babai, and Alon Itai. A fast and simple randomized parallel algorithm for the maximal independent set problem. Journal of algorithms, 7(4):567–583, 1986. doi:10.1016/0196-6774(86)90019-2.
- [4] Karine Altisen, Stéphane Devismes, Swan Dubois, and Franck Petit. Introduction to distributed self-stabilizing algorithms. Synthesis Lectures on Distributed Computing Theory, 8(1):1–165, 2019. doi:10.2200/S00908ED1V01Y201903DCT015.
- [5] Ozkan Arapoglu and Orhan Dagdeviren. An asynchronous self-stabilizing maximal independent set algorithm in wireless sensor networks using two-hop information. In 2019 International Symposium on Networks, Computers and Communications (ISNCC), pages 1–5. IEEE, 2019. doi:10.1109/ISNCC.2019.8909189.
- [6] Anish Arora and Hongwei Zhang. LSRP: Local stabilization in shortest path routing. IEEE/ACM Transactions on Networking, 14(3):520–531, 2006. doi:10.1145/1143396.1143402.
- [7] Yuma Asada, Fukuhito Ooshita, and Michiko Inoue. An efficient silent self-stabilizing 1-maximal matching algorithm in anonymous networks. Journal of Graph Algorithms and Applications, 20(1):59–78, 2016. doi:10.7155/jgaa.00384.
- [8] Baruch Awerbuch, Boaz Patt-Shamir, and George Varghese. Self-stabilization by local checking and correction (extended abstract). In 32nd Annual Symposium on Foundations of Computer Science, San Juan, Puerto Rico, 1-4 October 1991, pages 268–277. IEEE, IEEE Computer Society, 1991. doi:10.1109/SFCS.1991.185378.
- [9] Baruch Awerbuch, Boaz Patt-Shamir, George Varghese, and Shlomi Dolev. Self-stabilization by local checking and global reset (extended abstract). In Distributed Algorithms, 8th International Workshop, WDAG ’94, Terschelling, The Netherlands, September 29 - October 1, 1994, Proceedings, volume 857, pages 326–339. Springer, Springer, 1994. doi:10.1007/BFb0020443.
- [10] Baruch Awerbuch and George Varghese. Distributed program checking: A paradigm for building self-stabilizing distributed protocols (extended abstract). In 32nd Annual Symposium on Foundations of Computer Science, San Juan, Puerto Rico, 1-4 October 1991, pages 258–267. IEEE, IEEE Computer Society, 1991. doi:10.1109/SFCS.1991.185377.
- [11] Yossi Azar, Shay Kutten, and Boaz Patt-Shamir. Distributed error confinement. In Proceedings of the twenty-second annual symposium on Principles of distributed computing, pages 33–42, 2003. doi:10.1145/872035.872041.
- [12] Alkida Balliu, Sebastian Brandt, Juho Hirvonen, Dennis Olivetti, Mikaël Rabie, and Jukka Suomela. Lower bounds for maximal matchings and maximal independent sets. In 2019 IEEE 60th Annual Symposium on Foundations of Computer Science (FOCS), pages 481–497. IEEE, 2019. doi:10.1109/FOCS.2019.00037.
- [13] Alkida Balliu, Juho Hirvonen, Darya Melnyk, Dennis Olivetti, Joel Rybicki, and Jukka Suomela. Local mending. In Merav Parter, editor, Structural Information and Communication Complexity - 29th International Colloquium, SIROCCO 2022, Paderborn, Germany, June 27-29, 2022, Proceedings, pages 1–20, 2022. doi:10.1007/978-3-031-09993-9_1.
- [14] Philipp Bamberger, Fabian Kuhn, and Yannic Maus. Local distributed algorithms in highly dynamic networks. In 2019 IEEE International Parallel and Distributed Processing Symposium, IPDPS 2019, Rio de Janeiro, Brazil, May 20-24, 2019, pages 33–42, 2019. doi:10.1109/IPDPS.2019.00015.
- [15] Leonid Barenboim, Michael Elkin, and Uri Goldenberg. Locally-iterative distributed ( + 1)-coloring and applications. J. ACM, 69(1):5:1–5:26, 2022. doi:10.1145/3486625.
- [16] Leonid Barenboim, Michael Elkin, Seth Pettie, and Johannes Schneider. The locality of distributed symmetry breaking. J. ACM, 63(3):20:1–20:45, 2016. doi:10.1145/2903137.
- [17] Surender Baswana, Manoj Gupta, and Sandeep Sen. Fully dynamic maximal matching in update time. SIAM Journal on Computing, 44(1):88–113, 2015. doi:10.1137/130914140.
- [18] Shimon Bitton, Yuval Emek, Taisuke Izumi, and Shay Kutten. Fully adaptive self-stabilizing transformer for LCL problems. CoRR, abs/2105.09756, 2024. doi:10.48550/arXiv.2105.09756.
- [19] Keren Censor-Hillel, Neta Dafni, Victor I. Kolobov, Ami Paz, and Gregory Schwartzman. Fast and simple deterministic algorithms for highly-dynamic networks. CoRR, abs/1901.04008, 2019. doi:10.48550/arXiv.1901.04008.
- [20] Keren Censor-Hillel, Elad Haramaty, and Zohar Karnin. Optimal dynamic distributed mis. In Proceedings of the 2016 ACM Symposium on Principles of Distributed Computing, pages 217–226. ACM, 2016. doi:10.1145/2933057.2933083.
- [21] Johanne Cohen, Jonas Lefèvre, Khaled Maâmra, Laurence Pilard, and Devan Sohier. A self-stabilizing algorithm for maximal matching in anonymous networks. Parallel Process. Lett., 26(4):1650016:1–1650016:17, 2016. doi:10.1142/S012962641650016X.
- [22] Johanne Cohen, George Manoussakis, Laurence Pilard, and Devan Sohier. A self-stabilizing algorithm for maximal matching in link-register model. In International Colloquium on Structural Information and Communication Complexity, pages 14–19. Springer, 2018. doi:10.1007/978-3-030-01325-7_2.
- [23] Richard Cole and Uzi Vishkin. Deterministic coin tossing with applications to optimal parallel list ranking. Information and Control, 70(1):32–53, 1986. doi:10.1016/S0019-9958(86)80023-7.
- [24] Ajoy Kumar Datta, Lawrence L. Larmore, and Toshimitsu Masuzawa. Maximum matching for anonymous trees with constant space per process. In 19th International Conference on Principles of Distributed Systems, OPODIS 2015, December 14-17, 2015, Rennes, France, volume 46 of LIPIcs, pages 16:1–16:16. Schloss Dagstuhl – Leibniz-Zentrum für Informatik, Schloss Dagstuhl – Leibniz-Zentrum für Informatik, 2015. doi:10.4230/LIPIcs.OPODIS.2015.16.
- [25] Murat Demirbas, Anish Arora, Tina Nolte, and Nancy Lynch. A hierarchy-based fault-local stabilizing algorithm for tracking in sensor networks. In International Conference on Principles of Distributed Systems, pages 299–315. Springer, 2004. doi:10.1007/11516798_22.
- [26] Edsger W Dijkstra. Self-stabilization in spite of distributed control. In Selected writings on computing: a personal perspective, pages 41–46. Springer, 1982.
- [27] Shlomi Dolev. Self-stabilization. MIT press, 2000. URL: http://www.cs.bgu.ac.il/%7Edolev/book/book.html.
- [28] Shlomi Dolev and Ted Herman. Superstabilizing protocols for dynamic distributed systems (abstract). In Proceedings of the Fourteenth Annual ACM Symposium on Principles of Distributed Computing, Ottawa, Ontario, Canada, August 20-23, 1995, page 255. ACM, ACM, 1995. doi:10.1145/224964.224993.
- [29] Michael Elkin and Jian Zhang. Efficient algorithms for constructing (1+epsilon, beta)-spanners in the distributed and streaming models. Distributed Comput., 18(5):375–385, 2006. doi:10.1007/s00446-005-0147-2.
- [30] Manuela Fischer. Improved deterministic distributed matching via rounding. In 31st International Symposium on Distributed Computing, DISC, pages 17:1–17:15, 2017. doi:10.4230/LIPIcs.DISC.2017.17.
- [31] G.N. Frederickson. Data structures for on-line updating of minimum spanning trees, with applications. SIAM J. on Computing (SICOMP), 14(4):781–798, 1985. doi:10.1137/0214055.
- [32] Mohsen Ghaffari. An improved distributed algorithm for maximal independent set. In Proceedings of the twenty-seventh annual ACM-SIAM symposium on Discrete algorithms, pages 270–277. SIAM, 2016. doi:10.1137/1.9781611974331.ch20.
- [33] Mohsen Ghaffari. Distributed maximal independent set using small messages. In Proceedings of the Thirtieth Annual ACM-SIAM Symposium on Discrete Algorithms, pages 805–820. SIAM, 2019. doi:10.1137/1.9781611975482.50.
- [34] Sukumar Ghosh, Arobinda Gupta, Ted Herman, and Sriram V Pemmaraju. Fault-containing self-stabilizing algorithms. In Proceedings of the fifteenth annual ACM symposium on Principles of distributed computing, pages 45–54. ACM, 1996. doi:10.1145/248052.248057.
- [35] Wayne Goddard, Stephen T. Hedetniemi, David Pokrass Jacobs, and Pradip K. Srimani. A robust distributed generalized matching protocol that stabilizes in linear time. In 23rd International Conference on Distributed Computing Systems Workshops (ICDCS 2003 Workshops), 19-22 May 2003, Providence, RI, USA, pages 461–465. IEEE, IEEE Computer Society, 2003. doi:10.1109/ICDCSW.2003.1203595.
- [36] Wayne Goddard, Stephen T. Hedetniemi, David Pokrass Jacobs, and Pradip K. Srimani. Self-stabilizing protocols for maximal matching and maximal independent sets for ad hoc networks. In 17th International Parallel and Distributed Processing Symposium (IPDPS 2003), 22-26 April 2003, Nice, France, CD-ROM/Abstracts Proceedings, page 162. IEEE, IEEE Computer Society, 2003. doi:10.1109/IPDPS.2003.1213302.
- [37] Maria Gradinariu and Colette Johnen. Self-stabilizing neighborhood unique naming under unfair scheduler. In European Conference on Parallel Processing, pages 458–465. Springer, 2001. doi:10.1007/3-540-44681-8_67.
- [38] Nabil Guellati and Hamamache Kheddouci. A survey on self-stabilizing algorithms for independence, domination, coloring, and matching in graphs. Journal of Parallel and Distributed Computing, 70(4):406–415, 2010. doi:10.1016/j.jpdc.2009.11.006.
- [39] Michal Hanckowiak, Michal Karonski, and Alessandro Panconesi. On the distributed complexity of computing maximal matchings. SIAM Journal on Discrete Mathematics, 15(1):41–57, 2001. doi:10.1137/S0895480100373121.
- [40] Stephen T Hedetniemi, David P Jacobs, and Pradip K Srimani. Maximal matching stabilizes in time o (m). Information Processing Letters, 80(5):221–223, 2001. doi:10.1016/S0020-0190(01)00171-5.
- [41] Maurice Herlihy, Victor Luchangco, and Mark Moir. Obstruction-free synchronization: Double-ended queues as an example. In 23rd International Conference on Distributed Computing Systems (ICDCS 2003), 19-22 May 2003, Providence, RI, USA, pages 522–529. IEEE, IEEE Computer Society, 2003. doi:10.1109/ICDCS.2003.1203503.
- [42] Su-Chu Hsu and Shing-Tsaan Huang. A self-stabilizing algorithm for maximal matching. Information processing letters, 43(2):77–81, 1992. doi:10.1016/0020-0190(92)90015-N.
- [43] Can Umut Ileri and Orhan Dagdeviren. A self-stabilizing algorithm for b-matching. Theoretical Computer Science, 753:64–75, 2019. doi:10.1016/j.tcs.2018.06.042.
- [44] Amos Israeli and Alon Itai. A fast and simple randomized parallel algorithm for maximal matching. Information Processing Letters, 22(2):77–80, 1986. doi:10.1016/0020-0190(86)90144-4.
- [45] Richard M Karp and Avi Wigderson. A fast parallel algorithm for the maximal independent set problem. Journal of the ACM (JACM), 32(4):762–773, 1985. doi:10.1145/4221.4226.
- [46] Masahiro Kimoto, Tatsuhiro Tsuchiya, and Tohru Kikuno. The time complexity of Hsu and Huang’s self-stabilizing maximal matching algorithm. IEICE transactions on information and systems, 93(10):2850–2853, 2010. doi:10.1587/transinf.E93.D.2850.
- [47] Michael König and Roger Wattenhofer. On local fixing. In International Conference On Principles Of Distributed Systems, pages 191–205. Springer, 2013. doi:10.1007/978-3-319-03850-6_14.
- [48] Kishore Kothapalli, Christian Scheideler, Melih Onus, and Christian Schindelhauer. Distributed coloring in bit rounds. In 20th International Parallel and Distributed Processing Symposium (IPDPS 2006), Proceedings, 25-29 April 2006, Rhodes Island, Greece. IEEE, 2006. doi:10.1109/IPDPS.2006.1639281.
- [49] Shay Kutten and Boaz Patt-Shamir. Time-adaptive self stabilization. In Proceedings of the sixteenth annual ACM symposium on Principles of distributed computing, pages 149–158. ACM, 1997. doi:10.1145/259380.259435.
- [50] Shay Kutten and David Peleg. Fault-local distributed mending (extended abstract). In Proceedings of the Fourteenth Annual ACM Symposium on Principles of Distributed Computing, Ottawa, Ontario, Canada, August 20-23, 1995, pages 20–27. ACM, ACM, 1995. doi:10.1145/224964.224967.
- [51] Leslie Lamport. Distribution, May 1987. Email message sent to a DEC SRC bulletin board at 12:23:29 PDT on 28 May 87. URL: https://www.microsoft.com/en-us/research/publication/distribution/.
- [52] Leslie Lamport. A fast mutual exclusion algorithm. ACM Transactions on Computer Systems (TOCS), 5(1):1–11, 1987. doi:10.1145/7351.7352.
- [53] Christoph Lenzen, Jukka Suomela, and Roger Wattenhofer. Local algorithms: Self-stabilization on speed. In Symposium on Self-Stabilizing Systems, pages 17–34. Springer, 2009. doi:10.1007/978-3-642-05118-0_2.
- [54] Nathan Linial. Locality in distributed graph algorithms. SIAM J. Comput., 21(1):193–201, 1992. doi:10.1137/0221015.
- [55] Zvi Lotker, Boaz Patt-Shamir, and Adi Rosén. Distributed approximate matching. SIAM Journal on Computing, 39(2):445–460, 2009. doi:10.1137/080714403.
- [56] Michael Luby. A simple parallel algorithm for the maximal independent set problem. SIAM journal on computing, 15(4):1036–1053, 1986. doi:10.1137/0215074.
- [57] Fredrik Manne, Morten Mjelde, Laurence Pilard, and Sébastien Tixeuil. A new self-stabilizing maximal matching algorithm. Theoretical Computer Science, 410(14):1336–1345, 2009. doi:10.1016/j.tcs.2008.12.022.
- [58] Fredrik Manne, Morten Mjelde, Laurence Pilard, and Sébastien Tixeuil. A self-stabilizing 23-approximation algorithm for the maximum matching problem. Theoretical Computer Science, 412(40):5515–5526, 2011. doi:10.1016/j.tcs.2011.05.019.
- [59] Darya Melnyk, Jukka Suomela, and Neven Villani. Mending partial solutions with few changes. CoRR, abs/2209.05363, 2022. doi:10.48550/arXiv.2209.05363.
- [60] Ofer Neiman and Shay Solomon. Simple deterministic algorithms for fully dynamic maximal matching. ACM Trans. Algorithms, 12(1):7:1–7:15, 2016. doi:10.1145/2700206.
- [61] Alessandro Panconesi and Romeo Rizzi. Some simple distributed algorithms for sparse networks. Distributed Comput., 14(2):97–100, 2001. doi:10.1007/PL00008932.
- [62] Alex Scott, Peter Jeavons, and Lei Xu. Feedback from nature: an optimal distributed algorithm for maximal independent set selection. In Proceedings of the 2013 ACM symposium on Principles of distributed computing, pages 147–156, 2013. doi:10.1145/2484239.2484247.
- [63] Zhengnan Shi, Wayne Goddard, and Stephen T Hedetniemi. An anonymous self-stabilizing algorithm for 1-maximal independent set in trees. Information Processing Letters, 91(2):77–83, 2004. doi:10.1016/j.ipl.2004.03.010.
- [64] Gerard Tel. Maximal matching stabilizes in quadratic time. Information Processing Letters, 49(6):271–272, 1994. doi:10.1016/0020-0190(94)90098-1.
- [65] Volker Turau. Making randomized algorithms self-stabilizing. In Structural Information and Communication Complexity - 26th International Colloquium, SIROCCO 2019, L’Aquila, Italy, July 1-4, 2019, Proceedings, pages 309–324, 2019. doi:10.1007/978-3-030-24922-9_21.
- [66] Mirjam Wattenhofer and Roger Wattenhofer. Distributed weighted matching. In International Symposium on Distributed Computing, pages 335–348. Springer, 2004. doi:10.1007/978-3-540-30186-8_24.
- [67] Elizabeth Lee Wilmer. Exact rates of convergence for some simple non-reversible Markov chains. PhD thesis, Department of Mathematics, Harvard University, 1999.
Appendix A Proving Lemma 3.2
Proof of Lem. 3.2.
To avoid cumbersome notation, we assume throughout this proof that . Let be a stochastic process such that . The stochastic process can be defined by the discrete time Markov chain with state space as in Fig. 1.
Let be the time-homogeneous transition matrix of the Markov chain and the matrix to the power of . Denote entry of by and recall that for every such that it holds that . For convenience sake, let .
The chain is ergodic, thus there exists a unique stationary distribution on the state space , which we denote by the size vector . It is easily verifiable that and for every . We will prove that there exists such that for every it holds that
(4) |
and
(5) |
Appendix B Standard Probabilistic Arguments
In the section we will show how to prove Thm. 1.1 using Prop. 5.4–5.6. It is also used to prove Prop. 5.4 using Lem. 5.11.
Fix some and . We define . Let be a stochastic process such that (1) ; (2) for every , it holds that with probability ; and (3) for every it holds that . The random variable that corresponds to the run time of an algorithm with the aforementioned properties is defined as .
Fix some and . Let . By applying Markov inequality we get
Hence,
This is regardless of the value of and . So, for every with probability at least the value of decreases by a factor of and we denote this event by .
Let and denote the th occurrence of events from the set . Since , it holds that implying that . It is easily verifiable that is stochastically dominated by a random variable and the proof is completed by the properties of .
Appendix C Figures and Tables
register | values set |
---|---|
, | |
, | |
, | |