形式语言与自动机 - 第三章 - 有限自动机和右线性文法

本文详细介绍了有限自动机(DFA与NFA)的概念,包括它们的形式定义和等价转换。重点讨论了有转换的NFA及其闭包运算,并阐述了正则表达式与正则集的定义及两者之间的相互构造。同时,提到了右线性文法与有限自动机的联系,以及右线性语言的特性,如泵浦引理、封闭性和判定问题。最后,简要提及了双向有限自动机和有输出的自动机。
摘要由CSDN通过智能技术生成

1. 有限自动机的概念

1.1 DFA和NFA

DFA(确定有限自动机):后继状态是唯一的
NFA(不确定有限自动机):后继状态不唯一

2. 有限自动机的形式定义

2.1 DFA

当输入一个字符串时,转换函数用表示

2.2 NFA

3. DFA和NFA的等效

构造方法

从状态 [q_0] 出发,仅当某些状态是从先前已加入的状态经过一个转移能够到达的时候,才将这些状态加到相应的DFA中

例题

4. 具有 \varepsilon 转换的不确定有限自动机

4.1 有\varepsilon转换的NFA和无\varepsilon转换的NFA的区别

对有\varepsilon转换的NFA,转换函数 \delta 应为 Q\times \left \{ T\cup \left \{ \varepsilon \right \} \right \}\rightarrow 2^Q 的映射

4.2 \varepsilon - 闭包

例.

状态 q_0 的\varepsilon -闭包:\varepsilon -closure(q_0) = \left \{ q_0,q_2 \right \}

表示含义:从q_0出发有两条标有\varepsilon路径 q_0q_0,q_0q_2

概念定义

 

 \delta '

4.3 有\varepsilon转换的NFA和无\varepsilon转换的NFA等效

构造过程

5. 正则式与正则集 

5.1 定义

1. 语言可以用类似代数的表达式来表达,称为正则表达式,简称正则式

2. 正则式所表示的集合称为正则集,是字母表上的特殊字符串的集合

3. 正则表达式的值是一个语言

5.2 求右线性文法的正则式 

1. 将已给的右线性文法写成一组联立方程

2. 求方程的解,得到正则式

求解规则R:

例.

6. 右线性文法和正则集

正则集是由右线性文法所产生的语言

7. 正则表达式和有限自动机 

扩充正则式 

7.1 由正则式构造NFA

方法:

例.

P61 例1

7.2 由DFA构造正则式

构造过程 

8. 右线性语言与有限自动机

8.1 由右线性文法构造NFA

构造方法:

8.2 由DFA构造右线性文法 

构造方法: 

8.3 总结

至此已证明了正则文法、有限状态自动机和正则表达式是3个等价的计算模型,还可以证明,右线性文法和左线性文法是等价的

因此,下列命题是等价的:

9. 右线性语言的性质

9.1 DFA的化简

9.1.1 等价的概念

9.1.2 DFA M的最小化

 

例. P68 例1

9.1.3 计算状态集划分的算法

填表法:

例. P69 例2 

9.2 泵浦引理

9.2.1 作用

泵浦引理给出了正则集的一个重要性质,利用这个性质可以判断某个语言是不是正则集

9.2.2 内容

例. P71 例3

正则集一定满足泵浦引理,而满足泵浦引理的不一定是正则集

9.3 右线性语言的封闭性

设 L1 和 L2 为右线性语言,则

L_1\cup L_2 为右线性语言

L_1\cap L_2 为右线性语言

L_1L_2 为右线性语言

L_1^* 为右线性语言

为右线性语言:

右线性语言对置换是封闭的:

9.4 判定问题 

9.4.1 判定空问题

9.4.2 判定成员问题

9.4.3 判定等价问题 


10. 双向和有输出的有限自动机 

10.1 双向有限自动机

概念

形式定义 

格局定义与格局变化 

接受的字符串 

10.2 有输出的自动机 

米兰机的形式定义

摩尔机的形式定义 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值