形式语言自动机-上下文无关文法与下推自动机(四)

形式语言自动机-上下文无关文法与下推自动机(四)

ID:41355856

大小:537.06 KB

页数:23页

时间:2019-08-22

形式语言自动机-上下文无关文法与下推自动机(四)_第1页
形式语言自动机-上下文无关文法与下推自动机(四)_第2页
形式语言自动机-上下文无关文法与下推自动机(四)_第3页
形式语言自动机-上下文无关文法与下推自动机(四)_第4页
形式语言自动机-上下文无关文法与下推自动机(四)_第5页
资源描述:

《形式语言自动机-上下文无关文法与下推自动机(四)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、1CollegeofComputerScience&Technology,BUPT§4.5上下文无关文法与下推自动机上下文无关文法与下推自动机的等价性:PDA与上下文无关文法之间存在着对应关系。即:PDA(M)=>CFGCFG=>PDA(M)2CollegeofComputerScience&Technology,BUPT从上下文无关文法构造等价的下推自动机定理4.5.1(由CFG可导出PDA):设上下文无关文法G=(N,T,P,S),产生语言L(G),则存在PDAM,以空栈接受语言Lφ(M),使Lφ(M)=L(G)。证明:构造下推自动机M,使M按文法G的最左推导方式工作。3College

2、ofComputerScience&Technology,BUPT构造方法设CFGG=(N,T,P,S),构造一个空栈接受方式的PDAM=(Q,T,Γ,δ,q0,z0,F)其中Q={q},Γ=N∪T,q0=q,z0=S,F=φ(∵以空栈接受)即M=({q},T,NT,,q,S,F),转移函数定义如下:(1)对每一AN,(q,,A)={(q,)"A”P};(即将栈顶的A换为β)(2)对每一aT,(q,a,a)={(q,)}.(即若栈顶为终结符,则退栈)从上下文无关文法构造等价的下推自动机4CollegeofComputerScience&Technology,BU

3、PTqε,z0=S/β若S→β∈Pε,A/α若A→α∈Pa,a/εaT,从上下文无关文法构造等价的下推自动机用图形表示:例1对右边产生式所代表CFG,依上述方法构造的PDA为EEOE(E)vdO+({q},{v,d,+,,(,)},{E,O,v,d,+,},,q,E,φ),其中定义为(q,,E)={(q,EOE),(q,(E)),(q,v),(q,d)},{(q,+),(q,)},(q,,O)={(q,)},(q,v,v)=(q,d,d)={(q,)}(q,+,+)=(q,,)=(q,(,()=(q,),))=5CollegeofCom

4、puterScience&Technology,BUPT自顶向下的分析过程定理的物理意义:利用下推自动机进行自顶向下的分析,检查一个句子的最左推导过程。步骤如下:(1)初始时,将文法开始符号压入空栈.(2)如果栈为空,则分析完成.(3)如果栈顶为一非终结符,先将其从栈中弹出.选择下一个相应于该非终结符的产生式,并将其右部符号从右至左地一一入栈.如果没有可选的产生式,则转出错处理.(4)如果栈顶为一终结符,那么这个符号必须与当前输入符号相同,将其弹出栈,读下一符号,转第(2)步;否则,回溯到第(3)步.6CollegeofComputerScience&Technology,BUPT例2:利

5、用下推自动机进行自顶向下的分析过程EEOE(E)vdO+EEOEEOvEOEEE)(E)E)OEE)OvE)OE)+E))d)v(v+d)qε,z0=E/β若E→β∈Pε,O/*a,a/εa∊{(,),v,d,+,*}ε,O/+7CollegeofComputerScience&Technology,BUPT定理的证明证明思路欲证,对任何wT*,wL(G)wL(M).先证明如下结论,ifAw,then(q,w,A)├*(q,,).归纳于Aw的步数n.基础n=1,Aw必为产生式,(q,w,A)├(q,w,w)├*(q,,).归纳设第一步使用产生式

6、AX1X2…Xm,必有w=w1w2…wm,(q,w,A)├(q,w,X1X2…Xm)├*(q,w2…wm,X2…Xm)├*(q,w3…wm,X3…Xm)├*…├*(q,,).所以:ifSw,then(q,w,S)├*(q,,).即,wL(G)wL(M).8CollegeofComputerScience&Technology,BUPT定理的证明先证明如下结论,if(q,w,A)├*(q,,),thenAw.归纳于(q,w,A)├*(q,,)的步数n.归纳n>1,设第一步使用产生式AX1X2…Xm,可以将w分为w=w1w2…wm,满足(q,wi,Xi)├*

7、(q,,),所以:对任何wT*,if(q,w,S)├*(q,,),thenSw.即,wL(M)wL(G).因此,AX1X2…Xm,w1w2…wm=w无论Xi为终结符,还是非终结符,都有Xiwi.基础n=1,必有w=,且A为G的产生式,所以Aw.9CollegeofComputerScience&Technology,BUPT例:构造一个PDAM,使Lφ(M)=L(G)。其中G是我们

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。