topology in distributed computing: a primer 1 / 16 sergey velder spbsu itmo
TRANSCRIPT
![Page 1: Topology in Distributed Computing: A Primer 1 / 16 Sergey Velder SPbSU ITMO](https://reader036.vdocument.in/reader036/viewer/2022070306/5519cf74550346443e8b49e3/html5/thumbnails/1.jpg)
Topology in Distributed Computing: A Primer1 / 16
Sergey Velder
SPbSU ITMO
![Page 2: Topology in Distributed Computing: A Primer 1 / 16 Sergey Velder SPbSU ITMO](https://reader036.vdocument.in/reader036/viewer/2022070306/5519cf74550346443e8b49e3/html5/thumbnails/2.jpg)
Overview2 / 16
Applications of topology to the theoryof distributed computing were discovered in
• Maurice Herlihy and Nir Shavit papers (1994, 1999)
• Michael Saks and Fotios Zaharoglou papers (1993, 2000)
They were awarded Gödel prize in 2004.
![Page 3: Topology in Distributed Computing: A Primer 1 / 16 Sergey Velder SPbSU ITMO](https://reader036.vdocument.in/reader036/viewer/2022070306/5519cf74550346443e8b49e3/html5/thumbnails/3.jpg)
Hypergraphs3 / 16
In a hypergraph an edge can connect any number of vertices.
n-hypergraph (hypergraph with dimension n) is a hypergraph
where any edge connects at most n + 1 vertices.
Hypergraphs may have or not have an orientation.
1-hypergraphs are called graphs.
It is convenient to consider edges as simplices.
2-hypergraph example:
![Page 4: Topology in Distributed Computing: A Primer 1 / 16 Sergey Velder SPbSU ITMO](https://reader036.vdocument.in/reader036/viewer/2022070306/5519cf74550346443e8b49e3/html5/thumbnails/4.jpg)
Simplicial complexes4 / 16
If a hypergraph (as a set of edges on vertices) is closedw. r. t. taking subsets of edges then it is calleda simplicial complex.A vertex-to-vertex map of complexes that is a hypergraphhomomorphism is called simplicial.Simplicial map is piecewise linear on geometric complexes.A subcomplex-to-subcomplex map that preserves intersections(M(P Q) = M(P) M(Q)) is called a carrier map.
3-complex Carrier map
![Page 5: Topology in Distributed Computing: A Primer 1 / 16 Sergey Velder SPbSU ITMO](https://reader036.vdocument.in/reader036/viewer/2022070306/5519cf74550346443e8b49e3/html5/thumbnails/5.jpg)
Complex meaning5 / 16
Vertex color is a process ID.Vertex value is a process state.
Simplex is a global state.
Complex is a set of global states.
![Page 6: Topology in Distributed Computing: A Primer 1 / 16 Sergey Velder SPbSU ITMO](https://reader036.vdocument.in/reader036/viewer/2022070306/5519cf74550346443e8b49e3/html5/thumbnails/6.jpg)
Binary consensus problem (n = 3)6 / 16
Input complex Output complex
![Page 7: Topology in Distributed Computing: A Primer 1 / 16 Sergey Velder SPbSU ITMO](https://reader036.vdocument.in/reader036/viewer/2022070306/5519cf74550346443e8b49e3/html5/thumbnails/7.jpg)
Binary consensus problem (n = 3)6 / 16
Input complex Output complex
Carrier map
All 0 inputsAll 0 inputs
All 0 outputsAll 0 outputs
![Page 8: Topology in Distributed Computing: A Primer 1 / 16 Sergey Velder SPbSU ITMO](https://reader036.vdocument.in/reader036/viewer/2022070306/5519cf74550346443e8b49e3/html5/thumbnails/8.jpg)
Binary consensus problem (n = 3)6 / 16
Input complex Output complex
Carrier map
All 1 inputsAll 1 inputs All 1 outputsAll 1 outputs
![Page 9: Topology in Distributed Computing: A Primer 1 / 16 Sergey Velder SPbSU ITMO](https://reader036.vdocument.in/reader036/viewer/2022070306/5519cf74550346443e8b49e3/html5/thumbnails/9.jpg)
Binary consensus problem (n = 3)6 / 16
Input complex Output complex
Carrier map
Mixed 0-1 inputsMixed 0-1 inputs All 1 outputsAll 1 outputs
All 0 outputsAll 0 outputs
![Page 10: Topology in Distributed Computing: A Primer 1 / 16 Sergey Velder SPbSU ITMO](https://reader036.vdocument.in/reader036/viewer/2022070306/5519cf74550346443e8b49e3/html5/thumbnails/10.jpg)
An example of protocol type7 / 16
Protocol complex
Vertex defines process ID and view(complete log of messages sent and received).Simplex defines compatible set of views.Each execution defines a simplex.
view = my_input_value;for (i = 0; i < r; i++){ broadcast(view); view += messages_received;}return δ(view)
![Page 11: Topology in Distributed Computing: A Primer 1 / 16 Sergey Velder SPbSU ITMO](https://reader036.vdocument.in/reader036/viewer/2022070306/5519cf74550346443e8b49e3/html5/thumbnails/11.jpg)
Round 08 / 16
Single input Protocol complex
![Page 12: Topology in Distributed Computing: A Primer 1 / 16 Sergey Velder SPbSU ITMO](https://reader036.vdocument.in/reader036/viewer/2022070306/5519cf74550346443e8b49e3/html5/thumbnails/12.jpg)
Round 19 / 16
Single input Protocol complex
![Page 13: Topology in Distributed Computing: A Primer 1 / 16 Sergey Velder SPbSU ITMO](https://reader036.vdocument.in/reader036/viewer/2022070306/5519cf74550346443e8b49e3/html5/thumbnails/13.jpg)
Protocol complex evolution10 / 16
Round 2
![Page 14: Topology in Distributed Computing: A Primer 1 / 16 Sergey Velder SPbSU ITMO](https://reader036.vdocument.in/reader036/viewer/2022070306/5519cf74550346443e8b49e3/html5/thumbnails/14.jpg)
Protocol complex evolution10 / 16
Round 0 Round 1 Round 2
![Page 15: Topology in Distributed Computing: A Primer 1 / 16 Sergey Velder SPbSU ITMO](https://reader036.vdocument.in/reader036/viewer/2022070306/5519cf74550346443e8b49e3/html5/thumbnails/15.jpg)
Transformations11 / 16
δ
Input complex Protocol complex Output complex
Lower bound strategy is to find topological obstruction to δ
Must be simplicial
![Page 16: Topology in Distributed Computing: A Primer 1 / 16 Sergey Velder SPbSU ITMO](https://reader036.vdocument.in/reader036/viewer/2022070306/5519cf74550346443e8b49e3/html5/thumbnails/16.jpg)
Consensus12 / 16
Subcomplex of all-0 inputs must map here
δ
![Page 17: Topology in Distributed Computing: A Primer 1 / 16 Sergey Velder SPbSU ITMO](https://reader036.vdocument.in/reader036/viewer/2022070306/5519cf74550346443e8b49e3/html5/thumbnails/17.jpg)
Consensus12 / 16
δ
Subcomplex of all-1 inputs must map here
![Page 18: Topology in Distributed Computing: A Primer 1 / 16 Sergey Velder SPbSU ITMO](https://reader036.vdocument.in/reader036/viewer/2022070306/5519cf74550346443e8b49e3/html5/thumbnails/18.jpg)
Path-connectedness13 / 16
δ
A protocol cannot solve consensus if its complex is path-connected.
![Page 19: Topology in Distributed Computing: A Primer 1 / 16 Sergey Velder SPbSU ITMO](https://reader036.vdocument.in/reader036/viewer/2022070306/5519cf74550346443e8b49e3/html5/thumbnails/19.jpg)
Path-connectedness14 / 16
If protocol complex path remains path-connected…
• forever —then consensus is impossible;
• for r rounds —then we have a round-complexity lower bound;
• for time t —then we have a time-complexity lower bound.
![Page 20: Topology in Distributed Computing: A Primer 1 / 16 Sergey Velder SPbSU ITMO](https://reader036.vdocument.in/reader036/viewer/2022070306/5519cf74550346443e8b49e3/html5/thumbnails/20.jpg)
Summary15 / 16
Combinatorial and algorithmic argumentscomplement one another.
Algorithmic is about what we can do.
Combinatorial is about what we can’t do.
![Page 21: Topology in Distributed Computing: A Primer 1 / 16 Sergey Velder SPbSU ITMO](https://reader036.vdocument.in/reader036/viewer/2022070306/5519cf74550346443e8b49e3/html5/thumbnails/21.jpg)
Bibliography16 / 16
• M. Herlihy, N. Shavit. Applications of Algebraic Topology to Concurrent Computation.In Applications on Advanced Architecture Computers (ed. G. Astfalk), pp. 255–263 (1996)
• M. Saks, F. Zaharoglou. Wait-Free k-set Agreement is impossible: The Topology of Public Knowledge.In Proceedings 25th Annual ACM STOC,pp. 101–110 (1993)
• E. Borowsliy, E. Gafni. Generalized FLP Impossibility Result for t-resilient Asynchronous Computations.In Proceedings 25th Annual ACM STOC,pp. 91–100 (1993)
• M. J. Atallah, M. Blanton (eds.). Algorithms and Theory of Computation Handbook. General Concepts and Techniques, CRC Press (1998)