o. biran,s. moran,s. zaks
DESCRIPTION
A combinatorial characterization of the distributed tasks which are solvable in the presence of one faulty processor. O. Biran,S. Moran,S. Zaks. Introduction. FLP showed that achieving a distributed consensus is impossible in the presence of one faulty processor. Introduction. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/1.jpg)
A combinatorial characterization of the distributed tasks which are solvable in the
presence of one faulty processor
O. Biran, S. Moran,S. Zaks
![Page 2: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/2.jpg)
Introduction
FLP showed that achieving a distributed consensus is impossible in the presence of one faulty processor.
![Page 3: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/3.jpg)
Introduction
We will present a condition that is necessary and sufficient in order for a task to be solvable in the presence of a faulty processor.
Also we present a universal protocol which solves any task which is found to be solvable by our condition.
![Page 4: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/4.jpg)
Definitions
The network is asynchronous and distributed.
There are N > 2 processors, V = {P1, P2, …, PN}.
We assume (w.l.o.g) that . iPidentityVP ii
The messages arrive with no error and in finite but unbounded and unpredictable time.
![Page 5: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/5.jpg)
Definitions
One processor might be faulty (be defined later)
We assume that the network is complete (clique), but the results can be easily generalized to every biconnected network in which a failure of one processor cannot disconnect the network.
![Page 6: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/6.jpg)
Adjacency Graphs
Let AN denote the set all vectors ā = (a1, a2, …, aN)
where A is an arbitrary set and
(a Cartesian multiplication of order N)
Aa i i
Let S be a set, when NAS
are adjacent if they differ in exactly one component.
Ss,s 21
![Page 7: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/7.jpg)
Adjacency Graphs
The adjacency graph of S, G(S) = (S, ES) is an undirected graph adjacent are s,sEs,s 21S21
is called a partial vector (which means that the i component is undefined)
For a set of vectors, S, SssS ii
)s,,s,,s , ,(ss N1i1-i1i
![Page 8: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/8.jpg)
i - Cliques
For each clique C in G(S), corresponds an integer 1 ≤ i ≤ N such that all the vectors in C differ from one another in exactly the i-th component.
Let C and i be a clique and its corresponding integer, than C is called an i-Clique. Notice that C defines a partial vector is
![Page 9: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/9.jpg)
Maximal i - Cliques
A maximal i-clique is an i-clique which is not contained in any other i-clique.
Notice that every defines a maximal i-clique that includes and all the vectors that differs from in exactly the i-th component
is
s
s
![Page 10: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/10.jpg)
Decision Tasks
Let A and B be arbitrary sets. Let f : A 2B be a function that assigns to each element a subset f(a) of B.
Cc
)(][A C
cfCf
Aa
Similarly,
![Page 11: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/11.jpg)
Decision Tasks
Let X and D be sets of input_values and decision_values respectively.
ND
TXT 2:
A distributed decision task T is a function
where NT XX Is called the input set of task T
![Page 12: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/12.jpg)
Decision Tasks
Similarly,
Each vector
][ TT XTD
Similarly, for decision vector
is called the decision set of T
TX ) x, x,(xx N21 is called aninput vector and it represents the initial assignment of the input value to processor Pi
Xxi
TD )d ,d ,(dd N21
![Page 13: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/13.jpg)
Decision Tasks
A decision task T maps each input vector to a non-empty set of allowable decision vectors.
The adjacency graph G(XT) of the input set XT
is called the input graph of T.
Similarly, the adjacency graph G(DT) of the input set DT is called the decision graph of T.
![Page 14: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/14.jpg)
Examples of Decision Tasks
ConsensusN
T XX ,11,1,,,00,0,)xT(Xx T
Strong consensusN
T XX
,11,1,,,00,0,)xT(Xx T
1,,1,10,,0,0, vTuTXvu T
![Page 15: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/15.jpg)
Examples of Decision Tasks
Approximate consensusN
T QX
Mdmεddji
Dd,d,ddxT
x,x,xmaxM
x,x,xminm
iji
NN21
N21
N21
0given any for
![Page 16: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/16.jpg)
Examples of Decision Tasks
Order preserving renaming (OPR) ji xxjiji N
T ΝX
jiji
i
NN21
ddxxji
Kd1i
Dd,d,dd
xT
NKK ,given any for
![Page 17: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/17.jpg)
Protocols
Protocol for a given network is a set of N programs, each associated with a single processor.
![Page 18: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/18.jpg)
Programs
Each program contains:
•Reading an input value
•Sending a message to a neighbor
•Receiving a message from a neighbor
•Performing a local computation
•Halting
![Page 19: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/19.jpg)
Decision Protocols
A decision protocol is a protocol that when halts always writes an output value (to the associated element of DT
![Page 20: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/20.jpg)
Executions
For a given network that is initialized with an input vector (x1, x2, …, xN) of XN , if each processor executes its own program, the sequence of operations performed by the processors is called an execution on the input vector.
![Page 21: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/21.jpg)
Executions
Notice that for an input vector (x1, x2, …, xN) there can be more than one executions (due to the asynchronous nature of the system).
The set of all executions of protocol α on an input vector is denoted byx xE
![Page 22: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/22.jpg)
Terminating Executions
A protocol in which all the processors eventually halts is called a terminating protocol.
N21 d,,d,dd
xe,D
The vector where di is the decision value of the processor pi in the execution e of protocol α is called the output vector of the execution e and is denoted by
![Page 23: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/23.jpg)
Terminating Executions
is the set of all output vectors of all the terminating executions of the protocol α the input vector
xD
x
xTEeαα
α
xe,DxD
xTEα
is the set of all terminating executions of α on the input vector.
![Page 24: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/24.jpg)
Terminating Executions
For a set S, we will define Dα[S] to be the union
Sx
αα xDSD
Notice that :
TTα
TTα
DXDαT
DXDαT
![Page 25: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/25.jpg)
Solvability
The protocol α solves task T if :
)()(.2
)()(.1
Xx T
xTxD
xTExE
![Page 26: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/26.jpg)
Solvability
Notice that :
T solves αsuch that α T
T must be computable
![Page 27: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/27.jpg)
Solvability
Notice that :
T solves αsuch that α T
![Page 28: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/28.jpg)
Solvability
Notice that :
T solves αsuch that α T
![Page 29: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/29.jpg)
Solvability
Notice that :
T solves αsuch that α T
![Page 30: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/30.jpg)
Solvability
Notice that :
T solves αsuch that α T
Knows all the available information and calculates
the desired result
![Page 31: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/31.jpg)
Solvability
Notice that :
T solves αsuch that α T
![Page 32: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/32.jpg)
Solvability
Notice that :
T solves αsuch that α T
![Page 33: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/33.jpg)
Solvability
Notice that :
T solves αsuch that α T
![Page 34: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/34.jpg)
Solvability
Notice that :
T solves αsuch that α T Output vector
![Page 35: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/35.jpg)
Faulty Processors
The processor P is faulty in an execution e if after a certain time, all the messages sent by P are not received. (fail-stop failure)
A striking processor
![Page 36: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/36.jpg)
1-Solvability
The protocol α 1-solves task T if :
• If no processor is faulty than α solves T
• If in an execution e one processor is faulty then all the other processors eventually halt.
If for a decision task T such α exists, then T is
called 1-solvable
![Page 37: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/37.jpg)
1-Solvability
Notice that the strong consensus decision task of FLP is not 1-solvable.
On the other hand, the weak consensus is clearly 1-solvable, using the trivial solving protocol.
![Page 38: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/38.jpg)
Conditions for 1-Solvability
We shall present 2 basic conditions for a task T to be 1-solvable by protocol α.
![Page 39: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/39.jpg)
The Connectivity Condition
Theorem MW -
MW are S. Moran and Y. Wolfstahl
Let T be a decision task that has a connected input graph and let α be a given protocol.
If α 1-solves T, then G(Dα[XT]) is connected.
![Page 40: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/40.jpg)
The Connectivity Condition
Theorem 1 - Let T be a decision task. Let be such as G(C) is a connected sub graph of the input graph G(XT). Let α be a given protocol.
If α 1-solves T, then G(Dα[C]) is connected.
TXC
![Page 41: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/41.jpg)
The Connectivity Condition - Proof
Let α be a protocol that 1-solves the task T:XTDT
We define a new task T’:CDα[C], such that XT’=C and . xTxT` Cx
Clearly α 1-solves T`. By applying theorem MW to T` we have G(Dα[XT`]) is connected.
![Page 42: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/42.jpg)
DT
Restrictions
A task T` restriction of task T if XT`=XT and
xTxT` Xx ` T
Notice that if α is a protocol which (1-)solves T` then α also (1-)solves T.
XT
DT`T`
T
![Page 43: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/43.jpg)
Tα
Let T be a task and α a protocol which solves T.
We denote by Tα the task induced by α.
xDxT Xx
XX
T
T
T
Note that Tα is a restriction of T.
![Page 44: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/44.jpg)
Pointwise connected
A task T is pointwise connected if is connected. xTG Xx T
Corollary 1 - If a protocol α 1-solves a task T then Tα, the task induced by α and T, is pointwise connected.
![Page 45: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/45.jpg)
Covering Clique
Let be a maximal input i-clique in G(XT), and B an i-clique in G(DT).
We say that B is a covering clique for (with respect to the task T) if :
ixC
ixC
ΦByTxCy i
The partial decision vector defined by a covering clique for is called covering partial vector for
ixC ixC
![Page 46: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/46.jpg)
Open for business
i-Sleeping Execution
Let α be a protocol that 1-solves a task T. An i-sleeping execution of α is an execution in which all the messages sent by Pi are delayed until all other processors halt and decide.
We’re on a strike
![Page 47: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/47.jpg)
The Sleeping Processor Condition
Theorem 2 - Let T be a decision task and α a protocol that 1-solves T. Then, in Tα there is a covering clique for each maximal input i-clique.
![Page 48: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/48.jpg)
Sleeping Processor Condition - Proof
Let be a maximal input i-clique. Consider the i-sleeping-execution in α in which the input to Pj is xj for each j ≠ i.
Let be the partial output vector by the non sleeping processors.
We claim that the maximal i-cliquein G(D(Tα)) is a covering clique for
ixC
id
idCD ixC
![Page 49: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/49.jpg)
Sleeping Processor Condition - Proof
Let yi be any value such that the vector N1ii1i21 x,,x,y,x,x,x y is a possible input
vector in . We must show that ixC yTD
For this, assume that is the actual input to α and that Pi is eventually awakened. Pi must eventually decide on a value di to obtain an input vector
y
yTDin clearly is d This .d,,d,,dd αni1
![Page 50: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/50.jpg)
Sleeping Processor Condition
iE
i
xCy
iE
i
iE
xCT
iff xCfor clique covering a exists e that therNote
.yT xCT
thatsee todifficult not isIt .xCfor vectors
partial covering all ofset thedenotes xCTLet
i i
![Page 51: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/51.jpg)
Theorem 2 – Example 1
Consider the OPR task of N = 3 and K = 4.
3,4,2,3,4,1,2,4,1,2,3,1xT
2,4,3,1,4,3,1,4,2,1,3,2xT
2,3,4,1,3,4,1,2,4,1,2,3xT
9,12,10,11,12,10,13,12,10X
3
2
1
321T
xxx
![Page 52: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/52.jpg)
Theorem 2 – Example 1
3,4,,2,4,,2,3,xT
2,4,,1,4,,1,3,xT
2,3,,1,3,,1,2,xT
hence 10,12, v wherevC clique-3input For the
33
32
31
33
2). Theorem(by solvable-1not is task the
thatmeans which vCT that seecan We 3E
![Page 53: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/53.jpg)
Theorem 2 – Example 2
Consider the OPR task of N = 3 and K = 5.
9,12,10,11,12,10,13,12,10X 321T xxx
4,5,,3,5,,3,4,,2,5,,2,4,,2,3,xT
3,5,,2,5,,2,4,,1,5,,1,4,,1,3,xT
3,4,,2,4,,2,3,,1,4,,1,3,,1,2,xT
hence 10,12, v wherevC clique-3input For the
33
32
31
33
![Page 54: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/54.jpg)
Theorem 2 – Example 2
2). Theorem(by solvable-1 IS task that the
means which ,4,2vCT that seecan We 3E
? ? ?
2 4 ?
2 4 1/3/5
![Page 55: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/55.jpg)
Conditions for 1-Solvability
Next we shall present two necessary andsufficient conditions for 1-solvability
![Page 56: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/56.jpg)
Conditions for 1-Solvability
clique. covering asuch
is dC that so d a outputs vinput on that algorithm
dcenterlize a is thereAlso, T`.in clique covering
a is therevC clique-iinput maximaleach For 2
connected. pointwise is T` 1
: following thesatisfying T`
T, ofn restrictio a exists thereiff solvable-1 is TA task
iii
i
Theorem 3 :
![Page 57: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/57.jpg)
Theorem 3 – Proof
conditions 2 thesatisfies
thatT ofn restrictio T` solvable-1 is T
Only if
![Page 58: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/58.jpg)
Theorem 3 – Proof
Condition 1
Let α be a protocol that 1-solves task T (by the assumption that T is 1-solvable).
Tα is a restriction of T (as we saw before).
Tα is pointwise connected (by Corollary 1).
![Page 59: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/59.jpg)
Theorem 3 – Proof
Condition 2
Tα contains a covering clique for each maximal input i-clique (Theorem 2).
For each partial input vector the corresponding can be computed by simulating an i-sleeping-execution of α on the input , as described in the proof of Theorem 2.
ix
ix
id
![Page 60: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/60.jpg)
Theorem 3 – Proof
conditions 2 thesatisfies
thatT ofn restrictio T` solvable-1 is T
If
![Page 61: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/61.jpg)
Theorem 3 – Proof
Let T be a task which has a restriction T` which satisfies both conditions mentioned.
We will present a protocol which 1-solves T` and hence 1-solves T (as we saw before)
![Page 62: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/62.jpg)
i-Anchor
.executions-sleeping-iin output arethat
ectorsdecision v thoseare anchors-i that means This
D.xT`d if x of
an is dtor output vecan Then, .xCfor clique
covering a be dCDlet andor input vectan be xLet i
i
i-anchor
![Page 63: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/63.jpg)
i-Anchor – Example
In OPR with N = 3, K = 5, and input vector (10,20,30), and in a 2-sleeping-execution, P1 and P3 will output the partial covering vector (2, *, 4).
(This will happen since without knowing the value of P2, P1 and P3 can decide on 2 and 4 respectively and still allow P2 to decide on 1 / 3 / 5 which cover all the possible combinations)
![Page 64: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/64.jpg)
i-Anchor – Example
In OPR with N = 3, K = 5, and input vector (10,20,30), and in a 2-sleeping-execution, P1 and P3 will output the partial covering vector (2, *, 4).
So (2, 3, 4) is a 2-anchor.
![Page 65: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/65.jpg)
Theorem 3 – Proof
.S contains that xT`G
in TR treefinite a is therex of anchors-i of Sset finite
given afor hence connected, is xT`G 1condition By
.xCfor ,d vector covering partial a
outputs and xor input vect partial ainput an as getsthat
COMP.CLIQ algorithman is there2condition By
x
xx
ii
i
![Page 66: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/66.jpg)
Theorem 3 – Proof
xx
xx
TRin vector arbitrary an is which rroot a and
above as TR treea outputs x of anchors-i of S
set finite a and xinput an on that COMP.TREE
algorithman exists therecomputable is T Since
The protocol assumes that each processor Pk contains a copy of the algorithms COMP.CLIQ and COMP.TREE described above.
![Page 67: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/67.jpg)
Theorem 3 – the Protocol
Pk
xk
xk
xk
xk
xk
xk
STAGE ASending xk to all
xk
![Page 68: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/68.jpg)
Theorem 3 – the Protocol
Pk
STAGE A Receiving first (N-1) initial values (including xk)
![Page 69: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/69.jpg)
Theorem 3 – the Protocol
STAGE B Calculating partial vector and sending to all
Pk
ixixix
ixixix
ix
![Page 70: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/70.jpg)
Theorem 3 – the Protocol
Pk
STAGE B Receiving first (N-1) partial vectors
Notice that all the partial vectorsAre not necessary identical
![Page 71: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/71.jpg)
Theorem 3 – the Protocol
Pk
STAGE B Are all the partial vectors identical ?
?
![Page 72: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/72.jpg)
Theorem 3 – the Protocol
STAGE B Are all the partial vectors identical ?
Yes !Pk decides on its output value
according to the common partial vector
ii xCOMP.CLIQ d
![Page 73: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/73.jpg)
Theorem 3 – the Protocol
STAGE B Are all the partial vectors identical ?
No !
But notice that now Pk knowsthe entire input vector
![Page 74: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/74.jpg)
Theorem 3 – the Protocol
x
x
TRIn
k
TRIn
s
j
xCOMP.CLIQCin x of anchors-i
N321x
AFATHERd
else
AFATHERd
identical were2)-(N messages x 1)-(N thefrom If
A,,A,A,A,xCOMP.TREETR
![Page 75: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/75.jpg)
Theorem 3 – the Protocol
1
1 ,d SUGGEST,BROADCAST
ll
FALSEdecided
![Page 76: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/76.jpg)
Theorem 3 – the Protocol
STAGE C of the protocol
in which all the processors will try to agree on a
common set of two adjacent vectors
![Page 77: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/77.jpg)
Theorem 3 – the Protocol
messages `dSUGGEST are messages 1)-(N all
message `dDECIDE a is messages theof one IF
1 phase of messages 1)-(N RECEIVE
1
begin
do while
l-
ll
decidedNOT
![Page 78: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/78.jpg)
Theorem 3 – the Protocol
dFATHERd
`dSUGGEST are messages thefrom 2)-(N if
else
`dBROADCAST
`dDECIDE
TRUEdecided
![Page 79: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/79.jpg)
Theorem 3 – the Protocol
end
`dSUGGESTBROADCAST
end
dFATHERd
else
![Page 80: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/80.jpg)
Theorem 3 – the Protocol
Lx denotes the maximal distance in the tree TRx from an i-anchor to the root rx.
Claim 1 : In each execution of the protocol there is an l ≤ Lx such that at least one processor DECIDEs in phase l.
Let l0 be the minimal l that satisfies Claim 1.
![Page 81: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/81.jpg)
Theorem 3 – the Protocol
Let Pk be a processor that DECIDEs in phase l0.
Let d be the vertex in TRx on which Pk DECIDEs.
Claim 2 : If some processor Pj DECIDEs in phase l0 on a vertex d`, then d` = d.
![Page 82: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/82.jpg)
Theorem 3 – the Protocol
Claim 3 : Exactly one of the following occurs :
a) At least two processors send at phase l0 a DECIDE(d) message.
b) All the (non-faulty) processors except Pk send at phase l0 a message SUGGEST(FATHER(d)).
![Page 83: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/83.jpg)
Theorem 3 – the Protocol
Claim 4 : For j = 1 … N non-faulty processor Pj DECIDEs at phase l0 or at phase l0+1 on d or on FATHER(d).
(This comes from Claim 3 and STAGE C of the protocol).
![Page 84: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/84.jpg)
Theorem 3 – the Protocol
If all the processors DECIDE on two adjacent vertices then the vector they output is one of these vertices.
This completes the proof of Theorem 3
![Page 85: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/85.jpg)
Lower Bounds
After we have characterized the tasks that are 1-solvable we shall present lower bounds over the messages complexity It requires in order to solves such tasks.
![Page 86: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/86.jpg)
Lower Bounds - FIFO
We assume that the system satisfies the FIFO discipline on each communication link.
Cleary, if a protocol 1-solves a task T, it must solve it also under this restrictive assumption.
![Page 87: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/87.jpg)
Lower Bounds - FIFO
Also, if a task T is 1-solvable by a protocol that assumes the FIFO discipline, it is also 1-solvable by protocols that don’t assume it.
This is true this each processor can number the message it send.
![Page 88: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/88.jpg)
Lower Bounds - FIFO
In conclusion, every lower bounds that assume this discipline are also applicable in cases in which this discipline is not assumed.
![Page 89: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/89.jpg)
Lower Bounds – Lemma 1
Lemma 1 :Let α be a protocol that 1-solves a task T.Let x be in XT.Then if at most M messages are sent in any (FIFO) execution of α on x, then |Dα(x)| < (N+1)2M
![Page 90: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/90.jpg)
Lower Bounds – Lemma 2
Lemma 2 :There exist tasks T such that for each arbitrarily large M there exists an input vector x such that the distance between any 1-anchor and any 2-anchor of x is greater than (N+1)2M
![Page 91: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/91.jpg)
Lower Bounds – Theorem 4
Theorem 4 - For a given N ≥3, there is a 1-solvable
distributed task T for N processors that satisfies the following:
For every arbitrary constant M there is an input to T such that every protocol that 1-solves T must send, in the worst case, at least M messages on input .
x
x
![Page 92: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/92.jpg)
Let x be an input vector whose existence is guaranteed by Lemma 2.
Lower Bounds – Theorem 4
Theorem 4 – Proof – Let T be a task that satisfies Lemma 2.
Let M be given.
![Page 93: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/93.jpg)
Then, by the proof of the ”Only if” of Theorem 3 we know that every protocol α that 1-solves T must satisfy that G(Dα(x)) is connected and it contains an i-anchor of x for i = 1, 2, …, N.
By Lemma 2 this implies that |Dα(x)| > (N+1)2M.
By Lemma 1 this implies that α may send more than M messages on input x.
Lower Bounds – Theorem 4
![Page 94: O. Biran,S. Moran,S. Zaks](https://reader035.vdocument.in/reader035/viewer/2022062305/5681505f550346895dbe61c5/html5/thumbnails/94.jpg)
Then, by the proof of the ”Only if” of Theorem 3 we know that every protocol α that 1-solves T must satisfy that G(Dα(x)) is connected and it contains an i-anchor of x for i = 1, 2, …, N.
By Lemma 2 this implies that |Dα(x)| > (N+1)2M.
By Lemma 1 this implies that α may send more than M messages on input x.
Lower Bounds – Theorem 4