CMPS 364   Fall 2009
HW #3: NFAs, DFAs, Regular Languages and the Pumping Lemma
Due: Wednesday, September 30

1. Below is a tabular representation of an NFA. Its initial state is q0 and its lone accepting state is qf. Use the "subset construction" algorithm to compute a DFA that accepts the same language, and show it in the form of either a table or a transition graph.

state symbol
  a b c
q0 q0,qa q0,qb q0,qc
qa qf qa qa
qb qb qf qb
qc qc qc qf
qf qf qf qf


2. Below is a tabular representation of an NFA with ε-transitions. Its initial state of is q0 and its lone accepting state is qf. Use the algorithm described by Hopcroft & Ullman to compute an NFA having no such transitions, and show it in the form of either a table or a transition graph.

state symbol
  a b ε
q0     q1,q3
q1 q1 q2  
q2 q2 q2 qf
q3 q4 q3  
q4 q4 q4 qf
qf      


3. Below is a tabular representation of a DFA. Its initial state is q0 and its accepting states are qf1, qf2, and qf3. Minimize the DFA using either the algorithm described by Hopcroft & Ullman in the textbook or Hopcroft's algorithm (discussed in class after Phil had to leave). Show the result in the form of a transition graph.

state symbol
  a b
q0 qa qb
qa qf1 qab
qb qab qf2
qab qf3 qf3
qf1 qf1 qa
qf2 qf3 qf2
qf3 qf3 qf2


4. Below is a tabular representation of a DFA. Its initial state is q0 and its accepting states are q3 and q7. As in the preceding problem, minimize the DFA.

  state
symbol q0 q1 q2 q3 q4 q5 q6 q7 q8 q9 q10
0 q1 q2 q3 q4 q4 q0 q6 q6 q4 q8 q9
1 q2 q1 q3 q4 q7 q5 q5 q6 q9 q10 q10


5. Prove that the set { 0n | n is prime } is not regular.


6. Do several parts of Exercise 3.4 on page 72 of Hopcroft & Ullman. For those languages that are regular, good answers can be found in the form of DFA "constructions", as exemplified by the given solution for 3.4(b).