Download presentation
Presentation is loading. Please wait.
1
Course Presentation: A Polynomial Kernel for Multicut in Trees, STACS 2009 Authors: Nicolas Bousquet, Jean Daligault, Stephan Thomasse, Anders Yeo Speaker: Jia-Hao Fan
2
Outline Introduction: Definitions: Reduction rules: Analysis:
3
Problem: Input: A undirected tree T = (V, E) and a set of requests P, an integer k. A request is a pair of vertices (u, v) Output: k edges, whose removal separates each pair of vertices in P
4
Example v1v1 v2v2 v4v4 v5v5 v6v6 v3v3 v7v7 v9v9 v 10 v8v8 Given T = (V, E), A set of Request P = {(v 1, v 3 ), (v 4, v 5 ), (v 6, v 8 ), (v 5, v 10 )}, and k = 3 v 11
5
Caterpillar A tree is a caterpillar if its internal tree is a path General Tree
6
Example of Caterpillar v1v1 v2v2 v4v4 v5v5 v6v6 v3v3 v7v7 v9v9 v 10 v8v8 v 11
7
Outline Introduction: Definitions: Reduction rules: Analysis:
8
Some definitions Bad leaf A group of leaves is the set of leaves connected to the same internal node A group request is a request (x,y) where x and y belong to the same group Bad leaf which is an endpoint of a group request Inner node An internal node with no leaves attached to it.
9
Bad leaves and inner node v1v1 v2v2 v4v4 v5v5 v6v6 v3v3 v7v7 v9v9 v 10 v8v8 Given T = (V, E), A set of Request P = {(v 1, v 3 ), (v 4, v 5 ), (v 6, v 8 ), (v 5, v 10 )}, and k = 3 Group leaves:{v 4,v 5,v 6 }, Group request: (v 4,v 5 ) Bad leaves: v 4,v 5 Inner node: v 7
10
Some definitions Disjoint request: two request are disjoint if their edge sets are disjoint Common factor: the common factor of two requests is the intersection of their paths.
11
Disjoint Request and common factor v1v1 v2v2 v4v4 v5v5 v6v6 v3v3 v7v7 v9v9 v 10 v8v8 Given T = (V, E), A set of Request P = {(v 1, v 3 ), (v 4, v 5 ), (v 6, v 8 ), (v 5, v 10 )}, and k = 3 Disjoint Request (v 1,v 3 ), (v 6, v 8 ) Common factor of (v 6,v 8 ), (v 5,v 10 ) are {(v 3,v 7 ), (v 7,v 8 )}
12
Some definitions for caterpillars The internal tree T’ of caterpillar T, The set I 1 of leaves of T’, The set I 2 of degree two nodes of T’, The set L 1 of leaves rooted at I 1, The set L’ 2 of bad leaves rooted at I 2, The set L 2 of other leaves rooted at I 2.
13
Example of Caterpillar v1v1 v2v2 v4v4 v5v5 v6v6 v3v3 v7v7 v9v9 v 10 v8v8 I 1 = {v 2, v 8 }, I 2 = {v 3, v 7 }, L 1 = {v 1, v 9, v 10 }, L’ 2 = {v 4, v 5 }, L 2 = {v 6, v 11 } v 11
14
Some definitions R-neighbors: we say two nodes x, y are R- neighbor if there exists a request (x, y). Quasi-R-neighbors: A leaf x and an internal node y are quasi-R-neighbors if there exists a request (x, y), or a request (x, z) where z is a leaf rooted at y.
15
Example of R-neighbors, and quasi-R- neighbors v1v1 v2v2 v4v4 v5v5 v6v6 v3v3 v7v7 v9v9 v 10 v8v8 Given T = (V, E), A set of Request P = {(v 1, v 3 ), (v 4, v 5 ), (v 6, v 8 ), (v 5, v 10 )} (v 5, v 10 ) are R-neighbors (v 5, v 8 ) are quasi-R- neighbors v 11
16
Some definitions Internal path of a request is the intersection between the path of request and the internal tree R 1 dominates a request R 2 if the internal path of R 1 contains the internal path of R 2.
17
Example of internal path v1v1 v2v2 v4v4 v5v5 v6v6 v3v3 v7v7 v9v9 v 10 v8v8 Given T = (V, E), A set of Request P = {(v 1, v 3 ), (v 4, v 5 ), (v 6, v 8 ), (v 5, v 10 ), (v 2, v 5 ), (v 4, v 11 )} The internal path of request, (v 5, v 10 ) is: (v 5, v 10 ) dominates (v 4, v 11 ) v 11
18
Some definitions Wingspan W of a leaf x is the path between the closest quasi-R-neighbor on the right of x and the closest quasi-R- neighbor on the left of x (if no such neighbor exists, we take the father f(x) of x by convention) The size of Wingspan is the number of L 2 leaves pending from it.
19
The wingspan v1v1 v2v2 v4v4 v5v5 v6v6 v3v3 v7v7 v9v9 v 10 v8v8 Given T = (V, E), A set of Request P = { (v 6, v 8 ), (v 6, v 11 ), (v 6, v 2 )} v 11 The wingspan of v 6 is (v 2, v 7 )
20
Outline Introduction: Definitions: Reduction rules: Analysis:
21
Reduction Rules Unit Request: a request of length 1 Disjoint Request: more than k+1 disjoint requests Unique Direction: Leaf: Inner node:
22
Unique Direction: leaf v2v2 v4v4 v5v5 v6v6 v3v3 v7v7 v 11
23
Unique Direction: inner node v1v1 v2v2 v4v4 v5v5 v6v6 v3v3 v7v7 v9v9 v 10 v8v8
24
Reduction Rules Inclusion
25
v1v1 v2v2 v4v4 v5v5 v6v6 v3v3 v7v7 v9v9 v 10 v8v8 v 11 Consider two requests (v 5, v 10 ), (v 3, v 8 ),
26
Reduction Rules Common factor: Let R be a request. If there are k+1 requests R 1, R 2, …, R k+1 different form R but intersecting R such that the common factor of any pair of them is the subset of R, then remove R
27
Common Factor v1v1 v2v2 v4v4 v5v5 v6v6 v3v3 v7v7 v9v9 v 10 v8v8 v 11 Given a request R=(v 1, v 10 ), R 1 = (v 4, v 11 ), R 2 = (v 5, v 9 ), and k = 1
28
Dominating Wingspans Dominating wingspans: If x is an L 2 -leaf with a wingspan dominating at least k+1 endpoint-disjoint requests, then contract e(x).
29
The wingspan v1v1 v2v2 v4v4 v5v5 v6v6 v3v3 v7v7 v9v9 v 10 v8v8 Supposed that the wingspan of v 6 is (v 2, v 8 ) Two request (v 4, v 1 ), (v 11,v 9 ) If k = 1, then … v 11
30
Time complexity for Reduction Rules Unit Request: Detecting: O(|R|*|E|) Processing: O(1) Disjoint Request: Detecting: Polynomial time Processing: O(1) Unique Direction: Detecting: O(|V|*|R|) Processing: O(1)
31
Time complexity for Reduction Rules Inclusion: Detecting: O(|R|^2 * |E|^2) Processing: O(1) Common factor: Detecting: O(|R|^2 * |E|^2) Processing: O(1) Dominating Wingspan: Detecting: O(|R|^2 * |E|^2) Processing: O(1)
32
Time complexity for Reduction Rules Each operation requires polynomial time Each operation decrease k, |R|, or |E| by 1 Overall time complexity is polynomial
33
Outline Introduction: Definitions: Reduction rules: Analysis:
34
Two lemmas Let G be an graph having m edges, of maximal degree d. Then G has a matching of size: Floor(m/(2d - 1)).
35
First Lemma The maximal degree is d
36
Two Lemmas Let H be an graph having n vertices, of maximal degree d. Then H has an independent set of size: Floor(n/(d + 1)).
37
First Lemma The maximal degree is d
38
Number of bad leaves Create an new graph G’ For each bad leaf, v in T, set an vertex v’ in G’. For each group request of (u, v) in T, set an edge (u’, v’) in G’
39
Number of bad leaves: example v1v1 v2v2 v4v4 v5v5 v6v6 v3v3 v7v7 v9v9 v 10 v8v8 Given T = (V, E), A set of Request P = {(v 1, v 3 ), (v 4, v 5 ), (v 6, v 8 ), (v 9, v 10 ), (v 5,v 6 )}, and k = 3 Group leaves:{v 4,v 5,v 6 }, {v 9, v 10 } Group request: (v 4,v 5 ), (v 5, v 6 ), (v 9, v 10 ) Bad leaves: v 4,v 5, v 6, v 9, v 10,
40
Number of bad leaves: example v’ 4 v’ 5 v’ 6 Group of leaves:{v 4,v 5,v 6 }, {v 9, v 10 } Group request: (v 4,v 5 ), (v 5, v 6 ), (v 9, v 10 ) Bad leaves: v 4,v 5, v 6, v 9, v 10, v’ 9 v’ 10
41
Number of bad leaves For bad leaf in G’, the maximal degree is k+1 by Common factor rule, the minimum degree is 1 If there are at least 2(k+1)(2k+1) bad leaves, then there are at least (k+1)(2k+1) edges in G’ There is a matching of size (k+1) by First lemma, floor(m/(2d-1)). The size of bad leaves is at most 2(k+1)(2k+1)
42
The size of wingspan Consider a maximal wingspan W, and the leaves W’ pending from it. Create a new graph G’ For each v in W or W’, set an vertex v’ in G’ For each request (u, v) where u, v in W or W’, set an edge (u’, v’) in G’
43
Maximal wingspan Maximal wingspan, a wingspan, every vertex v in W’ has at least an request (u, v) where u is in W or W’
44
The size of wingspan: Example v1v1 v2v2 v4v4 v5v5 v6v6 v3v3 v7v7 v9v9 v 10 v8v8 Supposed that the wingspan of v 6 is (v 2, v 8 ) Requests, (v 4, v 1 ), (v 11,v 9 ), (v 6, v 9 ), (v 6, v 2 ), (v 4, v 11 ) v 11 W ={v 2, v 3, v 7, v 8 } W’={v 1, v 4, v 5, v 6, v 11, v 9, v 10 }
45
The size of wingspan: Example v’ 1 v’ 2 v’ 4 v’ 5 v’ 6 v’ 3 v’ 7 v’ 9 v’ 10 v’ 8 Supposed that the wingspan of v 6 is (v 2, v 8 ) Requests, (v 4, v 1 ), (v 11,v 9 ), (v 6, v 9 ), (v 6, v 2 ), (v 4, v 11 ) v’ 11 W ={v 2, v 3, v 7, v 8 } W’={v 1, v 4, v 5, v 6, v 11, v 9, v 10 }
46
The size of wingspan For bad leaf in G’, the maximal degree is 2(k+1), the minimum degree is 1 If there are at least 2(k+1)(4k+3) L 2 -leaves pending from W, then there are at least (k+1)(4k+3) edges in G’ There is a matching of size (k+1) by First lemma, floor(m/(2d-1)). The size of a L 2 -leaves pending from W is at most 2(k+1)(4k+3)
47
Number of L 2 -leaves There are less than 2(k+1)(4k+3) L 2 - leaves not pending from W have wingspan intersection with W for each direction.
48
Example …
49
Number of L 2 -leaves Create a new graph G’ For each L 2 leave, v, set an vertex v’ in G’ For any two wingspan of u, v intersect with each other, set an edge (u’, v’) in G’ The maximal degree of G’ is 6(k+1)(4k+3) If the number of vertices is at least (6(k+1)(4k+3)+1)(k+1), then it has at least (k+1) disjoint wingspans.
50
Number of I 2 nodes Each inner node of requests in two directions by Unique direction rule. The union of a set of inner nodes is called as a request path. The length of each request path is at most k.
51
Number of I 2 nodes v2v2 v3v3 v7v7 v8v8 Requests, (v 2, v 3 ), (v 3,v 8 ) v 11
52
Number of I 2 nodes Each end of a request path is a vertex of I 1, L 1, L 2, or L’ 2. The number of vertices of I 1, L 1, L 2, or L’ 2 is at most O(k 3 ) The number of inner nodes of with a neighbor in I 1, L 1, L 2, or L’ 2 is at most O(k 4 ) The number of inner nodes is at most O(k 5 )
53
Questions Thanks
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.