谓词

  • 原子命题(陈述)分解为:主语(subject)和谓语(predicate)

    • 个体词:命题中独立存在的个体,常为主语
    • 谓词:刻画个体的性质或它们之间的关系,谓语
  • 例子

    • 命题“小张是大学生”
      • “小张”是个体词,“…是大学生”是谓词
    • 命题“2小于3”
      • 2和3是个体词,“…小于…”是谓词
  • 个体常量:具体、特定的个体词,常用小写字母a,b等等表示

  • 个体变量:抽象或泛指某个体的个体词,常用小写字母x,y等等表示

  • 个体域(domain of discourse):所有个体的集合,也即个体变量的取值集合

  • n元谓词(n-ary predicate):关于n个个体词的谓词,常用大写字母表示,记为P(x1,x2,...,xn)P(x_1,x_2,...,x_n)

  • 一元谓词表示个体的性质,多元谓词表示个体之间的关系.

  • 符号化

    • 命题“小张是大学生”
      • 个体常量a:小张
      • 谓词P(x):x是大学生
      • P(a):小张是大学生
    • 命题“2<3”
      • 个体常量a:2,个体常量b:3
      • 谓词L(y,z):y < z
      • L(a,b): 2 < 3

量词

  • 全称判断(universal quntification):表示个体域中所有的元素都具有某个性质
  • 特称判断(existential quntification):表示个体域中存在某个(些)元素具有某个性质
  • 全称量词x∀x :表示短语“对于任意的xx
  • 存在量词x∃x:表示短语“存在xx

符号化

  • 全称判断常符号化为蕴含式
  • 特称判断常符号化为合取式
  • 例子:
    • 符号化“所有的实数都是有理数” 和“有的实数是有理数”
      • 个体域为全总个体域
      • 引入谓词R(x)R(x)xx是实数,Q(x)Q(x)xx是有理数
      • 符号化结果:x(R(x)Q(x))x(R(x)Q(x))∀x(R(x)→Q(x)),∃x(R(x)∧Q(x))
    • 符号化命题“每人恰有一个最好的朋友”
      • 个体域为全体人的集合
      • 引入谓词: B(x,y)B(x,y):y 是x 的最好朋友
      • 符号化结果:xy(B(x,y)z((zy)¬B(x,z)))∀x∃y(B(x,y)∧∀z((z≠y)→¬B(x,z)))

谓词公式

  • 项的递归定义
    • (1)个体词(个体常量和个体变量,在个体域D上)是项
    • (2)若f(x1,x2,,xn),n1f(x_1,x_2,…,x_n), n≥1DnDD^n→D上的n元函数,t1,t2,,tnt_1,t_2,…,t_n是项,则f(t1,t2,,tn)f(t_1,t_2,…,t_n)是项
    • (3)所有的项都是通过有限次使用(1)和(2)之后得到的符号串
  • 谓词公式的递归定义:
    • (1)若PPn(n1)n(n≥1)元谓词符号, t1,t2,,tnt_1,t_2,…,t_n是项,则P(t1,t2,,tn)P(t_1,t_2,…,t_n)是谓词公式;
    • (2)若A和B是谓词公式,则(¬A)(AB)(AB)(AB)(AB)(¬A)、(A∨B)、(A∧B)、(A→B)、(A↔B)也是谓词公式;
    • (3)若A是谓词公式,xx是个体变量,则xAxA∀xA、∃xA也是谓词公式;
    • (4)所有的谓词公式都是通过有限次使用(1)、(2)和(3)之后得到的符号串。
  • 在谓词公式xA∀xAx∃xA中,xx指导变量,量词的辖域AA。辖域中的变量xx约束(bound)变量AA中的非约束变量称为自由(free)变量
  • 谓词公式类型
    • 有效公式(validity):关于一切解释的真值均为真
    • 矛盾公式:关于一切解释的真值均为假
    • 可满足公式: 至少存在一种使其为真的解释
  • 命题公式的代换实例
    • 命题公式A(p1,p2,,pn)A(p_1,p_2,…,p_n),谓词公式A1,A2,,AnA_1,A_2,…,A_n。分别用A1,A2,,AnA_1,A_2,…,A_n替换A中的p1,p2,,pnp_1,p_2,…,p_n,所得到的谓词公式称为AA的代换实例
    • 永真公式的代换实例是有效公式
    • 永假公式的代换实例是矛盾公式

