Read the TexPoint manual before you delete this box A A A A Companion slides for Distributed Computing Through Combinatorial Topology Maurice Herlihy amp Dmitry Kozlov amp Sergio ID: 759490
Download Presentation The PPT/PDF document "Connectivity TexPoint fonts used in EMF..." is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
Slide1
Connectivity
TexPoint
fonts used in EMF.
Read the
TexPoint manual before you delete this box.: AAAA
Companion slides
forDistributed ComputingThrough Combinatorial TopologyMaurice Herlihy & Dmitry Kozlov & Sergio Rajsbaum
1
Slide2Previously
4-Mar-15
2
Used Sperner’s Lemma to show k-set agreement impossible when protocol complex is a manifold.
But in many models, protocol complexes are
not
manifolds …
Slide3Road Map
4-Mar-15
3
Consensus Impossibility
General theorem
Application to read-write models
k-set agreement Impossibility
General theorem
Application to read-write models
Slide4Road Map
4-Mar-15
4
Consensus Impossibility
General theorem
Application to read-write models
k-set agreement Impossibility
General theorem
Application to read-write models
Slide5A Path
4-Mar-15
5
vertex
vertex
vertex
vertex
vertex
edge
edge
edge
edge
simplicial
complex
Slide6Path Connected
4-Mar-15
6
Any two vertexes can be linked by a path
Slide7Theorem
4-Mar-15
7
If, for protocol
(
I
,
P
,
¥
)
…
Slide8If, for protocol (I,P,¥) …
Theorem
4-Mar-15
8
For every
n
-simplex
¾
n
,
¥
(
¾
n
)
is path-connected …
Slide9If, for protocol (I,P,¥) …
Theorem
4-Mar-15
9
(If no process fails)
For every
n
-simplex
¾
n
,
¥
(
¾
n
)
is path-connected …
Slide10If, for protocol (I,P,¥) …
Then …
Theorem
4-Mar-15
10
For every (n-1)-simplex ¾n-1, ¥ (¾n-1) is non-empty …
For every n-simplex ¾n, ¥(¾n) is path-connected …
(If one process fails)
Slide11If, for protocol (I,P,¥) …
Then …
Theorem
4-Mar-15
11
For every (n-1)-simplex ¾n-1, ¥ (¾n-1) is non-empty …
For every n-simplex ¾n, ¥ (¾n) is path-connected …
¥
(
¢
)
cannot solve consensus.
Slide12Model Independence
4-Mar-15
12
Holds for message-passing or shared memory ….
Synchronous, asynchronous, or in-between …
Any adversarial scheduler …
As long as one failure is possible.
Slide13Protocol Complex Notation
All 3 participate
¥
(PQR)
2 participate
¥
(PQ), ¥(QR), ¥(PR),
1 participates
¥
(
P),
¥
(Q),
¥
(R),
Slide14Proof
4-Mar-15
14
¥
(PQR)
Slide15Proof
4-Mar-15
15
¥
(PQ)
¥
(PQR)
Slide16Proof
4-Mar-15
16
¥
(P)
¥
(PQR)
¥
(PQ)
Slide17Proof
4-Mar-15
17
¥
(P)
¥
(R)
¥
(PQR)
¥
(PQ)
¥
(QR)
Slide18Complex is Path-Connected
4-Mar-15
18
¥
(PQR)
¥
(PQ)
¥
(QR)
¥
(P)
¥
(R)
Slide19¥
(PQR)
One-dimensional Sperner’s Lemma
4-Mar-15
19
Some edge has two “colors”
An execution that decides two distinct values
QED
¥
(PQ)
¥
(QR)
¥
(P)
¥
(R)
Slide20Road Map
4-Mar-15
20
Consensus Impossibility
General theorem
Application to read-write models
k-set agreement Impossibility
General theorem
Application to read-write models
Slide21Application
4-Mar-15
21
We now show that consensus is impossible in wait-free read-write memory
For every (n-1)-simplex ¾n-1, ¥ (¾n-1) is non-empty.
For every
n
-simplex
¾
n
,
¥
(
¾
n
)
is path-connected …
Slide2222
Reachable Complexes
A moves
Protocol complex
Reachable part of protocol complex
B moves
Reachable part of protocol complex
Slide2323
Reachable Complexes
Initially,
entire protocol complex
reachable
At the end, single simplex reachable
Slide2424
Eventual Property
Satisfied by
simplexes
Slide2525
Eventual Property
Suppose it does not hold at start
Slide2626
Critical States
critical
Slide2727
Critical States Exist
critical
Non-satisfying
Slide2828
Eventual Property
Critical states
Lowest non-satisfying states in tree
Slide29Path-Connectivity is an Eventual Property
4-Mar-15
29
Individual simplex is path-connected
Slide30Path-Connectivity has a Critical State
4-Mar-15
30
C
each path connected
next steps
not path connected
Slide31Critical State in Layered IS
4-Mar-15
31
C
U
V
W
each path connected
participants next layer
not path connected
Slide32Notation
4-Mar-15
32
C " U
Configuration reached by running processes in
U
in next layer
Slide33Critical State in Layered IS
4-Mar-15
33
C
U
V
W
¥
(
C
"
U
)
¥
(C " V)
¥(C " W)
each path connected
participants next layer
not path connected
Slide34Proof Strategy
4-Mar-15
34
C
U
V
W
¥
(
C
"
U
)
¥
(C " V)
¥(C " W)
each path connected
not path connected
path connected
Math!
Contradiction!
It was path-connected all along!
Slide35One-Dimensional Nerve Lemma
4-Mar-15
35
Reason about path-connectivity of a graph …
From path-connectivity of components …
And how they fit together.
Slide36Graph K
4-Mar-15
36
Slide37Covering
K
i
4-Mar-15
37
K
0
K
1
K
2
K
=
[
i
K
i
Slide38Nerve Graph Vertices
4-Mar-15
38
K
0
K
1
K
2
Each
K
i
is a vertex
Slide39Nerve Graph Edges
4-Mar-15
39
K
0
K
1
K
2
Edge between
K
i
and
K
j
if
K
i
Å
K
j
;
Slide40One-Dimensional Nerve Lemma
4-Mar-15
40
If each Ki is path-connected …
and the nerve graph N i(Ki ) is path-connected …
then Ki is path-connected …
Slide41Critical State in Layered IS
4-Mar-15
41
C
U
V
W
¥
(
C
"
U
)
¥
(
C " V)
¥(C " W)
each path connected
participants next layer
not path connected
Slide42Configurations
4-Mar-15
42
The
¥(C " U) form a cover for reachable complex
C
U
V
W
¥
(
C
"
U
)
¥
(
C " V)
¥
(
C
"
W
)
Slide43Want to show
Configurations
4-Mar-15
43
each ¥(C " U) is path-connected
each ¥(C " U) Å ¥(C " V) is non-empty
C
U
V
W
¥
(
C
"
U
)
¥
(
C " V)
¥(C " W)
Slide44PQRwritewritewritesnapsnapsnap
Computing Intersections
44
Distributed Computing Through Combinatorial Topology
C " U
PQRwritewritesnapsnapwritesnap
V = {P,Q}
U = {P,Q,R}
(C " V) " U n V
C
"
V
Memory state same
Only V can distinguish
Slide45Intersections (Case 1)
4-Mar-15
45
¥(C " U) Å ¥(C " V) is the complex reachable from C " U in executions where no process in V takes another step
If
V
µ
U,
then
Slide46Notation
4-Mar-15
46
(¥ # U)(C)
Complex reachable from
C
in executions where processes in
U
halt and the rest finish.
Slide47Notation
4-Mar-15
47
(¥ # U)(C)
Complex reachable from C in executions where processes in U halt and the rest finish.
¥(C " U) Å ¥(C " V) = (¥ # V)(C " U)
If
V
µ
U,
then
Slide48Notation
4-Mar-15
48
(¥ # U)(C)
Complex reachable from C in executions where processes in U halt and the rest finish.
¥(C " U) Å ¥(C " V) = (¥ # V)(C " U)
If
V
µ
U,
then
Slide49PQRwritesnapwritesnap
Computing Intersections
49
Distributed Computing Through Combinatorial Topology
C " U
PQRwritesnapwritesnap
V = {Q}
U = {P}
(C " U) " V n U
C
"
V
Memory state same
Only U [ V can distinguish
(C
"
V)
"
U
n
V
Slide50Intersections (Case 2)
4-Mar-15
50
¥(C " U) Å ¥(C " V) = (¥ # U [ V)(C " U [ V)
If U, V incomparable, then
Run processes in
U [ V
Then crash processes in U [ V
Slide51Lemma
4-Mar-15
51
¥(C " U) Å ¥(C " V) = (¥ # W)(C " U [ V)
Where
U if U µ V
V if V µ U
U [ V otherwise
W =
Slide52Lemma
4-Mar-15
52
The nerve graph N(¥(C " U)) is path-connected
Proof
Consider vertex v = ¥(C " ¦)
Show every vertex has an edge to
v
Slide53Proof (con’t)
4-Mar-15
53
4-Mar-15
53
Consider vertex
v =
¥
(C
"
¦
)
Slide54Proof (con’t)
4-Mar-15
54
4-Mar-15
54
Consider vertex v = ¥(C " ¦)
for every
U
½
¦
consider possible edge …
Slide55Proof (con’t)
Consider vertex v = ¥(C " ¦)
¥(C " ¦) Å ¥(C " U) = (¥ # U)(C " ¦)
for every
U
½
¦
consider possible edge …
Slide56Proof (con’t)
4-Mar-15
56
4-Mar-15
56
Consider vertex v = ¥(C " ¦)
¥(C " ¦) Å ¥(C " U) = (¥ # U)(C " ¦)
Run everyone in next layer
for every
U
½
¦
consider possible edge …
Slide57Proof (con’t)
4-Mar-15
57
4-Mar-15
57
Consider vertex v = ¥(C " ¦)
¥(C " ¦) Å ¥(C " U) = (¥ # U)(C " ¦)
Run everyone in next layer
crash everyone in
U
for every
U
½
¦
consider possible edge …
Slide58Proof (con’t)
4-Mar-15
58
4-Mar-15
58
Consider vertex v = ¥(C " ¦)
¥(C " ¦) Å ¥(C " U) = (¥ # U)(C " ¦)
Run everyone in next layer
crash everyone in
U
for every
U ½ ¦ consider possible edge …
Because
U
½
¦
, complex non-empty, hence edge exists
Slide59Theorem
4-Mar-15
59
For every input simplex ¾, the layered IS protocol complex ¥(¾) is path-connected
Proof
Induction on n
Case n=0: ¥(¾) is a single vertex
Case
induction step …
Slide60Proof
4-Mar-15
60
C
U
V
W
¥
(
C
"
U
)
¥
(C " V)
¥(C " W)
assume ¥(C)not path-connected
each ¥(C " U) is path connected
their nerve graph path-connected
covering of
¥
(C)
Slide61covering of ¥(C)
Proof
4-Mar-15
61
¥
(
C
" U)
¥(C " V)
¥(C " W)
each ¥(C " U) is path connected
their nerve graph path-connected
¥(C) is path connected by Nerve Lemma
contradiction!
Slide62Road Map
4-Mar-15
62
Consensus Impossibility
General theorem
Application to read-write models
k-set agreement Impossibility
General theorem
Application to read-write models
Slide63So Far …
4-Mar-15
63
Expressed solvability of consensus as a topological property of protocol complex …
And applied the result to wait-free read-write memory.
Next: do the same for
k
-set agreement!
Slide640-sphere
1-disc
Rethinking Path Connectivity
Let’s call this complex
0-connected
Slide651-Connectivity
1-sphere
2-disc
Slide66?
This Complex is not 1-Connected
Slide672-Connectivity
3-disk
2-sphere
Slide68n-connectivity
4-Mar-15
68
C is n-connected, if, for m · n, every continuous map of the m-sphere
can be extended to a continuous map of the (m+1)-disk
(
-1
)-connected is non-empty
Slide69Road Map
4-Mar-15
69
Consensus Impossibility
General theorem
Application to read-write models
k-set agreement Impossibility
General theorem
Application to read-write models
Slide70Connectivity and k-Set Agreement
4-Mar-15
70
Theorem
(I,O,¢) an (n+1)-process k-set agreement task…
(I,P,¥) a protocol …
such that ¥(¾) is (k-1)-connected for all ¾ in I …
then
(
I
,
P
,
¥
)
cannot solve
k
-set
agreement.
Slide71Lemma
4-Mar-15
71
carrier map ©: A 2B
such that for all ® 2 A,
Then © has a simplicial approximationÁ: DivN A ! B.
©
(
®
)
is
((dim
®
) – 1)
-connected.
Slide72Lemma Proof Sketch
4-Mar-15
72
carrier map ©: A ! 2B
has continuous approximation f: |A| ! |B|
f(|¾|) µ |©(¾)|
Inductive construction …
Slide73Lemma Proof Sketch
4-Mar-15
73
continuous approximation f: |A| ! |B|
Base
define on vertices …
f
0
Slide74Lemma Proof Sketch
4-Mar-15
74
Step
connectivity allows “filling in”
f
1
f
2
Slide75Lemma Proof Sketch
4-Mar-15
75
continuous approximation
f: |A| ! |B|
take simplicial approximation
Á
:
Div
A
!
B
of
f
: |
A
|
!
|
B
|
Slide76Theorem Proof Sketch
4-Mar-15
76
let ¾ 2 I have k+1 distinct input values
let ¢k be simplex labeled with k+1 values
¢k its (k-1)-skeleton
c: ¥(¾) ! ¢k well-defined simplicial map
By lemma, ¥ has simplicial approximation
Á
:
Div
¾
!
¥
(
¾
)
of
f
: |
A
|
!
|
B
|
Slide77Theorem Proof Sketch
4-Mar-15
77
c: ¥(¾) ! ¢k well-defined simplicial map
By lemma, ¥ has simplicial approximation
Á: Div ¾ ! ¥(¾) of f: |A| ! |B|
composition Div ¾ ! ¥(¾) ! ¢k
defines a Sperner coloring of Div ¾
some ¿ in Div ¾ maps to all of ¢k
Contradiction!
Slide78k-Connectivity is an Eventual Property
4-Mar-15
78
Individual simplex is
k
-connected
Slide79k-Connectivity has a Critical State
4-Mar-15
79
C
each
k
-connected
next steps
not
k
-connected
Slide80Critical State in Layered IS
4-Mar-15
80
C
U
V
W
¥
(
C
"
U
)
¥
(C " V)
¥(C " W)
each k-connected
participants next layer
not
k
-connected
Slide81Proof Strategy
4-Mar-15
81
C
U
V
W
¥
(
C
"
U
)
¥
(C " V)
¥(C " W)
each k-connected
not k- connected
k
-connected
Math!
Contradiction!
It was
k
-
connected all along!
Slide82Nerve Lemma
4-Mar-15
82
Reason about connectivity of a complex…
From connectivity of components …
And how they fit together.
Slide83Covering
4-Mar-15
83
Complex
Slide84Covering
4-Mar-15
84
Complex
Covering
Slide854-Mar-15
85
Vertex
Simplex, if
ÅC
i
non-empty
Slide864-Mar-15
86
Nerve Example: Sphere
Slide874-Mar-15
87
Reasoning About Connectivity
Covering
Nerve
Slide88Nerve Lemma
4-Mar-15
88
k
-connected
(
k-|U|+
1)
-connected
If …
Slide89…Then
4-Mar-15
89
if and only if ..
N (C0, …Cm) is k-connected.
C
is
k
-connected …
Slide904-Mar-15
90
Nerve Example: Sphere
1-connected …
Slide914-Mar-15
91
Reasoning About Connectivity
0-connected
Can apply Nerve Lemma!
Slide924-Mar-15
92
Reasoning About Connectivity
1-connected …
Slide934-Mar-15
93
Reasoning About Connectivity
1-connected !
1-connected !
QED
implies
Slide94Nerve Complex Lemma
4-Mar-15
94
The nerve complexN(¥(C " U) | ; µ U µ ¦)is n-connected
Proof
Consider vertex v = ¥(C " ¦)
Show the nerve complex is a
cone
with apex
v
Slide95Nerve Complex Lemma
4-Mar-15
95
i ¥(C " Ui) ;
each set {¥(C " Ui) | i = 0, …, m}
Is a simplex if and only if
each
¥
(C
"
U
i
)
is a vertex
Slide96Reasoning About Intersections
4-Mar-15
96
Lemma
Let U0, … , Um sets of process names …
Indexed so
|
U
0
|
¸
…
¸
|
U
m
|
Slide97Intersection Lemma
4-Mar-15
97
Å ¥(C " Ui) = (¥ # W) (C " [ Ui)
Where
i=1m Ui if i=1 m Ui µ U0
W =
i=0m Ui otherwise
Proof is inductive version of earlier lemma
Slide98Corollary
4-Mar-15
98
If i Ui = ¦ but each Ui ¦,
then
i
¥
(
C
"
U
i
)
=
;
.
Slide99Nerve Complex
So i ¥(C " Ui) ;
Let ¾ = {¥(C " Ui) } be a simplex
Let vertex v = ¥(C " ¦)
must show that ¾ [ {v} is a simplex …
and
i
U
i
¦
Slide100Intersection Lemma Proof
to show that ¾ [ {v} is a simplex, show that …
¥(C " ¦) Å (i ¥(C " Ui) )
is non-empty.
Slide101Intersection Lemma Proof
¥(C " ¦) Å (I ¥(C " Ui)) = (¥ # i Ui ) (C " ¦)
by corollary,
Ui ¦
don’t halt everyone
complex non-empty
it’s a simplex!
QED
Slide102Lemma
4-Mar-15
102
i 2 I ¥(C " Ui) is (n-|I|+1)-connected
argue by induction on n
trivial for
n
= 0
…
Slide103Proof
4-Mar-15
103
i2I ¥(C " Ui) = (¥ # W)(C " X)
a protocol complex for n-|W|+1 processes …
for |W| > 0, W µ X µ [i Ui.
either empty, or n-connected by induction hypothesis.
therefore
(
n
-|I|+1)
-connected
Slide104Theorem
4-Mar-15
104
For every input simplex ¾, the layered IS protocol complex ¥(¾) is k-connected
Proof
Induction on n
Case n=0: ¥(¾) is a single vertex
Case
induction step …
Slide105Proof
4-Mar-15
105
C
U
V
W
¥
(
C
"
U
)
¥
(C " V)
¥(C " W)
assume ¥(C)not k-connected
their nerve complex is k-connected
covering of ¥(C)
i
2
I
¥
(
C
"
U
i
)
is
(
n
-|I|+1)
-connected
Slide106covering of ¥(C)
Proof
4-Mar-15
106
¥
(
C
" U)
¥(C " V)
¥(C " W)
their nerve graph k-connected
¥(C) is k-connected by Nerve Lemma
contradiction!
each
i
2
I
¥
(
C
"
U
i
)
is
(
n
-|I|+1)
-connected
Slide107Conclusions
4-Mar-15
107
Model-independent topological properties that prevent …
consensus
Model-specific application to wait-free read-write memory
path-connectivity
k-set agreement
k
-connectivity
Slide108108
This work is licensed under a
Creative Commons Attribution-Noncommercial 3.0
Unported
License
.