- 1、本文档共16页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算理论习题答案CHAP2new
2.2 a. 利用语言A={ambncn | m,n(0}和A={anbncm | m,n(0}以及例3.20,证明上下文无关语言在交的运算下不封闭。
b. 利用(a)和DeMorgan律(定理1.10),证明上下文无关语言在补运算下不封闭。
证明:a.先说明A,B均为上下文无关文法,对A构造CFG C1
S(aS|T|(
T(bTc|(
对B,构造CFG C2
S(Sc|R|(
R(aRb
由此知 A,B均为上下文无关语言。
但是由例3.20, A∩B={anbncn|n(0}不是上下文无关语言,所以上下文无关语言在交的运算下不封闭。
b.用反证法。假设CFL在补运算下封闭,则对于(a)中上下文无关语言A,B,,也为CFL,且CFL对并运算封闭,所以也为CFL,进而知道为CFL,由DeMorgan定律=A∩B,由此A∩B是CFL,这与(a)的结论矛盾,所以CFL对补运算不封闭。
2.4和2.5 给出产生下述语言的上下文无关文法和PDA,其中字母表(={0,1}。
{w | w至少含有3个1}
S→A1A1A1A
A→0A|1A|(
{w | w以相同的符号开始和结束}
S→0A0|1A1
A→0A|1A|(
{w | w的长度为奇数}
S→0A|1A
A→0B|1B|(
B→0A|1A
{w | w的长度为奇数且正中间的符号为0}
S→0S0|1S1|0S1|1S0|0
{w | w中1比0多}
S→A1A
A→0A1|1A0|1A|AA|(
{w | w=wR}
S→0S0|1S1|1|0
空集
S→S
2.6 给出产生下述语言的上下文无关文法:
字母表{a,b}上a的个数是b的个数的两倍的所有字符串组成的集合。
S→bSaSaS|aSbSaS|aSaSbS|(
b.语言{anbn|n(0}的补集。见问题3.25中的CFG:
S→aSb|bY|Ta
T→aT|bT|(
c.{w#x | w, x({0,1}*且wR是x的子串}。
S→UV
U→0U0|1U1|W
W→W1|W0|#
V→0V|1V|(
d.{x1#x2#(#xk|k(1, 每一个xi({a,b}* , 且存在i和j使得xi=xjR}。
S→UVW
U→A|(
A→aA|bA|#A|#
V→aVa|bVb|#B|#
B→aB|bB|#B|#
W→B|(
2.8 证明上下文无关语言类在并,连接和星号三种正则运算下封闭。
A(B
方法一:CFG。设有CFG G1=(Q1,(,R1,S1)和G2=(Q2,(,R2,S2)且L(G1)=A, L(G2)=B。构造CFG G=(Q,(,R,S0),其中
Q= Q1(Q2({S0}, S0是起始变元,R= R1(R2({S0( S1|S2}.
方法二:PDA。
设P1=(Q1,(,(1,(1,q1,F1)识别A,P2=(Q1,(,(2,(2,q2,F2)是识别B。
则如下构造的P=(Q,(,(,(,q0,F)识别A(B,其中
Q=Q1(Q2({q0}是状态集,
(=(1((2,是栈字母表,
q0是起始状态,
F=F1(F2是接受状态集,
(是转移函数,满足对任意q(Q, a(((,b(((
((q,a,b)=
连接AB
方法一:CFG。设有CFG G1=(Q1,(,R1,S1)和G2=(Q2,(,R2,S2)且L(G1)=A, L(G2)=B。构造CFG G=(Q,(,R,S0),其中
Q= Q1(Q2({S0}, S0是起始变元,R= R1(R2({S0( S1S2}.
方法二:PDA。
设P1=(Q1,(,(1,(1,q1,F1)识别A,P2=(Q1,(,(2,(2,q2,F2)是识别B,而且P1满足在接受之前排空栈(即若进入接受状态,则栈中为空)这个要求。
则如下构造的P=(Q,(,(,(,q1,F)识别A(B,其中
Q=Q1(Q2是状态集,
(=(1((2,是栈字母表,
q1是起始状态,
F=F1(F2是接受状态集,
(是转移函数,满足对任意q(Q, a(((,b(((
((q,a,b)=
A*
方法一:CFG。设有CFG G1=(Q1,(,R1,S1),L(G1)=A。构造CFG G=(Q,(,R,S0),其中Q= Q1 ({S0}, S0是起始变元,R= R1({S0(S0S0|S1|(}.
方法二:PDA。
设P1=(Q1,(,(1,(1,q1,F1)识别A,而且P1满足在接受之前排空栈(即若进入接受状态,则栈中为空)这个要求。
则如下构造的P=(Q,(,(,(,q1,F)识别A*,其中
Q=Q1({q0}是状态集,
(=(1,是栈字母表,
q0是起始状态,
F=F1({q0}是接受状态集,
(是转移函数,满足对任意q(Q, a(((,b(((
((q,a,b)=
2.9 证明在3.1节开始部分给
您可能关注的文档
最近下载
- 2024华医网继续教育抗菌药物的临床合理应用与专项管理题库答案.docx VIP
- 站运游一体化课件.ppt
- 2023年江西中医药大学公共课《中国近代史纲要》期末试卷A(有答案).docx VIP
- 《职业卫生与职业医学》有机粉尘及所致肺部疾患.ppt
- 利用7805及7905设计一个输出为±(5-9)V_1A的直流可调稳压电源.doc
- 化工企业生产过程异常工况安全处置管理制度.docx
- 2024山东省《强化依法执业,加强医德医风建设》题库答案(共442题).docx VIP
- 商务英语核心词汇-3000词(详解版).docx
- DIN-EN-10152-CN欧洲标准 汽车钢电镀锌 定尺加工.doc VIP
- 幼小衔接课程模式的有效性探讨教学研究课题报告.docx
文档评论(0)