Hitting Set problem is NP Complete

Prerequisite: NP Complete

Problem: Given a ground set X of elements and also a grouping collection C of subsets available in X and an integer k, the task is to find the smallest subset of X, such that the smallest subset, H hits every set comprised in C. This implies that the intersection of H and S is null for every set S belonging to C, with size ≤ k.

Proof: An instance of the problem is an input specified to the problem. An instance of the Hitting Set is a collection C of subset, S in X, and k. Since an NP-complete problem, by definition, is a problem which is both NP and NP-Hard, the proof or statement that a problem is NP-Complete consists of two parts:

  1. The problem itself is NP-Complete.
  2. All other problems in NP class can be polynomial-time reducible to that. (B is poly-time reducible to C).

If the only second condition is satisfied, the problem is called NP-Hard.
But it is not possible to reduce every NP problem into another NP problem to show its NP-Completeness all the time. That is why to show a problem is NP-complete, prove that the problem is in NP and any NP-Complete problem is reducible to that then we are done. Thus, it can be verified that the hitting set problem is NP-Complete using the following propositions:

  1. Hitting Set is in NP: It any problem is in NP, then given a ‘certificate’, which is a solution to the problem and an instance of the problem (a ground set X, a collection, C of subsets, S), we will be able to verify (check whether the solution is correct or not) the certificate in polynomial time. This can be done by:
    Provided a Hitting Set, HS of size k, verify it covers at least one element in every set Si of X.
    This takes polynomial time, hence in NP
  2. Hitting Set is NP-Hard: In order to prove Hitting Set is NP-Hard, we will perform a reduction from which vertex cover problem can be reduced to the Hitting Set problem.

In the Vertex Cover problem, we have a graph G = (V, E)
Now, Let X, that is the ground set = vertices of G. That is X = V(G) and the collection C of subset Si in X is Si = {u, v} is an edge in graph G.

Now, the following properties hold:


The Hitting Set Problem is NP and NP-Hard. Therefore, the Hitting Set Problem is NP-Complete.

Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.

Article Tags :