8

早上好,我想了解如何使用一阶逻辑来描述某些东西。

例如,我想描述什么是电影(一个实体),什么是电影的属性(例如演员:克鲁尼)。我如何使用一阶逻辑来描述它?

******* 更新 ********

我需要按第一逻辑顺序解释的是:

ENTITY:可以用一组属性或属性描述的元素、抽象或对象。所以我认为我必须说实体有一组具有各自值的属性。实体描述一个元素、一个抽象或一个对象。

ATTRIBUTE:一个属性总是有一个值并且它总是与一个实体相关联。它描述了实体的特定特征/属性。

DOCUMENT:纯文本描述(纯文本,不包含任何 html 标签)。每个文档通过其属性仅描述一个实体。

4

2 回答 2

3

要声明一个对象具有某个属性,您可以使用单个位置谓词。例如,要说这x是一部你可以写的电影Film(x)。如果你想为一个对象赋予一些价值,你可以使用两个(或更多)地方谓词。用你的例子,你可以说克鲁尼在一部电影中饰演Starred(clooney, x)

人们使用某些约定。例如,谓词以大写字母 ( Actor, Film, FatherOf) 开头,常量以小写字母 ( x, clooney, batman) 开头。常量表示对象,谓词说明对象。如果谓词有多个参数,第一个参数通常是您要陈述的主题。这样你就可以自然地将逻辑公式读成普通语言的句子。例如,FatherOf(x, y)读作“x 是 y 的父亲”

更新答案:

我不确定你是否可以在一阶逻辑中做到这一点。您可以Entity通过公式将 a 描述为具有某些属性的东西,例如

\forall x (Entity(x) ==> Object(x) | Element(x) | Abstraction(x))

这对于Attribute. 在一阶逻辑中,属性将某种性质归于一个对象或将其与另一个对象相关联。您可能可以使用三个位置谓词,如下所示:

\forall attribute (\exists object (\exists value (Has(object, attribute, value))))

至于文件,那只是这些陈述的结合。例如,乔治克鲁尼的描述可能如下:

Entity(clooney) & Has(clooney, starred, gravity) & Has(clooney, bornIn, lexington) & ...
于 2015-04-30T21:37:34.190 回答
1

执行此操作的典型方法是说明存在特定对象并且该对象具有某些属性。例如:

(∃x)(property1(x) & property2(x) & ~property3(x))

又名:存在满足性质1和2但不满足性质3的事物。

您当前的问题表述不清楚您所说的属性和文档是什么意思。也许对您对属性的看法:可以将其描述为property1所有满足它的实体的域;因此,例如,域blue是所有蓝色对象。

一阶逻辑与 HTML 无关——您是否尝试使用 HTML 以某种方式在一阶逻辑中表示实体?仍然非常不清楚您的问题是什么。

于 2015-05-02T01:57:16.113 回答