📜  演绎数据库中分句形式与喇叭分句形式的区别

📅  最后修改于: 2021-09-08 15:59:47             🧑  作者: Mango

1. 分句形式:
在这种形式中,公式由多个子句组成,其中每个子句由多个仅由 OR 逻辑连接词连接的字面量组成。

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

  • 公式中的所有变量都是通用量化的。因此,没有必要为所有人明确包含全称量词。量词被移除,公式中的所有变量都被全称量词隐式量化。
  • 由于公式由多个子句组成,每个子句由多个仅由 OR 逻辑连接词连接的字面量组成。因此,每个子句都是字面量。
  • 为了形成一个公式,子句本身仅由 AND 逻辑连接词连接。因此,公式的从句形式是从句的连接。

2. 喇叭从句形式:
Horn 子句是一个子句(字面量的分离),最多有一个正数,即未否定的字面量。最多包含一个肯定(非否定)字面量的子句称为 Horn 子句。

喇叭条款的类型:

  • 定语从句/严格喇叭从句:正好有一个正字面量。
  • 单元子句:没有否定字面量的定语从句。
  • 目标条款:没有正面字面量的Horn 条款。

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

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

其中 ‘=>’ 是隐含符号。

喇叭从句形式:

(i)喇叭条款,

NOT(P1) OR NOT(P2) OR ... OR NOT(Pn) OR Q

可以转化为子句:

P1 AND P2 AND … AND Pn => Q

在 Datalog 中写入的规则如下。

Q :- P1, P2, ..., Pn.

因此,上述数据记录规则是一个 Horn 子句。

含义:如果谓词 P1 AND P2 AND … AND Pn,对于与其变量参数的特定绑定都为真,则 Q 也为真,因此可以推断。

(ii)喇叭条款,

NOT(P1) OR NOT(P2) OR ... OR NOT (Pn)

可以转化为

P1 AND P2 AND … AND Pn =>
在 Datalog 中写入如下:

P1, P2, ..., Pn.

上面的 Datalog 表达式可以视为完整性约束,其中所有谓词都必须为真才能满足查询。