在计算机科学中,谓词是什么意思?

具体来说,我已经看到它在文本过滤的上下文中使用。 就好像“谓词”==“过滤条件”。

这是准确的吗?

这是math逻辑领域中最常用的术语。

从维基百科

在math中,谓词既可以是一个关系 ,也可以是相当于这种关系的特征函数或指标函数的布尔值函数

函数P:X→{true,false}被称为X上的谓词。当P是X上的谓词时,我们有时会说P是X的一个属性。

“谓词”==“过滤条件”

谓语(PRED-i-cat)是包含动词的句子的一部分,并告诉你一些关于这个主题的内容。

例如,在句子中

“迈克正在吃东西”,我们有主题“迈克”,而谓词“正在吃东西”。

在计算机科学的背景下,我们对陈述一个事实不感兴趣,而是为了决定是否做某事而testing一个真/假的条件。

 Person mike; if (!mike.isEating()) feedPerson(mike); 

mikePerson一个实例isEating()isEating()成员是一个谓词。 对于这个person (在这种情况下是mike )正在吃东西的断言,它返回truefalse 。 谓词被用来决定是否喂养这个人。

谓词通常以callback的forms出现,但总的来说,我们可以使用这个术语来表示任何函数,这个函数根据一个断言的真值来评估一个bool。

为了sorting,可能要有成员函数

 bool Fruit::ComesAfter(Fruit x) ... 

作为我们的预言。 如果x来到我们后面,我们的sortingalgorithm将交换两个成果。

还有术语谓词(predi-KATE)。 在英文中,我们使用这样的:

“gradle的成绩取决于达到成绩。”

这意味着一件事取决于另一件事。

在计算机科学中,我们用这种forms来描述条件执行。

例如,在CUDA编程中,有汇编指令的执行,我们可以根据先前的结果预测(KATE)。 也就是说,您设置了一个谓词(CAT)标志,如果为true,则会导致指令被执行,如果为false,则会将该指令视为NOP。 因此,指令的执行是以所指示的谓词标志为基础的。

用途非常相似。

希望有所帮助。

这个词来自逻辑。

谓词是关于input的“is”布尔问题。

“IsNull”是一个谓词问题。

此外,维基百科链接关于Predicates in Math 。

谓词是关于某些事情的陈述,不pipe是真是假。

主张:

  • 要么绝对设置为真或假
  • 不依赖于参数的值
  • 例如
    • “x + 2 = 2x,当x = -2”=> true时
    • “2 * 2 = 5”=> false

谓词:

  • 真值取决于参数的值
  • 例如
    • “x + 2 = 2x”=>真值不确定,取决于x的值

使用量词将谓词转换为命题:

  • ∃x∈Z(x + 2 = 2x)“在整数集合中存在一个x + 2 = 2x”

只是为了简化事情。 谓词是一个返回true或false值的函数。

它被用作“过滤标准”的含义:让我们考虑一个数字数组和谓词,如果number> 0则返回true,否则返回false。

 function predicate(number){ return number > 0 } // array of numbers var numbers = [-2 , -1 , 0 , 1 , 2]; var newNumbers = numbers.filter(predicate); // newNumbers => [1 , 2] ; 

filter是一个基于谓词(或“过滤条件”)返回新数组的函数。

它已经根据谓词的值过滤了数组

  • 真:包括价值
  • 假:不包括它

谓词是一个函数,它将一个元素作为input参数,并返回true或false。 谓词用于高阶函数,应用于给定的函数(又名变换器)元素明确的元素列表,并返回结果列表。 变压器是一个适用于每个元素的function,并会产生一个或多个新的元素。