# CMPSCI 250: Introduction to Computation

### David Mix Barrington

### Spring, 2012

# Homework Assignment #8

#### Posted Friday 13 April 2012

#### Due on paper in lecture, Friday 20 April 2012.

There are nine questions for 60 total points plus 15 extra credit.
All but one are from
the textbook, *
Mathematical Foundation for Computer Science*. Note that the book has
both Exercises and Problems -- make sure you are doing a Problem and not the
Exercise with the same number. 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.

- Problem 14.1.2 (10) Use the inductive definitions of the
δ
^{*}
function, paths in graphs, and strings.
- Problem 14.1.4 (10)
Explain why your DFA for L(M
_{1}) ∪ L(M_{2}) is correct.
Also indicate (without proof) how you would make a DFA for L(M_{1}) ⊕ L(M_{2}).
- Problem 14.2.3 (10XC)
- Problem 14.2.4 (5)
- Problem 14.3.1 (5)
- Problem 14.3.4 (10)
- Problem H-1 (10): Let N be the following NFA. The input alphabet is
{a, b}, the state set is {0, 1, 2, 3, 4}, the start state is 0, and the final
state set is {0}. The transition relation Δ contains all triples of the
form (i, a, i), (i, b, (i + 1)%5), and (i, b, (i-1)%5), where "%" is the Java
modular division operator.
- (a) Describe the language of this NFA in English, and justify your answer.
- (b) Apply the Subset Construction to get a DFA equivalent to N.

- Problem 14.6.4 (10)
- Problem 14.6.5 (5XC)

Last modified 13 April 2012