目录 1
绪论 1
0.1 为什么用micro-PROLOG编写程序 1
0.2 各章内容简介 4
第一部分 基本概念 7
K.L.Clark,J.R.Ennals F.G.McCade 7
第一章 事实和询问 7
1.1 开发事实数据库 7
1.2 询问 17
1.3 算术运算关系 23
1.4 询问的求值 23
1.5 询问的求值效率 36
第二章 规则 37
2.1 把询问转换成规则 37
2.2 包含规则的询问的求值方法 44
2.3 关系的递归描述 47
第三章 表 56
3.1 把表作为句子中的个体 56
3.2 取出定长表的元素 57
3.3 取出未知长度的表的元素 60
3.4 表的长度 65
3.5 把回答的集合构成表 71
4.1 否定条件 75
第四章 询问和规则中的复合条件 75
第二部分 使用micro-PROLRG的逻辑程序设计 75
K.L.Clark F.G.McCabe 75
4.2 isall条件 80
4.3 forall条件 84
4.4 or条件 86
4.5 表达式条件 88
4.6 用is-told询问用户 95
4.7 注释条件 99
第五章 表处理 102
5.1 append关系 102
5.2 使用append的规则 105
5.3 sort关系的递归定义 109
5.4 表函数 112
第六章 语法分析导论 114
6.1 对表示为单字表的句子进行语法分析 114
6.2 另一个语法分析程序 118
6.3 表差对的一般性应用 120
第七章 一些必须考虑的实际问题 123
7.1 限制一个条件只有一个解 123
7.2 用“/”条件控制回溯 125
7.3 询问栈和节省空间 128
7.4 尾递归定义 129
7.5 模块的应用 132
第八章 元逻辑程序设计 136
8.1 作为变量的关系名字和变元表 136
8.2 检验所用条件的元程序 139
8.3 操纵别的程序的程序 141
8.4 作为命令的一元关系 147
第三部分 micro-PROLOG的内部表示 155
K.L.Clark F.G.McCade 155
第九章 micro-PROLOG的标准句法 155
9.1 原子(Atoms)和子句(Clauses) 156
9.2 用标准句法设计程序 158
9.3 把句子分析成子句 162
9.4 在标准句法程序中的元变量 164
9.5 访问子句的原语CL 169
第四部分 micro-PROLOG的应用 169
第十章 关键路径分析程序 173
F.Kriwaczek 173
前言 173
10.1 问题的陈述 173
10.2 用micro-PROLOG定义概念 175
10.3 使用引理 180
10.4 关键路径分析程序 182
11.2 MYCIN专家系统 185
11.1 前言 185
P.Hammond 185
第十一章 用于专家系统的micro-PROLOG 185
11.3 用micro-PROLOG表示知识 186
11.4 一个简单的对话骨架 189
11.5 复杂一些的骨架 193
11.6 “why”解释 195
11.7 “how”解释 198
11.8 “whynot”解释 201
第十二章 二人博弈的逻辑 204
M.H.van Emden K.L.Clark 204
12.1 前言 204
12.2 博弈树、强迫树和最小最大原理 206
12.3 阈值和Alpha-Beta修剪(α-β修剪) 212
12.结束语 215
第十三章 micro-PROLOG用于问题求解 218
R.A.Kowalski M.J.Sergot 218
前言 218
13.利用搜索的问题求解 218
13.2 寻求路径的另一种表示形式 221
13.3 其它的搜索策略 226
13.4 带有环检测的搜索 229
13.5 盲目搜索与专家知识的对比 231
练习答案 233
名词索引 257