distributed computing through topology -...

89
an introduction Sergio Rajsbaum Instituto de Matemáticas UNAM From the book coauthored with Maurice Herlihy and Dmitry Kozlov to be published by Elsevier Distributed Computing through Topology

Upload: dotu

Post on 28-May-2018

222 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

an introduction

Sergio RajsbaumInstituto de Matemáticas

UNAM

From the book coauthored with Maurice Herlihyand Dmitry Kozlov to be published by Elsevier

Distributed Computing through Topology

Page 2: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

Sequential Computing

• Turing Machine

• model of choice for theory of computation

• provides a precise definition of a "mechanical procedure"

The Imitation GameTuring Year 2012

centenary of his birth

Page 3: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

What about concurrency?

Page 4: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

Concurrency is everywhere

• At a smaller scale, as processor feature sizes shrink, they become harder to cool, manufacturers have given up trying to make processors faster. Instead, they have focused on making processors more parallel.

Nearly every activity in our society works as a distributed system made up of human and sequential computer processes

Page 5: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

Very different from sequential computing

Page 6: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

This revolution requires a fundamental change in how programs are written. Need

new principles, algorithms, and tools - The Art of Multiprocessor Programming

Herlihy & Shavit book

Page 7: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

Would not seem so according to traditional views

• single-tape ≃ multi-tape TM

• interpreted as sequential computing and distributed computing differ in questions of efficiency, but not computability.

• The TM wikipedia page mentions limitations: unbounded computation (OS) and concurrent processes starting others

Page 8: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

Why concurrency is different ?

Distributed systems are subject to failures and timing uncertainties, properties not captured by classical multi-tape models.

Page 9: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

Processes have partial information about the system state

• Even if each process is more powerful than a Turing machine

• and abstracting away the communication network (processes can directly talk to each other)

Page 10: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

Topology

Placing together all these views yields a simplicial complex

“Frozen” representation all possible interleavings and failure scenarios into a single, static, simplicial complex

Page 11: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

Topology

views label vertices of a simplex

Each simplex is an interleaving

Page 12: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

Topological invariants

• ,

Preserved as computation unfolds

Come from the nature of the faults and asynchrony in the system

They determine what can be computed, and the complexity of the solutions

Page 13: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

Short History Discovered in PODC 1988 when only 1 process may crash (dimension=1) by Biran, Moran and Zaks, after consensus FLP impossibility of PODS 1983

Generalized in 1993: Three STOC papers by Herlihy, Shavit, Borowski, Gafni,

Saks, Zaharoughlu and dual approach by Eric Goubault in 1993!

Distributed Computing through Combinatorial Topology, Herlihy, Kozlov, Rajsbaum, Elsevier 2014

Page 14: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

What would a theory of distributed computing be?

Page 15: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

Distributed systems...

• Individual sequential processes

• Cooperate to solve some problem

• By message passing, shared memory, or any other mechanism

Page 16: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

Many kinds

• Multicore, various shared-memory systems

• Internet

• Interplanetary internet

• Wireless and mobile

• cloud computing, etc.

Page 17: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

... and topology

• ,

Combinatorial topology provides a common framework that unifies these models.

Many models, appear to have little in common besides the common concern with complexity, failures and timing.

Page 18: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

Theory of distributed computing research

• Models of distributed computing systems:communication, timing, failures, which models are central?

• Distributed Problems:one-shot task, long-lived tasks, verification, graph problems, anonymous,…

• Computability, complexity, decidability• Topological invariants:

(a) how are related to failures, asynchrony, communication, and (b) techniques to prove them

• Simulations and reductions

Page 19: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

A “universal” distributed computing model (a Turing Machine for DC)

Page 20: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

Ingredients of a model

• processes

• communication

• failures

Page 21: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

Once we have a “universal” model, how

to study it?

Page 22: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

multi-read/multi-writer

single-reader/single-writer message passing

t failures stronger objects failure detectors

Page 23: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

Iterated model

multi-read/multi-writer

single-reader/single-writer message passing

t failures stronger objects failure detectors

generic techniques, simulations

and reductions

Page 24: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

Iterated shared memory

( a Turing Machine for DC ? )

Page 25: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

n Processes

Page 26: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

asynchronous, wait-free

Page 27: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

Unbounded sequence ofread/write

shared arrays

Page 28: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

• use each one once• in order

Page 29: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

write, then read

8

Page 30: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

8

8,-,-

Page 31: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

8

8,-,-

Page 32: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

8

8,-,-

3 4

Page 33: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

8

8,-,-

3 4

8,3,4 8,3,4

Page 34: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

8

8,-,-

3 4

8,3,4 8,3,4

Page 35: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

Asynchrony- solo run

-,2,--,4,--,1,-

2

4

1

Page 36: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

every copy is new

Page 37: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

•arrive in arbitrary order•last one sees all

Page 38: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

•arrive in arbitrary order•last one sees all

2

Page 39: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

•arrive in arbitrary order•last one sees all

2-,2,-

Page 40: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

•arrive in arbitrary order•last one sees all

2 -,2,33

Page 41: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

•arrive in arbitrary order•last one sees all

21,2,3

31

Page 42: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

•arrive in arbitrary order•last one sees all

21,2,3

31

returns 1,2,3

Page 43: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

•remaining 2 go to next memory

2 31

Page 44: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

•remaining 2 go to next memory

2 31

2

-,2,-

Page 45: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

•3rd one returns -,2,3

2 31

2-,2,3

3

Page 46: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

•2nd one goes alone

2 31

2 3

Page 47: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

•returns -,2,-

2 31

2 3

2

dd

-,2,-

Page 48: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

so in this run, the views are

-,2,3

1,2,3

-,2,-

Page 49: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

another run

Page 50: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

•arrive in arbitrary order

2 31

Page 51: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

• all see all

21,2,3

31

Page 52: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

View graph

Page 53: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

indistinguishability• The most essential

distributed computing issue is that a process has only a local perspective of the world

• Represent with a vertex labeled with id (green) and a local state this perspective

• E.g., its input is 0

• Process does not know if another process has input 0 or 1, a graph

0

0 1

??

Page 54: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

Indistinguishability graph for 2 processes

Page 55: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

• focus on 2 processes

• there may be more that arrive after

2

Page 56: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

sees only itself

2-,2,-

Page 57: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

• green sees both

• but ...

2 -,2,33-,2,-

Page 58: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

2 -,2,33-,2,-

-,2,3

??

• green sees both

• but, doesn't know if seen by the other

Page 59: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

see each other

see each other

one round graph for 2 processes

solosolo

Page 60: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

iterated runs

round 2:

round 1:

for each run in round 1 there are the same 3 runs in the next round

Page 61: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

iterated runs

solo sees both

solo in both rounds

round 2:

Page 62: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

iterated runs

solo sees both

round 2:sees both,

then solo in 2nd

Page 63: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

iterated runs

round 1:

round 2:

see each other in 1st round

see each other in both

Page 64: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

More rounds

round 1:

round 2:

round 3:

Topological invariant: protocol graph after k rounds

-longer-but always connected

Page 65: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

Wait-free theorem for 2 processes

For any protocol in the iterated model, its graph after k rounds is

-longer-but always connected

Page 66: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

Iterated approach: theorem holds in other models

• Via known, generic simulation• Instead of ad hoc proofs (some known) for each case

easy iterated proof : local, iterate

any number of processes

any number of processes, any

number of failures

message passing

non-iterated model

Page 67: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

implications in terms of

- solvability- complexity- computability

Page 68: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

Distributed problems binary consensus

0 0

1 1

0 0

1 1

start with same inputdecide same output

Input Graph Output Graph

different inputs, agree on any

Input/outputrelation

Page 69: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

Binary consensus is not solvable due to connectivity

0 0

1 1

0 0

1 1

Input Graph Output Graph

Input/outputrelation

Each edge is an initial configuration of the protocolsubdivided after 1 roundno solution in 1 round decide

decide

no solution in k rounds

Page 70: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

corollaries: consensus impossible in the

iterated model

Page 71: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

consensus impossibility holds in other models

• Via known, generic simulation• Instead of ad hoc proofs for each case

2 process binary iterated

any number of processes

any number of processes, any

number of failures

message passing

non-iterated model

Page 72: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

Decidability• Given a task for 2 processes, is it solvable in the iterated

model?

• Yes, there is an algorithm to decide: a graph connectivity problem

• Then extend result to other models , via generic simulations, instead of ad hoc proofs

Page 73: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

Beyond 2 processes

from 1-dimensional graphs to n-dimensional complexes

Page 74: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

2-dim simplex • three local states in

some execution

• 2-dimensional simplex

• e.g. inputs 0,1,2

0

1 2

Page 75: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

3-dim simplex• 4 local states in some

execution

• 3-dim simplex

• e.g. inputs 0,1,2,3

0

1 2

3

Page 76: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

complexes

Collection of simplexes closed

under containment

Page 77: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

consensus task 3 processes

Input Complex

0

0

01

1

0

0 0

1

1 1

Output Complex

Page 78: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

Iterated model

One initial state

Page 79: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

Iterated model

after 1 round all see each other

Page 80: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

Iterated model

after 1 round 2 don’t know ifother saw them

Page 81: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

Iterated model

after 1 round 1 doesn't know if2 other saw it

Page 82: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

Wait-free theorem for n processes

For any protocol in the iterated model, its complex after k rounds is

- a chromatic subdivision of the input complex

Page 83: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

General wait-free iterated solvability theorem

A task is solvable if and only if the input complex can be chromatically subdivided and mapped into the output complex continuously respecting colors and the task specification

Page 84: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

Decidability• Given a task for 3 processes, is it solvable in the iterated

model?

• No! there are tasks that are solvable if and only if a loop is contractible in a 2-dimensional complex

• Then extend result to other models, via generic simulations, instead of ad hoc proofs

Page 85: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

Extension to other models

• Via known, generic simulation• Instead of ad hoc proofs for each case

3 process 2-agreem iterated

any number of processes

any number of processes, 2 or more failures

message passing

non-iterated model

Page 86: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

Conclusions

• In distributed computing there are too many different issues of interest, no single model can capture them all

Page 87: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

Synchronous protocol complex evolution

Connected butnot 1-connected

Disconnected

Page 88: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

Conclusions

• But the iterated model (with extensions not discussed here) captures essential distributed computing aspects

• and topology is the essential feature for computability and complexity results

Page 89: Distributed Computing through Topology - People.math…people.math.aau.dk/~fajstrup/KONFERENCER/GETCO2015/Slides/Raj… · everywhere • At a smaller ... new principles, algorithms,

END