0
我試圖打印所有用於獲取查詢解決方案的事實,並且如果統一失敗,我希望不打印任何內容。所以,我寫這篇文章:如何獲取用於在Prolog中獲取查詢解決方案的所有事實?
a:-
b,c,writeln(b^c->a).
b:-
d,writeln(d->b).
c:-
fail,writeln(e->c).
d:-
writeln(d).
a:-
b,d,writeln(b^d->a).
然而,當我查詢a.
,我得到了以下輸出黯然:
d
d->b
d
d->b
d
b^d->a
true.
似乎有人告訴我,Prolog有一個內置的機理來顯示所有的用來做查詢的事實。他是真的嗎?我怎樣才能得到正確的輸出?