¿Qué es la lógica? • La definici´ on del Diccionario General de la Lengua Espa˜ nola dice: Disciplina que estudia los principios formales del conocimiento humano, es decir, las formas y las leyes m´as generales del pensamiento humano considerado puramente en s´ı mismo, sin referencia a los objetos. Los problemas principales de la l´ ogica son las doctrinas del concepto, del juicio, del silogismo y del m´etodo. • Esfuerzos por modelar estas “leyes del pensamiento humano”. Han existido desde la antig¨ uedad. • Como ejemplo podemos tomar los silogismos: ➦Todos los perros son mam´ıferos. ➦Todos los mam´ıferos son animales Podemos concluir que: ➦Todos los perros son animales. ➦Ninguna gaviota es un traductor. ➦Algunas ara˜ nas son gaviotas. Jorge Baier Aranda, PUC
<< Atr´as
1
Podemos concluir que: ➦Algunas ara˜ nas no son traductores • Los silogismos datan de la ´epoca de Arist´ oteles (350 AC aprox). • Nosotros nos preocuparemos de la l´ ogica matem´atica. • La l´ ogica es una disciplina matem´ atica relativamente nueva (100 a˜ nos aprox.) • ¿Es el razonamiento humano l´ ogico? Es com´ un que mucha gente realice razonamientos incorrectos como el siguiente: ➦Si Daniela tiene prueba, estudia toda la tarde ➦Daniela ha estudiado toda la tarde Entonces: ➦Daniela tiene prueba.
Jorge Baier Aranda, PUC
<< Atr´as
2
Por qué es bueno saber lógica • Porque parte esencial del razonamiento matem´atico. • Muchas otras disciplinas usan l´ ogica: Psicolog´ıa (ej: Wason’s selection task ), Filosof´ıa, F´ısica, Lingu´ıstica. • La l´ ogica es esencial en ciencia de la computaci´ on.Algunos usos: • Programaci´on en general. • Modelaci´on Formal de algoritmos, verificaci´on de propiedades. • Modelaci´on Formal de m´aquinas. • Representaci´on formal del conocimiento y razonamiento. • Bases de Datos.
• Adem´as, algunas l´ ogicas son implementables (demostradores mec´anicos de teoremas). • Existen lenguajes de programaci´ on basados en l´ ogica (Prolog). • Procesamiento de Lenguaje Natural. Jorge Baier Aranda, PUC
<< Atr´as
3
Algunas Lógicas Hay muchas... L´ ogicas para razonamiento matem´ atico : proposicional, primer orden, segundo orden. L´ ogicas Descriptivas , Sem´antico.
usadas en representaci´ on de conocimiento y Web
Ejemplo: Para el dominio que representa a las familias, Padres u Hombre u ∀Hijo.Mujer Puede representar a la clase de padres varones que s´ olo tienen hijas mujeres. L´ ogicas para razonamiento con sentido com´ un . Ej: default logics. L´ ogica Difusa . Se pierde la noci´ on de lo verdadero y lo falso.Aparecen nociones intermedias. Ha tenido gran ´exito en la programaci´ on de controladores autom´aticos. Jorge Baier Aranda, PUC
<< Atr´as
4
L´ ogicas Modales . Estas l´ ogicas tienen por objetivo expresar nociones de necesidad y posibilidad. Por ejemplo: p significa “necesariamente p”. ♦p significa “posiblemente p”. Observemos que ♦p es equivalente a ¬¬p. L´ ogicas multivaluadas : Se usan m´as de dos valores de verdad, para describir conceptos m´as all´a de lo verdadero y lo falso.
Jorge Baier Aranda, PUC
<< Atr´as
5
Qué haremos en este curso El objetivo es que estudiemos algunas l´ ogicas y veamos c´ omo ´estas se relacionan con la Ciencia de la Computaci´ on. Temas: 1. L´ ogica Proposicional. 2. Demostraci´ on Mec´anica de Teoremas. 3. L´ ogica de Primer Orden. 4. Computabilidad y Complejidad Computacional. 5. Teor´ıas. 6. Otras L´ ogicas.
Jorge Baier Aranda, PUC
<< Atr´as
6
Aspectos de Evaluación • Tres interrogaciones, un examen. • Tareas (alrededor de 7). La nota final se calcula como N F = 0.8P E + 0.2P T , donde P T es el promedio de tareas y P E se calcula como: PE =
I1 + I2 + I3 + 2EX − min(I1, I2, I3, EX) , 4
en caso que P E ≥ 3.5 y P T ≥ 3.5. En caso contrario, la nota final corresponder´a al m´ınimo entre P E y P T : ➦Una tarea computacional podr´a valer como dos tareas escritas.
Jorge Baier Aranda, PUC
<< Atr´as
7
Sintaxis versus Semántica • La sintaxis se refiere a la forma en que escribimos el “lenguaje objeto”. • Por ejemplo, si el lenguaje objeto es el lenguaje de programaci´ on C, entonces la sintaxis del lenguaje indica que el siguiente programa es correcto: i=0; while (i < 10) { printf("%d",i); i++; } • Por otro lado, la sem´ antica tiene por objetivo identificar qu´e est´a expresando el lenguaje objeto. Usualmente esto se realiza en un metalenguaje. • En el ejemplo la sem´antica en castellano del programa es, en t´erminos resumidos, una iteraci´ on que imprime los n´ umeros del 0 al 9. • En el caso de la l´ ogica tambi´en haremos esta distinci´ on. Jorge Baier Aranda, PUC
<< Atr´as
8
• Por ejemplo, seremos capaces de decir que la f´ ormula de l´ ogica proposicional (p ∧ q) tiene una sintaxis adecuada y que es verdadera cuando p y q lo son en forma simult´anea.
Jorge Baier Aranda, PUC
<< Atr´as
9
L´ogica Proposicional (LP) • Tal como su nombre lo indica, ´esta es una l´ ogica para representar proposiciones. • Una proposici´ on en el castellano es, por ejemplo, “El cielo es azul ” esta es una proposici´ on porque es un hecho. Adem´as este hecho es verdadero. • Las proposiciones en LP se representan con letras. Usualmente se usan las ´ letras p, q, r y s, posiblemente con sub´ındices. Estas se denominan variables proposicionales.
Jorge Baier Aranda, PUC
<< Atr´as
10
Sintaxis para lógica Proposicional • En LP se distinguen los siguientes elementos: 1. 2. 3. 4. 5.
Constantes: >, ⊥. Conectivos unarios: ¬. Conectivos binarios: ∧, ∨, →, ↔ S´ımbolos de puntuaci´ on: (, ). Un conjunto P , posiblemente infinito, de variables proposicionales.
• Mediante una combinaci´ on de estos elementos es posible definir cualquier lenguaje de la l´ ogica proposicional. • Dado un conjunto fijo P de variables, es posible definir un lenguaje proposicional L(P ), que contiene todas las f´ ormulas posibles a trav´es de la siguiente definici´ on inductiva:
Jorge Baier Aranda, PUC
<< Atr´as
11
Definici´ on 1. El lenguaje L(P ) est´a formado por f´ ormulas. Una f´ ormula es: • una constante o un elemento de P (tambi´en llamadas f´ormulas at´omicas). • Si ϕ es una f´ormula, entonces ¬ϕ tambi´en es una f´ormula. • Si ϕ y ψ son ambos f´ormulas, entonces (ϕ ∧ ψ) (ϕ ∨ ψ) (ϕ → ψ) (ϕ ↔ ψ) Tambi´en son formulas. Normalmente esto se anota como
(ϕ ∗ ψ) . Y se hace expl´ıcito que ∗ representa a cualquier conectivo l´ogico binario.
• Dada la naturaleza de la definici´ on, toda propiedad que queramos demostrar de las f´ ormulas, deber´a ser hecha de manera inductiva. • Ejercicio: Demuestre que ((p ∧ q) → q) es una f´ ormula. Jorge Baier Aranda, PUC
<< Atr´as
12
Convenciones • Usualmente querremos evitar el uso de par´entesis cuando ´estos no sean necesarios. Es as´ı como preferiremos escribir p ∧ q ∧ r en vez de ((p ∧ q) ∧ r). • Supondremos desde ahora que si una f´ ormula carece de par´entesis se interpretar´a usando la siguiente convenci´ on: Se asocia por la izquierda, tomando en cuenta al conectivo ¬ en primera prioridad, al conectivo ∧ en segunda prioridad, al conectivo ∨ con tercera, y finalmente a los conectivos → y ↔. • De esta manera, la f´ ormula p∧q∨s→p∨s corresponde a la siguiente f´ ormula: (((p ∧ q) ∨ s) → (p ∨ s))
Jorge Baier Aranda, PUC
<< Atr´as
13
Definiciones y demostraciones que involucran a fórmulas • El principio de inducci´ on es usado con dos fines: • Definir conceptos/funciones asociados a f´ormulas. • Demostrar propiedades generales del lenguaje.
• En t´erminos simples, para definir un concepto (o funci´ on) sobre las f´ ormulas, hay que definir todos los casos (base e inductivo). • Formalmente, hay que hacer lo siguiente para definir el valor de una funci´ on f para todas las f´ ormulas de L(P ). Caso base: se define el valor de f para las f´ ormulas at´ omicas. Pasos inductivos: • Se define el valor de f (¬ϕ) en t´erminos del valor de f (ϕ) • El valor de f ((ϕ ∗ ψ)) es especificado en t´erminos f (ϕ) y f (ψ), donde ∗ es un conectivo binario.
• Esta forma de definir se conoce como principio de recursi´ on estructural.
Jorge Baier Aranda, PUC
<< Atr´as
14
Ejemplo de Inducción • Ejemplo: la funci´ on variables(ϕ) que cuenta el n´ umero de variables proposicionales en ϕ se puede definir de la siguiente manera: Caso base: variables(>) = 0 variables(⊥) = 0 (con p ∈ P )
variables(p) = 1 Pasos inductivos: variables(¬ϕ) = variables(ϕ) variables(ϕ ∗ ψ) = variables(ϕ) + variables(ψ)
Jorge Baier Aranda, PUC
<< Atr´as
15
Semántica de la LP • En la l´ogica proposicional existen dos valores posibles para f´ ormulas: verdadero y falso • La sem´antica nos debe proveer tres cosas: 1. Significado de las f´ormulas. 2. Noci´ on de verdad. 3. Noci´ on de consecuencia l´ ogica. • El punto 1 pasa por una especificaci´ on adecuada de parte del modelador de la teor´ıa. As´ı, podemos decir que p significa “hoy sale el sol a las 7:12 am”. Por otro lado, esto puede quedar claro en el mismo nombre de la variable. Por ejemplo saleSol712am puede ser una variable proposicional que claramente representa el mismo hecho. • Para definir la noci´ on de verdad debemos, antes, definir el concepto de valuaci´ on o asignaci´ on de verdad . Jorge Baier Aranda, PUC
<< Atr´as
16
Definici´ on 2. Una valuaci´ on es una funci´ on σ : P → {0, 1}, que sirve para asignar un valor de verdad a una variable. Nota: Aqu´ı estamos suponiendo que 0 representa al valor de verdad falso y 1 a verdadero. Ejemplo: si P = {p, q}, entonces la funci´ on σ1 es una valuaci´ on definida por: σ1(p) = 1
(1)
σ1(q) = 0
(2)
• Por simplicidad usaremos el entero 1 para referirnos a verdadero y 0 para falso. • N´ otese que para un conjunto P hay 2|P | funciones de valuaci´ on distintas. • Esta definici´ on a´ un no es suficiente, pues no tenemos una definici´ on clara acerca del valor de verdad de las f´ ormulas del lenguaje.
Jorge Baier Aranda, PUC
<< Atr´as
17
Extendiendo la Semántica a Fórmulas • Dada una asignaci´ on σ : P → {0, 1}, extenderemos la funci´ on a σ ˆ : L(P ) → {0, 1}. Si ϕ es una f´ ormula proposicional, entonces: • Si ϕ ∈ P entonces σ ˆ (ϕ) = σ(ϕ). • Si ϕ = > entonces σ ˆ (ϕ) = 1. • Si ϕ = ⊥ entonces σ ˆ (ϕ) = 0. • Si ϕ = ¬ψ entonces σ ˆ (ϕ) = 1 − σ ˆ (ψ). • Si ϕ = ψ ∧ χ entonces σ ˆ (ϕ) = min(ˆ σ (ψ), σ ˆ (χ)). • Si ϕ = ψ ∨ χ entonces σ ˆ (ϕ) = max(ˆ σ (ψ), σ ˆ (χ)). • Si ϕ = ψ → χ entonces, si σ ˆ (ψ) = 0 entonces σ ˆ (ϕ) = 1, en caso contrario σ ˆ (ϕ) = σ(χ). • Si ϕ = ψ ↔ χ entonces σ ˆ (ϕ) = 1 si σ ˆ (ψ) = σ ˆ (χ) y σ ˆ (ϕ) = 0 en caso contrario.
• Por simplicidad, desde ahora en adelante, utilizaremos σ en vez de σ ˆ. sem´antica estar´a dada por el caso. Jorge Baier Aranda, PUC
<< Atr´as
La
18
• Esta misma definici´ on se puede resumir a trav´es de una tabla de verdad: ϕ 0 0 1 1
ψ 0 1 0 1
¬ϕ 1 1 0 0
ϕ∧ψ 0 0 0 1
ϕ∨ψ 0 1 1 1
ϕ→ψ 1 1 0 1
ϕ↔ψ 1 0 0 1
• Definici´ on 3. Una formula ϕ es equivalente a otra f´ ormula ψ si para toda valuaci´on σ, σ(ϕ) = σ(ψ) • Ejercicios: Demuestre que las siguientes f´ ormulas son equivalentes: • (ϕ → ψ) y (¬ϕ ∨ ψ). • ¬(ϕ ∧ ψ) y (¬ϕ ∨ ¬ψ). • (ϕ ↔ ψ) y ((ϕ → ψ) ∧ (ψ → ϕ)).
Jorge Baier Aranda, PUC
<< Atr´as
19
Otros Conectivos • Usualmente, en LP se utilizan otros conectivos l´ ogicos que est´an descritos en funci´ on de los que ya definimos. • En la siguiente tabla se muestran los m´as comunes. S´ımbolo ← ↓
Uso a←b a↓b
Equivalencia b→a ¬(a ∨ b)
|
a|b
¬(a ∧ b)
⊗
a⊗b
(a ∨ b) ∧ ¬(a ∧ b)
Descripci´ on condicional reverso conocido como NOR, “ni a ni b” conocido como NAND, “a y b no son simult´aneamente verdaderos” conocido como XOR, “o bien a o bien b, pero no ambos”
• Definici´ on 4. Un conjunto de conectivos C es funcionalmente completo si es posible definir a los conectivos est´andar, en funci´ on los otros. • Teorema 1. El conjunto {¬, ∧} es funcionalmente completo. Jorge Baier Aranda, PUC
<< Atr´as
20
Demostraci´ on: Sabemos que p ↔ q es equivalente a (p → q) ∧ (q → p) y que (p → q) es equivalente a (¬p ∨ q), luego s´ olo nos falta expresar ∨ en t´erminos de ¬ y ∧. En efecto p ∨ q es equivalente a ¬(¬p ∧ ¬q). • Ejercicio: Demuestre que {↓} es un conjunto funcionalmente completo.
Jorge Baier Aranda, PUC
<< Atr´as
21
Formas Normales • Las formas normales son formas sint´acticas est´andares que pueden cumplir las f´ ormulas. • Estudiaremos dos: la forma normal conjuntiva y la forma normal disyuntiva. • Veamos, antes, un par de definiciones. Definici´ on 5. Un literal es una variable proposicional o una variable proposicional negada, o una constante (> o ⊥). Definici´ on de literales, es decir, es de la Wonn 6. Una cl´ausula es una disyunci´ forma i=0 li, donde cada li es un literal. Vn Una cl´ausula dual es una conjunci´ on de literales, es decir, es de la forma i=0 li, donde cada li es un literal. • Ahora, veamos qu´e son las formas normales. Jorge Baier Aranda, PUC
<< Atr´as
22
Definici´ on 7. Una f´ ormula en forma normal conjuntiva (FNC) es una conjunci´ on de cl´ausulas. Ejemplo: (p ∨ ¬q ∨ s) ∧ (⊥ ∨ s ∧ q) ∧ r • Definici´ on 8. Una f´ ormula en forma normal disyuntiva (FND) es una disyunci´ on de cl´ausulas duales. Ejemplo: (¬p ∧ ¬s) ∨ (r ∧ p) • ¿Dada una f´ ormula arbitraria φ, podremos construir, en forma mec´anica, otra f´ ormula χ equivalente en alguna de las formas normales? La respuesta es S´ı!
Jorge Baier Aranda, PUC
<< Atr´as
23
Traducción a FND • Veamos el caso de llevar una f´ ormula ϕ cualquiera a forma normal disyuntiva. Supongamos que las variables que aparecen en ϕ son p1, p2, . . . , pn. Una posibilidad es hacer lo siguiente: 1. Hacer una tabla de verdad. 2. Por cada fila en la cual la f´ ormula es verdadera generar la conjunci´ on n ^
li ,
i=0
donde li = pi si en esa fila le corresponde valor 1, y li = ¬pi si en esa fila le corresponde valor 0. 3. La formula final se arma con la disyunci´ on de las conjunciones generadas en el punto anterior. • ¿Qu´e problema tiene este m´etodo?
Jorge Baier Aranda, PUC
<< Atr´as
24
Traducción a FNC • El m´etodo que veremos a continuaci´ on tiene especial relevancia en demostraci´ on mec´anica de teoremas. • Nuestro objetivo es transformar una f´ ormula ϕ en una lista de disyunciones de literales hD1, D2, . . . , Dni tales que ϕ equivalente a
n ^
Di.
i=1
• El algoritmo es el siguiente: 1. Se comienza con X := hϕi. 2. Se repite la siguiente iteraci´ on: Suponemos que despu´es del paso n, X es una conjunci´ on de disyunciones representada por hD1, . . . , Dni . Jorge Baier Aranda, PUC
<< Atr´as
25
Si X no est´a en FNC, se selecciona un Di que no sea una disyunci´ on de literales y se escoge un miembro N de la f´ ormula que no sea un literal. Reemplazar N usando las siguientes reglas: (a) Si N es ¬>, reemplazarlo por ⊥. (b) Si N es ¬⊥, reemplazarlo por >. (c) Si N es ¬¬Z, reemplazarlo por Z. (d) Si N es (X ∨ Y ), reemplazarlo por X ∨ Y (e) Si N es (X → Y ), reemplazarlo por ¬X ∨ Y (f) Si N es ¬(X ∨ Y ), reemplazarlo por (¬X ∧ ¬Y ) (g) Si N es ¬(X ∧ Y ), reemplazarlo por ¬X ∨ ¬Y (h) Si N es ¬(X → Y ), reemplazarlo por (X ∧ ¬Y ) (i) Si N es (X ∧ Y ), reemplazar la disyunci´ on Di por otras dos en disyunciones Di0 y Di00 en las cuales se reemplaza a N por X en Di0 y por Y en Di00. • Ejemplo: Llevar a FNC la siguiente f´ ormula (¬p ∧ (q ∧ r)) → (q ∧ ¬r) Partimos con la lista Jorge Baier Aranda, PUC
<< Atr´as
26
h(¬p ∧ (q ∧ r)) → (q ∧ ¬r)i Podemos seguir los siguientes pasos: h¬(¬p ∧ (q ∧ r)) ∨ (q ∧ ¬r)i hp ∨ ¬(q ∧ r) ∨ (q ∧ ¬r)i hp ∨ ¬(q ∧ r) ∨ (q ∧ ¬r)i hp ∨ ¬q ∨ ¬r ∨ (q ∧ ¬r)i hp ∨ ¬q ∨ ¬r ∨ q, p ∨ ¬q ∨ ¬r ∨ ¬ri Por lo tanto, la f´ ormula equivalente es: (p ∨ ¬q ∨ ¬r ∨ q) ∧ (p ∨ ¬q ∨ ¬r ∨ ¬r)
Jorge Baier Aranda, PUC
<< Atr´as
27
Fórmulas válidas y satisfacibles Una f´ ormula v´alida es aqu´ella que es satisfacible por toda valuaci´ on σ. Ejemplo: p ∧ (p → q) → q y ¬q ∧ (p → q) → ¬p son f´ ormulas v´alidas. A este tipo de f´ ormulas tambi´en se les llama tautolog´ıas. Definici´ on 9. Una f´ ormula es satisfacible si existe al menos una valuaci´ on que la hace verdadera. Esta definici´ on se extiende para un conjunto de f´ ormulas: Jorge Baier Aranda, PUC
<< Atr´as
28
Definici´ on 10. Una conjunto de f´ ormulas Σ es satisfacible si existe al menos una valuaci´ on σ que hace verdadera a todas las f´ ormulas del conjunto. En este caso diremos que σ |= Σ Un conjunto de f´ ormulas que no se puede satisfacer (insatisfacible) se le conoce como inconsistente
Jorge Baier Aranda, PUC
<< Atr´as
29
Consecuencia Lógica • La consecuencia l´ ogica es el elemento que nos provee la sem´antica para identificar cu´ando, a partir de un conjunto de f´ ormulas (axiomas), que suponemos son verdaderos, es posible concluir otras f´ ormulas que no est´an en esta “base de conocimiento”. • Definici´ on 11. Si Σ es un conjunto de f´ ormulas en L(P ) y ϕ es una f´ ormula particular en L(P ) entonces decimos que ϕ es consecuencia l´ ogica de Σ (Σ |= ϕ) si y s´ olo si, para cada valuaci´ on σ tal que σ |= Σ, entonces σ(ϕ) = 1. Ejemplos:
{p, p → q} |= {q} {q, p → q} 6|= {p}
Jorge Baier Aranda, PUC
<< Atr´as
30
Resultados Acerca de la Consecuencia Lógica • A partir de la noci´ on de consecuencia l´ ogica se pueden establecer resultados resultados interesantes.
• El primero establece que de una base de conocimiento inconsistente, es posible deducir cualquier f´ ormula de L(P ). En efecto, si Σ ⊆ L(P ) es inconsistente no existe ninguna valuaci´ on que haga verdadera, por lo que el antecedente de la “implicaci´ on en metalenguaje”: si, para cada valuaci´ on σ tal que σ |= Σ, entonces σ(ϕ) = 1. nunca se cumple, por lo que asumimos este argumento como verdadero para todo ϕ ∈ L(P )
Jorge Baier Aranda, PUC
<< Atr´as
31
Consecuencia Lógica de un Conjunto Vacío de Fórmulas • Supongamos que se cumple que {} |= ϕ • ¿Cu´ando se puede dar esto? ¿Cu´al es la intuici´ on detr´as de esto? • Ser´an consecuencia l´ogica de un conjunto vac´ıo de f´ ormulas todas aquellas f´ ormulas que son siempre verdaderas (las tautolog´ıas).
Jorge Baier Aranda, PUC
<< Atr´as
32
LP es una lógica monótona • En t´erminos resumidos, este resultado significa que, a medida que se agregan f´ ormulas a una base de conocimiento, los hechos que se conclu´ıan a partir de la base original siguen siendo v´alidos. • En t´erminos formales: – Sean Σ1 y Σ2 dos conjuntos de f´ ormulas tales que Σ1 ⊆ Σ2, entonces se cumple que: si Σ1 |= ϕ, entonces Σ2 |= ϕ • Esta propiedad se conoce como monoton´ıa de la l´ ogica proposicional. • ¿Qu´e consecuencias tiene este teorema? • ¿En que casos no es deseable esta propiedad?
Jorge Baier Aranda, PUC
<< Atr´as
33
Demostrando la Monotonía • Sean Σ1 y Σ2 dos conjuntos de f´ ormulas tales que Σ1 ⊆ Σ2 ⊂ L(P ). Adem´as, sea ϕ una f´ ormula • Supongamos que tenemos una valuaci´ on cualquiera, σ, tal que σ |= Σ2. Como Σ1 ⊆ Σ2 tambi´en tenemos que σ |= Σ1. Por definici´ on de consecuencia l´ ogica, σ |= ϕ. Obtenemos de inmediato que Σ2 |= ϕ.
Jorge Baier Aranda, PUC
<< Atr´as
34
Teorema de Deducción • El teorema de deducci´ on es fundamental y de uso diario por los seres inteligentes. • Formalmente dice lo siguiente: Sea Σ ⊆ L(P ) entonces Σ |= (ϕ → ψ) si y s´ olo si Σ ∪ {ϕ} |= ψ • Ejercicio: demu´estrelo.
Jorge Baier Aranda, PUC
<< Atr´as
35
Relación entre Consistencia y Consecuencia Lógica • Esta relaci´ on indica lo siguiente: Σ |= ϕ si y s´ olo si Σ ∪ {¬ϕ} es inconsistente • Este teorema tiene gran relevancia en demostraci´ on mec´anica de teoremas. • Demostraci´ on: (⇒) • Caso 1: Sea σ tal que σ |= Σ. Por definici´on de consecuencia l´ ogica, σ |= ϕ, luego σ 6|= ¬ϕ. Por lo que σ 6|= Σ ∪ {¬ϕ} • Caso 2(trivial): Sea σ tal que σ 6|= Σ, entonces de inmediato tenemos que σ 6|= Σ ∪ {¬ϕ}
(⇐) Sea σ una valuaci´ on cualquiera. Tenemos 2 casos que cumplen con la hip´ otesis. Jorge Baier Aranda, PUC
<< Atr´as
36
• Caso 1: σ 6|= Σ, trivial, puesto que de inmediato tenemos que Σ |= ϕ .
• Caso 2: σ |= Σ. Por hip´otesis, σ |6 = ¬ϕ, con lo cual se obtiene que σ |= ϕ, y por lo tanto: Σ |= ϕ .
Jorge Baier Aranda, PUC
<< Atr´as
37
Un ejemplo de Consecuencia Lógica • Suponga la siguiente situaci´ on: En una cierta isla hay individuos de dos clases: aqu´ellos que siempre dicen la verdad, y aqu ellos que siempre mienten. Usted llega a esta isla y se encuentra con tres habitantes A, B y C. Le pregunta a A “¿Usted dice la verdad o miente?” A balbucea en un idioma desconocido para usted. Luego le pregunta a B “¿que es lo que A dijo?”. B responde, “A dijo que ´el es un mentiroso”. C agrega, “No le creas a B, porque miente!”. ¿Qu´e se puede decir sobre A, B y C? • Soluci´ on: Ejercicio.
Jorge Baier Aranda, PUC
<< Atr´as
38
Teorema de Compacidad (o finitud) • Usaremos este teorema para demostrar otras propiedades interesantes en el futuro. • El teorema de compacidad dice lo siguiente: Un conjunto Σ de f´ ormulas de LP es contradictorio ssi tiene un subconjunto finito que es contradictorio. • Una forma alternativa de ver esto es: Un conjunto Σ de f´ ormulas de LP es satisfacible ssi todo subconjunto finito de ´este que es satisfacible. • Demostraci´ on: La parte ⇒ es clara. (⇐) Es relevante s´ olo el caso en que Σ es un conjunto infinito. Sea Σ un conjunto satisfacible finitamente. y una enumeraci´ on de las f´ ormulas de L(P )1 α1, α2, . . . , Construimos una extensi´ on de Σ de la siguiente manera: 1
Una enumeraci´ on est´a compuesta por el conjunto de todas las f´ ormulas proposicionales numeradas con un natural
Jorge Baier Aranda, PUC
<< Atr´as
39
∆0 = Σ ( ∆n−1 ∪ {αn} si este conjunto es satisfacible finitamente ∆n = ∆n−1 ∪ {¬αn} en otro caso Sea ∆ la uni´ on de todos estos conjuntos. Es decir, [ ∆= ∆n n
De esta manera, para cualquier f´ ormula ϕ ∈ L(P ), ϕ ∈ ∆ o ¬ϕ ∈ ∆. Ahora basta que que construyamos una asignaci´ on de verdad tal que para toda f´ ormula del tipo p (p ∈ P ) en ∆: σ(p) = 1 y para toda f´ormula del tipo ¬p (p ∈ P ) en ∆: σ(p) = 0 Jorge Baier Aranda, PUC
<< Atr´as
40
N´ otese que todas las variables proposicionales aparecen directamente o negadas en ∆. No es dif´ıcil demostrar por inducci´ on que, para toda f´ ormula ϕ: σ(ϕ) = 1 ssi ϕ ∈ ∆ Como Σ ⊆ ∆, tenemos que σ |= Σ. • El teorema de compacidad tiene varias consecuencias. • Por ejemplo, si Σ es un conjunto infinito de f´ ormulas, se cumple que Σ |= ϕ ssi hay un conjunto finito Σ0 tal que Σ0 |= ϕ .
Jorge Baier Aranda, PUC
<< Atr´as
41