【发布时间】:2013-06-05 13:39:54
【问题描述】:
我有两套
Set1 = [stone(X), active(X), stone(Y), in(app2,Y), unlocked(app2)]
Set2 = [stone(s1), active(s1), stone(s2), in(app2,s2), unlocked(app2)]
如果 X 绑定到 s1 并且 Y 绑定到 s2,我希望我的程序能够识别 1 可以是 2 的子集。
library(sets) 的子集函数无法做到这一点,因为它无法生成子集。
我已经开始尝试实现我自己的子集函数,该函数会生成所有可能的绑定,但我在 Prolog 方面没有太多经验,而且该函数变得很长而且效率明显低下。
【问题讨论】: