如何在DCG之后从知识库中生成一些短语?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在DCG之后从知识库中生成一些短语?相关的知识,希望对你有一定的参考价值。
我在Prolog中将我的语法定义为DCG(Definite Clause Grammar)。现在我想根据我的知识库中的事实生成一些短语。例如,如果我有likes(mark, julia).
我想生成句子
马克喜欢朱莉娅。
我怎样才能做到这一点?
答案
我们必须考虑到likes/2
是正常的Prolog谓词,而不是DCG。
因此,我们使用{}//1
来指代DCG中的常规Prolog谓词。
例如:
sentence --> [X, likes, Y], { likes(X, Y) }.
样品用法:
?- phrase(sentence, Ls). Ls = [mark, likes, julia].
以上是关于如何在DCG之后从知识库中生成一些短语?的主要内容,如果未能解决你的问题,请参考以下文章