# 6.852: Distributed Algorithms Fall, Class 2

Save this PDF as:

Size: px
Start display at page:

## Transcription

1 .8: Distributed Algorithms Fall, 009 Class

2 Today s plan Leader election in a synchronous ring: Lower bound for comparison-based algorithms. Basic computation in general synchronous networks: Leader election Breadth-first search Broadcast and convergecast Reading: Sections.,.-- Next time: Shortest paths Minimum spanning tree Maximal independent set Reading: Sections.-.

3 Last time Model for synchronous networks Leader election problem, in simple ring networks Two algorithms: [LeLann], [Chang, Roberts] Pass UID tokens one way, elect max Proofs, using invariants Time complexity: n (or n for halting, unknown size) Communication (message) complexity: O(n ) [Hirshberg, Sinclair] Send UID tokens to successively-doubled distances, in both directions. Message complexity: O(n log n) Time complexity: O(n) (dominated by last phase)

4 Last time Q: Can the message complexity be lowered still more? Non-comparison-based algorithms Wait quietly until it s your turn, determined by UID. Message complexity: O(n) Time complexity: O(u min n), or O(n u min) if n is unknown

5 Lower bounds for leader election Q: Can we get lower time complexity? Easy n/ lower bound (informal): Suppose an algorithm always elects a leader in time < n/. Consider two separate rings of size n (n odd), R and R. Algorithm elects processes i and i, each in time < n/. i R R i i R i Now cut R and R at points furthest from the leaders, paste them together to form a new ring R of size n. Then in R, both i and i get elected, because the time it takes for them to get elected is insufficient for information about the pasting to propagate from the pasting points to i and i.

6 Lower bounds for leader election Q: Can we get lower message complexity? More difficult Ω(n log n) lower bound. Assumptions Comparison-based algorithm Unique start state (except for UID), deterministic.

7 Comparison-based algorithms All decisions determined only by relative order of UIDs: Identical start states, except for UID. Manipulate UIDs only by copying, sending, receiving, and comparing them (<, =, >). Can use results of comparisons to decide what to do: State transition What (if anything) to send to neighbors Whether to elect self leader

8 Lower bound proof: Overview For any n, there is a ring R n of size n such that in R n, any leader election algorithm has: Ω(n) active rounds (in which messages are sent). Ω(n/i) msgs sent in active round i (for i > n). Thus, Ω(n log n) msgs total. Choose ring R n with a great deal of symmetry in ordering pattern of UIDs. For n = power of : Bit-reversal rings. For general n: c-symmetric rings. Key lemma: Processes whose neighborhoods look the same act the same, until information from outside their neighborhoods reaches them. Need many active rounds to break symmetry.

9 Lower bound proof: Definitions A round is active if some (non-null) message is sent in the round. k-neighborhood of a process: The k+ processes within distance k. (u, u,..., u k ) & (v, v,..., v k ) are order-equivalent provided that u i u j iff v i v j for all i,j. Implies same (<, =, >) relationships for all corresponding pairs. Example: ( 7 9) vs. ( ) Two process states s and t correspond with respect to (u, u,..., u k ) & (v, v,..., v k ) if they are identical except that occurrences of u i in s are replaced by v i in t for all i. Analogous definition for corresponding messages.

10 Lower bound proof: Key Lemma Lemma: Suppose A is a comparison-based algorithm on a synchronous ring network. Suppose i and j are processes whose sequences of UIDs in their k- neighborhoods are order-equivalent. Then at any point after k active rounds, the states of i and j correspond with respect to their k-neighborhoods' UID sequences. That is, processes with order-equivalent k-neighborhoods are indistinguishable until after enough active rounds. Enough: Information has had a chance to reach the processes from outside the k-neighborhoods. Example: and 8 have order-equivalent - neighborhoods, so must remain in corresponding states through active rounds

11 Lower bound proof: Key lemma Lemma: Suppose A is a comparison-based algorithm on a synchronous ring network. Suppose i and j are processes whose sequences of UIDs in their k- neighborhoods are order-equivalent. Then at any point after k active rounds, the states of i and j correspond with respect to their k-neighborhoods' UID sequences. Proof: Induction on r = number of completed rounds. Base: r = 0. Start states of i and j are identical except for UIDs. Correspond with respect to k-neighborhoods for every k 0. Inductive step: Assume for r-, show for r.

12 Key lemma Lemma: Suppose i and j have order-equivalent k-neighborhoods. Then at any point after k active rounds, i and j are in corresponding states, with respect to their k-neighborhoods. Proof, inductive step: Assume true after round r-, for all i,j,k. Prove true after round r, for all i,j,k. Fix i,j,k, where i and j have order-equivalent k-neighborhoods. Assume i j (trivial otherwise). Assume at most k of first r rounds are active. We must show that, after r rounds, i and j are in corresponding states with respect to their k-neighborhoods. By inductive hypothesis, after r- rounds, i and j are in corresponding states with respect to their k-neighborhoods. If neither i nor j receives a non-null message at round r, they make corresponding transitions, to corresponding states (with respect to their k-neighborhoods). So assume at least one of i,j receives a message at round r.

13 Key lemma Lemma: Suppose i and j have order-equivalent k-neighborhoods. Then at any point after k active rounds, i and j are in corresponding states, with respect to their k-neighborhoods. Inductive step, cont d: So assume at least one of i,j receives a message at round r. Then round r is active, and the first r- rounds include at most k- active rounds. (k-)-nbhds of i- and j- are order-equivalent, since they are included within the k-neighborhoods of i and j. By inductive hypothesis, after r- rounds: i- and j- are in corresponding states wrt their (k-)-neighborhoods, and thus wrt the k-neighborhoods of i and j. Similarly for i+ and j+. Thus, messages from i- to i and from j- to j correspond. Similarly for msgs from i+ to i and from j+ to j. So i and j are in corresponding states and receive corresponding messages, so make corresponding transitions and end up in corresponding states.

14 Lower bound proof So, we have shown that many active rounds are needed to break symmetry, if there are large order-equivalent neighborhoods. It remains to show: There exist rings with many, and large, order-equivalent neighborhoods. This causes large communication complexity. First, see how order-equivalent neighborhoods cause large communication complexity

15 Lower bound proof Corollary : Suppose A is a comparison-based leaderelection algorithm on a synchronous ring network, and k is an integer such that for any process i, there is a distinct process j such that i and j have order-equivalent k- neighborhoods. Then A has more than k active rounds. Proof: By contradiction. Suppose A elects i in at most k active rounds. By assumption, there is a distinct process j with an orderequivalent k-neighborhood. By Key Lemma, i and j are in corresponding states, so j is also elected a contradiction.

16 Lower bound proof Corollary : Suppose A is a comparison-based algorithm on a synchronous ring network, and k and m are integers such that the k-neighborhood of any process is orderequivalent to that of at least m- other processes. Then at least m messages are sent in A's k th active round. Proof: By definition, some process sends a message in the k th active round. By assumption, at least m- other processes have order-equivalent k-neighborhoods. By the Key Lemma, immediately before this round, all these processes are in corresponding states. Thus, they all send messages in this round, so at least m messages are sent.

17 Highly symmetric rings That s how order-equivalent neighborhoods yield high communication complexity. Now, show existence of rings with many, large orderequivalent neighborhoods. 0 8 For powers of : Bit-reversal rings 7 UID is bit-reversed process number. Example: 0 9 For every segment of length n/ b, there are (at least) b orderequivalent segments (including original segment). So for every process i, there are at least n/k processes (including i) with order-equivalent k-neighborhoods, for k < n/. More than n/8 active rounds. Number of messages n/ + n/8 + n/ = Ω(n log n)

18 C-symmetric rings c-symmetric ring: For every l such that n < l < n, and every sequence S of length l in the ring, there are at least cn/l order-equivalent occurrences. [Frederickson-Lynch] There exists c such that for every positive integer n, there is a c-symmetric ring of size n. Given c-symmetric ring, argue similarly to before.

19 General Synchronous Networks

20 General synchronous networks Not just rings, but arbitrary digraphs. Basic tasks, such as broadcasting messages, collecting responses, setting up communication structures. Basic algorithms. No lower bounds. Algorithms are simplified versions of algorithms that work in asynchronous networks. We ll revisit them in asynchronous setting.

21 General synchronous network assumptions Digraph G = (V,E): V = set of processes E = set of communication channels distance(i,j) = shortest distance from i to j diam = max distance(i,j) for all i,j Assume: Strongly connected (diam is finite), UIDs Set M of messages Each process has states, start, msgs, trans, as before. Processes communicate only over digraph edges. Generally don t know the entire network, just local neighborhood. Local names for neighbors. No particular order for neighbors, in general. But (technicality) if incoming and outgoing edges connect to same neighbor, the names are the same (so the node knows this).

22 Leader election in general synchronous networks Assume: Use UIDs with comparisons only. No constraints on which UIDs appear, or where they appear in the graph. Processes know (upper bound on) graph diameter. Required: Everyone should eventually set status {leader, non-leader}, exactly one leader. Show basic flooding algorithm, sketch proof using invariants, show optimized version, sketch proof by relating it to the basic algorithm. Basic flooding algorithm: Every round: Send max UID seen to all neighbors. Stop after diam rounds. Elect self iff own UID is max seen.

23 states Leader election in general synchronous networks u, initially UID max-uid, initially UID status {unknown, leader, not-leader}, initially unknown rounds, initially 0 msgs if rounds < diam send max-uid to all out-nbrs trans increment round max-uid := max (max-uid, UIDs received) if round = diam then status := leader if max-uid = u, not-leader otherwise

24 Leader election in general network Start configuration

25 Leader election in general network Round (msgs)

26 Leader election in general network Round (trans)

27 Leader election in general network Round (start)

28 Leader election in general network Round (msgs)

29 Leader election in general network Round (trans)

30 Leader election in general network Round (start)

31 Leader election in general network Round (msgs)

32 Leader election in general network Round (trans)

33 Leader election in general network Round (start)

34 Leader election in general network Round (msgs)

35 Leader election in general network Round (trans)

36 Leader election in general network Basic flooding algorithm (summary): Assume diameter is known (diam). Every round: Send max UID seen to all neighbors. Stop after diam rounds. Elect self iff own UID is max seen. Complexity: Time complexity (rounds): diam Message complexity: diam E Correctness proof?

37 Key invariant Invariant: After round r, if distance(i,j) r then maxuid j UID i. Proof: Induction on r. Base: r = 0 distance(i,j) = 0 implies i = j, and max-uid i = UID i. Inductive step: Assume for r-, prove for r. If distance(i,j) r then there is a node k in in-nbrs j such that distance(i,k) r -. By inductive hypotheses, after round r-, max-uid k UID i. Since k sends its max to j at round r, max-uid j UID i after round r.