谓词公式解释

  • 谓词公式的解释II由下面四部分组成:

    • 非空个体域集合DD
    • 分别指定公式中的自由变量和常量符号为DD中的元素
    • 指定公式中的n元函数符号为DnD^nDD的函数
    • 指定公式中的n元谓词符号为DnD^n{0,1}\{0,1\}的函数
  • 谓词公式xP(x)∀xP(x)在解释II下为真\Leftrightarrow对于任意xDx\in DPI(x)=1P^I(x)=1

  • 谓词公式xP(x)∃xP(x)在解释II下为真\Leftrightarrow存在xDx\in D,使PI(x)=1P^I(x)=1

  • 若D有限,D=a1,a2,,anD={a_1,a_2,…,a_n},则在解释II

    • xP(x)∀xP(x)为真 \Leftrightarrow PI(a1)PI(a2)...PI(an)=1P^I(a_1)∧P^I(a_2)∧...∧P^I(a_n)=1
    • xP(x)∃xP(x)为真 \Leftrightarrow PI(a1)PI(a2)PI(an)=1P^I(a_1)∨P^I(a_2)∨…∨P^I(a_n)=1

谓词公式的等值演算

  • 谓词公式的等值
    • 谓词公式A和B等值(A=B):A和B对任意解释都取相同的真值

量词的基本恒等式

  • AABB是任意的谓词公式,A(x,y)A(x,y)含自由变量xxyyA(x)A(x)B(x)B(x)含自由变量xxBB不含自由变量xx
  • ¬xA(x)=x¬A(x)\neg \forall xA(x) = \exists x \neg A(x)¬xA(x)=x¬A(x)\neg \exists x A(x) = \forall x\neg A(x)
  • xyA(x,y)=yxA(x,y)\forall x\forall y A(x,y) = \forall y\forall x A(x,y)xyA(x,y)=yxA(x,y)\exists x\exists yA(x,y) =\exists y\exists xA(x,y)
  • xB=B\forall xB =BxB=B\exists xB=B
  • AA中不含个体变量yyxA(x)=yA(y)\forall xA(x)=\forall yA(y)xA(x)=yA(y)\exists xA(x) = \exists yA(y)
  • x(A(x)B(x))=xA(x)xB(x)\forall x(A(x)\wedge B(x)) = \forall xA(x) \wedge \forall xB(x)
  • x(A(x)B(x))=xA(x)xB(x)\exists x(A(x)\vee B(x)) = \exists xA(x)\vee \exists xB(x)
  • x(A(x)B)=xA(x)B\forall x(A(x)\vee B) = \forall xA(x)\vee Bx(A(x)B)=xA(x)B\forall x(A(x)\wedge B) = \forall xA(x)\wedge B
  • x(A(x)B)=xA(x)B\exists x(A(x)\vee B) = \exists xA(x)\vee Bx(A(x)B)=xA(x)B\exists x(A(x)\wedge B) = \exists xA(x)\wedge B
  • x(A(x)B)=xA(x)B\forall x(A(x)\rightarrow B) = \exists xA(x)\rightarrow Bx(BA(x))=BxA(x)\forall x(B\rightarrow A(x))=B\rightarrow \forall xA(x)
  • x(A(x)B)=xA(x)B\exists x(A(x)\rightarrow B) = \forall xA(x)\rightarrow Bx(BA(x))=BxA(x)\exists x(B\rightarrow A(x))=B\rightarrow \exists xA(x)

