An Axiomatic Approach to Computing the Connectivity of Synchronous and Asynchronous Systems - PowerPoint PPT Presentation

About This Presentation
Title:

An Axiomatic Approach to Computing the Connectivity of Synchronous and Asynchronous Systems

Description:

An Axiomatic Approach to Computing the Connectivity of Synchronous and Asynchronous Systems ... Reason about connectivity in a purely combinatorial way ... – PowerPoint PPT presentation

Number of Views:98
Avg rating:3.0/5.0
Slides: 49
Provided by: Maurice84
Category:

less

Transcript and Presenter's Notes

Title: An Axiomatic Approach to Computing the Connectivity of Synchronous and Asynchronous Systems


1
An Axiomatic Approach to Computing the
Connectivity of Synchronous and Asynchronous
Systems
  • Maurice Herlihy
  • Microsoft Research Brown University
  • Joint work with Sergio Rajsbaum Mark Tuttle

2
Consensus Each Thread has a Private Input
19
32
21
3
They Communicate
4
They Agree on One Threads Input
19
19
19
5
Generalization 2-Consensus
19
21
19
6
History of k-Consensus
  • Proposed Chaudhuri 90
  • Impossible in R/W memory if failures can occur
  • Borowsky Gafni STOC 93
  • Herlihy Shavit STOC 93, JACM 1999
  • Saks Zaharoglou STOC 93, SIAM 2000

7
First Model Synchronous Message-Passing
Round 0
Round 1
8
Failures Fail-Stop
Partial broadcast
9
Second Model Asynchronous Message-Passing
10
Failures Fail-Stop
Partial broadcast
11
Impossibility Results fork-Consensus
  • Synchronous Model
  • Impossible in lt (f/k)1 rounds
  • Asynchronous Model
  • Impossible always
  • Whats wrong? No unified picture
  • Technical details quite different
  • Obscures underlying similarity

12
Our Contribution
  • Model-independent part (once)
  • Abstract round operator
  • Satisfies simple combinatorial axioms
  • Model-specific part (once per model)
  • Identify model-specific round operator
  • Prove that it satisfies axioms

13
Initial States
0
  • Vertex process (color) and input value
  • Simplex one initial state
  • Complex set of initial states

0
1
0
1
14
Final States
  • Vertex process (color) and final value
  • Simplex one final state
  • Complex set of final states

15
Protocol Protocol Complex
  • Finite program
  • Processes send and receive messages
  • Each process decides after fixed number of steps
  • Vertex process and history of messages it sent
    received
  • Simplex one final state
  • Complex set of final states

16
Example Synchronous Protocol Complexes
start
one round
two rounds
17
Theorem
  • Cannot solve k-consensus if the protocol complex
    is (k-1)-connected
  • In dimension k-1 and lower
  • No holes
  • Spheres contractible
  • Homotopy groups trivial
  • Related to Sperners Lemma

18
Reasoning About Connectivity
If C0 is k-connected
and C1 is k-connected
19
Reasoning About Connectivity
and C0 ? C1 is (k-1)-connected
20
Reasoning About Connectivity
then C0 ? C1 is (k-1)-connected
21
Mayer-Vietoris
  • Reason about connectivity in a purely
    combinatorial way
  • Challenge is to decompose complex so that
    Mayer-Vietoris applies inductively

22
Round Operator
  • Computation as sequence of rounds
  • Natural in synchronous model
  • Also works in asynchronous model
  • Inductive reasoning
  • If complex is (k-1)-connected before
  • Then it remains (k-1)-connected after

23
Axioms
  • How does the number of failures affect the round
    operator?
  • How does the operator work on neighboring
    simplexes?
  • How does the operator work on a single simplex?

24
Round Operator
Qf(S)
25
Round Operator
Round operator name
Qf(S)
26
Round Operator
Round operator name
Qf(S)
Number of failures
27
Round Operator
Round operator name
Qf(S)
Starting simplex (or complex)
Number failures
28
Round Operator
Qf(S)
Set of simplexes
29
Round Operator
Qf(S)
Set of simplexes
Simplicial Complex
30
Axiom One
If f g
Qf(S) ? Qg(S)
Possible states with fewer failures
Contained in possible states with more failures
31
Example of Axiom One
zero failures
1 failures
32
Nearby Starting States
Qf(S0)
f failures
Intersection?
f failures
Qf(S1)
33
Intersections
processes that cant tell whether they started
in S0 or S1
Qf(S0)?Qf(S1)
34
Nearby Starting States
S0
S0-
Processes that can tell
S1
S1-
35
Nearby Starting States
f-1 failures
S0-
S1-
f-1 failures
36
Axiom Two
Qf(S0)?Qf(S1)
Run with c fewer failures

Qf-c(S0?S1)
Discard c processes not in intersection
37
Axiom Two
Qf(S0)?Qf(S1)
Warning axiom used in paper slightly more
technical
Run with c fewer failures

Qf-c(S0?S1)
Discard c processes not in intersection
38
Computing Connectivity
39
Computing Connectivity
k-connected
k-connected
40
Computing Connectivity
Problem indivudual intersections have different
dimensions
41
Observation
small intersections
42
Observation
absorbed by larger intersections
small intersections
43
Absorbing POSet
  • Simplexes (partially) ordered
  • Small intersections with later simplexes
    absorbed by large intersections

Warning definition used in paper is a little
more technical
44
Absorbing POSet
  • Similar to shellable complex
  • Same basic idea, but
  • Some technical differences

45
Theorem
Composition of round operators With k failures
per round
Input complex (absorbing POSet)
Qk(A) is (k-1)-connected
46
Model-Specific Round Operators
  • Synchronous Model
  • Round with k failures
  • Asynchronous Model
  • All but k deliver messages to all
  • Rest do partial broadcast (dont crash)

47
Corollaries
  • Synchronous Model
  • k-consensus requires (f/k)1 rounds
  • Asynchronous Model
  • k-consensus is impossible
  • Proofs
  • Verify that round operators satisfy the three
    axioms

48
Our Ambitions
  • We conjecture that this axiomatic approach can be
    extended to other models
  • Did we pick the right axioms for a Grand Unified
    Theory?
  • Find out at GETCO 2005!
Write a Comment
User Comments (0)
About PowerShow.com