子集法相关的三个运算
(1)
状态
q
的
ε
闭包:
ε-closure(q)
从状态
q
出发,只经
ε
转换能到
达的所有状态的集合
(a) q
∈
ε-closure(q)
;
(b)
从
q
出发经任意条
ε
弧而能到达的任何状态
q‟
∈
ε-
closure(q)
(2)
状态集合
I
的
ε
闭包:
ε-closure(I)
{q‟|q‟
∈
ε-closure(q)
&
q
∈
I}
(3) I
a
=ε-closure(J)
a
∈
∑
,其中
J
为从
I
中任一状态出发经
输入符号
a(
可先经过
ε)
所能到达状态结点的全体。
Ia是
状态集I
的
a
弧转换
ε
闭包 J=
Move(I,a)
例子:
取
I
0
=ε-closure({0})={0,1,2,4,7}
标记
I
0
:ε-closure(Move(I
0
,a))=ε-closure({3,8})={1,2,3,4,6,7,8}=I
1
ε-closure(Move(I
0
,b))=ε-closure({5})={1,2,4,5,6,7}=I
2
标记
I
1
:ε-closure(Move(I
1
,a))={1,2,3,4,6,7,8}=I
1
ε-closure(Move(I
1
,b))={1,2,4,5,6,7,9}=I
3
标记
I
2
:ε-closure(Move(I
2
,a))={1,2,3,4,6,7,8}=I
1
ε-closure(Move(I
2
,b))={1,2,4,5,6,7}=I
2
标记
I
3
:ε-closure(Move(I
3
,a))={1,2,3,4,6,7,8}=I
1
ε-closure(Move(I
3
,b))={1,2,4,5,6,7,10}=I
4
标记
I
4
:ε-closure(Move(I
4
,a))={1,2,3,4,6,7,8}=I
1
ε-closure(Move(I
4
,b))={1,2,4,5,6,7}=I
2
最后得到的状态矩阵矩阵:
确定化后的DFA图
: