知识卡片
谓词是真值函数:n元谓词分类与两条推理规则
内容
含有参数(形参/占位符)的语句(如”x是恒星”)不是命题,因为在实参替换形参
之前无法判定真假;这类语句是谓词——一个真值函数,用实参替换形参、调用后
返回一个真值。谓词按形参个数分类为n元谓词(n-place/n-ary predicate),
n=1为一元、n=2为二元;命题正是形参个数为0的”零元谓词”(呼应[[关系变量谓词
与命题及闭合世界假设]]中命题与谓词关系的更早铺垫)——由此得到一条精炼总结:
所有命题都是谓词,但大部分谓词都不是命题。联结词(NOT/AND/OR等)不仅能组合
命题,也能组合一般谓词,产生的复合谓词的”元数”由它包含的形参个数决定,而
不是由它包含几个简单谓词决定(例如(x是恒星)OR(x在地球和y之间)是二元谓词,
因为它含x、y两个形参)。谓词逻辑是一个包含谓词、联结词、以及基于两者构造
推理的形式化系统,核心是推理规则——从既有事实(公理,或已证明的定理)推导
出新事实(定理)的规则。两条最重要的推理规则是:肯定律(modus ponens,
“如果p为真,且IF p THEN q为真,则可推断q为真”);否定律(modus tollens,
“如果IF p THEN q为真,但q为假,则可推断p为假”)——否定律直接对应数据库
完整性检查的逻辑结构:请求一个更新时,先假设更新后的新数据库状态会使已知
的完整性约束(即”IF 新状态 THEN 约束成立”这条隐含蕴涵)成立,如果检查发现
约束(q)为假,就必须推断”新状态合法”(p)为假,从而拒绝这次更新。
参考来源
- 位置:《SQL与关系数据库理论——如何编写健壮的SQL代码》第10章"SQL与逻辑"
10.3节"简单谓词和复合谓词"(源文件:OEBPS/text00111.html)
- 结论依据:原文明确"当且仅当命题为真时,实参满足谓词……所有的命题都是
谓词,但大部分谓词都不是命题……'肯定律'……如果p为真,并且如果IF p THEN
q为真,则可以推断q为真……'否定律'……如果IF p THEN q为真,但q为假,则
可以推断p为假。此规则与数据库完整性检查过程相关"。
- 原始内容:所有的命题都是谓词,但大部分谓词都不是命题……肯定律……如果p
为真……则可以推断q为真……否定律……此规则与数据库完整性检查过程相关。