logica_proposicional
DESCRIPTION
logicaTRANSCRIPT
Lógica proposicional
Lorenzo Mandow, Ezequiel López Rubio, Enrique Domínguez
Dpto. Lenguajes y Ciencias de la Computación
Universidad de Málaga
1. Motivación
Representación de espacios de estados: Procedural (atómica)
Factorizada (variables/valores/restricciones)
¿Estructurada? (¿objetos, relaciones, leyes?)
¿Cómo podemos expresar mejor nuestro conocimiento para razonar sobre el mismo?
1. Motivación
En la representación procedural (atómica) la descripción del problema queda encapsulada en un conjunto de procedimientos,
Problem.GoalTest(node.STATE) //cond. objetivo
Problem.Actions(node.STATE) //precondiciones
CHILD-NODE(problem, node, action) //efectos
El conocimiento del dominio queda encapsulado en una función de evaluación
f(n) = g(n) + h(n)
1. Motivación
El modelo CSP (variables/dominios/restricciones) establece una estructura básica.
No es necesario programar cada espacio de estados.
Admite procedimientos de inferencia independientes del dominio.
Pero…
No todos los problemas admiten fácilmente el formalismo CSP.
1. Motivación
¿Sería posible una representación estructurada de nuestro conocimiento en términos de objetos, relaciones y leyes, que admitiera procedimientos de inferencia independientes del dominio?
El uso de la lógica como lenguaje para la representación del conocimiento ha cautivado a muchos investigadores de IA.
Conocimiento = estruct. simbólicas + procedimientos
2. Sintaxis
Define las fórmulas bien formadas (proposiciones, sentencias, o expresiones):
Proposiciones simples (átomos): A, B, C…
Proposiciones compuestas, emplean paréntesis y conectivas lógicas:
¬ , , , , Por ejemplo: A
¬A
A B
(A B C) (¬B A)
3. Semántica
Los significados de las expresiones de la lógica proposicional son los valores de verdad {true, false}.
Una interpretación es una función que a cada expresión le asigna un valor de verdad. La interpretación de las conectivas viene dada por
3. Semántica
Un modelo de una expresión es una interpretación que la hace verdadera.
Una expresión puede ser: tautología (válida): si toda interpretación es modelo de
satisfacible: si existe al menos un modelo de
contradicción: si no existe ningún modelo de
Consideremos las proposiciones atómicas = {A,B}, ¿podemos dar algunos ejemplos…?
3. Semántica
Un argumento 1 2 3…n
______________
es válido si todo modelo de = {1 2 3…n} es modelo de .
Del mismo modo, se dice que se infiere de :
|=
3. Semántica
Un argumento 1 2 3…n
______________
es válido si y solo si: 1 2 3 … n es una tautología
{1, 2, 3,… n, } es insatisfacible
1 2 3 … n es una contradicción
4. Demostración por resolución
Una demostración es una secuencia de fórmulas obtenida por aplicación de reglas de inferencia a un conjunto de fórmulas.
Sólo consideraremos una regla de inferencia, la regla de resolución.
La resolución se aplica a dos cláusulas (disyunciones de literales).
Para aplicar resolución hay que pasar todas las fórmulas a forma normal conjuntiva (CNF) (conjunción de cláusulas). Siempre es posible.
Conversión a CNF
Eliminar reemplazando por () ()
Eliminar reemplazando por ¬
Mover ¬ hacia dentro aplicando repetidamente: ¬(¬)
¬() ¬ ¬
¬() ¬ ¬
Aplicar la distributividad de respecto a siempre que sea posible: () () ()
Ejemplo
[ Wet (Rain Flooding) ] ¬Wet
[ Wet (Rain Flooding) ] [ (Rain Flooding) Wet ] ¬Wet
[ ¬Wet Rain Flooding ] [¬(Rain Flooding) Wet ] ¬Wet
[ ¬Wet Rain Flooding ] [ (¬Rain ¬Flooding) Wet ] ¬Wet
( ¬Wet Rain Flooding ) (¬Rain Wet ) (¬Flooding Wet ) ¬Wet
Demostración por resolución
La resolución se aplica a dos cláusulas (disyunciones de literales) tales que hay un literal li en la primera cláusula que es la negación de un literal mj de la segunda cláusula
Produce una disyunción de todos los literales de las dos cláusulas originales excepto los dos literales li , mj
Por ejemplo:
A B C
A D E
B C D E
njjkii
nk
mmmmllll
mmll
............
...,...
111111
11
Algoritmo
Demostraremos que |= por reducción al absurdo, es decir, que ¬ es insatisfacible
Primero convertimos ¬ a CNF Después aplicamos la regla de resolución
repetidamente Hay dos posibles resultados:
No se pueden añadir más cláusulas, lo que significa que no se infiere de
Se produce la cláusula vacía, lo que significa que se infiere de
Algoritmo
Si la regla de resolución produce una cláusula en la que aparecen dos literales complementarios, la descartamos porque es lógicamente equivalente a True
Propiedades
La demostración por resolución es correcta, es decir, nunca produce una fórmula que no
se infiera de las formulas iniciales. es completa, es decir, cuando se combina con cualquier
algoritmo de búsqueda completo, es capaz de alcanzar cualquier fórmula que pueda inferirse de las fórmulas iniciales
Volvemos al ejemplo
( ¬Wet Rain Flooding ) (¬Rain Wet ) (¬Flooding Wet ) ¬Wet
Queremos demostrar = ¬Rain