00:02
We're given a non -deterministic finite state automaton, and we're asked to find a deterministic finite state automaton recognizes the same language as the non -deterministic one.
00:15
So the original machine was given in an exercise 44 of the book in this section.
00:22
In that exercise, we determined the language recognized by this machine is the set lambda comma 0, comma 1, union with 5.
00:39
1 star 0.
00:50
Now, to construct the deterministic machine, let s0 be a start state.
01:03
Now consider the empty string, we have that lambda is contained in the recognized language, so it follows that s0 should also be a final state.
01:22
Now suppose that the string starts with a 0.
01:39
Then we see that again, 0 is recognized.
01:43
By the language.
01:54
So it seems like you should remain at s0, which is already a finite state.
02:11
However, the problem with this is, then we would have that 0 would be recognized, which is not the case.
02:20
So we're actually going to move from s0 to a final state still, s1.
02:41
Now suppose that there are any bits following the 0.
02:44
Then we're going to move from s1 to a non -final state s2, since the string won't be recognized and remain at s2, since the string can never be recognized at that point.
03:24
So that's one case.
03:26
Let's consider another case.
03:28
Suppose that the input starts with a 1.
03:39
Now we know that one should be recognized, so we're going to move to a final state.
03:50
State s3.
03:53
This won't be the same as s2, because if you go to s2, then we won't be able to include any strings longer than one bit.
04:06
Now, the next bit is a 0.
04:21
Well, we have that 1 -0 is in fact recognized by the machine, so we should move on to another final state s -4...