




已阅读5页,还剩21页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
形式语言与自动机理论电子教案05 xx-9-301第5章RL的性质?RL性质泵引理及其应用并、乘积、闭包、补、交正则代换、同态、逆同态的封闭性?从RL固有特征寻求表示的一致性Myhill-Nerode定理FA的极小化?RL的几个判定问题空否、有穷否、两个DFA等价否、成员关系xx-9-3025.1RL的泵引理?泵引理(pumping lemma)设L为一个RL?则存在仅依赖于L的正整数N?对于?zL?如果|z|N?则存在u、v、w?满足z=uvw?|uv|N?|v|1?对于任意的整数i0?uv iwL?N不大于接受L的最小DFA M的状态数。 xx-9-3035.1RL的泵引理?证明思想xx-9-3045.1RL的泵引理证明?DFA在处理一个足够长的句子的过程中?必定会重复地经过某一个状态。 换句话说?在DFA的状态转移图中?必定存在一条含有回路的从启动状态到某个终止状态的路。 由于是回路?所以?DFA可以根据实际需要沿着这个回路循环运行?相当于这个回路中弧上的标记构成的非空子串可以重复任意多次。 xx-9-3055.1RL的泵引理M=(Q?q0?F)|Q|=N z=a1a2a mmN(q0?a1a2a h)=q h状态序列q0?q1?q N中?至少有两个状态是相同?q k=q jxx-9-3065.1RL的泵引理(q0?a1a2a k)=q k(q k?a k+1a j)=q j=q k(q j?a j+1a m)=q m对于任意的整数i0(q k?(a k+1a j)i)=(q k?(a k+1a j)i-1)=(q k?a k+1a j)=q kxx-9-3075.1RL的泵引理故?(q0?a1a2a k(a k+1a j)i a j+1a m)=q m也就是说?a1a2a k(a k+1a j)i a j+1a mL(M)u=a1a2a k?v=a k+1aj?w=aj+1a muv iwLxx-9-3085.1RL的泵引理?例5-1证明0n1n|n1不是RL。 证明?假设L=0n1n|n1是RL z=0N1N按照泵引理所述v=0k k1此时有?u=0N-k-j w=0j1Nxx-9-3095.1RL的泵引理从而有?uv iw=0N-k-j(0k)i0j1N=0N+(i-1)k1N当i=2时?我们有?uv2w=0N+(2-1)k1N=0N+k1N注意到k1?所以?N+kN。 这就是说?0N+k1N?L这与泵引理矛盾。 所以?L不是RL。 xx-9-30105.1RL的泵引理?例5-2证明0n|n为素数不是RL。 证明?假设L=0n|n为素数是RL。 取z=0N+pL?不妨设v=0k?k1从而有?uv iw=0N+p-k-j(0k)i0j=0N+p+(i-1)kxx-9-30115.1RL的泵引理当i=N+p+1时?N+p+(i-1)k=N+p+(N+p+1-1)k=N+p+(N+p)k=(N+p)(1+k)注意到k1?所以N+p+(N+p+1-1)k=(N+p)(1+k)不是素数。 故当i=N+p+1时?uv N+p+1w=0(N+p)(1+k)?L这与泵引理矛盾。 所以?L不是RL。 xx-9-30125.1RL的泵引理?例5-3证明0n1m2n+m|m?n1不是RL。 证明?假设L=0n1m2n+m|m?n1是RL。 取z=0N1N22N设v=0k k1从而有?uv iw=0N-k-j(0k)i0j1N22N=0N+(i-1)k1N22Nxx-9-30135.1RL的泵引理uv0w=0N+(0-1)k1N22N=0N-k1N22N注意到k1?N-k+N=2N-k|*/RL|。 xx-9-30795.3.1Myhill-Nerode定理?如果(q?a)=p?f(q)=x?必有f(p)=xa?qQ?如果?f(q)=f(q0?x)=x所以?a?如果?p=(q?a)=(q0?x)?a)=(q0?xa)则f(p)=f(q?a)=f(q0?x)?a)=f(q0?xa)=xa即?如果M在状态q读入字符a时进入状态p?则M在q对应的状态f(q0?x)=x读入字符a时?进入p对应的状态f(q0?xa)=xa。 所以?f是M和M之间的同构映射。 xx-9-30805.3.2DFA的极小化?可以区分的(distinguishable)状态?设DFA M=(Q?q0?F)?如果?x*?对Q中的两个状态q和p?使得(q?x)F和(p?x)F中?有且仅有一个成立?则称p和q是可以区分的。 否则?称q和p等价。 并记作qp。 xx-9-30815.3.2DFA的极小化算法5-1DFA的极小化算法?算法思想?扫描所有的状态对?找出所有的可区分的状态对?不可取分的状态对一定是等价的。 ?输入?给定的DFA。 ?输出?可区分状态表。 ?主要数据结构?状态对的关联链表?可区分状态表。 xx-9-30825.3.2DFA的极小化?主要步骤for?(q?p)F(Q-F)do标记可区分状态表中的表项(q?p)?for?(q,p)FF(Q-F)(Q-F)&qp doif?a?可区分状态表中的表项(q?a)?(p?a)已被标记then begin标记可区分状态表中的表项(q?p)?递归地标记本次被标记的状态对的关联链表上的各个状态对在可区分状态表中的对应表项endxx-9-30835.3.2DFA的极小化else for?a?doif(q?a)(p?a)&(q?p)与(q?a)?(p?a)不是同一个状态对then将(q?p)放在(q?a)?(p?a)的关联链表上。 xx-9-30845.3.2DFA的极小化定理5-8对于任意DFA M=(Q?q0?F)?Q中的两个状态q和p是可区分的充要条件是(q?p)在DFA的极小化算法中被标记。 证明?先证必要性。 设q和p是可区分的?x是区分q和p的最短字符串。 现施归纳于x的长度?证明(q?p)一定被算法标记。 xx-9-30855.3.2DFA的极小化?当|x|=0时区分q和p?表明q和p有且仅有一个为M的终止状态?所以?(q?p)F(Q-F)因此?它在算法的第 (1)行被标记。 ?设当|x|=n时结论成立x是区分q和p的长度为n的字符串?则(q?p)被算法标记。 xx-9-30865.3.2DFA的极小化?当|x|=n+1时设x=ay?其中|y|=n。 由于x是区分q和p的最短的字符串?所以?(q?x)F和(p?x)F中?有且仅有一个成立。 不妨假设?(q?x)?F?(p?x)F即(q?a)?y)?F?(p?a)?y)F设(q?a)=u?(p?a)=v y是区分u和v的长度为n的字符串。 xx-9-30875.3.2DFA的极小化由归纳假设?(u?v)可以被算法标记。 ?如果在考察(q?p)时?(u?v)已经被标记?则(q?p)在算法的第 (4)行被标记?如果在考察(q?p)时?(u?v)还没有被标记?则(q?p)在算法的第 (7)行被放入到(u?v)的关联链表中?而当(u?v)被标记时?在算法的第 (5)行在“递归”过程中(q?p)被标记。 ?结论对|x|=n+1成立。 xx-9-30885.3.2DFA的极小化?充分性。 ?设(q?p)在算法中被标记。 对它被标记的顺序n施归纳?证明q和p是可区分的。 ?令|F(Q-F)|=m?显然?当1nm时?(q?p)是在算法的第 (1)行被标记的?此时?是区分q和p的字符串?(q?)F和(p?)F有且仅有一个成立。 xx-9-30895.3.2DFA的极小化?设nk(km)时结论成立。 即?如果(q?p)是被算法在第k个或者第k个之前标记的?则存在字符串x?x区分q和p。 即?(q?x)F和(p?x)F有且仅有一个成立。 ?当n=k+1时?如果(q?p)是在算法的第 (4)行被标记的?此时?(q?a)?(p?a)一定是在第k个之前被标记的。 设(q?a)=u?(p?a)=v?由归纳假设?存在字符串x?x区分u和v?(u?x)F和(v?x)F?有且仅有一个成立?从而?(q?ax)F和(p?ax)F?有且仅有一个成立。 即?ax是区分q和p的字符串。 xx-9-30905.3.2DFA的极小化?如果(q?p)是在算法的第 (5)行被标记的?则它必在某个状态对(u?v)的关联链表中?而(u?v)必在(q?p)之前被标记。 由归纳假设?存在x区分(u?v)?存在a?(q?a)=u?(p?a)=v使得(q?p)被放在(u?v)的关联链表中?ax是区分q和p的字符串。 ?所以?结论对n=k+1成立。 由归纳法原理?结论对所有的n成立。 xx-9-30915.3.2DFA的极小化5-1DFADFA证明?设M=(Q,q0,F)为算法5-1的输入DFA?M=(Q/,q0,F)是相应的输出DFA。 F=q|qF。 对于?qQ/?a?定义(q?a)=(q?a)xx-9-30925.3.2DFA的极小化?的相容性。 设q=p?也就是说?q和p等价?qp。 即根据算法5-1?状态q和p是不可区分的(未被算法标记)。 此时?对于?a?必须有(q?a)(p?a)。 否则?状态对(q?a)?(p?a)必定被算法标记?从而最终导致(q?p)被算法标记。 此与qp矛盾。 所以?状态(q?a)和状态(p?a)等价?(q?a)=(p?a)。 所以?的定义是相容的。 xx-9-30935.3.2DFA的极小化?L(M)=L(M)。 对?x*?现施归纳于|x|?证明(q0?x)=(q0?x)|x|=0?(q0?)=q0=(q0?)?x*并且|x|=n?(q0?xa)=(q0?x)?a)?=(q0?x)?a)?=(q0?x)?a)?=(q0?xa)由归纳法原理?结论对?x*成立。 xx-9-30945.3.2DFA的极小化?再由F的定义?(q0?x)=(q0?x)F?(q0?x)F。 ?所以?xL(M)?xL(M)。 ?即?L(M)=L(M)。 xx-9-30955.3.2DFA的极小化?证明所构造的M去掉不可达状态后是最小DFA。 如果qp?则对于?xset(q)?yset(p)?x RL y不成立。 事实上?如果qp?则存在z*?z区分q和p?有(q?z)=q和(p?z)=p有且仅有一个是终止状态?这就是说?xz和yz有且仅有一个是L的句子。 所以?x RL y是不成立的。 xx-9-30965.3.2DFA的极小化?例5-11用算法5-1对图5-4所给的DFA进行极小化。 q1q2q3q4q5q0q1q2q3q4xx-9-30975.3.2DFA的极小化xx-9-30985.3.2DFA的极小化?例5-11用算法5-1对图5-7所给的DFA进行极小化。 xx-9-30995.3.2DFA的极小化q1q2q3q4q5q6q7q8q0q1q2q3q4q5q6q7xx-9-301005.4关于正则语言的判定算法定理5-10设DFA M=(Q?q0?F)?L=L(M)非空的充分必要条件是?存在x*?|x|Q|?(q0?x)F。 ?证明?充分性显然。 ?必要性?M的状态转移图中必存在一条从q0到某一个终止状态q f且无重复状态的路?此路中的状态数n|Q|。 此路的标记x满足|x|n-1。 而(q0?x)F。 即x是L=L(M)的长度小于|Q|的句子。 xx-9-301015.4关于正则语言的判定算法定理5-11设DFA M=(Q?q0?F)?L=L(M)为无穷的充分必要条件是?存在x*?|Q|x|2|Q|?(q0?x)F。 ?算法通过判定是否存在x*?|Q|x|2|Q|?(q0?x)F即可。 xx-9-301025.4关于正则语言的判定算法定理5-12设DFA M1=(Q1?1?q01?F1)?DFA M2=(Q2?2?q02?F2)?则存在判定M1与M2是否等价的算法。 ?通过判定两个DFA的极小DFA是否同构就可以判定它们是否等价。 xx-9-301035.4关于正则语言的判定算法定理5-13设L是字母表上的RL?对任意x*?存在判定x是不是L的句子的算法。 ?从一定的意义上讲?接受L的DFA M就是判定x是否L的一个桔子的“算法”。 xx-9-301045.5小结本章讨论了RL的性质。 包括?RL的泵引理?RL关于并、乘积、闭包、补、交、正则代换、同态、逆同态等运算的封闭性。 Myhill-Nerode定理与FA的极小化。 泵引理。 泵引理是用RL的必要条件来用来证明一个语言不是RL的。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 液晶显示器件彩膜制造工测试考核试卷及答案
- 化学浆料处理方法流程考核试卷及答案
- 金属焊接接缝密封工艺考核试卷及答案
- 塑胶场地紫外线防护施工技术规范考核试卷及答案
- 古建琉璃工综合考核试卷及答案
- 茶叶采摘机操作工数字化技能考核试卷及答案
- 河北省石家庄精英新华学校2025-2026学年上册七年级开学数学试卷(含部分答案)
- 医院技术面试题目及答案
- 三端集成稳压器等多领域知识测试卷
- 2025-2026学年赣美版(2024)小学美术三年级上册《团花剪纸》教学设计
- 2025年工地安全员培训考试试题及答案
- 文明有礼+课件-2025-2026学年统编版道德与法治八年级上册
- 供水设备运行维护与保养技术方案
- 木雕工艺课件
- 2025年2个清单28个问题查摆整改措施
- 摩擦力影响因素实验报告范本
- 教育系统应急知识培训课件
- 基坑防护课件
- 2025年黑龙江省龙东地区中考英语真题含答案
- 医疗器械生产质量管理规范2025版
- 2025年医护人员法律法规知识考试题库及答案(一)
评论
0/150
提交评论