Outline. The Leader Election Protocol (IEEE 1394) IEEE 1394 High Performance Serial Bus (FireWire) Motivation. Background. Protocol Descriptions

Size: px
Start display at page:

Download "Outline. The Leader Election Protocol (IEEE 1394) IEEE 1394 High Performance Serial Bus (FireWire) Motivation. Background. Protocol Descriptions"

Transcription

1 Outline The Leader Election Protocol (IEEE 1394) Thai Son Hoang (inspired by the slides of Jean-Raymond Abrial) Department of Computer Science Swiss Federal Institute of Technology Zürich (ETH Zürich) System Development in Event-B, 25th November, 2010 Background Protocol Descriptions Formal Development Formalizing Trees Initial Model First Refinement Second Refinement Conclusion Motivation Modelling a distributed protocol: IEEE 1394 Firewire. Formalise some mathematical concepts: graph, tree. IEEE 1394 High Performance Serial Bus (FireWire) - It is an international standard - There exists a widespread commercial interest in its correctness - Sun, Apple, Philips, Microsoft, Sony, etc involved in its development - Made of three layers (physical, link, transaction) - The protocol under study is the Tree Identify Protocol - Situated in the Bus Reset phase of the physical layer

2 The Problem (1) - The bus is used to transport digitized video and audio signals - It is hot-pluggable - Devices and peripherals can be added and removed at any time - Such changes are followed by a bus reset The Problem (2) - After a bus reset: all nodes in the network have equal status - A node only knows to which nodes it is directly connected - The network is connected - The network is acyclic - The leader election takes place after a bus reset in the network - A leader needs to be chosen to act as the manager of the bus Informal Abstract Properties of the Protocol - We are given a connected and acyclic network of nodes - Nodes are linked by bidirectional channels - We want to have one node being elected the leader in a finite time - This is to be done in a distributed and non-deterministic way - Next are two distinct abstract animations of the protocol

3

4

5

6

7 Development Strategy - Formal definition and properties of the network - A one-shot abstract model of the protocol - Presenting a (still abstract) loop-like centralized solution - Introducing message passing between the nodes (delays) - Modifying the data structure in order to distribute the protocol Let N be a set of nodes Let g be a graph built on N

8 g is a graph built on N Basic Graph Properties g N N g is symmetric g is irreflexive g = g 1 g id = g is symmetric and irreflexive A Little Detour Through Trees - A tree is a special graph - A tree has a root - A tree has a, so-called, father function - A tree is acyclic - A tree is connected from the root g is connected and acyclic

9 the root the root A tree t built on a set of nodes t is a function on N except at the root the root Avoidind cycles BAD A cycle Its inverse image The nodes of a cycle are included in their inverse image

10 - Given - a set N - a subset p of N - a binary relation t built on N - The inverse image of p under t is denoted by t 1 [p] - p is included in its inverse image: p t 1 [p] - Notice that the empty set enjoys this property t 1 [ ] - The property of having no cycle is thus equivalent to: The only subset p of N s.t. p t 1 [p] is the EMPTY SET p N p t 1 [p] p p = The constant function tree N (N N) BOOL r is a member of N t is a function tree(r, t) = TRUE if and only if r N t N \ {r} N t is acyclic p p N p t 1 [p] p = p t is acyclic: equivalent formulations p N p t 1 [p] p = q q N r q t 1 [q] q N q This gives an Induction Rule q q N r q x N q x N \ {r} t(x) q x q

11 The constant function tree N (N N) BOOL tree(r, t) = TRUE if and only if DEMO r is a member of N r N t is a function t N \ {r} N t is acyclic q q N r q t 1 [q] q N q Given a graph g NODE NODE, define the constant function spanning NODE (NODE NODE) BOOL spanning (r, t, g) = TRUE if and only if r, t is a tree tree (r, t) t is included in g t g A spanning tree t of the graph g

12 g is acyclic: Back to Graph g h, S h g h h 1 = S h 1 [S] S = (Note: g is symmetric, h is any asymmetric sub-graph of g) g is connected: S S g[s] S N S which correspond to an induction rule S S ( y ( x x S x y g) y S) N S Constants of Initial Model (1) carrier set: N constant: g, tree, spanning axm0_1: finite(n) axm0_2: g N N axm0_3: g = g 1 axm0_4: g id = axm0_5: h, S h g h h 1 = S h 1 [S] S = axm0_6: S S g[s] S N S Constants of the Initial Model Variables of Initial Model axm0_7 : axm0_8 : tree N (N N) BOOL r, t. tree(r t) = TRUE t N \ {r} N q r q t 1 [q] q N q variables: l, t inv0_1: inv0_2: l N t N N axm0_9 : spanning N (N N) BOOL axm0_10 : r, t spanning(r t) = TRUE tree(r t) = TRUE t g

13 Events of Initial Model init l : N t : N N elect any x, s where spanning(x s) then l := x t := s end First Refinement (1) - t corresponding to the "tree" in construction - Being precise about event progress: How the tree is constructed. - Defining the invariant - Back to the animation : Observe the construction of the tree progress status anticipated begin t : N N end

14

15 - The green arrows correspond to the t function - The blue nodes are the domain of t - The function t is a forest (multi-tree) on nodes - The red nodes are the roots of these trees

16 The State of the First Refinement inv1_1: t b N variables: l, t, b, r inv1_2: t g inv1_3: r = N \ b b, r: set of blue/red nodes, respectively. b contains the non-root elements of the trees of forest t. Nodes that are not blue are red. Being Precise about Progressing When a red node x is connected to AT MOST one other red node y, then event "progress" can take place progress any x, y where x r y r g[{x}] = t 1 [{x}] {y} then t := t {x y} b := b {x} r := r \ {x} end progress is convergent (reducing r)

17 When there is only a single red node x then event "elect" can take place Refinement Proof for elect (1) elect any x where r = {x} then l := x end (abs_)elect any x, s where spanning(x, s) then l := x t := s end (conc_)elect any x where r = {x} with s = t then l := x t := t end This amounts to proving guard strengthening (GRD):... r = {x} spanning(x t) = TRUE Refinement Proof for elect (2)... t b N r = N b t g r = {x} spanning(x t) = TRUE definition... t b N r = N b t g r = {x} tree(x t) = TRUE t g Refinement Proof for elect (3) Instead of proving q x q t 1 [q] q N we can prove p p t 1 [p] p = Recall axiom state that g is acyclic t b N r = N \ b t g r = {x} t N \ {x} N q x q t 1 [q] q N q h, S h g h h 1 = S h 1 [S] S = Additional invariant t t 1 =.

18 Second Refinement - Nodes are communicating with their neighbors - This is done by means of messages - Discovering the problem of contention - Next is a local animation Message Transfer Receiving Sending the a message Mt g Second Refinement: the State inv2_1: m g variables:..., m inv2_2: m r r - Variable m denotes the channel between nodes - x y in m means x wants y to be its parent - m is functional between red nodes. Second Refinement: Events send_msg any x, y where x r y r x / dom(m) g[{x}] = t 1 [{x}] {y} then m := m {x y} end (abs_)progress any x, y where x r y r g[{x}] = t 1 [{x}] {y} then... end inv2_3 : receive_msg refines progress any x, y where x y m y / dom(m) then... m := m \ {x y} end x, y x y m g[{x}] = t 1 [{x}] {y}

19 Second Refinement: The problem of contention - Explaining the problem - Proposing a partial solution - Towards a better treatment - Back to the local animation

20 Problem of Contention Sending Recovery Receiving Discovering another from a contention message Discovering the Contention (1) - Node y discovers the contention with node x because: - It has sent a message to node x - It receives a message from node x Mc t g Mc Discovering the Contention (2) - Node x also discovers the contention with node y - Assumption: The time between both discoveries IS SUPPOSED TO BE BOUNDED BY t ms - The time t is the maximum transmission time between 2 connected nodes Contention Discovery 0 ms t δ ms t ms 2 t δ ms

21 A Partial Solution - Each node waits for t ms after its own discovery - After this, each node thus knows that the other has also discovered the contention - Each node then retries immediately - PROBLEM: This may continue for ever A Better Solution (1) - Each node waits for t ms after its own discovery - Each node then choses with equal probability: - either to wait for a short delay - or to wait for a large delay - Each node then retries A Better Solution (2) - Question: Does this solves the problem? Extending the State: Introducing the Contention "Channel" - Are we sure to eventually have one node winning? - Answer: Yes, according to a simple law of probabilities variables:..., m, c - The law of great numbers inv2_5: c N N

22 discover_contention any x, y where x y m y dom(m) dom(c) then m := m \ {x y} c := c {x y} end Contention Events solve_contention any x, y where c = {x y, y x} then c := end Summary Axiomatize some data structures: connected graphs, trees. Reasoning about these data structure using induction rules. A systematic approach for modelling distributed systems. Establishing the mathematical framework Resolving the mathematical problem in one shot Resolving the same problem on a step by step basis Involving communication by means of messages Towards the localization of data structures (which we skipped in this lecture).

The Leader Election Protocol (IEEE 1394)

The Leader Election Protocol (IEEE 1394) The Leader Election Protocol (IEEE 1394) J.R. Abrial, D. Cansell, D. Méry July 2002 This Session - Background :-) - An informal presentation of the protocol :-) - Step by step formal design :- - Short

More information

SFM-11:CONNECT Summer School, Bertinoro, June 2011

SFM-11:CONNECT Summer School, Bertinoro, June 2011 SFM-:CONNECT Summer School, Bertinoro, June 20 EU-FP7: CONNECT LSCITS/PSS VERIWARE Part 3 Markov decision processes Overview Lectures and 2: Introduction 2 Discrete-time Markov chains 3 Markov decision

More information

Qualitative Probabilistic Modelling in Event-B

Qualitative Probabilistic Modelling in Event-B Qualitative Probabilistic Modelling in Event-B Stefan Hallerstede and Thai Son Hoang ETH Zurich Switzerland {halstefa,htson}@inf.ethz.ch Abstract. Event-B is a notation and method for discrete systems

More information

In the Stone Age. Stephan Holzer. Yuval Emek - Technion Roger Wattenhofer - ETH Zürich

In the Stone Age. Stephan Holzer. Yuval Emek - Technion Roger Wattenhofer - ETH Zürich The Power of a Leader In the Stone Age - MIT Yuval Emek - Technion Roger Wattenhofer - ETH Zürich 2nd Workshop on Biological Distributed Algorithms, October 11-12, 2014 in Austin, Texas USA The Power of

More information

An Algebraic Approach to Network Coding

An Algebraic Approach to Network Coding An Algebraic Approach to July 30 31, 2009 Outline 1 2 a 3 Linear 4 Digital Communication Digital communication networks are integral parts of our lives these days; so, we want to know how to most effectively

More information

A Formal Analysis of a Dynamic Distributed Spanning Tree Algorithm

