1.1 Finite Automata
定义1.5(FA)
A finite autamation is a 5-tuple , where
- is a finite set called the states,
- is a finite set called the alphabet,
- is the transition function,
- is the start state,
- is the set of accept states
状态转移图是描述FA的一种方法,但FA并不总能用图表示(当1.图太大,2.FA的包含变量时),所以不要认为FA就是状态转移图。
定义(FA's computation )
Let be a FA, and let be a string. Then accepts if a sequence of states exists with three conditions:
- , for
如果accepts ,则称 recognizes language
定义1.16(regular language)
A launguage is called a regular launguage if some finite automaton recognizes it.
如何设计一个FA?
为具体的一种语言设计FA没有固有方法,是一个创作的过程。
NOTE: 字符串、language、机器(automata/machion)
定义1.23(regular operation)
以regular language为操作数的集合运算符称为regular operation。
Let and be languages. We define three regular operations as follows:
- Union:
- Concatenation:
- Star: and each
定理(regular languages的封闭性)
The class of regular languages is closed under the Union, Concatenation and Star operation
证明方法:通过NFA+构造法
如果和是两个regular language,则, 和依然是regular language