形式语言参考答案

合集下载

形式语言与自动机 形式语言与自动机理论-蒋宗礼-第三章参考答案

形式语言与自动机 形式语言与自动机理论-蒋宗礼-第三章参考答案

形式语言与自动机形式语言与自动机理论-蒋宗礼-第三章参考答案导读:就爱阅读网友为您分享以下“形式语言与自动机理论-蒋宗礼-第三章参考答案”的资讯,希望对您有所帮助,感谢您对的支持!因此我们只需要证明对任何的2NFA M1?(Q1,?,?1,F1,q0),都存在FAM2?(Q2,?,?2,F2,q0)与之等价。

对于任何的2NFA M1?(Q1,?,?1,F1,q0),构造FA M2?(Q2,?,?2,F2,q0),按三个方式构造?2:1.如果q?Q1,a??,?1(q,a)?{p,R},则?2(q,a)?p;2.如果q?Q1,a??,?1(q,a)?{p,S},则如果??1(p,a)?{o,R},则?2(q,a)?o;如果??1(p,a)?{o,S},则重复第二步;如果??1(p,a)?{o,L},则对于集合A = {r|b?Q1,?1(r,b)?(o,R)},?2(q,a)?r,r?A。

3.如果q?Q1,a??,?1(q,a)?{p,L},则设集合 A = {r|b?Q1,?1(r,b)?(p,R)},?2(q,a)?r,r?A*************************************************** ****************************28.证明定理3-8:Moore机与Mealy机等价(郭会02282015)证明:不妨设Moore机M1=(Q1,?,?,?1,?1,q01),Mealy机M2=(Q2,?,?,?2,?2,q02),则根据Moore机和Mealy机等价的定义知,必须证明:T1(x)??1(q0)T2(x),其中T1(x)和T2(x)分别表示M1和M2关于x的输出。

??Moore机M1,?Mealy机M2,使M2与M1等价(1)构造M2,?2??1,q02?q01,Q2?Q1?q?Q1?{q01},?1(q)?a,?q'?Q1且?b??,?1(q',b)=q,就构造?2(q',b)=a(2)证明?x??*,?1(q0)T2(x)?T1(x)不妨设x?x1x2……xn,则?i?N,(i?1,2……n)则M1的输出为:T1(x)??1(q0)?1(?1(q0,x1))……?1(?1((…?1(q0,x1),x2)…),xn)由题意可知?1(q0,x1),?1(?1(q0,x1),x2),…,?1(……?1 (?1(q0,x1),x2) xn) 均为Moore机中的状态,由(1)中的构造假设知,M2的输出为:T2(x)??2(q0,x1)?2(?2(q0,x1),x2)…?2(……?2(?2(q0,x1),x2) ? ?1(q0,x1)?1(?1(q0,x1),x2)…?1(……?1(?1(q0,x1),x2) xn) xn) ?T1(x)??1(q0)T2(x)??Mealy机M2,?Moore机M1,使M1与M2等价(1)构造M1,q01?q02Q1?Q2?{qij|??2(qi,a)?qj,其中qi,qj?Q2,a??}?1?{?|?(qi,a)?qij,?(qij,?)?qj其中?2(qi,a)?qj}?1?{?|?1(qi,a)?qij,?1(qij,?)?qj,?(qij)??2(qi,a) }(2)证明?x??*,T1(x)=?1(q0)T2(x)不妨设x?x1x2……xn,则?i?N,(i?1,2……n)则M1的输出为:T2(x)??2(?2(q0,x1))……?2(?2((…?2(q0,x1),x2)…),xn) 由题意可知?2(q0,x1),?2(?2(q0,x1),x2),…,?2(……?2 (?2(q0,x1),x2) xn) 均为Mealy机中的状态,由(1)中的构造假设知,M1的输出为:T1(x)??1(q0)?1(?2(q0,x1))?1(?1(q0,x1),x2)…?1(……?1(?1(q 0,x1),x2) xn)??1(q0)?2(?2(q0,x1))……?2(?2((…?2(q0,x1),x2)…),xn) ?T1(x)??1(q0)T2(x)综上所述,Moore机与Mealy机等价第三章作业答案1.已知DFA M1与M2如图3-18所示。

完整版形式语言与自动机课后习题答案部分.ppt

完整版形式语言与自动机课后习题答案部分.ppt

• pp.84:习题 7(1)
用自然语言描述下列文法定义的语言
G: AaaA|aaB
BBcc|D#cc
DbbbD|#
• 解题思路
– 观察每个产生式及其组合产生的子语言的特点; – 根据开始符的产生式将它们并起来就是整个文法产生的语言;
• 解答
(1) D产生式:DbbbD|# – 使用DbbbD可产生句型:(bbb)mD (m1); – 进一步使用D#可得:L(D)={(bbb)m#| m0}
• A|0A|1A;
– 产生语言{0x|x{0, 1}*}的文法
• S0A;
– G: S0A
A|0A|1A
精心整理
11
G FH
课后作业二 (cont.)
• 习题8(3)的解答
– 分析:语言的特点
• {11x11|x*}{111, 11};
– 产生语言{x|x{0, 1}*}的文法
• A|0A|1A;
– 习题 22 --- 前/后缀
– 习题 23 --- 前/后缀
– 习题 28(1)(2)(10) --- L的描述
精心整理
3
G FH
课后作业一 (cont.)
• pp.40:习题 21
– 判断集合是否字母表的依据
• 非空性
• 有穷性
• 可区分性:字母表中的字符两两互不相同
• 整体性或不可分性
– 解答:(1)、(2) 和(6) 是字母表,其它不是
– 产生子语言{11x11|x*}的文法
• S11A11 ;
– 产生子语言{111, 11}的文法
• S111|11;
– G: S11A11|111|11
A|0A|1A
其它答案 (1) G: S11A|111|11

《形式语言与自动机》(王柏、杨娟编著)课后习题答案-推荐下载

《形式语言与自动机》(王柏、杨娟编著)课后习题答案-推荐下载

P2
9.对应图(a)(b)的状态转换图写出正则式。(图略) (1) 由图可知 q0=aq0+bq1+a+ε
q1=aq2+bq1 q0=aq0+bq1+a =>q1=abq1+bq1+aaq0+aa =(b+ab) q1+aaq0+aa =(b+ab) *( aaq0+aa)
=>q0=aq0+b(b+ab) *( aaq0+aa ) +a+ε
(2) 由生成式得:
S=aA+B ①
A=bB+cC ② B=a+bB ③ C=D+abB ④ D=dB ⑤ 由③得 B=b*a ⑥ 将⑤⑥代入④ C=d+abb*a=d+ab+a ⑦ 将⑥⑦代入② A=b+a+c(d+b+a) ⑧ 将⑥⑧代入① S=a(b+a+c(d+ab+a))+b*a
=ab+a+acd+acab+a+b*a
4.对下列文法的生成式,找出其正则式 (1) G=({S,A,B,C,D},{a,b,c,d},P,S),生成式 P 如下:
S→aA S→B
A→abS A→bB
B→b B→cC
C→D D→bB
D→d
(2) G=({S,A,B,C,D},{a,b,c,d},P,S),生成式 P 如下:
S→aA S→B
P: S→aS S→bS S→ε
(2) 右线性文法 G=({S},{a,b},P,S)
P: S→aS S→bS S→abb

形式语言与自动机Chapter7练习参考解答

形式语言与自动机Chapter7练习参考解答

Chapter 7 练习参考解答Exercise 7.1.3 从以下文法出发:S → 0A0 | 1B1 | BBA → CB → S | AC → S | εa) 有没有无用符号?如果有的话去除它们。

b) 去除ε-产生式。

c) 去除单位产生式。

d) 把该文发转化为乔姆斯基范式。

参考解答:a)没有无用符.b) 所有符号S,A,B,C都是可致空的,消去ε-产生式后得到新的一组产生式:S → 0A0 | 1B1 | BB | B | 00 | 11A → CB → S | AC → Sc) 单元偶对包括:(A,A),(B,B),(C,C),(S,S),(A,C),(A,S),(A,B),(B,A),(B,C),(B,S),(C,A),(C,B),(C,S),(S,A),(S,B),(S,C),消去单元产生式后得到新的一组产生式S → 0A0 | 1B1 | BB | B | 00 | 11A → CB → S | AC → SS → 0A0 | 1B1 | BB | 00 | 11A → 0A0 | 1B1 | BB | 00 | 11B → 0A0 | 1B1 | BB | 00 | 11C → 0A0 | 1B1 | BB | 00 | 11d)先消去无用符号C,得到新的一组产生式:S → 0A0 | 1B1 | BB | 00 | 11A → 0A0 | 1B1 | BB | 00 | 11B → 0A0 | 1B1 | BB | 00 | 11引入非终结符C,D,增加产生式C → 0和D → 1,得到新的一组产生式:S → CAC | DBD | BB | CC | DDA → CAC | DBD | BB | CC | DDB → CAC | DBD | BB | CC | DDC → 0D → 1引入非终结符E,F,增加产生式E → CA和F → DB,得到满足Chomsky范式的一组产生式:S → EC | FD | BB | CC | DDA → EC | FD | BB | CC | DDB → EC | FD | BB | CC | DDE → CAF → DBC → 0D → 1Exercise 7.2.1(b)用CFL泵引理来证明下面的语言都不是上下文无关的:b) {a n b n c i | i ≤n}。

形式语言与自动机Chapter5练习参考解答

形式语言与自动机Chapter5练习参考解答

Chapter 5 练习参考解答Exercise 5.1.2 (c) 下面的文法产生了正则表达式0*1(0+1)*的语言:εε|1|0|01B B B A A BA S →→→试给出下列串的最左推导和最右推导:c) 00011。

参考解答:一个最左推导:S ⇒lm A1B ⇒lm 0A1B ⇒lm 00A1B ⇒lm 000A1B ⇒lm 0001B ⇒lm 00011B ⇒lm 00011一个最右推导:S ⇒rm A1B ⇒rm A11B ⇒rm A11 ⇒rm 0A11⇒rm 00A11⇒rm 000A11 ⇒rm 00011! Exercise 5.1.3 证明任何正则语言都是上下文无关语言。

提示:通过对正则表达式中的运算符的数目进行归纳的方法来构造CFG 。

参考解答:对于任何正规表达式R ,归纳于R 中算符的数目n 构造如下产生式集合P(R),相应的开始符号为S(R):基础:n=0.(1)R 为ε,则任选非终结符A ,令P(R)只包含A →ε,以及S(R)为A ;(2)R 为φ,令P(R) 为空集;(3)R 为a ,则任选非终结符A ,令P(R)只包含A →a ,以及S(R)为A ; 基础:n>0.(1)R为R1+R2,则适修改非终结符的名字,使得P(R1)与P(R2)中的所有非终结符没有重名,任选不出现在P(R1)⋃P(R2)中的非终结符A,令P(R)= P(R1) ⋃P(R2)⋃{ A→ S(R1), A→ S(R2) },并且,令S(R)为A;(2)R为R1R2,则适修改非终结符的名字,使得P(R1)与P(R2)中的所有非终结符没有重名,任选不出现在P(R1)⋃P(R2)中的非终结符A,令P(R)= P(R1) ⋃P(R2)⋃{ A→ S(R1)S(R2) };并且,令S(R)为A;(3)R为R1*,任选不出现在P(R1) 中的非终结符A,令P(R)= P(R1) ⋃{ A→ AS(R1) , A→ε };并且,令S(R)为A.设L为正规语言,R为正规表达式,且有L=L(R). 令上下文无关文法G 的产生式集合为上述归纳过程所得到的P(R),以及G的开始符号为S(R). 可以归纳证明L(G)=L(R)=L.! Exercise 5.1.4 (选做)如果一个CFG的每个产生式的体都最多只有一个变元,并且该变元总在最右端,那么该CFG称做右线性的。

形式语言第四章参考答案(蒋宗礼)

形式语言第四章参考答案(蒋宗礼)

1.写出表示下列语言的正则表达式。

⑴ {0, 1}*。

解:所求正则表达式为:(0+1)*。

⑵ {0, 1}+。

解:所求正则表达式为:(0+1)+。

⑶ { x│x∈{0,1}+ 且x中不含形如00的子串 }。

解:根据第三章构造的FA,可得所求正则表达式为:1*(01+)*(01+0+1)。

⑷ { x│x∈{0,1}*且x中不含形如00的子串 }。

解:根据上题的结果,可得所求正则表达式为:ε+1*(01+)*(01+0+1)。

⑸ { x│x∈{0,1}+ 且x中含形如10110的子串 }。

解:所求正则表达式为:(0+1)*10110(0+1)*。

⑹ { x│x∈{0,1}+ 且x中不含形如10110的子串 }。

解:根据第三章的习题,接受x的FA为:要求该FA对应的正则表达式,分别以q0、q1、q2、q3、q4为终结状态考虑:q为终态时的正则表达式:(0*(11*0(10)*(ε+111*11*0(10)*)0)*)*q1为终态时的正则表达式:0*1(1*(0(10)*111*1)*(0(10)*00*1)*)*q2为终态时的正则表达式:0*11*0((10)*(111*11*0)*(00*11*0)*)*q3为终态时的正则表达式:0*11*0(10)*1(11*11*0((10)*(00*11*0)*)*1)*q4为终态时的正则表达式:0*11*0(10)*11(1*(11*0((00*11*0)*(10)*)*11)*)*将以上5个正则表达式用“+”号相连,就得到所要求的正则表达式。

⑺ { x│x∈{0,1}+ 且当把x看成二进制数时,x模5与3同余和x为0时,│x│=1且x≠0时,x的首字符为1}。

解:先画出状态转移图,设置5个状态q0、q1、q2、q3、q4,分别表示除5的余数是0、1、2、3、4的情形。

另外,设置一个开始状态q.由于要求x模5和3同余,而3模5余3,故只有q3可以作为终态。

由题设,x=0时,│x│=1,模5是1,不符合条件,所以不必增加关于它的状态。

形式语言与自动机答案蒋宗礼

形式语言与自动机答案蒋宗礼

形式语言与自动机答案蒋宗礼【篇一:形式语言第四章参考答案(蒋宗礼)】p> 解:所求正则表达式为:(0+1)*。

+⑵ {0, 1}。

解:所求正则表达式为:(0+1)+。

⑶ { x│x∈{0,1}且x中不含形如00的子串 }。

解:根据第三章构造的fa,可得所求正则表达式为:1*(01+)*(01+0+1)。

⑷ { x│x∈{0,1}*且x中不含形如00的子串 }。

++ +q1为终态时的正则表达式:0*1(1*(0(10)*111*1)*(0(10)*00*1)*)* q2为终态时的正则表达式:0*11*0((10)*(111*11*0)*(00*11*0)*)*q3为终态时的正则表达式:0*11*0(10)*1(11*11*0((10)*(00*11*0)*)*1)* q4为终态时的正则表达式:0*11*0(10)*11(1*(11*0((00*11*0)*(10)*)*11)*)*将以上5个正则表达式用“+”号相连,就得到所要求的正则表达式。

⑺ { x│x∈{0,1}且当把x看成二进制数时,x模5与3同余和x为0时,│x│=1且x≠0时,x的首字符为1}。

解:先画出状态转移图,设置5个状态q0、q1、q2、q3、q4,分别表示除5的余数是0、1、2、3、4的情形。

另外,设置一个开始状态q.由于要求x模5和3同余,而3模5余3,故只有q3可以作为终态。

由题设,x=0时,│x│=1,模5是1,不符合条件,所以不必增加关于它的状态。

下面对每一个状态考虑输入0和1时的状态转移。

q: 输入1,模5是1,进入q1。

+q0: 设x=5n。

输入0,x=5n*2=10n,模5是0,故进入q0输入1,x=5n*2+1=10n+1,模5是1,故进入q1q1:设x=5n+1。

输入0,x=(5n+1)*2=10n+2,模5是2,故进入q2输入1,x=(5n+1)*2+1=10n+3,模5是3,故进入q3 q2:设x=5n+2。

形式语言与自动机理论--第三章参考答案

形式语言与自动机理论--第三章参考答案

第三章作业答案1.已知DFA M1与M2如图3-18所示。

(xxxx 02282068) (1) 请分别给出它们在处理字符串1011001的过程中经过的状态序列。

(2) 请给出它们的形式描述。

Sq q1q q图3-18 两个不同的DFA解答:(1)M1在处理1011001的过程中经过的状态序列为q0q3q1q3q2q3q1q3;M2在处理1011001的过程中经过的状态序列为q0q2q3q1q3q2q3q1;(2)考虑到用形式语言表示,用自然语言似乎不是那么容易,所以用图上作业法把它们用正则表达式来描述:M1: [01+(00+1)(11+0)][11+(10+0)(11+0)]* M2: (01+1+000){(01)*+[(001+11)(01+1+000)]*} *******************************************************************************2.构造下列语言的DFA( xx02282085 ) (1){0,1}*,1(2){0,1}+,1(3){x|x{0,1}+且x 中不含00的串}(设置一个陷阱状态,一旦发现有00的子串,就进入陷阱状态)(4){ x|x{0,1}*且x中不含00的串}(可接受空字符串,所以初始状态也是接受状态)(5){x|x{0,1}+且x中含形如10110的子串}(6){x|x{0,1}+且x中不含形如10110的子串}(设置一个陷阱状态,一旦发现有00的子串,就进入陷阱状态)(7){x|x{0,1}+且当把x看成二进制时,x模5和3同余,要求当x为0时,|x|=1,且x0时,x的首字符为1 }1.以0开头的串不被接受,故设置陷阱状态,当DFA在启动状态读入的符号为0,则进入陷阱状态2.设置7个状态:开始状态qs,q0:除以5余0的等价类,q1:除以5余1的等价类,q2:除以5余2的等价类,q3:除以5余3的等价类,q4:除以5余4的等价类,接受状态qt3.状态转移表为(8){x|x{0,1}+且x的第十个字符为1}(设置一个陷阱状态,一旦发现x的第十个字符为0,进入陷阱状态)(9){x|x{0,1}+且x以0开头以1结尾}(设置陷阱状态,当第一个字符为1时,进入陷阱状态)(10){x|x{0,1}+且xxx至少含有两个1}(11){x|x{0,1}+且如果x以1结尾,则它的xx为偶数;如果x以0结尾,则它的xx为奇数}可将{0,1}+的字符串分为4个等价类。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2.1回答下面的问题: (周期律 02282067) (1)在文法中,终极符号和非终极符号各起什么作用?✓ 终结符号是一个文法所产生的语言中句子的中出现的字符,他决定了一个文法的产生语言中字符的范围。

✓ 非终结符号又叫做一个语法变量,它表示一个语法范畴,文法中每一个产生式的左部至少要还有一个非终结符号,(二,三型文法要求更严,只允许左部为一个非终结符号)他是推导或归约的核心。

(2)文法的语法范畴有什么意义?开始符号所对应的语法范畴有什么特殊意义? ✓ 文法的非终结符号A 所对应的语法范畴代表着一个集合L (A ),此集合由文法产生式中关于A 的产生式推导实现的✓ 开始符号所对应的语法范畴则为文法G = {V ,T ,P ,S}所产生的语言L (G )={w S T w w **|⇒∈且}(3)在文法中,除了的变量可以对应一个终极符号行的集合外,按照类似的对应方法,一个字符串也可以对应一个终极符号行集合,这个集合表达什么意义?✓ 字符串对应的终极符号行集合表示这个字符串所能推导到的终极字符串集合,为某个句型的语言。

(4)文法中的归约和推导有什么不同?✓ 推导:文法G = {V ,T ,P ,S},如果,)(,,* T VP ∈∈→δγβα则称γαδ在G 中推导出了γβδ。

✓ 归约:文法G = {V ,T ,P ,S},如果,)(,,*T VP ∈∈→δγβα则称γβδ在G 中归约到γαδ。

✓ 这他们的定义,我个人理解两个概念从不同角度看待文法中的产生式,推导是自上而下(从产生式的左边到右边),而归约是自下而上(从产生式的右边到左边),体现到具体实际中,如编译中语法分析时语法树的建立,递归下降,LL (1)等分析法采用自开始符号向下推导识别输入代码生成语法树,对应的LR (1),LALR 等分析法则是采用自输入代码(相当于文法中语言的句子)自底向上归约到开始符号建立语法树,各有优劣。

(5)为什么要求定义语言的字母表上的语言为一个非空有穷集合? ✓ 非空:根据字母表幂的定义:εε,}{0∑=为字母表中0个字符组成的。

这样,当字母表中没有字符的情况,字母表也有一个元素,字母表为空就没有意义,而且,如果字母表为空,将无法定义其上的语言,使得理论体系不严密。

✓ 有穷:我们将语言抽象成形式语言的目的就是为了有穷的表示无限的语言,在此基础上我们才定义了字母表和语言,如果字母表为无穷的,他就违背了我们研究问题的初衷,这也使得研究失去意义(6)任意给定一个字母表∑,该字母表上的语言都具有有穷描述吗?为什么?✓ 错误,因为一个字母表上有不可数无穷多个语言,而有穷表示只可能是可数无穷多个,又因为不可数无穷集和可数无穷集不是一一对应的,所以存在这样的语言,他不存在有穷表示。

(7)请总结一下,在构造文法时,可以从哪几个方面入手? ✓ 我们可以将其类比于软件工程中的概念:-)✓ 首先,也是最重要的一点,需求分析,我们需要知道需要构造的语言的特点,具体表现形式,以及一些需要注意的细节,通过一些特例提炼特点。

✓ 其次,概要设计,将语言从具体中抽象到符号上,按照其特性将其划分类别。

✓ 再次,详细设计,将每一部分抽象的成果具体化,将所有细节符号化 ✓ 再次,编码,将详细设计的结果用文法符号的语言表示出来 ✓ 最后,测试,找出边缘数据,特殊数据进行测试。

(8)按照文法的乔姆斯基体系,文法被分为几类?各有什么样的特点? 分为四类:✓ 文法G = {V ,T ,P ,S},对应的L(G)则为0型文法或短语结果文法。

✓ 如果对于P ∈→∀βα,均有αβ≥成立,则称G为1型文法或上下文有关文法,对应的L(G)称为1型语言。

✓ 如果对于P ∈→∀βα,均有αβ≥成立,且V ∈α成立,则称G为2型文法,或上下文无关文法,对应的L(G)为2型语言。

✓ 如果对于P ∈→∀βα,所有βα→均有:wB A w A →→或成立,其中,,,+∈∈T w V B A 则称G为3型文法,或正则文法,对应的L(G)称3型语言。

(9)什么叫左线性文法?什么叫右线性文法?什么叫线性文法✓ 文法G = {V ,T ,P ,S},如果对于P ∈→∀βα,所有βα→均有:wBxA w A →→或成立,,,,,*T w x V B A ∈∈则称G为线性文法。

✓ 文法G = {V ,T ,P ,S},如果对于P ∈→∀βα,所有βα→均有:wBA w A →→或成立,其中,,,+∈∈T w VB A 则称G为右线性文法。

✓ 文法G = {V ,T ,P ,S},如果对于P ∈→∀βα,所有βα→均有:BwA w A →→或成立,其中,,,+∈∈T w VB A 则称G为左线性文法。

(10)既然已经定义2-10中允许RL 包含空语句ε,那么定理2-6和定理2-7还有什么意义?✓此为定义与定理的区别,定义2-10是针对文法G是RG的情况下,定义其产生式加上εS后仍为RG,G的语言仍为RL,而定理2-6和定理2-7针对的前提条件是如果→L为RL,他们都是通过定义2-10证明得到的,可以在以后的推论中直接应用的。

******************************************************************************* 2. 设L = { 0n | n ≥1 },试构造满足要求的文法G.(1)G是RG.(2)G是CFG, 但不是RG.(3)G是CSG, 但不是CFG.(4)G是短语结构文法,但不是CSG.解答:1:S→0|0S2:S→0|0S|SS3:S→0|0S|ASAS→SAAS→0A0A→S00AS→004:S→0|0S|ASAS→SA|ABBABB→ASAB→A|ε******************************************************************************* 3.设文法G的产生式集如下,试给出句子id+id*id的两个不同的推导和两个不同的归约E→id|c|+E|-E|E+E|E-E|E*E|E/E|E**E|Fun(E) (褚颖娜02282072)推导:(1)E=>E+E=>E+E*E=>E+E*id=> E+id*id=>id+id*id(2)E=>E*E=>E*id=>E+E*id=>E+id*id=>id+id*id归约:(1)id+id*id<= E+id*id<= E+E*id<= E+E*E <=E+E<=E(2)id+id*id<= E+id*id<= E+E*id<=E*id<= E*E<=E****************************************************************************** 2.4 设文法G的产生式集如下,试给出句子aaabbbccc的至少两个不同的推导和至少两个不同的归约(02282081刘秋雯)bB→bbCB→BCbC→bccC→cc解:推导一:S→aBC|aSBCaB→abS=>aSBC=>aaSBCBC=>aaaBCBCBC=>aaabCBCBC=>aaabBCCBC=>aaabbCCBC=>aaabbCBCC=>aaabbBCCC=>aaabbbCCC=>aaabbbcCC=>aaabbbccc推导二:S=>aSBC=>aaSBCBC=>aaaBCBCBC=>aaaBBCCBC=>aaaBBCBCC=>aaabbCBCC=>aaabbBCCC=>aaabbbCCC=>aaabbbcCC=>aaabbbccc归约一、归约二分别为推导一和推导二的逆过程******************************************************************************* 5 句子abeebbeeba的一个推导如下:(陈伟芳学号??)S=>aAa 使用产生式S→aAa=>aSSa 使用产生式A→SS=>abAbSa 使用产生式S→bAb=>abSSbSa 使用产生式A→SS=>abeSbSa 使用产生式S→e=>abeebSa 使用产生式S→e=>abeebbAba 使用产生式S→bAb=>abeebbSSba 使用产生式A→SS=>abeebbeSba 使用产生式S→e=>abeebbeeba 使用产生式S→e不能给出abeebbeeb的归约,因为由文法G中产生式推出的句子只有三种情况:头尾都是a,头尾都是b,或者只有一个e,而abeebbeeb上面三个条件都不符合,所以它不是文法G 的一个句子,当然也就不能给出它的一个归约了。

*******************************************************************************2.6 设文法G的产生式集如下,请给出G的每个语法范畴代表的集合.S→aSa|aaSaa|aAaA→bA|bbbA|bBB→cB|cCC→ccC|DDD→dD|d解:set(D)={d}+set(C)={ c2n d m|m≥2 n≥0}set(B)={ c n d m |m≥2 n≥1}set(A)={ b p c n d m | p≥1, m≥2, n≥1}set(S)={ a q b p c n d m a q| p≥1 ,m≥2, n≥1, q≥1}******************************************************************************* 7.给定如下文法,请用自然语言描述它们定义的语言。

(吴贤珺02282047)⑴A→aaA│aaBB→Bcc│D#ccD→bbbD│#解:该语言由四部分组成:第一部分是偶数个a(至少有两个),第二部分是3的倍数个b (可以是0个),第三部分是两个“#”号,第四部分是偶数个c(至少有两个)。

⑵A→0B│1B│2BB→0C│1C│2CC→0D│1D│2D│0│1│2D→0B│1B│2B解:该语言的句子是字母表∑={0,1,2}上所有长度为3的倍数的字符串,且非空。

⑶A→0B│1B│2BB→0C│1B│2BC→0E│1D│2D│0│1│2D→0C│1B│2BE→0E│1D│2D│0│1│2解:观察发现C和E所对应产生式右部是相同的。

相关文档
最新文档