Prolog
En el siguiente mundo de los bloques construir un programa en Prolog para verificar si el bloque X se encuentra encima del bloque Y. Probar para E encima de B.
Solución
sobre(f,e).
sobre(e,d).
sobre(d,c).
sobre(c,b).
sobre(a,h).
sobre(h,g).
encima(X,Y):-sobre(X,Y).
encima(X,Y):-sobre(X,Z), encima(Z,Y).EJERCICIO 2
Definir un dominio de conocimiento, o hechos (las reglas utilizar mas tarde) acerca del sistema solar, empezando con los planetas que giran alrededor del sol, usar el predicado llamado orbita, y para los satélites que giran alrededor de los planetas. Y por ultimo el predicado planeta_gaseoso, para definir los gigantes gaseosos del sistema solar.
orbita(sol, mercurio).orbita(sol, venus).
orbita(sol, tierra).
orbita(sol, marte).
orbita(sol, jupiter).
orbita(sol, saturno).
orbita(sol, urano).
orbita(sol, neptuno).
planeta_gaseoso(jupiter).
planeta_gaseoso(saturno).
planeta_gaseoso(urano).
planeta_gaseoso(neptuno).
Con estos hechos, definir un conjunto de reglas para adicionar conocimientos:
planeta(P):-orbita(sol,P).satelite(S):-orbita(P,S),planeta(P).
terrestre_planeta(P):-planeta(P),\+planeta_gaseoso(P).
no_luna(P):-planeta(P),\+orbita(P,S).
tiene_luna(P):-\+no_luna(P).
EJERCICIO 1
En el siguiente mundo de los bloques construir un programa en Prolog para verificar si el bloque X se encuentra encima del bloque Y. Probar para E encima de B.
Solución
sobre(f,e).
sobre(e,d).sobre(d,c).
sobre(c,b).
sobre(a,h).
sobre(h,g).
encima(X,Y):-sobre(X,Y).
encima(X,Y):-sobre(X,Z), encima(Z,Y).
EJERCICIO 2
Definir un dominio de conocimiento, o hechos (las reglas utilizar mas tarde) acerca del sistema solar, empezando con los planetas que giran alrededor del sol, usar el predicado llamado orbita, y para los satélitesque giran alrededor de los planetas. Y por ultimo el predicado planeta_gaseoso, para definir los gigantes gaseosos del sistema solar.
orbita(sol, mercurio).
orbita(sol, venus).
orbita(sol, tierra).
orbita(sol, marte).
orbita(sol, jupiter).
orbita(sol, saturno).
orbita(sol, urano).
orbita(sol, neptuno).
planeta_gaseoso(jupiter).
planeta_gaseoso(saturno).
planeta_gaseoso(urano).planeta_gaseoso(neptuno).
Con estos hechos, definir un conjunto de reglas para adicionar conocimientos:
planeta(P):-orbita(sol,P).
satelite(S):-orbita(P,S),planeta(P).
terrestre_planeta(P):-planeta(P),\+planeta_gaseoso(P).
no_luna(P):-planeta(P),\+orbita(P,S).
tiene_luna(P):-\+no_luna(P).
EJERCICIO 1
En el siguiente mundo de los bloques construirun programa en Prolog para verificar si el bloque X se encuentra encima del bloque Y. Probar para E encima de B.
Solución
sobre(f,e).
sobre(e,d).
sobre(d,c).
sobre(c,b).
sobre(a,h).
sobre(h,g).
encima(X,Y):-sobre(X,Y).
encima(X,Y):-sobre(X,Z), encima(Z,Y).
EJERCICIO 2
Definir un dominio de conocimiento, o hechos(las reglas utilizar mas tarde) acerca del sistema solar, empezando con los planetas que giran alrededor del sol, usar el predicado llamado orbita, y para los satélites que giran alrededor de los planetas. Y por ultimo el predicado planeta_gaseoso, para definir los gigantes gaseosos del sistema solar.
orbita(sol, mercurio).
orbita(sol, venus).
orbita(sol, tierra).
orbita(sol, marte).orbita(sol, jupiter).
orbita(sol, saturno).
orbita(sol, urano).
orbita(sol, neptuno).
planeta_gaseoso(jupiter).
planeta_gaseoso(saturno).
planeta_gaseoso(urano).
planeta_gaseoso(neptuno).
Con estos hechos, definir un conjunto de reglas para adicionar conocimientos:
planeta(P):-orbita(sol,P).
satelite(S):-orbita(P,S),planeta(P).
terrestre_planeta(P):-planeta(P),\+planeta_gaseoso(P)....
Regístrate para leer el documento completo.