La notación Prolog/Datalog se basa en proveer predicados con nombre unicos. Un predicado tiene un significado implicito, sugerido por su nombre y un numero fijo de argumentos. Si todos los argumentos son valores constantes el predicado dice que un determinado hecho es verdadero. Por otro lado si el predicado tiene variables como argumentos, se le considera una consulta o bien parte de una regla o restriccion.
Una regla tiene la forma: cabeza :- cuerpo y por lo regula tiene un solo predicado a la izquierda del simbolo :- y uno o mas predicado a la derecha del simbolo :-
Prolog contiene varios predicados integrados que el sistema puede interpretar. Estos suelen incluir el operador de comparacion de igual = (X,Y) que devuelve verdadero si x e y son identifocs. Otros operadores de comparacion de numeros, como < > <= y >=. Funciones aritmeticas como +,-,*,/.
Por lo regular una consulta contiene un simbolo de predicado con algunos argumentos variable y su significado es deducir las diferentes combinaciones de constantes que cuando se enlazan a las variables pueden hacer que se cumpla el predicado.
Datalog contiene los mismo predicados integrados que el Prolog, una literal; que es una formula atómica llamada literal positiva o una formula precedida por not llamada literal negativa. En datalog estas formas se convierten primero a lo que se conoce como forma clausal antes de expresarse en Datalog.
No hay comentarios:
Publicar un comentario