Summary: Homework 4 10 points
Note, these exercises may be done in groups of one, two, or three. Working with someone else is strongly
recommended. If more than one person is involved, list all the names on ONE set of answers. Groups may change
throughout the term. Working in groups is a BIG plus for you. Take advantage of it. If you work in groups, you must
work in the group for the ENTIRE assignment. It is considered cheating if you work with someone else for some of the
answers, but turn in an individual copy of the answers. It is an all or nothing situation. You can't work together on some
questions and alone on some. Sometimes I see an individual whose name is listed in two groups. This is strictly
forbidden and is considered cheating. You cannot work in two groups. Assignments are due at the beginning of class
and should be typed when possible.
1. For the NFA(non-deterministic finite automata) below, use the subset construction (discussed
in class) to create a DFA(deterministic finite automata). Arcs labeled with e consume no input.
2. The following grammar needs to be massaged in order to be acceptable for a predictive parse
table. In particular, left recursion needs to be eliminated and it needs to be left factored (see
class notes if you need a refresher on these definitions). Show the modified grammar.
U Ub | c
T aT | aX | z
3. Consider the context sensitive example below: