Finite Machine
Outline:
- Intro
- NFA
- DFA
Intro
Finite-state machines can model a large number of problems, among which are electronic design automation,communication protocol design, parsing and other engineering applications.
FA和状态转换图本质上相同
NFA, DFA, RE是等价的
NFA
Def
NFA( 不确定性有限状态机 ) 是一个五元组 A = (Σ,
- 字母表
( ) - 有穷的状态集合 S
- 唯一的初始状态
- 状态转移函数 δ
- 这里
定义为 的幂集
- 接受状态集合
Language
由一个NFA
定义(接受)的语言是从开始状态到某个接受状态的所有路径上的符号串集合,称为一个NFA接受输入字符串x,当且仅当对应的 转换图中存在一条从开始状态到某个接受状态 的路径,使得该路径中各条边上的标号组成符 号串x (路径中可能包含ε边)
只要存在从开始状态到接受状态的路径,符号串就认为被NFA接受
约定: 所有没有对应出边的字符默认指向一个不存在的
dead state
DFA
Def
一个NFA被称为DFA,如果:
- 没有
之上的转换动作, 即标记为 的边, 即 - 对于每个状态s和每个输入符号a, 有且只有一条标号为a的边