38 Reducing the message complexity Slightly optimized algorithm: Don't send same UID twice. New state var: new-info: Boolean, initially true Send max-uid only if new-info = true new-info := true iff max UID received > max-uid

39 Leader election in general network Start configuration

40 Leader election in general network Round (msgs)

41 Leader election in general network Round (trans)

42 Leader election in general network Round (start)

43 Leader election in general network Round (msgs)

44 Leader election in general network Round (trans)

45 Leader election in general network Round (start)

46 Leader election in general network Round (msgs)

47 Leader election in general network Round (trans)

48 Leader election in general network Round (start)

49 Leader election in general network Round (msgs)

50 Leader election in general network Round (trans)

51 Leader election in general network Slightly optimized algorithm (summary): Don't send same UID twice New state variable: new-info: Boolean, initially true Send max-uid just when new-info = true new-info := true iff max UID received > max-uid Can improve communication cost drastically, though not the worst-case bound, diam E. Correctness Proof? As before, or: Can use another important proof method for distributed algorithms: simulation relations.

52 Simulation relation Relates new algorithm formally to an original one that has already been proved correct. Correctness then carries over to new algorithm. Often used to show correctness of optimized algorithms. Can repeat in several stages, adding more optimizations. Run the two algorithms side by side. Define simulation relation between states of the two algorithms: Satisfied by start states. Preserved by every transition. Outputs should be the same in related states.

53 Simulation relation for the optimized algorithm Key invariant of the optimized algorithm: If i in-nbrs j and max-uid i > max-uid j then new-info i = true. That is, if i has better information than j has, then i is planning to send it to j on the next round. Prove by induction. Simulation relation: All state variables of the basic algorithm (all but new-info) have the same values in both algorithms. Start condition: By definition. Preserved by every transition: Key property: max-uids are always the same in the two algorithms. Consider i in-nbrs j. If new-info i = true before the step, then the two algorithms behave the same with respect to (i,j). Otherwise, only the basic algorithm sends a message. However, by the invariant, max-uid i max-uid j before the step, and the message has no effect.

54 Why all these proofs? Distributed algorithms can be quite complicated, subtle. Easy to make mistakes. So careful reasoning about algorithm steps is generally more important than for sequential algorithms.

55 Other problems besides leader Breadth-first search election Breadth-first spanning trees, shortest-paths spanning trees, Minimum spanning trees Maximal independent sets

56 Breadth-first search Assume: Strongly connected digraph, UIDs. No knowledge of size, diameter of network. Distinguished source node i 0. Required: Breadth-first spanning tree, rooted at source node i 0. Branches are directed paths in the given digraph. Spanning: Includes every node. Breadth-first: Node at distance d from i 0 appears at depth d in tree. Output: Each node (except i 0 ) sets a parent variable to indicate its parent in the tree.

59 Breadth-first search algorithm Mark nodes as they get incorporated into the tree. Initially, only i 0 is marked. Round : i 0 sends search message to out-nbrs. At every round: An unmarked node that receives a search message: Marks itself. Designates one process from which it received search as its parent. Sends search to out-nbrs at the next round. Q: What state variables do we need? Q: Why does this yield a BFS tree?

61 Breadth-first search s Round (msgs)

62 Breadth-first search s Round (trans)

64 Breadth-first search s s Round (msgs)

65 Breadth-first search s s Round (trans)

67 Breadth-first search s s s s s Round (msgs)

68 Breadth-first search s s s s s Round (trans)

70 Breadth-first search s s s Round (msgs)

71 Breadth-first search s s s Round (trans)

75 Breadth-first search algorithm Mark nodes as they get incorporated into the tree. Initially, only i 0 is marked. Round : i 0 sends search message to out-nbrs. At every round: An unmarked node that receives a search message: Marks itself. Designates one process from which it received search as its parent. Sends search to out-nbrs at the next round. Yields a BFS tree because all the branches are created synchronously. Complexity: Time = diam + ; Messages = E

76 BFS, bells and whistles Child pointers? Easy with bidirectional communication. What if not? Could use BFS to search for parents. High message bit complexity. Termination? With bidirectional communication? Convergecast With unidirectional communication?

77 Applications of BFS Message broadcast: Can broadcast a message while setting up the BFS tree ( piggyback the message). Or, first establish a BFS tree, with child pointers, then use it for broadcasting. Can reuse the tree for many broadcasts Each takes time only O(diameter), messages O(n). For the remaining applications, assume bidirectional edges (undirected graph).

78 Applications of BFS Global computation: Sum, max, or any kind of data aggregation: Convergecast on BFS tree. Complexity: Time O(diameter); Messages O(n)/ Leader election (without knowing diameter): Everyone starts BFS, determines max UID. Complexity: Time O(diam); Messages O(n E ) (actually, O( diam E )). Compute diameter: All do BFS. Convergecast to find height of each BFS tree. Convergecast again to find max of all heights.

79 Next time More distributed algorithms in general synchronous networks: Shortest paths (Bellman-Ford) Minimum spanning trees Maximal independent sets (just summarize) Reading: Sections.-..

### Analysis of Algorithms, I

Analysis of Algorithms, I CSOR W4231.002 Eleni Drinea Computer Science Department Columbia University Thursday, February 26, 2015 Outline 1 Recap 2 Representing graphs 3 Breadth-first search (BFS) 4 Applications

