Definition
Given a set U of size n, and collections of subsets of S1,…,Sm ⊆ U. There exists a
subset C ⊆{1,…,m}, such that ⋃
i
CSi = U.
Polynomial Certifier
Question: Given a set U, collections of subsets of S1,…,Sm ⊆ U, and
a number k. Does there exists a subset C ⊆{1,…,m} of size k, such that
⋃
i
CSi = U?
C.
Reduction from Vertex Cover from simple case to general case
We will construct the reduction as follow:
Let U = E(G), and for each vertex v1,v2,…,vn, we have a set Si = {e
E|vi is incident on e}.
That is, Si is exactly the set of edges that vi covers. Finally, we set k to be identical.
This construction obviously can be done in polynomial in terms of |V | and
|E|.
From the construction, Set Cover of the example above would be U = {1,2,3,4,5,6,7},Sa = {3,7},Sb = {2,4},Sc = {3,4,5,6},Sd = {5},Se = {1},Sf = {1,2,5,6}, and U = Sc ∪ Sf.
Claim 4.13.4.1. Vertex Cover ≤ p Set Cover. (This construction of Vertex Cover
leads to is a special case of Set Cover)
VC is a Vertex Cover of size k in G if and only if C is a set cover of at most k
Si′s, vi
V , such that ⋃
i
CSi = E.
VC is a Vertex Cover of size k in G ⇒ C is a set cover of at most k
Si′s, vi
V , such that ⋃
i
CSi = E.
Proof. Suppose VC is a vertex cover of size k in G. we construct C by including
exactly the same vertices in VC. Clearly, the size of C is equal to k. Each element
of U corresponds exactly to an edge e in E. Since VC is a vertex cover, e is
covered by some vertex vi. However, this means that e
Si by definition of the
sets Si, so e is also covered by C. Since this holds for each e, C is a valid set
cover. __
C is a set cover of at most k Si′s, vi
V , such that ⋃
i
CSi = E ⇒ VC is a
Vertex Cover of size k in G.
Proof. Assume that the C is a set cover of size at most k. We define a vertex set
VC as consisting exactly of those vi for which i
C. The size of VC is the same
as that of C, at most k. Furthermore, for any edge e, we know the corresponding
element e is covered by at least one set Si with i
C. Therefore, by the way we
generated the Si sets, the vertex vi covers e. Since all edges are covered, thus
proved VC is a vertex cover of size k. __