1
这是一个Prolog程序,我想检查Linux软件包之间的依赖关系以及是否存在任何冲突。在Prolog中测试软件包冲突
dep(gnome1,gcc7).
confl(gcc7,gcc8).
% recursive chain dependency
depend(X,Y):- dep(X,Y).
depend(X,Y):- dep(X,Z), depend(Z,Y).
% conflict(X,Y) holds if X and Y depend
on two packages which conflict, conflict between two
packages should be a symmetric relation.
% my poor attempt
conflict(X,Y):- depend(X,A), depend(Y,B), (confl(A,B) | confl(B,A)).
嗯...我得到这个输出? - 冲突(swiprolog330,Y)。 Y = xmoose79; Y = xmoose79; Y = xmoose79; 错误。 – Ciphor 2013-03-10 22:02:03
我应该得到7个不同的结果:/ – Ciphor 2013-03-10 22:02:31
请发布您的数据以获得一些额外的帮助 – CapelliC 2013-03-10 23:02:46