?- sum(0, 1, 1), sum(1, 1, 2). yes ?- sum(0, 1, 1), sum(1, 1, 3). noΜπορούμε να ορίσουμε ακόμα κανόνες με βάση ένα γεγονός και κάποιες σχετικές ερωτήσεις με την παρακάτω σύνταξη:
a :- b1, b2, bn.Ο κανόνας διαβάζεται ως εξής: ισχύει το a αν ισχύει το b1 και το b2 και το bn. Αν ορίσουμε παραπάνω από έναν κανόνα για το ίδιο γεγονός τότε οι κανόνες ισχύουν διαζευκτικά (αρκεί να ισχύει ένας).
Παράδειγμα:
parent(X, Y) :- father(X, Y). parent(X, Y) :- mother(X, Y). ?- parent(anthi, X). X = giannis ->; X = maria yes ?- parent(X, giannis). X = anthi ->; X = petros ->; X = thanasis ->; X = iro ->; no
Παράδειγμα:
grandfather(X, Y) :- father(Z, X), father(Y, Z). ?- grandfather(X, Y). X = giannis Y = nikos ->; X = giannis Y = giorgos ->; no