A Formal Analysis of a Dynamic Distributed Spanning Tree Algorithm A Formal Analysis of a Dynamic Distributed Spanning Tree Algorithm Arjan J. Mooij and Wieger Wesselink Technische Universiteit Eindhoven P.O. Box 513, 5600 MB Eindhoven, The Netherlands Abstract. We analyze

More information

A Brief Introduction to Model Checking

A Brief Introduction to Model Checking A Brief Introduction to Model Checking Jan. 18, LIX Page 1 Model Checking A technique for verifying finite state concurrent systems; a benefit on this restriction: largely automatic; a problem to fight:

More information

Summary of Event-B Proof Obligations

Summary of Event-B Proof Obligations Summary of Event-B Proof Obligations Jean-Raymond Abrial (ETHZ) March 2008 Purpose of this Presentation 1 - Prerequisite: (1) Summary of Mathematical Notation (a quick review) (2) Summary of Event-B Notation

More information

System Modelling using Event-B

System Modelling using Event-B System Modelling using Event-B Neeraj Kumar Singh McMaster Centre for Software Certification March 25, 2014 Neeraj Kumar Singh (McMaster University) Modelling in Event-B March 25, 2014 1 / 34 Outline 1

More information

Variations on Itai-Rodeh Leader Election for Anonymous Rings and their Analysis in PRISM

