知识点
- 形式语言定义
- 自动机定义
- 形式语言与自动机的关系:自动机如何识别形式语言
重难点易错点
- 形式语言:某个字符表(集合)上的字符串的集合(集合),字符集合元素构成的另外一个字符串集合。
注意:形式语言是一个集合!(字符串集合)
- 自动机:具有离散输入输出的数学模型
注意:自动机是一个数学模型!
- 若有一个没有状态的箭头指向一个状态A,则状态A是初始状态
- 若状态A有两圈画起来 则状态A是终止状态
- 圈内是状态标号,连接线上是输入
描述自动机的五元组
- 起始状态
- 终止状态
- 输入(激励)
- 转移规则
- 状态(泛指)
终止状态的本质:若输入字符串使得自动机状态最终转移到终止状态上,即保证最后一个字符输入完毕后自动机的状态落在终止状态上,则称该语言是该自动机(所能识别)的语言
形式语言和自动机的关系
- 形式语言:字符串集合
- 自动机:字符串的识别系统
自动机识别形式语言的案例
- 该自动机如何识别形式语言?
- DA:挑选任意一个待识别的字符串,当前自动机处于初始状态。字符串从左到右依次将每个字符输入到自动机中,若字符串输入结束后,自动机的状态处于终止状态,则识别成功,该字符串属于指定的形式语言,否则失败。
必须是整个识别过程的最终状态是自动机的终止状态才算是识别成功,若中途到达终止状态之后又从终止状态出去不算识别成功
- 例如:对于上述自动机和形式语言,给定0011,起始状态为状态1(上图状态2的输入是
0,1
,表示输入可以为0或者1,都会经过这条状态转移的线(即状态转移规则)
- 输入0,状态转移至2
- 输入0,状态停留在2
- 输入1,2
- 输入1,2
- 达到终止状态,识别成功
- 例如,给定111
- 输入1,状态停留在1
- 输入1,1
- 输入1,1
- 字符串输入完毕,最终状态没有到达终止状态,识别失败