© Sergio Rajsbaum; DISC/GETCO 2004 Introduction to the Gödel Prize Session Sergio Rajsbaum Math Institute UNAM, Mexico.

Slides:



Advertisements
Similar presentations
Topology in Distributed Computing: A Primer 1 / 16 Sergey Velder SPbSU ITMO.
Advertisements

Impossibility of Distributed Consensus with One Faulty Process
N-Consensus is the Second Strongest Object for N+1 Processes Eli Gafni UCLA Petr Kuznetsov Max Planck Institute for Software Systems.
The weakest failure detector question in distributed computing Petr Kouznetsov Distributed Programming Lab EPFL.
CSE 486/586, Spring 2012 CSE 486/586 Distributed Systems Consensus Steve Ko Computer Sciences and Engineering University at Buffalo.
A General Characterization of Indulgence R. Guerraoui EPFL joint work with N. Lynch (MIT)
Bigamy Eli Gafni UCLA GETCO Outline Models, tasks, and solvability What is SM? r/w w.f. asynch computability Sperner Lemma as a consequence of the.
Hoare’s Correctness Triplets Dijkstra’s Predicate Transformers
6.852: Distributed Algorithms Spring, 2008 Class 16.
Distributed Computing 8. Impossibility of consensus Shmuel Zaks ©
Distributed Algorithms – 2g1513 Lecture 10 – by Ali Ghodsi Fault-Tolerance in Asynchronous Networks.
Computer Science 425 Distributed Systems CS 425 / ECE 428 Consensus
Outline. Theorem For the two processor network, Bit C(Leader) = Bit C(MaxF) = 2[log 2 ((M + 2)/3.5)] and Bit C t (Leader) = Bit C t (MaxF) = 2[log 2 ((M.
1 Nir Shavit Tel-Aviv University and Sun Microsystems Labs (Joint work with Maurice Herlihy of Brown University) © Herlihy and Shavit 2004 The Topological.
Distributed Computing 8. Impossibility of consensus Shmuel Zaks ©
R/W Reductions Eli Gafni UCLA ICDCN06 12/30. Outline Tasks and r/w impossible task: –2 cons –3 cons NP-completeness R/W reduction “Weakest Unsolvable.
Byzantine Generals Problem: Solution using signed messages.
CPSC 668Set 19: Asynchronous Solvability1 CPSC 668 Distributed Algorithms and Systems Fall 2006 Prof. Jennifer Welch.
1 Principles of Reliable Distributed Systems Lecture 6: Synchronous Uniform Consensus Spring 2005 Dr. Idit Keidar.
1 Introduction to Computability Theory Lecture12: Reductions Prof. Amos Israeli.
A C OMBINATORIAL C HARACTERIZATION OF THE D ISTRIBUTED 1-S OLVABLE T ASKS Ofer Biran, Shlomo Moran, Shmuel Zaks Presented by Ami Paz Technion, Haifa, Israel.
Sergio Rajsbaum 2006 Lecture 3 Introduction to Principles of Distributed Computing Sergio Rajsbaum Math Institute UNAM, Mexico.
 Idit Keidar, Principles of Reliable Distributed Systems, Technion EE, Spring Principles of Reliable Distributed Systems Lecture 7: Failure Detectors.
Distributed systems Module 2 -Distributed algorithms Teaching unit 1 – Basic techniques Ernesto Damiani University of Bozen Lesson 4 – Consensus and reliable.
Distributed systems Module 2 -Distributed algorithms Teaching unit 1 – Basic techniques Ernesto Damiani University of Bozen Lesson 2 – Distributed Systems.
Deriving an Algorithm for the Weak Symmetry Breaking Task Armando Castañeda Sergio Rajsbaum Universidad Nacional Autónoma de México.
 Idit Keidar, Principles of Reliable Distributed Systems, Technion EE, Spring Principles of Reliable Distributed Systems Lecture 6: Impossibility.
 Idit Keidar, Principles of Reliable Distributed Systems, Technion EE, Spring Principles of Reliable Distributed Systems Lecture 12: Impossibility.
The Byzantine Generals Strike Again Danny Dolev. Introduction We’ll build on the LSP presentation. Prove a necessary and sufficient condition on the network.
Distributed Algorithms: Agreement Protocols. Problems of Agreement l A set of processes need to agree on a value (decision), after one or more processes.
On the Cost of Fault-Tolerant Consensus When There are no Faults Idit Keidar & Sergio Rajsbaum Appears in SIGACT News; MIT Tech. Report.
Distributed Consensus Reaching agreement is a fundamental problem in distributed computing. Some examples are Leader election / Mutual Exclusion Commit.
Distributed Consensus Reaching agreement is a fundamental problem in distributed computing. Some examples are Leader election / Mutual Exclusion Commit.
Lecture 8-1 Computer Science 425 Distributed Systems CS 425 / CSE 424 / ECE 428 Fall 2010 Indranil Gupta (Indy) September 16, 2010 Lecture 8 The Consensus.
Lecture #12 Distributed Algorithms (I) CS492 Special Topics in Computer Science: Distributed Algorithms and Systems.
Manifold Protocols TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A AA Companion slides for Distributed Computing.
1 © P. Kouznetsov A Note on Set Agreement with Omission Failures Rachid Guerraoui, Petr Kouznetsov, Bastian Pochon Distributed Programming Laboratory Swiss.
Distributed Algorithms – 2g1513 Lecture 9 – by Ali Ghodsi Fault-Tolerance in Distributed Systems.
CSCE 668 DISTRIBUTED ALGORITHMS AND SYSTEMS Spring 2014 Prof. Jennifer Welch CSCE 668 Set 19: Asynchronous Solvability 1.
Consensus and Its Impossibility in Asynchronous Systems.
“Virtual Time and Global States of Distributed Systems”
1 Consensus Hierarchy Part 1. 2 Consensus in Shared Memory Consider processors in shared memory: which try to solve the consensus problem.
CS294, Yelick Consensus revisited, p1 CS Consensus Revisited
CS 425/ECE 428/CSE424 Distributed Systems (Fall 2009) Lecture 9 Consensus I Section Klara Nahrstedt.
Distributed systems Consensus Prof R. Guerraoui Distributed Programming Laboratory.
Sliding window protocol The sender continues the send action without receiving the acknowledgements of at most w messages (w > 0), w is called the window.
Chap 15. Agreement. Problem Processes need to agree on a single bit No link failures A process can fail by crashing (no malicious behavior) Messages take.
SysRép / 2.5A. SchiperEté The consensus problem.
Vertex Coloring Distributed Algorithms for Multi-Agent Networks
Failure Detectors n motivation n failure detector properties n failure detector classes u detector reduction u equivalence between classes n consensus.
Alternating Bit Protocol S R ABP is a link layer protocol. Works on FIFO channels only. Guarantees reliable message delivery with a 1-bit sequence number.
Fault tolerance and related issues in distributed computing Shmuel Zaks GSSI - Feb
Fault tolerance and related issues in distributed computing Shmuel Zaks GSSI - Feb
1 Fault-Tolerant Consensus. 2 Communication Model Complete graph Synchronous, network.
1 © R. Guerraoui Set-Agreement (Generalizing Consensus) R. Guerraoui.
© 2007 P. Kouznetsov On the Weakest Failure Detector Ever Petr Kouznetsov (Max Planck Institute for SWS) Joint work with: Rachid Guerraoui (EPFL) Maurice.
Algebraic Topology and Distributed Computing part two
Algebraic Topology and Distributed Computing
Alternating Bit Protocol
Distributed Consensus
Agreement Protocols CS60002: Distributed Systems
Fault-tolerant Consensus in Directed Networks Lewis Tseng Boston College Oct. 13, 2017 (joint work with Nitin H. Vaidya)
Algebraic Topology and Decidability in Distributed Computing
PERSPECTIVES ON THE CAP THEOREM
Renaming and Oriented Manifolds
Rodolfo Conde Joint work with Sergio Rajsbaum Instituto de Matemáticas
Algebraic Topology and Distributed Computing part three
FLP Impossibility of Consensus
Combinatorial Topology and Distributed Computing
Presentation transcript:

© Sergio Rajsbaum; DISC/GETCO 2004 Introduction to the Gödel Prize Session Sergio Rajsbaum Math Institute UNAM, Mexico

© Sergio Rajsbaum; DISC/GETCO 2004 About this Talk Aim: give an idea of what are the contributions of the awarded papers, their importance and context Informal and some cheating There are many subsequent papers motivated by the awarded papers, I discuss only some of them, and omit most references Sorry to authors I don’t mention explicitly Eric Goubault keeps web pages on the area –See GETCO’04 web page

© Sergio Rajsbaum; DISC/GETCO 2004 Authors that have worked in the area (not counting GETCO concurrency approach) Hagit Attiya Zvi Avidor Elizabeth Borowsky Soma Chaudhuri Eli Gafni Rachid Guerraoui John Havlicek Maurice Herlihy Gunnar Hoest Elias Koutsoupias Peter Kouznetsov Nancy Lynch Shlomo Moran Lucia Penso Bastian Pochon Nir Shavit Michael Saks Mark Tuttle Fotios Zaharoglou

© Sergio Rajsbaum; DISC/GETCO 2004 The Gödel Prize For outstanding papers in theoretical CS Sponsored jointly by EATCS and ACM-SIGACT Presented annually since 1993 –(alternately in ICALP and STOC) To journal paper(s) published in the past 7 years Past winners related to distributed computing: –2000: M. Vardi, P. Wolper about logic for concurrency –1997: J. Halpern, Y. Moses about knowledge

© Sergio Rajsbaum; DISC/GETCO Gödel Prize Maurice Herlihy, Nir Shavit JACM 1999 Mike Saks, Fotios Zaharoglou SICOMP 2000 [HS] [SZ]

© Sergio Rajsbaum; DISC/GETCO Gödel Prize And a third one with the same result, but not published in a journal: Liz Borowsky, Eli Gafni [BG] Both conference versions in STOC 1993

© Sergio Rajsbaum; DISC/GETCO 2004 The importance of the papers in a nutshell Lamport’s “Time, Clocks,…” paper is perhaps the first and most fundamental in distributed computing –1 st Dijkstra prize An execution is actually a partial order –Different total orders are indistinguishable –A connection with special relativity The approach discovered by these paper show how to paste together multiple executions –Inherent connection with topology

© Sergio Rajsbaum; DISC/GETCO 2004 The Results

© Sergio Rajsbaum; DISC/GETCO 2004 The result in common to the three papers Wait-free: solving the problem in an asynchronous system where any number out of n processes can crash K-Set Agreement: While consensus requires all processors to decide on the same value, k-set agreement allows the processes to decided on at most k different values 0 < k < n : k = 1 is consensus, k = n is trivial Wait-free k-set agreement is impossible

© Sergio Rajsbaum; DISC/GETCO 2004 More generally, if t can crash t=1, k=1 : consensus impossibility [FLP] Fischer, Lynch, Paterson, 1985 Dijkstra Award 2001 k-set agreement is possible if t < k But not if t >= k

© Sergio Rajsbaum; DISC/GETCO 2004 So we have a t-solvable problem that is not t+1-solvable Soma Chaudhuri introduced set agreement in PODC 1990 motivated by this challenge It was only known FLP, Fischer, Lynch, Paterson: consensus is possible iff t < 1 Soma described an algorithm and tried to generalize FLP’s bivalency argument for t Working wait-free (t=n-1) is easier than t resilient k-set agreement is possible if t < k But not if t >= k

© Sergio Rajsbaum; DISC/GETCO 2004 Why is this so important?

© Sergio Rajsbaum; DISC/GETCO 2004 Why is the wait-free set agreement impossibility so important? First step was FLP: consensus is impossible if t ≥ 1 Then characterization for t = 1 –[BMZ’90] O. Biran, S. Moran, S. Zaks 1990, and –[MW’87] Moran, Y. Wolfstahl Deciding if a problem is 1-solvable is NP-hard –Biran, Moran, Zaks 1990 –And other related papers for t=1 It lead to a characterization of the problems that are wait-free solvable

© Sergio Rajsbaum; DISC/GETCO 2004 Important also because Many papers in this direction: t - resilient More powerful shared memory objects such as test&set Compositions of objects to wait-free implement others Unbounded number of processes Synchronous and partially synchronous systems Failure detectors Conditions that restrict the inputs of a problem It opened the way to characterizations of the problems that are solvable in other models

© Sergio Rajsbaum; DISC/GETCO 2004 And New Relations Between Models In any distributed computing model: Topological properties determine problem solvability And time complexity of the solutions As a function of failure model and asynchrony assumptions This has lead to new proofs with the same structure for both synchronous and asynchronous problems, and a more uniform theoretical foundation to the field –Consensus FLP impossibility vs. t+1 synchronous lower bound Essential link between: distributed computing and topology

© Sergio Rajsbaum; DISC/GETCO 2004 To Understand the Topology Link Let’s start by looking at a k-set algorithm For t < k In a shared memory system Assuming snapshot operations are available (snapshots can be wait-free implemented in read/write memory)

© Sergio Rajsbaum; DISC/GETCO 2004 Algorithm for k-Set agreement if t < k In a snapshot shared-memory system:  Each process writes its input to shared memory  Takes snapshots until it gets a view vector with at least n-t inputs  Decides on the smallest input in its view Correctness: They see views with ≤ t empty entries Views are ordered by containment There are at most t+1 different views => they solve k = t+1 -set agreement

© Sergio Rajsbaum; DISC/GETCO 2004 The Views Obtained by the Processes Each view is an input vector with at most t empty entries: –(1,2,3) a process saw that Pi wrote value i In each execution each process has its view –P1 saw (0,1,2) –P2 saw (0,1,-) Some processes may not distinguish between two executions

© Sergio Rajsbaum; DISC/GETCO 2004 Views are Put Together The case of 3 Processes, t =2 Each execution is represented by a triangle: simplex The corners of a simplex are labeled with the views of each of the 3 processes in the execution The set of all the executions is the union of all simplexes: protocol complex Some views after 1 round, starting with the same input vector, say (1,2,3):

© Sergio Rajsbaum; DISC/GETCO 2004 Generating the ISE Protocol Complex (1) Immediate Snapshot Executions: a snapshot goes immediately after a write Both [BG] and [SZ] used ISE Exec P1: wr P2: wr P3: wr p1 p2 p3 Views P1: (1,-,-) P2: (1,2,-) P3: (1,2,3)

© Sergio Rajsbaum; DISC/GETCO 2004 Generating the ISE Protocol Complex (2) Exec P1: wr P2: wr P3: wr p1 p2 p3 ISE: a snapshot goes immediately after a write Each vertex represents the local state of one process, 1 round: Views P1: (1,2,-) P2: (1,2,-) P3: (1,2,3)

© Sergio Rajsbaum; DISC/GETCO 2004 Generating the ISE Protocol Complex (3) Each vertex represents the local state of one process, 1 round: Exec P1: wr P2: wr P3: wr p1 p2 p3 ISE: a snapshot goes immediately after a write Views P1: (1,2,-) P2: (-,2,-) P3: (1,2,3)

© Sergio Rajsbaum; DISC/GETCO 2004 Generating the ISE Protocol Complex (4) Each vertex represents the local state of one process, 1 round: Exec P1: wr P2: wr P3: wr p1 p2 p3 ISE: a snapshot goes immediately after a write Views P1: (1,2,3) P2: (1,-,-) P3: (1,2,3)

© Sergio Rajsbaum; DISC/GETCO 2004 Generating the ISE Protocol Complex (5) Each vertex represents the local state of one process, 1 round: Exec P1: wr P2: wr P3 wr p1 p2 p3 ISE: a snapshot goes immediately after a write Views P1: (1,2,3) P2: (1,2,3) P3: (1,2,3)

© Sergio Rajsbaum; DISC/GETCO 2004 The Decision is a function only of the process’ view Exec P1: wr P2: wr P3: wr p1 p2 p3 P1 can decide only on the input from P2 or itself P2 can decide on its own input only Views P1: (1,2,-) P2: (-,2,-) P3: (1,2,3)

© Sergio Rajsbaum; DISC/GETCO 2004 Decisions induce Sperner’s coloring on the vertices Exec P1: wr P2: wr P3: wr p1 p2 p3 In corners: Pi can decide only on its own input In Pi-Pj boundary: P can decide only on Pi or Pj inputs p1 p3

© Sergio Rajsbaum; DISC/GETCO 2004 An input vector with 3 different inputs Exec P1: wr P2: wr P3: wr P1 starts with P2 starts with p1 p2 p3

© Sergio Rajsbaum; DISC/GETCO 2004 Sperner’s coloring on the boundary p1 p2 p1 p3

© Sergio Rajsbaum; DISC/GETCO 2004 Sperner’s Coloring in the inside arbitrary p1 p2 p1 p3

© Sergio Rajsbaum; DISC/GETCO 2004 Sperner’s Lemma implies p1 p2 At least one triangle has all 3 colors. At least one execution has 3 different values decided  2-set agreement, t=2, impossible in 1 round p1 p3

© Sergio Rajsbaum; DISC/GETCO 2004 But 2-set agreement, t=1 is possible (t<k) Views with 2 empty places are removed => The corners are removed p2 p3 p1

© Sergio Rajsbaum; DISC/GETCO 2004 How to prove that k-set agreement, t ≥ k, is impossible in any number of rounds? let’s see for wait-free…

© Sergio Rajsbaum; DISC/GETCO 2004 Sperner’s lemma holds for any subdivided simplex Any subdivided simplex with a Sperner’s Coloring  Has a simplex with all colors

© Sergio Rajsbaum; DISC/GETCO 2004 Wait-free views always induce a subdivision More rounds create finer subdivision – One more round creates one more level of smaller triangles inside each triangle Topological invariant: “wait-free is like a solid sphere” – No holes (of any dimension) Each paper used different techniques to prove it, and new techniques have been proposed since then that are easier to apply to other models Main result of BG, HS, SZ :

© Sergio Rajsbaum; DISC/GETCO 2004 Topological invariance induces the set agreement impossibility p2 Any wait-free protocol induces a subdivision (as below) Decisions on an input vector with 3 values define a Sperner’s coloring Sperner’s lemma implies  Set agreement is impossible for any number of rounds p1 p3

© Sergio Rajsbaum; DISC/GETCO 2004 A Sperner’s Lemma Proof (there are many) The coloring says how to map a solid triangle into another triangle, sending boundary to boundary Impossible to map it into a hollow triangle, no matter how much it is stretched (subdivided) or bent

© Sergio Rajsbaum; DISC/GETCO dimensional Sperner’s lemma A connected complex cannot be mapped to a disconnected complex => consensus is impossible with t > 0 p2 p1

© Sergio Rajsbaum; DISC/GETCO 2004 Sperner’s lemma fundamental role We saw Sperner’s lemma => set agreement unsolvable The opposite is also true ! – (using approximate agreement protocol) Equivalent to Brouwer’s Fixed Point Theorem – Shake a glass of water, one point remains fixed One of the most used theorems of mathematics Used for all of the distributed computing problems, except for symmetric version of renaming

© Sergio Rajsbaum; DISC/GETCO 2004 The same framework is used for any decision problem

© Sergio Rajsbaum; DISC/GETCO 2004 The picture can be generalized from one input vector ( ) to another along the boundary p2 Change the input of p3 from to Along the boundary p1 and p2: – do not know p3’s input and then – cannot distinguish from p1 p3 p2 p1 p3

© Sergio Rajsbaum; DISC/GETCO 2004 Initial states for consensus 0 Processes: blue, red, orange. Independently assign 0 or 1 Isomorphic to 2-sphere This is the input complex

© Sergio Rajsbaum; DISC/GETCO 2004 States after 1 round, starting in the initial states for consensus 0 Running a wait-free protocol creates a subdivision of each input simplex Topology of the input complex is preserved

© Sergio Rajsbaum; DISC/GETCO 2004 What about more powerful models? Synchronous systems, asynchronous with more powerful primitives  More problems are solvable because holes are introduced into the subdivision Let’s see a 1-resilient asynchronous model…

© Sergio Rajsbaum; DISC/GETCO 2004 States after 1 round (input 2 not shown) 0 Running a 1-resilient protocol creates holes Topology of the input complex is not exactly preserved  2-set agreement is possible

© Sergio Rajsbaum; DISC/GETCO set agreement is possible because now there is a map from the protocol complex into the hollow simplex

© Sergio Rajsbaum; DISC/GETCO 2004 Synchronous Model In t-resilient computation, t >1 there are holes, but do not change their type with the number of runs In synchronous computation yes…

© Sergio Rajsbaum; DISC/GETCO 2004 Single Input: Round One no one fails orange fails red fails blue fails

© Sergio Rajsbaum; DISC/GETCO 2004 Single Input: Round One red sends to blue But not to orange blue fails

© Sergio Rajsbaum; DISC/GETCO 2004 Single Input: Round One red sends to no one blue fails

© Sergio Rajsbaum; DISC/GETCO 2004 Single Input: Round One So if the input of red changes no one notices blue fails

© Sergio Rajsbaum; DISC/GETCO 2004 Protocol complex: round one of all executions on all inputs

© Sergio Rajsbaum; DISC/GETCO 2004 Protocol complex: round two of all executions on all inputs

© Sergio Rajsbaum; DISC/GETCO 2004 Synchronous protocol complex evolution zero two one Connected but not 1-connected Disconnected

© Sergio Rajsbaum; DISC/GETCO 2004 Summarizing the importance of the papers

© Sergio Rajsbaum; DISC/GETCO 2004 The Topology Link Any algorithm in any model approx. preserves the topology of the inputs to a problem To solve a problem we need to create “holes” in the topology ( to be able to map inputs to outputs) Stronger models create more “holes” than weaker models; wait-free does not create any holes Why a problem is solvable after more rounds? 1.Finer subdivisions of the inputs are produced, and 2.in some models also holes

© Sergio Rajsbaum; DISC/GETCO 2004 Problem solvability is undecidable By reduction to a classic topology problem, equivalent to a classic algebra problem: Can a given loop be contracted in a complex? For a distributed computing model, is there an algorithm solving a given problem?  No: wait-free and in other models [KG,HR] (yes in an asynchronous system if t=1, Moran et al)

© Sergio Rajsbaum; DISC/GETCO 2004 Contractibility is undecidable not contractible contractible

© Sergio Rajsbaum; DISC/GETCO 2004 What does it mean? The Turing theory of computation has been extraordinary successful in providing the foundations for theoretical computer science Lenore Blum The previous fundamental limitation is about distribution of resources, and due to uncertainty from delays and failures − NOT from the limitations of a Turing Machine

© Sergio Rajsbaum; DISC/GETCO 2004 And it comes from two “axioms” Next-states have some degree of connectivity Degree of connectivity of neighbors is somewhat preserved A state A neighbor

© Sergio Rajsbaum; DISC/GETCO 2004 And it comes from two “axioms” Next-states have some degree of connectivity Degree of connectivity of neighbors is somewhat preserved Less connected neighbors

© Sergio Rajsbaum; DISC/GETCO 2004 Conclusions The 2004 Gödel Award papers have been greatly influential, motivating a lot of subsequent work, as well as changing the way we understand distributed computing There are many open problems about: –Proving topological properties of specific models –Establishing consequences of these –E.g. Byzantine failures, randomized, self-stabilization, network topology

© Sergio Rajsbaum; DISC/GETCO 2004 We have seen a “cut” perspective of the computation Considering how each execution is deformed into another, we get an orthogonal topology theory Introduced by Eric Goubault in ~93, with follow up by CONCUR community Considered the states at the end of a run

© Sergio Rajsbaum; DISC/GETCO 2004 Congratulations to the authors of the three papers !