An Example of a Short NP-Completeness Proof Ran Libeskind-Hadas Minimum Feedback Vertex Set Optimization Problem

An Example of a Short NP-Completeness Proof Ran Libeskind-Hadas Minimum Feedback Vertex Set Optimization Problem

An Example of a Short NP-Completeness Proof Ran Libeskind-Hadas Minimum Feedback Vertex Set Optimization Problem: Given a directed graph G, what is the least number of vertices that must be removed (along with edges incident upon those vertices) so that the remaining graph contains no directed cycles? The corresponding decision problem is: Minimum Feedback Vertex Set (MFVS): Given a directed graph G and a non-negative integer k, is it possible to remove k or fewer vertices (along with edges incident upon those vertices) such that the resulting graph contains no directed cycle? We claim that MFVS is NP-complete. MFVS is in the class NP because a cer- tificate would be the set of k vertices to remove. We'd remove these vertices from the graph G to build a new graph G0. We'd then run depth-first search from each vertex to test for cycles. This clearly takes polynomial time. Next, we show MFVS is NP-hard by a reduction from Vertex Cover (VC). An instance of VC is an undirected graph G and a positive integer k. In our reduction, we build a new graph G0 with the same vertices as G but with each edge fu; vg of G replaced by a pair of oppositely directed edges (u; v) and (v; u). Call this new directed graph G0. Our instance of MFVS is G0; k (we use the same k as in the instance of VC). Clearly this reduction takes polynomial time since it simply copies G but replaces each edge with two edges. Now, we show that there is a vertex cover of size k in G if and only if there is a subset of k vertices in G0 whose removal breaks all cycles. First, assume that there is a vertex cover of size k in G. Now, remove these k vertices from G0 along with the edges incident upon them. Notice that for any directed edge (u; v) 2 G0, at least one of u or v must have been removed, because one of u or v must have been in our vertex cover. Thus, after removing these k vertices and their incident edges from G0, no two vertices have an edge between them, and consequently there can be no cycles. Conversely, assume that there exists a set S of k vertices in G0 whose removal breaks all cycles. By construction every pair of vertices u; v that had an edge between them in G have a cycle (u; v); (v; u) in G0. Since the removal of set S broke all cycles in G0, for each edge fu; vg 2 G, the set S must contain either u or v (or both). Thus, S is a vertex cover of G. 1.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    1 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