leonardobernalzamora
47,883 views
44 slides
Oct 05, 2010
Slide 1 of 44
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
About This Presentation
No description available for this slideshow.
Size: 745.9 KB
Language: es
Added: Oct 05, 2010
Slides: 44 pages
Slide Content
REGLAS DE INFERENCIAREGLAS DE INFERENCIA
LOGICA DE PREDICADOS
Modificado y adaptado: Modificado y adaptado:
LEONARDO BERNAL ZAMORALEONARDO BERNAL ZAMORA
QUE ES INFERENCIA?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?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 QUE SON REGLAS DE
INFERENCIA?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 PonensModus Ponens (MP) (MP)
de (P Q) y P, se deduce Q
conocida como la regla de la afirmación
del antecedente
Ejemplo:
Si el sol brilla, María está en la playa.
El sol brilla.
Por lo tanto, María está en la playa.
Modus TollensModus Tollens (MT) (MT)
de (P Q) y ~Q, se infiere ~P
conocida como negación del consecuente
Ejemplo:
Si el sol brilla, María está en la playa.
María no está en la playa.
Luego, el sol no brilla.
Silogismo Hipotético Silogismo Hipotético (SH)(SH)
de (P Q) y (Q R), deducimos (P R).
se conoce como razonamiento en cadena
Ejemplo:
Si el sol brilla, María está en la playa
Si María está en la playa, está nadando.
Si está nadando, estará cansada esta noche.
Por lo tanto, si el sol brilla, María estará cansada
esta noche.
Silogismo DisyuntivoSilogismo Disyuntivo (SD) (SD)
de (P v Q) y ~P, deducimos que Q.
~P puede ser también ~Q.
Ejemplo:
El sol brilla o está lloviendo
El sol no brilla.
Por lo tanto está lloviendo
Conjunción Conjunción (Conj)(Conj)
de P y Q, deducimos P ^ Q
Ejemplo:
El sol brilla
Está lloviendo
Por lo tanto, el sol brilla y está lloviendo
SimplificaciónSimplificación (Simp) (Simp)
De P ^ Q deducimos P
Ejemplo:
Está lloviendo y el sol brilla
Por lo tanto, está lloviendo
AdiciónAdición (Ad) (Ad)
De P inferimos P v Q
si sabemos que P es verdadera, P v Q, P v
R, P v S… lo será también
Ejemplo:
Está lloviendo
Por lo tanto, está lloviendo o la luna es
de queso.
Dilema constructivoDilema constructivo (DC) (DC)
de (P Q) ^ (R S) y (P v R)
inferimos (Q v S).
Ejemplo:
Si Juan se va a Alaska, se congelará en
invierno.
Si se va a Miami, se asará en verano.
Juan se va a Alaska o a Miami.
Por lo tanto, se congelará en invierno o
se asará en verano
Pruebas Formales de Validez de Pruebas Formales de Validez de
ArgumentosArgumentos
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 INFERENCIAOTRA REGLA DE INFERENCIA
La resolución es una técnica poderosa
para probar teoremas en lógica y
constituye la técnica básica de inferencia
en PROLOG, un lenguaje que manipula
en forma computacional la lógica de
predicados.
ResoluciónResolución
Si (A v B) es verdadero y (~B v C) es
verdadero, entonces (A v C) también es
verdadero.
Utiliza refutación para comprobar una
determinada sentencia. La refutación
intenta crear una contradicción con la
negación de la sentencia original,
demostrando, por lo tanto, que la
sentencia original es verdadera.
RESOLUCIONRESOLUCION
ResoluciónResolución
Es un mecanismo de prueba que opera sobre
estatutos que han sido convertidos a forma
clausal y produce pruebas por refutación, es
decir que para probar si un estatuto es
verdadero (demostrar que es válido ) intenta
mostrar que la negación de ese estatuto produce
una contradicción.
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ónResolución
La resolución fue introducida como una regla de
inferencia
Resume muchos esquemas de inferencia clásicos.
Es un procedimiento completo de inferencia, por
que solo con ella pueden diseñarse sistemas
deductivos consistentes y completos.
Se aplica a sentencias que tienen que estar
escritas forma clausulada.
Para toda sentencia se puede encontrar una
sentencia equivalente en forma clausulada.
Una vez que tenemos las cláusulas, Una vez que tenemos las cláusulas,
pueden utilizarse en la resolución para pueden utilizarse en la resolución para
generar pruebas.generar pruebas.
Aplicación de la regla de resoluciónAplicación de la regla de resolución
La propiedad extraordinaria de la regla de
resolución es que casi todas las reglas de
inferencia se reducen a ella si previamente se
escriben las premisas en forma clausulada.
Forma Normal Implicativa
Modus Ponens P Þ Q
P
Q
Modus TollensP Þ Q
¬Q
¬P
EncadenamientoP Þ 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ónAplicación de la regla de resolución
Asumir que se tienen un conjunto de cláusulas F y el estatuto a probar P
Convertir todos los estatutos de F a la Forma clausal
Negar P y convertirla a forma clausal. Agregar al conjunto de cláusulas
obtenidas en el paso anterior
Repetir hasta que una contradicción sea alcanzada:
◦Seleccionar dos cláusulas y llamarlas cláusulas padre
◦Resolverlas. Para obtener la cláusula llamada
resolvente. Buscar en las cláusulas padre un par de
literales T1 y ØT1 de tal forma que T1 pertenece a
una y ØT1 a la otra, eliminar ambas literales y crear
el resolvente.
◦Si el resolvente es la cláusula vacía (FALSE), la
contradicción ha sido encontrada. De otra manera el
resolvente se agrega al conjunto de cláusulas.
EjemploEjemplo
Axiomas:
Es ilegal que un turista venda huacos en Rusia
"x,y Turista(x) Λ huacos(y) Λ
Vender(x,y)=>Infractor(x)
Sumac es un turista en Rusia
Turista(Sumac)
Cada uno de los turistas en Rusia venden algunos
huacos
"x,y Turista(x) Λ Huacos(y) Λ Vende(x,y)
¿Es Sumac un infractor?
Infractor(Sumac)
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}