CS547T SPRING 2007

ASSIGNMENT 3

   March 2007
 S  M Tu  W Th  F  S
       6  7  8  9 10
       assigned
11 12 13 14 15 16 17
                last date to email and get pre-test feedback
18 19 20 21 22 23 24
       due
	    midterm

1.  (20 points)

Define a deterministic counter machine (a DCM) as a machine that can make
a transition based on the state and the next character of input, that can
decide what state to move to, and whether to increment or decrement the
counter on each transition.  It can accept based on reaching a final state
and zeroing the counter (both must be true in order to accept).

2.  (20 points)

Show that any machine accepting just on the final state, regardless of the
counter value, can move to a new state that zeroes the counter, if lambda
transitions are allowed.  That is, define the DCM-lambda, and acceptance
based on final state and counter value.  Define the DCM that accepts just
on final state (this is different from the acceptance criterion above).
Prove that for any one of the latter machines, there exists one of the
former machines accepting the same language.

3.  (20 points)

Define a nondeterministic NCM (but not an NCM lambda) machine as a counter
machine that has choices in its transitions, but is otherwise like the DCM
in part 1.

4.  (20 points)

Show that your NCM can be reduced to a DCM just as a NFA can be reduced to
a DFA.

5.  (20 points)

Define a counter machine that can make a transition based on the
the state, the next character in the input, and the value of the counter.
Suppose delta need not be finite.  Argue that such a machine can accept
any language.