SlideShare a Scribd company logo
1 of 44
REGLAS DE INFERENCIA LOGICA DE PREDICADOS Modificado y adaptado:  LEONARDO BERNAL ZAMORA
QUE ES INFERENCIA? Inferir es concluir o decidir a partir de algo conocido o asumido; llegar a una conclusión. A su vez, Razonar es pensar coherente y lógicamente; establecer inferencias o conclusiones a partir de hechos conocidos o asumidos.
COMO SE PUEDE INFERIR? Realizar inferencias significa derivar nuevos hechos a partir de un conjunto de hechos conocidos como verdaderos. La lógica de predicados proporciona un grupo de reglas sólidas, con las cuales se pueden realizar inferencias.
QUE SON REGLAS DE  INFERENCIA? Mecanismos sintácticos que permiten deducir f.b.d apartir de otras f.b.d
Fuente: Lógica una síntesis didáctica: Fabio Gutiérrez Correal
Modus Ponens  (MP)   ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Modus Tollens  (MT) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Silogismo Hipotético  (SH) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Silogismo Disyuntivo  (SD) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Conjunción  (Conj) ,[object Object],[object Object],[object Object],[object Object],[object Object]
Simplificación  (Simp) ,[object Object],[object Object],[object Object],[object Object]
Adición  (Ad) ,[object Object],[object Object],[object Object],[object Object],[object Object]
Dilema constructivo  (DC) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Pruebas Formales de  Validez de Argumentos
Fuente: Lógica una síntesis didáctica: Fabio Gutiérrez Correal
Fuente: Lógica una síntesis didáctica: Fabio Gutiérrez Correal
 
OTRA REGLA DE INFERENCIA ,[object Object]
Resolución   ,[object Object],[object Object]
RESOLUCION
Resolución ,[object Object],forma clausal  = forma clausulada CNF : conjuntive normal form Demostrar que la negación de una sentencia genera una contradicción con los hechos conocidos (no es satisfacible).
Resolución ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Aplicación de la regla de resolución ,[object Object],Forma Normal Implicativa Modus Ponens  P    Q P Q Modus Tollens P    Q ¬Q ¬P Encadenamiento P    Q Q    R P    R Forma Normal Conjuntiva Modus Ponens  ¬P V Q P Q Modus Tollens ¬ P V Q ¬Q ¬P Encadenamiento ¬P V Q ¬Q V R ¬P V R
Aplicación de la regla de resolución ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Teorema + Axiomas (como fórmulas bien formadas, fbf) Teorema + Axiomas (como cláusulas) Método de resolución por refutación Unificación Demostración automática de teoremas + + Lo que queremos hacer ... Jorge Cabrera Gámez Departamento de Informática y Sistemas Universidad de Las Palmas de Gran Canaria © Todos los derechos reservados
Ejemplo ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Ejemplo ,[object Object],[object Object],[object Object],[object Object],[object Object]
Ejemplo ,[object Object],Turista(x) Λ Huacos(y) Λ Vender(x,y)=>Infractor(x)  Turista(x) Λ Huacos(y) Λ Vende(x,y) Infractor(x) Turista(Sumac) ¬ Infractor(Sumac) FALSE
Ejemplo Completo Jack es dueño de un perro  Quien es dueño de un perro es un amante de los animales Ningún amante de los animales mata a un animal O Jack o Curiosidad mató al gato, cuyo nombre era Tuna ¿Mató Curiosidad al gato? Programación Lógica:  Jorge Cabrera Gámez. Departamento de Informática y Sistemas. Universidad de Las Palmas de Gran Canaria.
Ref: Programación Lógica A. Jack es dueño de un perro  B. Quien es dueño de un perro es un amante de los animales C. Ningún amante de los animales mata a un animal D. O Jack o Curiosidad mató al gato, cuyo nombre era Tuna E. ¿Mató Curiosidad al gato? 1. Expresión como predicados de primer orden A. (  X) perro(X)    dueño(jack, X) B. (  X) {(  Y) perro(Y)    dueño(X, Y)}    naturalista(X) C. (  X) (  Y) naturalista(X)    animal(Y)       mata(X,Y) D1. mata(jack, tuna)    mata(curiosidad, tuna) D2. gato(tuna) E. mata(curiosidad, tuna) Es necesario añadir que los gatos son animales F. (  X) gato(X)    animal(X)
Ref: Programación Lógica 2. Transformación a cláusulas Negación del teorema: E.    mata(curiosidad, tuna) 2.1 Eliminación de la implicaciones B. (  X) {(  Y) perro(Y)    dueño(X, Y)}    naturalista(X) C. (  X) (  Y) naturalista(X)    animal(Y)       mata(X,Y) F. (  X) gato(X)    animal(X) B. (  X)    {(  Y) perro(Y)    dueño(X, Y)}    naturalista(X) C. (  X) (  Y)    { naturalista(X)    animal(Y)}       mata(X,Y) F. (  X)    gato(X)    animal(X)
Ref: Programación Lógica 2. Transformación a cláusulas 2.2 Mover las negaciones hasta las fórmulas atómicas B. (  X)    {(  Y) perro(Y)    dueño(X, Y)}    naturalista(X) C. (  X) (  Y)    { naturalista(X)    animal(Y)}       mata(X,Y) B. (  X) {(  Y)    perro(Y)       dueño(X, Y)}    naturalista(X) C. (  X) (  Y)    naturalista(X)       animal(Y)       mata(X,Y)
Ref: Programación Lógica 2. Transformación a cláusulas 2.3 Renombrar variables A. (  X) perro(X)    dueño(jack, X) B. (  Y) {(  Z)    perro(Z)       dueño(Y, Z)}    naturalista(Y) C. (  U) (  W)    naturalista(U)       animal(W)       mata(U,W) F. (  C)    gato(C)    animal(C) 2.4 Eliminar los cuantificadores existenciales A. (  X) perro(X)    dueño(jack, X) A. perro(a)    dueño(jack, a) donde a es una función de Skolem constante
Ref: Programación Lógica 2. Transformación a cláusulas 2.5 Desplazar los cuantificadores universales hasta el comienzo de las fórmulas B. (  Y) {(  Z)    perro(Z)       dueño(Y, Z)}    naturalista(Y) B. (  Y) (  Z)    perro(Z)       dueño(Y, Z)    naturalista(Y) 2.6 Convertir los operadores AND en los más externos 2.7 Eliminar los cuantificadores universales 2.8 Eliminar los conectores AND
Ref: Programación Lógica 2. Transformación a cláusulas Conjunto de cláusulas resultante A.1 perro(a) A.2 dueño(jack,a) B.    perro(Z)       dueño(Y, Z)    naturalista(Y) C.    naturalista(U)       animal(W)       mata(U,W) D1. mata(jack, tuna)    mata(curiosidad, tuna) D2. gato(tuna) E.    mata(curiosidad, tuna) F.    gato(C)    animal(C)
Programación Lógica:  Jorge Cabrera Gámez. Departamento de Informática y Sistemas. Universidad de Las Palmas de Gran Canaria. 3. Resolución por refutación    mata(curiosidad, tuna) mata(jack, tuna)    mata(curiosidad, tuna) mata(jack, tuna)    naturalista(U)       animal(W)       mata(U,W)    naturalista(jack)       animal(tuna)    perro(Z)       dueño(Y, Z)    naturalista(Y)    perro(Z)       dueño(jack, Z)       animal(tuna) dueño(jack, a)    perro(a)       animal(tuna)    gato(C)    animal(C)    gato(tuna)       perro(a)  gato(tuna)     perro(a)  perro(a)  [ ]  {U    jack, W   tuna} {Y    jack} {Z    a} {C    a}
Obtención de respuestas Procedimiento A: 1. Demostrar el teorema por el procedimiento ya explicado. 2. Añadir al conjunto de cláusulas inicial, no el teorema negado (  p(X)), sino la disyunción de éste con su negado, es decir, (  p(X)    p(X)) (una tautología). 3. Seguir los mismos pasos que condujeron a la demostración del teorema. Dado que la cláusula del teorema contiene una tautología no se concluirá en el resolvente nulo, sino que se concluirá en la cláusula del teorema. 4. La respuesta es el resolvente final.
Ejemplo: Axiomas: A1. (  X)( juega(pedro, X)    juega(luis, X))   A2. juega(pedro, fútbol). Teorema:  T. (  X) juega(luis, X) El problema consiste en demostrar el teorema y, además, en saber  a qué juega luis.
Expresados en forma clausular y negando el teorema: A1.    juega(pedro, X)    juega(luis, X)) A2. juega(pedro, fútbol).  T.    juega(luis, Y) El árbol de refutación sería:    juega(luis, Y)    juega(pedro, X)    juega(luis, X) juega(pedro, fútbol).    juega(pedro, X) {} {Y  X} {X  fútbol}
Y la obtención de la respuesta sería:    juega(luis, Y)    juega(luis, Y)    juega(pedro, X)    juega(luis, X) juega(pedro, fútbol).    juega(pedro, X)    juega(luis, X) juega(luis, fútbol) {Y  X} {X  fútbol}
Puede generalizarse el procedimiento anterior de manera que en lugar de incluir la tautología (  p(X)    p(X)), se incluya la cláusula:   (  p(X)    respuesta(X))  donde “respuesta” es un predicado comodín, que no puede aparecer en el conjunto de axiomas.  Dado que este predicado no aparece en el resto del conjunto es imposible que pueda desaparecer del árbol modificado de refutación y, por tanto, no se concluirá en la cláusula nula.
Obtención de respuestas Procedimiento B: 1. Añadir al conjunto de cláusulas de los axiomas la cláusula  (  p(X)    respuesta(X)). El predicado comodín debe contener tantos términos como respuestas se deseen, p.e.  (  p(X,Y)    respuesta(X,Y)) 2. Realizar la demostración del teorema, utilizando como objetivo no la cláusula nula, sino una cláusula que contiene solamente el predicado comodín “respuesta”. 3. Las respuestas son los términos del predicado comodín en el estado final.
Con este procedimiento, la obtención de la respuesta sería:    juega(luis, Y)    respuesta(Y)    juega(pedro, X)    juega(luis, X) juega(pedro, fútbol).    juega(pedro, X)    respuesta(X) respuesta(fútbol) {Y  X} {X  fútbol}
Referencias ,[object Object],[object Object],[object Object]

More Related Content

What's hot

Ejercicios resueltos de tablas de verdad
Ejercicios resueltos de tablas de verdadEjercicios resueltos de tablas de verdad
Ejercicios resueltos de tablas de verdadpaquitogiron
 
Ejercicios resueltos rdi ss
Ejercicios resueltos   rdi ssEjercicios resueltos   rdi ss
Ejercicios resueltos rdi ssCarlos Davila
 
VALIDEZ DE UNA INFERENCIA: MÉTODO ABREVIADO
VALIDEZ DE UNA INFERENCIA: MÉTODO ABREVIADO VALIDEZ DE UNA INFERENCIA: MÉTODO ABREVIADO
VALIDEZ DE UNA INFERENCIA: MÉTODO ABREVIADO Jomar Burgos Palacios
 
Leyes de algebra proposicional
Leyes de algebra proposicionalLeyes de algebra proposicional
Leyes de algebra proposicionalelisa pizano
 
Leyes del calculo proposicional verificacion
Leyes del calculo proposicional verificacionLeyes del calculo proposicional verificacion
Leyes del calculo proposicional verificacionWendy Estupiñan
 
EQUIVALENCIAS LÓGICAS Y SIMPLIFICACIÓN
EQUIVALENCIAS LÓGICAS Y SIMPLIFICACIÓNEQUIVALENCIAS LÓGICAS Y SIMPLIFICACIÓN
EQUIVALENCIAS LÓGICAS Y SIMPLIFICACIÓNPacheco Huarotto, Luis
 
