CAPITULO 1
1. Asumiendo las relaciones definidas en el ejemplo, ¿qué contestará Prolog a las
siguientes preguntas?
1. Asumiendo las relaciones definidas en el ejemplo, ¿qué contestará Prolog a las
siguientes preguntas?
Segundos ejercicios.
1.3. Traduzca las siguientes sentencias a reglas Prolog.
a). Cualquiera que tiene un hijo es feliz (introduzca la relación unaria llamada 'feliz').
Para todo X y Y
X es feliz, si X es progenitor de Y.
en Prolog:
feliz(X):- progenitor(X,Y).
Añadimos la clausula feliz.
Después hacemos la pregunta de quienes son felices.
Las veces que se repiten los nombres son la cantidad de hijos que tienen.
b). Para todo X, si X tiene un hijo que tiene una hermana, entonces X tiene dos hijos
(introduzca la relación tiene-dos-hijos).
Para todo X y Y.
X progenitor de Y, Y hermana de Z,
entonces X tiene dos hijos.
en prolog:
tiene-dos-hijos(X):- progenitor(X,Y), progenitor(X,Z).
Añadimos la clausula tiene-dos-hijos
1.4. Defina la relación 'nieto' usando la relación 'progenitor'.
Para todo X,Y,Z.
Z es progenitor de Y, Y es progenitor X,
entonces X es nieto de Z.
En prolog:
nieto(X,Z):- progenitor(Z,Y), progenitor(Y,X).
Recomendación: Será similar a la relación abuelo.
1.5. Defina la relación tia( X, Y) en términos de las relaciones 'progenitor' y
'hermana'. Dibuje primero un diagrama para ésta relación.
Para todo X,Y
X es tia de Y, si X es hermana de Z,
Z es progenitor de Y y X es mujer.
En prolog:
tia(X,Y):- hernana(X,Z), progenitor(Z,Y), mujer(X).
realizamos la pregunta a prolog

1.7
trate de entender como prolog deriva respuestas a las siguientes preguntas usando el programa familiar dibuje también los diagramas de derivación,correspondiente e identifique los bactrakings.








No hay comentarios:
Publicar un comentario