形式语言与自动机理论蒋宗礼
- 格式:pptx
- 大小:420.07 KB
- 文档页数:22
1.写出表示下列语言的正则表达式。
(吴贤珺02282047)⑴{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)*)*q为终态时的正则表达式:0*1(1*(0(10)*111*1)*(0(10)*00*1)*)*1q为终态时的正则表达式:0*11*0((10)*(111*11*0)*(00*11*0)*)*2q为终态时的正则表达式:0*11*0(10)*1(11*11*0((10)*(00*11*0)*)*1)*3q为终态时的正则表达式:0*11*0(10)*11(1*(11*0((00*11*0)*(10)*)*11)*)*4将以上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可以作为终态。
形式语言与自动机形式语言与自动机理论-蒋宗礼-第三章参考答案导读:就爱阅读网友为您分享以下“形式语言与自动机理论-蒋宗礼-第三章参考答案”的资讯,希望对您有所帮助,感谢您对的支持!因此我们只需要证明对任何的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所示。
形式语言与自动机答案蒋宗礼【篇一:形式语言第四章参考答案(蒋宗礼)】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.写出表示下列语言的正则表达式。
(吴贤珺02282047)⑴{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)*)*q为终态时的正则表达式:0*1(1*(0(10)*111*1)*(0(10)*00*1)*)*1q为终态时的正则表达式:0*11*0((10)*(111*11*0)*(00*11*0)*)*2q为终态时的正则表达式:0*11*0(10)*1(11*11*0((10)*(00*11*0)*)*1)*3q为终态时的正则表达式:0*11*0(10)*11(1*(11*0((00*11*0)*(10)*)*11)*)*4将以上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可以作为终态。
形式语言与自动机理论(第2版)作者:蒋宗礼、姜守旭第1章绪论11.1集合的基础知识21.1.1集合及其表示21.1.2集合之间的关系51.1.3集合的运算61.2关系121.2.1二元关系121.2.2等价关系与等价类131.2.3关系的合成141.2.4递归定义与归纳证明151.2.5关系的闭包181.3图191.3.1无向图191.3.2有向图211.3.3树231.4语言241.4.1什么是语言241.4.2形式语言与自动机理论的产生与作用25 1.4.3基本概念281.5小结35习题35第2章文法422.1启示432.2形式定义482.3文法的构造582.4文法的乔姆斯基体系682.5空语句792.6小结82习题82第3章有穷状态自动机863.1语言的识别863.2有穷状态自动机893.3不确定的有穷状态自动机1023.3.1作为对DFA的修改1023.3.2NFA的形式定义1043.3.3NFA与DFA等价1063.4带空移动的有穷状态自动机1103.5FA是正则语言的识别器1153.5.1FA与右线性文法1153.5.2FA与左线性文法1203.6FA的一些变形1223.6.1双向有穷状态自动机1223.6.2带输出的FA1233.7小结125习题126第4章正则表达式1314.1启示1314.2正则表达式的形式定义1334.3正则表达式与FA等价1354.3.1正则表达式到FA的等价变换1354.3.2正则语言可以用正则表达式表示1444.4正则语言等价模型的总结1504.5小结152习题153第5章正则语言的性质1565.1正则语言的泵引理1565.2正则语言的封闭性1625.3Myhill Nerode 定理与DFA的极小化170 5.3.1Myhill Nerode 定理1705.3.2DFA的极小化1805.4关于正则语言的判定算法1895.5小结190习题191第6章上下文无关语言1946.1上下文无关文法1956.1.1上下文无关文法的派生树1956.1.2二义性2026.1.3自顶向下的分析和自底向上的分析2056.2上下文无关文法的化简2076.2.1去无用符号2086.2.2去ε 产生式2126.2.3去单一产生式组2166.3乔姆斯基范式2196.4格雷巴赫范式2236.5自嵌套文法2296.6小结230习题230第7章下推自动机2357.1基本定义2357.2PDA与CFG等价2427.2.1PDA用空栈接受和用终止状态接受等价243 7.2.2PDA与CFG等价2467.3小结257习题257第8章上下文无关语言的性质2608.1上下文无关语言的泵引理2608.2上下文无关语言的封闭性2678.3上下文无关语言的判定算法2738.3.1L空否的判定2738.3.2L是否有穷的判定2748.3.3x是否为L的句子的判定2768.4小结278习题278第9章图灵机2809.1基本概念2819.1.1基本图灵机2829.1.2图灵机作为非负整函数的计算模型2899.1.3图灵机的构造2939.2图灵机的变形3009.2.1双向无穷带图灵机3009.2.2多带图灵机3049.2.3不确定的图灵机3069.2.4多维图灵机3089.2.5其他图灵机3109.3通用图灵机3139.4几个相关的概念3159.4.1可计算性3159.4.2P与NP相关问题3169.5小结316习题317第10章上下文有关语言32010.1图灵机与短语结构文法的等价性32010.2线性有界自动机及其与上下文有关文法的等价性323 10.3小结325习题325附录A教学设计327附录B缩写符号338词汇索引340参考文献348。
1.写出表示下列语言的正则表达式。
(吴贤珺02282047)⑴{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)*)*q为终态时的正则表达式:0*1(1*(0(10)*111*1)*(0(10)*00*1)*)*1q为终态时的正则表达式:0*11*0((10)*(111*11*0)*(00*11*0)*)*2q为终态时的正则表达式:0*11*0(10)*1(11*11*0((10)*(00*11*0)*)*1)*3q为终态时的正则表达式:0*11*0(10)*11(1*(11*0((00*11*0)*(10)*)*11)*)*4将以上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可以作为终态。
ij求索-百度文库2.1回答下面的问题:(周期律02282067)(1)在文法中,终极符号和非终极符号各起什么作用?/终结符号是一个文法所产生的语言中句子的中出现的字符,他决上了一个文法的产生语言中字符的范围。
/ 非终结符号又叫做一个语法变量,它表示一个语法范畴,文法中每一个产生式的左部至少要还有一个非终结符号,(二,三型文法要求更严,只允许左部为一个非终结符号)他是推导或归约的核心。
(2)文法的语法范畴有什么意义?开始符号所对应的语法范畴有什么特殊意义?/ 文法的非终结符号A所对应的语法范畴代表着一个集合L (A),此集合由文法产生式中关于A的产生式推导实现的/ 开始符号所对应的语法范畴则为文法G = (V, T, P, S}所产生的语言L (G)*={ vvl w e 厂且S =► w }(3)在文法中,除了的变量可以对应一个终极符号行的集合外,按照类似的对应方法,一个字符串也可以对应一个终极符号行集合,这个集合表达什么意义?/字符串对应的终极符号行集合表示这个字符串所能推导到的终极字符串集合,为某个句型的语言。
(4)文法中的归约和推导有什么不同?/ 推导:文法G = {V, T, P, S},如果则称gd在G中推导岀了汐5。
/ 归约:文法G={V, T, P, S},如果则称汐5在G中归约到*7》。
/ 这他们的左义,我个人理解两个槪念从不同角度看待文法中的产生式,推导是自上而下(从产生式的左边到右边),而归约是自下而上(从产生式的右边到左边),体现到具体实际中,如编译中语法分析时语法树的建立,递归下降,LL (1)等分析法采用自开始符号向下推导识別输入代码生成语法树,对应的LR (1), LALR等分析法则是采用自输入代码(相当于文法中语言的句子)自底向上归约到开始符号建立语法树,各有优劣。
(5)为什么要求左义语言的字母表上的语言为一个非空有穷集合?/ 菲空:根据字母表幕的立义:工°={£},£为字母表中0个字符组成的。
第三章作业答案1.已知DFA M1与M2如图3-18所示。
(敖雪峰 02282068)(1) 请分别给出它们在处理字符串1011001的过程中经过的状态序列。
(2) 请给出它们的形式描述。
Sq q1图3-18 两个不同的DFA解答:(1)M1在处理1011001的过程中经过的状态序列为q 0q 3q 1q 3q 2q 3q 1q 3; M2在处理1011001的过程中经过的状态序列为q 0q 2q 3q 1q 3q 2q 3q 1;(2)考虑到用形式语言表示,用自然语言似乎不是那么容易,所以用图上作业法把它们用正则表达式来描述:M1: [01+(00+1)(11+0)][11+(10+0)(11+0)]*M2: (01+1+000){(01)*+[(001+11)(01+1+000)]*}******************************************************************************* 2.构造下列语言的DFA( 陶文婧 02282085 ) (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,且x≠0时,x的首字符为1 }1.以0开头的串不被接受,故设置陷阱状态,当DFA在启动状态读入的符号为0,则进入陷阱状态2.设置7个状态:开始状态q s,q0:除以5余0的等价类,q1:除以5余1的等价类,q2:除以5余2的等价类,q3:除以5余3的等价类,q4:除以5余4的等价类,接受状态q t(8){x|x∈{0,1}+且x的第十个字符为1}(设置一个陷阱状态,一旦发现x的第十个字符为0,进入陷阱状态)(9){x|x∈{0,1}+且x以0开头以1结尾}(设置陷阱状态,当第一个字符为1时,进入陷阱状态)(10){x|x∈{0,1}+且x中至少含有两个1}(11){x|x∈{0,1}+且如果x以1结尾,则它的长度为偶数;如果x以0结尾,则它的长度为奇数}可将{0,1}+的字符串分为4个等价类。
第三章作业答案1.已知DFA M1与M2如图3-18所示。
(敖雪峰 02282068)(1) 请分别给出它们在处理字符串1011001的过程中经过的状态序列。
(2) 请给出它们的形式描述。
Sq q1图3-18 两个不同的DFA解答:(1)M1在处理1011001的过程中经过的状态序列为q 0q 3q 1q 3q 2q 3q 1q 3; M2在处理1011001的过程中经过的状态序列为q 0q 2q 3q 1q 3q 2q 3q 1;(2)考虑到用形式语言表示,用自然语言似乎不是那么容易,所以用图上作业法把它们用正则表达式来描述:M1: [01+(00+1)(11+0)][11+(10+0)(11+0)]*M2: (01+1+000){(01)*+[(001+11)(01+1+000)]*}******************************************************************************* 2.构造下列语言的DFA( 陶文婧 02282085 ) (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,且x≠0时,x的首字符为1 }1.以0开头的串不被接受,故设置陷阱状态,当DFA在启动状态读入的符号为0,则进入陷阱状态2.设置7个状态:开始状态q s,q0:除以5余0的等价类,q1:除以5余1的等价类,q2:除以5余2的等价类,q3:除以5余3的等价类,q4:除以5余4的等价类,接受状态q t(8){x|x∈{0,1}+且x的第十个字符为1}(设置一个陷阱状态,一旦发现x的第十个字符为0,进入陷阱状态)(9){x|x∈{0,1}+且x以0开头以1结尾}(设置陷阱状态,当第一个字符为1时,进入陷阱状态)(10){x|x∈{0,1}+且x中至少含有两个1}(11){x|x∈{0,1}+且如果x以1结尾,则它的长度为偶数;如果x以0结尾,则它的长度为奇数}可将{0,1}+的字符串分为4个等价类。