Formal Description of the Chord Protocol using ASM

Size: px
Start display at page:

Download "Formal Description of the Chord Protocol using ASM"

Transcription

1 Formal Description of the Chord Protocol using ASM Bojan Marinković 1, Paola Glavan 2, Zoran Ognjanović 1 Mathematical Institute of the Serbian Academy of Sciences and Arts 1 Belgrade, Serbia [bojanm, zorano]@mi.sanu.ac.rs Department of Mathematics and Descriptive Geometry 2 Faculty od Mechanical Engineering and Naval Architecture Zagreb, Croatia pglavan@fsb.hr Fourth Workshop on Formal and Automated Theorem Proving and Applications February 4-5, 2011, Belgrade, Serbia Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 1 / 38

2 Outline 1 Introduction 2 (Informal) Description of Chord 3 Abstract State Machine 4 Related Work 5 ASM Formalization of Chord Basic Notions Chord Actions 6 Correctness of the Formalization 7 Conclusion Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 2 / 38

3 Outline Introduction 1 Introduction 2 (Informal) Description of Chord 3 Abstract State Machine 4 Related Work 5 ASM Formalization of Chord Basic Notions Chord Actions 6 Correctness of the Formalization 7 Conclusion Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 3 / 38

4 Introduction Peer-To-Peer Systems No centralized control or hierarchical organization Each node (peer) runs software with equivalent functionality System s states and tasks are dynamically allocated Core operation: efficient retrieval of data items No inherent bottlenecks and resistance to failures, attacks, etc. Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 4 / 38

5 Introduction Distributed Hash Tables Lookup service similar to a hash table Storing (key, value) pairs Retrieval of the value associated with a given key Any change in the set of nodes causes a minimal amount of disruption Chord: one of the first and simplest DHTs Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 5 / 38

6 Outline (Informal) Description of Chord 1 Introduction 2 (Informal) Description of Chord 3 Abstract State Machine 4 Related Work 5 ASM Formalization of Chord Basic Notions Chord Actions 6 Correctness of the Formalization 7 Conclusion Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 6 / 38

7 (Informal) Description of Chord Short Desctription of Chord Number of nodes form a ring-shaped network Supported operation: mapping the given key onto a node using consistent hashing Probability that two objects of the same type are assigned same identifiers is negligible One node is awared of a small number (maximum O(log N)) of other nodes Key is assigned to the first node in the circle whose identifier is equal or greater than hash(key) Properties: Load-balance All lookups are resolved via maximum O(log N) messages Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 7 / 38

8 Outline Abstract State Machine 1 Introduction 2 (Informal) Description of Chord 3 Abstract State Machine 4 Related Work 5 ASM Formalization of Chord Basic Notions Chord Actions 6 Correctness of the Formalization 7 Conclusion Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 8 / 38

9 Abstract State Machine Introduction Introduced with: Y. Gurevich: Evolving Algebras 1993: Lipari Guide. Definition Abstract State Machine A is defined by a program Prog - consisting of a finite number of transition rules, at most countable set of states and initial states. A models the operational behavior of a real dynamic system S in terms of evolution of states. Definition A state S is a first-order structure over a fixed signature (which is also the signature of A), representing the instantaneous configuration of S. The value of a term t at S is denoted by [t] S. The basic transition rule is the following function update f (t 1,..., t n ) := t, where f is an arbitrary n-ary function and t 1,..., t n, t are first-order terms. Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 9 / 38

10 Transition Rules Abstract State Machine Conditional constructor i f g then R 1 e l s e i f R 2 e n d i f Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 10 / 38

11 Transition Rules Abstract State Machine Conditional constructor i f g then R 1 e l s e i f R 2 e n d i f Sequential constructor seq R 1... R n endseq Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 10 / 38

12 Transition Rules Abstract State Machine Conditional constructor i f g then R 1 e l s e i f R 2 e n d i f Parallel constructor par R 1... R n endpar Sequential constructor seq R 1... R n endseq Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 10 / 38

13 Transition Rules Abstract State Machine Conditional constructor i f g then R 1 e l s e i f R 2 e n d i f Sequential constructor seq R 1... R n endseq Parallel constructor par R 1... R n endpar Choose constructor choose v i n U s a t i s f y i n g g(v) R 0 endchoose Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 10 / 38

14 Abstract State Machine Properties Definition (ASM runs) A run (or computation) of A is a finite or infinite sequence S 0 ; S 1 ; S 2 ;... where S 0 is an initial state and every S i+1 is obtained from S i executing a transition rule. Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 11 / 38

15 Abstract State Machine Properties Definition (ASM runs) A run (or computation) of A is a finite or infinite sequence S 0 ; S 1 ; S 2 ;... where S 0 is an initial state and every S i+1 is obtained from S i executing a transition rule. External function can be understand as a (dynamic) oracle ASM can model algorithms at the appropriate abstraction level to verify properties of the system Already modeled with ASMs: Bakery algorithm, Rail road crossing problem, Kerberos algorithm, etc. Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 11 / 38

16 Abstract State Machine Distrubuted ASM Multiple autonomous agents cooperatively model a concurrent computation Each agent executes its own single-agent program The underlying semantic model ensures that the order that no conflicts between the update sets computed for distinct agents can arise The global program is the union of all single-agent programs Regular runs - state is global and move of an agent is atomic Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 12 / 38

17 Outline Related Work 1 Introduction 2 (Informal) Description of Chord 3 Abstract State Machine 4 Related Work 5 ASM Formalization of Chord Basic Notions Chord Actions 6 Correctness of the Formalization 7 Conclusion Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 13 / 38

18 Related Work Related Work I. Stoica et al.: Chord: A Scalable Peer-to-Peer Lookup service for Internet Applications Introduces Chord and describes it using C++-like pseudo code Several complexity results and consistency of entrance of a new node Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 14 / 38

19 Related Work Related Work I. Stoica et al.: Chord: A Scalable Peer-to-Peer Lookup service for Internet Applications Introduces Chord and describes it using C++-like pseudo code Several complexity results and consistency of entrance of a new node R. Bakhshi, D. Gurov: Verification of Peer-to-peer Algorithms: A Case Study Specification of Chord in terms of the π-calculus Verification of the corresponding stabilization algorithm Consider maintaining of topological structure Possible departures of nodes from a network are not examined Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 14 / 38

20 Related Work Related Work I. Stoica et al.: Chord: A Scalable Peer-to-Peer Lookup service for Internet Applications Introduces Chord and describes it using C++-like pseudo code Several complexity results and consistency of entrance of a new node R. Bakhshi, D. Gurov: Verification of Peer-to-peer Algorithms: A Case Study Specification of Chord in terms of the π-calculus Verification of the corresponding stabilization algorithm Consider maintaining of topological structure Possible departures of nodes from a network are not examined V. Tru o ng: Testing implementations of Distributed Hash Tables An Erlang implementation of Chord Analyzed using simulations Consider maintaining of topological structure It reports some failures and proposes modifications Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 14 / 38

21 Outline ASM Formalization of Chord 1 Introduction 2 (Informal) Description of Chord 3 Abstract State Machine 4 Related Work 5 ASM Formalization of Chord Basic Notions Chord Actions 6 Correctness of the Formalization 7 Conclusion Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 15 / 38

22 Basic Notions ASM Formalization of Chord Basic Notions Motivation: errors in concurrent systems are difficult to reproduce and find by program testing Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 16 / 38

23 ASM Formalization of Chord Basic Notions Basic Notions Motivation: errors in concurrent systems are difficult to reproduce and find by program testing M fixed positive integer, and N = 2 M Universe (Chord network): Chord := {0, 1,..., N 1} Indicator that x Chord is in Chord network Chord(x) = true External function for the manipulations with the lists (list constructor, add, remove, listitem) arinković,glavan,ognjanović(misanu, FSB) ASM Description of Chord 4 th ARGO Workshop 16 / 38

24 ASM Formalization of Chord Basic Notions Node Structure successor : Chord Chord predecessor : Chord Chord finger : Chord ListOfChord next : Chord {1,..., M} keysvalues : Chord ListOfKeysValues Figure: Structure of Chord node Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 17 / 38

25 ASM Formalization of Chord Basic Notions Node Structure successor : Chord Chord predecessor : Chord Chord finger : Chord ListOfChord next : Chord {1,..., M} keysvalues : Chord ListOfKeysValues Figure: Structure of Chord node Node id = id, successor(id), predecessor(id), finger(id), next(id), keysvalues(id) Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 17 / 38

26 ASM Formalization of Chord Basic Notions Chord Functions hash : Keys IPs {0, 1,..., N 1, undef } ping : Chord {true, false} member of : Chord Chord Chord {true, false} (arg 2 < arg 1 arg 3 ) arinković,glavan,ognjanović(misanu, FSB) ASM Description of Chord 4 th ARGO Workshop 18 / 38

27 ASM Formalization of Chord Basic Notions Chord Functions hash : Keys IPs {0, 1,..., N 1, undef } ping : Chord {true, false} member of : Chord Chord Chord {true, false} (arg 2 < arg 1 arg 3 ) find successor : Chord {0, 1,... N 1} Chord get : Chord Keys Values {undef } arinković,glavan,ognjanović(misanu, FSB) ASM Description of Chord 4 th ARGO Workshop 18 / 38

28 ASM Formalization of Chord Functions Definitions Basic Notions find successor(n, h) = successor(n), if ping(successor(n)) member of (h, n, successor(n)), find successor(finger(n).listitem(i), h), otherwise where member of (finger(n).listitem(i), n, h) (i = M member of (finger(n).listitem(i + 1), n, h)) Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 19 / 38

29 ASM Formalization of Chord Functions Definitions Basic Notions successor(n), if ping(successor(n)) member of (h, n, successor(n)), find successor(n, h) = find successor(finger(n).listitem(i), h), otherwise where member of (finger(n).listitem(i), n, h) (i = M member of (finger(n).listitem(i + 1), n, h)) value, if (key, value) keysvalues(find successor(id, hash(key))), get(id, key) = undef, otherwise. Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 19 / 38

30 ASM Formalization of Chord Chord Actions Chord Actions Start - S ε End - S ε Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 20 / 38

31 ASM Formalization of Chord Chord Actions Chord Actions Start - S ε End - S ε Join - add a new node Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 20 / 38

32 ASM Formalization of Chord Chord Actions Chord Actions Start - S ε End - S ε Join - add a new node Fairleave - one node less with information transfer UnfairLeave - one node less without information transfer Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 20 / 38

33 ASM Formalization of Chord Chord Actions Chord Actions Start - S ε End - S ε Join - add a new node Fairleave - one node less with information transfer UnfairLeave - one node less without information transfer Stabilize - update information on predecessor and successor Update predecessor - check predecessor Update fingers - update finger table arinković,glavan,ognjanović(misanu, FSB) ASM Description of Chord 4 th ARGO Workshop 20 / 38

34 ASM Formalization of Chord Chord Actions Chord Actions Start - S ε End - S ε Join - add a new node Fairleave - one node less with information transfer UnfairLeave - one node less without information transfer Stabilize - update information on predecessor and successor Update predecessor - check predecessor Update fingers - update finger table Put - insert (key, value) Get - call get arinković,glavan,ognjanović(misanu, FSB) ASM Description of Chord 4 th ARGO Workshop 20 / 38

35 Start Rule ASM Formalization of Chord Chord Actions i f j(j Chord Chord(j) = undef ) then seq i := hash(ip) par Chord(i) := true predecessor(i) := undef successor(i) := i finger(i) := [ ] next(i) := 0 keysvalues(i) := [ ] stabilization(i) endpar endseq e l s e i f Chord i s already s t a r t e d e n d i f Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 21 / 38

36 Join Rule ASM Formalization of Chord Chord Actions choose j i n Chord s a t i s f y i n g Chord(j) = true i f j undef then seq i := hash(ip) i f Chord(i) true then i f i undef then seq INITIALIZATION TRANSFER KEYS stabilization(i) endseq e l s e i f Chord i s f u l f i l l e d e n d i f e l s e i f i i s already member of Chord e n d i f endseq e l s e i f Chord i s empty e n d i f endchoose Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 22 / 38

37 FairLeave Rule ASM Formalization of Chord Chord Actions i f Chord(i) = true then seq CHECK SUCCESSOR i f successor(i) = predecessor(i) predecessor(i) = i then seq Chord(i) := undef End endseq e l s e i f seq par TRANSFER KEYS predecessor(successor(i)) := predecessor(i) successor(predecessor(i)) := successor(i) endpar UNSET VALUES endseq e n d i f endseq e n d i f Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 23 / 38

38 Stabilization Rule ASM Formalization of Chord Chord Actions par stabilize(i) update predecessor(i) update fingers(i) endpar Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 24 / 38

39 Stabilize Rule ASM Formalization of Chord Chord Actions i f Chord(i) = true then seq i f ping(successor(i)) then seq x := predecessor(successor(i)) i f x undef then i f member of (x, i, successor(i)) then successor(i) := x e n d i f e n d i f i f x = undef member of (i, x, successor(i)) then predecessor(successor(i)) := i e n d i f endseq e l s e i f UPDATE SUCCESSOR e n d i f stabilize(i) endseq e n d i f Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 25 / 38

40 ASM Formalization of Chord Update predecessor Rule Chord Actions i f Chord(i) = true then seq i f ping(predecessor(i)) true then seq Chord(predecessor(i)) := undef predecessor(i) := undef endseq e n d i f update predecessor(i) endseq e n d i f Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 26 / 38

41 Update fingers Rule ASM Formalization of Chord Chord Actions i f Chord(i) = true then seq next(i) := next(i) + 1 i f (next(i) > M) then next(i) := 1 / N = 2 M / e n d i f finger.listitem(next(i)) := find successor(i, i + 2 next(i) 1 ) update fingers(i) endseq e n d i f Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 27 / 38

42 Put Rule ASM Formalization of Chord Chord Actions i f Chord(i) = true then seq x := find successor(i, hash(key)) i f x undef keysvalues(x).add( hash(key), value ) e l s e i f Chord i s f u l f i l l e d e n d i f endseq e n d i f Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 28 / 38

43 ASM Formalization of Chord Chord Actions Empty Rules End - go to S ε when last node leaves UnfairLeave - caused by a node crash, communication problems, etc. Get - does not change the state of the network (call get function) Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 29 / 38

44 Outline Correctness of the Formalization 1 Introduction 2 (Informal) Description of Chord 3 Abstract State Machine 4 Related Work 5 ASM Formalization of Chord Basic Notions Chord Actions 6 Correctness of the Formalization 7 Conclusion Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 30 / 38

45 Correctness of the Formalization Correctness of find successor Theorem Let id {0, 1,..., N 1}, n Chord and n = find successor(n, id). If the successor pointers form a ring of all nodes in the Chord network, then the following statement holds ( x Chord)(member of (x, id, n) = true x n) Chord(x) = undef. Theorem If the successor pointers form a ring of all nodes in the Chord network, then the following statement holds (n, n, id Chord)find successor(n, id) = find successor(n, id). Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 31 / 38

46 Correctness of the Formalization Rebuild of the Chord Ring Theorem Let the successor pointers form a ring of all nodes in a Chord network. Let a node join a Chord network and break the ring of the successors pointers. Then, Stabilization rule will rebuild the ring. Figure: Join arinković,glavan,ognjanović(misanu, FSB) ASM Description of Chord 4 th ARGO Workshop 32 / 38

47 Correctness of the Formalization Rebuild of the Chord Ring Theorem Let the successor pointers form a ring of all nodes in a Chord network. Let a node join a Chord network and break the ring of the successors pointers. Then, Stabilization rule will rebuild the ring. Figure: Join Figure: Unfair Leave Theorem Let the successor pointers form a ring of all nodes in a Chord network. Let a node leaves a Chord network in an unfair way and breaks the ring of the successors pointers. Then, Stabilization rule will rebuild the ring. arinković,glavan,ognjanović(misanu, FSB) ASM Description of Chord 4 th ARGO Workshop 32 / 38

48 Correctness of the Formalization State Changing (1) Definition (Node scenario) For a node the following sequence of actions is allowed: Start Join, Stabilization, (Put Get), FairLeave UnfairLeave. Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 33 / 38

49 Correctness of the Formalization State Changing (1) Definition (Node scenario) For a node the following sequence of actions is allowed: Start Join, Stabilization, (Put Get), FairLeave UnfairLeave. Definition (Network scenario) For a Chord network the following sequence of actions is allowed: Start i, Stabilization i, ((Join ij, Stabilization ij ) Put ik Get il FairLeave im UnfairLeave in ) +, End, where i, i j, i k, i l, i m, i n Chord, and for every s Chord, the corresponding subsequence of actions is allowed for Node s. Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 33 / 38

50 Correctness of the Formalization State Changing (2) Theorem When End rule is applied there are no other nodes in a Chord network except the node which invokes End rule. Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 34 / 38

51 Correctness of the Formalization State Changing (2) Theorem When End rule is applied there are no other nodes in a Chord network except the node which invokes End rule. Theorem An arbitrary sequence σ 1 of actions in a Chord network can be reduced to an allowed sequence σ 0, such that σ 0 and σ 1 cause the same sequence of state transitions of the network. Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 34 / 38

52 Correctness of the Formalization State Changing (2) Theorem When End rule is applied there are no other nodes in a Chord network except the node which invokes End rule. Theorem An arbitrary sequence σ 1 of actions in a Chord network can be reduced to an allowed sequence σ 0, such that σ 0 and σ 1 cause the same sequence of state transitions of the network. Theorem If a nonempty prefix of an allowed sequence of actions produces the current state of a Chord network, then the successor pointers will eventually form a ring of all nodes in the network. Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 34 / 38

53 Correctness of the Formalization Key Manipulation Theorem (Golden rule) ((key, value) Keys Values) ((key, value) keysvalues(i) hash(key) i), where respects that 0 is the first successor of N 1. Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 35 / 38

54 Correctness of the Formalization Key Manipulation Theorem (Golden rule) ((key, value) Keys Values) ((key, value) keysvalues(i) hash(key) i), where respects that 0 is the first successor of N 1. Corollary If get returns undef for some key Keys, then there is no value Values such that (key, value) pair is stored in the Chord network. Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 35 / 38

55 Outline Conclusion 1 Introduction 2 (Informal) Description of Chord 3 Abstract State Machine 4 Related Work 5 ASM Formalization of Chord Basic Notions Chord Actions 6 Correctness of the Formalization 7 Conclusion Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 36 / 38

56 Conclusion Conclusion and Furthure Work Presented an ASM-based formalization of the Chord protocol Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 37 / 38

57 Conclusion Conclusion and Furthure Work Presented an ASM-based formalization of the Chord protocol First comprehensive formal analysis of Chord Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 37 / 38

58 Conclusion Conclusion and Furthure Work Presented an ASM-based formalization of the Chord protocol First comprehensive formal analysis of Chord Proves with respect to the regular runs and execution of the rules UnfairLeave and Put in stable states Regular runs eliminate several observed shortages Practice vs Assumptions - Challenges to modify Chord Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 37 / 38

59 Conclusion Conclusion and Furthure Work Presented an ASM-based formalization of the Chord protocol First comprehensive formal analysis of Chord Proves with respect to the regular runs and execution of the rules UnfairLeave and Put in stable states Regular runs eliminate several observed shortages Practice vs Assumptions - Challenges to modify Chord Apply similar technique to describe some other DHT protocols Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 37 / 38

60 Conclusion Conclusion and Furthure Work Presented an ASM-based formalization of the Chord protocol First comprehensive formal analysis of Chord Proves with respect to the regular runs and execution of the rules UnfairLeave and Put in stable states Regular runs eliminate several observed shortages Practice vs Assumptions - Challenges to modify Chord Apply similar technique to describe some other DHT protocols Starting point for a formal proof assistant (Coq, Isabelle/HOL) arinković,glavan,ognjanović(misanu, FSB) ASM Description of Chord 4 th ARGO Workshop 37 / 38

61 Thank you for your attention Any question? Marinković,Glavan,Ognjanović(MISANU, FSB) ASM Description of Chord 4 th ARGO Workshop 38 / 38

Outline. Sets of Gluing Data. Constructing Manifolds. Lecture 3 - February 3, PM

Outline. Sets of Gluing Data. Constructing Manifolds. Lecture 3 - February 3, PM Constructing Manifolds Lecture 3 - February 3, 2009-1-2 PM Outline Sets of gluing data The cocycle condition Parametric pseudo-manifolds (PPM s) Conclusions 2 Let n and k be integers such that n 1 and

More information

DVA325 Formal Languages, Automata and Models of Computation (FABER)

DVA325 Formal Languages, Automata and Models of Computation (FABER) DVA325 Formal Languages, Automata and Models of Computation (FABER) Lecture 1 - Introduction School of Innovation, Design and Engineering Mälardalen University 11 November 2014 Abu Naser Masud FABER November

More information

Introduction to Computational Manifolds and Applications

Introduction to Computational Manifolds and Applications IMPA - Instituto de Matemática Pura e Aplicada, Rio de Janeiro, RJ, Brazil Introduction to Computational Manifolds and Applications Part 1 - Foundations Prof. Jean Gallier jean@cis.upenn.edu Department

More information

Formalising Event Reconstruction in Digital Investigations

Formalising Event Reconstruction in Digital Investigations Formalising Event Reconstruction in Digital Investigations Pavel Gladyshev The thesis is submitted to University College Dublin for the degree of PhD in the Faculty of Science August 2004 Department of

More information

Countability. Jason Filippou UMCP. Jason Filippou UMCP) Countability / 12

Countability. Jason Filippou UMCP. Jason Filippou UMCP) Countability / 12 Countability Jason Filippou CMSC250 @ UMCP 06-23-2016 Jason Filippou (CMSC250 @ UMCP) Countability 06-23-2016 1 / 12 Outline 1 Infinity 2 Countability of integers and rationals 3 Uncountability of R Jason

More information

Sets. Definition A set is an unordered collection of objects called elements or members of the set.

Sets. Definition A set is an unordered collection of objects called elements or members of the set. Sets Definition A set is an unordered collection of objects called elements or members of the set. Sets Definition A set is an unordered collection of objects called elements or members of the set. Examples:

More information

Technical framework of Operating System using Turing Machines

Technical framework of Operating System using Turing Machines Reviewed Paper Technical framework of Operating System using Turing Machines Paper ID IJIFR/ V2/ E2/ 028 Page No 465-470 Subject Area Computer Science Key Words Turing, Undesirability, Complexity, Snapshot

More information

Cognitive Radios Games: Overview and Perspectives

Cognitive Radios Games: Overview and Perspectives Cognitive Radios Games: Overview and Yezekael Hayel University of Avignon, France Supélec 06/18/07 1 / 39 Summary 1 Introduction 2 3 4 5 2 / 39 Summary Introduction Cognitive Radio Technologies Game Theory

More information

Despite the euphonic name, the words in the program title actually do describe what we're trying to do:

Despite the euphonic name, the words in the program title actually do describe what we're trying to do: I've been told that DASADA is a town in the home state of Mahatma Gandhi. This seems a fitting name for the program, since today's military missions that include both peacekeeping and war fighting. Despite

More information

Introduction (concepts and definitions)

Introduction (concepts and definitions) Objectives: Introduction (digital system design concepts and definitions). Advantages and drawbacks of digital techniques compared with analog. Digital Abstraction. Synchronous and Asynchronous Systems.

More information

EXPLAINING THE SHAPE OF RSK

EXPLAINING THE SHAPE OF RSK EXPLAINING THE SHAPE OF RSK SIMON RUBINSTEIN-SALZEDO 1. Introduction There is an algorithm, due to Robinson, Schensted, and Knuth (henceforth RSK), that gives a bijection between permutations σ S n and

More information

CS3334 Data Structures Lecture 4: Bubble Sort & Insertion Sort. Chee Wei Tan

CS3334 Data Structures Lecture 4: Bubble Sort & Insertion Sort. Chee Wei Tan CS3334 Data Structures Lecture 4: Bubble Sort & Insertion Sort Chee Wei Tan Sorting Since Time Immemorial Plimpton 322 Tablet: Sorted Pythagorean Triples https://www.maa.org/sites/default/files/pdf/news/monthly105-120.pdf

More information

1.6 Congruence Modulo m

1.6 Congruence Modulo m 1.6 Congruence Modulo m 47 5. Let a, b 2 N and p be a prime. Prove for all natural numbers n 1, if p n (ab) and p - a, then p n b. 6. In the proof of Theorem 1.5.6 it was stated that if n is a prime number

More information

Leandro Chaves Rêgo. Unawareness in Extensive Form Games. Joint work with: Joseph Halpern (Cornell) Statistics Department, UFPE, Brazil.

Leandro Chaves Rêgo. Unawareness in Extensive Form Games. Joint work with: Joseph Halpern (Cornell) Statistics Department, UFPE, Brazil. Unawareness in Extensive Form Games Leandro Chaves Rêgo Statistics Department, UFPE, Brazil Joint work with: Joseph Halpern (Cornell) January 2014 Motivation Problem: Most work on game theory assumes that:

More information

Permutation group and determinants. (Dated: September 19, 2018)

Permutation group and determinants. (Dated: September 19, 2018) Permutation group and determinants (Dated: September 19, 2018) 1 I. SYMMETRIES OF MANY-PARTICLE FUNCTIONS Since electrons are fermions, the electronic wave functions have to be antisymmetric. This chapter

More information

Game Theory and Randomized Algorithms

Game Theory and Randomized Algorithms Game Theory and Randomized Algorithms Guy Aridor Game theory is a set of tools that allow us to understand how decisionmakers interact with each other. It has practical applications in economics, international

More information

Two-person symmetric whist

