目录 1
第1章 绪论 1
1.1 集合的基础知识 2
1.1.1 集合及其表示 2
1.1.2 集合之间的关系 5
1.1.3 集合的运算 6
1.2 关系 12
1.2.1 二元关系 12
1.2.2 等价关系与等价类 13
1.2.3 关系的合成 14
1.2.4 递归定义与归纳证明 15
1.2.5 关系的闭包 18
1.3 图 19
1.3.1 无向图 19
1.3.2 有向图 21
1.3.3 树 23
1.4 语言 24
1.4.1 什么是语言 24
1.4.2 形式语言与自动机理论的产生与作用 25
1.4.3 基本概念 28
1.5 小结 35
习题 35
第2章 文法 42
2.1 启示 43
2.2 形式定义 48
2.3 文法的构造 58
2.4 文法的乔姆斯基体系 68
2.5 空语句 79
习题 82
2.6 小结 82
第3章 有穷状态自动机 86
3.1 语言的识别 86
3.2 有穷状态自动机 89
3.3 不确定的有穷状态自动机 102
3.3.1 作为对DFA的修改 102
3.3.2 不确定的有穷状态自动机的形式定义 104
3.3.3 NFA与DFA等价 106
3.4 带空移动的有穷状态自动机 110
3.5 FA是正则语言的识别器 115
3.5.1 FA与右线性文法 115
3.5.2 FA与左线性文法 120
3.6 FA的一些变形 122
3.6.1 双向有穷状态自动机 122
3.6.2 带输出的FA 123
3.7 小结 125
习题 126
第4章 正则表达式 131
4.1 启示 131
4.2 正则表达式的形式定义 133
4.3 正则表达式与FA等价 135
4.3.1 正则表达式到FA的等价变换 135
4.3.2 正则语言可以用正则表达式表示 144
4.4 正则语言等价模型的总结 150
4.5 小结 152
习题 153
第5章 正则语言的性质 156
5.1 正则语言的泵引理 156
5.2 正则语言的封闭性 162
5.3.1 Myhill-Nerode定理 170
5.3 Myhill-Nerode定理与DFA的极小化 170
5.3.2 DFA的极小化 180
5.4 关于正则语言的判定算法 189
5.5 小结 190
习题 191
第6章 上下文无关语言 194
6.1 上下文无关语言 195
6.1.1 上下文无关文法的派生树 195
6.1.2 二义性 202
6.1.3 自顶向下的分析和自底向上的分析 205
6.2 上下文无关文法的化简 207
6.2.1 去无用符号 208
6.2.2 去ε-产生式 212
6.2.3 去单一产生式组 216
6.3 乔姆斯基范式 219
6.4 格雷巴赫范式 223
6.5 自嵌套文法 229
6.6 小结 230
习题 231
第7章 下推自动机 235
7.1 基本定义 235
7.2 PDA与CFG等价 242
7.2.1 PDA用空栈接受和用终止状态接受等价 243
7.2.2 PDA与CFG等价 246
7.3 小结 257
习题 257
第8章 上下文无关语言的性质 260
8.1 上下文无关语言的泵引理 260
8.2 上下文无关语言的封闭性 267
8.3.1 L空否的判定 273
8.3 CFL的判定算法 273
8.3.2 L是否有穷的判定 274
8.3.3 x是否为L的句子的判定 276
8.4 小结 278
习题 278
第9章 图灵机 280
9.1 基本概念 281
9.1.1 基本图灵机 282
9.1.2 图灵机作为非负整函数的计算模型 289
9.1.3 图灵机的构造 293
9.2 图灵机的变形 300
9.2.1 双向无穷带图灵机 300
9.2.2 多带图灵机 304
9.2.3 不确定的图灵机 306
9.2.4 多维图灵机 308
9.2.5 其他图灵机 310
9.3 通用图灵机 313
9.4 几个相关的概念 315
9.4.1 可计算性 315
9.4.2 P与NP相关问题 316
9.5 小结 316
习题 317
第10章 上下文有关语言 320
10.1 图灵机与短语结构文法的等价性 320
10.2 线性有界自动机及其与上下文有关文法的等价性 323
10.3 小结 325
习题 325
附录A 教学设计 326
附录B 缩写符号 337
词汇索引 339
参考文献 347