在命题逻辑的主题中,我们已经看到了如何使用命题逻辑来表示语句。但不幸的是,在命题逻辑中,我们只能表示事实,或真或假。PL 不足以表示复杂的句子或自然语言语句。命题逻辑的表达能力非常有限。考虑以下句子,我们无法使用 PL 逻辑来表示。
“有些人很聪明”,或者
“萨钦喜欢板球。”
要表示上面的语句,PL逻辑是不够的,所以我们需要一些更强大的逻辑,比如一阶逻辑。
一阶逻辑是人工智能中知识表示的另一种方式。它是命题逻辑的扩展。
FOL 的表达能力足以以简洁的方式表示自然语言语句。
一阶逻辑也称为谓词逻辑或一阶谓词逻辑。一阶逻辑是一种强大的语言,它以更简单的方式开发有关对象的信息,还可以表达这些对象之间的关系。
一阶逻辑(如自然语言)不仅像命题逻辑那样假设世界包含事实,而且还假设世界上有以下事物:
对象: A,B,人物,数字,颜色,战争,理论,方块,坑,wumpus,......
关系: 它可以是一元关系,例如:红色、圆形、相邻,或 n-任何关系,例如:的姐妹、兄弟、有颜色、介于
功能:父亲,最好的朋友,第三局,结束,......
作为一种自然语言,一阶逻辑也有两个主要部分:
句法
语义
FOL 的语法决定了哪个符号集合是一阶逻辑中的逻辑表达式。一阶逻辑的基本句法元素是符号。我们在 FOL 中以速记符号编写语句。
以下是 FOL 语法的基本元素:
持续的 | 1, 2, A, John, Mumbai, cat,.... |
变量 | x, y, z, a, b,.... |
谓词 | 兄弟,父亲,>,.... |
功能 | sqrt, LeftLegOf, .... |
连接词 | ∧, ∨, ¬, ⇒, ⇔ |
平等 | == |
量词 | ∀, ∃ |
原子语句是一阶逻辑中最基本的语句。这些句子由一个谓词符号后跟一个带有一系列术语的括号组成。
我们可以将原子句子表示为Predicate (term1, term2, ......, term n)。
示例:Ravi 和 Ajay 是兄弟:=> Brothers(Ravi, Ajay)。
Chinky 是一只猫:=> cat (Chinky)。
复杂句子是通过使用连接词组合原子句子而制成的。
一阶逻辑语句可以分为两部分:
主题:主题是语句的主要部分。
谓词:谓词可以定义为一种关系,它将两个原子在一个语句中绑定在一起。
考虑以下语句:“x 是一个整数。” ,它由两部分组成,第一部分 x 是陈述的主语,第二部分“是一个整数”,被称为谓词。
量词是产生量化的语言元素,量化规定了语篇中的样本数量。
这些符号允许确定或标识逻辑表达式中变量的范围和作用域。有两种类型的量词:
通用量词,(对于所有人,所有人,一切)
存在量词,(对某些人来说,至少是一个)。
全称量词是逻辑表示的符号,它指定其范围内的陈述对于特定事物的一切或每个实例都为真。
全称量词由符号 ∀ 表示,类似于倒置的 A。
如果 x 是一个变量,那么 ∀x 读作:
对于所有 x
对于每个 x
对于每个 x。
所有的人都喝咖啡。
让一个变量 x 指的是一只猫,所以所有 x 都可以用 UOD 表示,如下所示:
∀x 人(x)→ 喝(x,咖啡)。
将读作: 有所有 x,其中 x 是喝咖啡的人。
存在量词是量词的一种,它表示在其范围内的陈述对于某事物的至少一个实例是正确的。
它由逻辑运算符 ∃ 表示,类似于倒置的 E。当它与谓词变量一起使用时,它被称为存在量词。
如果 x 是变量,则存在量词将是 ∃x 或 ∃(x)。它将被读作:
存在一个“x”。
对于一些“x”。
至少有一个“x”。
有些男孩子很聪明。
∃x:男孩(x) ∧ 聪明(x)
它将被读作:有一些 x,其中 x 是一个聪明的男孩。
全称量词∀的主要连接词是蕴涵→。
存在量词∃的主要连接词是 和∧。
在全称量词中,∀x∀y 类似于 ∀y∀x。
在存在量词中,∃x∃y类似于∃y∃x。
∃x∀y 与 ∀y∃x 不相似。
使用量词的一些 FOL 示例:
1. 所有的鸟都会飞。
在这个问题中,谓词是“ fly(bird)”。
并且由于所有鸟类都会飞,因此将表示如下。
∀x 鸟(x)→飞(x)。
2. 每个人都尊重他的父母。
在这个问题中,谓词是“尊重(x,y)”,其中 x=man 和 y= parent。
由于每个人都将使用 ∀,它将表示如下:
∀x man(x) → 尊重 (x, parent)。
3. 一些男孩打板球。
在这个问题中,谓词是“ play(x, y) ”,其中 x= 男孩,y= 游戏。由于有一些男孩,所以我们将使用∃,它将表示为:
∃x boy(x) → play(x, cricket)。
4. 不是所有的学生都喜欢数学和科学。
在这个问题中,谓词是“ like(x, y)”,其中 x= student 和 y= subject。
由于不是所有的学生,所以我们将使用∀ 与否定,因此如下表示:
¬∀ (x) [学生 (x) → like(x, Mathematics) ∧ like(x, Science)]。
5. 只有一名学生数学不及格。
在这个问题中,谓词是“ failed(x, y)”,其中 x= student 和 y= subject。
由于只有一名学生数学不及格,所以我们将使用以下表示:
∃(x) [ student(x) → failed (x, Mathematics) ∧∀ (y) [¬(x==y) ∧ student(y) → ¬failed (x, Mathematics)]。
量词与以合适方式出现的变量相互作用。一阶逻辑中有两种类型的变量,如下所示:
自由变量:如果变量出现在量词范围之外,则称其为公式中的自由变量。
示例:∀x ∃(y)[P (x, y, z)],其中 z 是一个自由变量。
绑定变量:如果变量出现在量词的范围内,则称其为公式中的绑定变量。
示例:∀x [A (x) B( y)],这里 x 和 y 是绑定变量。