### Midterm Practice Problems

6.042/8.062J Mathematics for Computer Science October 2, 200 Tom Leighton, Marten van Dijk, and Brooke Cowan Midterm Practice Problems Problem. [0 points] In problem set you showed that the nand operator

### The Goldberg Rao Algorithm for the Maximum Flow Problem

The Goldberg Rao Algorithm for the Maximum Flow Problem COS 528 class notes October 18, 2006 Scribe: Dávid Papp Main idea: use of the blocking flow paradigm to achieve essentially O(min{m 2/3, n 1/2 }

### Chapter 7: Termination Detection

Chapter 7: Termination Detection Ajay Kshemkalyani and Mukesh Singhal Distributed Computing: Principles, Algorithms, and Systems Cambridge University Press A. Kshemkalyani and M. Singhal (Distributed Computing)

### Outline. NP-completeness. When is a problem easy? When is a problem hard? Today. Euler Circuits

Outline NP-completeness Examples of Easy vs. Hard problems Euler circuit vs. Hamiltonian circuit Shortest Path vs. Longest Path 2-pairs sum vs. general Subset Sum Reducing one problem to another Clique

### 2.3 Scheduling jobs on identical parallel machines

2.3 Scheduling jobs on identical parallel machines There are jobs to be processed, and there are identical machines (running in parallel) to which each job may be assigned Each job = 1,,, must be processed

### Discrete Mathematics & Mathematical Reasoning Chapter 10: Graphs

Discrete Mathematics & Mathematical Reasoning Chapter 10: Graphs Kousha Etessami U. of Edinburgh, UK Kousha Etessami (U. of Edinburgh, UK) Discrete Mathematics (Chapter 6) 1 / 13 Overview Graphs and Graph

### Lecture 1: Course overview, circuits, and formulas

Lecture 1: Course overview, circuits, and formulas Topics in Complexity Theory and Pseudorandomness (Spring 2013) Rutgers University Swastik Kopparty Scribes: John Kim, Ben Lund 1 Course Information Swastik

### Distributed Computing over Communication Networks: Topology. (with an excursion to P2P)

Distributed Computing over Communication Networks: Topology (with an excursion to P2P) Some administrative comments... There will be a Skript for this part of the lecture. (Same as slides, except for today...

### Virtual Time and Timeout in Client-Server Networks

Virtual Time and Timeout in Client-Server Networks Jayadev Misra July 13, 2011 Contents 1 Introduction 2 1.1 Background.............................. 2 1.1.1 Causal Model of Virtual Time...............

### GRAPH THEORY LECTURE 4: TREES

GRAPH THEORY LECTURE 4: TREES Abstract. 3.1 presents some standard characterizations and properties of trees. 3.2 presents several different types of trees. 3.7 develops a counting method based on a bijection

### Scheduling. Open shop, job shop, flow shop scheduling. Related problems. Open shop, job shop, flow shop scheduling

Scheduling Basic scheduling problems: open shop, job shop, flow job The disjunctive graph representation Algorithms for solving the job shop problem Computational complexity of the job shop problem Open

### MapReduce and Distributed Data Analysis. Sergei Vassilvitskii Google Research

MapReduce and Distributed Data Analysis Google Research 1 Dealing With Massive Data 2 2 Dealing With Massive Data Polynomial Memory Sublinear RAM Sketches External Memory Property Testing 3 3 Dealing With

### Approximation Algorithms

Approximation Algorithms or: How I Learned to Stop Worrying and Deal with NP-Completeness Ong Jit Sheng, Jonathan (A0073924B) March, 2012 Overview Key Results (I) General techniques: Greedy algorithms

### Find-The-Number. 1 Find-The-Number With Comps

Find-The-Number 1 Find-The-Number With Comps Consider the following two-person game, which we call Find-The-Number with Comps. Player A (for answerer) has a number x between 1 and 1000. Player Q (for questioner)

### Introduction to Algorithms Review information for Prelim 1 CS 4820, Spring 2010 Distributed Wednesday, February 24

Introduction to Algorithms Review information for Prelim 1 CS 4820, Spring 2010 Distributed Wednesday, February 24 The final exam will cover seven topics. 1. greedy algorithms 2. divide-and-conquer algorithms

Approximation Algorithms Chapter Approximation Algorithms Q. Suppose I need to solve an NP-hard problem. What should I do? A. Theory says you're unlikely to find a poly-time algorithm. Must sacrifice one

### Dynamic programming. Doctoral course Optimization on graphs - Lecture 4.1. Giovanni Righini. January 17 th, 2013

Dynamic programming Doctoral course Optimization on graphs - Lecture.1 Giovanni Righini January 1 th, 201 Implicit enumeration Combinatorial optimization problems are in general NP-hard and we usually

### 8.1 Min Degree Spanning Tree

CS880: Approximations Algorithms Scribe: Siddharth Barman Lecturer: Shuchi Chawla Topic: Min Degree Spanning Tree Date: 02/15/07 In this lecture we give a local search based algorithm for the Min Degree

### Lecture 4 Online and streaming algorithms for clustering

CSE 291: Geometric algorithms Spring 2013 Lecture 4 Online and streaming algorithms for clustering 4.1 On-line k-clustering To the extent that clustering takes place in the brain, it happens in an on-line

### System Interconnect Architectures. Goals and Analysis. Network Properties and Routing. Terminology - 2. Terminology - 1

System Interconnect Architectures CSCI 8150 Advanced Computer Architecture Hwang, Chapter 2 Program and Network Properties 2.4 System Interconnect Architectures Direct networks for static connections Indirect

### Well-Separated Pair Decomposition for the Unit-disk Graph Metric and its Applications

Well-Separated Pair Decomposition for the Unit-disk Graph Metric and its Applications Jie Gao Department of Computer Science Stanford University Joint work with Li Zhang Systems Research Center Hewlett-Packard

### Simple Graphs Degrees, Isomorphism, Paths

Mathematics for Computer Science MIT 6.042J/18.062J Simple Graphs Degrees, Isomorphism, Types of Graphs Simple Graph this week Multi-Graph Directed Graph next week Albert R Meyer, March 10, 2010 lec 6W.1

### ! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. !-approximation algorithm.

Approximation Algorithms Chapter Approximation Algorithms Q Suppose I need to solve an NP-hard problem What should I do? A Theory says you're unlikely to find a poly-time algorithm Must sacrifice one of

### Stationary random graphs on Z with prescribed iid degrees and finite mean connections

Stationary random graphs on Z with prescribed iid degrees and finite mean connections Maria Deijfen Johan Jonasson February 2006 Abstract Let F be a probability distribution with support on the non-negative

### Labeling outerplanar graphs with maximum degree three

Labeling outerplanar graphs with maximum degree three Xiangwen Li 1 and Sanming Zhou 2 1 Department of Mathematics Huazhong Normal University, Wuhan 430079, China 2 Department of Mathematics and Statistics

### 6.02 Practice Problems: Routing

1 of 9 6.02 Practice Problems: Routing IMPORTANT: IN ADDITION TO THESE PROBLEMS, PLEASE SOLVE THE PROBLEMS AT THE END OF CHAPTERS 17 AND 18. Problem 1. Consider the following networks: network I (containing

### Notes from Week 1: Algorithms for sequential prediction

CS 683 Learning, Games, and Electronic Markets Spring 2007 Notes from Week 1: Algorithms for sequential prediction Instructor: Robert Kleinberg 22-26 Jan 2007 1 Introduction In this course we will be looking

### Discuss the size of the instance for the minimum spanning tree problem.

3.1 Algorithm complexity The algorithms A, B are given. The former has complexity O(n 2 ), the latter O(2 n ), where n is the size of the instance. Let n A 0 be the size of the largest instance that can

### 1 Definitions. Supplementary Material for: Digraphs. Concept graphs

Supplementary Material for: van Rooij, I., Evans, P., Müller, M., Gedge, J. & Wareham, T. (2008). Identifying Sources of Intractability in Cognitive Models: An Illustration using Analogical Structure Mapping.

### Graphs without proper subgraphs of minimum degree 3 and short cycles

Graphs without proper subgraphs of minimum degree 3 and short cycles Lothar Narins, Alexey Pokrovskiy, Tibor Szabó Department of Mathematics, Freie Universität, Berlin, Germany. August 22, 2014 Abstract

### Scheduling Home Health Care with Separating Benders Cuts in Decision Diagrams

Scheduling Home Health Care with Separating Benders Cuts in Decision Diagrams André Ciré University of Toronto John Hooker Carnegie Mellon University INFORMS 2014 Home Health Care Home health care delivery

### Social Media Mining. Graph Essentials

Graph Essentials Graph Basics Measures Graph and Essentials Metrics 2 2 Nodes and Edges A network is a graph nodes, actors, or vertices (plural of vertex) Connections, edges or ties Edge Node Measures

### ! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. #-approximation algorithm.

Approximation Algorithms 11 Approximation Algorithms Q Suppose I need to solve an NP-hard problem What should I do? A Theory says you're unlikely to find a poly-time algorithm Must sacrifice one of three

### The LCA Problem Revisited

The LA Problem Revisited Michael A. Bender Martín Farach-olton SUNY Stony Brook Rutgers University May 16, 2000 Abstract We present a very simple algorithm for the Least ommon Ancestor problem. We thus

### Topology-based network security

Topology-based network security Tiit Pikma Supervised by Vitaly Skachek Research Seminar in Cryptography University of Tartu, Spring 2013 1 Introduction In both wired and wireless networks, there is the

### each college c i C has a capacity q i - the maximum number of students it will admit

n colleges in a set C, m applicants in a set A, where m is much larger than n. each college c i C has a capacity q i - the maximum number of students it will admit each college c i has a strict order i

### Graphical degree sequences and realizations

swap Graphical and realizations Péter L. Erdös Alfréd Rényi Institute of Mathematics Hungarian Academy of Sciences MAPCON 12 MPIPKS - Dresden, May 15, 2012 swap Graphical and realizations Péter L. Erdös

### Mining Social Network Graphs

Mining Social Network Graphs Debapriyo Majumdar Data Mining Fall 2014 Indian Statistical Institute Kolkata November 13, 17, 2014 Social Network No introduc+on required Really? We s7ll need to understand

### The positive minimum degree game on sparse graphs

The positive minimum degree game on sparse graphs József Balogh Department of Mathematical Sciences University of Illinois, USA jobal@math.uiuc.edu András Pluhár Department of Computer Science University

### Week 1: Introduction to Online Learning

Week 1: Introduction to Online Learning 1 Introduction This is written based on Prediction, Learning, and Games (ISBN: 2184189 / -21-8418-9 Cesa-Bianchi, Nicolo; Lugosi, Gabor 1.1 A Gentle Start Consider

### 136 CHAPTER 4. INDUCTION, GRAPHS AND TREES

136 TER 4. INDUCTION, GRHS ND TREES 4.3 Graphs In this chapter we introduce a fundamental structural idea of discrete mathematics, that of a graph. Many situations in the applications of discrete mathematics

### Distributed Computing over Communication Networks: Maximal Independent Set

Distributed Computing over Communication Networks: Maximal Independent Set What is a MIS? MIS An independent set (IS) of an undirected graph is a subset U of nodes such that no two nodes in U are adjacent.

### SHARP BOUNDS FOR THE SUM OF THE SQUARES OF THE DEGREES OF A GRAPH

31 Kragujevac J. Math. 25 (2003) 31 49. SHARP BOUNDS FOR THE SUM OF THE SQUARES OF THE DEGREES OF A GRAPH Kinkar Ch. Das Department of Mathematics, Indian Institute of Technology, Kharagpur 721302, W.B.,

### RN-Codings: New Insights and Some Applications

RN-Codings: New Insights and Some Applications Abstract During any composite computation there is a constant need for rounding intermediate results before they can participate in further processing. Recently

### Applied Algorithm Design Lecture 5

Applied Algorithm Design Lecture 5 Pietro Michiardi Eurecom Pietro Michiardi (Eurecom) Applied Algorithm Design Lecture 5 1 / 86 Approximation Algorithms Pietro Michiardi (Eurecom) Applied Algorithm Design

### Complexity Theory. IE 661: Scheduling Theory Fall 2003 Satyaki Ghosh Dastidar

Complexity Theory IE 661: Scheduling Theory Fall 2003 Satyaki Ghosh Dastidar Outline Goals Computation of Problems Concepts and Definitions Complexity Classes and Problems Polynomial Time Reductions Examples

### Factoring & Primality

Factoring & Primality Lecturer: Dimitris Papadopoulos In this lecture we will discuss the problem of integer factorization and primality testing, two problems that have been the focus of a great amount

### Bounded Cost Algorithms for Multivalued Consensus Using Binary Consensus Instances

Bounded Cost Algorithms for Multivalued Consensus Using Binary Consensus Instances Jialin Zhang Tsinghua University zhanggl02@mails.tsinghua.edu.cn Wei Chen Microsoft Research Asia weic@microsoft.com Abstract

### Lecture 15 An Arithmetic Circuit Lowerbound and Flows in Graphs

CSE599s: Extremal Combinatorics November 21, 2011 Lecture 15 An Arithmetic Circuit Lowerbound and Flows in Graphs Lecturer: Anup Rao 1 An Arithmetic Circuit Lower Bound An arithmetic circuit is just like

### Metric Spaces. Chapter 7. 7.1. Metrics

Chapter 7 Metric Spaces A metric space is a set X that has a notion of the distance d(x, y) between every pair of points x, y X. The purpose of this chapter is to introduce metric spaces and give some

### A Practical Scheme for Wireless Network Operation

A Practical Scheme for Wireless Network Operation Radhika Gowaikar, Amir F. Dana, Babak Hassibi, Michelle Effros June 21, 2004 Abstract In many problems in wireline networks, it is known that achieving

### Handout #Ch7 San Skulrattanakulchai Gustavus Adolphus College Dec 6, 2010. Chapter 7: Digraphs

MCS-236: Graph Theory Handout #Ch7 San Skulrattanakulchai Gustavus Adolphus College Dec 6, 2010 Chapter 7: Digraphs Strong Digraphs Definitions. A digraph is an ordered pair (V, E), where V is the set

### Measuring the Performance of an Agent

25 Measuring the Performance of an Agent The rational agent that we are aiming at should be successful in the task it is performing To assess the success we need to have a performance measure What is rational

### CS 598CSC: Combinatorial Optimization Lecture date: 2/4/2010

CS 598CSC: Combinatorial Optimization Lecture date: /4/010 Instructor: Chandra Chekuri Scribe: David Morrison Gomory-Hu Trees (The work in this section closely follows [3]) Let G = (V, E) be an undirected

### Lecture 6 Online and streaming algorithms for clustering

CSE 291: Unsupervised learning Spring 2008 Lecture 6 Online and streaming algorithms for clustering 6.1 On-line k-clustering To the extent that clustering takes place in the brain, it happens in an on-line

### Full and Complete Binary Trees

Full and Complete Binary Trees Binary Tree Theorems 1 Here are two important types of binary trees. Note that the definitions, while similar, are logically independent. Definition: a binary tree T is full

### Graph Theory Problems and Solutions

raph Theory Problems and Solutions Tom Davis tomrdavis@earthlink.net http://www.geometer.org/mathcircles November, 005 Problems. Prove that the sum of the degrees of the vertices of any finite graph is

### Online Bipartite Perfect Matching With Augmentations

Online Bipartite Perfect Matching With Augmentations Kamalika Chaudhuri, Constantinos Daskalakis, Robert D. Kleinberg, and Henry Lin Information Theory and Applications Center, U.C. San Diego Email: kamalika@soe.ucsd.edu

### Single-Link Failure Detection in All-Optical Networks Using Monitoring Cycles and Paths

Single-Link Failure Detection in All-Optical Networks Using Monitoring Cycles and Paths Satyajeet S. Ahuja, Srinivasan Ramasubramanian, and Marwan Krunz Department of ECE, University of Arizona, Tucson,

### SEQUENCES OF MAXIMAL DEGREE VERTICES IN GRAPHS. Nickolay Khadzhiivanov, Nedyalko Nenov

Serdica Math. J. 30 (2004), 95 102 SEQUENCES OF MAXIMAL DEGREE VERTICES IN GRAPHS Nickolay Khadzhiivanov, Nedyalko Nenov Communicated by V. Drensky Abstract. Let Γ(M) where M V (G) be the set of all vertices

### Diversity Coloring for Distributed Data Storage in Networks 1

Diversity Coloring for Distributed Data Storage in Networks 1 Anxiao (Andrew) Jiang and Jehoshua Bruck California Institute of Technology Pasadena, CA 9115, U.S.A. {jax, bruck}@paradise.caltech.edu Abstract

### Problem Set 7 Solutions

8 8 Introduction to Algorithms May 7, 2004 Massachusetts Institute of Technology 6.046J/18.410J Professors Erik Demaine and Shafi Goldwasser Handout 25 Problem Set 7 Solutions This problem set is due in

### AI: A Modern Approach, Chpts. 3-4 Russell and Norvig

AI: A Modern Approach, Chpts. 3-4 Russell and Norvig Sequential Decision Making in Robotics CS 599 Geoffrey Hollinger and Gaurav Sukhatme (Some slide content from Stuart Russell and HweeTou Ng) Spring,

### Solutions to Homework 6

Solutions to Homework 6 Debasish Das EECS Department, Northwestern University ddas@northwestern.edu 1 Problem 5.24 We want to find light spanning trees with certain special properties. Given is one example

### The Prime Numbers. Definition. A prime number is a positive integer with exactly two positive divisors.

The Prime Numbers Before starting our study of primes, we record the following important lemma. Recall that integers a, b are said to be relatively prime if gcd(a, b) = 1. Lemma (Euclid s Lemma). If gcd(a,

### Why? A central concept in Computer Science. Algorithms are ubiquitous.

Analysis of Algorithms: A Brief Introduction Why? A central concept in Computer Science. Algorithms are ubiquitous. Using the Internet (sending email, transferring files, use of search engines, online

### Induction. Margaret M. Fleck. 10 October These notes cover mathematical induction and recursive definition

Induction Margaret M. Fleck 10 October 011 These notes cover mathematical induction and recursive definition 1 Introduction to induction At the start of the term, we saw the following formula for computing

### INDISTINGUISHABILITY OF ABSOLUTELY CONTINUOUS AND SINGULAR DISTRIBUTIONS

INDISTINGUISHABILITY OF ABSOLUTELY CONTINUOUS AND SINGULAR DISTRIBUTIONS STEVEN P. LALLEY AND ANDREW NOBEL Abstract. It is shown that there are no consistent decision rules for the hypothesis testing problem

### How Asymmetry Helps Load Balancing

How Asymmetry Helps oad Balancing Berthold Vöcking nternational Computer Science nstitute Berkeley, CA 947041198 voecking@icsiberkeleyedu Abstract This paper deals with balls and bins processes related

### Mathematical induction. Niloufar Shafiei

Mathematical induction Niloufar Shafiei Mathematical induction Mathematical induction is an extremely important proof technique. Mathematical induction can be used to prove results about complexity of

### A REMARK ON ALMOST MOORE DIGRAPHS OF DEGREE THREE. 1. Introduction and Preliminaries

Acta Math. Univ. Comenianae Vol. LXVI, 2(1997), pp. 285 291 285 A REMARK ON ALMOST MOORE DIGRAPHS OF DEGREE THREE E. T. BASKORO, M. MILLER and J. ŠIRÁŇ Abstract. It is well known that Moore digraphs do

### Lecture 4: AC 0 lower bounds and pseudorandomness

Lecture 4: AC 0 lower bounds and pseudorandomness Topics in Complexity Theory and Pseudorandomness (Spring 2013) Rutgers University Swastik Kopparty Scribes: Jason Perry and Brian Garnett In this lecture,

### Section 3 Sequences and Limits, Continued.

Section 3 Sequences and Limits, Continued. Lemma 3.6 Let {a n } n N be a convergent sequence for which a n 0 for all n N and it α 0. Then there exists N N such that for all n N. α a n 3 α In particular

### Home Page. Data Structures. Title Page. Page 1 of 24. Go Back. Full Screen. Close. Quit

Data Structures Page 1 of 24 A.1. Arrays (Vectors) n-element vector start address + ielementsize 0 +1 +2 +3 +4... +n-1 start address continuous memory block static, if size is known at compile time dynamic,

### x if x 0, x if x < 0.

Chapter 3 Sequences In this chapter, we discuss sequences. We say what it means for a sequence to converge, and define the limit of a convergent sequence. We begin with some preliminary results about the

### Lecture 7: Approximation via Randomized Rounding

Lecture 7: Approximation via Randomized Rounding Often LPs return a fractional solution where the solution x, which is supposed to be in {0, } n, is in [0, ] n instead. There is a generic way of obtaining

### Secure random number generation in wireless sensor networks

Secure random number generation in wireless sensor networks Article Accepted version G. Lo Re, F. Milazzo, M. Ortolani In Proceedings of the 4th international conference on Security of information and

### Ph.D. Thesis. Judit Nagy-György. Supervisor: Péter Hajnal Associate Professor

Online algorithms for combinatorial problems Ph.D. Thesis by Judit Nagy-György Supervisor: Péter Hajnal Associate Professor Doctoral School in Mathematics and Computer Science University of Szeged Bolyai

### Scheduling Single Machine Scheduling. Tim Nieberg

Scheduling Single Machine Scheduling Tim Nieberg Single machine models Observation: for non-preemptive problems and regular objectives, a sequence in which the jobs are processed is sufficient to describe

### CIS 700: algorithms for Big Data

CIS 700: algorithms for Big Data Lecture 6: Graph Sketching Slides at http://grigory.us/big-data-class.html Grigory Yaroslavtsev http://grigory.us Sketching Graphs? We know how to sketch vectors: v Mv

### Optimal Index Codes for a Class of Multicast Networks with Receiver Side Information

Optimal Index Codes for a Class of Multicast Networks with Receiver Side Information Lawrence Ong School of Electrical Engineering and Computer Science, The University of Newcastle, Australia Email: lawrence.ong@cantab.net

### A Sublinear Bipartiteness Tester for Bounded Degree Graphs

A Sublinear Bipartiteness Tester for Bounded Degree Graphs Oded Goldreich Dana Ron February 5, 1998 Abstract We present a sublinear-time algorithm for testing whether a bounded degree graph is bipartite

### Finding and counting given length cycles

Finding and counting given length cycles Noga Alon Raphael Yuster Uri Zwick Abstract We present an assortment of methods for finding and counting simple cycles of a given length in directed and undirected

### Week 5 Integral Polyhedra

Week 5 Integral Polyhedra We have seen some examples 1 of linear programming formulation that are integral, meaning that every basic feasible solution is an integral vector. This week we develop a theory

### princeton univ. F 13 cos 521: Advanced Algorithm Design Lecture 6: Provable Approximation via Linear Programming Lecturer: Sanjeev Arora

princeton univ. F 13 cos 521: Advanced Algorithm Design Lecture 6: Provable Approximation via Linear Programming Lecturer: Sanjeev Arora Scribe: One of the running themes in this course is the notion of

### ECON 459 Game Theory. Lecture Notes Auctions. Luca Anderlini Spring 2015

ECON 459 Game Theory Lecture Notes Auctions Luca Anderlini Spring 2015 These notes have been used before. If you can still spot any errors or have any suggestions for improvement, please let me know. 1

### Distributed Algorithms

Distributed Algorithms Wan Fokkink Distributed Algorithms: An Intuitive Approach MIT Press, 2013 (revised 1st edition, 2015) 1 / 325 Algorithms A skilled programmer must have good insight into algorithms.

### arxiv:1112.0829v1 [math.pr] 5 Dec 2011

How Not to Win a Million Dollars: A Counterexample to a Conjecture of L. Breiman Thomas P. Hayes arxiv:1112.0829v1 [math.pr] 5 Dec 2011 Abstract Consider a gambling game in which we are allowed to repeatedly

### The Classes P and NP

The Classes P and NP We now shift gears slightly and restrict our attention to the examination of two families of problems which are very important to computer scientists. These families constitute the

### Load balancing in a heterogeneous computer system by self-organizing Kohonen network

Bull. Nov. Comp. Center, Comp. Science, 25 (2006), 69 74 c 2006 NCC Publisher Load balancing in a heterogeneous computer system by self-organizing Kohonen network Mikhail S. Tarkov, Yakov S. Bezrukov Abstract.

### Answers to some of the exercises.

Answers to some of the exercises. Chapter 2. Ex.2.1 (a) There are several ways to do this. Here is one possibility. The idea is to apply the k-center algorithm first to D and then for each center in D

### MATHEMATICAL INDUCTION. Mathematical Induction. This is a powerful method to prove properties of positive integers.

MATHEMATICAL INDUCTION MIGUEL A LERMA (Last updated: February 8, 003) Mathematical Induction This is a powerful method to prove properties of positive integers Principle of Mathematical Induction Let P

### Advice Complexity of Online Coloring for Paths

Advice Complexity of Online Coloring for Paths Michal Forišek 1, Lucia Keller 2, and Monika Steinová 2 1 Comenius University, Bratislava, Slovakia 2 ETH Zürich, Switzerland LATA 2012, A Coruña, Spain Definition

### CMSC 858T: Randomized Algorithms Spring 2003 Handout 8: The Local Lemma

CMSC 858T: Randomized Algorithms Spring 2003 Handout 8: The Local Lemma Please Note: The references at the end are given for extra reading if you are interested in exploring these ideas further. You are

### Reminder: Complexity (1) Parallel Complexity Theory. Reminder: Complexity (2) Complexity-new

Reminder: Complexity (1) Parallel Complexity Theory Lecture 6 Number of steps or memory units required to compute some result In terms of input size Using a single processor O(1) says that regardless of

### Reminder: Complexity (1) Parallel Complexity Theory. Reminder: Complexity (2) Complexity-new GAP (2) Graph Accessibility Problem (GAP) (1)

Reminder: Complexity (1) Parallel Complexity Theory Lecture 6 Number of steps or memory units required to compute some result In terms of input size Using a single processor O(1) says that regardless of

### Cpt S 223. School of EECS, WSU

Priority Queues (Heaps) 1 Motivation Queues are a standard mechanism for ordering tasks on a first-come, first-served basis However, some tasks may be more important or timely than others (higher priority)