Está en la página 1de 56

L ogica Proposicional

IIC2212

IIC2212

L ogica Proposicional

1 / 56

Inicio de la L ogica

Originalmente, la L ogica trataba con argumentos en el lenguaje natural.

Ejemplo
Es el siguiente argumento v alido? Todos los hombres son mortales. S ocrates es hombre. Por lo tanto, S ocrates es mortal.

La l ogica deber a poder usarse para demostrar que s .

IIC2212

L ogica Proposicional

2 / 56

Inicio de la L ogica

Ejemplo
Qu e pasa con el siguiente caso? Algunas personas son mujeres. S ocrates es una persona. Por lo tanto, S ocrates es mujer.

En este caso deber amos decir que el argumento no es v alido.

IIC2212

L ogica Proposicional

3 / 56

Inicio de la L ogica

Pero los argumentos pueden ser m as complejos ... Creo que todos los hombres son mortales. Creo que S ocrates es hombre. Por lo tanto, creo que S ocrates es mortal. Es este argumento v alido? Por qu e? Qu e signica creo? Qu e pasar a si reemplazamos creo que por no se si?

IIC2212

L ogica Proposicional

4 / 56

Paradojas en el lenguaje natural

Un d a de la pr oxima semana les voy a hacer una interrogaci on, y les aseguro que el d a que se las haga van a estar sorprendidos.

Qu e d a voy a hacer la interrogaci on?

IIC2212

L ogica Proposicional

5 / 56

Matem atica en el lenguaje natural: Paradoja de Berry

Podemos representar los n umeros naturales usando oraciones del lenguaje natural: Mil quinientos veinte, el primer n umero, ... El n umero de palabras en el Diccionario de la Real Academia es nito. El n umero de oraciones con a los m as 50 palabras tambi en es nito.

IIC2212

L ogica Proposicional

6 / 56

Matem atica en el lenguaje natural: Paradoja de Berry

Sea B el siguiente n umero natural: El primer n umero natural que no puede ser denido por una oraci on con a lo m as cincuenta palabras tomadas del Diccionario de la Real Academia.

B est a bien denido, pero con s olo 25 palabras. Tenemos una contradicci on! Qu e pas o?

IIC2212

L ogica Proposicional

7 / 56

M as paradojas: Russell (1902)

Tambi en pueden aparecer paradojas usando lenguaje matem atico. Sea A = {1, 2, 3} A A? No. Sea B = {{1, 2, 3}, {4, 5}} A B ? S . B B ? No.

IIC2212

L ogica Proposicional

8 / 56

M as paradojas: Russell (1902)


Sea C el conjunto de todos los conjuntos que tienen a lo menos dos elementos: C = {A, B , . . .} C C ? S . Entonces podemos denir el siguiente conjunto: U = {X | X X }. Tenemos: A U , B U , C U . U U ? Por denici on, U U si y s olo si U U . Tenemos una contradicci on! C omo denimos la noci on de conjunto?

IIC2212

L ogica Proposicional

9 / 56

Por qu e necesitamos la L ogica?

Necesitamos un lenguaje con una sintaxis precisa y una sem antica bien denida. Queremos usar este lenguaje en matem aticas.
- Denici on de objetos matem aticos: conjunto, n umeros naturales, n umeros reales. - Denici on de teor as matem aticas: teor a de conjuntos, teor a de los n umero naturales. - Denici on del concepto de demostraci on.

Tambi en queremos usar este lenguaje en computaci on. Por qu e?

IIC2212

L ogica Proposicional

10 / 56

Por qu e necesitamos la L ogica en computaci on?


Algunas aplicaciones:
- Bases de datos: Lenguajes de consulta, lenguajes para restricciones de integridad. - Inteligencia articial: Representaci on de conocimiento, razonamiento con sentido com un. - Ingenier a de software: Especicaci on de sistemas (lenguaje Z ), vericaci on de propiedades. - Teor a de la computaci on: complejidad descriptiva, algoritmos de aproximaci on. - Criptograf a: vericaci on de protocolos criptogr acos. - Procesamiento de lenguaje natural. - ...

IIC2212

L ogica Proposicional

