Las reglas se pueden ver de dos formas: procedural y declarativa. Una regla se escribe con el siguiente formato:
Procedural: son medios de expresar nuevas/complejas queries en terminos de más sencillas.
Declarativa: definen nuevas/complejas relaciones usando relaciones existentes. Interpreta a la regla como un axioma lógico.
hijo(Y,X) :- papa(X,Y), hombre(Y). hija(Y,X) :- papa(X,Y), mujer(Y). abuelo(X,Z) :- papa(X,Y), papa(Y,X).Procedural: para contestar
?- hijo(X,juan).
hay que contestar
?- papa(juan,X), hombre(X).
Declarativo: para toda y
,
es el hijo de
si
es el
padre de
y
es hombre.