Title: Homework 8 Solutions
1Homework 8 Solutions
- Problem 1. Draw a diagram showing the various
classes of languages that we have discussed and
alluded to in terms of which class contains which
other classes. Indicate (by words if necessary)
which containments are not known to be strict. - Note this is an open-ended question, but at a
minimum include the Kleene hierarchy, the
polynomial-time hierarchy, PSPACE, NP-complete
languages, and regular languages
2P
NP
co-NP
logspace
NL
Regular Languages
PSPACE
3NP ?1p
?2p
co-NP ?1p
P ?0p ?0p
?2p
P
Non-Collapse has not been proved
PSPACE
complete
4Decidable?0 ?0
?1
?1
PSPACE
?2
?2
EXPTIME
5Problem 2 State the time hierarchy theorem
(consult Sipser). Show the error in the
following argument that NP PProof by
contradiction. Assume NP P. Then SAT is in P.
Therefore there exists a value k such that SAT is
in TIME(nk). Because every language in NP is
polynomial-time reducible to SAT, we know that P
is a subset of TIME(nk). Yet the time hierarchy
theorem tells us that TIME(nk1) contains a
language that is not in TIME(nk). Therefore our
assumption that NP P must be false.
6Because every language in NP is polynomial-time
reducible to SAT, we know that P is a subset of
TIME(nk). Time hierarchy Theorem If f is a
time-constructable function and f(n)gtn, then
TIME(f(n)) properly contains TIME(f(n)/log(f(n)))
This is incorrect because a reduction from L
to SAT may transform inputs of size n to a larger
size (e.g. nb). So the running time of an
algorithm that employs the reduction will be
O(nbk) not O(nk)
7Problem 3 Define uniform family of circuits
and NC (consult Sipser). A uniform family of
circuits Cii1 is a set of circuits that are
can be output by a logspace machine NC Ui1
NC(i) where NC(i) is all languages L decidable
by some uniform family of polynomial size depth
logi(n) circuits. Problem 4 Define trapdoor
function (consult Sipser). A trapdoor function,
primarily used in cryptography, is a function f
such that it is efficient to compute f(x) for any
x but, given random y, it is not possible to find
any value x such that f(x) y in polynomial time
without knowledge of a key k. With knowledge of
key k, it is possible to find x efficiently.
8
8
8Problem 5 Prove that NPSPACE
PSPACE Savitchs theorem implies that ? k,
NSpace(nk) ? DSpace(n2k) Therefore, NPSpace
? NSpace(nk) ? ? DSpace(n2k) ? ? DSpace(nj)
PSpace Because we
already know that PSpace ? NPSpace, this implies
PSpace NPSpace
?
?
?
k
k
j
9Problem 6. Prove that TQBF restricted to
formulas where the part following the quantifiers
is in conjunctive normal form is still
PSPACE-complete (Sipser 8.13) The idea is
simple in the proof that TQBF is
PSPACE-complete, the boolean expression following
the quantifiers can always be put in conjunctive
normal form. This expression says that machine
M can more from configuration X to configuration
Y in one step.
10 Problem 7. Let EQREX (R,S) R an S are
equivalent regular expressions. Show that EQREX
? PSPACE (Sipser 8.16) A PSPACE algorithm that
decides can be written in 2 steps 1. Convert
(R,S) to (Rnfa, Snfa) where (Rnfa, Snfa) are NFAs
that accept R and S respectively. This done by
using the 3 proof tricks that show regular
languages are closed under concatenation, union,
and Kleene star, building the NFAs directly from
the regular expressions. This is a polynomial
time (and hence obviously PSPACE) operation 2.
Decide whether Rnfa and Snfa accept the same
languages. The idea here is that it is sufficient
to determine whether there are any strings w of
length less than n -- the max of the 2 NFAs
pumping lengths -- such that w is accepted by one
NFA but not the other. To do this, one can run
through all strings of length less than n. This
requires exponential time, but polynomial space.