11 / 56

L ogica Proposicional: Sintaxis


Tenemos los siguientes elementos:
- Variables proposicionales (P ): p , q , r , . . . - Conectivos l ogicos: , , , , - S mbolos de puntuaci on: (, )

Cada variable proposicional representa una proposici on completa e indivisible, que puede ser verdadera o falsa.

Ejemplo
P = {socrates es hombre , socrates es mortal }.

IIC2212

L ogica Proposicional

12 / 56

L ogica Proposicional: Sintaxis

Conectivos l ogicos son usados para construir expresiones que tambi en pueden ser verdaderas o falsas.

Ejemplo
socrates es hombre socrates es mortal socrates es hombre ( socrates es mortal )

S mbolos de puntuaci on son usados para evitar ambig uedades.

IIC2212

L ogica Proposicional

13 / 56

Sintaxis de la L ogica Proposicional: Denici on


Dado: Conjunto P de variables proposicionales.

Denici on
L(P ) es el menor conjunto que satisface las siguientes reglas:
1. P L(P ). 2. Si L(P ), entonces () L(P ). 3. Si , L(P ), entonces ( ) L(P ), ( ) L(P ), ( ) L(P ) y ( ) L(P ).

Ejercicio
Verique que ((p ) (q r )) es una f ormula.

IIC2212

L ogica Proposicional

14 / 56

Sintaxis de la L ogica Proposicional: Denici on

La naturaleza de la denici on es inductiva.


- Permite construir programas recursivos para chequear si una f ormula est a bien construida. - Permite denir inductivamente conceptos asociados a las f ormulas. - Permite demostrar inductivamente propiedades de las f ormulas.

IIC2212

L ogica Proposicional

15 / 56

Deniciones inductivas
Queremos denir una funci on la que indica cuantos s mbolos tiene una f ormula: la((p q )) = 5.
Caso base Caso inductivo : : Para cada p P , la(p ) = 1. la(()) = 3 + la() y la(( )) = 3 + la() + la( ), donde corresponde a , , o .

En el ejemplo: la((p q )) = 3 + la(p ) + la(q ) = 3 + 1 + 1 = 5.

Ejercicio
Dena las funciones pi y pd que indican cu ales son los n umeros de par entesis izquierdos y derechos en una f ormula, respectivamente.
IIC2212 L ogica Proposicional 16 / 56

Demostraciones inductivas

Lo siguiente parece ser cierto: Cada f ormula contiene el mismo n umero de par entesis izquierdos y derechos. pi () = pd (), para cada f ormula .

C omo podemos demostrar esto? Podemos usar inducci on ...

IIC2212

L ogica Proposicional

17 / 56

Inducci on en los n umeros naturales


Principio de inducci on: para cada A N tal que Caso base Caso inductivo se tiene que A = N. Este principio se usa para demostrar que los naturales tienen alguna propiedad. Por qu e funciona? : : 0 A, si n A, entonces n + 1 A,

Ejercicio
Dar un principio de inducci on para las f ormulas de un lenguaje proposicional L(P ).

IIC2212

L ogica Proposicional

18 / 56

Inducci on en la l ogica proposicional


Principio de inducci on: Para cada A L(P ) tal que Caso base Caso inductivo : : p A, para cada p P , si , A, entonces () A y ( ) A, donde {, , , },

se tiene que A = L(P ). Por qu e funciona?

Ejercicio
Demuestre que cada f ormula contiene el mismo n umero de par entesis izquierdos y derechos.

IIC2212

L ogica Proposicional

19 / 56

Inducci on en la l ogica proposicional: Ejercicios

1. Dena v () como el n umero de ocurrencias de variables proposicionales en . 2. Demuestre que para cada f ormula proposicional que no contiene el s mbolo se tiene que la() 3 v ()2 . Qu e sucede si contiene el s mbolo ? Qu e sucede si las f ormulas de la forma (()) no son permitidas? 3. Demuestre que un prejo propio de una f ormula no es una f ormula.

IIC2212

L ogica Proposicional

20 / 56

L ogica proposicional: Lectura unica


