Un programa en Prolog se compone principalmente de hechos, reglas y consultas, organizados como cláusulas terminadas en punto. Estos elementos forman la base de conocimiento y permiten que el intérprete deduzca respuestas mediante el mecanismo de unificación y backtracking.
Recordemos los componentes de un programa Prolog:
- Hechos: Definen relaciones básicas entre objetos.
- Reglas: Expresan implicaciones lógicas: un hecho depende de otros.
- Consultas: Son las preguntas que el usuario hace al intérprete.
- Variables: Representan objetos desconocidos que Prolog intentará instanciar.
En la entrega anterior nos enfocamos en los hechos. Ahora veremos las relaciones.
Observemos el siguiente programa.
parientes.pl
% Hechos padre(juan, maria). padre(juan, pedro). padre(pedro, ana). % Regla abuelo(X, Y) :- padre(X, Z), padre(Z, Y).
Consulta:
?- [parientes]. ?- abuelo(juan, Quien).
Salida:
Quien = ana
Aquí se establece la relación padre-hijo:
- Juan es padre de María.
- Juan es padre de Pedro.
- Pedro es padre de Ana.
Por lo que el Abuelo de Ana es Juan. La consulta activa el motor lógico para encontrar coincidencias y construir la relación abuelo-nieto.
Tenemos entonces que: cada hecho es una relación binaria entre dos individuos.
Enlaces:
https://ferestrepoca.github.io/paradigmas-de-programacion/proglogica/tutoriales/prolog-gh-pages/index.htmlhttps://www.tutorialspoint.com/prolog/prolog_relations.htm

Comentarios
Publicar un comentario