Disjoint Spanning Trees 1 Forest Partitioning

Disjoint Spanning Trees 1 Forest Partitioning

Disjoint Spanning Trees Luis Goddyn 1 Forest Partitioning A forest in a graph G is a set of edges which induces an acyclic subgraph of G. We say that a set J of Sk edges of a graph G is k-partitionable if J = i=1 Ji is the union of k forests Ji in G. (We may assume the forests to be disjoint, where convenient.) We consider the following question. Forest Partitioning Problem Given a graph G = (V; E), find a k-partitionable set J ⊆ E of maximum size, and provide a certificate that proves jJj is indeed maximum. For any edge set A ⊆ E of a graph G = (V; E), we define the rank of A, written r(A) to be the maximum size of a subforest of A. Thus r(A) is the number of vertices minus the number of connected components in the induced subgraph G[A] := (V; A). We now describe a barrier which prevents G from having a large k-partitionable set. Suppose that G contains a dense subgraph. In particular, suppose that A is a set of edges for which jAj is large but r(A) is Sk small. Then for any k-partitionable J = i=1 Ji, each set Ji \A is a subforest of A, whence jJi \Aj ≤ r(A). It follows that k X jJj = jJi \ Aj + jJ \ (E − A)j ≤ kr(A) + jE − Aj: (1) i=1 The surprising fact is that some such inequality is always tight. Theorem 1 For any graph G and positive integer k, maxfjJj : J ⊆ E is k-partitionableg = minfjE − Aj + kr(A): A ⊆ Eg: Before the proof, we give two applications. By setting J = E and solving for k we solve a forest covering problem. Corollary 2 The minimum number of forests needed to cover the edges of a graph G is maxfdjAj=r(A)e : A ⊆ Eg: Informally, the `forest covering number' of a graph is determined by its `densest' subgraph. Similarly, if G is connected we may equate jJj with kr(E) = k(jV j − 1) to solve a tree packing problem. Corollary 3 The maximum number of edge disjoint spanning trees which can be packed into a connected graph G is minfbjE − Aj=(jV j − 1 − r(A))c : A ⊆ Eg: This expression is best interpreted in terms of the graph G=A obtained by contracting the edges in A. It is easy to see that r(G=A) = jV (G=A)j − 1 = jV j − 1 − r(A), so the expression we are minimizing is bjE(G=A)j=r(G=A)c. Informally, the `tree packing number' is determined by the `least dense contraction'. In graphs the relevant subsets A arise from vertex partitions. For any partition π ` V , let θ(π)(δ(π)) denote the set of edges with its ends in the same (resp. different) parts. A set A ⊆ E is closed if every e 2 E belonging to some circuit C ⊆ A [ feg also belongs to A. Thus closed sets are precisely those of the form θ(π) for some π ` V . It is not hard to see that any set A achieving the minimum in Theorem 1 must be closed. For a given closed set A ⊆ E there is a unique most refined partition π = (πi) ` V satisfying θ(π) = A; namely π is the partition for which each induced subgraph G[πi] is connected. For such π we observe that r(θ(π)) = jV j − jπj and r(δ(π)) = jπj − 1. Thus we may replace the formulae in the above three results by the following expressions, respectively. kjV j + minfjδ(π)j − kjπj : π ` V g: maxfdjθ(π)j=(jV j − jπj)e : π ` V g: minfbjδ(π)j=(jπj − 1)c : π ` V g: 1 2 The Algorithm Proving Theorem 1 The proof of Theorem 1 consists of an algorithm (which happens to be polytime) which, when given G and a k-partition (Ji;:::;Jk) of J ⊆ E, produces either a k-partition of J + e for some e 2 E − J, or a set A ⊆ E satisfying jJj = jE − Aj + kr(A). Thus for a given G and k we may find a largest partitionable set and a suitable A ⊆ E by iterating this algorithm starting with Ji = ;, i = 1::k. Given G, k and (Ji) we set J = [Ji and construct an auxiliary arc-coloured digraph D = D(G; k; (Ji)) with vertex set fs; tg [ E(G) and three types of arcs. For every e; f 2 E and i 2 f1; : : : ; kg, D has 1. an arc (s; e) (having no colour), if e 2 E − J; 2. an arc (e; t) of colour i, if Ji + e is acyclic. 3. an arc (e; f) of colour i, if Ji + e − f is acyclic; Now we seek a shortest path P from s to t in D. If P does not exist, then we output the set A of vertices in V (D) − fsg which are reachable from s by some dipath in D. Since there are no arcs in δ+(fsg [ A) of types 1,2 or 3, we deduce the following facts respectively. 1. E − A ⊆ J 2. For any i 2 f1; : : : ; kg and e 2 A, Ji [ feg has a cycle. 3. For any i 2 f1; : : : ; kg and e 2 A and f 2 A, if f belongs to the cycle in Ji [ feg, then f 2 A. In other words, Ji \ A is a spanning forest of A whence jJi \ Aj = r(A). From facts 1. and 3., it we find that the inequality (1) is tight for the pair (A; (Ji)), so A proves that jJj is indeed maximum. If a shortest s; t-path P = (s; e1; e2; : : : ; es; t) does exist, then by the construction of D, we have e1 2 E − J. We shall the edges of P and their colours to guide an `augmenting sequence', which modify the sets (Ji) in such a way as to produce a k-partition of set J [ fe1g. Let i be the colour of the arc (e1; e2) (we allow here that e2 = t). We modify the forest Ji by adding e1 to it. If e2 = t, then (e1; t) is of type 2, and we output the resulting partition of J + e. Otherwise, 0 (e1; e2) is an arc of type 3. so Ji + e1 has a fundamental cycle which contains e2. Let i be the colour of (e2; e3) (again, we permit e3 = t). Then we then we modify both Ji and Ji0 by transfering e2 from Ji to Ji0 . This restores Ji to being acyclic, but now either we are done (if e3 = t) or Ji0 + e3 has a fundamental cycle containing e4. We continue modifying (Ji) in this manner until we have traversed P . Clearly J is now larger by one element, but it remains to prove that each modification to a forest Ji leaves it acyclic. This is fact not trivial, but is easier to prove by relying on the fact P was chosen to be a shortest path in D. Suppose for example exactly two arcs (ea; ea+1), (eb; eb+1) in P have label i, where a < b. The modification in step a leaves Ji acyclic by construction of D. However at the start of step b, it may no longer be true that Ji + eb − eb+1 is acyclic, since Ji has been changed in step a. This trouble can only have occurred if eb+1 also belonged to the fundamental cycle Ji + ea at the start of step a. This would imply that (ea; eb+1) is an arc of D, contradicting that P is a shortest path. Equivalently, we have argued that the set sp(J) of edges of G which have both endpoints in the same connected component of G[J] is equal to sp(J + eb − eb+1). If Ji has been modified more than twice we must argue more carefully. Suppose that label i occurs in steps a1; a2; : : : at in that order along P . For j = 0; : : : ; t − 1 we define (j) J = Ji + eat−j − eat−j +1 + eat−j+1 − eat−j+1+1 + ··· + eat − eat+1 Here we are adding and subtracting edges from J in `reverse order' to the way it was done in the (t) (0) algorithm, so J = Ji input at the start of the algorithm and J is the set after all modifications have been made. We now argue by induction on j that the set sp(J (j)) of edges spanned by each connected component of J (j) is the same as sp(J (0)). We leave out the details of this argument. In the end, we have (0) (t) (0) that sp(J ) = sp(J ) = sp(Ji), which implies J is acyclic, since it has the same cardinality as Ji. 2 3 Generalization to Matroids The above algorithm in fact works in a more general framework. Let M1, M2,...,Mk be a list of matroids all having the same set E for its elements. We say that J ⊆ E is partitionable (with respect to the list) S There exist subsets Ji, i = 1; =dots; k such that Each Ji is an independent set of Mi and J = Ji. An obvious modification of the above algorithm, and its proof of correctness solves the following problem. Matroid Partitioning Problem Given matroids M1,..., Mk on E, find a k-partitionable set J ⊆ E of maximum size, and provide a certificate that proves jJj is indeed maximum.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    3 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us