Reduce the
VERTEX COVER problem to the
SET COVERING problem.
These problems are defined as follows:
- VERTEX COVER: given a natural k and an undirected graph G, is
there a cover for G of size at most k? In other words, is there a subset
S of nodes with size at most k such that each edge of G involves a node
from S?
More formally, this problem can be defined as the following set:
{⟨k,G=⟨V,E⟩⟩∣∃S⊆V:(∣S∣≤k∧∀{u,v}∈E:(u∈S∨v∈S))}
- SET COVERING: given a natural k and a collection of finite sets
S1,…,Sn, is there a cover for S1∪…∪Sn of size at most
k? In other words, is there a selection of at most k of such sets Si
such that their union equals the union of all the sets S1,…,Sn?
More formally, this problem can be defined as the following set:
{⟨k,⟨S1,…,Sn⟩⟩∣S1,…,Sn finite sets∧∃{i1,…,im}⊆{1,…,n}:(m≤k∧(S1∪…∪Sn)=(Si1∪…∪Sim))}
The input and output of the reduction conform to the following data types: