0% found this document useful (0 votes)
21 views1 page

Problem Set 3 Solution: 6.892: Algorithmic Lower Bounds, Spring 2019 Prof. Erik Demaine, Jeffrey Bosboom, Jayson Lynch

The document proves that the set splitting problem is NP-complete. It shows that set splitting is in NP by describing a polynomial time verification algorithm. It then proves set splitting is NP-hard by reducing from the known NP-hard positive NAE 3-SAT problem, constructing an equivalent instance of set splitting from a given positive NAE 3-SAT instance in linear time.

Uploaded by

Bhoomika Mandloi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
21 views1 page

Problem Set 3 Solution: 6.892: Algorithmic Lower Bounds, Spring 2019 Prof. Erik Demaine, Jeffrey Bosboom, Jayson Lynch

The document proves that the set splitting problem is NP-complete. It shows that set splitting is in NP by describing a polynomial time verification algorithm. It then proves set splitting is NP-hard by reducing from the known NP-hard positive NAE 3-SAT problem, constructing an equivalent instance of set splitting from a given positive NAE 3-SAT instance in linear time.

Uploaded by

Bhoomika Mandloi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 1

6.

892: Algorithmic Lower Bounds, Spring 2019


Prof. Erik Demaine, Jeffrey Bosboom, Jayson Lynch

Problem Set 3 Solution

Due: Tuesday, February 26, 2019 at noon

Problem 3.1 [Set Splitting]. Prove that the following problem is NP-complete.

Set Splitting: Given a finite set S and a collection C of subsets of S, is there a


partition of S into disjoint sets S1 and S2 such that no set in C is a subset of S1 or S2 ?

Hint: The reduction is straightforward if you choose the right problem to reduce from.
Solution: We begin by showing that Set Splitting is in NP. Let (S, C) be a Set Splitting
instance. We nondeterministically construct the sets S1 and S2 by guessing which set to put each
element of S in. Then we verify that every set in C is neither a subset of S1 or of S2 . This
algorithm takes linear time for guessing and linear time for verifying, so it is polynomial-time.
Thus Set Splitting is in NP.
We now prove that Set Splitting is NP-hard by reducing from the NP-hard problem Positive
NAE 3-SAT. Let (X, ϕ) be a Positive NAE 3-SAT instance, where X is a set of variables and
ϕ is a formula which is a conjunction of positive NAE clauses over those variables. Define C as
follows: for every clause (x1 , x2 , x3 ) in ϕ, add the set {x1 , x2 , x3 } to C. Our reduction outputs the
Set Splitting instance (X, C) in linear time.
We prove that the Positive NAE 3-SAT and Set Splitting instances are equivalent. Define
a bijection between truth-value assignments of X and bipartitions of X as follows: an assignment
of truth values to the variables of X corresponds to a partition of X into disjoint sets S1 , S2 where
S1 is the set of true-valued variables and S2 is the set of false-valued variables. Then an assignment
of truth values satisfies ϕ if and only if the corresponding partition is a splitting of C. This is
because each clause (x1 , x2 , x3 ) of ϕ is satisfied under a given truth assignment if and only if the
corresponding set {x1 , x2 , x3 } of C is split between the S1 and S2 corresponding to that truth
assignment. Therefore our reduction is correct.
Because Positive NAE 3-SAT is NP-hard, so is Set Splitting. Thus Set Splitting is
both NP-hard and in NP, so it is NP-complete.

You might also like