书签 分享 收藏 举报 版权申诉 / 30
上传文档赚钱

类型《形式语言与自动机》课件ch3.1-3.3.ppt

  • 上传人(卖家):momomo
  • 文档编号:6018258
  • 上传时间:2023-05-22
  • 格式:PPT
  • 页数:30
  • 大小:670.50KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《《形式语言与自动机》课件ch3.1-3.3.ppt》由用户(momomo)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    形式语言与自动机 形式语言 自动机 课件 ch3 3.3
    资源描述:

    1、第三章第三章 有限自动机与右线性文法有限自动机与右线性文法本章主要内容本章主要内容n确定有限自动机确定有限自动机n非确定有限自动机非确定有限自动机n确定与非确定有限自动机的等价性确定与非确定有限自动机的等价性n右线性文法和有限自动机的等价性右线性文法和有限自动机的等价性n右线性文法的性质右线性文法的性质(泵浦定理泵浦定理)n使用归纳法进行证明的方法使用归纳法进行证明的方法12023-5-22School of Computer Science,BUPT第一节第一节 有限自动机有限自动机一、有限状态系统的概念一、有限状态系统的概念n状态状态:状态是可以将事物状态是可以将事物区分区分开的一种标识。

    2、开的一种标识。n具有离散状态的系统:如数字电路具有离散状态的系统:如数字电路(0,1),十十字路口的红绿灯。离散状态系统的状态数是字路口的红绿灯。离散状态系统的状态数是有限的。有限的。n具有连续状态的系统:比如水库的水位,室具有连续状态的系统:比如水库的水位,室内温度等可以连续变化,即有无穷个状态。内温度等可以连续变化,即有无穷个状态。n有限状态系统必然是离散状态系统(而且状有限状态系统必然是离散状态系统(而且状态数有限),因为只有有限个状态。态数有限),因为只有有限个状态。22023-5-22School of Computer Science,BUPTn实例实例 一个人带着一头狼,一头羊,

    3、以及一棵一个人带着一头狼,一头羊,以及一棵青菜,处于河的左岸。有一条小船青菜,处于河的左岸。有一条小船,每次只能每次只能携带人和其余的三者之一。人和他的伴随品携带人和其余的三者之一。人和他的伴随品都希望渡到河的右岸,而每摆渡一次,人仅都希望渡到河的右岸,而每摆渡一次,人仅能带其中之一。然而如果人留下狼和羊不论能带其中之一。然而如果人留下狼和羊不论在左岸还是在右岸,狼肯定会吃掉羊。类似在左岸还是在右岸,狼肯定会吃掉羊。类似地,如果单独留下羊和菜,羊也肯定会吃掉地,如果单独留下羊和菜,羊也肯定会吃掉菜。如何才能既渡过河而羊和菜又不被吃掉菜。如何才能既渡过河而羊和菜又不被吃掉呢呢?32023-5-2

    4、2School of Computer Science,BUPT42023-5-22School of Computer Science,BUPTMGWC(处于左岸的子集(处于左岸的子集处于右岸的子集处于右岸的子集)将过河问题模型化:将过河问题模型化:人人(M)狼狼(W)羊羊(G)菜菜(C)52023-5-22School of Computer Science,BUPT二、有限自动机的概念二、有限自动机的概念有限自动机的概念有限自动机的概念n具有具有离散离散 输入输入 输出输出系统的系统的一种一种数学模型数学模型(可以没有输出,比较特殊的也可以没有输可以没有输出,比较特殊的也可以没有输入入)

    5、.n有限有限的状态的状态n状态状态+输入输入状态转移状态转移n每次转换的后继状态都唯一每次转换的后继状态都唯一 DFAn每次转换的后继状态不唯一每次转换的后继状态不唯一 NFAFA的模型的模型 FA可以理解成一个控制器,它读一条输可以理解成一个控制器,它读一条输入带上的字符。入带上的字符。62023-5-22School of Computer Science,BUPT101101有限有限控制器控制器(1)控制器包括有限状态;控制器包括有限状态;(2)从左到右依次读取字符;从左到右依次读取字符;(3)状态状态+激励激励 状态迁移状态迁移(根据当前所处状态和输入字符根据当前所处状态和输入字符进行

    6、状态转移进行状态转移)72023-5-22School of Computer Science,BUPT 有限状态集有限状态集 有限输入符号集有限输入符号集 转移函数转移函数 一个开始状态一个开始状态 一个终态集合一个终态集合有限自动机的五要素有限自动机的五要素q0q1q2q3Start0110110082023-5-22School of Computer Science,BUPT三、三、DFA的形式定义的形式定义定义:DFA是一个五元组 M=(Q,T,q0,F)nQ:有限的状态集合有限的状态集合nT:有限的输入字母表有限的输入字母表n:转换函数转换函数(状态转移集合状态转移集合):QT Q

    7、nq0:初始状态,初始状态,q0 QnF:终止状态集终止状态集,F Q92023-5-22School of Computer Science,BUPT转转 移移 图图 表表 示示 的的 DFA Q=q0,q1,q2,q3 T=0,1 (q0,0)=q2,(q0,1)=q1 (q1,0)=q3,(q1,1)=q0 (q2,0)=q0,(q2,1)=q3 (q3,0)=q1,(q3,1)=q2 q0 F=q0,q3 q0q1q2q3Start01101100102023-5-22School of Computer Science,BUPT转转 移移 表表 表表 示示 的的 DFA q0q1q2

    8、 q301q2q1q3q0q0q3q1q2 Q=q0,q1,q2,q3 T=0,1 (q0,0)=q2,(q0,1)=q1 (q1,0)=q3,(q1,1)=q0 (q2,0)=q0,(q2,1)=q3 (q3,0)=q1,(q3,1)=q2 q0 F=q0,q3 112023-5-22School of Computer Science,BUPT四、四、扩展转移函数适合于输入字符串扩展转移函数适合于输入字符串函数:函数:接收一个字符串的状态转移函数。接收一个字符串的状态转移函数。:Q T*Q 对任何对任何q Q,定义:定义:1.(q,)=q 2.若若是一个字符串是一个字符串,a是一个字符是一

    9、个字符定义定义:(q,a)=(q,),a)122023-5-22School of Computer Science,BUPT扩展转移函数适合于输入字符串扩展转移函数适合于输入字符串 q0q1q2 q301q2q1q3q0q0q3q1q2 举例举例 (q0,)=q0 (q0,0)=(q0,0)=q2 (q0,00)=(q2,0)=q0 (q0,001)=(q0,1)=q1 (q0,0010)=(q1,0)=q3q0q1q2q3Start01101100132023-5-22School of Computer Science,BUPTDFA接受的语言接受的语言n被被DFA接收的字符串接收的字符

    10、串:输入结束后使输入结束后使DFA的状态到达终的状态到达终止状态。否则该字符串不能被止状态。否则该字符串不能被D FA接收接收.nDFA接收的语言接收的语言:被被DFA接收的字符串的集合接收的字符串的集合.L(M)=w (q0,w)F n例:例:T=0,112Start0110接收含有奇数个接收含有奇数个0的任意串的任意串142023-5-22School of Computer Science,BUPT五、格局五、格局n为描述有限自动机的工作过程,对于它在某为描述有限自动机的工作过程,对于它在某一时刻的工作状态,可用两个信息表明:当一时刻的工作状态,可用两个信息表明:当前状态前状态q,待输入

    11、字符串待输入字符串w。两者构成一个瞬两者构成一个瞬时描述,用(时描述,用(q,w)表示,称为格局。表示,称为格局。n初始格局:(初始格局:(q0,w)n终止格局:终止格局:(q,),q F152023-5-22School of Computer Science,BUPTn如图,接受如图,接受001010的格局的格局(q0,001010)(q2,01010)(q0,1010)(q1,010)(q3,10)(q2,0)(q0,)n格局数量是无限的。格局数量是无限的。n有限状态自动机是无记忆的。有限状态自动机是无记忆的。例如接受例如接受0010101111和接受和接受01011111时,都可以进入

    12、格时,都可以进入格局局(q0,1111)。格局示例格局示例q0q1q2q3Start01101100162023-5-22School of Computer Science,BUPTn如果对某个如果对某个q F,有有(q0,w)(q,),则称输入字符串则称输入字符串w是可被确定的有限自动机接受的。是可被确定的有限自动机接受的。172023-5-22School of Computer Science,BUPT设计有限自动机设计有限自动机n自动机的设计是一个创造过程,没有简单的算法或过程。自动机的设计是一个创造过程,没有简单的算法或过程。n技巧:假设自己是机器,思考如何去实现机器的任务技巧:假

    13、设自己是机器,思考如何去实现机器的任务。n为判断到目前为止所看到的字符串是否满足某个语言,须估为判断到目前为止所看到的字符串是否满足某个语言,须估算出读一个字符串时需要记住哪些关键的东西。算出读一个字符串时需要记住哪些关键的东西。例:例:构造自动机,识别所有由奇数个构造自动机,识别所有由奇数个a和奇数个和奇数个b组成的字符串。组成的字符串。关键:不需要记住所看到的整个字符关键:不需要记住所看到的整个字符串串,只需记住至此所看到,只需记住至此所看到的的a、b个数是偶数还是奇数。个数是偶数还是奇数。q偶a偶bq奇a偶bq偶a奇bq奇a奇bStartbaabaabb182023-5-22School

    14、 of Computer Science,BUPT第二节第二节不确定的有限自动机不确定的有限自动机(NFA)修改修改DFA的模型,使之在某个状态,的模型,使之在某个状态,对应一个输入,对应一个输入,可以有多个转移,可以有多个转移,到达不到达不 同的状态,同的状态,则称为不确定的有限则称为不确定的有限自动机。自动机。例:例:Startpr0,10q1(1)Startp0,11qr0,1(2)192023-5-22School of Computer Science,BUPT一、不确定有限自动机的形式定义一、不确定有限自动机的形式定义nNFA是一个五元组,是一个五元组,M=(Q,T,q0,F)。其

    15、中其中是是QT-2Q的函数,其余与的函数,其余与DFA相同。相同。n如果接收一个字符串后如果接收一个字符串后NFA进入一个状态集,进入一个状态集,而此集合中包含而此集合中包含一个以上一个以上F中的状态,中的状态,则则称称NFA接收该字符串。接收该字符串。202023-5-22School of Computer Science,BUPTStartpr0,10q1(1)Startp0,11qr0,1(2)pq r0 q q q,r 1pq r0 p r r 1 p,q 转移图和转移表表示的转移图和转移表表示的NFA212023-5-22School of Computer Science,BUP

    16、T格局示例格局示例n如图所示,用格局序列描述自动机的工作过程,如图所示,用格局序列描述自动机的工作过程,当输入字符串是当输入字符串是011011时,则有时,则有Startp0,11qr0,1(,011011)|(,11011)|(,1011)|(,011)|(,11)|(,1)|(,)(,1011)|(,011)(,1)|(,)pppppqrqrpp (,)q222023-5-22School of Computer Science,BUPT二二、NFA的状态转移函数的状态转移函数 与与 DFA 唯一不同之处唯一不同之处 :Q 2Q同样,同样,可扩展为可扩展为 (:Q T*2Q)1.(q,)=

    17、q 含义:不允许无输入的状态变化。2.(q,a)=p|存在存在r(q,)p(r,a)n含义含义:(q,a)对应的状态集合是对应的状态集合是(q,)对应的每个状对应的每个状态态下再下再接收字符接收字符a以后可能到达的状态集合的并集以后可能到达的状态集合的并集.即即若若 (q,)=r 1,r 2,r k,则则 (q,a)=(r i,a)其中其中 T*,a T,r i Q232023-5-22School of Computer Science,BUPT 举例举例 (p,)=p (p,0)=q (p,01)=q,r (p,010)=q (p,0100)=q (p,01001)=q,r pq r0 q

    18、 q q,r 1扩展转移函数适合于输入字符串扩展转移函数适合于输入字符串Startpr0,10q1242023-5-22School of Computer Science,BUPTNFA 接受的语言接受的语言 设一个设一个 NFA A=(Q,T,q0,F)定义定义 A 的语言的语言:L(A)=w (q0,w)F 252023-5-22School of Computer Science,BUPT第三节第三节 NFA与与DFA的等价性的等价性nDFA是是NFA的特例,所以的特例,所以NFA必然能接收必然能接收DFA能接收能接收的语言。的语言。因此因此证明等价性只要能够证明一个证明等价性只要能够

    19、证明一个NFA所所能接收的语言必能被另一个能接收的语言必能被另一个DFA所接收所接收。1.定理:设一个定理:设一个NFA接受语言接受语言L,那么必然存在一个,那么必然存在一个DFA接受接受L。2.证明证明:n策略:对于任意一个策略:对于任意一个NFA,构造一个接收它所能接,构造一个接收它所能接收语言的收语言的DFA,这个这个DFA的状态对应的状态对应了了NFA的状态的状态集合。集合。262023-5-22School of Computer Science,BUPT从从 NFA 构造等价的构造等价的 DFA (子集构造法子集构造法)设设 L 是某个是某个 NFA MN=(QN,T,N,q0,F

    20、N)的语言的语言,则存在一个则存在一个 DFA MD,满足满足 L(MD)=L(MN)=L.证明证明:定义定义 M D=(QD,T,D,q0,FD),其中其中 QD=S S QN =2 Q 对对 S QD 和和 a T,D(S,a)=N(q,a),FD=S S QN S FN 需要证明需要证明:对任何对任何w T*,D(q0 ,w)=N(q0,w).归纳于归纳于|w|可可证上述命题证上述命题.q S272023-5-22School of Computer Science,BUPTpq r0 q q q,r 10 q 1 p q r p,q p,r q,r p,q,r q q,r q q,r

    21、q q q,r q q,r Startp0,10q1q,r1010 子集构造法举例子集构造法举例282023-5-22School of Computer Science,BUPTpq r0 p r r 1 p,q 01 p p,q,r p p,q p p,q p,q p,r p,q,r p,r p,r p,q,r Startp1p,q10100p,q,rp,r01子集构造法举例子集构造法举例Startp0,11qr0,1292023-5-22School of Computer Science,BUPT证明证明:从从 NFA 构造等价的构造等价的 DFA 设设 MN=(QN,T,N,q0,F

    22、N)是一个是一个 NFA,通过子集构造法通过子集构造法 得到相应的得到相应的DFA MD=(QD,T,D,q0,FD),则则 对任何对任何w T*,D(q0 ,w)=N(q0,w).证明证明:归纳于归纳于|w|1 设设|w|=0,即即 w=.由定义知由定义知 D(q0 ,)=N(q0,)=q0 .2 设设|w|=n+1,并并 w=xa,a T.注意到注意到|x|=n.假设假设 D(q0 ,x)=N(q0,x)=p1,p2,pk .则则 D(q0 ,w)=D(D(q0 ,x),a)=D(p1,p2,pk,a)=N(pi,a).=N(q0,w)i=1k302023-5-22School of Computer Science,BUPT 实践中实践中,通过子集构造法得到的通过子集构造法得到的 DFA 的状态数目的状态数目与与原原NFA 的状态数目的状态数目大体大体相当相当.在较坏的情况下在较坏的情况下,上述上述 DFA 的状态数目接近于所有的状态数目接近于所有子集的数目子集的数目.举例举例 由如下由如下 NFA 构造的构造的 DFA 的状态数目至少为的状态数目至少为2n子集构造法得到的状态数子集构造法得到的状态数Start0,110,10,10,1.q0q1q2qn

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:《形式语言与自动机》课件ch3.1-3.3.ppt
    链接地址:https://www.163wenku.com/p-6018258.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库