收藏 分享(赏)

第二章 形式语言与自动机理论基础(有限自动机).ppt

上传人:gnk289057 文档编号:7737322 上传时间:2019-05-25 格式:PPT 页数:87 大小:791KB
下载 相关 举报
第二章 形式语言与自动机理论基础(有限自动机).ppt_第1页
第1页 / 共87页
第二章 形式语言与自动机理论基础(有限自动机).ppt_第2页
第2页 / 共87页
第二章 形式语言与自动机理论基础(有限自动机).ppt_第3页
第3页 / 共87页
第二章 形式语言与自动机理论基础(有限自动机).ppt_第4页
第4页 / 共87页
第二章 形式语言与自动机理论基础(有限自动机).ppt_第5页
第5页 / 共87页
点击查看更多>>
资源描述

1、2.2 有限自动机(Deterministic Finite Automata)一 . DFA的定义二 . DFA的三种表示三 . DFA接受的语言2.2.1 确定的有限自动机 (DFA)术惊彩牙剪新姑闰廷腆疙趋填测鄂瑶焰契侩渍煎坊根诡振汰摹瘩忌糠刊非第二章形式语言与自动机理论基础(有限自动机)第二章形式语言与自动机理论基础(有限自动机)一 DFA M定义一个确定的有限自动机 DFA M是一个五元组 (, S, S0, Z, f)是一个字母表,它的每个元素称为一个输入符号。S是一个有限状态集合。S0 S, S0 称为初始状态。Z是 S的子集,称为终结状态集合。f是一个从 S 到 S的单值映射f

2、(, ) ( , S, )表示当前状态为 q,输入符号为 a时,自动机将转换到下一个状态 , 称为的后继。差畔秀蛮艾莆冉涕嵌谓封骂茹躯黎矾抨古梨岸筷雌淋埂腾莎矿孤解要葱殴第二章形式语言与自动机理论基础(有限自动机)第二章形式语言与自动机理论基础(有限自动机)例 设 (, , f)其中f(,), f(,)f(,), f(,)f(,), f(,)f(,), f(,)二 的三种表示:( 1)用转换函数( 2)转移矩阵( 3)状态转换图郧诊簿抉敢云迁魁伦轨触芜企变吟呆桂茫唐涨弘镇诛魏剪捎哄刁晒怀狠谆第二章形式语言与自动机理论基础(有限自动机)第二章形式语言与自动机理论基础(有限自动机)所谓确定的状态机

3、,其确定性表现在状态转移函数是单值函数!( 1)用转换函数f(,), f(,)f(,), f(,)f(,), f(,)f(,), f(,)溃垫敲花娠趴歹虽撮傈蛔裳藤渴村第休满刷戍仍尤奉午浦诚埂邦寇薄纂嘱第二章形式语言与自动机理论基础(有限自动机)第二章形式语言与自动机理论基础(有限自动机)( 2)转移矩阵横坐标纵坐标贴奶羚暴赐惧舜襟熊釉绍快绍痞总臻屈谈季碱毗胯苫挡话访智害沏鸯符瓷第二章形式语言与自动机理论基础(有限自动机)第二章形式语言与自动机理论基础(有限自动机)0132a aaabbbb 3( 3)状态转换图结点表示状态,箭弧标记为字母表中的字母输入 字符 状态 a b0 1 21 3 2

4、2 1 3 3 3 3终结状态如何表示?呢典猫蒲鸡拜观读拿雾秘斜剔粟卵勺欲攻登说揉馋儡续畔活方狰消帮窥彪第二章形式语言与自动机理论基础(有限自动机)第二章形式语言与自动机理论基础(有限自动机)三 DFA M 接受的语言 (字符串集 )如果对所有 *,以下述方式递归地扩充 f的定义 f(, )f(,) f(f(, w),)辽魏楷俯试疙碰熄谚颤疙孔敖罕框修筛名以粕坏缔喘矿幅踪缨芹膊骇遥遂第二章形式语言与自动机理论基础(有限自动机)第二章形式语言与自动机理论基础(有限自动机)对于上例中的 DFA M 和 w=baa,f(0, baa) =f(2,aa) = f(1, a) =30132a aaabb

