Conjunciones
Ahora supongamos Supongamos que queremos responder
preguntas acerca de relaciones mas complicadas como:
Juan y Maria se gustan mutuamente.
Una manera de hacerlo es preguntarle a Prolog primero si a Juan le gusta Maria y si nos dice que
pregunte si a Maria le gusta Juan. Asi que este problema consiste en dos diferentes metas que el sistema tiene que responder.
Por lo común de esta pregunta es:
¿existe una notación espcial para esto?
Consideremos la siguiente base de datos (conocimientos) :
Queremos preguntar:
¿A Juan le gusta Maria y a Maria le gusta Juan?
Estamos interesados en la congruencia de estas dos metas
queremos satisfacer y asi lo presentamos en Prolog.
?-legusta(juan,maria),legusta(maria,juan) (NO/FALSE)
La coma es pronunciado “and”, “y” y sirve para separar cualquier número de preguntas (metas) que tiene que ser satisfechos con el propósito de responder una pregunta, de dos partes.
Cuando una secuencia de metas (separadas por comas) es dado a Prolog, este intenta satisfacer cada meta en turno mediante la búsqueda una relación en la base de conocimiento.
Todas las metas deben ser satisfechas con el propósito de que toda la secuencia será satisfecha.
Las conjunciones se utilizan para obtener repsuesta mas complejas e interesantes.
Pruebe la siguiente base de conocimiento, en Prolog
Ahora bien, habrá algo que les guste en común. Una vez mas esta pregunta consiste en dos metas.
Si hacemos la siguiente pregunta:
?-legusta(maria,X),legusta(juan,X).
Obtenemos: