chapter 5-非正则语言
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实践作业
经过了习题课和实验课程的训练,已经布置的创新训练作业: 请大家检索相关论文,试着写一篇自动机的设计与应用论文,这是 非常好的训练,建模的同学有经验一些,现在就看一下已经发表的 论文是如何选题的。 例如:信计系学生发表的论文 1、自动机和形式语言结构的理论研究.pdf 2、利用自动机理论对收费站收费系统进行设计并实现.pdf 3、基于自动机原理的硬币兑换机的优化及其应用分析.pdf 4、关于一类非正则语言的证明.pdf 5、一种图灵机识别语言算法的进一步描述.pdf 其中的4就是针对这一章来研究的。
然后,我们就把绕圈的部分,即 qs 到qs 部分 用y表示,所以
xy i z A
第3条显然,略。
第五章、非正则语言
例:证明B={ 0 1 ︱n≧0}是非正则的。 证明:设B正则,根据泵引理,存在p为泵长度,选择s= 0 p1p ,即 s p ,令s=xyz,据(3) xy p, xy o j , j p
第五章、非正则语言
以前研究的都是正则语言,无论DFA、NFA、GNFA、还有正则表达 式等等, 他们的关系: DFA NFAGNFA 正则表达式,但是,正则语 言仅仅是很小的一小部分
RG RE
问题:前面学习的都是正则语言RE,那么关键的问题是:哪些是非 正则语言? 局限性?还有不能表达的,如何界定?
第五章、非正则语言
设s∈A的长度为n,则s的状态序列q0q1q2 ﹍qx的长度为n+1,由 于n不小于p,故n+1大于M的状态数p,矛盾,所以,这其中必须有 重复。如同下面面图形的绕圈。
q0 qs qs q p 1 q0 qs q p 1
n n
第五章、非正则语言
关于正则语言的泵引理: 定理:设A是一个正则语言,则存在一个数p(泵长度)使得,如 果s是A中任一长度不小于p的字符串,那么s可以分成3段:s=xyz, 满足下述条件: (1)、对每一个i≥0, xy i z A (2)、 y 0 (3)、xy p 证明思路:利用著名的鸽巢原理,如果要把p只鸽子放到鸽巢,且鸽 巢数小于p,那么,势必有一个鸽巢里至少放进了2只鸽子。 这个也称为抽屉原理。 也就是说中间必须有循环才能解决此问题。
第五章、非正则语言
比如:
0
1 q1 1
0
q2
含奇数个1的,就是用中间的环形来数数。
第五章、非正则语言
关于正则语言的泵引理证明: 定理:设A是一个正则语言,则存在一个数p(泵长度)使得,如 果s是A中任一长度不小于p的字符串,那么s可以分成3段:s=xyz, 满足下述条件: (1)、对每一个i≥0,xy i z A (2)、 y 0 (3)、 xy p 证明:设M=(Q,Σ,δ,q0,F )是识别A的DFA,令泵长度p等于 M的状态数。要证明A中任意长度不小于p的字符串s可以划分成3 段xyz,满足定理中的3个条件。 设s∈A的长度不小于p,考虑M对输入s的计算中经过的状态序列。 它从起始状态q0开始,然后到q1,q2﹍等等。一直到终止状态qx, 即qx为接受状态。
( 2) y
n n
0, 则y=0 k , 0
k j
p,
xy i z 0 p k ( i 1)1p , 当i=2时,xy 2 B
与(1)矛盾。故为非正则的。
第五章、非正则语言
为了运用该引理去证明某语言B不是正则的,关键的便是在B中找出 字符串s,它的长度≧p,但是不能被“抽取”,这必须考虑s分成 xy i z 的所有方式,故寻找s为一个技巧,必须找出那些反映了B的 “非正则性”本质的元素。 每题都是不同的题型和证明技巧,但思路一样。 下面大家试证(c)题。
第五章、非正则语言
例如:B={ 0 1 ︱n≧0} 这台机器造不出,因为必须在输入中承认无穷个0,而我们的自动机 是有穷个状态,故无法用无穷个状态去数0的个数。 那就不是正则的语言? 必须证明。 再例如:C={w︱w中的0和1的个数相同}, D ={w︱w中的01和10作为字串出现的次数相同}。 但C是非正则的,D则是正则的。