Variations on Itai-Rodeh Leader Election for Anonymous Rings and their Analysis in PRISM Variations on Itai-Rodeh Leader Election for Anonymous Rings and their Analysis in PRISM Wan Fokkink (Vrije Universiteit, Section Theoretical Computer Science CWI, Embedded Systems Group Amsterdam, The

More information

AGREEMENT PROBLEMS (1) Agreement problems arise in many practical applications:

AGREEMENT PROBLEMS (1) Agreement problems arise in many practical applications: AGREEMENT PROBLEMS (1) AGREEMENT PROBLEMS Agreement problems arise in many practical applications: agreement on whether to commit or abort the results of a distributed atomic action (e.g. database transaction)

More information

University of Surrey. Bounded Retransmission in Event-B CSP: A Case Study. Steve Schneider, Helen Treharne and Heike Wehrheim

University of Surrey. Bounded Retransmission in Event-B CSP: A Case Study. Steve Schneider, Helen Treharne and Heike Wehrheim University of Surrey Bounded Retransmission in Event-B CSP: A Case Study Department of Computing Steve Schneider, Helen Treharne and Heike Wehrheim March 21 st 2011 Computing Sciences Report CS-11-04 Bounded

More information

CSE 140 Lecture 11 Standard Combinational Modules. CK Cheng and Diba Mirza CSE Dept. UC San Diego

CSE 140 Lecture 11 Standard Combinational Modules. CK Cheng and Diba Mirza CSE Dept. UC San Diego CSE 4 Lecture Standard Combinational Modules CK Cheng and Diba Mirza CSE Dept. UC San Diego Part III - Standard Combinational Modules (Harris: 2.8, 5) Signal Transport Decoder: Decode address Encoder:

More information

Clock Synchronization with Bounded Global and Local Skew

Clock Synchronization with Bounded Global and Local Skew Clock Synchronization with ounded Global and Local Skew Distributed Computing Christoph Lenzen, ETH Zurich Thomas Locher, ETH Zurich Roger Wattenhofer, ETH Zurich October 2008 Motivation: No Global Clock

More information

Distributed Algorithms

Distributed Algorithms Distributed Algorithms December 17, 2008 Gerard Tel Introduction to Distributed Algorithms (2 nd edition) Cambridge University Press, 2000 Set-Up of the Course 13 lectures: Wan Fokkink room U342 email:

More information

Modelling and Refining Hybrid Systems in Event-B and Rodin

Modelling and Refining Hybrid Systems in Event-B and Rodin Modelling and Refining Hybrid Systems in Event-B and Rodin Michael Butler, University of Southampton Jean-Raymond Abrial, Independent consultant Richard Banach, University of Manchester April 13, 2015

More information

Extensions to the Logic of All x are y: Verbs, Relative Clauses, and Only

Extensions to the Logic of All x are y: Verbs, Relative Clauses, and Only 1/53 Extensions to the Logic of All x are y: Verbs, Relative Clauses, and Only Larry Moss Indiana University Nordic Logic School August 7-11, 2017 2/53 An example that we ll see a few times Consider the

More information

Data Gathering and Personalized Broadcasting in Radio Grids with Interferences

Data Gathering and Personalized Broadcasting in Radio Grids with Interferences Data Gathering and Personalized Broadcasting in Radio Grids with Interferences Jean-Claude Bermond a,, Bi Li a,b, Nicolas Nisse a, Hervé Rivano c, Min-Li Yu d a Coati Project, INRIA I3S(CNRS/UNSA), Sophia

More information

Game Theory Lecture 10+11: Knowledge

Game Theory Lecture 10+11: Knowledge Game Theory Lecture 10+11: Knowledge Christoph Schottmüller University of Copenhagen November 13 and 20, 2014 1 / 36 Outline 1 (Common) Knowledge The hat game A model of knowledge Common knowledge Agree

More information

CS 6112 (Fall 2011) Foundations of Concurrency

CS 6112 (Fall 2011) Foundations of Concurrency CS 6112 (Fall 2011) Foundations of Concurrency 29 November 2011 Scribe: Jean-Baptiste Jeannin 1 Readings The readings for today were: Eventually Consistent Transactions, by Sebastian Burckhardt, Manuel

More information

Problem. Problem Given a dictionary and a word. Which page (if any) contains the given word? 3 / 26

Problem. Problem Given a dictionary and a word. Which page (if any) contains the given word? 3 / 26 Binary Search Introduction Problem Problem Given a dictionary and a word. Which page (if any) contains the given word? 3 / 26 Strategy 1: Random Search Randomly select a page until the page containing

More information

Time Constraint Patterns for Event B Development

Time Constraint Patterns for Event B Development Time Constraint Patterns for Event B Development Dominique Cansell, Dominique Méry, Joris Rehm To cite this version: Dominique Cansell, Dominique Méry, Joris Rehm. Time Constraint Patterns for Event B

More information

Computational Models #1

Computational Models #1 Computational Models #1 Handout Mode Nachum Dershowitz & Yishay Mansour March 13-15, 2017 Nachum Dershowitz & Yishay Mansour Computational Models #1 March 13-15, 2017 1 / 41 Lecture Outline I Motivation

More information

1 Introduction. 1.1 The Problem Domain. Self-Stablization UC Davis Earl Barr. Lecture 1 Introduction Winter 2007

1 Introduction. 1.1 The Problem Domain. Self-Stablization UC Davis Earl Barr. Lecture 1 Introduction Winter 2007 Lecture 1 Introduction 1 Introduction 1.1 The Problem Domain Today, we are going to ask whether a system can recover from perturbation. Consider a children s top: If it is perfectly vertically, you can

More information

Lecture 4 Event Systems

Lecture 4 Event Systems Lecture 4 Event Systems This lecture is based on work done with Mark Bickford. Marktoberdorf Summer School, 2003 Formal Methods One of the major research challenges faced by computer science is providing

More information

A Lower Bound for the Distributed Lovász Local Lemma

A Lower Bound for the Distributed Lovász Local Lemma A Lower Bound for the Distributed Lovász Local Lemma Sebastian Brandt, Orr Fischer, Juho Hirvonen, Barbara Keller, Tuomo Lempiäinen, Joel Rybicki, Jukka Suomela, Jara Uitto Aalto University, Comerge AG,

More information

Message Passing and Junction Tree Algorithms. Kayhan Batmanghelich

Message Passing and Junction Tree Algorithms. Kayhan Batmanghelich Message Passing and Junction Tree Algorithms Kayhan Batmanghelich 1 Review 2 Review 3 Great Ideas in ML: Message Passing Each soldier receives reports from all branches of tree 3 here 7 here 1 of me 11

More information

An Institution for Event-B

An Institution for Event-B An Institution for Event-B Marie Farrell, Rosemary Monahan, and James F. Power Dept. of Computer Science, Maynooth University, Co. Kildare, Ireland Abstract. This paper presents a formalisation of the

More information

Minimal Spanning Tree

Minimal Spanning Tree 1 Minimal Spanning Tree CS60002: Distributed Systems Pallab Dasgupta Professor, Dept. of Computer Sc. & Engg., Indian Institute of Technology Kharagpur 2 Leader Election versus Spanning Tree Let C E be

More information

EECS 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization

EECS 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization EECS 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization Discrete Systems Lecture: Automata, State machines, Circuits Stavros Tripakis University of California, Berkeley Stavros

More information

Probabilistic model checking with PRISM

Probabilistic model checking with PRISM Probabilistic model checking with PRISM Marta Kwiatkowska Department of Computer Science, University of Oxford 4th SSFT, Menlo College, May 204 Part 2 Markov decision processes Overview (Part 2) Introduction

More information

Hoare Logic and Model Checking

Hoare Logic and Model Checking Hoare Logic and Model Checking Kasper Svendsen University of Cambridge CST Part II 2016/17 Acknowledgement: slides heavily based on previous versions by Mike Gordon and Alan Mycroft Introduction In the

More information

MAD. Models & Algorithms for Distributed systems -- 2/5 -- download slides at

MAD. Models & Algorithms for Distributed systems -- 2/5 -- download slides at MAD Models & Algorithms for Distributed systems -- /5 -- download slides at http://people.rennes.inria.fr/eric.fabre/ 1 Today Runs/executions of a distributed system are partial orders of events We introduce

More information

Minimum spanning tree

Minimum spanning tree Minimum spanning tree Jean Cousty MorphoGraph and Imagery 2011 J. Cousty : MorphoGraph and Imagery 1/17 Outline of the lecture 1 Minimum spanning tree 2 Cut theorem for MST 3 Kruskal algorithm J. Cousty

More information

Ivy: Safety Verification by Interactive Generalization

Ivy: Safety Verification by Interactive Generalization Ivy: Safety Verification by Interactive Generalization Oded Padon Verification Day 1-June-2016 [PLDI 16] Oded Padon, Kenneth McMillan, Aurojit Panda, Mooly Sagiv, Sharon Shoham. Ivy: Safety Verification

More information

Computer Science Technical Report

Computer Science Technical Report Computer Science Technical Report Synthesizing Self-Stabilization Through Superposition and Backtracking Alex Klinkhamer and Ali Ebnenasir Michigan Technological University Computer Science Technical Report

More information

CS281A/Stat241A Lecture 19

CS281A/Stat241A Lecture 19 CS281A/Stat241A Lecture 19 p. 1/4 CS281A/Stat241A Lecture 19 Junction Tree Algorithm Peter Bartlett CS281A/Stat241A Lecture 19 p. 2/4 Announcements My office hours: Tuesday Nov 3 (today), 1-2pm, in 723

More information

ECE 302: Chapter 02 Probability Model

ECE 302: Chapter 02 Probability Model ECE 302: Chapter 02 Probability Model Fall 2018 Prof Stanley Chan School of Electrical and Computer Engineering Purdue University 1 / 35 1. Probability Model 2 / 35 What is Probability? It is a number.

More information

Distributed Systems Gossip Algorithms

Distributed Systems Gossip Algorithms Distributed Systems Gossip Algorithms He Sun School of Informatics University of Edinburgh What is Gossip? Gossip algorithms In a gossip algorithm, each node in the network periodically exchanges information

More information

Binary Decision Diagrams. Graphs. Boolean Functions

Binary Decision Diagrams. Graphs. Boolean Functions Binary Decision Diagrams Graphs Binary Decision Diagrams (BDDs) are a class of graphs that can be used as data structure for compactly representing boolean functions. BDDs were introduced by R. Bryant

More information

Modeling & Control of Hybrid Systems. Chapter 7 Model Checking and Timed Automata

Modeling & Control of Hybrid Systems. Chapter 7 Model Checking and Timed Automata Modeling & Control of Hybrid Systems Chapter 7 Model Checking and Timed Automata Overview 1. Introduction 2. Transition systems 3. Bisimulation 4. Timed automata hs check.1 1. Introduction Model checking

More information

CptS 464/564 Fall Prof. Dave Bakken. Cpt. S 464/564 Lecture January 26, 2014

CptS 464/564 Fall Prof. Dave Bakken. Cpt. S 464/564 Lecture January 26, 2014 Overview of Ordering and Logical Time Prof. Dave Bakken Cpt. S 464/564 Lecture January 26, 2014 Context This material is NOT in CDKB5 textbook Rather, from second text by Verissimo and Rodrigues, chapters

More information

Data Gathering and Personalized Broadcasting in Radio Grids with Interferences

Data Gathering and Personalized Broadcasting in Radio Grids with Interferences Data Gathering and Personalized Broadcasting in Radio Grids with Interferences Jean-Claude Bermond a,b,, Bi Li b,a,c, Nicolas Nisse b,a, Hervé Rivano d, Min-Li Yu e a Univ. Nice Sophia Antipolis, CNRS,

More information

COMPUTER SCIENCE TRIPOS

COMPUTER SCIENCE TRIPOS CST.2015.2.1 COMPUTER SCIENCE TRIPOS Part IA Tuesday 2 June 2015 1.30 to 4.30 pm COMPUTER SCIENCE Paper 2 Answer one question from each of Sections A, B and C, and two questions from Section D. Submit

More information

Time Synchronization

Time Synchronization Massachusetts Institute of Technology Lecture 7 6.895: Advanced Distributed Algorithms March 6, 2006 Professor Nancy Lynch Time Synchronization Readings: Fan, Lynch. Gradient clock synchronization Attiya,

More information

Belief-Propagation Decoding of LDPC Codes

Belief-Propagation Decoding of LDPC Codes LDPC Codes: Motivation Belief-Propagation Decoding of LDPC Codes Amir Bennatan, Princeton University Revolution in coding theory Reliable transmission, rates approaching capacity. BIAWGN, Rate =.5, Threshold.45

More information

Machine Learning 4771

Machine Learning 4771 Machine Learning 4771 Instructor: Tony Jebara Topic 16 Undirected Graphs Undirected Separation Inferring Marginals & Conditionals Moralization Junction Trees Triangulation Undirected Graphs Separation

More information

Secure Multiparty Computation from Graph Colouring

Secure Multiparty Computation from Graph Colouring Secure Multiparty Computation from Graph Colouring Ron Steinfeld Monash University July 2012 Ron Steinfeld Secure Multiparty Computation from Graph Colouring July 2012 1/34 Acknowledgements Based on joint

More information

PRISM An overview. automatic verification of systems with stochastic behaviour e.g. due to unreliability, uncertainty, randomisation,

PRISM An overview. automatic verification of systems with stochastic behaviour e.g. due to unreliability, uncertainty, randomisation, PRISM An overview PRISM is a probabilistic model checker automatic verification of systems with stochastic behaviour e.g. due to unreliability, uncertainty, randomisation, Construction/analysis of probabilistic

More information

Bounded Retransmission in Event-B CSP: a Case Study

Bounded Retransmission in Event-B CSP: a Case Study Available online at www.sciencedirect.com Electronic Notes in Theoretical Computer Science 280 (2011) 69 80 www.elsevier.com/locate/entcs Bounded Retransmission in Event-B CSP: a Case Study Steve Schneider

More information

Formal Verification of Mobile Network Protocols

Formal Verification of Mobile Network Protocols Dipartimento di Informatica, Università di Pisa, Italy milazzo@di.unipi.it Pisa April 26, 2005 Introduction Modelling Systems Specifications Examples Algorithms Introduction Design validation ensuring

More information

Slides for Chapter 14: Time and Global States

Slides for Chapter 14: Time and Global States Slides for Chapter 14: Time and Global States From Coulouris, Dollimore, Kindberg and Blair Distributed Systems: Concepts and Design Edition 5, Addison-Wesley 2012 Overview of Chapter Introduction Clocks,

More information

Chapter 8 The Disjoint Sets Class

Chapter 8 The Disjoint Sets Class Chapter 8 The Disjoint Sets Class 2 Introduction equivalence problem can be solved fairly simply simple data structure each function requires only a few lines of code two operations: and can be implemented

More information

6.852: Distributed Algorithms Fall, Class 8

6.852: Distributed Algorithms Fall, Class 8 6.852: Distributed Algorithms Fall, 2009 Class 8 Today s plan Basic asynchronous system model, continued Hierarchical proofs Safety and liveness properties Asynchronous networks Asynchronous network algorithms:

More information

Notes. Relations. Introduction. Notes. Relations. Notes. Definition. Example. Slides by Christopher M. Bourke Instructor: Berthe Y.

Notes. Relations. Introduction. Notes. Relations. Notes. Definition. Example. Slides by Christopher M. Bourke Instructor: Berthe Y. Relations Slides by Christopher M. Bourke Instructor: Berthe Y. Choueiry Spring 2006 Computer Science & Engineering 235 Introduction to Discrete Mathematics Sections 7.1, 7.3 7.5 of Rosen cse235@cse.unl.edu

More information

Is It As Easy To Discover As To Verify?

Is It As Easy To Discover As To Verify? Is It As Easy To Discover As To Verify? Sam Buss Department of Mathematics U.C. San Diego UCSD Math Circle May 22, 2004 A discovered identity The Bailey-Borwein-Plouffe formula for π (1997): π = n=0 (

More information

CSC 411 Lecture 3: Decision Trees

CSC 411 Lecture 3: Decision Trees CSC 411 Lecture 3: Decision Trees Roger Grosse, Amir-massoud Farahmand, and Juan Carrasquilla University of Toronto UofT CSC 411: 03-Decision Trees 1 / 33 Today Decision Trees Simple but powerful learning

More information

Transition Predicate Abstraction and Fair Termination

Transition Predicate Abstraction and Fair Termination Transition Predicate Abstraction and Fair Termination Andreas Podelski and Andrey Rybalchenko Max-Planck-Institut für Informatik Saarbrücken, Germany POPL 2005 ETH Zürich Can Ali Akgül 2009 Introduction

More information

COMP2111 Glossary. Kai Engelhardt. Contents. 1 Symbols. 1 Symbols 1. 2 Hoare Logic 3. 3 Refinement Calculus 5. rational numbers Q, real numbers R.

COMP2111 Glossary. Kai Engelhardt. Contents. 1 Symbols. 1 Symbols 1. 2 Hoare Logic 3. 3 Refinement Calculus 5. rational numbers Q, real numbers R. COMP2111 Glossary Kai Engelhardt Revision: 1.3, May 18, 2018 Contents 1 Symbols 1 2 Hoare Logic 3 3 Refinement Calculus 5 1 Symbols Booleans B = {false, true}, natural numbers N = {0, 1, 2,...}, integers

More information

10/12/2016. An FSM with No Inputs Moves from State to State. ECE 120: Introduction to Computing. Eventually, the States Form a Loop

10/12/2016. An FSM with No Inputs Moves from State to State. ECE 120: Introduction to Computing. Eventually, the States Form a Loop University of Illinois at Urbana-Champaign Dept. of Electrical and Computer Engineering An FSM with No Inputs Moves from State to State What happens if an FSM has no inputs? ECE 120: Introduction to Computing

More information

CMPSCI611: The Matroid Theorem Lecture 5

CMPSCI611: The Matroid Theorem Lecture 5 CMPSCI611: The Matroid Theorem Lecture 5 We first review our definitions: A subset system is a set E together with a set of subsets of E, called I, such that I is closed under inclusion. This means that

More information

The Liar Game. Mark Wildon

The Liar Game. Mark Wildon The Liar Game Mark Wildon Guessing Games Ask a friend to thinks of a number between 0 and 15. How many NO/YES questions do you need to ask to find out the secret number? Guessing Games Ask a friend to

More information

On Equilibria of Distributed Message-Passing Games

On Equilibria of Distributed Message-Passing Games On Equilibria of Distributed Message-Passing Games Concetta Pilotto and K. Mani Chandy California Institute of Technology, Computer Science Department 1200 E. California Blvd. MC 256-80 Pasadena, US {pilotto,mani}@cs.caltech.edu

More information

Halting and Equivalence of Program Schemes in Models of Arbitrary Theories

Halting and Equivalence of Program Schemes in Models of Arbitrary Theories Halting and Equivalence of Program Schemes in Models of Arbitrary Theories Dexter Kozen Cornell University, Ithaca, New York 14853-7501, USA, kozen@cs.cornell.edu, http://www.cs.cornell.edu/~kozen In Honor

More information

Authentication Tests and the Structure of Bundles

Authentication Tests and the Structure of Bundles Authentication Tests and the Structure of Bundles Joshua D. Guttman F. Javier Thayer September 2000 Today s Lecture Authentication Tests: How to find out what a protocol achieves How to prove it achieves

More information

Analysis of Algorithms. Outline. Single Source Shortest Path. Andres Mendez-Vazquez. November 9, Notes. Notes

Analysis of Algorithms. Outline. Single Source Shortest Path. Andres Mendez-Vazquez. November 9, Notes. Notes Analysis of Algorithms Single Source Shortest Path Andres Mendez-Vazquez November 9, 01 1 / 108 Outline 1 Introduction Introduction and Similar Problems General Results Optimal Substructure Properties

More information

Probabilistic Model Checking Michaelmas Term Dr. Dave Parker. Department of Computer Science University of Oxford

Probabilistic Model Checking Michaelmas Term Dr. Dave Parker. Department of Computer Science University of Oxford Probabilistic Model Checking Michaelmas Term 20 Dr. Dave Parker Department of Computer Science University of Oxford Overview PCTL for MDPs syntax, semantics, examples PCTL model checking next, bounded

More information

EDA045F: Program Analysis LECTURE 10: TYPES 1. Christoph Reichenbach

EDA045F: Program Analysis LECTURE 10: TYPES 1. Christoph Reichenbach EDA045F: Program Analysis LECTURE 10: TYPES 1 Christoph Reichenbach In the last lecture... Performance Counters Challenges in Dynamic Performance Analysis Taint Analysis Binary Instrumentation 2 / 44 Types

More information

Binary Decision Diagrams

Binary Decision Diagrams Binary Decision Diagrams Binary Decision Diagrams (BDDs) are a class of graphs that can be used as data structure for compactly representing boolean functions. BDDs were introduced by R. Bryant in 1986.

More information

CS Lecture 4. Markov Random Fields

CS Lecture 4. Markov Random Fields CS 6347 Lecture 4 Markov Random Fields Recap Announcements First homework is available on elearning Reminder: Office hours Tuesday from 10am-11am Last Time Bayesian networks Today Markov random fields

More information

Causal Consistency for Geo-Replicated Cloud Storage under Partial Replication

Causal Consistency for Geo-Replicated Cloud Storage under Partial Replication Causal Consistency for Geo-Replicated Cloud Storage under Partial Replication Min Shen, Ajay D. Kshemkalyani, TaYuan Hsu University of Illinois at Chicago Min Shen, Ajay D. Kshemkalyani, TaYuan Causal

More information

Minimal Spanning Tree

Minimal Spanning Tree Minimal Spanning Tree Leader Election versus Spanning Tree Let C E be message complexity of the election problem and C T be the message complexity of finding a spanning tree Given a spanning tree, we can

More information

The Weakest Failure Detector to Solve Mutual Exclusion

The Weakest Failure Detector to Solve Mutual Exclusion The Weakest Failure Detector to Solve Mutual Exclusion Vibhor Bhatt Nicholas Christman Prasad Jayanti Dartmouth College, Hanover, NH Dartmouth Computer Science Technical Report TR2008-618 April 17, 2008

More information

S15 MA 274: Exam 3 Study Questions

S15 MA 274: Exam 3 Study Questions S15 MA 274: Exam 3 Study Questions You can find solutions to some of these problems on the next page. These questions only pertain to material covered since Exam 2. The final exam is cumulative, so you

More information

Dijkstra s Single Source Shortest Path Algorithm. Andreas Klappenecker

Dijkstra s Single Source Shortest Path Algorithm. Andreas Klappenecker Dijkstra s Single Source Shortest Path Algorithm Andreas Klappenecker Single Source Shortest Path Given: a directed or undirected graph G = (V,E) a source node s in V a weight function w: E -> R. Goal:

More information

Lecture 10: Mechanisms, Complexity, and Approximation

Lecture 10: Mechanisms, Complexity, and Approximation CS94 P9: Topics Algorithmic Game Theory November 8, 011 Lecture 10: Mechanisms, Complexity, and Approximation Lecturer: Christos Papadimitriou Scribe: Faraz Tavakoli It is possible to characterize a Mechanism

More information

Spiking Neural P Systems with Anti-Spikes as Transducers

Spiking Neural P Systems with Anti-Spikes as Transducers ROMANIAN JOURNAL OF INFORMATION SCIENCE AND TECHNOLOGY Volume 14, Number 1, 2011, 20 30 Spiking Neural P Systems with Anti-Spikes as Transducers Venkata Padmavati METTA 1, Kamala KRITHIVASAN 2, Deepak

More information

EE291E Lecture Notes 3 Autonomous Hybrid Automata

EE291E Lecture Notes 3 Autonomous Hybrid Automata EE9E Lecture Notes 3 Autonomous Hybrid Automata Claire J. Tomlin January, 8 The lecture notes for this course are based on the first draft of a research monograph: Hybrid Systems. The monograph is copyright

More information

CHAPTER 1. Relations. 1. Relations and Their Properties. Discussion

CHAPTER 1. Relations. 1. Relations and Their Properties. Discussion CHAPTER 1 Relations 1. Relations and Their Properties 1.1. Definition of a Relation. Definition 1.1.1. A binary relation from a set A to a set B is a subset R A B. If (a, b) R we say a is Related to b

More information

Logic Design II (17.342) Spring Lecture Outline

Logic Design II (17.342) Spring Lecture Outline Logic Design II (17.342) Spring 2012 Lecture Outline Class # 10 April 12, 2012 Dohn Bowden 1 Today s Lecture First half of the class Circuits for Arithmetic Operations Chapter 18 Should finish at least

More information

Maximizable Routing Metrics

Maximizable Routing Metrics Maximizable Routing Metrics Mohamed G. Gouda Department of Computer Sciences The University of Texas at Austin Austin, Texas 78712-1188, USA gouda@cs.utexas.edu Marco Schneider SBC Technology Resources

More information

Robustness of stochastic discrete-time switched linear systems

Robustness of stochastic discrete-time switched linear systems Robustness of stochastic discrete-time switched linear systems Hycon2-Balcon Workshop on Control Systems & Technologies for CPS Belgrad 2-3 July 2013 with application to control with shared resources L2S

More information

Index coding with side information

Index coding with side information Index coding with side information Ehsan Ebrahimi Targhi University of Tartu Abstract. The Index Coding problem has attracted a considerable amount of attention in the recent years. The problem is motivated

More information

Fault-Tolerant Consensus

Fault-Tolerant Consensus Fault-Tolerant Consensus CS556 - Panagiota Fatourou 1 Assumptions Consensus Denote by f the maximum number of processes that may fail. We call the system f-resilient Description of the Problem Each process

More information

Algorithms, Probability, and Computing Fall 08 Exam

Algorithms, Probability, and Computing Fall 08 Exam Eidgenossische Technische Hochschule Zurich Ecole polytechnique federale de Zurich Politecnico federale di Zurigo Swiss Federal Institute of Technology Zurich Institute of Theoretical Computer Science

More information

Relations Graphical View

Relations Graphical View Introduction Relations Computer Science & Engineering 235: Discrete Mathematics Christopher M. Bourke cbourke@cse.unl.edu Recall that a relation between elements of two sets is a subset of their Cartesian

More information

cs/ee/ids 143 Communication Networks

cs/ee/ids 143 Communication Networks cs/ee/ids 143 Communication Networks Chapter 5 Routing Text: Walrand & Parakh, 2010 Steven Low CMS, EE, Caltech Warning These notes are not self-contained, probably not understandable, unless you also

More information

Causal Broadcast Seif Haridi

Causal Broadcast Seif Haridi Causal Broadcast Seif Haridi haridi@kth.se Motivation Assume we have a chat application Whatever written is reliably broadcast to group If you get the following output, is it ok? [Paris] Are you sure,

More information

Abstract Interpretation II

Abstract Interpretation II Abstract Interpretation II Semantics and Application to Program Verification Antoine Miné École normale supérieure, Paris year 2015 2016 Course 11 13 May 2016 Course 11 Abstract Interpretation II Antoine

More information

Markov properties for directed graphs

Markov properties for directed graphs Graphical Models, Lecture 7, Michaelmas Term 2009 November 2, 2009 Definitions Structural relations among Markov properties Factorization G = (V, E) simple undirected graph; σ Say σ satisfies (P) the pairwise

More information

Computational Models - Lecture 1 1

Computational Models - Lecture 1 1 Computational Models - Lecture 1 1 Handout Mode Ronitt Rubinfeld and Iftach Haitner. Tel Aviv University. February 29/ March 02, 2016 1 Based on frames by Benny Chor, Tel Aviv University, modifying frames

More information

Probability Propagation

Probability Propagation Graphical Models, Lectures 9 and 10, Michaelmas Term 2009 November 13, 2009 Characterizing chordal graphs The following are equivalent for any undirected graph G. (i) G is chordal; (ii) G is decomposable;

More information

Lecture 16: Roots of the Matching Polynomial

Lecture 16: Roots of the Matching Polynomial Counting and Sampling Fall 2017 Lecture 16: Roots of the Matching Polynomial Lecturer: Shayan Oveis Gharan November 22nd Disclaimer: These notes have not been subjected to the usual scrutiny reserved for

More information

Verifying Properties of Parallel Programs: An Axiomatic Approach

Verifying Properties of Parallel Programs: An Axiomatic Approach Verifying Properties of Parallel Programs: An Axiomatic Approach By Susan Owicki and David Gries (1976) Nathan Wetzler nwetzler@cs.utexas.edu University of Texas, Austin November 3, 2009 Outline Introduction

More information

The Tree Evaluation Problem: Towards Separating P from NL. Lecture #6: 26 February 2014

The Tree Evaluation Problem: Towards Separating P from NL. Lecture #6: 26 February 2014 The Tree Evaluation Problem: Towards Separating P from NL Lecture #6: 26 February 2014 Lecturer: Stephen A. Cook Scribe Notes by: Venkatesh Medabalimi 1. Introduction Consider the sequence of complexity

More information

Controlo Switched Systems: Mixing Logic with Differential Equations. João P. Hespanha. University of California at Santa Barbara.

Controlo Switched Systems: Mixing Logic with Differential Equations. João P. Hespanha. University of California at Santa Barbara. Controlo 00 5 th Portuguese Conference on Automatic Control University of Aveiro,, September 5-7, 5 00 Switched Systems: Mixing Logic with Differential Equations João P. Hespanha University of California

More information

Fast self-stabilizing k-independent dominating set construction Labri Technical Report RR

Fast self-stabilizing k-independent dominating set construction Labri Technical Report RR Fast self-stabilizing k-independent dominating set construction Labri Technical Report RR-1472-13 Colette Johnen Univ. Bordeaux, LaBRI, UMR 5800, F-33400 Talence, France Abstract. We propose a fast silent

More information

Section 6 Fault-Tolerant Consensus

Section 6 Fault-Tolerant Consensus Section 6 Fault-Tolerant Consensus CS586 - Panagiota Fatourou 1 Description of the Problem Consensus Each process starts with an individual input from a particular value set V. Processes may fail by crashing.

More information

Design of Distributed Systems Melinda Tóth, Zoltán Horváth

Design of Distributed Systems Melinda Tóth, Zoltán Horváth Design of Distributed Systems Melinda Tóth, Zoltán Horváth Design of Distributed Systems Melinda Tóth, Zoltán Horváth Publication date 2014 Copyright 2014 Melinda Tóth, Zoltán Horváth Supported by TÁMOP-412A/1-11/1-2011-0052

More information

Failure Detectors. Seif Haridi. S. Haridi, KTHx ID2203.1x

Failure Detectors. Seif Haridi. S. Haridi, KTHx ID2203.1x Failure Detectors Seif Haridi haridi@kth.se 1 Modeling Timing Assumptions Tedious to model eventual synchrony (partial synchrony) Timing assumptions mostly needed to detect failures Heartbeats, timeouts,

More information