Una f ormula es at omica si = p , donde p P . Una f ormula es compuesta si no es at omica.
- Si = (), entonces es un conectivo primario de y es una subf ormula inmediata de . - Si = ( ), entonces es un conectivo primario de y , son subf ormulas inmediatas de .

Teorema (Lectura unica)


Cada f ormula compuesta tiene un u nico conectivo primario y u nicas subf ormulas inmediatas.

Ejercicio
Demuestre el teorema de Lectura u nica.
IIC2212 L ogica Proposicional 21 / 56

Sem antica de la l ogica proposicional

C omo podemos determinar si una f ormula es verdadera o falsa? Este valor de verdad depende de los valores de verdad asignados a las variables proposicionales y de los conectivos utilizados. Valuaci on (asignaci on): : P {0, 1}.

Ejemplo
(socrates es hombre ) = 1 y (socrates es mortal ) = 0.

IIC2212

L ogica Proposicional

22 / 56

Sem antica: Denici on


Dado : P {0, 1}, queremos extender : : L(P ) {0, 1}.

Denici on
Dado L(P ),
- Si = p, entonces () := (p ). - Si = (), entonces () = - Si = ( ), entonces () =
IIC2212 L ogica Proposicional

1 si () = 0 0 si () = 1

1 0

si () = 1 o ( ) = 1 si () = 0 y ( ) = 0
23 / 56

Sem antica: Denici on (continuaci on)


- Si = ( ), entonces () = 1 0 si () = 1 y ( ) = 1 si () = 0 o ( ) = 0

- Si = ( ), entonces () = 1 0 si () = 0 o ( ) = 1 si () = 1 y ( ) = 0

- Si = ( ), entonces () = 1 si () = ( ) 0 si () = ( )

Por simplicidad vamos a usar en lugar de .


IIC2212 L ogica Proposicional 24 / 56

Sem antica: Ejemplos

Supongamos que (socrates es hombre ) = 1 y (socrates es mortal ) = 0. Entonces: ((socrates es hombre socrates es mortal )) = 0 ((((socrates es hombre socrates es mortal ) socrates es hombre ) socrates es mortal )) = 1

IIC2212

L ogica Proposicional

25 / 56

Equivalencia de f ormulas
Denici on
Dos f ormulas , son equivalentes si para toda valuaci on se tiene que () = ( ). Notaci on: . Algunas equivalencias u tiles:
(( )) (( )) ( ( )) ( ( )) (() ( )) (() ( )) (( ) ) (( ) ) ( ) ( ) (()) (() ) (( ) ( ))

IIC2212

L ogica Proposicional

26 / 56

Equivalencia de f ormulas

Notaci on: Desde ahora en adelante


- vamos a omitir los par entesis externos, - vamos a escribir en lugar de ( ) (lo mismo para ).

Ejercicio
Es asociativo? Vale decir, Es cierto que ( ) ( )?

IIC2212

L ogica Proposicional

27 / 56

Tablas de verdad
Cada f ormula se puede representar y analizar en una tabla de verdad.
p 0 0 1 1 q 0 1 0 1 p 1 1 0 0 pq 0 1 1 1 pq 0 0 0 1 pq 1 1 0 1 pq 1 0 0 1

Observaci on: Dos f ormulas son equivalentes si tienen la misma tabla de verdad.

Ejercicio
Suponga que P = {p , q }. Cu antas f ormulas contiene L(P )? Cu antas f ormulas no equivalentes contiene este conjunto?
IIC2212 L ogica Proposicional 28 / 56

Conectivos ternarios
Queremos denir el conectivo l ogico: si p entonces q si no r .
p 0 0 0 0 1 1 1 1 q 0 0 1 1 0 0 1 1 r 0 1 0 1 0 1 0 1 si p entonces q si no r 0 1 0 1 0 0 1 1

C omo se puede representar este conectivo usando , y ?

IIC2212

L ogica Proposicional

29 / 56

Conectivos ternarios (continuaci on)


Soluci on: (p q ) ((p ) r ).
p 0 0 0 0 1 1 1 1 q 0 0 1 1 0 0 1 1 r 0 1 0 1 0 1 0 1 si p entonces q si no r 0 1 0 1 0 0 1 1 (p q ) ((p ) r ) 0 1 0 1 0 0 1 1

Por qu e el conectivo es equivalente a la f ormula? Porque tienen la misma tabla de verdad.


IIC2212 L ogica Proposicional 30 / 56

Conectivos n-arios

Usando tablas de verdad podemos denir conectivos n-arios: C (p1 , . . . , pn ).


p1 0 0 . . . 1 p2 0 0 . . . 1 pn 1 0 0 . . . 1 pn 0 1 . . . 1 C (p1 , p2 , . . . , pn1 , pn ) b1 b2 . . . b2 n

Es posible representar C (p1 , . . . , pn ) usando , , , y ?

IIC2212

L ogica Proposicional

31 / 56

Conectivos n-arios
Veamos un ejemplo: C1 (p , q , r , s ).
p 0 0 0 0 0 0 0 0 q 0 0 0 0 1 1 1 1 r 0 0 1 1 0 0 1 1 s 0 1 0 1 0 1 0 1 C1 (p , q , r , s ) 0 1 0 0 0 0 1 0 p 1 1 1 1 1 1 1 1 q 0 0 0 0 1 1 1 1 r 0 0 1 1 0 0 1 1 s 0 1 0 1 0 1 0 1 C1 (p , q , r , s ) 1 0 0 0 0 0 1 0

C omo denimos C1 (p , q , r , s ) usando , , , y ?


IIC2212 L ogica Proposicional 32 / 56

Conectivos n-arios
Soluci on: C1 (p , q , r , s ) es equivalente a la siguiente f ormula ((p ) (q ) (r ) s ) ((p ) q r (s )) (p (q ) (r ) (s )) (p q r (s ))

Notaci on
Desde ahora en adelante tiene mayor precedencia que los conectivos binarios. As por ejemplo, (p ) q es lo mismo que p q y la f ormula anterior es lo mismo que: (p q r s ) (p q r s ) (p q r s ) (p q r s )
IIC2212 L ogica Proposicional 33 / 56

Conectivos n-arios
Soluci on a nuestro problema original: Suponiendo que i es la valuaci on correspondiente a la la i de la tabla de verdad de C (p1 , . . . , pn ), este conectivo es equivalente a: pj
i : bi =1 j : i (pj )=1

k : i (pk )=0

pk

Conclusi on
Basta con los conectivos l ogicos , , para representar cualquier tabla de verdad.

IIC2212

L ogica Proposicional

34 / 56

Conectivos funcionalmente completos


Denici on
Un conjunto de conectivos es funcionalmente completo si es posible denir cada f ormula usando s olo estos conectivos. Ya demostramos que {, , } es funcionalmente completo. Son {, } y {, } funcionalmente completos?

Ejercicio
- Demuestre que {, } es funcionalmente completo. - Es {, , , } funcionalmente completo?

*Ejercicio
Es {, } funcionalmente completo?
IIC2212 L ogica Proposicional 35 / 56

Formas normales
Decimos que una f ormula est a en forma normal disyuntiva (DNF) si es de la forma:
m i =1 ni

li , j ,
j =1

donde cada li ,j es un literal, es decir, una letra proposicional o la negaci on de una letra proposicional.

Ejemplo
(p q ) (p r ).

Teorema
Toda f ormula es equivalente a una f ormula en DNF. Ya demostramos este teorema, Cierto?
IIC2212 L ogica Proposicional 36 / 56

Formas normales
Decimos que una f ormula est a en forma normal conjuntiva (CNF) si es de la forma:
m i =1 ni

li , j ,
j =1

donde cada li ,j es un literal.

Ejemplo
(p q ) (p r s ) (r s ).

Teorema
Toda f ormula es equivalente a una f ormula en CNF. C omo se demuestre el teorema?
IIC2212 L ogica Proposicional 37 / 56

La noci on de consecuencia l ogica

Una valuaci on satisface un conjunto de f ormulas si para cada , se tiene que () = 1. Notaci on: () = 1. Cu ando decimos que una f ormula se deduce desde ?

Denici on
es consecuencia l ogica de si para cada valuaci on tal que () = 1, se tiene que ( ) = 1. Notaci on: |= .

