📜  演绎数据库中的子句形式

📅  最后修改于: 2021-08-24 16:11:49             🧑  作者: Mango

子句形式,该公式由多个子句组成,其中每个子句仅由通过OR逻辑连接词连接的多个字面量组成。

公式可以具有以下量词

  1. 通用量词–
    可以理解为–“对于所有x,P(x)都成立”,这意味着P(x)对于宇宙中的每个对象x都是正确的。
    示例:所有卡车都有车轮。
  2. 存在量词–
    可以理解为–“存在一个x,使得P(x)”,意味着P(x)对于宇宙中至少一个物体x是正确的。
    例如:有人在乎你。

子句形式公式必须转换为具有以下特征的另一个公式:

  • 公式中的所有变量都是通用量化的。因此,没有必要为所有人明确包括通用量词。删除了量词,并且公式中的所有变量都由通用量词隐式量化。
  • 由于公式由多个子句组成,并且每个子句仅由通过OR逻辑连接词连接的大量字面量组成。因此,每个子句都是字面量的析取
  • 为了形成一个公式,子句本身仅由AND逻辑连接词连接。因此,公式的子句形式是子句的合

任何公式都可以转换为子句形式。

例子 :
字面量可以是正字面量,也可以是负字面量。对于单个子句的形式,其中每个都是字面量的析取。对于子句形式:

NOT(P1) OR NOT(P2) OR ..... OR NOT(Pn) OR Q1 OR Q2 OR ..... OR Qm 

上面的子句具有n个负字面量和m个正字面量。该子句可以转换为以下等效逻辑公式:

P1 AND P2 AND ..... AND Pn => Q1 OR Q2 OR ..... OR Qm 

其中“ =>”是隐含符号。

如果所有p个字面量(i = 1,2,…,)都为真,则仅当Q的至少一个为真时,第二个公式才为真,这是(隐含)符号的含义。对于第一个fromula,如果所有P个字面量(i = 1、2,…,n)均为真,则它们的否定均为假;否则,取反。因此,在这种情况下,只有当至少一个Q为真时,才为真。

因此,以上两个公式是等效的,因此它们的真值始终相同。