CMPSCI 601: Theory of Computation
David Mix Barrington
Fall, 2004
Homework Assignment #3
Posted Fri 12 Nov 2004
Due Mon 24 Nov, 2:00 p.m. by fax to 413-545-1249
Covers Lectures 16-20
These problems all concern complexity measures and complexity classes.
- Question 1:
Suppose that I have a procedure Augment
that takes a set of sentences Γ in the
language of number theory, finds the true sentence φ
that is unprovable from
Γ given by our proof of Godel's Theorem, and returns
Γ&union;{φ}. Consider the program "while (true) Γ =
Augment(Γ);". Explain why the set of strings eventually put into
Γ by this program is r.e. but not recursive. Why does it not provide
a counterexample to Godel's Theorem?
- Question 2:
Suppose that there were an algorithm to multiply a sequence
of n boolean matrices, each n by n,
using O(log n) space. Show that REACH would then be computable in O(log n)
space, and thus that L = NL.
- Question 3:
Show that there is an algorithm to multiply a sequence of n boolean
matrices, each n by n, in O(log2) space. Remember that you must
use read-only input and write-only output. (Hint: Your worktape has room for
a stack.)
- Question 4:
Write a first-order formula in the language of directed graphs that
expresses that the graph has a directed triangle. Following the discussion
on slide 6 of Lecture 19, write a pseudo-Java method that tests this
property and uses O(log n) space.
- Question 5:
On slide 7 of Lecture 20 I outline a direct reduction from REACH to
LEVELLED-REACH. Carefully define this reduction and prove that it is a
correct log-space reduction.
Last modified 12 November 2004