形式语言与自动机6ch3.9b-3.10.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* College of Computer Science Technology, BUPT * College of Computer Science Technology, BUPT 第五讲 3.9 (part 2) 右线性语言的封闭性 3.10 双向和有输出的有限自动机 * College of Computer Science Technology, BUPT 右线性语言的封闭性  上节从文法产生的角度证明了右线性语言及其并,积,闭包是正则集;本节用有限自动机接受的语言来证明。 (书P103~) 设L1和L2是右线性语言,证明L1∪L2为右线性语言  构造NFA M=(Q ,T ,δ,q0,F) Q=Q1∪Q2∪{q0}   q0是新的起始状态 F1∪F2 当ε?L1,ε?L2 F1∪F2∪{q0} 否则 F = M形如: * College of Computer Science Technology, BUPT 右线性语言的封闭性 设L1和L2是右线性语言,证明L1L2为右线性语言 (书P104~)  构造NFA M=(Q ,T ,δ, q0, F), 其中Q=Q1∪Q2 q0 =q1 F2 当q2?F2 F1∪F2 当q2∈F2 F = M形如: * College of Computer Science Technology, BUPT 右线性语言的封闭性 设L1是右线性语言,证明L1*是右线性语言(书P106~)  构造NFA M=(Q ,T ,δ,q0,F), Q = Q1∪{q0} q0是新的起始状态, F=F1∪{q0} L1* 形如 * College of Computer Science Technology, BUPT 右线性语言的封闭性 设L1是右线性语言,证明 L1 是右线性语言 证明:构造接受L1的M=(Q ,T ,δ, q0, F) 其中Q = Q1∪{γ} γ是一个新状态 T?T1 q0 =q1 F=(Q1-F1) ∪{γ} (即将M1的终止状态变为M的非终止状态) δ定义为: 当a∈T1 ,则δ(q,a)= δ1(q,a) — 保留原有函数 当a∈T-T1,则δ(q,a)=γ — 遇到原来没有的字符全转至γ. 对任意a∈T, δ(γ,a)=γ * College of Computer Science Technology, BUPT 右线性语言的封闭性 例: (书P108) 对下图的M1 ,求L(M1)  * College of Computer Science Technology, BUPT 右线性语言的封闭性 例: 设DFA M1=({q0,q4},{a,b},δ1,q0,{q3,q4}) 对T={a,b,c}, 求L(M1)  * College of Computer Science Technology, BUPT 右线性语言的封闭性 证明L1∩L2是封闭的 证明: ∵L1∩L2=L1∪L2 ∴ 得证 6. 证明右线性语言对于置换是封闭的. (略 -- 自学)  * College of Computer Science Technology, BUPT 补充: 构造自动机的“交” 通过构造证明,说明正则语言在交运算下封闭。 设 两个DFA M1=(Q1 ,T ,δ1,q1,F1) M2=(Q 2,T ,δ2,q2,F2) 构造新的 DFA M, M=(Q1 x Q 2,T,δ,[q1,q2] ,F1 x F2) 对一切p1∈ Q1, p2 ∈ Q2, a ∈T, δ([p1,p2], a)= [δ1(p1, a), δ2(p2, a)] 则L(M)= L(M1)∩L(M2) * College of Computer Science Technology, BUPT 有关正则语言的几个判定性质 判定正则语言是否为空 判定正则语言中是否包含特定的字符串 判定两个正则语言是否相等 * College of Computer Science Technology, BUPT 判定正则语言是否为空   可由如下步骤递归地计算可达状态集合: 判定算法 测试从 初态是否可达某一终态. 先求所有可 达

文档评论(0)

1112111 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档