這是知識基礎,我有工作:總結已經輸出列表
localLib('AHorowitz','Stormbreaker',2).
localLib('AHorowitz','Scorpia',4).
localLib('AHorowitz','Ark Angel',6).
的知識基礎的關鍵如下:
localLib(W,B,C) where
W=Writer
B=Book
C=Acknowledgements
我想編寫一個規則這加起了作者的所有承認。 這是迄今爲止我所編寫的代碼:
getAcknowledgement(W,X):- findall(C,localLib(W,_,C),X).
這條規則可以幫助我列出所有的確認在單獨的列表例如
?- getAcknowledgement('AHorowitz',X).
X = [2, 4, 6]
我現在陷入瞭如何添加這些項目。我知道sum_list內置的,雖然我知道這是不正確的我想要實現的東西是這樣的:
getAcknowledgement(W,X):- findall(C,localLib(W,_,C),X).
sum_list(X,[getAcknowledgement]).
/* I would like to sum the output that I receive from the first rule above.
The KB has been simplified in this example to 3 clauses however in reality
there are 1000.*/
我怎麼會去這樣做,任何幫助將是巨大的?
'getAcknowledgement(W,X),sum_list(X,S).' –
謝謝,我知道我快到了! –