2019/10/30-作业08
1.设有 NFA M=( {0,1,2,3}, {a,b},f,0,{3} ),其中 f(0,a)={0,1} f(0,b)={0} f(1,b)={2} f(2,b)={3}
画出状态转换矩阵,状态转换图,并说明该NFA识别的是什么样的语言。
2.NFA 确定化为 DFA
1.解决多值映射:子集法
1). 上述练习1的NFA
2). P64页练习3
2.解决空弧:对初态和所有新状态求ε-闭包
1).
2).P50图3.6
答案:
1.画出状态转换矩阵,状态转换图,并说明该NFA识别的是什么样的语言。
状态转换矩阵:
a | b | |
0 | {0,1} | {0} |
1 | - | {2} |
2 | - | {3} |
3 | - | - |
状态转换图:
识别的语言:
L(M)= (a | b)* abb
2.1 解决多值映射:子集法
(1) 练习1的NFA转为DFA
状态矩阵:
a | b | ||
A | {0} | {0,1} | {0} |
B | {0,1} | {0,1} | {0,2} |
C | {0,2} | {0,1} | {0,3} |
D | {0,3} | {0,1} | {0} |
状态图:
识别的语言:
b*aa*(ba)*bb
(2) P64页练习3
状态矩阵:
0 | 1 | ||
A | {S} | {Q,V} | {Q,U} |
B | {Q,V} | {V,Z} | {Q,U} |
C | {V,Z} | {Z} | {Z} |
D | {Q,U} | {V} | {Q,U,Z} |
E | {V} | {Z} | |
F | {Q,U,Z} | {V,Z} | {Q,U,Z} |
G | {Z} | {Z} | {Z} |
状态图:
识别的语言:
(00((100) | (0 | 1))(0 | 1)*) | (1((00) | (11*0(0 | 1)*))(0 | 1)*)
2.2 解决空弧:对初态和所有新状态求ε-闭包
(1)
状态矩阵:
0 | 1 | 2 | ||
X | ε{A}={ABC} | ε{A}={ABC} | ε{B}={BC} | ε{C}={C} |
Y | {BC} | ε{B}={BC} | ε{C}={C} | |
Z | {C} | ε{C}={C} |
状态图:
识别的语言:
0*(11*2 | 2)2*
(2) P50图3.6
状态矩阵:
a |
b |
||
Q |
{01247} |
{1234678} |
{124567} |
W |
{1234678} |
{1234678} |
{1245679} |
X |
{124567} |
{1234678} |
{124567} |
Y |
{1245679} |
{1234678} |
{12456710} |
Z |
{12456710} |
{1234678} |
{124567} |
状态图:
识别的语言:
(a | bb*a)a*(ba)*bb((bb*aa*(ba)*bb)* | (aa*(ba)*bb)*)