Het verschil tussen facts en clauses is de ':-' operator, de neck, die de kop (head) van de clause scheidt van de definitie, de body. In feite is een fact een bijzondere clause die altijd slaagt.
Feiten en regels in de database hebben een vaste volgorde. Als meerdere clauses met dezelfde naam en ariteit (hetzelfde aantal argumenten) voorkomen worden ze geëvalueerd in de volgorde waarin ze in de broncode vermeld worden. Clauses met dezelfde naam en ariteit worden gegroepeerd om hun samenhang te benadrukken en worden als een samenhangend geheel gezien. Moderne compilers zullen een foutmelding genereren als deze niet zijn gegroepeerd.
Feiten en regels hoeven niet vast in de programmatekst te worden gedefinieerd, maar kunnen ook worden toegevoegd met de assert ("stel vast")-predicaten asserta en assertz, die ze respectievelijk "als eerste" of "als laatste" definiëren. Met behulp van de predicaten retract en abolish kan men feiten en regels weer uit de database verwijderen, zodat de database kan worden aangepast aan veranderende omstandigheden zonder de broncode te wijzigen.
Met bovenstaande feiten en regels in de database is het mogelijk de Prologdatabase te ondervragen met een Prolog-"vraag" (question).
Onze vraag bevat een variabele 'V' die in eerste instantie "ongebonden" is, een unbound variable. Dat wil zeggen, dat 'V' geen bepaalde waarde heeft. Pas als 'V' met het atom 'vrachtwagen' wordt geünificeerd, heeft 'V' een waarde. Als een variabele eenmaal een waarde heeft, is het niet mogelijk deze binding weer te verbreken.
Het is verleidelijk de unificatie te zien als een toekenning (assignment) aan een variabele zoals die in imperatieve talen gebruikelijk is, maar unificatie is wezenlijk verschillend. Waar een toekenning altijd slaagt, faalt een unificatie tenzij aan de volgende regels wordt voldaan.
Ongebonden variabelen kunnen altijd met atoms, getallen, lijsten of structuren worden geünificeerd. Als dit is gebeurd, is de variabele niet langer ongebonden, maar heeft een specifieke waarde.
Atomen (atoms) en getallen kunnen uitsluitend met andere atomen met een overeenkomstige waarde worden geünificeerd. Het atoom "vrachtwagen" kan met een ander atoom "vrachtwagen" worden geünificeerd, maar niet met een atoom "auto" of "fiets".
Lijsten kunnen met andere lijsten worden geünificeerd als alle afzonderlijke elementen kunnen worden geünificeerd.
Merk op dat de unificatie van lijsten en structuren recursief is gedefinieerd, want elk lid van de structuur kan zelf een structuur zijn.