Prolog:了解逻辑流程

时间:2016-12-04 00:40:51

标签: prolog

我正在阅读Learn Prolog Now!,我对他们对逻辑的使用感到困惑,我希望有人可以澄清规则中论点的含糊不清。

例如,在Chapter 1, knowledge base 4上,他们引用了以下规则:

loves(vincent,mia).

然后他们提供一个查询:

loves(marsellus,X), woman(X).

然后制作英语声明:

"现在,请记住,,表示"和",所以此查询说:是否有任何个人X, Marsellus喜欢X 和X是女性?"

关键词是Marsellus loves X

这措辞使我觉得有一些" 逻辑"与论据的安排有关,比如说,

loves(vincent,mia)." 逻辑"是真的吗?的意思是:

  1. vincent喜欢mia?
  2. 但是是假的

    1. mia喜欢文森特?
    2. 这是我最初的想法,但随后Chapter 3, example 2: Descendant他们有以下示例:

      child(bridget,caroline).

      然后是英文声明:"也就是说, Caroline是Bridget的孩子"

      但如果上面的#1是真的(文森特喜欢mia),那么这不应该被解读为布里奇特是卡罗琳的孩子吗?

      或者参数的顺序无关紧要,它是否会决定参数的逻辑?

0 个答案:

没有答案