Theory of Computation Question

  1. 1. The problem statement, all variables and given/known data

    Give state diagrams of DFAs recognizing the following languages. In all parts the alphabet is {0,1}.

    {w | w has length at least 3 and its third symbol is a 0}

    2. Relevant equations

    If the final state only has one circle it is rejected, if two, accepted.

    3. The attempt at a solution

    [​IMG]

    I am just wondering if this is the most efficient way of doing this problem, or do I have too many states?

    Oh also, I forgot to add an arrow pointing to qs indicating the start.
     
    Last edited: Jan 28, 2011
  2. jcsd
  3. verty

    verty 1,935
    Homework Helper

    I think you'll agree that there may not be less than three states because one needs to track how much of the input has been seen. The only way to do this is to have independent states for the first three characters. Only on the third character may we check for the final 0.

    Is another state required? See if you can you argue that because an accepting state is required, and because none of the first three states may be accepting states, a fourth state is necessary.
     
Know someone interested in this topic? Share a link to this question via email, Google+, Twitter, or Facebook

Have something to add?