200 likes | 305 Views
1 / 16. Topological Theory of Distributed Computing. Sergey Velder. SPbSU ITMO. 2 / 16. Process simplicial complex. Vertex color is a process ID. Vertex value is a process state. Simplex is a global state . Complex is a set of global states. 3 / 16. Manifolds.
E N D
1 / 16 Topological Theory of Distributed Computing Sergey Velder SPbSU ITMO
2 / 16 Process simplicial complex Vertex color is a process ID. Vertex value is a process state. Simplex is a global state. Complex is a set of global states.
3 / 16 Manifolds A topological n-dimensional manifold with boundary is a Hausdorff space in which every point has a neighbourhood homeomorphic to or (in the last case the homeomorphism must map this point to 0). 2-dimensional example Manifold Manifold with boundary Non-manifold
4 / 16 Combinatorial manifolds A combinatorical n-dimensional manifold with boundary is a simplicial complex in which every simplex is contained in some n-simplex and every (n–1)-simplex is contained in exactly one or two n-simplexes. Boundary M
5 / 16 Immediate snapshot model (block executions) Each process writes, then takes snapshot Each process has a view time
5 / 16 Immediate snapshot model (block executions) Each process writes, then takes snapshot Each process has a view time
5 / 16 Immediate snapshot model (block executions) Each process writes, then takes snapshot Incorrect! time
6 / 16 Protocol complex example Process (color) & view Each process has a view
6 / 16 Protocol complex example Each process has a view
7 / 16 Protocol complex properties • Each process’s write appears in its own view:iσi for any i. • Snapshots are ordered: for any i, jeither σiσj or σjσi. • Each snapshot is ordered immediately after its write: for any i, j, if iσj, then σiσj.
8 / 16 Manifold theorem If the input complex I is a manifold…
8 / 16 Manifold theorem …then so is the immediate snapshotprotocol complex IS(I).
9 / 16 Boundaries Observation: the boundary (n–1)-simplexes of the immediate snapshot complex are precisely those simplexes where one process does not appear in any of the others’ views. Corollary:IS(I) = IS(I).
10 / 16 Manifold protocols • A protocol M() is called a manifold protocol • if it satisfies the following properties: • if I is a manifold, so is M(I); • M(I) = M(I). • An example of a manifold protocol is • the immediate snapshot protocol. • Manifold protocols are closed under composition.
11 / 16 Set agreement problem Each process starts with a private input value, communicates with the others, and then halts after choosing a private output value. Each process is required to choose some process’s input, and at most k distinct values may be chosen (k-set agreement problem). An n-set agreement problem for n + 1 processes is called just set agreement problem.
12 / 16 Output complex for 3-process 2-set (binary) agreement
13 / 16 Manifold protocols property Theorem. Any manifold protocol where each process halts with some input value has an odd (and therefore at least one) number of executions in which the processes choose n + 1 distinct inputs. Proof: by Sperner’s lemma (1929). Corollary. There is no protocol for set agreement in the round-by-round immediate snapshot model.
14 / 16 Anonymous protocols A protocol is anonymous if each process’s decision value depends only on its inputs and on how its steps are interleaved with the others’, but not on that process’s ID. A protocol complex is symmetric if any permutaion of the process IDs induces a simplicial map , sending . A protocol induces a simplicial map , sending simplexes of the protocol complex to simplexes of the output complex .
15 / 16 Weak symmetry-breaking task If all processes participate then at least one process decides true and at least one decides false. If fewer participate then we don’t care. Non-anonymous protocol: choose parity of your ID.
16 / 16 Reducibility and separation Set agreement implements weak symmetry breaking but not vice-versa. Combinatorial and algorithmic arguments complement one another. Algorithmic is about what we can do. Combinatorial is about what we can’t do.