Two-person symmetric whist Two-person symmetric whist Johan Wästlund Linköping studies in Mathematics, No. 4, February 21, 2005 Series editor: Bengt Ove Turesson The publishers will keep this document on-line on the Internet (or

More information

VLSI System Testing. Outline

VLSI System Testing. Outline ECE 538 VLSI System Testing Krish Chakrabarty System-on-Chip (SOC) Testing ECE 538 Krish Chakrabarty 1 Outline Motivation for modular testing of SOCs Wrapper design IEEE 1500 Standard Optimization Test

More information

Sensor Robot Planning in Incomplete Environment

Sensor Robot Planning in Incomplete Environment Journal of Software Engineering and Applications, 2011, 4, 156-160 doi:10.4236/jsea.2011.43017 Published Online March 2011 (http://www.scirp.org/journal/jsea) Shan Zhong 1, Zhihua Yin 2, Xudong Yin 1,

More information

Notes for Recitation 3

Notes for Recitation 3 6.042/18.062J Mathematics for Computer Science September 17, 2010 Tom Leighton, Marten van Dijk Notes for Recitation 3 1 State Machines Recall from Lecture 3 (9/16) that an invariant is a property of a

More information

Enumeration of Two Particular Sets of Minimal Permutations

Enumeration of Two Particular Sets of Minimal Permutations 3 47 6 3 Journal of Integer Sequences, Vol. 8 (05), Article 5.0. Enumeration of Two Particular Sets of Minimal Permutations Stefano Bilotta, Elisabetta Grazzini, and Elisa Pergola Dipartimento di Matematica

More information

Axiom A-1: To every angle there corresponds a unique, real number, 0 < < 180.

Axiom A-1: To every angle there corresponds a unique, real number, 0 < < 180. Axiom A-1: To every angle there corresponds a unique, real number, 0 < < 180. We denote the measure of ABC by m ABC. (Temporary Definition): A point D lies in the interior of ABC iff there exists a segment

More information

One computer theorist s view of cognitive systems

One computer theorist s view of cognitive systems One computer theorist s view of cognitive systems Jiri Wiedermann Institute of Computer Science, Prague Academy of Sciences of the Czech Republic Partially supported by grant 1ET100300419 Outline 1. The

More information

TOPOLOGY, LIMITS OF COMPLEX NUMBERS. Contents 1. Topology and limits of complex numbers 1

TOPOLOGY, LIMITS OF COMPLEX NUMBERS. Contents 1. Topology and limits of complex numbers 1 TOPOLOGY, LIMITS OF COMPLEX NUMBERS Contents 1. Topology and limits of complex numbers 1 1. Topology and limits of complex numbers Since we will be doing calculus on complex numbers, not only do we need

More information

Week 3-4: Permutations and Combinations

Week 3-4: Permutations and Combinations Week 3-4: Permutations and Combinations February 20, 2017 1 Two Counting Principles Addition Principle. Let S 1, S 2,..., S m be disjoint subsets of a finite set S. If S = S 1 S 2 S m, then S = S 1 + S

More information

Business Process Management

Business Process Management Business Process Management Orchestrations, Choreographies, and Verification Frank Puhlmann Business Process Technology Group Hasso Plattner Institut Potsdam, Germany 1 Mapping Graphical Notations The

More information

Design of Parallel Algorithms. Communication Algorithms

Design of Parallel Algorithms. Communication Algorithms + Design of Parallel Algorithms Communication Algorithms + Topic Overview n One-to-All Broadcast and All-to-One Reduction n All-to-All Broadcast and Reduction n All-Reduce and Prefix-Sum Operations n Scatter

More information

Game Theory and Economics of Contracts Lecture 4 Basics in Game Theory (2)

Game Theory and Economics of Contracts Lecture 4 Basics in Game Theory (2) Game Theory and Economics of Contracts Lecture 4 Basics in Game Theory (2) Yu (Larry) Chen School of Economics, Nanjing University Fall 2015 Extensive Form Game I It uses game tree to represent the games.

More information

CSE 573 Problem Set 1. Answers on 10/17/08

CSE 573 Problem Set 1. Answers on 10/17/08 CSE 573 Problem Set. Answers on 0/7/08 Please work on this problem set individually. (Subsequent problem sets may allow group discussion. If any problem doesn t contain enough information for you to answer

More information

Tight Bounds for Scattered Black Hole Search in a Ring

Tight Bounds for Scattered Black Hole Search in a Ring Tight Bounds for Scattered Black Hole Search in a Ring Jérémie Chalopin 1, Shantanu Das 1, Arnaud Labourel 1, and Euripides Markou 2 1 LIF, CNRS & Aix-Marseille University, Marseille, France. {jeremie.chalopin,shantanu.das,arnaud.labourel}@lif.univ-mrs.fr

More information

Domain Engineering. book by Dines Bjørner, presentation by Tero Hasu. February 9, Dines Bjørner 3. 2 a domain 4.

Domain Engineering. book by Dines Bjørner, presentation by Tero Hasu. February 9, Dines Bjørner 3. 2 a domain 4. Domain Engineering book by Dines Bjørner, presentation by Tero Hasu February 9, 2012 Contents 1 Dines Bjørner 3 2 a domain 4 3 some domains 4 4 To understand is all. 4 5 motivation 5 6 problems 5 7 a domain

More information

Some t-homogeneous sets of permutations

Some t-homogeneous sets of permutations Some t-homogeneous sets of permutations Jürgen Bierbrauer Department of Mathematical Sciences Michigan Technological University Houghton, MI 49931 (USA) Stephen Black IBM Heidelberg (Germany) Yves Edel

More information

STRATEGY AND COMPLEXITY OF THE GAME OF SQUARES

STRATEGY AND COMPLEXITY OF THE GAME OF SQUARES STRATEGY AND COMPLEXITY OF THE GAME OF SQUARES FLORIAN BREUER and JOHN MICHAEL ROBSON Abstract We introduce a game called Squares where the single player is presented with a pattern of black and white

More information

Characteristics of Routes in a Road Traffic Assignment

Characteristics of Routes in a Road Traffic Assignment Characteristics of Routes in a Road Traffic Assignment by David Boyce Northwestern University, Evanston, IL Hillel Bar-Gera Ben-Gurion University of the Negev, Israel at the PTV Vision Users Group Meeting

More information

Formal Verification. Lecture 5: Computation Tree Logic (CTL)

Formal Verification. Lecture 5: Computation Tree Logic (CTL) Formal Verification Lecture 5: Computation Tree Logic (CTL) Jacques Fleuriot 1 jdf@inf.ac.uk 1 With thanks to Bob Atkey for some of the diagrams. Recap Previously: Linear-time Temporal Logic This time:

More information

Topic 1: defining games and strategies. SF2972: Game theory. Not allowed: Extensive form game: formal definition

Topic 1: defining games and strategies. SF2972: Game theory. Not allowed: Extensive form game: formal definition SF2972: Game theory Mark Voorneveld, mark.voorneveld@hhs.se Topic 1: defining games and strategies Drawing a game tree is usually the most informative way to represent an extensive form game. Here is one

More information

Permutation Groups. Definition and Notation

Permutation Groups. Definition and Notation 5 Permutation Groups Wigner s discovery about the electron permutation group was just the beginning. He and others found many similar applications and nowadays group theoretical methods especially those

More information

arxiv: v1 [math.co] 11 Jul 2016

arxiv: v1 [math.co] 11 Jul 2016 OCCURRENCE GRAPHS OF PATTERNS IN PERMUTATIONS arxiv:160703018v1 [mathco] 11 Jul 2016 BJARNI JENS KRISTINSSON AND HENNING ULFARSSON Abstract We define the occurrence graph G p (π) of a pattern p in a permutation

More information

Optimization of Tile Sets for DNA Self- Assembly

Optimization of Tile Sets for DNA Self- Assembly Optimization of Tile Sets for DNA Self- Assembly Joel Gawarecki Department of Computer Science Simpson College Indianola, IA 50125 joel.gawarecki@my.simpson.edu Adam Smith Department of Computer Science

More information

Register Allocation by Puzzle Solving

Register Allocation by Puzzle Solving Register Allocation by Puzzle Solving EECS 322: Compiler Construction Simone Campanoni Robby Findler 4/19/2016 Materials Research paper: Authors: Fernando Magno Quintao Pereira, Jens Palsberg Title: Register

More information

Dynamic Games: Backward Induction and Subgame Perfection

Dynamic Games: Backward Induction and Subgame Perfection Dynamic Games: Backward Induction and Subgame Perfection Carlos Hurtado Department of Economics University of Illinois at Urbana-Champaign hrtdmrt2@illinois.edu Jun 22th, 2017 C. Hurtado (UIUC - Economics)

More information

Transport Capacity and Spectral Efficiency of Large Wireless CDMA Ad Hoc Networks

Transport Capacity and Spectral Efficiency of Large Wireless CDMA Ad Hoc Networks Transport Capacity and Spectral Efficiency of Large Wireless CDMA Ad Hoc Networks Yi Sun Department of Electrical Engineering The City College of City University of New York Acknowledgement: supported

More information

Theorem Proving and Model Checking

Theorem Proving and Model Checking Theorem Proving and Model Checking (or: how to have your cake and eat it too) Joe Hurd joe.hurd@comlab.ox.ac.uk Cakes Talk Computing Laboratory Oxford University Theorem Proving and Model Checking Joe

More information

CITS2211 Discrete Structures Turing Machines

CITS2211 Discrete Structures Turing Machines CITS2211 Discrete Structures Turing Machines October 23, 2017 Highlights We have seen that FSMs and PDAs are surprisingly powerful But there are some languages they can not recognise We will study a new

More information

THE ENUMERATION OF PERMUTATIONS SORTABLE BY POP STACKS IN PARALLEL

THE ENUMERATION OF PERMUTATIONS SORTABLE BY POP STACKS IN PARALLEL THE ENUMERATION OF PERMUTATIONS SORTABLE BY POP STACKS IN PARALLEL REBECCA SMITH Department of Mathematics SUNY Brockport Brockport, NY 14420 VINCENT VATTER Department of Mathematics Dartmouth College

More information

Tiling Problems. This document supersedes the earlier notes posted about the tiling problem. 1 An Undecidable Problem about Tilings of the Plane

Tiling Problems. This document supersedes the earlier notes posted about the tiling problem. 1 An Undecidable Problem about Tilings of the Plane Tiling Problems This document supersedes the earlier notes posted about the tiling problem. 1 An Undecidable Problem about Tilings of the Plane The undecidable problems we saw at the start of our unit

More information

"P2P Scrabble. Can P2P games commence?"

P2P Scrabble. Can P2P games commence? "P2P Scrabble. Can P2P games commence?" Adam Wierzbicki* Tomasz Kucharski* adamw@pjwstk.edu.pl *Polish-Japanese Institute of Information Technology ul. Koszykowa 86, 02-008 Warsaw, Poland Abstract The

More information

Bulgarian Solitaire in Three Dimensions

Bulgarian Solitaire in Three Dimensions Bulgarian Solitaire in Three Dimensions Anton Grensjö antongrensjo@gmail.com under the direction of Henrik Eriksson School of Computer Science and Communication Royal Institute of Technology Research Academy

More information

3 Game Theory II: Sequential-Move and Repeated Games

3 Game Theory II: Sequential-Move and Repeated Games 3 Game Theory II: Sequential-Move and Repeated Games Recognizing that the contributions you make to a shared computer cluster today will be known to other participants tomorrow, you wonder how that affects

More information

Pervasive Services Engineering for SOAs

Pervasive Services Engineering for SOAs Pervasive Services Engineering for SOAs Dhaminda Abeywickrama (supervised by Sita Ramakrishnan) Clayton School of Information Technology, Monash University, Australia dhaminda.abeywickrama@infotech.monash.edu.au

More information

Joint work with Dragana Bajović and Dušan Jakovetić. DLR/TUM Workshop, Munich,

Joint work with Dragana Bajović and Dušan Jakovetić. DLR/TUM Workshop, Munich, Slotted ALOHA in Small Cell Networks: How to Design Codes on Random Geometric Graphs? Dejan Vukobratović Associate Professor, DEET-UNS University of Novi Sad, Serbia Joint work with Dragana Bajović and

More information

Policy-Based RTL Design

Policy-Based RTL Design Policy-Based RTL Design Bhanu Kapoor and Bernard Murphy bkapoor@atrenta.com Atrenta, Inc., 2001 Gateway Pl. 440W San Jose, CA 95110 Abstract achieving the desired goals. We present a new methodology to

More information

Finite and Infinite Sets

Finite and Infinite Sets Finite and Infinite Sets MATH 464/506, Real Analysis J. Robert Buchanan Department of Mathematics Summer 2007 Basic Definitions Definition The empty set has 0 elements. If n N, a set S is said to have

More information

SF2972: Game theory. Mark Voorneveld, February 2, 2015

SF2972: Game theory. Mark Voorneveld, February 2, 2015 SF2972: Game theory Mark Voorneveld, mark.voorneveld@hhs.se February 2, 2015 Topic: extensive form games. Purpose: explicitly model situations in which players move sequentially; formulate appropriate

More information

Exploring an unknown dangerous graph with a constant number of tokens

Exploring an unknown dangerous graph with a constant number of tokens Exploring an unknown dangerous graph with a constant number of tokens B. Balamohan e, S. Dobrev f, P. Flocchini e, N. Santoro h a School of Electrical Engineering and Computer Science, University of Ottawa,

More information

FORMAL MODELING AND VERIFICATION OF MULTI-AGENTS SYSTEM USING WELL- FORMED NETS

FORMAL MODELING AND VERIFICATION OF MULTI-AGENTS SYSTEM USING WELL- FORMED NETS FORMAL MODELING AND VERIFICATION OF MULTI-AGENTS SYSTEM USING WELL- FORMED NETS Meriem Taibi 1 and Malika Ioualalen 1 1 LSI - USTHB - BP 32, El-Alia, Bab-Ezzouar, 16111 - Alger, Algerie taibi,ioualalen@lsi-usthb.dz

More information

Estimating the Transmission Probability in Wireless Networks with Configuration Models

Estimating the Transmission Probability in Wireless Networks with Configuration Models Estimating the Transmission Probability in Wireless Networks with Configuration Models Paola Bermolen niversidad de la República - ruguay Joint work with: Matthieu Jonckheere (BA), Federico Larroca (delar)

More information

A Course in Model Theory

A Course in Model Theory A Course in Model Theory Author address: Rami Grossberg 1 DEPARTMENT OF MATHEMATICAL SCIENCES, CARNEGIE MELLON UNI- VERSITY, PITTSBURGH, PA 15213 E-mail address: rami@cmu.edu 1 This preliminary draft is

More information

CURRICULUM VITAE. Oct 2005 Dec MSc in Computer Science. Faculty of Mathematics,

CURRICULUM VITAE. Oct 2005 Dec MSc in Computer Science. Faculty of Mathematics, CURRICULUM VITAE Mladen Nikolić University of Belgrade Faculty of Mathematics Studentski Trg 16 11000 Belgrade Serbia e-mail: nikolic@matf.bg.ac.rs URL: http://www.matf.bg.ac.rs/ nikolic 1 Education Oct

More information

Modeling Supervisory Control of Autonomous Mobile Robots using Graph Theory, Automata and Z Notation

Modeling Supervisory Control of Autonomous Mobile Robots using Graph Theory, Automata and Z Notation Modeling Supervisory Control of Autonomous Mobile Robots using Graph Theory, Automata and Z Notation Javed Iqbal 1, Sher Afzal Khan 2, Nazir Ahmad Zafar 3 and Farooq Ahmad 1 1 Faculty of Information Technology,

More information

Introduction to Spring 2009 Artificial Intelligence Final Exam

Introduction to Spring 2009 Artificial Intelligence Final Exam CS 188 Introduction to Spring 2009 Artificial Intelligence Final Exam INSTRUCTIONS You have 3 hours. The exam is closed book, closed notes except a two-page crib sheet, double-sided. Please use non-programmable

More information

Asynchronous Best-Reply Dynamics

Asynchronous Best-Reply Dynamics Asynchronous Best-Reply Dynamics Noam Nisan 1, Michael Schapira 2, and Aviv Zohar 2 1 Google Tel-Aviv and The School of Computer Science and Engineering, The Hebrew University of Jerusalem, Israel. 2 The

More information

5.4 Imperfect, Real-Time Decisions

5.4 Imperfect, Real-Time Decisions 5.4 Imperfect, Real-Time Decisions Searching through the whole (pruned) game tree is too inefficient for any realistic game Moves must be made in a reasonable amount of time One has to cut off the generation

More information

A State Equivalence and Confluence Checker for CHR

A State Equivalence and Confluence Checker for CHR A State Equivalence and Confluence Checker for CHR Johannes Langbein, Frank Raiser, and Thom Frühwirth Faculty of Engineering and Computer Science, Ulm University, Germany firstname.lastname@uni-ulm.de

More information

PAPER. Connecting the dots. Giovanna Roda Vienna, Austria

PAPER. Connecting the dots. Giovanna Roda Vienna, Austria PAPER Connecting the dots Giovanna Roda Vienna, Austria giovanna.roda@gmail.com Abstract Symbolic Computation is an area of computer science that after 20 years of initial research had its acme in the

More information

ON THE PERMUTATIONAL POWER OF TOKEN PASSING NETWORKS.

ON THE PERMUTATIONAL POWER OF TOKEN PASSING NETWORKS. ON THE PERMUTATIONAL POWER OF TOKEN PASSING NETWORKS. M. H. ALBERT, N. RUŠKUC, AND S. LINTON Abstract. A token passing network is a directed graph with one or more specified input vertices and one or more

More information

Harmonic numbers, Catalan s triangle and mesh patterns

Harmonic numbers, Catalan s triangle and mesh patterns Harmonic numbers, Catalan s triangle and mesh patterns arxiv:1209.6423v1 [math.co] 28 Sep 2012 Sergey Kitaev Department of Computer and Information Sciences University of Strathclyde Glasgow G1 1XH, United

More information

How to divide things fairly

How to divide things fairly MPRA Munich Personal RePEc Archive How to divide things fairly Steven Brams and D. Marc Kilgour and Christian Klamler New York University, Wilfrid Laurier University, University of Graz 6. September 2014

More information

A Formal Model for Situated Multi-Agent Systems

A Formal Model for Situated Multi-Agent Systems Fundamenta Informaticae 63 (2004) 1 34 1 IOS Press A Formal Model for Situated Multi-Agent Systems Danny Weyns and Tom Holvoet AgentWise, DistriNet Department of Computer Science K.U.Leuven, Belgium danny.weyns@cs.kuleuven.ac.be

More information

HIT3002: Introduction to Artificial Intelligence

HIT3002: Introduction to Artificial Intelligence HIT3002: Introduction to Artificial Intelligence Intelligent Agents Outline Agents and environments. The vacuum-cleaner world The concept of rational behavior. Environments. Agent structure. Swinburne

More information

Derivation of an Asynchronous Counter

Derivation of an Asynchronous Counter Derivation of an Asynchronous Counter with 105ps/bit load time and early completion in 90nm CMOS Adam Megacz July 17, 2009 Abstract This draft memo describes the process by which I methodically derived

More information

The Place of Group Theory in Decision-Making in Organizational Management A case of 16- Puzzle

The Place of Group Theory in Decision-Making in Organizational Management A case of 16- Puzzle IOSR Journal of Mathematics (IOSR-JM) e-issn: 2278-5728,p-ISSN: 2319-765X, Volume 7, Issue 6 (Sep. - Oct. 2013), PP 17-22 The Place of Group Theory in Decision-Making in Organizational Management A case

More information

Organising LTL Monitors over Systems with a Global Clock

Organising LTL Monitors over Systems with a Global Clock Organising LTL Monitors over Systems with a Global Clock Yliès Falcone joint work with Andreas Bauer (NICTA Canberra, Australia) and Christian Colombo (U of Malta, Malta) Univ. Grenoble Alpes, Inria, Laboratoire

More information

SF2972: Game theory. Introduction to matching

SF2972: Game theory. Introduction to matching SF2972: Game theory Introduction to matching The 2012 Nobel Memorial Prize in Economic Sciences: awarded to Alvin E. Roth and Lloyd S. Shapley for the theory of stable allocations and the practice of market

More information

A MOVING-KNIFE SOLUTION TO THE FOUR-PERSON ENVY-FREE CAKE-DIVISION PROBLEM

A MOVING-KNIFE SOLUTION TO THE FOUR-PERSON ENVY-FREE CAKE-DIVISION PROBLEM PROCEEDINGS OF THE AMERICAN MATHEMATICAL SOCIETY Volume 125, Number 2, February 1997, Pages 547 554 S 0002-9939(97)03614-9 A MOVING-KNIFE SOLUTION TO THE FOUR-PERSON ENVY-FREE CAKE-DIVISION PROBLEM STEVEN

More information

Pattern Avoidance in Unimodal and V-unimodal Permutations

Pattern Avoidance in Unimodal and V-unimodal Permutations Pattern Avoidance in Unimodal and V-unimodal Permutations Dido Salazar-Torres May 16, 2009 Abstract A characterization of unimodal, [321]-avoiding permutations and an enumeration shall be given.there is

More information

Game Theory and Algorithms Lecture 19: Nim & Impartial Combinatorial Games

Game Theory and Algorithms Lecture 19: Nim & Impartial Combinatorial Games Game Theory and Algorithms Lecture 19: Nim & Impartial Combinatorial Games May 17, 2011 Summary: We give a winning strategy for the counter-taking game called Nim; surprisingly, it involves computations

More information

Advanced Automata Theory 4 Games

Advanced Automata Theory 4 Games Advanced Automata Theory 4 Games Frank Stephan Department of Computer Science Department of Mathematics National University of Singapore fstephan@comp.nus.edu.sg Advanced Automata Theory 4 Games p. 1 Repetition

More information

ABSTRACT INTERPRETATION USING LAZINESS: PROVING CONWAY S LOST COSMOLOGICAL THEOREM

ABSTRACT INTERPRETATION USING LAZINESS: PROVING CONWAY S LOST COSMOLOGICAL THEOREM ABSTRACT INTERPRETATION USING LAZINESS: PROVING CONWAY S LOST COSMOLOGICAL THEOREM KEVIN WATKINS Abstract. The paper describes an abstract interpretation technique based on lazy functional programming,

More information

M U LT I C A S T C O M M U N I C AT I O N S. Tarik Cicic

M U LT I C A S T C O M M U N I C AT I O N S. Tarik Cicic M U LT I C A S T C O M M U N I C AT I O N S Tarik Cicic 9..08 O V E R V I E W One-to-many communication, why and how Algorithmic approach: Steiner trees Practical algorithms Multicast tree types Basic

More information

A Model-Theoretic Approach to the Verification of Situated Reasoning Systems

A Model-Theoretic Approach to the Verification of Situated Reasoning Systems A Model-Theoretic Approach to the Verification of Situated Reasoning Systems Anand 5. Rao and Michael P. Georgeff Australian Artificial Intelligence Institute 1 Grattan Street, Carlton Victoria 3053, Australia

More information

Cardinality of Accumulation Points of Infinite Sets

Cardinality of Accumulation Points of Infinite Sets International Mathematical Forum, Vol. 11, 2016, no. 11, 539-546 HIKARI Ltd, www.m-hikari.com http://dx.doi.org/10.12988/imf.2016.6224 Cardinality of Accumulation Points of Infinite Sets A. Kalapodi CTI

More information

5.1 State-Space Search Problems

5.1 State-Space Search Problems Foundations of Artificial Intelligence March 7, 2018 5. State-Space Search: State Spaces Foundations of Artificial Intelligence 5. State-Space Search: State Spaces Malte Helmert University of Basel March

More information

Summary Overview of Topics in Econ 30200b: Decision theory: strong and weak domination by randomized strategies, domination theorem, expected utility

Summary Overview of Topics in Econ 30200b: Decision theory: strong and weak domination by randomized strategies, domination theorem, expected utility Summary Overview of Topics in Econ 30200b: Decision theory: strong and weak domination by randomized strategies, domination theorem, expected utility theorem (consistent decisions under uncertainty should

More information

Greedy Flipping of Pancakes and Burnt Pancakes

Greedy Flipping of Pancakes and Burnt Pancakes Greedy Flipping of Pancakes and Burnt Pancakes Joe Sawada a, Aaron Williams b a School of Computer Science, University of Guelph, Canada. Research supported by NSERC. b Department of Mathematics and Statistics,

More information

The next several lectures will be concerned with probability theory. We will aim to make sense of statements such as the following:

The next several lectures will be concerned with probability theory. We will aim to make sense of statements such as the following: CS 70 Discrete Mathematics for CS Fall 2004 Rao Lecture 14 Introduction to Probability The next several lectures will be concerned with probability theory. We will aim to make sense of statements such

More information

JMG. Review Module 1 Lessons 1-20 for Mid-Module. Prepare for Endof-Unit Assessment. Assessment. Module 1. End-of-Unit Assessment.

JMG. Review Module 1 Lessons 1-20 for Mid-Module. Prepare for Endof-Unit Assessment. Assessment. Module 1. End-of-Unit Assessment. Lesson Plans Lesson Plan WEEK 161 December 5- December 9 Subject to change 2016-2017 Mrs. Whitman 1 st 2 nd Period 3 rd Period 4 th Period 5 th Period 6 th Period H S Mathematics Period Prep Geometry Math

More information

Logical Agents (AIMA - Chapter 7)

Logical Agents (AIMA - Chapter 7) Logical Agents (AIMA - Chapter 7) CIS 391 - Intro to AI 1 Outline 1. Wumpus world 2. Logic-based agents 3. Propositional logic Syntax, semantics, inference, validity, equivalence and satifiability Next

More information

11/18/2015. Outline. Logical Agents. The Wumpus World. 1. Automating Hunt the Wumpus : A different kind of problem

11/18/2015. Outline. Logical Agents. The Wumpus World. 1. Automating Hunt the Wumpus : A different kind of problem Outline Logical Agents (AIMA - Chapter 7) 1. Wumpus world 2. Logic-based agents 3. Propositional logic Syntax, semantics, inference, validity, equivalence and satifiability Next Time: Automated Propositional

More information

Low-Latency Multi-Source Broadcast in Radio Networks

Low-Latency Multi-Source Broadcast in Radio Networks Low-Latency Multi-Source Broadcast in Radio Networks Scott C.-H. Huang City University of Hong Kong Hsiao-Chun Wu Louisiana State University and S. S. Iyengar Louisiana State University In recent years

More information

CSCI 445 Laurent Itti. Group Robotics. Introduction to Robotics L. Itti & M. J. Mataric 1

CSCI 445 Laurent Itti. Group Robotics. Introduction to Robotics L. Itti & M. J. Mataric 1 Introduction to Robotics CSCI 445 Laurent Itti Group Robotics Introduction to Robotics L. Itti & M. J. Mataric 1 Today s Lecture Outline Defining group behavior Why group behavior is useful Why group behavior

More information

On uniquely k-determined permutations

On uniquely k-determined permutations On uniquely k-determined permutations Sergey Avgustinovich and Sergey Kitaev 16th March 2007 Abstract Motivated by a new point of view to study occurrences of consecutive patterns in permutations, we introduce

More information

Fast Sorting and Pattern-Avoiding Permutations

Fast Sorting and Pattern-Avoiding Permutations Fast Sorting and Pattern-Avoiding Permutations David Arthur Stanford University darthur@cs.stanford.edu Abstract We say a permutation π avoids a pattern σ if no length σ subsequence of π is ordered in

More information

RMT 2015 Power Round Solutions February 14, 2015

RMT 2015 Power Round Solutions February 14, 2015 Introduction Fair division is the process of dividing a set of goods among several people in a way that is fair. However, as alluded to in the comic above, what exactly we mean by fairness is deceptively

More information

Stanford University CS261: Optimization Handout 9 Luca Trevisan February 1, 2011

Stanford University CS261: Optimization Handout 9 Luca Trevisan February 1, 2011 Stanford University CS261: Optimization Handout 9 Luca Trevisan February 1, 2011 Lecture 9 In which we introduce the maximum flow problem. 1 Flows in Networks Today we start talking about the Maximum Flow

More information

UNIT-III LIFE-CYCLE PHASES

UNIT-III LIFE-CYCLE PHASES INTRODUCTION: UNIT-III LIFE-CYCLE PHASES - If there is a well defined separation between research and development activities and production activities then the software is said to be in successful development

More information

CSC475 Music Information Retrieval

CSC475 Music Information Retrieval CSC475 Music Information Retrieval Sinusoids and DSP notation George Tzanetakis University of Victoria 2014 G. Tzanetakis 1 / 38 Table of Contents I 1 Time and Frequency 2 Sinusoids and Phasors G. Tzanetakis

More information

REU 2006 Discrete Math Lecture 3

REU 2006 Discrete Math Lecture 3 REU 006 Discrete Math Lecture 3 Instructor: László Babai Scribe: Elizabeth Beazley Editors: Eliana Zoque and Elizabeth Beazley NOT PROOFREAD - CONTAINS ERRORS June 6, 006. Last updated June 7, 006 at :4

More information

8.F The Possibility of Mistakes: Trembling Hand Perfection

8.F The Possibility of Mistakes: Trembling Hand Perfection February 4, 2015 8.F The Possibility of Mistakes: Trembling Hand Perfection back to games of complete information, for the moment refinement: a set of principles that allow one to select among equilibria.

More information

NON-OVERLAPPING PERMUTATION PATTERNS. To Doron Zeilberger, for his Sixtieth Birthday

NON-OVERLAPPING PERMUTATION PATTERNS. To Doron Zeilberger, for his Sixtieth Birthday NON-OVERLAPPING PERMUTATION PATTERNS MIKLÓS BÓNA Abstract. We show a way to compute, to a high level of precision, the probability that a randomly selected permutation of length n is nonoverlapping. As

More information