




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
12023/5/21SchoolofComputerScience,BUPT3.7正则表达式与有限自动机的关系结论:有限自动机、右(左)线性文法、正则表达式都定义了同一种语言--正则语言.
证明策略-NFANFADFARERE(RegularExpression)---正则表达式22023/5/21SchoolofComputerScience,BUPT从DFA构造等价的正则表达式(状态消去法)思路:
(1)扩展自动机的概念,允许正则表达式作为转移弧的标记。这样,就有可能在消去某一中间状态时,保证自动机能够接受的字符串集合保持不变。
(2)在消去某一中间状态时,与其相关的转移弧也将同时消去,所造成的影响将通过修改从每一个前趋状态到每一个后继状态的转移弧标记来弥补。
以下分别介绍中间状态的消去与正则表达式构造过程。32023/5/21SchoolofComputerScience,BUPT从DFA构造等价的正则表达式(中间状态的消去)xy
r1r2xz
r1y
r2代之以:xy
r1+r2xyr2r1代之以:xy
r1*xzy
r1代之以:42023/5/21SchoolofComputerScience,BUPT从DFA构造等价的正则表达式(中间状态的消去)q1qkp1pmP1PmQkQ1R11R1mRkmRk1R11+Q1S*P1R1m+Q1S*PmRkm+QkS*PmRk1+QkS*P1q1p1qkpm消去s52023/5/21SchoolofComputerScience,BUPT从DFA构造等价的正则表达式(状态消去法)步骤:
(1)对每一终态q,依次消去除q和初态q0之外的其它状态;(2)若qq0,最终可得到一般形式如下左图的状态自动机,
该自动机对应的正则表达式可表示为(R+SU*T)*SU*.(3)若q=q0,最终可得到如下右图的自动机,它对应的正则表达式可以表示为R*.(4)最终的正则表达式为每一终态对应的正则表达式之和(并).62023/5/21SchoolofComputerScience,BUPT状态消去法举例对于终态C对于终态D等价的正则表达式(0+1)*1(0+1)+(0+1)*1(0+1)(0+1)72023/5/21SchoolofComputerScience,BUPT状态消去法举例01342567
a
b
aa
b
b
a
b012567a+ba+baabb0257(a+b)*(a+b)*aa+bb07(a+b)*(aa+bb)(a+b)*82023/5/21SchoolofComputerScience,BUPT定理:
L是正则表达式R表示的语言,则存在一个-NFA
E,满足L(E)=L(R)=L.
证明:构造性证明.可以通过结构归纳法证明从R可以构造出与其等价的,满足如下条件的-NFA:
(1)恰好一个终态;
(2)没有弧进入初态;(3)没有弧离开终态;
从正则表达式构造等价的-NFA92023/5/21SchoolofComputerScience,BUPT基础:从正则表达式构造等价的-NFA(归纳构造过程)1对于,构造为3对于a
,构造为a2对于
,构造为102023/5/21SchoolofComputerScience,BUPT归纳:从正则表达式构造等价的-NFA(归纳构造过程)1对于R+S,构造为112023/5/21SchoolofComputerScience,BUPT归纳:从正则表达式构造等价的-NFA(归纳构造过程)2对于RS
,构造为3对于R*
,构造为122023/5/21SchoolofComputerScience,BUPT举例:
设正则表达式1*0(0+1)*,构造等价的-NFA.从正则表达式构造等价的-NFA0+11*132023/5/21SchoolofComputerScience,BUPT从正则表达式构造等价的-NFA(0+1)*1*0(0+1)*142023/5/21SchoolofComputerScience,BUPT3.8右线性语言与有限自动机
至此,我们已学到正则集有三种定义方式,且这三种方式等价:正则集是含有{ε},φ,{a}以及在并、连接和*运算下封闭的语言由正规表达式定义的集合是正则集。由右线性文法生成的语言是正则集。此外,还有第四种方式: 将正则集作为由有限自动机定义的集合。即正则集(右线性语言)<=>有限自动机152023/5/21SchoolofComputerScience,BUPT右线性文法=>有限自动机定理3.8.1:由任意右线性文法G定义的语言必然能被一个NFAM所接受。即L(G)=L(M)证明思路(构造证明): 设右线性文法G=(N,T,P,S),构造一个与G等价的有限自动机NFA
M=(Q,T,δ,q0,F),其中:Q=NU{H},H为一个新增加的状态,HN,q0=S{H,S}当S->ε属于P。{H}否则
δ的定义为:当AaBP,则Bδ(A,a)当AaP,则Hδ(A,a)对于任意输入,δ(H,a)=φ。F=162023/5/21SchoolofComputerScience,BUPT右线性文法=>有限自动机(例)例:设有右线性文法G=({S,B},{a,b},P,S),其中 P:SaBBaB|bS|a
试构造与G等价的有限自动机M。解:设NFAM=(Q,T,,q0,F)Q={S,B,H}T={a,b}q0=SF={H}转换函数:对于产生式SaB,有(S,a)={B}对于产生式BaB,有(B,a)={B}对于产生式BbS,有(B,b)={S}对于产生式Ba,有(B,a)={H}SBH开始aaab172023/5/21SchoolofComputerScience,BUPT右线性文法=>有限自动机(续)求证
G与NFAM两者定义了同一语言。
证明:
先证(1)文法G产生的语言L(G)能够被NFAM所接收;再证(2)NFAM接受的语言L(M)可由文法G产生。182023/5/21SchoolofComputerScience,BUPT右线性文法=>有限自动机(续)证明方法:通过两者定义的语言中任意一个字符串来说明。(1)设ω=a1a2…an∈L(G),且n1则有S=>a1A1=>a1a2A2=>… =>a1a2…an-1An-1=>a1a2…an-1an则由δ的定义,有A1
δ(S,a1),A2
δ(A1,a2),…,An-1
δ(An-2,an-1),Hδ(An-1,an),且Hδ(S,)因为HF,所以被NFAM所接受。又若ε∈L(G),则表明Sε∈P,由NFAM的定义,有S∈F,即ε也被NFAM接受。所以,由文法G派生的任意字符串
L(M)。
#192023/5/21SchoolofComputerScience,BUPT右线性文法=>有限自动机(续)(2)再证L(M)可由G产生设ω=a1a2…an
被NFAM接受,即
L(M),则必然存在状态序列S,A1,A2,…An-1,H对M有转换函数为 A1
δ(S,a1),A2
δ(A1,a2),…, An-1
δ(An-2,an-1),Hδ(An-1,an)则可规定G中含有产生式S
a1A1,A1
a2A2,……,An-1
an于是存在推导S=>a1A1=>a1a2A2=>…=>a1a2…an-1An-1=>a1a2…an-1an即a1a2…an
是文法G的一个句子。也即
L(G)。#202023/5/21SchoolofComputerScience,BUPT有限自动机=>右线性文法定理3.8.2:设有限自动机M接受的语言为L(M)则存在右线性文法G,它产生的语言L(G)=L(M)。证明思路:构造一个右线性文法G,使它接受由NFAM定义的语言。构造方法: 设M=(Q,T,δ,q0,F),构造一个右线性文法G=(N,T,P,S),其中N=Q,S=q0P定义为:若δ(A,a)=B且BF,则AaB在P中若δ(A,a)=B且B∈F,则Aa和A
aB在P中
L(M)<=>L(G)的证明见书P65(自学)。
212023/5/21SchoolofComputerScience,BUPT有限自动机=>右线性文法(例)例:设有DFAM=({q0,q1,q2,q3},{a,b},,q0,{q3})
其中转换函数如图所示,
试构造与之等价的右线性文法G。解:构造右线性文法G=(N,T,P,S)N={q0,q1,q2,q3}T={a,b}S=q0产生式集合P(q0,a)=q1,q0aq1(q0,b)=q2,q0bq2(q1,a)=q3,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- (3篇)五年级家长会发言稿格式范文
- 运动会跳高广播稿15篇
- 销售内勤工作总结15篇
- 连锁业务工作总结
- 送清凉活动工作总结
- 中华民族发展史知到课后答案智慧树章节测试答案2025年春云南大学
- 小学作文课件:如何写好关于西瓜的作文
- 人教山西 九年级 下册 语文 第二单元《 山西中考题型专练》习题课 课件
- 人教版高中语文第二册《物种起源》导言 同步练习基础部分
- 高中语文必修3巩乃斯的马 同步练习3
- 建环专业毕业设计论文范本
- 碳基新材料产业发展基础实施方案
- 软式内镜清洗消毒技术规范
- 父母碑文(例文)
- 幼儿园入学申请登记表
- 生化武器(PPT演讲)幻灯片
- 《汉字真有趣》名师课件
- 急危重症患者抢救制度
- 2022年东营银行校园招聘试题题库及答案解析
- 大班语言故事马神医挑徒弟教案
- 资金管理数学MathematicsofmoneymanagementVinceRalph
评论
0/150
提交评论