当前位置: 首页 > 编程笔记 >

谓词演算

全鸿晖
2023-03-14
本文向大家介绍谓词演算,包括了谓词演算的使用技巧和注意事项,需要的朋友参考一下

谓词演算处理谓词,谓词包含变量。

谓词

谓词是在某个特定域上定义的一个或多个变量的表达式。通过给变量赋值或量化变量,可以使带有变量的谓词成为命题。

请请看以下语句。

  • 拉姆是学生。

现在根据谓词演算来考虑以上陈述。

  • 这里“是学生”是谓词,Ram是主题。

  • 让我们将“ Ram”表示为x,将“是学生”表示为谓词P,然后可以将上述语句写为P(x)。

  • 通常,由谓词表示的语句必须具有至少一个与谓词关联的对象。在我们的例子中,Ram是与谓词P关联的必需对象。

报表功能

之前我们将“ Ram”表示为x,将“ is a student”表示为谓词P,然后将语句表示为P(x)。这里的P(x)是一个语句函数,如果我们用主题说Sunil替换x,那么我们将得到一个语句“ Sunil是学生”。

因此,语句函数是具有谓词符号和一个或多个变量的表达式。当我们用对象替换变量时,该语句函数给出一条语句。这种替换称为语句函数的替换实例。

量词

谓词变量由量词量化。谓词逻辑中的量词有两种-通用量词和存在量词。

通用量词

通用量词指出,其范围内的语句对于特定变量的每个值都是正确的。用符号∀表示。

∀x P(x)读为x的每个值,P(x)为true。

示例-“人是凡人”可以转换为命题形式∀x P(x),其中P(x)是谓词,表示x是凡人,而∀x表示所有人。

存在量词

存在量词指出其范围内的语句对于特定变量的某些值是正确的。用符号∃表示。

∃x P(x)被读取,对于某些x值,P(x)为真。

示例-“某些人不诚实”可以转换为命题形式∃x P(x),其中P(x)是谓词,表示x是不诚实的,and x代表某些不诚实的人。

谓词公式

考虑具有n个变量的谓词P作为P(x 1,x 2,x 3,...,x n)。这里P是n位谓词,x 1,x 2,x 3,...,x n是n个个体变量。此n位谓词称为谓词演算的原子公式。例如:P(),Q(x,y),R(x,y,z)

格式正确的公式

格式正确的公式(wff)是包含以下任一条件的谓词-

  • 所有命题常数和命题变量都是wffs

  • 如果x是变量并且Y是wff,则∀x Y和∀x Y也是wff

  • 真值和假值都是wffs

  • 每个原子公式都是wff

  • 所有连接wff的连接词都是wff

自由和绑定变量

考虑一个谓词公式,该公式的一部分为(x)P(x)的(∃x)P(x)形式,则该部分称为公式的x绑定部分。x绑定部分中x的任何出现都称为绑定出现,非x绑定中的x的任何出现都称为自由出现。请参阅以下示例-

  • (∃x)(P(x)∧Q(x))

  • (∃x)P(x)∧Q(x)

在第一个示例中,(∃x)的范围是(P(x)∧Q(x)),并且x的所有出现都是绑定出现。而在第二个示例中,(x)的范围是P(x),而Q(x)中x的最后一次出现是自由出现。

话语宇宙

我们可以限制陈述中使用的个人/对象的类别。这里的限制意味着将输入变量限制为一组特定的个人/对象。这样的限制类被称为话语宇宙/个人或宇宙的领域。请参阅以下示例:

有些猫是黑色的。

  • C(x):x是猫。

  • B(x):x为黑色。

  • (∃x)(C(x)∧B(x))

如果话语宇宙是E = {Katy,Mille},其中katy和Mille是白猫,那么当我们用Katy或Mille替换x时,我们的第三个陈述是假的,好像话语宇宙是E = {Jene,Jackie},其中Jene和杰基黑猫,那么我们的第三个陈述对于话语F宇宙是正确的。

 类似资料:
  • 本文向大家介绍谓词演算的推理规则,包括了谓词演算的推理规则的使用技巧和注意事项,需要的朋友参考一下 为了从我们已经知道其真实性的陈述中推断出新的陈述,使用了推理规则。 推理规则有什么用? 数学逻辑通常用于逻辑证明。证明是确定数学陈述的真值的有效参数。 参数是一系列语句。最后一个陈述是结论,其前面的所有陈述都称为前提(或假设)。结论之前放置符号“∴”(因此请阅读)。一个有效的论点是根据前提的真实值得

  • 谓词是指用方括号写的XPath表达式。 它指的是为某些条件限制节点集中的选定节点。 例如, 序号 序号 描述 1 选择第一个元素,它是元素的子元素。 2 选择最后一个元素,它是元素的子元素。 3 使用选择元素。 4 选择大于的元素。 示例 此示例通过迭代每个学生创建一个包含其详细信息的元素。 它计算节点的位置,然后打印学生的详细信息以及序列号。 文件:students.xml - 文件:stude

  • 谓词 Clojure 提供了很多函数来充当谓词的功能 — 测试条件是否成立。它们的返回值是 true或者false。在Clojure里面 false 以及 nil 被解释成false. true 以及任何其他值都被解释成true, 包括0。谓词函数的名字一般以问号结尾。 反射是一种获取一个对象的特性,而不是它的值的过程。比如说对象的类型。有很多谓词函数进行反射。 测试一个对象的类型的谓词包括 cl

  • Predicates是评估条件并提供true或false值的函数。 我们在数字章节的例子中看到了谓词函数。 我们看过像'even?'这样的功能 用来测试一个数字是否是偶数,或'neg?' 用于测试数字是否大于零。 所有这些函数都返回true或false值。 以下是Clojure中谓词的示例。 (ns clojure.examples.example (:gen-class)) ;; This

  • 谓词是针对某些特定条件测试其参数的函数,如果条件为假则返回nil,或者某些非零值是条件为真。 下表显示了一些最常用的谓词 - Sr.No. 谓词和描述 1 atom 它接受一个参数,如果参数是原子则返回t,否则返回nil。 2 equal 它需要两个参数,如果它们在结构上相等则返回t否则返回nil 。 3 eq 它需要两个参数,如果它们是相同的相同对象,则返回t ,共享相同的内存位置,否则返回ni

  • 本文向大家介绍Prologcall / N谓词,包括了Prologcall / N谓词的使用技巧和注意事项,需要的朋友参考一下 示例 该call/N谓词的家人可以在运行时调用任意Prolog的目标: