Primal-Dual Approximation
for
FEEDBACK VERTEX SET
revisited
GOAL: 2-approximation
using a different LP formulation
Suppose \(F\) is a FVS of G.
Then we know that \(G\setminus F\) has at most \(|V| - c(G)\) edges,
where \(c(G)\) denotes the number of
connected components of \(G\).
This means that \(F\) must have knocked out at least
\(|E| - \) \(\bigl(|V| - c(G) \bigr)\) edges.
Suppose we remove a single vertex \(v\).
In \(G \setminus v\), our renewed goal is to remove at least:
\(\bigl(|E|-\) \(d(v)\) \(\bigr)- \bigl(|V\)\(-1\)\(| - c(G\)\(-v\)\() \bigr)\) edges.
Recall that in \(G\) our goal was to remove at least:
\(|E| - \) \(\bigl(|V| - c(G) \bigr)\) edges.
So removing \(v\) from \(G\) reduces our goal by:
\(d(v) - 1 + c(G) - c(G-v)\)
Suppose we remove a single vertex \(v\).
In \(G \setminus v\), our renewed goal is to remove at least:
\(\bigl(|E|-\) \(d(v)\) \(\bigr)- \bigl(|V\)\(-1\)\(| - c(G\)\(-v\)\() \bigr)\) edges.
Recall that in \(G\) our goal was to remove at least:
\(|E| - \) \(\bigl(|V| - c(G) \bigr)\) edges.
So removing \(v\) from \(G\) reduces our goal by:
\(d(v) - \)\( \bigl(1 + c(G - v) - c(G)\bigr)\)
Suppose we remove a single vertex \(v\).
In \(G \setminus v\), our renewed goal is to remove at least:
\(\bigl(|E|-\) \(d(v)\) \(\bigr)- \bigl(|V\)\(-1\)\(| - c(G\)\(-v\)\() \bigr)\) edges.
Recall that in \(G\) our goal was to remove at least:
\(|E| - \) \(\bigl(|V| - c(G) \bigr)\) edges.
So removing \(v\) from \(G\) reduces our goal by:
\(d(v) - \)\( \bigl(1 + c(G - v) - c(G)\bigr)\)
Suppose we remove a single vertex \(v\).
In \(G \setminus v\), our renewed goal is to remove at least:
\(\bigl(|E|-\) \(d(v)\) \(\bigr)- \bigl(|V\)\(-1\)\(| - c(G\)\(-v\)\() \bigr)\) edges.
Recall that in \(G\) our goal was to remove at least:
\(|E| - \) \(\bigl(|V| - c(G) \bigr)\) edges.
So removing \(v\) from \(G\) reduces our goal by:
\(d(v) - \)\(b(v)\)
Claim. If \(F\) is a FVS for \(G\), then:
\(\sum_{v \in F} \bigl(\) \(d(v) - b(v)\) \(\bigr)\) \(\geqslant\) \(|E| - |V| + c(G)\)
Claim. If \(F\) is a FVS for \(G\), then:
\(\sum_{v \in F} \bigl(\) \(d(v) - b(v)\) \(\bigr)\) \(\geqslant\) \(\underbrace{|E| - |V| + c(G)}_{\text{{\color{white}.}}}\)
any FVS needs to
remove these many edges
Claim. If \(F\) is a FVS for \(G\), then:
\(\sum_{v \in F} \bigl(\) \(d(v) - b(v)\) \(\bigr)\) \(\geqslant\) \(\underbrace{|E| - |V| + c(G)}_{\text{{\color{white}.}}}\)
any FVS needs to
remove these many edges
#edges removed by \(F\)
\(\geqslant\)
#edges removed by \(F\) = \(\biggl(\sum_{v \in F} d(v)\biggr) - |E(F)|\)
Claim. \(\sum_{v \in F} b(v) - \bigl(|F| + |E(F)|\bigr) \leqslant c(G - F) - c(G)\)
\( - |E(F)| \leqslant - \sum_{v \in F} b(v) + \biggl(c(G - F) - c(G)\biggr) \) + |F|
Claim. \(\sum_{v \in F} b(v) - \bigl(|F| + |E(F)|\bigr) \leqslant c(G - F) - c(G)\)
\(\sum_{v \in F{\color{red}-w}} b(v) - \bigl(|F|{\color{red}-1} + |E(F{\color{red}-w})|\bigr) \leqslant c(G - \bigl(F{\color{red}-w}\bigr)) - c(G)\)
Add \(b(w) - 1\) to both sides.
\(\sum_{v \in F} b(v) - \bigl(|F| + |E(F{\color{red}-w})|\bigr) \leqslant c(G - \bigl(F{\color{red}-w}\bigr)) - c(G) + b(w) - 1\)
Claim. \(\sum_{v \in F} b(v) - \bigl(|F| + |E(F)|\bigr) \leqslant c(G - F) - c(G)\)
\(\sum_{v \in F{\color{red}-w}} b(v) - \bigl(|F|{\color{red}-1} + |E(F{\color{red}-w})|\bigr) \leqslant c(G - \bigl(F{\color{red}-w}\bigr)) - c(G)\)
Add \(b(w) - 1\) to both sides.
\(\sum_{v \in F} b(v) - \bigl(|F| + |E(F{\color{red}-w})|\bigr) \leqslant c(G - \bigl(F{\color{red}-w}\bigr)) - c(G) + b(w) - 1\)
Add \(-d_F(w)\) to both sides.
\(\sum_{v \in F} b(v) - \bigl(|F| + |E(F)|\bigr) \leqslant c(G - \bigl(F{\color{red}-w}\bigr)) - c(G) + \bigl(b(w) - 1 - d_F(w)\bigr)\)
\(\sum_{v \in F} b(v) - \bigl(|F| + |E(F)|\bigr) \leqslant \underbrace{c(G - \bigl(F{\color{red}-w}\bigr)) + \bigl(b(w) - 1 - d_F(w)\bigr)} - c(G) \)
\(\leqslant c(G-F)\)
Claim. \(\sum_{v \in F} b(v) - \bigl(|F| + |E(F)|\bigr) \leqslant c(G - F) - c(G)\)
\(F - w\)
\(w\)
\(c(G - \bigl(F{\color{red}-w}\bigr))\)
\(F\)
\(w\)
\(\geqslant c(G - \bigl(F{\color{red}-w}\bigr))\)
\(+ \bigl(b(w) - 1 - d_F(w)\bigr)\)
\(c(G - F)\)
\(F\) is the solution that we will be building.
\(\ell\) will track the size of the solution.
\(S\) will (roughly) denote \(V \setminus F\)
For any graph \(G\) such that every vertex \(v \in V\) is contained in some cycle, and for any minimal feedhack feedback vertex set \(F\) for \(G\),
\(\sum_{v \in F}(d(v)-b(v)) \leq 2 f(V)=2(|E|-|V|+c(G))\)
\(\sum_{v \in F^{\prime}} w_v=\sum_{v \in F^{\prime}} \sum_{S: v \in S}\left(d_S(v)-b_S(v)\right) y_S\)
\( = \sum_{S \subseteq V} y_S \sum_{v \in F^{\prime} \cap S}\left(d_S(v)-b_S(v)\right)\)
\(\leqslant 2 \sum_{S \subseteq V} f(S)y_S \leqslant 2 OPT\)
\(\sum_{v \in F}(d(v)-b(v)) \leq 2 f(V)=2(|E|-|V|+c(G))\)
\(\sum_{v \in F}(d(v)-b(v)) - 2|E| \leq 2 f(V)=2(c(G) - |V|)\)
\(\sum_{u \in F}(d(v)-b(v)) - \sum_{u\in V}d(u) \leq 2 f(V)=2(c(G) - |V|)\)
\(\sum_{v \notin F} d(v) \geq 2|V|-\sum_{v \in F} b(v)-2 c(G)\)
\(\sum_{v \notin F} d_{V-F}(v)+|\delta(F)| \geq 2|V|-\sum_{v \in F} b(v)-2 c(G)\)
\(2(|V|-|F|-c(G-F)) +|\delta(F)| \geq 2|V|-\sum_{v \in F} b(v)-2 c(G)\)
\(2|F|+2 c(G-F) \leq|\delta(F)|+\sum_{v \in F} b(v)+2 c(G)\)