Download presentation
Presentation is loading. Please wait.
Published byCornelia Hall Modified over 9 years ago
1
1
2
Given a predetermined property and a graph we want to distinguish between the 2 cases: 1)The graph has the property 2) The graph is “far” from having the property 2
3
Correctness Complexity Our algorithms work in time polynomial in Accuracy Algorithm always accepts the graph when it has the tested property. Rejects with high probability ( ) if the graph is - far from having the property 3
4
Model We will view bounded-degree graphs as functions defined over pairs (v,i), where “v” is a vertex and “i” is a positive integer,. Meaning the value of (v,i) is the neighbour of v (with a special symbol indicating non-existance of such a neighbour). 4
5
Definitions Graphs – In this specific case we are discussing undirected graphs of bounded degree “d”. G=(V,E) V={1,…,|V|}, and that for every vertex the edges incident to v have distinct labels in {1,…,d}. This labeling may be arbitrary and need not be consistent among neighboring vertices. We associate a function f to the Graph. That is f(v,i)=u if (u,v) is the edge to v. f(v,i)=0 if there is no such edge. 5
6
Distance Our measure of distance between graphs depends on their degree bound (“d”). Meaning the distance between 2 graphs G1 and G2 with degree bound d, Where V(G1) = V(G2) = [N], is: 6
7
So that for every 2 graphs. This notation of distance can naturally be extended to a set C, of N-vertex graphs with degree bound d. We let represent the class of graphs with N vertices and degree bound d which have property. In case is empty we define dist(G, ) to be 1 for every G. 7
8
K-Edge-Connectivity Let be an integer. A graph is said to be k- edge-connected if there are k edge-disjoined paths between every pair of vertices in the graph. Equivalent definition – The sub-graph resulting by omitting any k-1 edges from the graph, is connected. Assume that 8
9
Testing connectivity (k=1) Here we will assume ( since otherwise except for the graph cannot be connected). Lemma 2 – Let - If a graph G is from the class of N-vertex connected graphs with maximum degree d, then it has more than connected components. 9
10
Proof – Assume contrary to the claim that G has no more than connected components. Let be the connected components of G. We will differ between the following 2 cases: 1) sum of degrees in each is as most. 2)For some connected component,, the sum of degrees is greater than. 10
11
Case 1 – Each contains at least 2 vertices of degree d-1 or at least one vertex of degree d-2 at most. If both have a degree of d-1 (or and their degree is d-2). We connect to Here we made the graph connected by adding edges. This contradicts that G is from the class of connected graphs with degree d. 11
12
Case 2- We cannot add edges without violating the degree bound. Let Ti be an arbitrary spanning tree of Ci. Ti contains at least 2 vertices so it has at least 2 leaves. At most one of Ci’s vertices has a degree less than d. Thus the tree Ti has a leaf which has degree in G. This leaf has an edge in Ci which is not in Ti. We can remove this edge from G without disconnecting Ci, now we have 2 vertices with degree less than d. Do the same as in Case 1. We have removed/added at most edges. We again reached a contradictions and the claim follows. 12
13
Corrollary 3 – If a graph from the class of N- vertex connected graphs of degree bound, then G has at least connected components each containing less than vertices. Proof: According to lemma 2, G has at least connected components. The number of connected componenst with at least vertices is at most. So the remaining ones are at least in number. 13
14
From Lemma 2 – for every, every graph is - close to the class of connected graphs with degree bound d. So we may assume that. Since every connected component contains at least one vertex we conclude that if G is -far from the class of connected graphs that the probability that a uniformly selected vertex belongs to a connected component with less than vertices is at least. If we uniformly select vertices, the probability that no selected vertex belongs to a component of size less than is bounded above by 14
15
Algorithm 4 (input: d, ) Here we assume that (otherwise step 2 will reject). 1) Uniformly and independently select vertices in the graph 2) For each vertex s selected perform a BFS starting from s until vertices have been reached or no more new vertices can be reached (a small component has been found) 3) If any of the above searches finds a small connected component then output REJECT, otherwise output ACCEPT 15
16
The algorithm never rejects a connected graph – since a connected graph consists of a single component. By corollary 3, if a graph is from connected then it is rejected with probability at least. The query complexity and running time of the algorithm are. Note that the choice to perform a BFS is quite arbitrary, any other linear-time searching method will do. 16
17
Testing Connectivity for K>1 Combinatorics A subset is said to be k-edge-connected if there are k-disjoint paths between each pair of vertices in S. If, these paths may go through vertices not in S. A subset containing a singe vertex is defined as k- edge-connected. k-edge connected classes - of graph G are maximal subsets of V which are k-edge connected and each vertex in V resides in exactly one such class. 17
18
We will show tests according to the following 1) Assuming that the graphs we test for are (k-1)- connected. 2) Without any prior assumptions 18
19
An auxiliary tree of a (k-1) connected graph In Y.Dinitz and J. Westbrooks article “Maintaining the classes of 4-edge- connecticity in a graph on-line” they state the following Fact that we will use without proving Fact A.1 – Let k>1 be an integer and G be a (k-1)-connected graph. Then there exists an auxiliary graph, TG, which is a tree that: Each k-connected class in G corresponds to a unique node in TG. In addition to nodes corresponding to k-connected classes, there are two types of nodes: empty nodes, and cycle nodes. All leaves of the auxiliary tree TG correspond to k-connected classes of G. Furthermore, there are exactly k-1 edges (in G) going out from each of these classes. 19
20
TG Auxiliary graph If G is a (k-1) connected graph. Then we can define an auxiliary graph TG, which is a tree, such that for every k-class in G there is a corresponding node in TG. TG might have addition auxiliary nodes but they are not leaves and will not interest us here. If G is k-connected TG has a singe node. Otherwise TG has at least 2 leaves (leaves play a key role in our algorithm) Each leaf corresponds to a k-class C of G which is separated from the rest of the graph by a cut of size k-1. We will later show that for every leaf class C, given a vertex we can efficiently identify that v belongs to a leaf class. 20
21
Lemma A.4 In Y.Dinitz and J. Westbrooks article “Maintaining the classes of 4-edge- connecticity in a graph on-line” they lay the foundations for the following lemma which we will not prove: Let G be a (k-1)-connected graph, whose auxiliary graph, TG, has L leaves. Then by removing and adding at most 4L edges to G we can transform it into a k-connected graph G’ If the maximum degree of G is d then the maximum degree of G’ is upper bounded by max{d,k}. 21
22
Lemma 7 – Let G be a (k-1) connected graph that is from the class of k-connected graphs with maximum degree. Then TG has at least leaves. Proof: Assume towards contradiction that TG has leaves. Then by Lemma A.4 G can be transformed into a k-connected graph G’ by removing and adding at most edges. The maximum degree of G’ is max(k,d)=d. This contradicts that G is from the class of k-connected graphs with maximum degree d. 22
23
Corollary 8 – Let G be a (k-1) connected graph that is from the class of k- connected graphs with maximum degree. Then TG has at least leaves each containing at most vertices. 23
24
Algorithm 9 (input: d, ) We will assume that the number of vertices N in G is greater than. 1) Uniformly and independently select vertices. 2) For each vertex s selected, check whether s belongs to a k-class leaf which has at most vertices. 3) If any leaf class is discovered then output REJECT, otherwise output ACCEPT. 24
25
The procedure for checking whether a given vertex belongs to a small k-class leaf always return the correct answer if the vertex does not belong to such a leaf. If the vertex belongs to such a leaf a correct answer is returned with probability at least 25
26
If a graph is -far from being k-connected there are 2 sources for probability of being wrongly accepted: 1) By corrollary 8 – The probability that no vertex - s belonging to a small k-class leaf is selected in step 1 is at most 2) The probability that the procedure for identifying a k-class leaf fails given such a vertex Total at most error probability 26
27
Identifying a k-class leaf The following algorithm indentifies k-class leaves 27
28
Algorithm 15 (input: s, n) Given a vertex s and size bound n 1) Do times or until a cut of size less than k is found: - Random search process: Starting with {s}, maintain the set (S) of vertices visited. In each step as long as |S|<n and the cut has at least k edges, we select an edge at random going from S to and add a new vertex reached to S. - In case the cut has size less than k, we declare S to be a k-class leaf. -If |S|=n we complete the current search failing. -Otherwise we proceed to the next step. 2) In case all invocations don’t detect a k-class leaf. We anounce failure to detect such a k-class. 28
29
Problem - Let C be the k-class leaf that s belongs to (where ) Then we are interested in a random process for which the probability that an edge in is selected before all edges within C are selected is as small as possible. Solution - We will uniformly and independently assign each edge in the graph with a cost in [0,1]. In each step of the algorithm, we select the edge with the lowest cost in current 29
30
Lemma 16 – Let G be a (k-1) connected graph, C a k-class leaf of TG with at most n vertices and s an arbitrary vertex in C. Then with probability, the random search process succeeds in finding the cut. 30
31
Proof A spanning tree, T, of the sub-graph induced by C is said to be cheaper than the cut: if the cost of every edge in T is smaller than the cost of any of the cut edges between C and. Claim 16.1: If C contains a spanning tree that is cheaper than the cut then the search process succeeds in finding. Proof of Claim 16.1: By induction on the size of the current S, that. At each step there is a tree edge in the current cut. Since this edge has lower cost than any edge in, in this step the search cannot pass an edge of.Because, the search terminates with S=C. 31
32
Claim 16.2: Suppose that each edge is assigned a uniformly distributed cost in [0,1]. Then with probability at least, C contains a spanning tree which is cheaper than the cut. 32
33
Proof of Claim 16.2: Take an auxiliary graph G’, in which all of is represented by an auxiliary vertex (x). V(G’)=CU{x} E(G’) = {all edges internal in C} U {(u,x)|(u,v) (G),u C,v } Because C is a k-connected class in G, G’ has a single minimum cut of size k-1 ( (C,{x}). 33
34
Contraction Contraction is an operation performed on a pair of vertices If we contract u and v we merge them into a single vertex w. Contraction Algorithm: (Input: a graph G) 1) Assign all edges uniformly chosen costs in [0,1] 2) Perform until 2 vertices remain - Select the cheapest edge in the current graph and contract its endpoints 34
35
D. Karger (in his article Global min-cuts in RNC and other ramifications of a simple mincut algorithm) shows that the probability that the contractions algorithm never contracts a min-cut edge is at least. That means that with probability at least, the algorithm does not contract an edge incident to x, which implies that C has a spanning tree cheaper than the cut (C,{x}) 35
36
How do we obtain ?? In our situation we consider an (n+1) vertex graph with min-cut of size c=k-1. Except for x, the degree of every vertex in the residual graph at any step of the Contraction Algorithm is at least.. The degree of x remains k-1, provided none of its edges were contracted. Therefore for the step of the algorithm the probability of choosing to contract a cut edge is at most : The probability no cut edge is contracted in any step of the algorithm is at least This is due to the fact that all cuts in G’ other than the minimum cut (C,{x}) have size at least k. C=k+1, D=k 36
37
Testing k-connectivity of Graphs that are not (k-1) connected. A slight modification of Algorithm 9 with distance parameter set to rejects with probability at least 2/3 any graph that is -far from being k-connected. 1) Uniformly and independently select vertices in the graph 2) For each vertex “s” selected perform a BFS starting from “s” until vertices have been reached or no more new vertices can be reached (a small component has been found) 3) If any of the above searches finds a small connected component then output REJECT, otherwise output ACCEPT 37
38
Running on a Graph for which exists an i so that the graph is (i-1) connected and is -far from being i connected In this case, by Corollary 8 the auxiliary graph TG has at least i-class leaves each containing at most vertices. With probability at least a vertex belonging to such a class is selected. 38
39
The identification procedure for k-class leaves is such that when invoked inside a small i-class leaf it detects a cut of size i-1<k with probability at least 39
40
Although the situation may be more complex: Even though the graph may be -far from being k-connected, it may be the case that there exists no i so that the graph is an (i-1) connected graph and -far from being i connected. We need to reject such graphs with probability at least. 40
41
Let G 0 =G be a graph that is -far from being k- connected and for i=1,…,k let be an i connected graph that is closest to. By definition of the ’s there exists an i such that (which is (i-1) connected) is far from being i- connected. Now if the algorithm were to run on this (with distance ) then it would reject with probability at least. The Solution 41
42
G vs Gi. Case 1: If can be obtained from G only by adding edges. It is easily shown that if the algorithm rejects a graph it will also reject any sub-graph of it. We will do this at the end of the lecture 42
43
Case 2: may not be obtained from G by just adding edges We can consider the distance of the graph to the class of i-connected graphs rather than to the class of i-connected graphs with degree bound d. This can be obtained by only adding edges. 43
44
Excess of a graph Excess of Gk is : 44
45
Lemma 17: Let G be a graph that is -far from the class of k-connected graphs with maximum degree d. Then the minimum number of edges which must be added to G in order to make it a k-connected graph is at least 45
46
Proof: Assume, contrary to the claim – that in order to transform G into a k-connected graph it’s enough to augment it with edges We next show that by adding and removing at most 13m edges we can transform G into a k-connected graph which has maximum degree d in contradiction to G being -far. 46
47
G has maximum degree d Gk was obtained by augmenting G with m edges Excess of Gk is at most 2m Now we will see how performing at most 12m edge modifications to Gk, we can obtain a k-connected graph with excess 0. 47
48
While the excess of the graph is non-zero, Categorize our graph as one of 2 cases: 1)There is an edge (u,v) such that deg(u)>d and deg(v)>k. 2) For every vertex u such that deg(u)>d, all of u’s neighbours have degree k. 48
49
Let G be a (k-1)-connected graph, and TG be its auxiliary tree. If we augment G by an edge with endpoints in the k-connected classes C1 and C2. Then the classes on the simple path between C1 and C2 in TG form a k-connected class. Lemma A.2 49
50
Let G be a (k-1)-connected graph, and TG be its auxiliary tree. C1 and C2 two k-connected classes. If we omit a single edge from each Ci and add 2 edges. If (u1,v1) and (u2,v2) were omitted from C1 and C2 we add (u1,u2) and (v1,v2) Then the classes on the simple path between C1 and C2 in TG form a k-connected class. Lemma A.3 50
51
Case 1. We remove the edge (u,v) from the graph. If the graph remains k-connected, no additional modification. Else – by Lemma A.2- The auxiliary tree of the graph consists of a simple path, with u belonging to one k-class leaf and v to the other. v now has degree k and is not a singleton leaf. u is not a singleton leaf which has degree at least Now we can apply Lemma A.3 on the 2 leaf-k-classes. This will give a k-connected graph at the cost of 5 edge modifications. 51
52
Here we must consider 2 sub-cases Case 2.a – There exist 2 vertices u1 and u2, so that their degrees are larger than d and all their neighbors have degree k. Then there must be 2 vertices such that v1 is a neighbor of u1 and v2 is a neighbor of u2. We add an edge between v1 and v2, increasing their degree to k+1. We then apply Case 1 twice : to the edges (u1,v1), (u2,v2). We have decreased the excess of the graph by 2 at a cost of 11 edge modifications. Case 2. 52
53
Case 2.b – There is a single vertex, u, with a degree greater than d. If deg(u)>d+1 – we will remove at least 2 edges beside u. Let v1 and v2 be 2 neighbors of u.we now add an edge between v1 and v2 and then apply case 1 to (u,v1) and then (u,v2). We have decreased the excess of the graph by 2 making 11 edge modifications If deg(u)=d+1 the we will choose v to be any neighbor of u (we will call this neighbor w), deg(w) < d **. We ass an edge between v and w raising the degree of v to k+1. We apply Case 1 to (u,v) Cost of 6 edge modifications. 53
54
Now we slightly modify Algorithm 9 so that in step 2 we look for a small set of vertices which is separated from the rest of the graph by a cut of size j (j<k). This set will be called j seperated. If it contains no subset which is h separated for any then it will be called j extreme. We also change to j separated / j extreme. 54
55
1) Uniformly and independently select vertices. 2)For each vertex s selected, check whether for some j<=k, vertex “s” belongs to a j-extreme set containing at most vertices. 3) If any such separated set is discovered then output REJECT, otherwise ACCEPT Algorithm 18 55
56
Algorithm 18 always accepts a k-connected graph (having more than ) vertices. Lemma 19 – Algorithm 18 rejects with probability at least 2/3 any graph that is -far from the class of k- connected graphs with minimum degree d. 56
57
Proof: Let G be -far from the class of k-connected graphs with maximum degree d. By Lemma 17 at least edges must be added to G in order to make it k-connected. For every let us denote by mi, the minimum number of edges that should be added to G in order to make it i-connected. Let Gi, denote an i-connected graph which results when adding mi edges to G. Mo=0 G0=G Then there must exist an so that. 57
58
Let’s consider such an i, In order to transform Gi-1 into an i connected graph, we must augment it with at least edges. (while ) By applying Lemma A.2 - It follows that the auxiliary tree of Gi-1 has at least leaves. According to corollary 3 at least of these leaves have each at most vertices. Thus with probability at least a uniformly selected vertex resides in such a component. if we were to run Algorithm 18 on Gi-1 then the algorithm would reject with probability at least 2/3. 58
59
If “s” belongs to some i class leaf C, of Gi-1 then for vertex s must belong to some j-extreme set of G (sub-graph of Gi-1). It follows that the number of small disjoint extreme sets in G is lower bounded by the number of i class leaves in Gi-1. Show that the rejection probability of the algorithm on input graph G which is a sub-graph of is not smaller. 59
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.