一阶谓词逻辑深度指南
文档概述
本文档系统阐述一阶谓词逻辑(First-Order Logic, FOL)的理论基础,涵盖语法构造、语义解释、推理规则及重要元定理,为人工智能中的知识表示与自动推理提供坚实的形式化基础。
关键词速览
| 关键词 | 英文术语 | 核心含义 |
|---|---|---|
| 项 | Term | 表示对象的语法表达式 |
| 原子公式 | Atomic Formula | 谓词 applied to 项 |
| 量词 | Quantifier | ∀(全称)、∃(存在) |
| 合一 | Unification | 寻找替换使公式相同 |
| 最一般合一 | MGU | 最通用的合一替换 |
| 斯科伦化 | Skolemization | 消除存在量词 |
| 归结原理 | Resolution | 自动定理证明核心 |
| 模型 | Model | 满足公式的结构 |
| 前束范式 | Prenex Normal Form | 量词前置的标准形式 |
一、一阶逻辑的语法结构
1.1 基本符号表
一阶逻辑的形式语言包含以下基本符号:
变量集 :取值范围为论域中的元素
常量符 :表示论域中的特定对象
函数符 :元函数符记作
谓词符 :元谓词符记作
逻辑符号:命题联结词 ;量词 ;辅助符号
1.2 项的构造
定义(项,Term):
- 变量是项
- 常量是项
- 若 是 元函数符, 是项,则 是项
- 只有有限次应用上述规则产生的表达式才是项
示例:
- (变量)
- (常量)
- (一元函数)
- (嵌套函数)
1.3 公式的构造
定义(原子公式,Atomic Formula):
若 是 元谓词符, 是项,则 是原子公式。
定义(合式公式,Well-Formed Formula):
- 原子公式是合式公式
- 若 是合式公式,则 是合式公式
- 若 和 是合式公式,则 、、、 是合式公式
- 若 是合式公式, 是变量,则 和 是合式公式
- 只有有限次应用上述规则产生的表达式才是合式公式
1.4 量词的作用域与自由/绑定变量
定义(自由变量与约束变量):
- 变量 在公式 中自由,当且仅当它在 中出现且不在任何 或 的作用域内
- 变量 在公式 中约束,当且仅当它在 或 的作用域内
示例:
在公式 中:
- 是约束变量
- 是自由变量
二、一阶逻辑的语义理论
2.1 结构与解释
定义(结构,Structure):
一阶结构 由以下组成:
其中:
- 是论域(非空集合)
- 是解释函数,将:
- 常量映射到论域中的元素:
- 元函数映射到论域上的 元函数:
- 元谓词映射到论域上的 元关系:
2.2 项的解释
给定结构 和变量赋值 ,项的解释定义为:
- (变量)
- (常量)
- (函数)
2.3 公式的真值语义
设 为结构, 为变量赋值:
原子公式: 当且仅当
布尔联结词:
- 当且仅当
- 当且仅当 且
- 当且仅当 或
- 当且仅当 或
量词:
- 当且仅当对所有 ,
- 当且仅当存在 ,使得
2.4 模型与可满足性
定义(模型):
若 对所有赋值 成立,则称 是 的模型,记作 。
定义(有效性):
公式 是有效的(记作 ),当且仅当每个结构都是其模型。
定义(可满足性):
公式集 是可满足的,当且仅当存在结构 和赋值 使得对所有 ,。
三、推理规则与证明系统
3.1 自然演绎系统
自然演绎是一种接近人类推理风格的证明系统,包含以下核心规则:
命题层规则:
| 规则名称 | 符号表示 | 描述 |
|---|---|---|
| 肯定前件 | MP | 从 和 推出 |
| 否定后件 | MT | 从 和 推出 |
| 合取引入 | I | 从 和 推出 |
| 合取消去 | E | 从 推出 (或 ) |
| 析取引入 | I | 从 推出 |
| 双重否定消去 | DNE | 从 推出 |
量词规则:
| 规则名称 | 符号表示 | 描述 |
|---|---|---|
| 全称量词消去 | ∀E | 从 推出 ( 对 可代入) |
| 全称量词引入 | ∀I | 从 推出 ( 不在假设中自由) |
| 存在量词引入 | ∃I | 从 推出 |
| 存在量词消去 | ∃E | 从 和 推出 ( 不在 中自由) |
3.2 合一算法与最一般合一
定义(合一,Unification):
给定两个项或原子公式,寻找一个替换 使得应用 后两者相同。
定义(最一般合一,MGU):
合一子 是最一般的,当且仅当对任何其他合一子 ,存在替换 使得 。
合一算法(Robinson 1965):
UNIFY(θ, s, t):
θ <- 应用当前替换到 s, t
if s = t: return θ
if s = f(s1,...,sn) and t = f(t1,...,tn):
for i = 1 to n:
θ <- UNIFY(θ, si, ti)
return θ
if s = x and t is not containing x:
return compose(x -> t, θ)
if t = x and s is not containing x:
return compose(x -> s, θ)
return failure
3.3 前束范式与斯科伦化
定义(前束范式):
公式 是前束范式,当且仅当它形如 ,其中 , 不含量词。
定理(前束化):
任意一阶公式都可等价地转化为前束范式。
定义(斯科伦化):
将存在量词用斯科伦函数替换,消去所有存在量词的过程。设 转化为 ,其中 是新引入的斯科伦函数。
斯科伦化的影响
斯科伦化后的公式与原公式在可满足性上等价,但有效性不等价。需注意反例 Skolemization 可能丢失。
四、哥德尔定理与一阶逻辑的局限性
4.1 哥德尔完备性定理
定理(哥德尔完备性定理,1930):
一阶逻辑的自然演绎系统是完备的,即:
这意味着:如果 是 的语义后承,则存在从 到 的形式证明。
4.2 紧致性定理
定理(紧致性定理):
公式集 是可满足的,当且仅当 的每个有限子集是可满足的。
推论应用:
- 从 可推出存在有限子集 使得
- 用于证明某些理论没有有限模型
4.3 Lowenheim-Skolem 定理
定理(下Lowenheim-Skolem):
若一阶理论有无穷模型,则它在每个无穷基数上都有模型。
推论(Skolem悖论):
一阶理论可以有可数模型,即使其实质上描述的是不可数结构(如实数)。
4.4 一阶逻辑的表达力局限
一阶逻辑存在以下局限:
- 不能表达良基性:无法在二阶逻辑外形式化”没有无穷下降链”
- 不能完全公理化算术:Peano算术的真算术不可公理化
- 直觉主义拒绝排中律: 不总是可证明
- 模型论复杂性:紧致性等元定理的证明依赖集合论工具
五、与其他逻辑系统的关系
5.1 与命题逻辑的关系
一阶逻辑是命题逻辑的严格扩展:
- 命题逻辑是一阶逻辑中不含量词和谓词的子语言
- 一阶逻辑的判定问题比命题逻辑更复杂(命题逻辑可判定,一阶逻辑不可判定)
5.2 与高阶逻辑的关系
二阶逻辑允许量化谓词和函数:
高阶逻辑表达力更强,但失去可判定性和完备性。
5.3 与模态逻辑的关系
一阶模态逻辑在一阶逻辑基础上增加模态算子 ,应用于可能世界语义学。详见 模态逻辑详解。
六、在人工智能中的应用
6.1 知识表示
一阶逻辑是知识表示与推理的重要工具:
- 描述状态: 表示积木A在积木B上
- 描述动作:
- 描述约束:使用全称量词表达物理定律
6.2 自动定理证明
归结原理(Resolution)是一阶逻辑自动定理证明的核心方法:
- 将公式转化为子句形式
- 应用归结规则进行推理
- 通过反证法证明目标定理
详见 自动定理证明。
6.3 逻辑编程
Prolog 语言基于一阶逻辑的子集(霍恩子句),实现自动回溯和查询。
参考文献
- Enderton, H. B. (2001). A Mathematical Introduction to Logic (2nd ed.). Academic Press.
- Mendelson, E. (2015). Introduction to Mathematical Logic (6th ed.). Chapman and Hall/CRC.
- Robinson, J. A. (1965). A Machine-Oriented Logic Based on the Resolution Principle. Journal of the ACM, 12(1), 23-41.
- 郝兆宽, 杨睿之. (2014). 《数理逻辑:证明及其限度》. 复旦大学出版社.
- 王浩. (2019). 《一阶逻辑与自动定理证明》. 清华大学出版社.