viernes, 13 de junio de 2014

Mi árbol genealógico. Pedro Francisco



¿Como crear un Árbol Genealógico en Prolog?



 Se debe escribir el código utilizando el siguiente formato y 

siguiendo las reglas que marca el software.


Para el ejemplo de arriba tendremos el siguiente código:









1.- ¿Quién es mi papá?

2.- ¿Quién es mi mamá?

3.- ¿Quién es mi abuelo?

4.- ¿Quién es mi abuela?

5.- ¿Quién es mi hermana? 










Prolog, ejercicio 2 capitulo 2.

1. ¿ Las siguiente operaciones de matching tienen éxito ó fallan ?


Si tienen éxito, ¿cuáles son las instanciaciones resultantes en las 


variables?









(a). punto( A, B) = punto( 2, 3).
si tuvo exito





(b). punto( A, B) = punto( X, Y, Z).


(c). +( 2, 2) = 4.


(d). +( 2, D) = +( E, 2).



(e). triangulo(punto(-1,0),P2,P3) = 

triangulo(P1,punto(1,0),punto(0,Y)).





Ejercicio 1, prolog, capitulo 2

Sugiera una representación para rectángulos, cuadrados y 

círculos como objetos Prolog estructurados. Escriba algunos 

ejemplos que representen objetos físicos concretos utilizando la

representación que sugirió.








Ejercicio 1.7 prolog capitulo1

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  correspondientes.

Identifique los bactrakings que se encuentre:





1.?- progenitor(alejandra,pedro).



2 ?- madre(guadalupe,pedro).


3 ?- abuelo(isael,juana).


4 ?- madre(juana,isael).






Entendiendo Prolog ejercicio 1.3, 1.4, 1.5, 1.6.

1.3. Traduzca las siguientes sentencias a reglas Prolog. 
a). Cualquiera que tiene un hijo es feliz (introduzca la relación unaria llamada 'feliz'). 
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). 






1.4. Defina la relación 'nieto' usando la relación 'progenitor'. 
 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.





1.6. Considere la siguiente definición alternativa de predecesor: 



 predecesor( X, Z) :- progenitor( X, Z). 

 predecesor( X, Z) :- progenitor( Y, Z) , predecesor( X, Y). 

¿Es apropiada esta definición? 


La primera definición no es apropiada.

Mientras que la segunda si lo es.











¿Puede usted dibujar un diagrama que corresponda con 

esta definición? 




lunes, 26 de mayo de 2014