L´ogica Proposicional
Introducci´on
Sintaxis F´ormulas Inducci´on sobre f´ormulas
Sem´antica Funciones de verdad Valoraciones Consecuencia L´ogica y satisfactibilidad Problemas de decisi´on
Tema 1:
Sintaxis y Sem´ antica de la L´ ogica Proposicional
Dpto. Ciencias de la Computaci´on e Inteligencia Artificial Universidad de Sevilla
L´ogica Inform´atica (Tecnolog´ıas Inform´aticas)
Curso 2015–16
L´ogica Proposicional
Introducci´on
Sintaxis F´ormulas Inducci´on sobre f´ormulas
Sem´antica Funciones de verdad Valoraciones Consecuencia L´ogica y satisfactibilidad Problemas de decisi´on
Contenido
Introducci´on
Sintaxis F´ormulas
Inducci´on sobre f´ormulas
Sem´antica
Funciones de verdad Valoraciones
Consecuencia L´ogica y satisfactibilidad
Problemas de decisi´on
L´ogica Proposicional
Introducci´on
Sintaxis F´ormulas Inducci´on sobre f´ormulas
Sem´antica Funciones de verdad Valoraciones Consecuencia L´ogica y satisfactibilidad Problemas de decisi´on
Problema b´ asico
Dados un conjunto de afirmaciones (hechos, hip´otesis,...), BC, y una afirmaci´on A, decidir si A ha de ser necesariamente cierta, suponiendo que todos las afirmaciones de BC lo son.
La L´ogica proporciona formulaciones precisas de este problema y diferentes soluciones.
Algunos aspectos esenciales de este problema son:
1. El lenguaje para expresar (representar) los afirmaciones.
2. La definici´on precisa de la noci´on de “afirmaci´on cierta”.
3. Reglas y procedimientos efectivos para garantizar la correcci´on de las deducciones (c´alculos deductivos, algoritmos de deducci´on).
Empezaremos estudiando estas cuestiones en el caso m´as simple: la L´ogica Proposicional.
L´ogica Proposicional
Introducci´on
Sintaxis F´ormulas Inducci´on sobre f´ormulas
Sem´antica Funciones de verdad Valoraciones Consecuencia L´ogica y satisfactibilidad Problemas de decisi´on
L´ ogica proposicional
Caracter´ısticas generales de la L´ogica proposicional:
I Es una l´ogica cuyas expresiones representan afirmaciones que pueden considerarse verdaderas o falsas.
I La expresiones de la l´ogica (f´ormulas) se construyen a partir de las expresiones b´asicas mediante composici´on, usando para ello operadores b´asicos (conectivas).
I Las conectivas se corresponden con formas sencillas de construir afirmaciones complejas en el lenguaje natural partiendo de otras mas sencillas:
I Conjunci´on: “. . . tal . . . y. . . cual. . . ”
I Disyunci´on: “. . . tal . . . o. . . cual . . . ”
I Implicaci´on “Si . . . tal . . . entonces. . . cual . . . ”
I Negaci´on: “No es cierto que tal . . . ”
I S´olo permite analizar las formas de razonamiento ligadas a este tipo de construcciones.
L´ogica Proposicional
Introducci´on
Sintaxis F´ormulas Inducci´on sobre f´ormulas
Sem´antica Funciones de verdad Valoraciones Consecuencia L´ogica y satisfactibilidad Problemas de decisi´on
S´ımbolos del lenguaje
El lenguaje de la l´ogica proposicional consta de:
1. Un conjunto numerable, VP, de variables proposicionales: p0, p1, . . . , p, q, r , . . . 2. Las conectivas l´ogicas:
I De aridad 1: ¬ (negaci´on).
I De aridad 2: ∨ (disyunci´on), ∧ (conjunci´on),
→ (condicional) y ↔ (bicondicional).
3. S´ımbolos auxiliares: “(” y “)”.
L´ogica Proposicional
Introducci´on
Sintaxis F´ormulas Inducci´on sobre f´ormulas
Sem´antica Funciones de verdad Valoraciones Consecuencia L´ogica y satisfactibilidad Problemas de decisi´on
F´ ormulas
El conjunto de las f´ormulas proposicionales es el menor conjunto de expresiones PROP tal que:
I VP ⊆ PROP ,
I Si F ∈ PROP entonces ¬F ∈ PROP
I F , G ∈ PROP entonces
(F ∨ G ), (F ∧ G ), (F → G ), (F ↔ G ) ∈ PROP.
La sintaxis del lenguaje pretende evitar la ambig¨uedad en la interpretaci´on de las f´ormulas. Esa es la funci´on de los s´ımbolos auxiliares.
L´ogica Proposicional
Introducci´on
Sintaxis F´ormulas Inducci´on sobre f´ormulas
Sem´antica Funciones de verdad Valoraciones Consecuencia L´ogica y satisfactibilidad Problemas de decisi´on
Arboles de formaci´ ´ on
I Asociamos a cada f´ormula un ´arbol de formaci´on (esencialmente ´unico) que describe el modo en que se construye la f´ormula a partir de otras m´as sencillas.
I Ejemplo:
¬(¬(p ∨ q) → (¬r ∧ s)) (¬(p ∨ q) → (¬r ∧ s))
H HH
¬(p ∨ q) (p ∨ q)
HH
p q
(¬r ∧ s)
HH
¬r r
s
I Las f´ormulas que aparecen en el ´arbol de formaci´on de una f´ormula F se denominan subf´ormulas de F .
L´ogica Proposicional
Introducci´on
Sintaxis F´ormulas Inducci´on sobre f´ormulas
Sem´antica Funciones de verdad Valoraciones Consecuencia L´ogica y satisfactibilidad Problemas de decisi´on
Reducci´ on de par´ entesis
Para facilitar la lectura de las f´ormulas adoptaremos los siguientes convenios de notaci´on:
1. Omitiremos los par´entesis externos.
2. Daremos a las conectivas una precedencia de asociaci´on.
De mayor a menor, est´an ordenadas por: ¬, ∧, ∨, →, ↔.
I Ejemplo: F ∧ G → ¬F ∨ G es ((F ∧ G ) → (¬F ∨ G )).
3. Cuando una conectiva se usa repetidamente, se asocia por la derecha: F ∨ G ∨ H es (F ∨ (G ∨ H)).
L´ogica Proposicional
Introducci´on
Sintaxis F´ormulas Inducci´on sobre f´ormulas
Sem´antica Funciones de verdad Valoraciones Consecuencia L´ogica y satisfactibilidad Problemas de decisi´on
Principio de Inducci´ on sobre f´ ormulas
Gracias a la definici´on de PROP si deseamos probar que toda f´ormula proposicional satisface cierta propiedad Ψ, podemos probarlo por inducci´on sobre f´ormulas.
Para ello probamos:
1. Caso base: Si F ∈ Var , entonces F tiene la propiedad Ψ.
2. Paso de inducci´on:
2.1 Si F ∈ PROP tiene la propiedad Ψ, entonces ¬F tiene la propiedad Ψ.
2.2 Si F , G ∈ PROP tienen la propiedad Ψ, entonces (F ∨ G ), (F ∧ G ), (F → G ) y (F ↔ G ) tambi´en tienen la propiedad Ψ.
L´ogica Proposicional
Introducci´on
Sintaxis F´ormulas Inducci´on sobre f´ormulas
Sem´antica Funciones de verdad Valoraciones Consecuencia L´ogica y satisfactibilidad Problemas de decisi´on
Funciones de verdad
I Los elementos del conjunto {0, 1} se llaman valores de verdad. Se dice que 0 es el valor falso y el 1 es el valor verdadero.
I El significado de una conectiva se determina mediante su funci´on de verdad:
I Para la negaci´on su funci´on de verdad es la funci´on H¬(i ) =
1, si i = 0;
0, si i = 1.
y para las dem´as conectivas:
I H∨(i , j ) =
0, si i = j = 0;
1, en otro caso.
I H∧(i , j ) =
1, si i = j = 1;
0, en otro caso.
I H→(i , j ) =
0, si i = 1, j = 0;
1, en otro caso.
I H↔(i , j ) =
1, si i = j ; 0, en otro caso.
L´ogica Proposicional
Introducci´on
Sintaxis F´ormulas Inducci´on sobre f´ormulas
Sem´antica Funciones de verdad Valoraciones Consecuencia L´ogica y satisfactibilidad Problemas de decisi´on
Valoraciones
I Las variables proposicionales se interpretan mediante una valoraci´on de verdad (o interpretaci´on), es decir, una aplicaci´on
v : VP → {0, 1}
I Podemos extender cada valoraci´on, v , al conjunto de todas las f´ormulas de manera que para cada f´ormula F se verifique:
I v (¬F ) = H¬(v (F )).
I v ((F ∨ G )) = H∨(v (F ), v (G )).
I v ((F ∧ G )) = H∧(v (F ), v (G )).
I v ((F → G )) = H→(v (F ), v (G )).
I v ((F ↔ G )) = H↔(v (F ), v (G )).
I Fijada v , estas ecuaciones permiten asignar de manera
´
unica un valor v (F ) a cada f´ormula. Se dice que v (F ) es el valor de verdad de F respecto de v .
L´ogica Proposicional
Introducci´on
Sintaxis F´ormulas Inducci´on sobre f´ormulas
Sem´antica Funciones de verdad Valoraciones Consecuencia L´ogica y satisfactibilidad Problemas de decisi´on
Valor de verdad (I)
Veamos el c´alculo de v (¬(¬(p ∨ q) ∨ (¬r ∨ s)) en el ´arbol de formaci´on.
¬(¬(p ∨ q) ∨ (¬r ∨ s)) (0)
¬(p ∨ q) ∨ (¬r ∨ s) (1)
HH H H
¬(p ∨ q) (0) (p ∨ q)
(1)
H H H p (1)
q (1)
(¬r ∨ s) (1)
HH
¬r (1)
r (0)
s (0)
L´ogica Proposicional
Introducci´on
Sintaxis F´ormulas Inducci´on sobre f´ormulas
Sem´antica Funciones de verdad Valoraciones Consecuencia L´ogica y satisfactibilidad Problemas de decisi´on
Valor de verdad (II)
El valor v (F ) est´a bien definido gracias al siguiente resultado:
Teorema. Para cada valoraci´on de verdad, v , existe una
´
unica aplicaci´on V : PROP → {0, 1} tal que
V (A) =
v (A) si A ∈ VP
H¬(V (B)) si A es ¬B
H∨(V (B), V (C )) si A es (B ∨ C ) H∧(V (B), V (C )) si A es (B ∧ C ) H→(V (B), V (C )) si A es (B → C ) H↔(V (B), V (C )) si A es (B ↔ C )
L´ogica Proposicional
Introducci´on
Sintaxis F´ormulas Inducci´on sobre f´ormulas
Sem´antica Funciones de verdad Valoraciones Consecuencia L´ogica y satisfactibilidad Problemas de decisi´on
Tablas de verdad
Dada una valoraci´on v , el valor de verdad de una f´ormula F respecto de v est´a determinado por los valores de verdad de las subf´ormulas de F .
Ejemplo: si v (p) = v (q) = 0 y v (r ) = 1, entonces v (¬((p → q) ∨ r )) = H¬(H∨(v (p → q), v (r ))) =
= H¬(H∨(H→(v (p), v (q)), 1)) = 0 Fijada v podemos presentar el c´alculo de F mediante una tabla:
p q r p → q (p → q) ∨ r ¬((p → q) ∨ r )
0 0 1 1 1 0
Una tabla de verdad para F es una tabla similar que contiene una fila por cada valoraci´on que asigne valores distintos a las variables proposicionales que aparecen en F .
L´ogica Proposicional
Introducci´on
Sintaxis F´ormulas Inducci´on sobre f´ormulas
Sem´antica Funciones de verdad Valoraciones Consecuencia L´ogica y satisfactibilidad Problemas de decisi´on
Validez y satisfactibilidad (I)
I Decimos que una f´ormula F es v´alida en v , o que v es un modelo de F , si v (F ) = 1.
I Notaci´on: v |= F .
I Una valoraci´on v es modelo de un conjunto de f´ormulas U, v |= U, si v es modelo de toda f´ormula de U.
I Una f´ormula F es una tautolog´ıa (o v´alida) si es v´alida para toda valoraci´on (notaci´on |= F ).
I Una f´ormula F es satisfactible (o consistente) si existe una valoraci´on que es modelo de F . En caso contrario diremos que es insatisfactible (o inconsistente).
I An´alogamente, un conjunto de f´ormulas U es
satisfactible (o consistente) si existe una valoraci´on que es modelo de U. En caso contrario diremos que es insatisfactible (o inconsistente).
L´ogica Proposicional
Introducci´on
Sintaxis F´ormulas Inducci´on sobre f´ormulas
Sem´antica Funciones de verdad Valoraciones Consecuencia L´ogica y satisfactibilidad Problemas de decisi´on
Validez y satisfactibilidad (II)
Relaci´on entre ambos conceptos:
Lema. Para cada F ∈ PROP se verifica:
I Si F es un tautolog´ıa entonces F es satisfactible.
I F es una tautolog´ıa si y s´olo si ¬F insatisfactible.
Ejemplos:
I Son tautolog´ıas: (p ∨ ¬p) y ((p → q) → p) → p.
I p ∧ ¬p es insatisfactible y, por tanto, ¬(p ∧ ¬p) es una tautolog´ıa.
I (p → q) → p es satisfactible pero no es una tautolog´ıa.
L´ogica Proposicional
Introducci´on
Sintaxis F´ormulas Inducci´on sobre f´ormulas
Sem´antica Funciones de verdad Valoraciones Consecuencia L´ogica y satisfactibilidad Problemas de decisi´on
Consecuencia L´ ogica
I Una f´ormula F es consecuencia l´ogica de un conjunto de f´ormulas U, si todo modelo de U es modelo de F . Es decir, para toda valoraci´on, v ,
v |= U =⇒ v |= F
I Notaci´on: U |= F .
I La relaci´on de consecuencia l´ogica permite formular el problema b´asico en el marco de la l´ogica proposicional.
Relaci´on entre consecuencia l´ogica, consistencia y validez:
Proposici´on. Sea {F1, . . . Fn} ⊆ PROP. Son equivalentes:
I {F1, . . . , Fn} |= F
I F1∧ · · · ∧ Fn→ F es un tautolog´ıa.
I {F1, . . . , Fn, ¬F } es insatisfactible.
L´ogica Proposicional
Introducci´on
Sintaxis F´ormulas Inducci´on sobre f´ormulas
Sem´antica Funciones de verdad Valoraciones Consecuencia L´ogica y satisfactibilidad Problemas de decisi´on
Algoritmos de decisi´ on
Dado un conjunto de f´ormulas proposicionales, U, un algoritmo de decisi´on para U es un algoritmo que dada A ∈ PROP, devuelve SI cuando A ∈ U y NO si A 6∈ U.
Casos especialmente interesantes:
I SAT = {A ∈ PROP : A es satisfactible}
I TAUT = {A ∈ PROP : A es una tautolog´ıa}
I Fijado U ⊆ PROP, la teor´ıa de U es
T (U) = {A ∈ PROP : U |= A}
Un algoritmo de decisi´on para T (U) propociona una respuesta al Problema B´asico considerado al principio del tema.
L´ogica Proposicional
Introducci´on
Sintaxis F´ormulas Inducci´on sobre f´ormulas
Sem´antica Funciones de verdad Valoraciones Consecuencia L´ogica y satisfactibilidad Problemas de decisi´on
Algoritmos de decisi´ on (II)
Problema B´asico:
Obtener un algoritmo que dado un conjunto finito de f´ormulas proposicionales, U, y una f´ormula F decida si U |= F .
El problema anterior se reduce a decidir la satisfactibilidad de una cierta f´ormula (o si se prefiere, la validez de otra).
Por tanto,
I La construcci´on de tablas de verdad proporciona un algoritmo (ineficiente) para decidir la consecuencia l´ogica.
I El Problema B´asico es resoluble algor´ıtmicamente, aunque no se conoce ninguna soluci´on eficiente y se duda de la existencia de algoritmos de decisi´on eficientes para este problema, ya que
I Determinar la satisfactibilidad de una f´ormula proposicional es un problema NP-completo.
L´ogica Proposicional
Introducci´on
Sintaxis F´ormulas Inducci´on sobre f´ormulas
Sem´antica Funciones de verdad Valoraciones Consecuencia L´ogica y satisfactibilidad Problemas de decisi´on
Algoritmos de decisi´ on (III)
Problema B´asico (bis):
Obtener un algoritmo eficiente que dado un conjunto finito de f´ormulas proposicionales, U, y una f´ormula F decida si U |= F .
Observaciones:
I Este problema es equivalente al de obtener un algoritmo eficiente para determinar la satisfactibilidad de una f´ormula proposicional.
I Se trata de un problema abierto, que posiblemente tendr´a una respuesta negativa (se cree que no existen algoritmos eficientes para resolver SAT).
I Para prop´ositos pr´acticos puede bastar con algoritmos eficientes para alguna clase especial de f´ormulas.