形式语言与自动机 Part.4 正则语言,2DFA,Mealy&Moore机

课程名:形式语言与自动机

作者:Lupinus_Linn

许可证:CC-BY-NC-SA 3.0 创作共用-署名-非商业性-相同方式共享

  • 署名(英语:Attribution,BY):您(用户)可以复制、发行、展览、表演、放映、广播或通过信息网络传播本作品;您必须按照作者或者许可人指定的方式对作品进行署名。
  • 非商业性使用(英语:Noncommercial,NC):您可以自由复制、散布、展示及演出本作品;您不得为商业目的而使用本作品。
  • 相同方式共享(英语:Sharealike,SA):您可以自由复制、散布、展示及演出本作品;若您改变、转变或更改本作品,仅在遵守与本作品相同的许可条款下,您才能散布由本作品产生的派生作品。(参见copyleft。)

引用:

  • 本文中部分文字与图片引用自北京邮电大学计算机学院王柏教授的《形式语言与自动机》课程课件。
  • 绪论中的证明方法部分引自清华大学王生原老师课件。
  • 部分题目插图引用自北京邮电大学出版社《形式语言与自动机 第二版》教材。

在此一并表示感谢,并不做商业用途。

本笔记所有内容的传送门

Part.1绪论, Part.2 语言与文法
Part 3.有限自动机
Part.4 正则语言,2DFA,Mealy&Moore机
Part.5 上下文无关语言与下推自动机(PDA)
Part.6 图灵机

Part.4 正则语言

4.1 基本概念

  • 正则语言:满足正则语言的判定定理的语言。
  • 正则(表达)式:用类似代数表达式的方法表示正则语言。
  • 正则式的相等:表示的语言相同。
  • 正则集:满足正则式的字符串的集合。
  • 正则式和语言的的联合运算+,连接运算•,正闭包 L + L^+ L+,星闭包 L ∗ L^* L及运算性质。

注1:正则集是T* 的子集。(即正则集是T*上的语言)
注2:L+包含ε当且仅当L包含ε。
注3:每个正则集至少对应一个正则式(可有无穷多 个正则式)

4.2 右线性文法↔正则表达式

两个等价

  1. 左线性文法和右线性文法等价。
  2. 右线性文法和正则式等价(右线性文法产生的语言都是正则语言,正则语言都可以用右线性文法产生)
    从右线性文法导出正则式:设 x → α x + β , α ∈ T ∗ , x ∈ N , t h e n   x = α ∗ β x\rarr \alpha x+\beta,\alpha \in T^*,x\in N,then\ x=\alpha^*\beta xαx+β,αT,xN,then x=αβ。不断代入消元,最后得出 S = < R E > S= <RE> S=<RE>

4.3 正则语言可以表示为有限自动机、正则表达式和右线性文法

三者两两等价,都表示正则语言

生成终结符吃掉,并转移到产生式的非终结符。
直接生成终结符的非终结符是被接受的。
每个状态名对应一个非终结符,转移条件和转移到的状态构成产生式右侧。
被接受的状态额外还有仅产生终结符的产生式。最后做文法三消。
类似解方程,代入消元。
按照运算顺序,将基本运算还原成文法。
状态消去法。被消去的中间状态对<射入,射出>的状态对都有影响。
按照运输按顺序,将基本运算画成自动机。
右线性文法
有限自动机
正则表达式

例子

G=({S,A},{0,1},P ,S)其中P:S—>1A,A—> 0A |1S|0

  1. 文法转正则式:解方程
    A → 0 A ∣ 1 S ∣ 0 , 即 A → 0 A ∣ 11 A ∣ 0 , 解 得 A = ( 0 + 11 ) ∗ 0 , 得 S = 1 ( 0 + 11 ) ∗ 0 A\to 0A|1S|0,即A\to 0A|11A|0,解得A=(0+11)^*0,得S=1(0+11)^*0 A0A1S0,A0A11A0A=(0+11)0S=1(0+11)0

  2. 正则式转文法:按照运算顺序,按基本运算还原。
    1 , ( 0 + 11 ) ∗ , 0 1,(0+11)^*,0 1,(0+11),0是依次连接的,对应文法的连接,则 S → 1 A 0 , A → ( 0 + 11 ) ∗ S\to 1A0,A\to (0+11)^* S1A0,A(0+11)
    闭包运算的文法是 A → a A ∣ ϵ A\to aA|\epsilon AaAϵ,所以 A → 0 A ∣ 11 A ∣ ϵ A\to 0A|11A|\epsilon A0A11Aϵ

  3. 文法转自动机:生成一个吃一个,生成终结符串的,转移到一个新增的接受状态。
    因为mermaid语法的限制,用方形框表示接受。
    S → 1 A S\to 1A S1A,则状态 q S q_S qS用字符 1 1 1转移到状态 q A q_A qA,其他以此类推。
    A A A可以推出终结符串 0 0 0,则 q A q_A qA通过 0 0 0转移到新的接受状态 q H q_H qH

    1
    0
    1
    0
    qs
    qa
    qh
  4. 自动机转文法:每一个转移,对应一个产生式。转移到接受状态的,额外增加推出终结符串。
    q S q_S qS接受 1 1 1转移到 q A q_A qA,所以文法有产生式 q S → 1 q A q_S\to 1q_A qS1qA,其他以此类推。
    最后可能要做三消(消单消空消递归)。
    q S → 1 q A q A → 1 q S q A → 0 q A q A → 0 q H ∣ 0 q_S\to 1q_A\\ q_A\to 1q_S\\ q_A\to 0q_A\\ q_A\to \bold{0q_H|0} qS1qAqA1qSqA0qAqA0qH0

  5. 自动机转正则式:状态消去法
    要消去状态 q A q_A qA,入射 q A q_A qA的有 { q S } \{q_S\} { qS},出射 q A q_A qA的有 { q H , q S } \{q_H,q_S\} { qH,qS},所以对 q S q_S

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
内容简介编辑 本书采用通俗的语言和形象化的方法来表达概念和定理,逻辑严谨、思维缜密,可作为高等院校计算及相关专业“形式语言自动机”课程的教材。 [1] 作者简介编辑 陈有祺,南开大学信息技术科学学院教授,多年来一直从事计算软件方面的教学和研究工作,从1993年起享受国务院政府特殊津贴。讲授的课程主要有程序设计语言.编译原理,数据结构、形式语言自动机等,研究领域包括编译理论、人工智能、自然语言理解,形式语言等。1980年至1982年在美国西密歇根大学作访问学者,研修人工智能和形式语言,回国后一直为研究生讲授“形式语言自动机”课程。相关著作包括:《BCLR(k)文法及其分析算法》、《广义上下文无关文法和它的法分析》、《从输入输出序列确定自动机的结构》,《形式语言自动机》等。 编辑推荐编辑 本书以四类形式语言(短结构语言,上下文有关语言。上下文无关语言正则语言)和四种自动机(有穷自动机、下推自动机.图灵,线性有界自动机)为主线,讨论了形式语言自动机方面的主要理论成果和应用实例。 本书的主要特色: 取材丰富。涵盖了该领域国内外现有教材的主要内容。 在写作方法上,循序渐进,深入浅出。在概念的引入和定理的证明上,尽量采用通俗的语言和形象化的方法来表达。 理论与实际相结合。除具有配合定理和定义的大量例题外,许多章节还有现代计算技术中应用的实例。 适应面广。既适合作为本科生的教材,也适合作为研究生的教材。 图书目录编辑 出版者的话 序 教学建议 第1章 预备知识 1.1 定理及其证明方法 1.1.1 演绎法 1.1.2 反证法 1.1.3 归纳法 1.2 集合及其基本运算 1.2.1 集合基础知识 1.2.2 集合的基本运算 1.2.3 关系与映射 1.3 图和树简介 1.3.1图的基本概念 1.3.2图的矩阵表示 1.3.3 树的基本知识 1.4 字母表、字符语言 习题 第2章 文法的一般理论 2.1 问题的提出 2.2 形式文法与形式语言 2.3 文法的乔姆斯基分类 习题 第3章 有穷自动机 3.1 非形式化描述 3.2 有穷自动机的基本定义 3.3 非确定的有穷自动机 3.4 具有£转移的有穷自动机 3.5 有穷自动机的应用 3.5.1 在文本中查找字符 3.5.2 用于文本搜索的非确定的有穷自动机 3.5.3 识别关键字集合的DFA 3.6 具有输出的有穷自动机 习题 第4章 正则表达式 4.1 正则表达式的定义 4.2 正则表达式和有穷自动机的关系 4.3则表达式的等价变换 4.3.1 交换律与结合律 4.3.2 单位元与零元 4.3.3 分配律 4.3.4 与“*”构造有关的定律 4.3.5 发现正则表达式定律的一般方法 4.4 正则表达式的应用 4.4.1UNIX中的正则表达式 4.4.2 词法分析 4.4.3 查找文本中的模式 习题 第5章正则语言的性质 5.1 正则文法和有穷自动机的关系 5.2 正则语言的泵引理 5.3 正则语言的封闭性 5.4 正则语言的判定算法 5.5 有穷自动机的最小化 习题 第6章 上下文无关文法 6.1上下文无关文法的法分析 6.2 上下文无关文法的化简 6.3 上下文无关文法的范式 6.4 上下文无关文法的应用 6.4.1 用上下文无关文法描述语言 6.4.2 法分析器生成工具YACC …… 第7章 下推自动机 第8章 上下文无关语言的性质 第9章 图灵导引 第10章 不可判定性 第11章 线性有界自动机和上下文有关文法 第12章 确定的上下文无关语言和LR(k)文法 参考文献 …… 参考资料

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值