Course Presentation: A Polynomial Kernel for Multicut in Trees, STACS 2009 Authors: Nicolas...
-
date post
18-Dec-2015 -
Category
Documents
-
view
214 -
download
0
Transcript of Course Presentation: A Polynomial Kernel for Multicut in Trees, STACS 2009 Authors: Nicolas...
Course Presentation:
A Polynomial Kernel for Multicut in Trees, STACS 2009
Authors: Nicolas Bousquet, Jean Daligault,
Stephan Thomasse, Anders Yeo
Speaker: Jia-Hao Fan
Outline
Introduction:Definitions:Reduction rules:Analysis:
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
Example
v1
v2
v4v5 v6
v3
v7
v9 v10
v8
Given T = (V, E), A set of Request P = {(v1, v3), (v4, v5), (v6, v8), (v5, v10)}, and k = 3
v11
Caterpillar A tree is a caterpillar if its internal tree is a path
General Tree
Example of Caterpillar
v1
v2
v4v5 v6
v3
v7
v9 v10
v8
v11
Outline
Introduction:Definitions:Reduction rules:Analysis:
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.
Bad leaves and inner node
v1
v2
v4v5 v6
v3
v7
v9 v10
v8
Given T = (V, E), A set of Request P = {(v1, v3), (v4, v5), (v6, v8), (v5, v10)}, and k = 3Group leaves:{v4,v5,v6},Group request: (v4,v5)Bad leaves: v4,v5
Inner node: v7
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.
Disjoint Request and common factor
v1
v2
v4v5 v6
v3
v7
v9 v10
v8
Given T = (V, E), A set of Request P = {(v1, v3), (v4, v5), (v6, v8), (v5, v10)}, and k = 3
Disjoint Request (v1,v3), (v6, v8)Common factor of (v6,v8), (v5,v10) are {(v3,v7), (v7,v8)}
Some definitions for caterpillars
The internal tree T’ of caterpillar T,The set I1 of leaves of T’,
The set I2 of degree two nodes of T’,
The set L1 of leaves rooted at I1,
The set L’2 of bad leaves rooted at I2,
The set L2 of other leaves rooted at I2.
Example of Caterpillar
v1
v2
v4v5 v6
v3
v7
v9 v10
v8
I1 = {v2, v8},I2 = {v3, v7},L1 = {v1, v9 , v10},L’2 = {v4, v5},L2 = {v6 , v11}
v11
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.
Example of R-neighbors, and quasi-R-neighbors
v1
v2
v4v5 v6
v3
v7
v9 v10
v8
Given T = (V, E), A set of Request P = {(v1, v3), (v4, v5), (v6, v8), (v5, v10)}(v5, v10) are R-neighbors(v5, v8) are quasi-R-neighbors
v11
Some definitions
Internal path of a request is the intersection between the path of request and the internal tree
R1 dominates a request R2 if the internal path of R1 contains the internal path of R2.
Example of internal path
v1
v2
v4v5 v6
v3
v7
v9 v10
v8
Given T = (V, E), A set of Request P = {(v1, v3), (v4, v5), (v6, v8), (v5, v10) , (v2, v5) , (v4, v11)}The internal path of request, (v5, v10) is:(v5, v10) dominates (v4, v11)
v11
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 L2 leaves pending from it.
The wingspan
v1
v2
v4v5 v6
v3
v7
v9 v10
v8
Given T = (V, E), A set of Request P = { (v6, v8), (v6, v11) , (v6, v2)}
v11
The wingspan of v6 is (v2, v7)
Outline
Introduction:Definitions:Reduction rules:Analysis:
Reduction Rules
Unit Request: a request of length 1Disjoint Request: more than k+1 disjoint
requestsUnique Direction:
Leaf: Inner node:
Unique Direction: leaf
v2
v4v5 v6
v3
v7
v11
Unique Direction: inner node
v1
v2
v4v5 v6
v3
v7
v9 v10
v8
Reduction Rules
Inclusion
Inclusion
v1
v2
v4v5 v6
v3
v7
v9 v10
v8
v11
Consider two requests(v5, v10), (v3, v8),
Reduction Rules
Common factor: Let R be a request. If there are k+1 requests R1,
R2, …, Rk+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
Common Factor
v1
v2
v4v5 v6
v3
v7
v9 v10
v8
v11
Given a requestR=(v1, v10), R1 = (v4, v11), R2 = (v5, v9), and k = 1
Dominating Wingspans
Dominating wingspans: If x is an L2-leaf with a wingspan dominating at
least k+1 endpoint-disjoint requests, then contract e(x).
The wingspan
v1
v2
v4v5 v6
v3
v7
v9 v10
v8
Supposed that the wingspan of v6 is (v2, v8)Two request (v4, v1),(v11,v9)If k = 1, then …
v11
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)
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)
Time complexity for Reduction Rules
Each operation requires polynomial timeEach operation decrease k, |R|, or |E| by 1Overall time complexity is polynomial
Outline
Introduction:Definitions:Reduction rules:Analysis:
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)).
First Lemma
The maximal degree is d
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)).
First Lemma
The maximal degree is d
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’
Number of bad leaves: example
v1
v2
v4v5 v6
v3
v7
v9 v10
v8
Given T = (V, E), A set of Request P = {(v1, v3), (v4, v5), (v6, v8), (v9, v10), (v5,v6)}, and k = 3
Group leaves:{v4,v5,v6}, {v9, v10} Group request: (v4,v5), (v5, v6), (v9, v10)Bad leaves: v4,v5, v6, v9, v10,
Number of bad leaves: example
v’4
v’5v’6
Group of leaves:{v4,v5,v6}, {v9, v10} Group request: (v4,v5), (v5, v6), (v9, v10)Bad leaves: v4,v5, v6, v9, v10,
v’9 v’10
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)
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’
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’
The size of wingspan: Example
v1
v2
v4v5 v6
v3
v7
v9 v10
v8
Supposed that the wingspan of v6 is (v2, v8)Requests, (v4, v1), (v11,v9), (v6, v9), (v6, v2), (v4, v11)
v11
W ={v2, v3, v7, v8}W’={v1, v4, v5, v6, v11, v9, v10}
The size of wingspan: Example
v’1
v’2
v’4v’5 v’6
v’3
v’7
v’9 v’10
v’8
Supposed that the wingspan of v6 is (v2, v8)Requests, (v4, v1), (v11,v9), (v6, v9), (v6, v2), (v4, v11)
v’11
W ={v2, v3, v7, v8}W’={v1, v4, v5, v6, v11, v9, v10}
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) L2-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 L2-leaves pending from W is at most 2(k+1)(4k+3)
Number of L2-leaves
There are less than 2(k+1)(4k+3) L2-leaves not pending from W have wingspan intersection with W for each direction.
Example
…
Number of L2-leaves
Create a new graph G’For each L2 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.
Number of I2 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.
Number of I2 nodes
v2
v3
v7
v8
Requests, (v2, v3), (v3,v8)
v11
Number of I2 nodes
Each end of a request path is a vertex of I1, L1, L2, or L’2.
The number of vertices of I1, L1, L2, or L’2 is at most O(k3)
The number of inner nodes of with a neighbor in I1, L1, L2, or L’2 is at most O(k4)
The number of inner nodes is at most O(k5)
Questions
Thanks