1.子句形式:
以这种形式,公式由多个子句组成,其中每个子句仅由通过OR逻辑连接词连接的许多字面量组成。
子句形式公式必须转换为具有以下特征的另一个公式:
- 公式中的所有变量都是通用量化的。因此,没有必要为所有人明确包括通用量词。删除了量词,并且公式中的所有变量都由通用量词隐式量化。
- 由于公式由多个子句组成,并且每个子句仅由通过OR逻辑连接词连接的大量字面量组成。因此,每个子句都是字面量。
- 为了形成一个公式,子句本身仅由AND逻辑连接词连接。因此,公式的从句形式是从句的结合。
2. Horn子句形式:
A喇叭子句是具有至多一个正的,即unnegated,字面量一个条款(字面量的析取)。一个最多包含一个正(非否定)字面量的子句称为“ 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) Horn条款,
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) Horn条款,
NOT(P1) OR NOT(P2) OR ... OR NOT (Pn)
可以转化为
P1 AND P2 AND…AND Pn =>
在Datalog中编写如下:
P1, P2, ..., Pn.
上面的Datalog表达式可以视为完整性约束,其中所有谓词必须为true才能满足查询。