AIL C4 一阶逻辑

在一阶逻辑的框架下研究知识的表示和推理:

  • 谓词和量词的概念
  • 一阶语言与对一阶语言的解释
  • 一阶语义蕴涵,形式推演,算法和计算复杂性等。

谓语和量词

  • 论域 : 所有被讨论对象的集合。
  • 个体:域中的元素,即被讨论的对象。
    • 常元:用于表示确定对象的符号。
    • 变元:用于表示给定论域上的任意一个对象的符号。
  • 函词:给定一个论域,从一组个体一个个体的映射关系。
    1. 个体常元和个体变元是
    2. 如果t1,t2,,tnt_1,t_2,\cdots,t_nffnn函词, 那么 f(t1,,tn)f(t_1,\cdots , t_n) 也是
    3. 有限次使用(1)(2)生成的是
  • 谓词:描述个体之间的关系。谓词包含着可放置讨论对象的位置,即 空位空位的数量称为谓词的元数。用一元谓词表示的关系称为个体的性质
  • 量词
    • 全称量词:描述某个变元的取值范围涵盖一整个论域,记作 x\forall x,读作“ 对于所有的 xx”;
    • 存在量词:描述在给定论域中存在某个个体,记作 x∃x,读作“ 存在 xx”。

谓词和量词是一阶逻辑的主要研究对象。

  • 单称命题
  • 全称命题
  • 特称命题

一阶语言 L\cal{L}

一阶语言符号

组成

  • 个体常元,正体小写拉丁文字母。

    a,b,c\rm a,b,c

  • 个体变元,正体小写拉丁文字母。

    x,y,z\rm x,y,z

    • 个体自由变元: 变元不受到量词的约束。
    • 个体约束变元: 变元受到量词的约束。
  • 函数符号:与自然语言语句中的函词对应,正体小写拉丁文字母。

    f,g,h\rm f,g,h

    • 函数符号和函数

      函数符号是符号,函数是对函数符号的一种解释。通常对于函数符号f\rm f,用ff来表示解释的函数。

    • 函数符号的元数

      任何函数符号 f\rm f 有确定的元数m1m ≥ 1,称元数mmf\rm fmm元函数符号。特别地,当m=0m=0,我们认为00元函数是一种个体。

  • 关系符号:与自然语言语句中的谓词对应,正体大写拉丁文字母

    F,G,H\rm F,G,H

    函数符号的元数

    任何关系符号F\rm F 有确定的元数n1n ≥ 1,称元数nnF\rm Fnn元关系符号。特别地,当n=0n=0,我们认为00元关系符号是一种命题。

  • 量词符号,\forall,\exist

  • 联结符号:与命题逻辑的相同。

  • 标点符号: 左括号((、右括号))和逗号,,

项,Term(符号)

  1. 变元和常元是项。
  2. 如果t1,t2,,tnt_1,t_2,\cdots,t_n是项,f\rm fmm元函数,则 f(t1,t2,,tn)\rm f(t_1,t_2,\cdots,t_n) 是项。
  3. 只有有限次使用 (1)(2) 条款生成的符号串才是项。

BNF 形式:

t::=xaf(t,t,,t)\rm t ::= x|a|f(t,t,\cdots,t)

基项:不含自由变元的项。表示的是论域中确定的个体

公式

  1. F(t1,,tn)\rm F(t_1, \cdots , t_n)是公式,称为原子公式。其中F\rm Fnn元关系符号,t1,,tn\rm t_1, \cdots , t_n
  2. 如果 t1\rm t_1t2t_2 是项,那么 (t1t2)(t_1 \equiv t_2)原子公式
  3. 如果 ϕ\phiψ\psi 是公式,且 xx 是出现于 ϕ\phi 中的自由变元(可被记为ϕ(x)\phi(x)),则 (¬ϕ),(ϕψ),(ϕψ),(ϕψ),(ϕψ),(xϕ),(xϕ)(\lnot\phi),(\phi \wedge \psi),(\phi \vee \psi),(\phi \rightarrow\psi),(\phi \leftrightarrow\psi),(\forall x\phi),(\exist x\phi) 是公式。
  4. 只有有限次使用 (1)(2)(3) 条款生成的符号串才是公式。
  • 子公式:在一个公式中,可以包含公式,则称后者为前者的子公式
  • 变元xx 在公式 ϕ\phi约束出现:如果 ϕ\phi 包含一个子公式 ψ\psixx 出现于 ψ\psi 中,且 ψ\psi 是以x\forall xx\exist x 为起始的字符串;
  • 变元 xx 在公式 ϕ\phi自由出现:如果xx不是约束出现
  • 句子:任何变元都不是自由出现公式

