第三章课后作业
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
SaA AbAaBb BaA 首先给出相应的正规式方程组(+代替|) S=aA ………(1) A=bA+aB+b ………(2) B=aA ………(3) 将(3)代入(2)式得 A=(b+aa)A+b ………(4) 对(4)使用规则得 A=(b|aa)*b 带入(1)得正规文法所生成语言的正规式是 a(b|aa)*b
ቤተ መጻሕፍቲ ባይዱ
e
Y
1
a
0 b 1
c
1
d
0
e
1
Y
构造确定化后的DFA的状态矩阵
X 1 a 0 b 1
Q’ A B C D {X} {a,b,c} {b,c,d} {b,c} 1 {a,b,c} {b,c,d} {b,c,3} 0 {b,c} {b,c}
c
1
d
0
e
1
Y
{b,c,d} {b,c,e}
C
{1}
{0}
a
a
A b a
B b
a
A a b C
C
0
a
b a a
2
b b b b
a
3
a
1
a
b
4
(b)
5
已经是确定化,对其最小化。 {0,1},{2,3,4,5} {0,1}a={0,1} {0,1}b={2,4} {2,3,4,5}a={1,3,0,5} {0,1},{2,4},{3,5}
a 0 a 2 b
第三章课后作业解析
3.1 构造正规式相应的DFA
解题步骤: 1.由正规式R构造NFA 2.构造确定化后的DFA的状态矩阵(子集法) 3.生成确定化后的DFA的状态转换图 4.化简DFA
(1) 1(0|1)*101
由正规式构造NFA
X
1 1(0|1)*101
Y
(0|1)* 1 0 1
X X
a
c
d
3.9 试证明正规式(a|b)*与正规式(a*|b*)*是等价 的。
(a|b)*
(a*|b*)*
a
X
a,b 1
Y
X
2
1 3 b
Y
a,b Y
a,b Y
3.10 给出文法对应的正规式
S0A1B A1S1 B0S0 首先给出相应的正规式方程组(+代替|) S=0A+1B ………(1) A=1S+1 ………(2) B=0S+0 ………(3) 将(2)(3)代入(1)式得 S=01S+01+10S+10………(4) 对(4)使用规则得 S=(01|10)*(01|10) 即正规文法所生成语言的正规式是 (01|10)*(01|10)
a {1,3,2}
a 3 a 5 6 Y b b 4 b
b {1,4,2} {1,4,2} {1,4,6,2,Y} {1,5,4,2,6,Y}
{1,5,3,2,6,Y} {1,5,3,6,2,Y} {1,3,2}
E
F G
{1,4,6,2,Y}
{1,5,4,2,6,Y} {1,6,3,2,Y}
a {3}
b {1,2}
B
C D E F
{3}
{1,2} {4,5,Y} {6} {5,Y}
{3} {6} {6}
{4,5,Y}
{1,2} {5,Y} {5,Y} {5,Y}
a A b
B
b
D b
a a
E
a
C
b
F
b
b
X
a
a A b Y
b
b
(2)右线性文法: G=({X,A,Y},{a,b},P,X),其中P为: XbXaA AbY YaAbY
3.6 给出NFA等价的正规文法G
a A b a B a D b b C
G=({A,B,C,D},{a,b},P,A), 其中P为:
b
AaBbD BbC CaAbD DaBbD
3.7 给出与NFA等价的正规式R
0,1
A
X
1
B
1 0,1 A 0|1 A 1
C
B 1 C Y
a 3
{2,4}b={3,5} {3,5}b={2,4}
b
b
3.3 构造DFA,接收{0,1}上所有满足每个1都有0直 接跟在后面的字符串
(10|0)*
X
Q’
A B C {X,1,Y} {1,Y} {2}
0
1
1 0
Y
0
{1,Y} {1,Y} {1,Y}
1
{2} {2}
2
0 0 A 0
B
1 C
0
l l C 0 0 E
l
l 0 F
A
l
B
(2) (a|b)*(aa|bb)(a|b)*
由正规式构造NFA
a X
a
2 b
3
a
5
a
6 b Y
1
b
4
b
构造确定化后的DFA的状态矩阵
Q’ A B C D {X,1,2} {1,3,2} {1,5,3,2,6,Y} {1,4,2}
a a X 1 2 b
{1,6,3,2,Y}
{1,3,6,2,Y} {1,6,5,3,2,Y}
{1,5,6,4,2,Y}
{1,5,4,6,2,Y} {1,6,4,2,Y}
Q’ A B C D E {X,1,2} {1,3,2} {1,5,3,2,6,Y} {1,4,2} {1,4,6,2,Y} {1,5,4,2,6,Y}
0 A 0 C
1
1
3.4 给出文法G[S],构造相应最小的DFA。
S->aS|bA|b A->aS
S aS baS b (a ba) S b (a | ba) * b
Q’ A B {S} {A,D}
a S b D
a {S} {S} b {A,D}
b
a
A
a S
b a
B
3.5 给出文法对应的正规式
3.11 ( 1)
R=b*ab(b|ab)* 1 b
Q’ A {X,1,2} a {3} b {1,2}
b 2
X
a
3
b
4 a
5 b
Y
6
B
C D
{3}
{1,2} {4,5,Y}
{3} {6}
{4,5,Y}
{1,2} {5,Y}
E
F
{6}
{5,Y}
{6}
{5,Y}
{5,Y}
Q’ A {X,1,2}
E
F
{b,c,e} {b,c,d,Y} {b,c}
{b,c,d,Y} {b,c,d} {b,c,e}
Q’ A {X}
1 {a,b,c}
0
B
C D E F
{a,b,c}
{b,c,d} {b,c}
{b,c,d}
{b,c,d}
{b,c}
{b,c}
{b,c,d} {b,c,e}
{b,c,e} {b,c,d,Y} {b,c} {b,c,d,Y} {b,c,d} {b,c,e}
根据状态矩阵写状态转换图
1
A 1 B
1 C 0 E 1 0 0 1
1
0
D
0
F
最小化DFA
1 1 B 0 1 C 1 D 0 0
0
1
E
1 0 F
A
首先 M的状态分成两组:终态组{F},非终态组 {A,B,C,D,E} 考察{A,B,C,D,E},由于{A,B,C,D,E}1 属于{B,C,F}, 它既不包含在{A,B,C,D,E}中也不包含在{F}之中,因此, 应把{A,B,C,D,E}一分为二。因为状态 E 经 1 弧到达状 态 F,而状态A、B,C,D经 1 弧都到达 {B,C},因此,应 把 E 分出来,形成{A,B,C,D}、{E}、{F}。 {A,B,C,D}0 属于{D,E},它不含在任何划分中,因为状态 C 经 0弧到达状态 E,而状态{A,B,D}经 0 弧都到达 D, 因此,应把 C 分出来,形成{A,B,D}、{C}、{E}、{F}。 由于{A,B,D}1={B,C},它不包含在任何划分之中,因此, 应把{A,B,D}一分为二。因为状态B、D经 1 弧都到达 {C}, 经 0弧都到达 {D}因此,应把 A分出来,形成{A}、{B,D}、 {C}、{E}、{F}。{B,D}无法再分。 至此,整个分划含有四组: {A}、{B,D}、{C}、{E}、 {F} 。每个组都不可再分。
0 X A Y
X Y B Q’ {X,A,Y} {A,Y} {B} 0 {A,Y} {A,Y} {A,Y} 1 {B} {B} {B}
1
B
0 1
0
0
X
1
0 1
Y
0 1
x
B
1 0
B
1
3.2 确定化和最小化
a
0
(a)
a a,b
1
A B
Q’ {0} {0,1}
a {0,1} {0,1}
b {1} {1}
A a B a b b D b
a C
b F
b
b a E
a
a b
G
{A}{B}{D}{C,E,F,G}
a
A a B a b b D
a C b b
(3) ( (0|1)* | (11) )*
由正规式构造NFA
(0|1)* X 1 B A 1 1 Y
X
C 0 A 1 1 B
Y
X X
11
C
Y
(0|1)*11
Y
等价的正规式: R=(0|1)*11
3.8 (1)等价文法L(G’):
T → I|N I → A|B|C|IA|IB|IC|I1|I2|I3 N → 1|2|3|N1|N2|N3
<单词> T <标识符> I <整数> N
(2)有穷自动机:
M=({S,I,N,T},{1,2,3,A,B,C},f,S,{T}) f:f(S,A)=I f(S,B)=I f(S,C)=I f(S,1)=N f(S,2)=N f(S,3)=N f(I,A)=I f(I,B)=I f(I,C)=I f(I,1)=I f(I,2)=I f(I,3)=I f(I,ε)=T f(N,1)=N f(N,2)=N f(N,3)=N f(N,ε)=T
状态矩阵写状态转换图
F
G
{1,6,3,2,Y}
{1,6,5,3,2,Y}C
{1,6,4,2,Y}E
a
A b a B a b D b a C b b F E a a
a
b
G
b
a
最小化DFA
{A,B,D} {C,E,F,G} {A,B,D}a={B,C,B} -> {A,D} {B} {A,D}b={D,F} -> {A} {D} {C,E,F,G}a={C,G,G,E} {C,E,F,G}b={E,F,F,E}
构造确定化后的DFA的状态矩阵
Q’ 0 1
S
D E
状态矩阵写状态转换图
{X,A,C,Y}
{A,C,Y} {A,B,C,Y}
{A,C,Y}
{A,C,Y} {A,C,Y}
{A,B,C,Y}
{A,B,C,Y} {A,B,C,Y}
0 0 S 0 D 1
最小化DFA
0
S
1
E
1
1
(4) ( 0|11*0)*
a {1,3,2}B {1,5,3,2,6,Y}C {1,5,3,6,2,Y}C {1,3,2}B {1,6,3,2,Y}G {1,3,6,2,Y}G
b {1,4,2}D {1,4,2}D {1,4,6,2,Y}E {1,5,4,2,6,Y}F {1,5,6,4,2,Y}F {1,5,4,6,2,Y}F
ቤተ መጻሕፍቲ ባይዱ
e
Y
1
a
0 b 1
c
1
d
0
e
1
Y
构造确定化后的DFA的状态矩阵
X 1 a 0 b 1
Q’ A B C D {X} {a,b,c} {b,c,d} {b,c} 1 {a,b,c} {b,c,d} {b,c,3} 0 {b,c} {b,c}
c
1
d
0
e
1
Y
{b,c,d} {b,c,e}
C
{1}
{0}
a
a
A b a
B b
a
A a b C
C
0
a
b a a
2
b b b b
a
3
a
1
a
b
4
(b)
5
已经是确定化,对其最小化。 {0,1},{2,3,4,5} {0,1}a={0,1} {0,1}b={2,4} {2,3,4,5}a={1,3,0,5} {0,1},{2,4},{3,5}
a 0 a 2 b
第三章课后作业解析
3.1 构造正规式相应的DFA
解题步骤: 1.由正规式R构造NFA 2.构造确定化后的DFA的状态矩阵(子集法) 3.生成确定化后的DFA的状态转换图 4.化简DFA
(1) 1(0|1)*101
由正规式构造NFA
X
1 1(0|1)*101
Y
(0|1)* 1 0 1
X X
a
c
d
3.9 试证明正规式(a|b)*与正规式(a*|b*)*是等价 的。
(a|b)*
(a*|b*)*
a
X
a,b 1
Y
X
2
1 3 b
Y
a,b Y
a,b Y
3.10 给出文法对应的正规式
S0A1B A1S1 B0S0 首先给出相应的正规式方程组(+代替|) S=0A+1B ………(1) A=1S+1 ………(2) B=0S+0 ………(3) 将(2)(3)代入(1)式得 S=01S+01+10S+10………(4) 对(4)使用规则得 S=(01|10)*(01|10) 即正规文法所生成语言的正规式是 (01|10)*(01|10)
a {1,3,2}
a 3 a 5 6 Y b b 4 b
b {1,4,2} {1,4,2} {1,4,6,2,Y} {1,5,4,2,6,Y}
{1,5,3,2,6,Y} {1,5,3,6,2,Y} {1,3,2}
E
F G
{1,4,6,2,Y}
{1,5,4,2,6,Y} {1,6,3,2,Y}
a {3}
b {1,2}
B
C D E F
{3}
{1,2} {4,5,Y} {6} {5,Y}
{3} {6} {6}
{4,5,Y}
{1,2} {5,Y} {5,Y} {5,Y}
a A b
B
b
D b
a a
E
a
C
b
F
b
b
X
a
a A b Y
b
b
(2)右线性文法: G=({X,A,Y},{a,b},P,X),其中P为: XbXaA AbY YaAbY
3.6 给出NFA等价的正规文法G
a A b a B a D b b C
G=({A,B,C,D},{a,b},P,A), 其中P为:
b
AaBbD BbC CaAbD DaBbD
3.7 给出与NFA等价的正规式R
0,1
A
X
1
B
1 0,1 A 0|1 A 1
C
B 1 C Y
a 3
{2,4}b={3,5} {3,5}b={2,4}
b
b
3.3 构造DFA,接收{0,1}上所有满足每个1都有0直 接跟在后面的字符串
(10|0)*
X
Q’
A B C {X,1,Y} {1,Y} {2}
0
1
1 0
Y
0
{1,Y} {1,Y} {1,Y}
1
{2} {2}
2
0 0 A 0
B
1 C
0
l l C 0 0 E
l
l 0 F
A
l
B
(2) (a|b)*(aa|bb)(a|b)*
由正规式构造NFA
a X
a
2 b
3
a
5
a
6 b Y
1
b
4
b
构造确定化后的DFA的状态矩阵
Q’ A B C D {X,1,2} {1,3,2} {1,5,3,2,6,Y} {1,4,2}
a a X 1 2 b
{1,6,3,2,Y}
{1,3,6,2,Y} {1,6,5,3,2,Y}
{1,5,6,4,2,Y}
{1,5,4,6,2,Y} {1,6,4,2,Y}
Q’ A B C D E {X,1,2} {1,3,2} {1,5,3,2,6,Y} {1,4,2} {1,4,6,2,Y} {1,5,4,2,6,Y}
0 A 0 C
1
1
3.4 给出文法G[S],构造相应最小的DFA。
S->aS|bA|b A->aS
S aS baS b (a ba) S b (a | ba) * b
Q’ A B {S} {A,D}
a S b D
a {S} {S} b {A,D}
b
a
A
a S
b a
B
3.5 给出文法对应的正规式
3.11 ( 1)
R=b*ab(b|ab)* 1 b
Q’ A {X,1,2} a {3} b {1,2}
b 2
X
a
3
b
4 a
5 b
Y
6
B
C D
{3}
{1,2} {4,5,Y}
{3} {6}
{4,5,Y}
{1,2} {5,Y}
E
F
{6}
{5,Y}
{6}
{5,Y}
{5,Y}
Q’ A {X,1,2}
E
F
{b,c,e} {b,c,d,Y} {b,c}
{b,c,d,Y} {b,c,d} {b,c,e}
Q’ A {X}
1 {a,b,c}
0
B
C D E F
{a,b,c}
{b,c,d} {b,c}
{b,c,d}
{b,c,d}
{b,c}
{b,c}
{b,c,d} {b,c,e}
{b,c,e} {b,c,d,Y} {b,c} {b,c,d,Y} {b,c,d} {b,c,e}
根据状态矩阵写状态转换图
1
A 1 B
1 C 0 E 1 0 0 1
1
0
D
0
F
最小化DFA
1 1 B 0 1 C 1 D 0 0
0
1
E
1 0 F
A
首先 M的状态分成两组:终态组{F},非终态组 {A,B,C,D,E} 考察{A,B,C,D,E},由于{A,B,C,D,E}1 属于{B,C,F}, 它既不包含在{A,B,C,D,E}中也不包含在{F}之中,因此, 应把{A,B,C,D,E}一分为二。因为状态 E 经 1 弧到达状 态 F,而状态A、B,C,D经 1 弧都到达 {B,C},因此,应 把 E 分出来,形成{A,B,C,D}、{E}、{F}。 {A,B,C,D}0 属于{D,E},它不含在任何划分中,因为状态 C 经 0弧到达状态 E,而状态{A,B,D}经 0 弧都到达 D, 因此,应把 C 分出来,形成{A,B,D}、{C}、{E}、{F}。 由于{A,B,D}1={B,C},它不包含在任何划分之中,因此, 应把{A,B,D}一分为二。因为状态B、D经 1 弧都到达 {C}, 经 0弧都到达 {D}因此,应把 A分出来,形成{A}、{B,D}、 {C}、{E}、{F}。{B,D}无法再分。 至此,整个分划含有四组: {A}、{B,D}、{C}、{E}、 {F} 。每个组都不可再分。
0 X A Y
X Y B Q’ {X,A,Y} {A,Y} {B} 0 {A,Y} {A,Y} {A,Y} 1 {B} {B} {B}
1
B
0 1
0
0
X
1
0 1
Y
0 1
x
B
1 0
B
1
3.2 确定化和最小化
a
0
(a)
a a,b
1
A B
Q’ {0} {0,1}
a {0,1} {0,1}
b {1} {1}
A a B a b b D b
a C
b F
b
b a E
a
a b
G
{A}{B}{D}{C,E,F,G}
a
A a B a b b D
a C b b
(3) ( (0|1)* | (11) )*
由正规式构造NFA
(0|1)* X 1 B A 1 1 Y
X
C 0 A 1 1 B
Y
X X
11
C
Y
(0|1)*11
Y
等价的正规式: R=(0|1)*11
3.8 (1)等价文法L(G’):
T → I|N I → A|B|C|IA|IB|IC|I1|I2|I3 N → 1|2|3|N1|N2|N3
<单词> T <标识符> I <整数> N
(2)有穷自动机:
M=({S,I,N,T},{1,2,3,A,B,C},f,S,{T}) f:f(S,A)=I f(S,B)=I f(S,C)=I f(S,1)=N f(S,2)=N f(S,3)=N f(I,A)=I f(I,B)=I f(I,C)=I f(I,1)=I f(I,2)=I f(I,3)=I f(I,ε)=T f(N,1)=N f(N,2)=N f(N,3)=N f(N,ε)=T
状态矩阵写状态转换图
F
G
{1,6,3,2,Y}
{1,6,5,3,2,Y}C
{1,6,4,2,Y}E
a
A b a B a b D b a C b b F E a a
a
b
G
b
a
最小化DFA
{A,B,D} {C,E,F,G} {A,B,D}a={B,C,B} -> {A,D} {B} {A,D}b={D,F} -> {A} {D} {C,E,F,G}a={C,G,G,E} {C,E,F,G}b={E,F,F,E}
构造确定化后的DFA的状态矩阵
Q’ 0 1
S
D E
状态矩阵写状态转换图
{X,A,C,Y}
{A,C,Y} {A,B,C,Y}
{A,C,Y}
{A,C,Y} {A,C,Y}
{A,B,C,Y}
{A,B,C,Y} {A,B,C,Y}
0 0 S 0 D 1
最小化DFA
0
S
1
E
1
1
(4) ( 0|11*0)*
a {1,3,2}B {1,5,3,2,6,Y}C {1,5,3,6,2,Y}C {1,3,2}B {1,6,3,2,Y}G {1,3,6,2,Y}G
b {1,4,2}D {1,4,2}D {1,4,6,2,Y}E {1,5,4,2,6,Y}F {1,5,6,4,2,Y}F {1,5,4,6,2,Y}F