SlideShare una empresa de Scribd logo
Consultas en prolog
Ejercicio 1
¿Eduardo y Alicia son hermanos?
Consulta en prolog: hermano (eduardo, alicia).
Resultado: true
¿Quiénes son los padres de Beatriz?
Consulta en Prolog: padres (beatriz,X,Y).
Resultados: X = alicia, Y = mario.
¿Eduardo es hijo de Mario?
Consulta en Prolog: hijo (eduardo,mario).
Resultados: false
¿Luis es hijo de Verónica?
Consulta en Prolog: hijo(luis, veronica).
Resultados: true
¿De quién es hija Beatriz?
Consulta en Prolog: padres (beatriz, X, Y).
Resultados: X = alicia, Y = mario.
Define reglas para las relaciones nieto y nieta.
Regla para nieto:
nieta(Ella, X) :- mujer(Ella),padres(Ella, P, _),padres(P,X,_).
nieta(Ella, X) :- mujer(Ella),padres(Ella, _, M),padres(M,_,X).
Regla para nieta:
nieto(El, X) :- varon(El),padres(El, P, _),padres(P,X,_).
nieto(El, X) :- varon(El),padres(El, _, M),padres(M,_,X).
Defina reglas para la relación abuelo y abuela
Regla para abuelo:
abuelo(El,X):- varon(El),padres(El,_,M),hijo(M,X).
abuelo(El,X):- varon(El),padres(El,P,_),hija(P,X).
abuelo(Ella,X):- mujer(Ella),padres(Ella,_,M),hijo(M,X).
abuelo(Ella,X):- mujer(Ella),padres(Ella,P,_),hija(P,X).
Regla para abuela:
abuela(Ella,X):- mujer(Ella),padres(Ella,_,M),hija(M,X).
abuela(Ella,X):- mujer(Ella),padres(Ella,P,_),hija(P,X).
abuela(El,X):- varon(El),padres(El,_,M),hija(M,X).
abuela(El,X):- varon(El),padres(El,P,_),hija(P,X).
Edita el archivo familares.pl para agregar las reglas definidas en los pasos anteriores, guarda el
archivo, cárgalo nuevamente en el intérprete de Prolog y realiza las siguientes consultas:
¿Eduardo es abuelo?
Consulta en Prolog: abuelo(X,eduardo).
Resultados: False
¿Victoria es abuela?
Consulta en Prolog: abuela(X,victoria).
Resultados: X=beatriz
¿De quién es nieto Luis?
Consulta en Prolog: nieto (luis,X).
Resultados: X=francisco
¿Francisco es abuelo de Beatriz?
Consulta en Prolog: abuelo(beatriz,francisco).
Resultados: true
Define al menos 2 de las siguientes relaciones: sobrino, sobrina, cuñado o cuñada. Codifícala en
Prolog, modifica el archivo familares.pl y prueba que la relación está bien definida por medio de
varias preguntas.
Relación: sobrina (beatriz,X).
Codificación:
sobrino(El,X) :- varon(El),padres(El,M,_),hermana(M,X).
sobrino(El,X) :- varon(El),padres(El,_,P),hermano(P,X).
sobrina(Ella,X):- mujer(Ella),padres(Ella,M,_),hermana(M,X).
sobrina(Ella,X):- mujer(Ella),padres(Ella,_,P),hermano(P,X).
Ejercicio 2
¿Aprueba el examen Juan?
Consulta en Prolog: aprueba_examen(juan).
Resultados: true
¿Está Susana preparada para el examen?
Consulta en Prolog: preparado_para_examen(susana).
Resultados: true
¿Quién es el sabio del grupo?
Consulta en Prolog: sabe_todo(X).
Resultados: X=tomas
¿Quiénes aprueban el examen?
Consulta en Prolog: aprueba_examen(X).
Resultados: X=tomas, X=Juan
Dada la siguiente información:
 Si X está encima de Y, entonces Y soporta a X.
 Si X está arriba de Y y se tocan una y otra, entonces X está encima de Y.
 La taza está arriba del libro.
 La taza toca al libro
Escribe un programa en Prolog que use esta base de conocimiento y muestre que SOPORTA (libro,
taza) es verdadero.
Programa en Prolog:
arriba(taza,libro).
toca(libro,taza).
soporta(taza,libro).
encima(Y,X):- soporta(X,Y).
encima(Y,X):- arriba(X,Y),toca(X,Y).
SOPORTA (libro, taza) V
Convierte a Prolog la pregunta: ¿Qué soporta a la taza?
Pregunta en Prolog: soporta(taza, X).
Respuesta: X = libro.
Convierte a Prolog la pregunta: ¿Qué está encima del libro?
Pregunta en Prolog: encima (libro, X).
Respuesta: X = taza
Comentarios y conclusiones

Más contenido relacionado

La actualidad más candente

SO Unidad 2: Mecanismos de comunicación y sincronización de procesos
SO Unidad 2: Mecanismos de comunicación y sincronización de procesosSO Unidad 2: Mecanismos de comunicación y sincronización de procesos
SO Unidad 2: Mecanismos de comunicación y sincronización de procesos
Franklin Parrales Bravo
 
Estimación para proyectos de software cap26
Estimación para proyectos de software cap26Estimación para proyectos de software cap26
Estimación para proyectos de software cap26
DEBANI SALAS
 
MODELO COCOMO (INGENIERA DE SOFTWARE)
MODELO COCOMO (INGENIERA DE SOFTWARE)MODELO COCOMO (INGENIERA DE SOFTWARE)
MODELO COCOMO (INGENIERA DE SOFTWARE)
Yadith Miranda Silva
 
Requisitos funcionales y no funcionales
Requisitos funcionales y no funcionalesRequisitos funcionales y no funcionales
Requisitos funcionales y no funcionales
Rene Guaman-Quinche
 
Entidad Relación Banco
Entidad Relación BancoEntidad Relación Banco
Entidad Relación Banco
Miguel Pustela Jara
 
Importancia de las herramientas CASE en el desarrollo de software
Importancia de las herramientas CASE en el desarrollo de softwareImportancia de las herramientas CASE en el desarrollo de software
Importancia de las herramientas CASE en el desarrollo de software
Gabriel Cobeña
 
Automatas Finitos Deterministicos y No Deterministicos
Automatas Finitos Deterministicos y No DeterministicosAutomatas Finitos Deterministicos y No Deterministicos
Automatas Finitos Deterministicos y No Deterministicos
Rosviannis Barreiro
 
Etica de ingenieria de software
Etica de ingenieria de softwareEtica de ingenieria de software
Etica de ingenieria de software
Leni Pucha
 
Modelo basado en prototipos - Ingeniería de Software
Modelo basado en prototipos - Ingeniería de SoftwareModelo basado en prototipos - Ingeniería de Software
Modelo basado en prototipos - Ingeniería de Software
Joan Fernando Chipia Lobo
 
Modelo espiral
Modelo espiralModelo espiral
Modelo espiral
Colegio Metropolitano
 
Seguridad en Base de Datos
Seguridad en Base de DatosSeguridad en Base de Datos
Seguridad en Base de Datos
myriam sarango
 
Modelamiento software
Modelamiento softwareModelamiento software
Modelamiento software
Cristhian J. Oscco Huangal
 
Comparacion de SGBD
Comparacion de SGBDComparacion de SGBD
Comparacion de SGBD
Brayan Villegas
 
Estructura del sistema operativo windows
Estructura del sistema operativo windowsEstructura del sistema operativo windows
Estructura del sistema operativo windows
omfib123
 
Ingenieria de Software
Ingenieria de SoftwareIngenieria de Software
Ingenieria de Software
ing-jefersonbrito
 
Teoria de Automatas & Lenguajes Formales
Teoria de Automatas & Lenguajes FormalesTeoria de Automatas & Lenguajes Formales
Teoria de Automatas & Lenguajes Formales
Erivan Martinez Ovando
 
Sistemas paralelos vs distribuidos
Sistemas paralelos vs distribuidosSistemas paralelos vs distribuidos
Sistemas paralelos vs distribuidos
Jesús Navarro
 
Modelos de desarrollo de aplicaciones web
Modelos de desarrollo de aplicaciones webModelos de desarrollo de aplicaciones web
Modelos de desarrollo de aplicaciones web
Yaskelly Yedra
 
Capas de la ingenieria de software
Capas de la ingenieria de softwareCapas de la ingenieria de software
Capas de la ingenieria de software
Eduardo Navarrete Salazar
 
Ingenieria de requerimientos
Ingenieria de requerimientosIngenieria de requerimientos
Ingenieria de requerimientos
Tensor
 

La actualidad más candente (20)

SO Unidad 2: Mecanismos de comunicación y sincronización de procesos
SO Unidad 2: Mecanismos de comunicación y sincronización de procesosSO Unidad 2: Mecanismos de comunicación y sincronización de procesos
SO Unidad 2: Mecanismos de comunicación y sincronización de procesos
 
Estimación para proyectos de software cap26
Estimación para proyectos de software cap26Estimación para proyectos de software cap26
Estimación para proyectos de software cap26
 
MODELO COCOMO (INGENIERA DE SOFTWARE)
MODELO COCOMO (INGENIERA DE SOFTWARE)MODELO COCOMO (INGENIERA DE SOFTWARE)
MODELO COCOMO (INGENIERA DE SOFTWARE)
 
Requisitos funcionales y no funcionales
Requisitos funcionales y no funcionalesRequisitos funcionales y no funcionales
Requisitos funcionales y no funcionales
 
Entidad Relación Banco
Entidad Relación BancoEntidad Relación Banco
Entidad Relación Banco
 
Importancia de las herramientas CASE en el desarrollo de software
Importancia de las herramientas CASE en el desarrollo de softwareImportancia de las herramientas CASE en el desarrollo de software
Importancia de las herramientas CASE en el desarrollo de software
 
Automatas Finitos Deterministicos y No Deterministicos
Automatas Finitos Deterministicos y No DeterministicosAutomatas Finitos Deterministicos y No Deterministicos
Automatas Finitos Deterministicos y No Deterministicos
 
Etica de ingenieria de software
Etica de ingenieria de softwareEtica de ingenieria de software
Etica de ingenieria de software
 
Modelo basado en prototipos - Ingeniería de Software
Modelo basado en prototipos - Ingeniería de SoftwareModelo basado en prototipos - Ingeniería de Software
Modelo basado en prototipos - Ingeniería de Software
 
Modelo espiral
Modelo espiralModelo espiral
Modelo espiral
 
Seguridad en Base de Datos
Seguridad en Base de DatosSeguridad en Base de Datos
Seguridad en Base de Datos
 
Modelamiento software
Modelamiento softwareModelamiento software
Modelamiento software
 
Comparacion de SGBD
Comparacion de SGBDComparacion de SGBD
Comparacion de SGBD
 
Estructura del sistema operativo windows
Estructura del sistema operativo windowsEstructura del sistema operativo windows
Estructura del sistema operativo windows
 
Ingenieria de Software
Ingenieria de SoftwareIngenieria de Software
Ingenieria de Software
 
Teoria de Automatas & Lenguajes Formales
Teoria de Automatas & Lenguajes FormalesTeoria de Automatas & Lenguajes Formales
Teoria de Automatas & Lenguajes Formales
 
Sistemas paralelos vs distribuidos
Sistemas paralelos vs distribuidosSistemas paralelos vs distribuidos
Sistemas paralelos vs distribuidos
 
Modelos de desarrollo de aplicaciones web
Modelos de desarrollo de aplicaciones webModelos de desarrollo de aplicaciones web
Modelos de desarrollo de aplicaciones web
 
Capas de la ingenieria de software
Capas de la ingenieria de softwareCapas de la ingenieria de software
Capas de la ingenieria de software
 
Ingenieria de requerimientos
Ingenieria de requerimientosIngenieria de requerimientos
Ingenieria de requerimientos
 

Último

PC-04-DISEÑOS DE PITS Y STOPES DE UNA MINA A TAJO ABIERTO.pdf
PC-04-DISEÑOS DE PITS Y STOPES DE UNA MINA A TAJO ABIERTO.pdfPC-04-DISEÑOS DE PITS Y STOPES DE UNA MINA A TAJO ABIERTO.pdf
PC-04-DISEÑOS DE PITS Y STOPES DE UNA MINA A TAJO ABIERTO.pdf
JhenryHuisa1
 
TECLADO ERGONÓMICO Y PANTALLAS TACTILES.pptx
TECLADO ERGONÓMICO Y PANTALLAS TACTILES.pptxTECLADO ERGONÓMICO Y PANTALLAS TACTILES.pptx
TECLADO ERGONÓMICO Y PANTALLAS TACTILES.pptx
KatiuskaDominguez2
 
Buscador de Eventos y Fiestas en España - Buscafiesta
Buscador de Eventos y Fiestas en España - BuscafiestaBuscador de Eventos y Fiestas en España - Buscafiesta
Buscador de Eventos y Fiestas en España - Buscafiesta
holabuscafiesta
 
Arquitectura de Sistema de Reservaciones
Arquitectura de Sistema de ReservacionesArquitectura de Sistema de Reservaciones
Arquitectura de Sistema de Reservaciones
AlanL15
 
Introducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdf
Introducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdfIntroducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdf
Introducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdf
AbbieDominguezGirond
 
primer manual de nuestra compañía de soporte
primer manual de nuestra compañía de soporteprimer manual de nuestra compañía de soporte
primer manual de nuestra compañía de soporte
eliersin13
 

Último (6)

PC-04-DISEÑOS DE PITS Y STOPES DE UNA MINA A TAJO ABIERTO.pdf
PC-04-DISEÑOS DE PITS Y STOPES DE UNA MINA A TAJO ABIERTO.pdfPC-04-DISEÑOS DE PITS Y STOPES DE UNA MINA A TAJO ABIERTO.pdf
PC-04-DISEÑOS DE PITS Y STOPES DE UNA MINA A TAJO ABIERTO.pdf
 
TECLADO ERGONÓMICO Y PANTALLAS TACTILES.pptx
TECLADO ERGONÓMICO Y PANTALLAS TACTILES.pptxTECLADO ERGONÓMICO Y PANTALLAS TACTILES.pptx
TECLADO ERGONÓMICO Y PANTALLAS TACTILES.pptx
 
Buscador de Eventos y Fiestas en España - Buscafiesta
Buscador de Eventos y Fiestas en España - BuscafiestaBuscador de Eventos y Fiestas en España - Buscafiesta
Buscador de Eventos y Fiestas en España - Buscafiesta
 
Arquitectura de Sistema de Reservaciones
Arquitectura de Sistema de ReservacionesArquitectura de Sistema de Reservaciones
Arquitectura de Sistema de Reservaciones
 
Introducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdf
Introducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdfIntroducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdf
Introducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdf
 
primer manual de nuestra compañía de soporte
primer manual de nuestra compañía de soporteprimer manual de nuestra compañía de soporte
primer manual de nuestra compañía de soporte
 

152289363 consultas-en-prolog

  • 1. Consultas en prolog Ejercicio 1 ¿Eduardo y Alicia son hermanos? Consulta en prolog: hermano (eduardo, alicia). Resultado: true ¿Quiénes son los padres de Beatriz? Consulta en Prolog: padres (beatriz,X,Y). Resultados: X = alicia, Y = mario. ¿Eduardo es hijo de Mario? Consulta en Prolog: hijo (eduardo,mario). Resultados: false ¿Luis es hijo de Verónica? Consulta en Prolog: hijo(luis, veronica). Resultados: true ¿De quién es hija Beatriz? Consulta en Prolog: padres (beatriz, X, Y). Resultados: X = alicia, Y = mario. Define reglas para las relaciones nieto y nieta. Regla para nieto: nieta(Ella, X) :- mujer(Ella),padres(Ella, P, _),padres(P,X,_). nieta(Ella, X) :- mujer(Ella),padres(Ella, _, M),padres(M,_,X). Regla para nieta: nieto(El, X) :- varon(El),padres(El, P, _),padres(P,X,_). nieto(El, X) :- varon(El),padres(El, _, M),padres(M,_,X). Defina reglas para la relación abuelo y abuela Regla para abuelo: abuelo(El,X):- varon(El),padres(El,_,M),hijo(M,X). abuelo(El,X):- varon(El),padres(El,P,_),hija(P,X). abuelo(Ella,X):- mujer(Ella),padres(Ella,_,M),hijo(M,X). abuelo(Ella,X):- mujer(Ella),padres(Ella,P,_),hija(P,X). Regla para abuela: abuela(Ella,X):- mujer(Ella),padres(Ella,_,M),hija(M,X). abuela(Ella,X):- mujer(Ella),padres(Ella,P,_),hija(P,X). abuela(El,X):- varon(El),padres(El,_,M),hija(M,X). abuela(El,X):- varon(El),padres(El,P,_),hija(P,X). Edita el archivo familares.pl para agregar las reglas definidas en los pasos anteriores, guarda el archivo, cárgalo nuevamente en el intérprete de Prolog y realiza las siguientes consultas:
  • 2. ¿Eduardo es abuelo? Consulta en Prolog: abuelo(X,eduardo). Resultados: False ¿Victoria es abuela? Consulta en Prolog: abuela(X,victoria). Resultados: X=beatriz ¿De quién es nieto Luis? Consulta en Prolog: nieto (luis,X). Resultados: X=francisco ¿Francisco es abuelo de Beatriz? Consulta en Prolog: abuelo(beatriz,francisco). Resultados: true Define al menos 2 de las siguientes relaciones: sobrino, sobrina, cuñado o cuñada. Codifícala en Prolog, modifica el archivo familares.pl y prueba que la relación está bien definida por medio de varias preguntas. Relación: sobrina (beatriz,X). Codificación: sobrino(El,X) :- varon(El),padres(El,M,_),hermana(M,X). sobrino(El,X) :- varon(El),padres(El,_,P),hermano(P,X). sobrina(Ella,X):- mujer(Ella),padres(Ella,M,_),hermana(M,X). sobrina(Ella,X):- mujer(Ella),padres(Ella,_,P),hermano(P,X). Ejercicio 2 ¿Aprueba el examen Juan? Consulta en Prolog: aprueba_examen(juan). Resultados: true ¿Está Susana preparada para el examen? Consulta en Prolog: preparado_para_examen(susana). Resultados: true ¿Quién es el sabio del grupo? Consulta en Prolog: sabe_todo(X). Resultados: X=tomas ¿Quiénes aprueban el examen? Consulta en Prolog: aprueba_examen(X). Resultados: X=tomas, X=Juan Dada la siguiente información:  Si X está encima de Y, entonces Y soporta a X.  Si X está arriba de Y y se tocan una y otra, entonces X está encima de Y.
  • 3.  La taza está arriba del libro.  La taza toca al libro Escribe un programa en Prolog que use esta base de conocimiento y muestre que SOPORTA (libro, taza) es verdadero. Programa en Prolog: arriba(taza,libro). toca(libro,taza). soporta(taza,libro). encima(Y,X):- soporta(X,Y). encima(Y,X):- arriba(X,Y),toca(X,Y). SOPORTA (libro, taza) V Convierte a Prolog la pregunta: ¿Qué soporta a la taza? Pregunta en Prolog: soporta(taza, X). Respuesta: X = libro. Convierte a Prolog la pregunta: ¿Qué está encima del libro? Pregunta en Prolog: encima (libro, X). Respuesta: X = taza Comentarios y conclusiones