谓词的顺序对语义的影响

关系符号 F(x):x\rm F(x) : x是安全事故,G(x,y):x\rm G(x,y):x有原因y\rm y

  1. 任何安全事故都有原因。

    F(x)y,G(x,y)\forall \rm F(x) \rightarrow \exist y,G(x,y)

  2. 任何安全事故都有共同的原因。

    y,x,F(x)G(x,y)\exist\rm y,\forall x,F(x) \rightarrow G(x,y)

代换

可代换: 称t\rm tϕ\phi 中自由变元x\rm x可代换的,若ϕ\phix\rm x的任何自由出现都不在y,y\rm \forall y,\exist y的辖域内。(即x\rm x是自由的,而不被约束)

代换 θ\theta 是一个有限的对子集合 {x1/t1,,xn/tn}\{x_1/t_1, \cdots , x_n/t_n\},其中 xix_i 是变元,tit_i 是项,tit_ixix_i可代换的

给定公式ϕ\phi,代换θ\theta ,则 ϕθ\phi\theta 是一个公式,在该公式中所有xix_i自由出现都被替换为tit_i。 也把 ϕ{x/t}\phi\{x/t\} 写作 ϕtx\phi^x_t

一阶语言语义

解释

关系符号函数符号变元符号个体符号的含义与论域有关。

给定论域DD解释是一个映射:

  • 个体符号映射为DD中的对象
  • nn函数符号映射为从DnD^nDD 的函数
  • nn关系符号映射为DD 上的 nn 元关系。

另一方面,对于每个自由变元,可以把论域中的对象指派给它,指派也是一个映射。解释指派统称作赋值,记作 vv

即有:

  • 对于个体常元 a\rm a, 把它解释为的DD中的个体,记作v(a)Dv(\rm a) \in D
  • 对于 nn函数符号 f\rm f, 把它解释为从DnD^nDD函数,记作 v(f):DnDv(\rm f) : D^n \mapsto D
  • 对于 nn谓词符号 F\rm F, 把它解释为DD 上的 nn关系,记作 v(F)Dnv(\rm F) \sube D^n
  • 对于自由变元 x\rm x,给它指派DD 中的个体,记作 v(x)Dv(\rm x) \in D

通常把 v(a),v(f),v(F),v(x)v({\rm a}), v({\rm f}), v({\rm F}), v({\rm x}) 分别记作 av,fv,Fv,xv{\rm a}^v,{\rm f}^v,{\rm F}^v,{\rm x}^v

项的值

一阶逻辑语言的项在以DD为论域的赋值 vv 之下的值递归地定义如下:

  1. av,xvD{\rm a}^v, {\rm x}^v \in D.
  2. f(t1,,tn)v=fv(t1v,,tnv)D{\rm f(t_1,\cdots, t_n)}^v = {\rm f}^v({\rm t}^v_1,\cdots, {\rm t}^v_n) \in D

公式的真假

