- 1、本文档共117页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算理论课件第三章,计算理论,计算理论导引,计算理论基础,计算理论导引pdf,桩基计算理论及实例,计算理论pdf,数学计算理论,地下结构计算理论,计算理论导论
上下文无关文法(CFG)在程序设计语言和编 译原理中有着重要的应用,因为上下文无关文法 可以用来阐述绝大多数的程序设计语言的句法结 构。此外上下文无关语言也可以作为描述语言翻 译方案的基础。 本章重点讨论: CFG的简化 CFG的两种范式 下推自动机(PDA)的概念 PDA与CFG之间的等价转换 上下文无关语言运算的封闭性 以及CFL的有关判定问题。 3.1 上下文无关文法的派生树(推导树) 一个上下文无关文法中的一个句型的派生过程可以用 —棵树来描述。 【例3-1.1】 给定文法G=({S,A},{a,b},P,S),其中 P: S?aAS|a, A?SbA|ba|SS。句型aabbaa的派生过程就可以 用一棵树来描述,如图3-1.1 所示。将此树的叶结点符号 从左到右读取下来构成的符 号串就是aabbaa。 1.派生树的定义 设文法 G =(VN,VT,P,S)是上下文无关文法, 如果一棵有序树满足下面四个条件,则它是棵派生树: (1) 它的每个结点标记的符号是(VN∪VT∪{ε}) 中的符号; (2) 根结点标记开始变元S; (3) 内结点标记的符号是变元,即是VN中的符号。 (4) 如果一个内结点标记为A,且X1,X2,…,Xk是A的从左 到右的所有子结点, 则A?X1X2…Xk是P中一个产生式。 (5) 如果一个结点标记符号是ε,则它是其父结点的唯 一儿子结点。 其中第(5)条是为了防止下面情况发生: 如产生式A?a(a是个终极符)被误认为 是A?aε或A?εa,而在派生树中被 画成如图3-2形式。 2.派生树的结果 设T是棵派生树,将此树的叶结点符号从左到右依次读 取下来构成的符号串就是此派生树的结果。 例如,图3-1.1派生树的结果就是aabbaa 。 3.派生树与句型的派生关系 设G =(VN,VT,P,S)是CFG,如果G中有派生S?*α, 则在G中必有一棵以α为结果的派生树。反之,如果G中 有一棵以α为结果的派生树,则G中也必有派生S ?* α。 可以说派生与派生树是一一对应的。 4.最左派生与最右派生 所谓最左派生,就是在一个派生的每一步都是对句型 中最左边的变元进行替换。 例如,例3-1中aabbaa的派生: S?aAS?aSbAS?aabAS?aabbaS?aabbaa , 此派生是最左派生。 所谓最右派生,就是在一个派生的每一步都是对句型 中最右边的变元进行替换。 S?aAS?aAa?aSbAa?aSbbaa?aabbaa, 此派生是最右派生。 5.上下文无关文法的二义性 设G是个CFG,如果它的某个句子有两棵不同构的派生 树,则称G是二义性的上下文无关文法。 【例3-1.2】 给定CFG G=({S},{a,b},P,S),其中P: S?aSbS|bSaS|ε。 句子abab的两棵不同构的派生树,如图3-1.3所示。 3.2 上下文无关文法的简化 一个上下文无关文法有时可以去掉一些符号,或者去 掉一些产生式以后,仍然和原来的文法等价,这就是所 谓文法的简化。 这里简化文法主要是指:去掉无用符号、去掉ε产生 式和去掉单一产生式。 1.去掉无用符号 定义:给定CFG G=(VN,VT,P,S),如果在G中存在派 生S ?*αXβ?*w,其中w∈VT*,X∈VN∪VT,则称 符号X是有用的,否则X是无用的。 简单地说,无用符号就是G中对任何w∈L(G)的派生中 都不会出现的符号。 【例3-2.1】给定文法G=({S,A,B,C},{a,b},P,S),其中P:S?AB|a, A?BC|a,C?b 。 G中有派生: 可见再往下就无法推导了,因而由S只能推出a,不能推 出其他符号串。所以此文法中,A、B、C、b都是无用的 符号,只有S和a是有用符号。 如何去掉无用符号?分两步走,使用两个引理,就可 以做到这一点。下面介绍这两个引理。 引理3-2.1 给定CFG G=(VN,VT,P,S),且L(G)≠Φ,可 以找到一个与G等价的CFG G’=(VN’,VT,P’,S),使得 每个A∈VN’,都有w∈VT*,且在G’中有A?*w。 证明:1)求VN’的算法: begin ⑴ OLDVN:=Φ ⑵ NEWVN:={A|A?w∈P 且w∈VT*} ⑶ While OLDVN≠NEWVN do begin ⑷ OLDVN:=NEWVN ⑸ NEWVN:= OLDVN∪{A|A?α∈P,且α∈(VT∪
您可能关注的文档
- 融资融券全攻略.ppt
- 融资融券功能说明.doc
- 融资融券基础知识篇.ppt
- 融资融券常见问题.ppt
- 课程章节配套案例.doc
- 货代必备-世界港口大全.doc
- 融资融券知识.ppt
- 融资融券研究周报110913.pdf
- 融资融券研究数据库2011V.pdf
- 融资融券练习题20110815.doc
- 2025年贵州工业职业技术学院高职单招高职单招英语2016-2024历年频考点试题含答案解析.docx
- 2025年西昌民族幼儿师范高等专科学校高职单招职业适应性测试近5年常考版参考题库含答案解析.docx
- 2025年西藏警官高等专科学校高职单招语文2018-2024历年参考题库频考点含答案解析.docx
- 2025年贵州工商职业学院高职单招职业技能测试近5年常考版参考题库含答案解析.docx
- 2025年贵州工商职业学院高职单招职业适应性测试近5年常考版参考题库含答案解析.docx
- 2025年贵州农业职业学院高职单招数学历年(2016-2024)频考点试题含答案解析.docx
- 2025年贵州工商职业学院高职单招高职单招英语2016-2024历年频考点试题含答案解析.docx
- 2025年贵州工商职业学院高职单招语文2018-2024历年参考题库频考点含答案解析.docx
- 2025年许昌职业技术学院高职单招数学历年(2016-2024)频考点试题含答案解析.docx
- 2025年许昌职业技术学院高职单招职业技能测试近5年常考版参考题库含答案解析.docx
最近下载
- 《幼儿园游戏化课程实施策略研究国内外文献综述》4300字.docx
- 高一人音版音乐教学:《欧洲与拉丁美洲音乐》教学设计.doc
- 电力机车制动机03.pptx VIP
- 电力机车制动机04.pptx VIP
- 四川省成都市成华区2022-2023学年九年级上学期期末化学试卷.docx VIP
- 2022-2023学年四川省成都市青羊区九年级上学期期末考试化学试卷含详解.pdf VIP
- 污水处理系统的防火防爆(最新版).docx VIP
- 四川省成都市学校2023-2024学年九年级上学期期末化学试卷(含解析).pdf VIP
- 53天天练六年级数学下册课堂练(人教)附答案解析.doc
- 中考数学备考策略与方法.pptx VIP
文档评论(0)