【发布时间】:2016-11-28 01:05:16
【问题描述】:
是否可以在 DCG 中制作如下传递函数?或者将其与 DCG 规则结合起来?
genx(A,B) :- gen(A,B).
genx(A,C) :- gen(A,B), genx(B,C).
gen(a,b).
gen(b,c).
我将解释我正在尝试做什么:
如果我有这个语法:
noun_phrase(D,N) --> det(D), noun(N).
noun(n(cat)) --> [cat].
我想做一些限制,比如我想让noun(N) 中的N 成为动物。所以我可以使用这样的东西:
noun_phrase(np(D,N)) --> det(D), noun(N), genx(N, animal).
如果猫是动物的信息是从以下事实推断出来的:
gen(cat,pet).
gen(pet,animal).
谢谢
【问题讨论】: