CMPSCI 401: Theory of Computation
David Mix Barrington
Spring, 2012
Homework Assignment #2
Posted Wednesday 8 February 2012
Due on paper in class, Friday 17 February 2012
There are fourteen questions for 100 total points plus 10 extra credit.
Most are
the textbook, Introduction to the Theory of Computation
by Michael Sipser (second edition).
The number in parentheses following each problem
is its individual point value.
Students are responsible for understanding and following
the academic honesty
policies indicated on this page.
- The first two problems use the following definitions, repeated
from HW#1.
Let Σ be the alphabet {a, b, c}.
Define the following three languages over Σ. X is the set of
strings of odd length whose middle letter is c. Y is the set of
strings
of odd length whose first and last letters are the same. Z is the
set
of strings (of any length) containing at least one a, at least one b, and at least
one c.
- Problem B-1 (10):
Prove that X is not a regular langauge. In any of these non-regular
language problems, you may use either the
Pumping Lemma or my method.
- Problem B-2 (10):
Find a regular expression for the language Y ∩ Z.
- Problem B-3 (10XC):
A language L has inverses if for every string x, there is
another string y such that xy is L-equivalent to ε. A
DFA is one-to-one if for every letter a ∈Σ and every
pair
of states p and q with p ≠ q, δ(p, a) ≠ δ(q, a).
Prove that a regular language has inverses if and only if it is the
language
of some one-to-one DFA.
- Problem 1.14 part (b) only (5)
- Problem 1.40 part (b) only (10)
- Problem 1.46 part (d) only (5). Note that the symbol before
the last brace is a +, not a *. If X is any language, the language
X+
is defined to be XX*.
- Problem 1.53 (5)
- Problem 1.63 part (a) only (10)
- Exercise 2.2 (10)
- Exercise 2.12 (5)
- Exercise 2.15 (5) (Find a grammar G such that the
constructed grammar G' does not generate the language
L(G)*.)
- Problem 2.24 (10)
- Problem 2.26 (5)
- Problem 2.32 (10)
Last modified 8 February 2012