- 形式语言与自动机本质上是一种数学模型。
- 形式语言和自动机的理论基础  
  - Chomsky对自然语言的研究
  - 巴科斯－诺尔范式(BNF)
  - Kleene在研究神经细胞时建立的自动机模型
- 先修知识：集合、关系、图论
- 分类
  - 0型 短语文法 图灵机(Turing machine)
  - 1型 上下文有关文法 线性有界自动机LBA(Linear Bounded Automaton)
  - 2型 上下文无关文法 下推自动机PDA(PushDown Automaton)
  - 3型 右线性文法 正则文法 有限自动机(Finite-state machine)


1. 形式语言概念
  1. 字母表，字(**字母表**中的符号组成**字**)
  2. 字和字母表的运算(字的**连接**运算，字母表的**幂**是字的集合，**星闭包**是所有字的集体，**正闭包**是除空字外所有字的集体)
  3. 语言(**语言**是闭包的子集)
  4. 语言的运算(**并**，**连接**，**闭包**，**幂**)
2. 正规语言
  1. 基本概念

     - **正规表达式**就是满足并，连接和闭包这三种运算的表达式。
     - **正规语言**就是满足正规表达式的语言。

  2. 有限自动机(计算能力等价于正规表达式)

    0. 有限自动机=**状态集**+**输入符号集**+**转移函数**+**开始状态**+**终态集**

    1. 确定有限自动机DFA(deterministic finite automaton)

       DFA就是一些**状态**和这些状态转换的**规则**。DFA的语言就是满足DFA的所有**字的集合**。

    2. 非确定有限自动机NFA

       NFA的状态转换不唯一。

    3. 带ε-转移的非确定有限自动机

    4. 有限自动机的确定化

       从NFA或ε-NFA构造等价的DFA的算法(**子集构造法**)。

    5. DFA的最小化

       使DFA的状态数最小的算法(**填表算法**)

    6. 从正规表达式到有限自动机

       从正规表达式构造ε-NFA的算法
3. 上下文无关文法
  1. 上下文无关文法的基本概念

     上下文无关文法=**终结符集**+**非终结符集**+**开始符号**+**产生式**

  2. 归约与推导

     **归约**是自下而上的过程，是将产生式的右部替换为产生式的左部。

     **推导**是自上而下的过程，是将产生式的左部替换为产生式的右部。

  3. 上下文无关语言

  4. 句型，句子与分析树

     **句型**是一个可以由开始符号推导出的单词序列

     **句子**是全部由终结符组成的句型

     把从开始符号到句子的推导过程用有向树的形式表现出来就叫**分析树**。

  5. 归约、推导与分析树之间的关系

  6. 文法的二义性

     如果一个文法存在两棵及以上的分析树，则称它为**二义的**。如果存在一棵及以下的分析树，则称它为**无二义的**。
