CSOR W4231.002 – Spring, 2019
hw6 solutions
1.
Solution to problem 1
We will reduce this problem to the problem of finding a feasible circulation in a flow network
with demands.
The reduction transformation:
given an input instance to our problem, that is, a flow network
G
= (
V, E
) with edge capacities
c
e
, edge lower bounds
‘
e
and node demands
d
(
v
), we construct
an input (
G
0
, c
0
, d
0
) to the circulation with demands problems, where
G
0
= (
V
0
, E
0
) is a flow
network with edge capacities
c
0
e
and node demands
d
0
(
v
):
(a) set
G
0
= (
V, E
);
(b) set
c
0
e
=
c
e

‘
e
, for every
e
∈
E
(c) compute
m
v
=
∑
e
into
v
‘
e

∑
e
out of
v
‘
e
, for every
v
∈
V
(d) set
d
0
(
v
) =
d
(
v
)

m
v
, for all
v
∈
V
Clearly the transformation requires polynomialtime.
Equivalence of the instances:
We will show that there is a feasible circulation
f
with demands
and lower bounds in
G
if and only if there is a feasible circulation with demands
f
0
in
G
0
.
(=
⇒
) Suppose that
f
is a feasible circulation
f
with demands and lower bounds in
G
, that is
for every
e
∈
E
,
‘
e
≤
f
(
e
)
≤
c
e
(1)
for every
v
∈
V
,
f
in
(
v
)

f
out
(
v
) =
d
(
v
)
(2)
Define
f
0
(
e
) =
f
(
e
)

‘
e
. From equation (
??
) and (b), 0
≤
f
0
(
e
)
≤
c
e

‘
e
=
c
0
e
, so
f
0
satisfies
capacity constraints. Also,
f
0
satisfies node demand constraints in
G
0
:
f
0
in
(
v
)

f
0
out
(
v
)
=
X
e
into
v
(
f
(
e
)

‘
e
)

X
e
out of
v
(
f
(
e
)

‘
e
)
=
X
e
into
v
f
(
e
)

X
e
out of
v
f
(
e
)

X
e
into
v
‘
e

X
e
out of
v
‘
e
=
f
in
(
v
)

f
out
(
v
)

m
v
=
d
(
v
)

m
v
=
d
0
(
v
)
where the last equality follows from equation (
??
) and (d).
(
⇐
=) Conversely suppose that
f
0
is a feasible circulation with demands in
G
0
, that is
for every
e
∈
E
, 0
≤
f
0
(
e
)
≤
c
0
e
(3)
for every
v
∈
V
,
f
0
in
(
v
)

f
0
out
(
v
) =
d
0
(
v
)
(4)
Define
f
(
e
) =
f
0
(
e
) +
‘
e
. From equation (
??
) and (b),
‘
e
≤
f
(
e
)
≤
c
e
, so
f
satisfies capacity
and lower bounds constraints in
G
.
Also,
f
satisfies node demand constraints in
G
; this
follows from an entirely similar derivation as above using equation (
??
) and (d).
Subscribe to view the full document.
2.
Solution to problem 2
Reduction from
SAT
: given an arbitrary
SAT
formula
φ
with
n
variables, construct the instance
(
φ, n
) of
Stingy SAT.
The reduction takes polynomial time and
φ
is a
yes
instance of
SAT
if
and only if (
φ, n
) is a
yes
instance of
Stingy SAT
(that is,
φ
can be satisfied by setting at
most all the variables to 1).
3.
Solution to problem 3
Let
A
be the polynomial time algorithm that on input a formula
φ
answers
yes
if
φ
is
satisfiable and
no
, otherwise.
If
A
(
φ
) =
no
, then output
no
and terminate.
Otherwise, we know that
φ
has a satisfying truth assignment.
Set
x
1
= 1. If
A
(
φ

x
1
= 1) =
no
, then set
x
1
= 0 (in this case, we know that
x
1
= 0 satisfies
φ
, since
φ
is satisfiable).
Repeat with variables
x
2
, . . . , x
n
, considering them one at a time.
After considering all the variables, we have a truth assignment that satisfies
φ
. This gives a
polynomialtime algorithm for finding a satisfying truth assignement, given the hypothetical
polynomialtime algorithm
A
.
4.
Solution to problem 4
Decision version:
Given an
m
×
n
binary matrix
A
of customers and products, and a target value
k
, are there
at least
k
orthogonal customers?
Subscribe to view the full document.
 Fall '11
 Berger