Let's do one more bit of practice
converting non-deterministic machines to deterministic ones.
Here I've written a non-deterministic machine.
It has ambiguity.
Right in state 1 there are 2 ways to go on a.
It also has epsilon transitions,
and I'll start making its deterministic equivalent down here.
Well, when we enter the non-deterministic machine,
we could only be in state 1, but after that we could see an a,
and if I see an a I could be in 2, 4,
or I could take the free epsilon transition to 5,
or I could keep going and take the free epsilon transition to 6.
I'll label my new state 2456
because it keeps track of everywhere that I could have my fingers
if I'm simulating this non-deterministic machine.
Now, should this state be an accepting state or not?
Well, remember that a finite state machine accepts if there's any path
to an accepting state, and 6 is one of our accepting states.
Because the original machine could accept a,
a, epsilon, epsilon, win, we want our new machine to also accept a.
A, win.
In my converted world, the state accepts if any of its corresponding
original states also accept.
Let's say that I'm in either 2, 4, 5, or 6 and I see a c.
If I'm in 2 and I see a c, I fall off the world.
If I'm in 4, fall off the world.
5, I go to 6, looking good.
6, fall off the world.
Here if I was in 2, 4, 5, or 6 and I see a c,
I end up just in state 6, and that's definitely an accepting state.
Now, there's some other ways to get out of 2, 4, 5, and 6,
and when we do, we might be in states 2 or 3.
Since 3 is an accepting state up there,
2 or 3 is an accepting state down here.
If I'm in 2 or 3, on a b from 2 I go to 3,
and c I'd fall off the world, so we'd end up in state 3.
If I'm in 2 or 3 and I see a c,
I must really have been in state 3, and I stay in state 3,
so either on b or c we end up in just state 3,
which is also an accepting state.
And if I'm in state 3, there's a self-loop back to state 3.
Now, I've filled out almost all of this deterministic equivalent.
But I forgot to label an edge.
Help me out.
As the quiz, what should the label for this edge be
so that this deterministic equivalent and this non-deterministic machine
accept exactly the same language?