Lógica Matematica-Proposicional-Simbólica
Lógica Matematica-Proposicional-SimbólicaLógica Matematica-Proposicional-Simbólica
Lógica Matematica-Proposicional-SimbólicaMichael Castillo
 
Algebra proposiciones
Algebra proposicionesAlgebra proposiciones
Algebra proposicionesrubenenrique
 
simbologia de la derivada
simbologia de la derivadasimbologia de la derivada
simbologia de la derivadajc-alfa
 
Implicacion Logica y Argumentos .pdf
Implicacion Logica y Argumentos .pdfImplicacion Logica y Argumentos .pdf
Implicacion Logica y Argumentos .pdfKelvinLopez24
 
Reglas De Inferencia
Reglas De InferenciaReglas De Inferencia
Reglas De Inferenciarezzaca
 

What's hot (20)

Inferencia logica
Inferencia logicaInferencia logica
Inferencia logica
 
Ejercicios resueltos de tablas de verdad
Ejercicios resueltos de tablas de verdadEjercicios resueltos de tablas de verdad
Ejercicios resueltos de tablas de verdad
 
Ejercicios resueltos rdi ss
Ejercicios resueltos   rdi ssEjercicios resueltos   rdi ss
Ejercicios resueltos rdi ss
 
VALIDEZ DE UNA INFERENCIA: MÉTODO ABREVIADO
VALIDEZ DE UNA INFERENCIA: MÉTODO ABREVIADO VALIDEZ DE UNA INFERENCIA: MÉTODO ABREVIADO
VALIDEZ DE UNA INFERENCIA: MÉTODO ABREVIADO
 
Inferencia
InferenciaInferencia
Inferencia
 
Modus Tollendo y Modus Ponendo
Modus Tollendo y Modus PonendoModus Tollendo y Modus Ponendo
Modus Tollendo y Modus Ponendo
 
Logica proposicional
Logica proposicionalLogica proposicional
Logica proposicional
 
Logica y argumento
Logica y argumentoLogica y argumento
Logica y argumento
 
Proposiciones
ProposicionesProposiciones
Proposiciones
 
Leyes de algebra proposicional
Leyes de algebra proposicionalLeyes de algebra proposicional
Leyes de algebra proposicional
 
Leyes del calculo proposicional verificacion
Leyes del calculo proposicional verificacionLeyes del calculo proposicional verificacion
Leyes del calculo proposicional verificacion
 
EQUIVALENCIAS LÓGICAS Y SIMPLIFICACIÓN
EQUIVALENCIAS LÓGICAS Y SIMPLIFICACIÓNEQUIVALENCIAS LÓGICAS Y SIMPLIFICACIÓN
EQUIVALENCIAS LÓGICAS Y SIMPLIFICACIÓN
 
Lógica Matematica-Proposicional-Simbólica
Lógica Matematica-Proposicional-SimbólicaLógica Matematica-Proposicional-Simbólica
Lógica Matematica-Proposicional-Simbólica
 
Algebra proposiciones
Algebra proposicionesAlgebra proposiciones
Algebra proposiciones
 
simbologia de la derivada
simbologia de la derivadasimbologia de la derivada
simbologia de la derivada
 
Implicacion Logica y Argumentos .pdf
Implicacion Logica y Argumentos .pdfImplicacion Logica y Argumentos .pdf
Implicacion Logica y Argumentos .pdf
 
La logica proposicional
La logica proposicionalLa logica proposicional
La logica proposicional
 
Proposiciones logicas
Proposiciones logicasProposiciones logicas
Proposiciones logicas
 
Reglas De Inferencia
Reglas De InferenciaReglas De Inferencia
Reglas De Inferencia
 
Modus Ponendo Ponens
Modus Ponendo PonensModus Ponendo Ponens
Modus Ponendo Ponens
 

Viewers also liked

Viewers also liked (16)

Lógica proposicional reglas de inferencia
Lógica proposicional reglas de inferenciaLógica proposicional reglas de inferencia
Lógica proposicional reglas de inferencia
 
Trabajo colaborativo logica
Trabajo colaborativo logicaTrabajo colaborativo logica
Trabajo colaborativo logica
 
Compendio de Reglas de Inferencia - Lógica Simbólica
Compendio de Reglas de Inferencia - Lógica SimbólicaCompendio de Reglas de Inferencia - Lógica Simbólica
Compendio de Reglas de Inferencia - Lógica Simbólica
 
Operaciones Entre Conjuntos Bn
Operaciones Entre Conjuntos BnOperaciones Entre Conjuntos Bn
Operaciones Entre Conjuntos Bn
 
Validez De Silogismos por diagramas
Validez De Silogismos por diagramasValidez De Silogismos por diagramas
Validez De Silogismos por diagramas
 
Operaciones conjuntos
Operaciones conjuntosOperaciones conjuntos
Operaciones conjuntos
 
Validez por Reglas
Validez por ReglasValidez por Reglas
Validez por Reglas
 
Diagramas venn 3 conjuntos
Diagramas venn 3 conjuntosDiagramas venn 3 conjuntos
Diagramas venn 3 conjuntos
 
Modus Ponendo Ponens
Modus Ponendo PonensModus Ponendo Ponens
Modus Ponendo Ponens
 
Silogismo Categorico
Silogismo CategoricoSilogismo Categorico
Silogismo Categorico
 
MODULO DE LÓGICA MATEMÁTICA 90004- 2012
MODULO DE LÓGICA MATEMÁTICA 90004- 2012MODULO DE LÓGICA MATEMÁTICA 90004- 2012
MODULO DE LÓGICA MATEMÁTICA 90004- 2012
 
logica matematica calificacion trabajo colaborativo 1
logica matematica calificacion  trabajo colaborativo 1logica matematica calificacion  trabajo colaborativo 1
logica matematica calificacion trabajo colaborativo 1
 
Trabajo final colaborativo 1
Trabajo final colaborativo 1Trabajo final colaborativo 1
Trabajo final colaborativo 1
 
Argumentos de validez
Argumentos de validezArgumentos de validez
Argumentos de validez
 
Reglas y leyes lógica
Reglas y leyes lógicaReglas y leyes lógica
Reglas y leyes lógica
 
El Silogismo CategóRico
El Silogismo CategóRicoEl Silogismo CategóRico
El Silogismo CategóRico
 

Similar to Reglas de Inferencia (20)

LI2011-T7: Deducción natural en lógica de primer orden
LI2011-T7: Deducción natural en lógica de primer ordenLI2011-T7: Deducción natural en lógica de primer orden
LI2011-T7: Deducción natural en lógica de primer orden
 
Fbf
FbfFbf
Fbf
 
Logica
LogicaLogica
Logica
 
Calculo de predicados e inferencias logicas
Calculo de predicados e inferencias logicasCalculo de predicados e inferencias logicas
Calculo de predicados e inferencias logicas
 
proceso de inferencia
proceso de inferencia proceso de inferencia
proceso de inferencia
 
álgebra
álgebraálgebra
álgebra
 
220 derivadas parcialessegundaspolinomiostaylor
220 derivadas parcialessegundaspolinomiostaylor220 derivadas parcialessegundaspolinomiostaylor
220 derivadas parcialessegundaspolinomiostaylor
 
Herstein, i. n. algebra moderna
Herstein, i. n.   algebra modernaHerstein, i. n.   algebra moderna
Herstein, i. n. algebra moderna
 
Algebra
AlgebraAlgebra
Algebra
 
Regla de la cadena
Regla de la cadenaRegla de la cadena
Regla de la cadena
 
Regla de la cadena
Regla de la cadenaRegla de la cadena
Regla de la cadena
 
Regla de la cadena
Regla de la cadenaRegla de la cadena
Regla de la cadena
 
Regla de la cadena
Regla de la cadenaRegla de la cadena
Regla de la cadena
 
Regla de la cadena
Regla de la cadenaRegla de la cadena
Regla de la cadena
 
Regla de la cadena
Regla de la cadenaRegla de la cadena
Regla de la cadena
 
Regla de la cadena
Regla de la cadenaRegla de la cadena
Regla de la cadena
 
LOGICA
LOGICALOGICA
LOGICA
 
Instituto universitario tecnologico
Instituto universitario tecnologicoInstituto universitario tecnologico
Instituto universitario tecnologico
 
LI2011-T11: Resolución en lógica de primer orden
LI2011-T11: Resolución en lógica de primer ordenLI2011-T11: Resolución en lógica de primer orden
LI2011-T11: Resolución en lógica de primer orden
 
Sistemas Basados En Logica
Sistemas Basados En LogicaSistemas Basados En Logica
Sistemas Basados En Logica
 

More from Leonardo Bernal Zamora: Docente, Internauta y convencido de la educación para todos

More from Leonardo Bernal Zamora: Docente, Internauta y convencido de la educación para todos (20)

Conceptos y operaciones básicas
Conceptos y operaciones básicasConceptos y operaciones básicas
Conceptos y operaciones básicas
 
Operaciones lenguajes
Operaciones lenguajesOperaciones lenguajes
Operaciones lenguajes
 
Operaciones cadenas
Operaciones cadenasOperaciones cadenas
Operaciones cadenas
 
Introducción a la Ingeniería de Sistemas II 2013
Introducción a la Ingeniería de Sistemas II 2013Introducción a la Ingeniería de Sistemas II 2013
Introducción a la Ingeniería de Sistemas II 2013
 
Rea actividad 2
Rea actividad 2Rea actividad 2
Rea actividad 2
 
Rea
ReaRea
Rea
 
Busquedas en internet
Busquedas en internetBusquedas en internet
Busquedas en internet
 
Proyecto java
Proyecto javaProyecto java
Proyecto java
 
Clase 2 POO
Clase 2 POOClase 2 POO
Clase 2 POO
 
Clase5 POO
Clase5 POOClase5 POO
Clase5 POO
 
Clase 41
Clase 41Clase 41
Clase 41
 
Clase 4
Clase 4Clase 4
Clase 4
 
2 elementos pseudocodigo
2 elementos pseudocodigo2 elementos pseudocodigo
2 elementos pseudocodigo
 
Clase 23
Clase 23Clase 23
Clase 23
 
Clase 22
Clase 22Clase 22
Clase 22
 
Clase 1. lógica de la programación
Clase 1. lógica de la programaciónClase 1. lógica de la programación
Clase 1. lógica de la programación
 
Unidad 4 docentes colombianos
Unidad 4 docentes colombianosUnidad 4 docentes colombianos
Unidad 4 docentes colombianos
 
Prolog file
Prolog fileProlog file
Prolog file
 
Prolog 2011 2
Prolog 2011 2Prolog 2011 2
Prolog 2011 2
 
Practicas prolog2011 listas
Practicas prolog2011 listasPracticas prolog2011 listas
Practicas prolog2011 listas
 

Reglas de Inferencia

  • 1. REGLAS DE INFERENCIA LOGICA DE PREDICADOS Modificado y adaptado: LEONARDO BERNAL ZAMORA
  • 2. QUE ES INFERENCIA? Inferir es concluir o decidir a partir de algo conocido o asumido; llegar a una conclusión. A su vez, Razonar es pensar coherente y lógicamente; establecer inferencias o conclusiones a partir de hechos conocidos o asumidos.
  • 3. COMO SE PUEDE INFERIR? Realizar inferencias significa derivar nuevos hechos a partir de un conjunto de hechos conocidos como verdaderos. La lógica de predicados proporciona un grupo de reglas sólidas, con las cuales se pueden realizar inferencias.
  • 4. QUE SON REGLAS DE INFERENCIA? Mecanismos sintácticos que permiten deducir f.b.d apartir de otras f.b.d
  • 5. Fuente: Lógica una síntesis didáctica: Fabio Gutiérrez Correal
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14. Pruebas Formales de Validez de Argumentos
  • 15. Fuente: Lógica una síntesis didáctica: Fabio Gutiérrez Correal
  • 16. Fuente: Lógica una síntesis didáctica: Fabio Gutiérrez Correal
  • 17.  
  • 18.
  • 19.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25. Teorema + Axiomas (como fórmulas bien formadas, fbf) Teorema + Axiomas (como cláusulas) Método de resolución por refutación Unificación Demostración automática de teoremas + + Lo que queremos hacer ... Jorge Cabrera Gámez Departamento de Informática y Sistemas Universidad de Las Palmas de Gran Canaria © Todos los derechos reservados
  • 26.
  • 27.
  • 28.
  • 29. Ejemplo Completo Jack es dueño de un perro Quien es dueño de un perro es un amante de los animales Ningún amante de los animales mata a un animal O Jack o Curiosidad mató al gato, cuyo nombre era Tuna ¿Mató Curiosidad al gato? Programación Lógica: Jorge Cabrera Gámez. Departamento de Informática y Sistemas. Universidad de Las Palmas de Gran Canaria.
  • 30. Ref: Programación Lógica A. Jack es dueño de un perro B. Quien es dueño de un perro es un amante de los animales C. Ningún amante de los animales mata a un animal D. O Jack o Curiosidad mató al gato, cuyo nombre era Tuna E. ¿Mató Curiosidad al gato? 1. Expresión como predicados de primer orden A. (  X) perro(X)  dueño(jack, X) B. (  X) {(  Y) perro(Y)  dueño(X, Y)}  naturalista(X) C. (  X) (  Y) naturalista(X)  animal(Y)   mata(X,Y) D1. mata(jack, tuna)  mata(curiosidad, tuna) D2. gato(tuna) E. mata(curiosidad, tuna) Es necesario añadir que los gatos son animales F. (  X) gato(X)  animal(X)
  • 31. Ref: Programación Lógica 2. Transformación a cláusulas Negación del teorema: E.  mata(curiosidad, tuna) 2.1 Eliminación de la implicaciones B. (  X) {(  Y) perro(Y)  dueño(X, Y)}  naturalista(X) C. (  X) (  Y) naturalista(X)  animal(Y)   mata(X,Y) F. (  X) gato(X)  animal(X) B. (  X)  {(  Y) perro(Y)  dueño(X, Y)}  naturalista(X) C. (  X) (  Y)  { naturalista(X)  animal(Y)}   mata(X,Y) F. (  X)  gato(X)  animal(X)
  • 32. Ref: Programación Lógica 2. Transformación a cláusulas 2.2 Mover las negaciones hasta las fórmulas atómicas B. (  X)  {(  Y) perro(Y)  dueño(X, Y)}  naturalista(X) C. (  X) (  Y)  { naturalista(X)  animal(Y)}   mata(X,Y) B. (  X) {(  Y)  perro(Y)   dueño(X, Y)}  naturalista(X) C. (  X) (  Y)  naturalista(X)   animal(Y)   mata(X,Y)
  • 33. Ref: Programación Lógica 2. Transformación a cláusulas 2.3 Renombrar variables A. (  X) perro(X)  dueño(jack, X) B. (  Y) {(  Z)  perro(Z)   dueño(Y, Z)}  naturalista(Y) C. (  U) (  W)  naturalista(U)   animal(W)   mata(U,W) F. (  C)  gato(C)  animal(C) 2.4 Eliminar los cuantificadores existenciales A. (  X) perro(X)  dueño(jack, X) A. perro(a)  dueño(jack, a) donde a es una función de Skolem constante
  • 34. Ref: Programación Lógica 2. Transformación a cláusulas 2.5 Desplazar los cuantificadores universales hasta el comienzo de las fórmulas B. (  Y) {(  Z)  perro(Z)   dueño(Y, Z)}  naturalista(Y) B. (  Y) (  Z)  perro(Z)   dueño(Y, Z)  naturalista(Y) 2.6 Convertir los operadores AND en los más externos 2.7 Eliminar los cuantificadores universales 2.8 Eliminar los conectores AND
  • 35. Ref: Programación Lógica 2. Transformación a cláusulas Conjunto de cláusulas resultante A.1 perro(a) A.2 dueño(jack,a) B.  perro(Z)   dueño(Y, Z)  naturalista(Y) C.  naturalista(U)   animal(W)   mata(U,W) D1. mata(jack, tuna)  mata(curiosidad, tuna) D2. gato(tuna) E.  mata(curiosidad, tuna) F.  gato(C)  animal(C)
  • 36. Programación Lógica: Jorge Cabrera Gámez. Departamento de Informática y Sistemas. Universidad de Las Palmas de Gran Canaria. 3. Resolución por refutación  mata(curiosidad, tuna) mata(jack, tuna)  mata(curiosidad, tuna) mata(jack, tuna)  naturalista(U)   animal(W)   mata(U,W)  naturalista(jack)   animal(tuna)  perro(Z)   dueño(Y, Z)  naturalista(Y)  perro(Z)   dueño(jack, Z)   animal(tuna) dueño(jack, a)  perro(a)   animal(tuna)  gato(C)  animal(C)  gato(tuna)   perro(a) gato(tuna)  perro(a) perro(a) [ ] {U  jack, W  tuna} {Y  jack} {Z  a} {C  a}
  • 37. Obtención de respuestas Procedimiento A: 1. Demostrar el teorema por el procedimiento ya explicado. 2. Añadir al conjunto de cláusulas inicial, no el teorema negado (  p(X)), sino la disyunción de éste con su negado, es decir, (  p(X)  p(X)) (una tautología). 3. Seguir los mismos pasos que condujeron a la demostración del teorema. Dado que la cláusula del teorema contiene una tautología no se concluirá en el resolvente nulo, sino que se concluirá en la cláusula del teorema. 4. La respuesta es el resolvente final.
  • 38. Ejemplo: Axiomas: A1. (  X)( juega(pedro, X)  juega(luis, X)) A2. juega(pedro, fútbol). Teorema: T. (  X) juega(luis, X) El problema consiste en demostrar el teorema y, además, en saber a qué juega luis.
  • 39. Expresados en forma clausular y negando el teorema: A1.  juega(pedro, X)  juega(luis, X)) A2. juega(pedro, fútbol).  T.  juega(luis, Y) El árbol de refutación sería:  juega(luis, Y)  juega(pedro, X)  juega(luis, X) juega(pedro, fútbol).  juega(pedro, X) {} {Y  X} {X  fútbol}
  • 40. Y la obtención de la respuesta sería:  juega(luis, Y)  juega(luis, Y)  juega(pedro, X)  juega(luis, X) juega(pedro, fútbol).  juega(pedro, X)  juega(luis, X) juega(luis, fútbol) {Y  X} {X  fútbol}
  • 41. Puede generalizarse el procedimiento anterior de manera que en lugar de incluir la tautología (  p(X)  p(X)), se incluya la cláusula: (  p(X)  respuesta(X)) donde “respuesta” es un predicado comodín, que no puede aparecer en el conjunto de axiomas. Dado que este predicado no aparece en el resto del conjunto es imposible que pueda desaparecer del árbol modificado de refutación y, por tanto, no se concluirá en la cláusula nula.
  • 42. Obtención de respuestas Procedimiento B: 1. Añadir al conjunto de cláusulas de los axiomas la cláusula (  p(X)  respuesta(X)). El predicado comodín debe contener tantos términos como respuestas se deseen, p.e. (  p(X,Y)  respuesta(X,Y)) 2. Realizar la demostración del teorema, utilizando como objetivo no la cláusula nula, sino una cláusula que contiene solamente el predicado comodín “respuesta”. 3. Las respuestas son los términos del predicado comodín en el estado final.
  • 43. Con este procedimiento, la obtención de la respuesta sería:  juega(luis, Y)  respuesta(Y)  juega(pedro, X)  juega(luis, X) juega(pedro, fútbol).  juega(pedro, X)  respuesta(X) respuesta(fútbol) {Y  X} {X  fútbol}
  • 44.