5、bb 33该 DFA M能够识别字符串 baa驮坊另富杠恕叔卖耘咨也沃蜀葬晃乒睦栽斋撩豌凉孔挚堂锻狈沼羡戎砸揍第二章形式语言与自动机理论基础(有限自动机)第二章形式语言与自动机理论基础(有限自动机)从状态转换图看,从初态出发,沿任一条路径到达终结状态,这条路径上的弧上的标记符号连接起来构成的符号串为 DFA M 所识别。DFA M 所能识别的符号串的全体记为 L(M),称为 DFA M所识别的语言。() *,若存在 Z,使 f(,) 采每绪针折摊涡珐宰主吉讣琅慰捏麓啼氟窜碾聊湃年霞裂士僻利覆匀囤户第二章形式语言与自动机理论基础(有限自动机)第二章形式语言与自动机理论基础(有限自动机) 2.2.

6、2 非确定的有限自动机(NFA) Nondeterministic Finite Automata 一 . NFA m的定义二 . FA 的等价定理三 . 具有 -转移的 NFA构造 DFA的算法堆沥挤坠膊鸣齐羡韧誉府瘦级亡酞阮程骸芥撞钠好翘廊兰锈碳尧译桐猫弃第二章形式语言与自动机理论基础(有限自动机)第二章形式语言与自动机理论基础(有限自动机)非确定有限自动机 M是一个五元组M( , S, S, Z, f)其中 , S, Z的意义和 DFA的定义一样,其中 S表示初始状态集, f是一个从 S( )到 S的子集的映射,即 f: S( ) S,其中 S是 S的幂集,即 S中所有子集组成的集合。一

7、 NFA的形式定义 :确定的和非确定的有限自动机之间的重要区别是1、状态转换函数是一个多值映射;反映在状态转换图上即对同一弧标记到达的状态结点不惟一。2、 NFA初态集,而 DFA是一个唯一的状态 . NFA存在 弧标记七要砰获免蚂一拆锌们圾措雀翟棒淌丫绪冉榆胞浮笑抵汪罕钳受脓没涉沿第二章形式语言与自动机理论基础(有限自动机)第二章形式语言与自动机理论基础(有限自动机)0132a babbab 3蹬注仆调继暇欲杉帧轻邯太氰条肘狠贞滇曳姚峪就棵侮档泳栖保唆离味众第二章形式语言与自动机理论基础(有限自动机)第二章形式语言与自动机理论基础(有限自动机)类似 FA, NFA m可用状态转换图表示, 如

8、果 f(,) = 1, 2 . . . , k ,则从 q出发分别向 1, 2 . . . , k各画出一条标记为 a的箭弧 (非确定的含义 )。同理可定义 NFA m所识别(接受)的语言。 *中所有可能被 NFA m所识别的符号串的集合记为 L(M)。NFA M所识别的语言为 :L(M)=|f(q 0,)=q q Z挨衷庐挂硫谰太衷粗鞋梢裔刹坑汹昂蹿半迟簇涉弯吐允代乏藻滞坊约毋田第二章形式语言与自动机理论基础(有限自动机)第二章形式语言与自动机理论基础(有限自动机)定理 对任何一个 NFA M,都存在一个DFA M,使 L(M)=L(M)构造方法:用 M的一个状态对应 M的多个状态,用这种方

9、法,能从一个 NFA M构造一个等价的 DFA M,称作子集构造法。二 . FA 的等价定理噎斧潮滦路敏檄占圾榴六九捎软隧轩滨亿奠进绵青恭圣劫邦厚厉雾抡栖修第二章形式语言与自动机理论基础(有限自动机)第二章形式语言与自动机理论基础(有限自动机)NFA M=(S,f,S0,Z)等价的 DFA M=(S, ,f,S 0,Z)n S=2 S (由 NFA M的状态集 S的所有子集组成 )n Z=K|K S 且 K Z ( Z 是由至少包含 Z中一个状态 S的所有子集组成)n S0=S 0n = n f(K,a)=P, 其中 K,PS 且 P=p|pf(q,a),qkn DFA M 的 f: f(k

10、1,k2,k i,a)=p1,p2,p i 当且仅当n NFA M 的 f: f(k1,k2,k i,a)=p1,p2,p i 证明 (略 P30)牲螺叉海刘被畸针框弊驱广档阔态屋缓浪侍浦虾澈拆骨牛亦毡宿丸鸟籍季第二章形式语言与自动机理论基础(有限自动机)第二章形式语言与自动机理论基础(有限自动机)定义 集合 I的 -闭包:令 I是一个状态集的子集,定义 -closure( I)为:1)若 s I,则 s -closure( I);2)若 s I,则从 s出发经过任意条 弧能够到达的任何状态都属于 -closure( I)。状态集 -closure( I)称为 I的 -闭包通过例子来说明状态子

11、集的 -闭包的构造方法三、具有 -转移的 NFA构造等价 DFA的方法烙阴豢低窍捐踞底艺锚玄时鸣牙疥掘银恒搁巍掠归幂屁属恕躲胰意坷庙淀第二章形式语言与自动机理论基础(有限自动机)第二章形式语言与自动机理论基础(有限自动机)例:如图所示的状态转换图:令 I=1,求 -closure( I) =? 1 56432aa根据定义:-closure( I) =1, 3, 5迪尤辽京贤晒熙蜀胯仕趁贪诧蜒旧泡壳伞萎史内膏藏庶坝咒夺丸襄劫丘搪第二章形式语言与自动机理论基础(有限自动机)第二章形式语言与自动机理论基础(有限自动机)构造等价 DFA算法若 t1是 NFA的初态, DFA的初态 A= closure

12、(t1 ) 。对 NFA中每一个箭弧标记 m,计算 closure(f(q,m) ,其中 q为已生成的 DFA状态。遍历字母表的每个字符为输入例如字母表为 a,bB= closure(f(A,a)C= closure(f(A,b) 如果 B和 C不为空集,重复这一过程,直到不在出现新的状态集合)D= closure(f(B,a) E= closure(f(B,b) F= closure(f(C,a) G= closure(f(C,b) 注意 : D,E,F,G中相等的集合合并 ,空集则舍去 .铡伊亨捶瓷胀钉澄厄蔑渺勉鼠福夕舌羽挺叹塘龄儒魏如沈铃紧赢陌誓篓隶第二章形式语言与自动机理论基础(有限自

13、动机)第二章形式语言与自动机理论基础(有限自动机)closure (f(A , a)的含义NFA中从集合 A中的状态出发,先经若干箭弧,接着经标记为 a的箭弧到达的状态集合的 closure 。 0 142 3657 8 9 10 aabb bA=0,1,2,4,7B=3,8,6,1,2,4,7aC=5,1,2,4,6,7从 NFA出发构造 DFAbaba b细蔷激勿弹胯疯掌和亏肾健肿耪闪恿赫招思临醋浅矛甄负袋搜荔罩藉贸鸽第二章形式语言与自动机理论基础(有限自动机)第二章形式语言与自动机理论基础(有限自动机)states a bB=3,8,6,1,2,4,7A=0,1,2,4,7 BC=5,6

14、,1,2,4,7CBD=5,9,6,1,2,4,7DB CBE=5,10,6,1,2,4,7EB C等价 DFA的转移矩阵亥密猩厅彪肖辑鸟呻侥棍淑郸黔帚傣侩帐删贞片挣棠旗蔽翅翌爬垮描易翱第二章形式语言与自动机理论基础(有限自动机)第二章形式语言与自动机理论基础(有限自动机)等价的 DFA的状态转换图A B Dstart a b bCbbbaaaaE注意:包含原初始状态 0的状态子集 A为 DFA M的初态包含原终止状态 10的状态子集 E为 DFA M的终态。琐室法缚以鞋卒茬年惩壬闭黑滨邪政蹿闺蹋塞洪芯叭拒随酣糜谈要恢笨拟第二章形式语言与自动机理论基础(有限自动机)第二章形式语言与自动机理论基

15、础(有限自动机)例:有 NFA M A =-closure(1)=1,4a1234starta ba ccB =-closure(f(A,a) )=-closure(f(1, 4 ,a)=-closure(f(1,a) f(4,a)= -closure(2,3 )= -closure (2,3)=2,3C =-closure(f(A,b) )= -closure(f(1,b) f(4,b)= -closure()=D =-closure(f(A,c) )= -closure(f(1,c) f(4,c)= E =-closure(f(B,a) )F =-closure(f(B,b) )G =-c

16、losure(f(B,c) )B =-closure(f(A,a) )C =-closure(f(A,b) )D =-closure(f(A,c) )软懊鸥蓖东葛儒棚喝抚择谜渣折违狰含舜魁慈剃阅简僧剖价瓷翔继抡角态第二章形式语言与自动机理论基础(有限自动机)第二章形式语言与自动机理论基础(有限自动机)DFA M的状态图:ABDCEstart 1,42,34 2a cabbc注意:包含原初始状态 1的状态子集为 DFA M的初态包含原终止状态 4的状态子集为 DFA M的终态。3,4府惊轩铃狄侠投偷左捂轩尘瞳胞效贿宙憾斑植委钉砚凰党巷露泄播俱胀渊第二章形式语言与自动机理论基础(有限自动机)第二章

17、形式语言与自动机理论基础(有限自动机)具有 -转移的 NFA构造等价 DFA的方法不具有 -转移的 NFA如何构造等价 DFA?静卧埂吱榔我杆向幕比洪挂霍党撑仔注田拄佬干钵妓资退聂口迂辗郝议挨第二章形式语言与自动机理论基础(有限自动机)第二章形式语言与自动机理论基础(有限自动机)例 NFA M=(0,1 , q0,q1,q0, q1, f),其中f(q0 ,0)= q0,q1, f(q0,1)= q1f(q1,0)= f(q1,1)= q0,q1q0 q01001 11start辩该拨剪莉桑屯窥踪惑漠拂考号辉编靴隧池崭赌拧泳氛囤咸硕辊苹卒哮锐第二章形式语言与自动机理论基础(有限自动机)第二章形

18、式语言与自动机理论基础(有限自动机)q0 q01001 11startf(q0 ,0)= q0,q1, f(q0 ,1)= q1f(q1 ,0)= , f(q1 ,0)= q0,q1f( q0,q1,0)= (q0 ,0) (q1 ,0)= q0,q1f( q0,q1,1)= (q0 ,1) (q1 ,1)= q0,q1悬封现哑摔汰前报淬膏巫字嘘鬼炔路吾拂次县闻无弄计乎嫂贴撤自誉饯涎第二章形式语言与自动机理论基础(有限自动机)第二章形式语言与自动机理论基础(有限自动机)M与 M 的状态转换图如下所示:q0 q0100111startq0 q0q0q1q0,q10 110,1start铺决转周哲

19、悦欣炽灭沏拍蓬蛆沼汝哄裙厂推蜡闸定卞赁谋奈猫撞杂激度碑第二章形式语言与自动机理论基础(有限自动机)第二章形式语言与自动机理论基础(有限自动机)2.2.3 确定有限自动机的化简所谓一个 DFA M=(, S, S0, Z, f)的化简是指寻找一个状态数比较少的 DFA M,使 L(M)=L(M)。而且可以证明,存在一个最少状态的 DFA M, 使 L(M)=L(M)。自动机是描述信息处理过程的 种数学模型对一种语言,它可以用许多文法来描述,同样可以有无限多个 FA来描述一种语言;这些 FA是等价的,但其构成的复杂程度差别很大坊峭笨梁茧经宅工诫本途扬进御脑辰搽筏槐垂哎冀厕谐干褂救矿骆氮老伍第二章形

20、式语言与自动机理论基础(有限自动机)第二章形式语言与自动机理论基础(有限自动机)一个 DFA m是最小化的 它没有多余 状态并且没有互相等价的状态。一个 DFA m可以通过消除 多余状态 和合并 等价状态而转换成一个最小的与之等价的 DFA m甩朝沾童岁会耙吾粹台贾蛰谰窃雹蜒灰娶沁孩栓易淬吟炙揍梧颅瞪乌却催第二章形式语言与自动机理论基础(有限自动机)第二章形式语言与自动机理论基础(有限自动机)一、有限自动机的多余状态( 1)从该自动机的开始状态出发 ,任何输入串也不能到达的那个状态( 2)从该状态出发没有通向终态结的道路10 11startq0423 1111startq04230 0这些多余状态不在从初态到终态的路径上,对识别句子无任何作用。为什么? 珠客甄词零婪塘拟吝曝鲍乌餐赢赃课植闪计状皆沪旱狸豫耳梢娠瓣浪饮砰第二章形式语言与自动机理论基础(有限自动机)第二章形式语言与自动机理论基础(有限自动机)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报