- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第二章语境语法
第2章 上下文无关文法;上下文无关文法的应用;上下文无关文法的应用;文法的形式定义;文法的类型;文法的类型;文法的类型;上下文无关文法概述 ;上下文无关文法概述 ;上下文无关文法(例子) ;上下文无关文法的形式化定义;上下文无关文法的推导和派生;上下文无关文法的形式化定义;上下文无关文法举例;上下文无关语言与高级程序语言;上下文无关语言与高级程序语言;上下文无关语言与高级程序语言;形式语言与自然语言;设计上下文无关文法;设计上下文无关文法;基本的语法分析方法;基本的语法分析方法;歧义性概述;歧义性概述;歧义性例子;歧义性的形式化描述;上下文无关歧义文法G2;歧义派生语法树1;歧义派生语法树2;上下文无关文法的化简;无用字符;无用字符算法;无用字符算法;无用字符;空产生式;空产生式(反例);空产生式算法;空产生式(例子);空产生式;单产生式;单产生式的两种情况;单产生式(例子1);单产生式(例子2);单产生式;乔姆斯基范式;乔姆斯基范式;例子2.7;例子2.7;乔姆斯基范式(例子);格雷巴赫范式;格雷巴赫范式;格雷巴赫范式;格雷巴赫范式;下推自动机;PDA结构示意图;PDA基本结构;例子;PDA可以是非确定型的,确定型PDA与非确定型PDA在语言识别能力上不相同,非确定型PDA能识别确定型PDA不能识别的一些语言,这与(非)确定型有穷自动机不相同。
非确定型下PDA等价于上下文无关文法 。;下推自动机M被定义为七元组(Q,?,?,?,q0,Z0,F)(以终止状态接受语言),或者(Q,?,?,?,q0,Z0,?)(以空栈方式接受语言),这里Q,?,?和F都是有穷集
Q是状态集
?是输入字母表
?栈字符表
q0?Q是起始状态
F?Q是接受状态(终止状态)集
?是状态转移函数
Z0是初始栈顶符号
?:Q???????P(Q???*) ??=?∪{?} ??=?∪{?};δ(q,a,Z)={(p1,r1),(p2,r2),…,(pm,rm)}
表示M在状态q,栈顶符号为Z时,读入字符a,对于i=1,2,…,m,可以选择地将状态变成pi,并将栈顶符号Z弹出,将γi中的符号压入栈,然后将读头向右移动一个带方格而指向输入字符串的下一个字符 ;δ(q,ε,Z)={(p1,r1),(p2,r2),…,(pm,rm)}
表示M进行一次ε-移动(空移动),即M在状态q,栈顶符号为Z时,无论输入符号是什么,对于i=1,2,…,m,可以选择地将状态变成pi,并将栈顶符号Z弹出,将ri中的符号从右到左依次压入栈,读头不移动 ;下推自动机的瞬像是一个三元组(q,w,r),其中q表示当前状态,w表示输入串中待扫描的子串,r表示下推栈中当前的内容(栈字符串)
若(p,β)∈δ(q,a,Z),则有一步瞬像推导(q,aw,Zr)→ (p,w,βr)。若用→*表示下推自动机的若干步推导,则
以空栈方式接受语言的的下推自动机M所接受的语言为
N(M)={w∈?*|(q0,w,Z0)→*(p,ε,ε)}
以终止状态接受语言的的下推自动机M所接受的语言为
N(M)={w∈?*|(q0,w,Z0)→*(p,ε,r),p∈F};一台下推自动机M= (Q,?,?,?,q0,F)的计算过程如下:
它接受输入ω,如果能够把ω写成ω=ω1ω2?ωm,这里ωi∈??,并且存在序列r0,r1,?,rm∈Q和字符串序列s0,s1,?,sm∈?*,满足下面三个条件,字符串si是M在计算的接受分支中的栈内容序列
r0=q0,且s0=ε,表示M从初始状态和空栈开始
对于i=0,1,?,m-1,有(ri+1,b)∈δ(ri,ωi+1,a),其中si=at,si+1=bt,a,b∈?ε,和t∈?*
rm∈F;定理1:若语言L被一个以终止状态方式接受语言的PDA M2接受,当且仅当L被一个以空栈方式接受语言的PDA M1接受;一个例子;一个例子 ;例2.9 : L={0n1n|n?0 }
背景: 检查左右括号(0,1)是否配对
PDA 首先把 “$0n” 推入栈.
$ 栈底符号,表示后来压入栈的存款用完了
然后,当读到“1n”, 0被弹出.
栈顶对比,左右括号配对,则同归于尽
最后, 如果“$”留在栈顶,则接受;一个记号;PDA状态图描述;q1;q1;问题:设计一个下推自动机接受语言L1={wcwR|w{0,1}*}
解题思路:L1中串是一个回文结构,中间以字母c分界
读取输入串中的0或1,把它推入栈,状态不变
一旦看见字母c之后,进入一个新状态
在新状态下,当输入字母与栈顶符号相同,出栈,状态不变,直到输入结束与栈空同时出现,则接受
如果如果输入字母与栈顶符号不相同,则拒绝;问题:设计一个下推自动机接受语言L1={wcwR|w{0,1}*}
解题:接受L1的下推自动机表
您可能关注的文档
最近下载
- 房地产销售技巧.ppt VIP
- 信息安全数学基础姜正涛部分习题答案.doc
- 第六讲探寻新时期中美正确相处之道-2025年春季学期形势与政策课件.pptx VIP
- 城市道路路面PCI计算(2016版养护规范).xlsx VIP
- 【旅游目的地评价模型研究的国内外文献综述2700字】.docx VIP
- CAD软件:AutoCAD二次开发_AutoCAD编程基础:NET开发.docx VIP
- 《铁路工程接口设计指南》QCR9160-2022.pdf VIP
- 企业工会助推企业高质量发展.docx VIP
- 2025年高中物理复习讲解实验一 探究小车速度随时间变化的规律.doc VIP
- 日光温室建造规范.docx VIP
文档评论(0)