IIC2212

L ogica Proposicional

38 / 56

La noci on de consecuencia l ogica: Ejemplos


Modus ponens: {p , p q } |= q

Demostraci on por partes: {p q r , p s , q s , r s } |= s

Ejercicio
- Demuestre que si |= , entonces |= y |= . - Es cierto que si |= , entonces |= o |= ?

IIC2212

L ogica Proposicional

39 / 56

Teorema de monoton a
Teorema (Monoton a)
Si |= , entonces para cada f ormula se tiene que { } |= .

Sabemos que {p , p q } |= q . Usando el teorema de monoton a omo es esto posible? deducimos que {p , p q , q } |= q . C

Ejercicio
Demuestre el teorema de monoton a. Puede usarse la l ogica proposicional para modelar razonamiento con sentido com un?
IIC2212 L ogica Proposicional 40 / 56

Un par entesis: Revisi on de conocimiento

Teorema de monoton a: Agregar conocimiento no nos permite retractarnos.


- No actualizamos nuestro conocimiento de acuerdo a la nueva informaci on.

Dado y : queremos generar una f ormula que reeje la actualizaci on de dado . Notaci on: . C omo podemos hacer esto? Qu e deber a ser {p , p q } q ?

IIC2212

L ogica Proposicional

41 / 56

Un par entesis: Revisi on de conocimiento


Una primera alternativa: = . Vamos a mostrar una mejor alternativa: Belief Revision.

Notaci on
Dado un conjunto de variables proposicionales P
- modelos (): Conjunto de las valuaciones de P que satisfacen . - (1 , 2 ): Conjunto de las variables proposicionales p P tales que 1 (p ) = 2 (p ).

Ejemplo
Si P = {p , q }, 1 (p ) = 1, 1 (q ) = 1, 2 (p ) = 1 2 (q ) = 0, entonces (1 , 2 ) = {q }. (1 , 2 ) mide la distancia entre 1 y 2 .
IIC2212 L ogica Proposicional 42 / 56

Un par entesis: Revisi on de conocimiento

Para actualizar dado , vamos a actualizar los modelos de con respecto a . Dado tal que () = 1, queremos seleccionar los modelos 1 de que est an a distancia m nima de . Formalmente: m nimo(, ) = {1 | 1 () = 1 y no existe 2 tal que 2 () = 1 y (, 2 ) (, 1 )}.

IIC2212

L ogica Proposicional

43 / 56

Un par entesis: Revisi on de conocimiento

Denimos los modelos de como los modelos de que est an m as cerca de los modelos de : modelos ( ) =
: ()=1

m nimo(, )

y denimos como una f ormula arbitraria tal que modelos ( ) = modelos ( ). Siempre existe esta f ormula? Es u nica?

IIC2212

L ogica Proposicional

44 / 56

Un par entesis: Revisi on de conocimiento


Ejemplo
= {p , p q } y = q Primero calculamos los modelos de y : modelos () = { }, donde (p ) = (q ) = 1 modelos () = {1 , 2 }, donde 1 (p ) = 1, 1 (q ) = 0 y 2 (p ) = 2 (q ) = 0. Despu es calculamos los modelos m nimos: (, 1 ) (, 2 ) m nimo(, ) modelos ( ) = {q } = {p , q } = {1 } = {1 }

Resultado: {p , p q } q = p q .
IIC2212 L ogica Proposicional 45 / 56

El problema de satisfacci on
Denici on
Un conjunto de f ormulas es satisfacible si existe una valuaci on tal que () = 1. En caso contrario, es inconsistente.

Existe una estrecha relaci on entre las nociones de consecuencia l ogica y satisfacibilidad.

Teorema
|= si y s olo si {} es inconsistente.

Ejercicio
Demuestre el teorema.
IIC2212 L ogica Proposicional 46 / 56

El problema de satisfacci on

El teorema anterior nos permite reducir el problema de vericar si |= al problema de vericar si {} es inconsistente.

Ejercicio
Demuestre que la reducci on inversa tambi en es posible. Vale decir, encuentre una f ormula tal que es satisfacible si y s olo si |= .

Entonces, si tenemos un algoritmo para uno de los problemas, lo tenemos para el otro. C omo vericamos si una f ormula es satisfacible?

IIC2212

L ogica Proposicional

47 / 56

El problema de satisfacci on

Un algoritmo simple: Dada una f ormula , construya la tabla de verdad para y verique si en alguna la la salida es 1. Cu al es la complejidad de este algoritmo? Si menciona n variables proposicionales, entonces el algoritmo toma tiempo 2n (aproximadamente). Este es un algoritmo de tiempo exponencial Es posible usar este algoritmo en la pr actica?

IIC2212

L ogica Proposicional

48 / 56

El problema de satisfacci on: Complejidad


N umero estimado de electrones en el universo 10130 . Si n = 1000 y en cada electr on del universo tuvi eramos un supercomputador que ejecuta 1050 operaciones por segundo, entonces para vericar si es satisfacible necesitar amos: 1050 21000 10130 10121 segundos.

Edad estimada del universo < 1018 segundos! Y se puede almacenar en algunos kilobytes de memoria! Existe un algoritmo eciente para el problema de satisfacibilidad?
IIC2212 L ogica Proposicional 49 / 56

Otra noci on util


Denici on
Una f ormula es una tautolog a si para cada valuaci on se tiene que () = 1.

Ejemplo
p p .

Ejercicio
Sea un conjunto nito de f ormulas. Demuestre que el problema de vericar si |= puede reducirse al problema de vericar si una f ormula es una tautolog a. Puede ser innito? Qu e sucede en este caso?
IIC2212 L ogica Proposicional 50 / 56

Teorema de compacidad
Denici on
Un conjunto de f ormulas es nitamente satisfacible si cada subconjunto nito de es satisfacible.

Ejemplo
El conjunto = {p0 } {pi pi +1 | i N} es nitamente satisfacible. Es satisfacible?

Teorema (Compacidad)
Un conjunto de f ormulas es satisfacible si y s olo si es nitamente satisfacible.
IIC2212 L ogica Proposicional 51 / 56

Teorema de compacidad: Demostraci on

Necesitamos el siguiente lema:

Lema
Sea L(P ) nitamente satisfacible y p P. Entonces {p } es nitamente satisfacible o {p } es nitamente satisfacible. Pueden ser ambos nitamente satisfacibles?

Ejercicio
Demuestre el lema.

IIC2212

L ogica Proposicional

52 / 56

Teorema de compacidad: Demostraci on


Ahora vamos a demostrar la direcci on del teorema. La otra direcci on es trivial. () Suponga que P = {pi | i 1} y dena una sucesi on {i }i N de conjuntos de literales: Caso base: 0 = . Para i N: i +1 = i {pi +1 } i {pi +1 } i {pi +1 } es nitamente satisfacible, en caso contrario.

Finalmente: =
i N
IIC2212 L ogica Proposicional

i .

53 / 56

Teorema de compacidad: Demostraci on

Para cada pi P : pi i o pi i , pero no ambas. Por lo tanto: Existe una u nica valuaci on que satisface a . Vamos a demostrar que esta valuaci on satisface a . Por contradicci on: Suponga que () = 0. Entonces existe tal que () = 0. Suponga que contiene n variables proposicionales y que pk es la de mayor ndice.

IIC2212

L ogica Proposicional

54 / 56

Teorema de compacidad: Demostraci on

Tenemos que considerar dos casos. (pk ) = 1: entonces {} k 1 {pk } es inconsistente. Entonces: k 1 {pk } no es nitamente satisfacible y pk k . Contradicci on: k y (pk ) = 1. (pk ) = 0: entonces {} k 1 {pk } es inconsistente. Entonces: k 1 {pk } es nitamente satisfacible (por lema) y pk k . Contradicci on: k y (pk ) = 0.

IIC2212

L ogica Proposicional

55 / 56

Teorema de compacidad y consecuencia l ogica

Corolario
|= si y s olo si existe un subconjunto nito de tal que |= .

Ejercicio
Demuestre el corolario.

IIC2212

L ogica Proposicional

56 / 56

También podría gustarte