Este documento discute sobre conjuntos representativos para algoritmos paramétricos usando matróides. Os conjuntos representativos permitem armazenar apenas uma subfamília dos conjuntos parciais de solução, garantindo que qualquer futuro possível seja compatível com pelo menos um conjunto armazenado. Isto reduz o espaço de armazenamento de O((n)k) para O((p+q)p), onde p é o tamanho dos conjuntos parciais e q é o tamanho do futuro possível.
1. Parameterized Algorithms using Matroids
Lecture II: Representative Sets
Saket Saurabh
The Institute of Mathematical Sciences, India
ASPAK, IMSc, March 3–8, 2014
2. Problems we would be interested in...
Vertex Cover
Input: A graph G = (V, E) and a positive integer k.
Parameter: k
Question: Does there exist a subset V 1 Ď V of size at most k such that for
every edge (u, v) P E either u P V 1 or v P V 1 ?
Hamiltonian Path
Input: A graph G = (V, E)
Question: Does there exist a path P in G that spans all the vertices?
Path
Input: A graph G = (V, E) and a positive integer k.
Parameter: k
Question: Does there exist a path P in G of length at least k?
18. Ham-Path
.
vj
1
2
3
¨¨¨
i
¨¨¨ n − 1
n
v1
..
.
vj
..
.
vn
SETS, NOT SEQUENCES.
V[Paths of length i ending at vj ]
Two paths that use the same set of vertices but
visit them in different orders are equivalent.
19. Ham-Path
.
vj
1
2
3
¨¨¨
i
¨¨¨ n − 1
n
v1
..
.
vj
V[Paths of length i ending at vj ]
..
.
= V[Paths of length (i − 1) ending at u, avoiding vj .]
vn
20. Ham-Path
.
vj
1
2
3
¨¨¨
i
¨¨¨ n − 1
n
v1
..
.
vj
V[Paths of length i ending at vj ]
..
.
= V[Paths of length (i − 1) ending at u, avoiding vj .]
vn
u P N(vj )
21. Ham-Path
.
Valid:
vj
1
2
3
¨¨¨
i
¨¨¨ n − 1
n
v1
..
.
vj
V[Paths of length i ending at vj ]
..
.
= V[Paths of length (i − 1) ending at u, avoiding vj .]
vn
u P N(vj )
23. Ham-Path
.
vj
1
2
3
¨¨¨
i
¨¨¨ n − 1
n
v1
..
.
Potentially storing
(n)
i
sets.
vj
V[Paths of length i ending at vj ]
..
.
= V[Paths of length (i − 1) ending at u, avoiding vj .]
vn
u P N(vj )
24. K-Path
Let us now turn to k-Path.
To find paths of length at least k,
we may simply use the DP table for Hamiltonian Path
restricted to the first k columns.
28. Do we really need to store all these sets?
In the ith column, we are storing paths of length i.
29. Do we really need to store all these sets?
In the ith column, we are storing paths of length i.
Let P be a path of length k.
30. Do we really need to store all these sets?
In the ith column, we are storing paths of length i.
Let P be a path of length k.
There may be several paths of length i that “latch on” to
the last (k − i) vertices of P.
31. Do we really need to store all these sets?
In the ith column, we are storing paths of length i.
Let P be a path of length k.
There may be several paths of length i that “latch on” to
the last (k − i) vertices of P.
We need to store just one of them.
45. The Possibilities for Partial Solutions Compatible with vi+1 − ¨ ¨ ¨ − vk .
.
A Fixed Future (vi+1 − ¨ ¨ ¨ − vk ).
46. For any possible ending of length (k − i), we want to be sure that we store
at least one among the possibly many “prefixes”.
47. For any possible ending of length (k − i), we want to be sure that we store
at least one among the possibly many “prefixes”.
This could also be
(
)
n
k−i
.
48. For any possible ending of length (k − i), we want to be sure that we store
at least one among the possibly many “prefixes”.
This could also be
(
)
n
k−i
.
The hope for “saving” comes from the fact that a single path of length i is
potentially capable of being a prefix to several distinct endings.
56. j vertices
If:
vi
(k − j) vertices
Partial solutions: paths of length j ending at vi
.
A “small” representative family.
57. j vertices
If:
vi
(k − j) vertices
Partial solutions: paths of length j ending at vi
.
A “small” representative family.
58. j vertices
If:
vi
(k − j) vertices
Partial solutions: paths of length j ending at vi
.
A “small” representative family.
Then:
59. j vertices
If:
vi
(k − j) vertices
Partial solutions: paths of length j ending at vi
.
A “small” representative family.
Then:
60. j vertices
If:
vi
(k − j) vertices
Partial solutions: paths of length j ending at vi
.
A “small” representative family.
We would like to store at least one path of length j
that serves the same purpose.
Then:
61. Given: A (BIG) family F of p-sized subsets of [n].
S1 , S2 , . . . , St
62. Given: A (BIG) family F of p-sized subsets of [n].
S1 , S2 , . . . , St
p
Want: A (small) subfamily F of F such that:
63. Given: A (BIG) family F of p-sized subsets of [n].
S1 , S2 , . . . , St
p
Want: A (small) subfamily F of F such that:
For any X Ď [n] of size (k − p),
if there is a set S in F such that X X S = H,
p p
p
then there is a set S in F such that X X S = H.
The “second half” of a solution — can be any subset.
64. Given: A (BIG) family F of p-sized subsets of [n].
S1 , S2 , . . . , St
p
Want: A (small) subfamily F of F such that:
For any X Ď [n] of size (k − p),
if there is a set S in F such that X X S = H,
p p
p
then there is a set S in F such that X X S = H.
The “second half” of a solution — can be any subset.
65. Given: A (BIG) family F of p-sized subsets of [n].
S1 , S2 , . . . , St
p
Want: A (small) subfamily F of F such that:
For any X Ď [n] of size (k − p),
if there is a set S in F such that X X S = H,
p p
p
then there is a set S in F such that X X S = H.
This is a valid patch into X.
66. Given: A (BIG) family F of p-sized subsets of [n].
S1 , S2 , . . . , St
p
Want: A (small) subfamily F of F such that:
For any X Ď [n] of size (k − p),
if there is a set S in F such that X X S = H,
p p
p
then there is a set S in F such that X X S = H.
This is a guaranteed replacement for S.
67. Given: A (BIG) family F of p-sized subsets of [n].
S1 , S2 , . . . , St
p
Want: A (small) subfamily F of F such that:
For any X Ď [n] of size (k − p),
if there is a set S in F such that X X S = H,
p p
p
then there is a set S in F such that X X S = H.
The “second half” of a solution — can be any subset.
68. Given: A ď
(n)
p
family F of p-sized subsets of [n].
S1 , S2 , . . . , St
p
Want: A (small) subfamily F of F such that:
For any X Ď [n] of size (k − p),
if there is a set S in F such that X X S = H,
p p
p
then there is a set S in F such that X X S = H.
The “second half” of a solution — can be any subset.
69. Given: A ď
(n)
p
family F of p-sized subsets of [n].
S1 , S2 , . . . , St
(k)
p
Known: D p subfamily F of F such that:
For any X Ď [n] of size (k − p),
if there is a set S in F such that X X S = H,
p p
p
then there is a set S in F such that X X S = H.
Bolobás, 1965.
70. Given: A a matroid (M, I), and a family of p-sized subsets from I:
S1 , S2 , . . . , St
71. Given: A a matroid (M, I), and a family of p-sized subsets from I:
S1 , S2 , . . . , St
p
Want: A subfamily F of F such that:
72. Given: A a matroid (M, I), and a family of p-sized subsets from I:
S1 , S2 , . . . , St
p
Want: A subfamily F of F such that:
For any X Ď [n] of size at most q,
if there is a set S in F such that X X S = H and X Y S P I,
p p
p
p
then there is a set S in F such that X X S = H and X Y S P I.
Lovász, 1977
73. Given: A a matroid (M, I), and a family of p-sized subsets from I:
S1 , S2 , . . . , St
p
There is a subfamily F of F of size at most
(p+q)
p
such that:
For any X Ď [n] of size at most q,
if there is a set S in F such that X X S = H and X Y S P I,
p p
p
p
then there is a set S in F such that X X S = H and X Y S P I.
Lovász, 1977
74. Given: A a matroid (M, I), and a family of p-sized subsets from I:
S1 , S2 , . . . , St
p
There is an efficiently computable subfamily F of F of size at most
(p+q)
p
such that:
For any X Ď [n] of size at most q,
if there is a set S in F such that X X S = H and X Y S P I,
p p
p
p
then there is a set S in F such that X X S = H and X Y S P I.
Márx (2009) and Fomin, Lokshtanov, Saurabh (2013)
75. Summary.
We have at hand a p-uniform collection of independent sets, F and a number q.
Let X be any set of size at most q. For any set S P F, if:
a X is disjoint from S, and
b X and S together form an independent set,
p
p
then a q-representative family F contains a set S that is:
a disjoint from X, and
b forms an independent set together with X.
Such a subfamily is called a q-representative family for the given family.
83. We are going to compute representative families at every intermediate stage of
the computation.
84. We are going to compute representative families at every intermediate stage of
the computation.
For instance, in the ith column, we are storing i-uniform families.
Before moving on to column (i + 1), we compute (k − i)-representative families.
This keeps the sizes small as we go along.
95. Let Pj be the set of all paths of length i ending at vj .
i
It can be shown that the families thus computed at the ith column, jth row are
j
indeed (k − i)-representative families for Pi .
The correctness is implicit in the notion of a representative family.
99. Let (G = (V, E), k) be an instance of Vertex Cover.
Note that E can be thought of as a 2-uniform family over the ground set V .
100. Let (G = (V, E), k) be an instance of Vertex Cover.
Note that E can be thought of as a 2-uniform family over the ground set V .
Goal: Kernelization.
In this context, we are asking if there is a small subset X of the edges such that
G[X] is a YES-instance ↔ G is a YES-instance.
101. Note: If G is a YES-instance, then G[X] is a YES-instance for any subset X Ď E.
102. Note: If G is a YES-instance, then G[X] is a YES-instance for any subset X Ď E.
We get one direction for free!
103. Note: If G is a YES-instance, then G[X] is a YES-instance for any subset X Ď E.
We get one direction for free!
It is the NO-instances that we have to worry about preserving.
104. Note: If G is a YES-instance, then G[X] is a YES-instance for any subset X Ď E.
We get one direction for free!
It is the NO-instances that we have to worry about preserving.
What is a NO-instance?
105. .
If G is a NO-instance:
For any subset S of size at most k,
there is an edge that is disjoint from S.
106. .
If G is a NO-instance:
For any subset S of size at most k,
there is an edge that is disjoint from S.
Ring a bell?
107. Recall.
We have at hand a p-uniform collection of independent sets, F and a number q.
Let X be any set of size at most q. For any set S P F, if:
a X is disjoint from S, and
b X and S together form an independent set,
p
then a q-representative family contains a set S that is:
a disjoint from X, and
b forms an independent set together with X.
Such a subfamily is called a q-representative family for the given family.
119. .
Since X is a k-representative family, for ANY S Ď V , where |S| ď k:
120. .
Since X is a k-representative family, for ANY S Ď V , where |S| ď k:
if there is a set e in E such that e X S = H,
121. .
Since X is a k-representative family, for ANY S Ď V , where |S| ď k:
if there is a set e in E such that e X S = H,
e
then there is a set p in X such that p X S = H.
e
122. .
Since X is a k-representative family, for ANY S Ď V , where |S| ď k:
if there is a set e in E such that e X S = H,
e
then there is a set p in X such that p X S = H.
e
Note that the green edges denote G[X].
123. .
Since X is a k-representative family, for ANY S Ď V , where |S| ď k:
if there is a set e in E such that e X S = H,
e
then there is a set p in X such that p X S = H.
e
Note that the green edges denote G[X].
124. .
Since X is a k-representative family, for ANY S Ď V , where |S| ď k:
if there is a set e in E such that e X S = H,
e
then there is a set p in X such that p X S = H.
e
Note that the green edges denote G[X].
125. .
Since X is a k-representative family, for ANY S Ď V , where |S| ď k:
if there is a set e in E such that e X S = H,
e
then there is a set p in X such that p X S = H.
e
Note that the green edges denote G[X].
126. .
Since X is a k-representative family, for ANY S Ď V , where |S| ď k:
if there is a set e in E such that e X S = H,
e
then there is a set p in X such that p X S = H.
e
Note that the green edges denote G[X].
127. .
Since X is a k-representative family, for ANY S Ď V , where |S| ď k:
if there is a set e in E such that e X S = H,
e
then there is a set p in X such that p X S = H.
e
Note that the green edges denote G[X].
128. .
Since X is a k-representative family, for ANY S Ď V , where |S| ď k:
if there is a set e in E such that e X S = H,
e
then there is a set p in X such that p X S = H.
e
Note that the green edges denote G[X].
129. .
Since X is a k-representative family, for ANY S Ď V , where |S| ď k:
if there is a set e in E such that e X S = H,
e
then there is a set p in X such that p X S = H.
e
Note that the green edges denote G[X].
130. .
Since X is a k-representative family, for ANY S Ď V , where |S| ď k:
if there is a set e in E such that e X S = H,
e
then there is a set p in X such that p X S = H.
e
Note that the green edges denote G[X].
131. .
Since X is a k-representative family, for ANY S Ď V , where |S| ď k:
if there is a set e in E such that e X S = H,
e
then there is a set p in X such that p X S = H.
e
Note that the green edges denote G[X].
132. .
Since X is a k-representative family, for ANY S Ď V , where |S| ď k:
if there is a set e in E such that e X S = H,
then there is a set p in X such that p X S = H.
e
e
Note that the green edges denote G[X].
Contradiction!
135. Notation
Det(M) : M
Let M be a m ˆ n matrix, and let I Ď [m], J Ď [n].
M[I, J] : M restricted to rows indexed by I and columns indexed by J
M[⋆, J] : M restricted to all rows and columns indexed by J
M[I, ⋆] : M restricted to rows indexed by I and all columns
188. Given: A collection of p-sized independent sets1 :
S = {S1 , . . . , St }.
1
The rank of the underlying matroid is (p + q).
189. Given: A collection of p-sized independent sets1 :
S = {S1 , . . . , St }.
Want: A q-representative subfamily p of size ď
S
1
The rank of the underlying matroid is (p + q).
(p+q)
p
.
228. 0 ‰ Det(AM [‹, Z Y Y]) =
r
ÿ
Det(AM [‹,Ti YY])
i=1
Note that at for at least one Ti , we have that:
Det(AM [‹,Ti YY]) ‰ 0
229. 0 ‰ Det(AM [‹, Z Y Y]) =
r
ÿ
Det(AM [‹,Ti YY])
i=1
Note that at for at least one Ti , we have that:
Det(AM [‹,Ti YY]) ‰ 0
For such a Ti , we know that:
1
.
2
.
Y X Ti = H (easily checked: all terms that survive have this property),
Y Y Ti P I (since non-zero determinant → linearly independent columns).
230. 0 ‰ Det(AM [‹, Z Y Y]) =
r
ÿ
Det(AM [‹,Ti YY])
i=1
Note that at for at least one Ti , we have that:
Det(AM [‹,Ti YY]) ‰ 0
For such a Ti , we know that:
1
.
2
.
Y X Ti = H (easily checked: all terms that survive have this property),
Y Y Ti P I (since non-zero determinant → linearly independent columns).
Thus, the sets corresponding to the basis vectors, T1 , . . . , Tr , do form a
q-representative family.