前束范式 (prenex normal form, PNF)

  • 前束范式:谓词公式,形如x1x2xnB□x_1□x_2…□x_nB,是量词x1,x2,,xnx_1,x_2,…,x_n是个体变量BB是不含量词的谓词公式
  • 前缀:x1x2xn□x_1□x_2…□x_n
  • 主式:BB
  • 任何谓词公式都存在与之等值的前束范式

求前束范式的方法

  • 消去无用量词(若有)
  • 换名,消去重名个体变量
  • 消去→和↔
  • 内移¬至谓词前面
  • 量词前移
  • 例子:
    • x(A(x)zB(z,y)¬zyC(x,y))∀x(A(x)∨∀zB(z,y)→¬∀z∀yC(x,y))
    • =x(A(x)zB(z,y)¬yC(x,y))=∀x(A(x)∨∀zB(z,y)→¬∀yC(x,y))
    • =x(A(x)zB(z,y)¬uC(x,u))=∀x(A(x)∨∀zB(z,y)→¬∀uC(x,u))
    • =x(¬(A(x)zB(z,y))¬uC(x,u))=∀x(¬(A(x)∨∀zB(z,y))∨¬∀uC(x,u))
    • =x((¬A(x)z¬B(z,y))u¬C(x,u))=∀x((¬A(x)∧∃z¬B(z,y))∨∃u¬C(x,u))
    • =xzu((¬A(x)¬B(z,y))¬C(x,u))=∀x∃z∃u((¬A(x)∧¬B(z,y))∨¬C(x,u))

一阶逻辑的推理理论

  • 两种模型的基本框架相同,命题公式替换为谓词公式,永真公式替换为有效公式,命题公式等值替换为谓词公式等

量词的推理规则

  • 全称量词消去规则(Universal Specification, US)
    • 个体常量eexA(x)∀xA(x)推出A(e)A(e)
    • 个体变量yyxA(x)∀xA(x)推出A(y)A(y)
    • AA中,xx不在任何y∀yy∃y的辖域内自由出现
  • 全称量词引入规则(Universal Generalization, UG)
    • A(x)A(x)对定义域中的任意xx成立,推出xA(x)∀xA(x)
    • AA不含额外个体常量,前提中没有任何自由的个体变量xx
  • 存在量词消去规则(Existential Specification, ES)
    • xA(x)推出A(e)∃xA(x)推出A(e)
    • ee是在证明中未出现过的新的额外个体常量
  • 存在量词引入规则(Existential Generalization, EG)
    • 个体常量eeA(e)A(e)推出xA(x)∃xA(x),在AA中,ee不在任何x∀xx∃x的辖域内出现
    • 个体变量yyA(y)A(y)推出xA(x)∃xA(x),在AA中,yy不在任何x∀xx∃x的辖域内自由出现

一阶逻辑形式证明的基本步骤

  • (1)消去量词
  • (2)利用不涉及量词的推理规则进行推理
  • (3)引入量词(若结论中有量词)
  • 例子:
    • x(F(x)¬H(x)),x(H(x)G(x)),x(¬G(x))¬xF(x)∀x(F(x)→¬H(x)),∀x(H(x)∨G(x)), ∃x(¬G(x)) ⇒ ¬∀xF(x)的形式证明
    • x¬G(x)∃x¬G(x),前提引入
    • ¬G(e)¬G(e),ES规则
    • x(H(x)G(x))∀x(H(x)∨G(x)),前提引入
    • H(e)G(e)H(e)∨G(e),US规则
    • H(e)H(e),析取三段论
    • x(F(x)¬H(x))∀x(F(x) →¬H(x)),前提引入
    • F(e)¬H(e)F(e)→¬H(e),US规则
    • ¬F(e)¬F(e),拒取式
    • x(¬F(x))∃x (¬F(x)),EG规则
    • ¬xF(x)¬∀x F(x),置换