类似公式的定义,一阶公式的真假值可递归地定义如下:

  • F(t1,,tn)v={1, (t1v,,tnv)Fv0, otherwise{\rm F(t_1,\cdots , t_n)}^v = \begin{cases}1,\ ({\rm t}_1^v,\cdots , {\rm t}_n^v)\in{\rm F}^v\\ 0,\ otherwise\end{cases}

  • (t1t2)v={1, t1v=t2v=aFv0, otherwise({\rm t_1 \equiv t_2)}^v = \begin{cases}1,\ {\rm t}_1^v = {\rm t}_2^v = a \in{\rm F}^v\\ 0,\ otherwise\end{cases}

  • (¬ϕ)v={1, ϕv=00, otherwise(\lnot \phi)^v = \begin{cases}1,\ \phi^v = 0\\ 0,\ otherwise\end{cases}

  • (ψϕ)v={1, ϕv=ψv=10, otherwise(\psi\wedge \phi)^v = \begin{cases}1,\ \phi^v = \psi^v = 1 \\ 0,\ otherwise\end{cases}

  • (ψϕ)v={0, ϕv=ψv=01, otherwise(\psi \vee \phi)^v = \begin{cases}0,\ \phi^v = \psi^v = 0\\ 1,\ otherwise\end{cases}

  • (ϕψ)v={1, ϕv=0 or ψv=10, otherwise(\phi \rightarrow\psi)^v = \begin{cases}1,\ \phi^v = 0\ or\ \psi^v = 1\\ 0,\ otherwise\end{cases}

  • (ϕψ)v={1, ϕv=ψv0, otherwise(\phi \leftrightarrow\psi)^v = \begin{cases}1,\ \phi^v = \psi^v\\ 0,\ otherwise\end{cases}

  • (xϕ)v={1, aD,ϕv(x/a)=10, otherwise(\forall {\rm x\phi})^v = \begin{cases}1,\ \forall a\in D,\phi^{v(x/a) }= 1\\ 0,\ otherwise\end{cases}

  • (xϕ)v={1, aD,ϕv(x/a)=10, otherwise(\exist {\rm x\phi})^v = \begin{cases}1,\ \exist a\in D,\phi^{v(x/a) }= 1\\ 0,\ otherwise\end{cases}

其中,v(x/a)v({\rm x} / {\it a}) 表示一个以 DD 为论域的赋值,除了 xv(x/a)=aD\rm x^{\it v(\rm x/\it a)} = \it a \in D 之外,和 vv 完全相同(即把x\rm x固定地指派为aa)。

请注意 符号个体 之间的区别。注意ϕ\phi可为任意复杂的公式。

e.gD={s1,s2,s3,b1,b2,b3}D = \{s_1,s_2,s_3,b_1,b_2,b_3\},赋值vv:

  • Fv={s1,s2,s3}F^v = \{s_1, s_2, s_3\}
  • Gv={b1,b2,b3}G^v = \{b_1, b_2, b_3\}
  • Hv={(s1,b1),(s1,b2),(s2,b1),(s3,b3)}H^v = \{(s_1, b_1), (s1, b_2), (s_2, b_1), (s_3, b_3)\}

则对xy(F(x)G(y)H(x,y))v\forall x\exist y(F(x)\rightarrow G(y)\wedge H(x,y))^v的解释为:

aD,bD,(F(x)G(y)H(x,y))v(x/a,y/b) ⁣aD,bD,(Fv(a)Gv(b)Hv(a,b))=1\begin{align*}&\forall a \in D,\exist b \in D,(F(x)\rightarrow G(y)\wedge H(x,y))^{v(x/a,y/b)}\\\models\!|& \forall a \in D,\exist b \in D,(F^v(a)\rightarrow G^v(b)\wedge H^v(a,b)) = 1\\\end{align*}

逻辑推论

逻辑推论

给定一组一阶公式集合Φ\Phi,公式ϕ\phi。则逻辑推论Φϕ\Phi \models \phi成立,当且仅当对于非空论域DD 下的 任意 赋值 vv,如果Φv=1\Phi^v = 1ϕv=1\phi^v = 1

逻辑推论Φϕ\Phi \models \phi不成立,也记作Φ⊭ϕ\Phi \not \models \phi当且仅当对于非空论域DD 下的 存在 赋值 vv,如果Φv=1\Phi^v = 1ϕv=0\phi^v = 0

可满足性和有效性

ψ\psi是一个一阶公式。

  • ψ\psi有效的,即 ψ\models \psi当且仅当 对于任何 论域DD任何赋值vvψv=1\psi^v = 1
  • ψ\psi可满足的当且仅当 存在某个论域DD 下的某个赋值 vv 使得 ψv=1\psi^v = 1

语义等价

给定命题公式ϕ,ψ\phi,\psiϕ,ψ\phi,\psi语义等价 当且仅当

ϕψψϕ\phi \models \psi \wedge \psi \models \phi

记作ϕ ⁣ ⁣ ⁣= ⁣ ⁣ ⁣ψ\phi |\!\!\!=\!\!\!| \psi

一阶逻辑中常见的语义等价关系

  • ¬xϕ ⁣ ⁣ ⁣x¬ϕ\lnot \forall x\phi \models\!\!\!|\exist x\lnot\phi
  • ¬xϕ ⁣ ⁣ ⁣x¬ϕ\lnot \exist x\phi \models\!\!\!|\forall x\lnot\phi

一下均假设 xx 不在 ϕ\phi 中出现:

  • yϕ ⁣ ⁣ ⁣xϕxy\forall y\phi \models\!\!\!| \forall x\phi^y_x
  • yϕ ⁣ ⁣ ⁣xϕxy\exist y\phi \models\!\!\!| \exist x\phi^y_x
  • ϕxψ ⁣ ⁣ ⁣x(ϕψ)\phi \wedge \forall x \psi \models\!\!\!| \forall x(\phi \wedge \psi)
  • ϕxψ ⁣ ⁣ ⁣x(ϕψ)\phi \wedge \exist x \psi \models\!\!\!| \exist x(\phi \wedge \psi)
  • ϕxψ ⁣ ⁣ ⁣x(ϕψ)\phi \vee \forall x \psi \models\!\!\!| \forall x(\phi \vee \psi)
  • ϕxψ ⁣ ⁣ ⁣x(ϕψ)\phi \vee \exist x \psi \models\!\!\!| \exist x(\phi \vee \psi)

前束范式

称一阶逻辑公式 ϕ\phi前束范式当且仅当它有如下的形式:

Q1x1Qnxn ϕQ_1x_1\cdots Q_nx_n\ \phi'

其中,

  • Q1QnQ_1\cdots Q_n是量词\forall\exist;
  • x1,xnx_1,\cdots x_n是变元;
  • ϕ\phi' 是不含量词的公式。

Q1x1QnxnQ_1x_1\cdots Q_nx_n前束词ϕ\phi'母式前束范式母式可以进一步变换为合取范式析取范式

消解原理

一阶消解推演规则

当对包含自由变元的子句进行消解时,如果这些子句都是全称量化的,则可以去掉量词

不含存在量词的前束范式

子句形式与命题逻辑的相同,但原子公式F(t1,,tn)F(t_1,\cdots , t_n);对子句的理解与之前一样,但变元被理解成全称量化

给定两个子句 c1{L1}c_1 ∪\{L_1\}c2{L2}c_2\cup\left\{\overline{L_2}\right\},如果它们没有公共变元,且存在一个代换 θθ,使得 L1θ=L2θL_1θ = L_2θ,那么可以推出子句 (c1c2)θ(c_1 ∪ c_2)θ。这时我们说 θθL1L_1L2L_2合一

  • Φres\Phi \vdash_{res} \bot 当且仅当 Φres\Phi \models_{res}\bot .

含存在量词的前束范式:斯科伦化

对于包含存在量词的公式,可把该存在量词所管辖的变元变成确定的个体,表示该确定个体的项被称为斯科伦常元;表示受限制的该确定个体的函词被称为斯科伦函词

斯科伦化,即把 x1x2xnyϕ\rm \forall x_1\forall x_2\cdots\forall x_n\exist y\phi 变换为x1x2xnϕf(x1,x2,,xn)y\rm \forall x_1\forall x_2\cdots\forall x_n \phi^y_{ f(x_1,x_2,\cdots,x_n)}

如果ϕ\phi是原有公式,ϕ\phi′ 是包含斯科伦化的子句,那么ϕ\phi在逻辑上不等值于ϕ\phi′。例如,xF(x)\exist xF(x) 在逻辑上不等值于 F(a)F(a)。不过,ϕ\phi 是可满足的,当且仅当 ϕ\phi′ 是可满足的。这也是消解所真正需要的。

LEMMA 1

  • xϕ\rm \exist x\phi可满足的当且仅当 ϕax\rm \phi^x_a可满足的
  • x1x2xnyϕ\rm \forall x_1\forall x_2\cdots\forall x_n\exist y\phi可满足的当且仅当x1x2xnϕf(x1,x2,,xn)y\rm \forall x_1\forall x_2\cdots\forall x_n \phi^y_{f(x_1,x_2,\cdots,x_n)}可满足的

其中,a\rm aϕ\phi中未出现过的新常元,f\rm fϕ\phi中未出现的新 nn 元函词,即前述斯科伦常元斯科伦函词

PROOF

给定论域DD

  1. xϕ\rm \exist x\phi可满足的,当且仅当存在某个赋值vvbD,ϕv(x/b)=1\exist b \in D,\phi^{v(\rm x/\it b)} = 1。将斯科伦常元 a\rm a 指派为 av=b\rm a^{\it v} = \it b,则(ϕax)v=1\rm (\phi^x_a)^{\it v} = 1
    • 考虑n=1n = 1的情况。设vvDD上的一个赋值使得(xyϕ)v=1(\forall x\exist y \phi)^v = 1,即aD,(yϕ)v(x/a)=1\forall a \in D,(\exist y\phi)^{v(x/a)} = 1,即aD,bD,ϕv(x/a,y/b)=1\forall a \in D,\exist b \in D, \phi^{v(x/a,y/b)} = 1。 现作DD上函数ff,使得对于每一个aDa \in D,指定f(a)f(a)为满足 ϕv(x/a,y/b)=1\phi^{v(x/a,y/b)} = 1bb中的一个。
      考虑赋值vv',使得在除f\rm f以外的其他符号以外均与vv相同,fv=f{\rm f}^{v'} = f。则对于赋值v,aD,ϕv(x/a,y/f(a))=1v',\forall a \in D,\phi^{v'(x/a,y/f(a))} = 1,即说xϕf(x)y\forall x\phi^y_{\rm f(x)} 可满足
      反之,若xϕf(x)y\forall x\phi^y_{\rm f(x)} 可满足,即v:aD,(ϕf(x)y)v(a/x)=1\exist v: \forall a \in D,(\phi^y_{\rm f(x)})^{v(a/x)} = 1,即ϕv(a/x,y/f(a))=1\phi^{v(a/x,y/ f(a))} = 1,其中f=fvf = {\rm f}^vDD上的函数。换言之,对于每一个aDa \in Db=f(a)D,ϕv(x/a,y/b)=1\exist b = f(a) \in D,\phi^{v(x/a,y/b)} = 1,即(yϕ)v(x/a)=1(\exist y\phi)^{v(x/a)} = 1,也就是说xyϕ\rm \forall x\exist y\phi可满足的
    • 假设 n=2,3,,kn = 2,3,\cdots,k时命题均成立。则n=k+1n = k + 1时,x1x2xk+1yϕ\rm \forall x_1\forall x_2\cdots\forall x_{k+1}\exist y\phi 可满足,即v:aD,(x2xk+1yϕ)v(a/x1)=1\exist v:\forall a \in D,(\forall x_2\cdots\forall x_{k+1}\exist y\phi)^{v(a/x_1)} = 1。由假设可知,

赫布兰德定理

用消解原理不一定都有易解的算法。在一阶逻辑的情况下,可能存在无限循环的情况。

赫布兰德域

给定子句集合SSSS赫布兰德域H-域)是所有基项的集合。集合HH称为子句集SSHH-域,如果

H=i=0HiH = \cup_{i = 0}^{\infty}H_i

其中,HiH_i 递归确定如下

  • H0={{a},there doesnt exist constant.{cc exists in S},otherwiseH_0 =\begin{cases} \{a\},\quad there\ doesn't\ exist\ constant.\\\{c|c\ exists\ in\ S\},\quad otherwise\end{cases}
  • Hi+1=Hi{f(t1,t2,,tn)t1,,tnHi,f exists in S}H_{i+1} = H_i\cup\{f(t_1,t_2,\cdots,t_n)|t_1,\cdots,t_n \in H_i,f\ exists\ in\ S\}

赫布兰德基底

子句集 SS赫布兰德基底 (H-基底),如果该集合为所有形如 cθc\theta基原子公式的集合,其中 cSc \in Sθ\thetacc 中的变元指派 H-域中的元素。

赫布兰德定理

SS 是可满足的当且仅当SSH-基底可满足的。

  • H-基底没有变元,故尽管 H-基底通常是无穷的,但其本质上是命题公式集合
  • SS没有函数符号而只有有穷的常元时,它的H-域有穷的,此时其H-基地也是有穷的。
  • H-基底进行推理时,不必使用合一,因为并不存在变元。因此,总是存在可靠的完备的推理过程。

AIL C4 一阶逻辑
http://example.com/2023/04/14/AIL-4/
Author
Tekhne Chen
Posted on
April 14, 2023
Licensed under