CMPSCI 601: Theory of Computation
David Mix Barrington
Spring, 2003
Homework Assignment #8
Due by Wednesday 14 May 2003 9:05 a.m.
(Off-campus students make arrangements with Kazu)
(Revisions to Question 1 made on 4 May 2003.)
- Question 1 (10 points + 5 extra credit):
Prove the first Lemma from
Lecture 23: that if T is any binary tree with n nodes,
where n > 1,
there is an edge in T that divides it into two pieces, each
with at most 2n/3 nodes. Assume that each
node in the tree has either zero or two children. You may want
to prove and use the lemma that in such a tree, the subtree under
any node has odd size.
- Alternate Question 1 (10 points, points cannot be combined with
original Question 1): Let T be any binary tree of n nodes, possibly
with only children. Assume that n > 9. Prove that there is an edge
dividing T into two pieces, with a nodes in the piece without the root,
such that
the numbers a and n-a+1 are each at most 3n/4. (If you need a larger lower
bound on n it will cost you only a point as long as it is constant.)
(This version reflects the use
of the Lemma in the Theorem about CFL's. When the tree is divided along
the edge, the subproblem containing the root must contain a node representing
the other tree.)
- Question 2 (10 points): Prove the second Lemma from
Lecture 23: that if a, b, and c are any three nodes in a rooted
binary tree, such that none is an ancestor of another, there exists a
node d in the tree that is an ancestor of exactly two of them.
- Question 3 (40 points):
If we have any definition of "addition" and "multiplication" on individual
items, we can define multiplication on n-by-n matrices of those items.
If A and B are such matrices, C=AB is defined to be the matrix such that
for any i and j from 1 to n, Ci,j is the "sum", over all k,
of Ai,k "times" Bk,j. Define
ITMULT to be the problem of inputting
n matrices A1,...,An and returning the product
A1A2...An.
The definition of the ITMULT problem of course varies as we vary the definition
of addition and multiplication.
- (a,10)
Using the observations about arithmetic in Lecture 24, prove that
ITMULT over the integers is in ThC1. Note: Assume that your
input matrices have entries with at most n bits. How big could the
entries of your output matrix be, in big-O terms?
- (b,15)
Consider boolean matrix multiplication, where items are 0 or 1,
"addition" is OR, and "multiplication" is AND. (Equivalently, we use
boolean arithmetic where 1 + 1 = 1 and multiplication is normal.) Prove
that ITMULT over this domain is NL-complete. (Hint: Consider the
LEVELLED-REACH problem from HW#5 Question 12.)
(Extraneous dollar signs removed 10 May.)
- (c,15) Consider the min-plus domain, where entries are integers,
"addition" means taking the minimum and "multiplication" means ordinary
addition. The Floyd-Warshall
algorithm for all-pairs-shortest-path in a graph
with positive weights consists of taking the weight matrix of the graph
and raising it to the (n-1)'st power in this domain. (See [CLRS], Chapter
25.2) You don't have to prove this, but do prove that ITMULT in the
min-plus domain is in AC1.
- Question 4 (0 points):THERE IS NO QUESTION 4.
Actually, if you want an extra question, you can prove that
CRAM[login] (poly-many processors with O(logi)
parallel time) is the same as ACi, ignoring uniformity issues.
You could use either the circuit or the ATM characterization of ACi.
But please don't hand this problem in, as Kazu already has enough to
grade.
- Question 5 (20 points):
Prove that the SUCCINCT-REACH problem, defined in Lecture 24, is
PSPACE-complete. This problem is to take a graph,
whose set of nodes is
exactly {w: w is a string of length n}, and whose
edge predicate is defined by a circuit given to you as
part of the input, and solve a given REACH problem on it.
Typo fixed in this question 5 May 2003.
- Question 6 (20 points): Do Problem 11.5.18 in [P]. This
problem uses definitions from Lecture 25.
Last modified 10 May 2003