动词附加介词短语的语义Prolog

时间:2016-12-13 03:24:04

标签: prolog semantics linguistics phrase

我正在尝试实现动词附加 prolog中的介词短语。

所以我得到了:

VP -> Vbar

Vbar -> v, PP

PP -> Pbar

Pbar -> prep,np

问题在于,当我试图说出像#34;玛丽用望远镜看到汤姆时#34;。会有错误。

有人可以告诉我如何解决这个问题吗?

也有人可以告诉我如何实现动词附加介词短语的语义吗?

1 个答案:

答案 0 :(得分:1)

我不知道错误是什么,所以我不能肯定地说,但是你发布的代码有很多问题。

  • Prolog谓词必须在一段时间内结束。
  • Prolog谓词以小写字母开头。
  • 您可能希望使用-->,而不是->。我不确定->是做什么的,如果有的话。
  • 我不相信使用字符串会与任何给定的谓词统一。您可能希望使用符号''
  • 您正在使用-->包含一些奇怪的语法。您可以在其上找到一些信息here。因此,如果您希望符号v在谓词中统一,则应编写[v]

我不确定此代码是否具有您想要的功能,但它确实运行:

vp --> vbar.
vbar --> [v], pp.
pp --> pbar.
pbar --> [prep,np].

您可以这样称呼它:

vp([here, is, some, statement], []).