?- sum(1, 1, X). X = 2 yes ?- sum(X, 1, X). no ?- sum(X, X, 2). X = 1 yes ?- father(iro, X). X = giannis yes ?- father(X, Y). X = anthi Y = giannis ->; X = petros Y = giannis ->; X = thanasis Y = giannis ->; X = iro Y = giannis ->; X = nikos Y = thanasis -> yes
Με βάση τις μεταβλητές μπορούμε ακόμα να ορίσουμε και γενικευμένα γεγονότα (universal facts). Για παράδειγμα για να ορίσουμε πως όλοι αγαπούν τη Μαίρη γράφουμε:
loves(X, mairi).
Με βάση τα παραπάνω μπορούμε να ορίσουμε τη δομή δεδομένων της Prolog, τον όρο. Οι όροι ορίζονται αναδρομικά. Ένας όρος μπορεί να είναι:
sum(0, 0, 1) car(color(red), engine(1600), abs, speed(172), doors(2,2,1)) loves(X, Y)