178
ogica para la Computaci´ on I) L´ ogica cl´ asica proposicional Alfredo Burrieza Mu˜ niz Manuel Ojeda Aciego Inmaculada P´ erez de Guzm´ an Molina Agust´ ın Valverde Ramos

Cur So Bueno Logic A

Embed Size (px)

DESCRIPTION

Lógica Computacional

Citation preview

Page 1: Cur So Bueno Logic A

Logica para la Computacion

I) Logica clasica proposicional

Alfredo Burrieza Muniz

Manuel Ojeda Aciego

Inmaculada Perez de Guzman Molina

Agustın Valverde Ramos

Page 2: Cur So Bueno Logic A
Page 3: Cur So Bueno Logic A

i

La Logica es aquello

que resbala en la inteligencia de las masas

como las gotas de lluvia en un impermeable.

Este documento presenta la Logica Proposicional Clasica y su objetivo es presentar la logicacomo una atractiva y util herramienta en las aplicaciones informaticas.

Aunque ha sido pensado para los alumnos de la titulacion de Informatica, sera de interes paratodos aquellos que deseen conocer como la logica puede ser usada para representar y procesar elconocimiento.

Page 4: Cur So Bueno Logic A

ii

Agradecimientos

A los alumnos de la titulacion de Informatica de la Universidad de Malaga que en los ultimos anoshan ido configurando con sus inquietudes y sugerencias el contenido de este libro.

A todos los componentes del grupo GIMAC, que dıa a dıa profundizan en los diversos aspectos dela logica de cara a aplicaciones de interes.

Page 5: Cur So Bueno Logic A

Indice general

1. Preliminares 1

1.1. Relaciones y Funciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.1.1. Relaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.1.2. Funciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

1.2. Numeros Naturales y Numerabilidad . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.2.1. Principio de Induccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.3. Relaciones de Equivalencia y Relaciones de Orden . . . . . . . . . . . . . . . . . . . 5

1.3.1. Relaciones de Equivalencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

1.3.2. Relaciones de Orden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

1.4. Secuencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

1.5. Alfabeto y Cadenas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

1.6. Arboles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

1.6.1. Caminos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

1.6.2. Subarboles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

1.6.3. Recorridos de un arbol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

1.7. Conjuntos Inductivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

1.7.1. Funciones Recursivas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

1.8. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

2. Logica y Computacion 21

2.1. Objetivo de la logica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

2.2. Tipos de Logicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

2.3. Expectativas y Limitaciones de la Logica en Computacion . . . . . . . . . . . . . . 24

2.3.1. El Lenguaje . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

2.3.2. La Semantica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

2.3.3. Teorıa de la Demostracion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

2.3.4. La Automatizacion de las Deducciones . . . . . . . . . . . . . . . . . . . . . . 32

2.4. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

3. Logica Proposicional 37

3.1. El Lenguaje Lprop de la Logica Proposicional . . . . . . . . . . . . . . . . . . . . . . 37

3.1.1. Arbol Sintactico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

3.2. Semantica para la logica clasica proposicional . . . . . . . . . . . . . . . . . . . . . . 42

3.2.1. Clasificacion semantica de las fbs: Satisfacibilidad y Validez . . . . . . . . . . 45

3.2.2. Relacion de igualdad semantica: Equivalencia Logica . . . . . . . . . . . . . . 46

iii

Page 6: Cur So Bueno Logic A

iv INDICE GENERAL

3.3. Formas Normales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

3.3.1. Forma Normal Negativa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

3.3.2. Formas Normales Disyuntivas y Conjuntivas . . . . . . . . . . . . . . . . . . . 58

3.4. Propiedad de Compacidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

3.5. Consecuencia Logica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

3.6. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

4. Teorıa de la Demostracion para la Logica Proposicional 73

4.1. Un Sistema Axiomatico para la Logica Proposicional . . . . . . . . . . . . . . . . . . 74

4.1.1. El Sistema L de Lukasiewicz . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

4.1.2. Correccion y Completitud de L . . . . . . . . . . . . . . . . . . . . . . . . . . 81

4.1.3. Independencia de los Axiomas de L . . . . . . . . . . . . . . . . . . . . . . . . 83

4.1.4. Deduccion Natural . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86

4.2. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

5. Razonamiento Automatico en la logica proposicional 99

5.0.1. Algoritmo de Quine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99

5.1. Sistemas de refutacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101

5.1.1. Las Tablas de Verdad como Sistema de refutacion . . . . . . . . . . . . . . . 102

5.2. Metodo de las Tablas Semanticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

5.2.1. Reglas de Extension . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105

5.2.2. Descripcion del metodo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109

5.3. Metodos que requieren que la entrada este en forma clausal . . . . . . . . . . . . . . 111

5.3.1. Algoritmo de Quine como metodo de refutacion . . . . . . . . . . . . . . . . . 112

5.3.2. El metodo Davis-Putnam . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114

5.3.3. Metodo de Resolucion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117

5.3.4. Resolucion como algoritmo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124

5.3.5. Resolucion Lineal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126

5.3.6. Resolucion Lineal Ordenada . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127

5.3.7. Complejidad del Metodo de Resolucion . . . . . . . . . . . . . . . . . . . . . 131

5.4. Clausulas de Horn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135

5.5. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139

6. El metodo TAS 143

6.1. ∆-arboles como representacion de FNN’s . . . . . . . . . . . . . . . . . . . . . . . . . 145

6.1.1. ∆-listas: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145

6.1.2. Transformando ∆-arboles en fnns . . . . . . . . . . . . . . . . . . . . . . . . . 146

6.1.3. Transformando fnns en ∆-arboles . . . . . . . . . . . . . . . . . . . . . . . . . 148

6.1.4. Operaciones basicas con ∆-arboles . . . . . . . . . . . . . . . . . . . . . . . . 149

6.1.5. ∆-arboles restringidos: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150

6.2. Reglas de transformacion del metodo TAS . . . . . . . . . . . . . . . . . . . . . . . . 153

6.2.1. Regla de Reduccion Completa . . . . . . . . . . . . . . . . . . . . . . . . . . . 154

6.2.2. Regla del literal puro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155

6.2.3. Regla de Reduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156

6.3. El Algoritmo TAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157

6.4. Ejemplo 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159

Page 7: Cur So Bueno Logic A

INDICE GENERAL v

6.5. Ejemplo 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1606.6. Ejemplo 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1626.7. Ejemplo 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1636.8. Ejemplo 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1666.9. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168

Page 8: Cur So Bueno Logic A

vi INDICE GENERAL

Page 9: Cur So Bueno Logic A

Capıtulo 1

Preliminares

En este tema introducimos las nociones, notaciones y resultados preliminares que vamos a utilizar enel resto del curso. Suponemos conocidas las nociones intuitivas de conjunto, elemento y pertenencia,ası como la de subconjunto, conjunto vacıo y las definiciones de union e interseccion de conjuntos.No incluimos demostraciones, ya que consideramos que el lector es conocedor de todo lo expuestoen este capıtulo y el objetivo de su inclusion no es otro que hacer el documento autocontenido enla medida de lo posible.

1.1. Relaciones y Funciones

Las nociones de relacion y funcion formalizan, respectivamente, los conceptos utilizados en la vidareal de “relaciones entre objetos” y “asignaciones de unos objetos a otros”. La formalizacion deambos conceptos se basa en la construccion estandar de conjuntos conocida con el nombre deproducto cartesiano.

Dados dos conjuntos A,B 6= ∅, los objetos de la forma (a, b) con a ∈ A y b ∈ B se llaman paresordenados de A y B. Para dos conjuntos A y B (posiblemente vacıos) se define el productocartesiano de A por B, denotado A×B, como sigue:

A×B =

∅ si A = ∅ o B = ∅

(a, b) | a ∈ A, b ∈ B en caso contrario

El producto cartesiano de n conjuntos se define mediante la extension natural de la nocion de parordenado al de n-upla ordenada:

Dados n conjuntos A1, A2, . . . , An, el producto cartesiano A1 ×A2 × · · · ×An se define como sigue:

A1 ×A2 × · · · ×An =

∅ si algun Ai = ∅

(a1, . . . , an) | ai ∈ Ai, 1 ≤ i ≤ n en caso contrario

Si los n conjuntos son iguales, A1 = A2 = · · · = An = A, el producto cartesiano se denota por An.

1.1.1. Relaciones

Dados dos conjuntos A y B, una relacion de A en B es cualquier subconjunto R (posiblementevacıo) de A×B.

1

Page 10: Cur So Bueno Logic A

2 CAPITULO 1. PRELIMINARES

Dada una relacion R de A en B, el conjunto x ∈ A | existe y ∈ B tal que (x, y) ∈ R se llamadominio de R, y se denota Dom(R), y el conjunto y ∈ B | existe x ∈ A tal que (x, y) ∈ R sellama imagen de R, y se denota Im(R).

En particular, si B = A, una relacion de A en A se llama relacion binaria en A. En general, paratodo numero natural n ≥ 2, una relacion n-aria en A (tambien llamada relacion de aridad nen A), es cualquier subconjunto de An.

Si R es una relacion binaria en A, como alternativa a (x, y) ∈ R, es frecuente usar las notaciones:

xRy, leıda “x esta relacionado con y”,

y ∈ R(x), leıda “y es accesible por R desde x”. Es decir, para cada x ∈ A, definimos elconjunto R(x) = y | (x, y) ∈ R.

Damos a continuacion definiciones de nuevas relaciones obtenidas a partir de otras relaciones:

Si R y S son relaciones de A en B entonces R∪S y R∩S son relaciones de A en B llamadasunion e interseccion de R y S, respectivamente.

Sea R una relacion de A en B y S una relacion de B en C, la relacion de A en C denotadaR S y definida por

(a, c) ∈ R S si y solo si existe un b ∈ B tal que (a, b) ∈ R y (b, c) ∈ S

se denomina composicion de R y S.

Si R es una relacion de A en B entonces R−1 es la relacion de B en A definida por

aR−1b si y solo si bRa

y se llama inversa de R.

Ejemplo 1.1

1. Dado un conjunto cuyos elementos denotan personas, la union de las relaciones binarias “ma-dre” y “padre” es la relacion “progenitor”, la composicion de las relaciones binarias “madre”y “padre” es la relacion “abuelo” y la inversa de la relacion “padre” es la relacion “hijo”.

2. Dado un conjunto arbitario, A, la interseccion de las relaciones binarias en 2A que sin dudason bien conocidas para el lector, ⊆ y ⊇ es la relacion binaria de igualdad de subconjuntosde A.

1.1.2. Funciones

Una relacion R de un conjunto A en un conjunto B se dice que es una funcion, cuando cumple lacondicion siguiente:

Si xRu y xRv, entonces u = v

es decir, cada elemento del dominio de R esta relacionado con un unico elemento del conjuntoimagen.

Para denotar funciones se utilizan habitualmente letras minusculas tales como f, g, . . ., y paraindicar que f es una funcion de A en B, se utiliza la notacion f : A→ B.

Una funcion f : A→ B se dice parcial si Dom(f) ⊂ A y se dice total cuando Dom(f) = A.

Para toda funcion f : A → B y para todo x ∈ Dom(f), el elemento y ∈ B tal que (x, y) ∈ f , sedenota por f(x) y se llama la imagen de x por f .

Page 11: Cur So Bueno Logic A

1.1. RELACIONES Y FUNCIONES 3

En todo lo que sigue, funcion significara funcion total.

Para todo conjunto A, toda funcion f : An → A (con n natural ≥ 1 y A1 = A) se dice que “f esuna funcion n-aria o de aridad n (o de n argumentos) sobre A”. En particular, cuando n = 2, y enun contexto algebraico, se dice que f es una operacion interna en A. En tal caso, es costumbredenotar xfy (notacion infija) en vez de f(x, y) (notacion prefija).

Una funcion f : A→ B se dice:

inyectiva si, para todo x, y ∈ A se tiene que si f(x) = f(y), entonces x = y.

sobreyectiva si Im(f) = B.

biyectiva si es inyectiva y sobreyectiva.

Notacion:

El conjunto de todas las funciones de un conjunto A en un conjunto B se denotara por BA.

Ejemplo 1.2

1. Para todo conjunto A, la funcion f : A −→ A definida por f(x) = x es biyectiva, se denotapor idA y se llama identidad de A.

2. Dado A, para todo subconjunto B de A definimos XB : A −→ 0, 1 por

XB(x) =

1 si x ∈ B

0 si x 6∈ B

A XB se le llama funcion caracterıstica de B.

Si denotamos por P(A) el conjunto cuyos elementos son los subconjuntos de A, la funcion

Ψ : P(A)→ 0, 1A

definida por Ψ(B) = XB, es biyectiva. Por ello, es costumbre denotar al conjunto de las partesde un conjunto A por 2A.

Extension y restriccion de una funcion

Sean f : B → C y g : X → C con X ⊂ B. Si para todo x ∈ X se verifica que g(x) = f(x).Se dice que g es una restriccion de f a X y que f es una extension de g a B. Observese quecualquier restriccion de una funcion inyectiva es inyectiva y que cualquier extension de una funcionsobreyectiva es sobreyectiva.

Por ultimo, particularicemos a funciones la definicion de nuevas relaciones a partir de otras:

Dadas las funciones f : A → B y g : B → C, la composicion de ambas relaciones es unafuncion de A en C, la cual se denota por g f , se lee “f compuesta con g”,1 y viene dada por

(g f)(x) = g(f(x))

g f hereda las propiedades comunes de f y g, Es decir, si f y g son ambas inyectivas, sobre-yectivas o biyectivas, entonces g f es inyectiva, sobreyectiva o biyectiva, respectivamente.

Si f : A → B es biyectiva, la relacion f−1 es una funcion biyectiva de B en A llamada lainversa de f . Es inmediato que en tal caso, f−1 f = idA y f f−1 = idB .

1Algunos autores prefieren usar la notacion f g. Nosotros utilizaremos la notacion g f porque, posiblemente,sea la mas extendida, y porque coincide con el orden de escritura de la notacion prefija, es decir, (g f)(x) = g(f(x)).

Page 12: Cur So Bueno Logic A

4 CAPITULO 1. PRELIMINARES

1.2. Numeros Naturales y Numerabilidad

La caracterıstica basica de un conjunto finito es su “tamano”, es decir, el numero de elementos queposee. Este concepto y sus propiedades mas basicas (si A ⊆ B, entonces el numero de elementosde A no supera al numero de elementos de B, etc) son adquiridos a muy temprana edad por el serhumano. Por el contrario, la extension del concepto de “tamano” a conjuntos infinitos no esta exentade dificultades y no se adecua al uso de la intuicion. En esta seccion revisaremos las nociones yresultados basicos acerca del tamano de los conjuntos, que utilizaremos en adelante.

El conjunto de los naturales, 0, 1, 2, . . ., se denota por N. Denotaremos por N∗ el conjunto N−0y por [n] el conjunto 1, 2, . . . , n.

Un conjunto A se dice numerable si existe una funcion sobreyectiva h : N→ A. En caso contrario,se dice que A es no numerable. Si la funcion h es ademas inyectiva, se dice que A es infinitonumerable. Si consideramos idN, concluimos que N es infinito numerable.

Si A es numerable pero no infinito numerable, entonces existe un n ∈ N∗ y una funcion biyectivah : [n]→ A. Se dice entonces que A es finito y que su numero de elementos es n.

Si A es numerable, la biyeccion h : N → A (o h : [n] → A) proporciona una enumeracion de suselementos, A = a1, a2, . . . , an para el caso finito y A = a1, a2, . . . , an, . . . para el caso infinito.

Los conjuntos infinitos numerables y los no numerables no son finitos, y por esta razon decimos queson conjuntos infinitos. Para comparar entre sı a los conjuntos infinitos se introduce la nocion decardinal de un conjunto. Nos limitaremos al respecto a decir que a cada conjunto A se le asociaun ente llamado cardinal de A, denotado |A|, tal que

1. |A| = 0 si A = Ø.

2. Si A es finito, |A| =numero de elementos de A.

3. Si existe una funcion inyectiva f : A → B entonces decimos que “|A| es menor o igual que|B|” y se denota |A| ≤ |B|. Si |A| ≤ |B|, pero no existe una funcion inyectiva de B en A, sedice que |A| < |B|.

4. Si existen funciones inyectivas f : A → B y g : B → A, o equivalentemente, existe unabiyeccion h : A → B, entonces decimos que “|A| es igual que |B|” y se denota |A| = |B|. Elcardinal de un conjunto infinito numerable se denota por ℵ0.

El cardinal de A se dice finito si A es finito e infinito en caso contrario. El menor cardinal infinitoes ℵ0 y para todo conjunto finito, A, se tiene |A| < ℵ0.

El siguiente teorema de Cantor asegura la existencia de cardinales tan grandes como se quiera.

Teorema 1.1 Para todo conjunto A se verifica que |A| < |2A|.

Con relacion a la cardinalidad de los conjuntos numericos, se tiene que |Z| = |Q| = ℵ0, es decir, losenteros y los racionales son infinitos numerables, mientras que para el conjunto R de los numerosreales, se tiene que ℵ0 < |R|. El cardinal de R se denota por ℵ1.

1.2.1. Principio de Induccion

El principio de induccion (IND) es una propiedad caracterıstica del conjunto N y constituye unaimportante herramienta matematica.

IND (Formulacion 1)

Sea P una propiedad relativa a los numeros naturales tal que:

Page 13: Cur So Bueno Logic A

1.3. RELACIONES DE EQUIVALENCIA Y RELACIONES DE ORDEN 5

1. 0 verifica P. (Caso base)

2. Para cada natural n, si n verifica P entonces n + 1 verifica P. (Hipotesis de Induccion)

En tales condiciones, todos los naturales verifican P.

En numerosas argumentaciones es util aplicar la siguiente formulacion.

IND (Formulacion 2)

Sea P una propiedad relativa a los naturales tal que

1. 0 verifica P. ( Caso base)

2. Para cada natural n > 0, si todos los naturales anteriores a n verifican P entonces n verifica

P. (Hipotesis de Induccion)

En tales condiciones, todos los naturales verifican P.

A veces, cierta propiedad P solo se verifica a partir de un cierto natural k, es decir, para todo n ∈ N

tal que n ≥ k. En tales condiciones, es obvio que es posible aplicar el Principio de Induccion encualquiera de sus formulaciones sin mas que modificar el caso base, “0 verifica P”, por “k verificaP”. Se tiene ası el “Principio de Induccion a partir de k”.

1.3. Relaciones de Equivalencia y Relaciones de OrdenLas relaciones de equivalencia y las relaciones de orden, formalizan, respectivamente, los procesosnaturales de clasificacion y ordenacion de los elementos de un conjunto.

Una relacion binaria R sobre un conjunto A puede verificar, entre otras, las siguientes propiedades:

Reflexiva: Para todo x ∈ A, se tiene que xRx.

Simetrica: Dados x, y ∈ A, si xRy, entonces yRx.

Antisimetrica: Dados x, y ∈ A, si xRy e yRx, entonces x = y.

Transitiva Dados x, y, z ∈ A, si xRy e yRz, entonces xRz.

1.3.1. Relaciones de Equivalencia

Una relacion binaria R sobre A se dice de equivalencia si es reflexiva, simetrica y transitiva. Dadauna relacion de equivalencia sobre A, para todo x ∈ A se define el conjunto

[x] = y ∈ A|xRy

que se llama clase de equivalencia de x. El conjunto [x] |x ∈ A de todas las clases de equiva-lencia se llama conjunto cociente de A por R y se denota A/R.

Puesto que para todo x ∈ A se tiene que x ∈ [x], podemos asegurar que A =⋃

x∈A[x]. Ademas, esinmediato comprobar que, para todo x, y ∈ A, se tiene que o bien [x] = [y] o bien [x]∩ [y] = ∅. Porlo tanto, A/R es una particion o clasificacion del conjunto A.

Page 14: Cur So Bueno Logic A

6 CAPITULO 1. PRELIMINARES

1.3.1.1. Clausuras

Dada una relacion binaria R sobre un conjunto A, en ocasiones interesa describir, en terminos deR, la mınima relacion (en el sentido de la inclusion de conjuntos) tal que:

contiene a R,

cumple una o varias propiedades P.

Una tal relacion, si existe, se denomina P-clausura de R.

Vamos a definir algunas de las P-clausuras mas utilizadas. Comencemos dando la definicion depotencia de exponente natural de una relacion:

Definicion 1.1 Para toda relacion binaria R sobre A,

R0 = idA y Rn+1 = Rn R

eer r Observese que xRny si y solo si existen n−1 elementos a1, . . . , an−1 de A tal que xRa1, a1Ra2, . . .y an−1Ry.

Definicion 1.2 Si R es una relacion binaria en un conjunto A:

1. Llamamos clausura reflexiva de R a la union Rr = R ∪ IA.

2. La union R+ =⋃

n≥1Rn, se llama la clausura transitiva (o cierre transitivo) de R y es la

menor relacion transitiva que contiene a R.

3. La union R∗ =⋃

n≥0Rn, se llama la clausura reflexiva y transitiva (o cierre reflexivo y

transitivo) de R y es la menor relacion reflexiva y transitiva que contiene a R.

4. la union Rs = R ∪R−1, se llama clausura simetrica de R.

5. Por utimo, llamamos clausura de equivalencia de R a la relacion Req = (R∗)s y es lamenor relacion de equivalencia que contiene a R.

En el caso de que A sea finito, se demuestra que la clausura transitiva, R+, de una relacion binariaR en A puede expresarse como union de una familia finita. Concretamente, si |A| = n, entonces

R+ =

n⋃

i=1

Ri

1.3.2. Relaciones de Orden

Una relacion R sobre el conjunto A se dice de orden parcial si es reflexiva, antisimetrica ytransitiva. En tal caso, el par (A,R) se dice que es un conjunto parcialmente ordenado. Porejemplo, para todo conjunto A se tiene que (2A,⊆) es un conjunto parcialmente ordenado.

Las relaciones de orden parcial son frecuentemente denotadas por el sımbolo ≤ y ası lo haremos entodo lo que sigue.

Dado un orden parcial ≤ sobre A, un subconjunto X no vacıo de A se dice totalmente ordenado,si para todo x, y ∈ X, x ≤ y o y ≤ x.

Page 15: Cur So Bueno Logic A

1.4. SECUENCIAS 7

Un orden parcial ≤ se dice que es un orden total (u orden lineal) si el propio A es totalmenteordenado. Obviamente, si ≤ es un orden total sobre A, todo subconjunto X de A es totalmenteordenado.

(N,≤), (Z,≤), (Q,≤) y (R,≤), donde ≤ es la relacion de precedencia habitual, son conjuntostotalmente ordenados.

Definicion 1.3 Sea (A,≤) un conjunto parcialmente ordenado y X un subconjunto no vacıo deA. Entonces,

1. un elemento b ∈ X se dice que es el mınimo o primer elemento de X, si b ≤ x para todox ∈ X.

2. un elemento b ∈ X se dice que es el maximo o ultimo elemento de X, si x ≤ b para todox ∈ X.

3. un elemento b ∈ X se dice que es un elemento maximal de X si para todo x ∈ X se tieneque si x ≥ b entonces x = b.

4. un elemento b ∈ X se dice que es un elemento minimal de X, si para todo x ∈ X se tieneque si x ≤ b entonces x = b.

Una relacion de orden parcial ≤ sobre A se dice que es un buen orden sobre A o bien que (A,≤)es un conjunto bien ordenado, si todo subconjunto X de A tiene primer elemento.

(N,≤) es un conjunto bien ordenado, de hecho, en N son equivalentes el principio de induccion,enunciado anteriormente, y su buena ordenacion. Por el contrario, (Z,≤), (Q,≤) y (R,≤) no sonconjuntos bien ordenados.

De forma obvia, si A es un conjunto finito, toda relacion de orden total sobre A proporciona unaenumeracion de A (enumeracion inducida por el orden total), y recıprocamente, toda enumeracionde A proporciona una relacion de orden total sobre A (relacion inducida por la enumeracion).

1.4. SecuenciasEn esta seccion presentamos la nocion quizas mas utilizada en las Ciencias de la Computacion: lanocion de secuencia, introducida para describir una coleccion de objetos de algun tipo, cuyo ordenes importante.

Utilizamos secuencias finitas, por ejemplo, para especificar que cuatro tareas concretas t, u, v,w del conjunto de tareas implicadas en una aplicacion determinada, han de ser realizadas en uncierto orden (debido a los recursos que se necesitan). Sin embargo, algunas aplicaciones requierenel uso de secuencias infinitas. Por ejemplo, la descripcion de la imparcialidad de planificacion de unsistema operativo, por tratarse de una propiedad en el lımite, reclama el uso de secuencias infinitas.Presentaremos en primer lugar las secuencias en general y en la siguiente seccion nos centraremosen las secuencias finitas.

En determinadas ocasiones se utiliza la siguiente nomenclatura para las funciones: Dados dos con-juntos I y A, se llama secuencia indizada por I de los elementos de A, a toda funcion X : I → A.La secuencia indizada, X : I → A, se denota por (ai)i∈I (donde ai = X(i) ∈ A) y al conjunto I sele llama conjunto de ındices. En particular, si A ⊆ 2B (es decir, los elementos de A son subcon-juntos de B), a las secuencias indizadas de elementos de A se les llama familias de conjuntos.

Page 16: Cur So Bueno Logic A

8 CAPITULO 1. PRELIMINARES

Una secuencia (ai)i∈I se dice numerable (respectivamente, no numerable) si el conjunto I de ındiceses numerable (respectivamente, no numerable). El conjunto de ındices frecuentemente usado paraindizar secuencias finitas es [n] y para las secuencias infinitas numerables es N.

Las secuencias infinitas numerables de elementos de A se denominan sucesiones de A. Es costumbredenotar las secuencias finitas por [a1, . . . , an] y las sucesiones por a1, . . . , an, . . . o ann∈N.

En relacion al cardinal del conjunto AI (de todas las secuencias sobre A indizadas por I) se tiene:

Si |I| es infinito y |A| > 1, entonces |AI | > ℵ0.

Si I es finito y |A| ≤ ℵ0, entonces |AI | ≤ ℵ0. En particular, si |A| = ℵ0 se tiene que |AI | = ℵ0.

Las familias de conjuntos permiten generalizar la union e interseccion de conjuntos: Sean A1, A2

subconjuntos de A, entonces

A1 ∪A2 = x ∈ A| existe un i ∈ [2] tal que x ∈ Ai

A1 ∩A2 = x ∈ A| para todo i ∈ [2] tal que x ∈ Ai

Para una familia cualquiera de subconjuntos de A, (Ai)i∈I , definimos la union (resp. interseccion)de dicha familia, denotada

⋃i∈I Ai (resp.

⋂i∈I Ai), por

i∈I

Ai = x ∈ A | existe un i ∈ I tal que x ∈ Ai

i∈I

Ai = x ∈ A | para todo i ∈ I, x ∈ Ai

Con relacion a la numerabilidad de la union de una familia de conjuntos, se tiene que:

La union numerable de una familia de conjuntos numerables es numerable

En particular, la union numerable de conjuntos numerables, (Ai)i∈I , es infinito numerable en lossiguientes casos:

1. Uno al menos de los elementos de la familia es infinito numerable.

2. Todos los elementos de la familia son finitos, Ai∩Aj = ∅ para todo par de elementos distintosde la familia y el conjunto de ındices I es infinito numerable.

1.5. Alfabeto y Cadenas

Sea a un conjunto numerable y no vacıo al que llamamos alfabeto. Una cadena sobre el alfabetoa es toda secuencia finita u : [n] → a. El natural n se llama longitud de u y se denota long(u).Las cadenas (tambien llamadas palabras) se denotan por yuxtaposicion de sus elementos, es decir,u1u2 · · · un (cadena de longitud n). Introducimos la cadena vacıa o cadena nula, denotada ǫa osimplemente ǫ, por la funcion ǫ : ∅ → a. Si convenimos en denotar el conjunto vacıo por [0],entonces ǫ : [0]→ a.

Para todo natural n, sea an el conjunto de las cadenas de longitud n sobre a. La union de la familia

(an)n∈N, esto es,⋃

n∈N an, se llama el lenguaje universal sobre el alfabeto a y se denota por a

∗.

Page 17: Cur So Bueno Logic A

1.6. ARBOLES 9

Dadas dos cadenas u : [m] → a y v : [n] → a, se define la concatenacion de u y v, denotada uv,como la cadena w : [m + n]→ a definida por

w(i) =

u(i) si 1 ≤ i ≤ mv(i −m) si m + 1 ≤ i ≤ m + n

La concatenacion es una operacion interna sobre el lenguaje universal a∗. La cadena vacıa ǫ es elelemento neutro para dicha operacion (ǫu = uǫ = u), es asociativa y si |a| > 1, no es conmutativa.

Dada una cadena u, una cadena v se dice es un prefijo de u, si existe una cadena w tal queu = vw. Una cadena v es un sufijo de u, si existe una cadena w tal que u = wv. Una cadena v esuna subcadena de u, si existen cadenas x e y tales que u = xvy. Un prefijo, sufijo o subcadena vde una cadena u se dice propia si v 6= u.

1.6. Arboles

En nuestro estudio la estructura de arbol que vamos a introducir sera una herramienta basica.Usaremos los arboles para representar objetos, para expresar la semantica de objetos, espacios debusqueda de demostraciones y como base de las demostraciones en sı.

En esta seccion introducimos la nocion de arbol debida a Gorn y las nociones basicas sobre arboles.El punto de partida es fijar un conjunto infinito numerableA y una enumeracion a1, a2, . . . , an, . . .de A.

Un dominio de arbol, D, es un conjunto de cadenas sobre A (subconjunto de A∗) que satisfacelas siguientes condiciones:

1. Existe ǫ ∈ D sin prefijo, la raız del arbol.

2. Para todo u ∈ D, todo prefijo de u pertenece a D.

3. Para todo u ∈ D tal que uai ∈ D, se tiene que uaj ∈ D para todo j tal que 1 ≤ j < i.

eer r Observese que por la segunda condicion, para todo dominio de arbol D no vacıo se tiene queǫ ∈ D.

Ejemplo 1.3 El dominio de arbol

D = ǫ, a1, a2, a3, a1a1, a1a2, a2a1, a2a2, a3a1, a3a1a1

se representa como aparece en la Figura 1.1:

Sea Σ un conjunto no vacıo a cuyos elementos llamamos etiquetas. Un Σ-arbol (brevemente unarbol) es una funcion T : D → Σ donde D es un dominio de arbol. Las cadenas u ∈ Dom(T ) seacostumbran a llamar los nodos o las direcciones del arbol t. Si D = ∅, la funcion T se denominaarbol vacıo. Para todo arbol T no vacıo, el nodo ǫ se llama la raız de T .

Ejemplo 1.4 Sea Σ = f, g, h, a, b. El arbol T : D → Σ, donde D es el dominio de arbol delejemplo anterior y T es la funcion dada por

(ǫ, f), (a1, h), (a2, g), (a3, b), (a1a1, a), (a1a2, b)(a2a1, b), (a2a2, a), (a3a1, f), (a3a1a1, g)

se representa como aparece en la Figura 1.2.

Page 18: Cur So Bueno Logic A

10 CAPITULO 1. PRELIMINARES

a1a1

a1

a1a2 a2a1

e

a2

a2a2

a3

a3a1

a3a1a1

Figura 1.1:

f

h

a b b

g

a

b

f

g

Figura 1.2:

Page 19: Cur So Bueno Logic A

1.6. ARBOLES 11

El grado de ramificacion de un nodo u es el cardinal del conjunto ai ∈ A | uai ∈ Dom(T ) yse denota por d(u). Los nodos u tales que d(u) = 0 se llaman hojas.

Un arbol T se dice de ramificacion finita si d(u) es un natural para todo nodo u. Un arbol T sedice binario si para todo nodo u se tiene que d(u) ≤ 2 y se dice completo si para todo nodo nohoja, u, se tiene que d(u) = 2.

Un arbol T se dice finito si Dom(T ) es finito y se dice infinito en caso contrario. Obviamente todoarbol finito es de ramificacion finita. Los arboles de un solo nodo se llaman arboles hoja.

Los nodos de la forma uai, con ai ∈ A, se llaman descendientes inmediatos (o hijos) de u, y alnodo u el ascendiente inmediato (o padre) de cualquiera de sus descendientes inmediatos uai. Si elarbol es binario y d(u) = 2, los descendientes inmediatos de u se denominan descendiente izquierdoy descendiente derecho.

Cuando se trabaja con Σ-arboles para un Σ determinado, es costumbre referirse a los nodos porsus etiquetas, y ası utilizar expresiones como:

“El nodo a”, cuando deberıa decirse “el nodo etiquetado con a”.

“El arbol o arboles cuyos nodos son elementos de Σ”, cuando deberıa decirse “El arbolo arboles cuyos nodos estan etiquetados con elementos de Σ”

Utilizamos el ejemplo dado de arbol para ilustrar este uso:

1. Todos los nodos “a” son hojas.

2. Uno de los nodos “f” es la raız del arbol.

1.6.1. Caminos

Sea T un arbol y u, v ∈ Dom(T ). Un camino desde u hasta v es una secuencia finita de nodosu1, u2, . . . , un+1 tal que

u = u1 y v = un+1.

Para todo j (2 ≤ j ≤ n), uj = uj−1akj para algun akj ∈ A.

El natural n se llama longitud del camino.

En arboles infinitos, cabe considerar caminos infinitos. Un camino infinito desde el nodo u es unasucesion de nodos u1, u2, . . . , un, . . . tal que

u = u1.

Para todo j > 1, uj = uj−1akj para algun akj ∈ A

Una rama es un camino infinito desde la raız o un camino desde la raız a una hoja. Ası, las ramasse clasifican en finitas e infinitas. Obviamente, en un arbol finito solo existen ramas finitas y sunumero coincide con el numero de hojas.

Dado un arbol T , para todo nodo u de T existe un unico camino desde la raız al nodo u. Lalongitud de dicho camino se llama la profundidad o el nivel de u. La nocion de profundidad deun nodo estratifica los nodos de un arbol en: nodos de profundidad 0 (la raız), profundidad 1,profundidad 2, etc.

La profundidad o altura de un arbol T es el maximo del conjunto nivel(u)|u ∈ Dom(T ),cuando T no tiene ramas infinitas, e infinito en caso contrario.

El siguiente resultado establece una condicion suficiente para la existencia de ramas infinitas.

Page 20: Cur So Bueno Logic A

12 CAPITULO 1. PRELIMINARES

Lema 1.1 (Konig) En todo arbol infinito de ramificacion finita existe al menos una rama infinita.

A continuacion presentamos una curiosa aplicacion del Lema de Konig

Vamos a jugar con un conjunto de bolas etiquetadas con numeros naturales, sin restricciones sobreel numero de bolas ni sobre los numeros que aparecen en las etiquetas. Supongamos que, al iniciodel juego, tenemos una caja con una sola bola; tenemos permiso para sacar la bola de la caja yreemplazarla por tantas bolas como queramos, siempre que esten etiquetadas con numeros menoresque el de la bola retirada. Esta es toda la mecanica del juego, tomar una bola de la caja, retirarla ysustituirla por bolas con numeros menores. Por ejemplo, podrıamos retirar una bola con el numero30 y sustituirla por cien mil bolas con etiquetas menores que treinta.

El problema consiste en demostrar que, sin importar como actuemos (de acuerdo con las reglas),finalmente acabaremos quedandonos sin bolas en la caja.

1.6.2. Subarboles

Sea T un arbol y u un nodo de T . El subarbol de raız u es el arbol Tu definido como sigue:

Dom(Tu) = v| uv ∈ Dom(T ).

Tu(v) = T (uv).

Para todo arbol T y para todo nodo no hoja u de T , los subarboles cuya raız son los descendientesinmediatos de u se llaman subarboles de u. En particular, si d(u) = 2 se llaman subarbol izquierdoy subarbol derecho.

Es inmediato que si T es de ramificacion finita, todos sus subarboles son tambien de ramificacionfinita. Si ademas T es infinito, por el Lema de Konig, T tiene subarboles infinitos.

1.6.3. Recorridos de un arbol

Describimos a continuacion dos modos habituales de ordenar, enumerar o recorrer los nodos de unΣ-arbol finito. Dichas enumeraciones proporcionan una secuencia de sus nodos contemplados comoelementos de Σ.

Primero en Profundidad: En todo arbol finito T , la relacion ≤ en Dom(T ) definida a continua-cion es de orden total. Diremos que u ≤ v si se cumple alguna de las condiciones siguientes:

1. u es prefijo de v

2. Existen cadenas x, y, z ∈ A∗ y elementos ai, aj ∈ A con i < j tales que u = xaiy y v = xajz

La enumeracion de los nodos de T proporcionada por dicha relacion se llama recorrido primero enprofundidad. Si u ≤ v por la primera condicion, se dice que u es un ascendiente de v y que v es undescendiente de u.

Primero en Anchura: En todo arbol finito T , la relacion ≤ en Dom(T ) definida a continuaciones de orden total. Diremos que u ≤ v si se cumple alguna de las condiciones siguientes:

1. long(u) < long(v)

2. Existen cadenas x, y, z ∈ A∗ con long(y) = long(z) y elementos ai, aj ∈ A con i < j tales queu = xaiy y v = xajz.

La enumeracion de los nodos de T proporcionada por dicha relacion se llama recorrido primero enanchura.

Ejemplo 1.5 Para el arbol

Page 21: Cur So Bueno Logic A

1.7. CONJUNTOS INDUCTIVOS 13

f

g

i j h

h

g

k g

i

k

j

el recorrido primero en profundidad viene dado por la siguiente secuencia de sus nodos:

f, g, i, j, h, i, h, k, g, g, k, j

y el recorrido primero en anchura viene dado por la siguiente secuencia de sus nodos:

f, g, h, i, i, j, h, g, k, g, k, j

1.7. Conjuntos Inductivos

En diferentes areas de las Ciencias de la Computacion es frecuente introducir objetos mediante ladefinicion inductiva de conjuntos. Se entiende por ello la definicion de un conjunto caracterizadopor ser:

El menor conjunto que contiene a un conjunto dado X llamado conjunto base o conjuntode atomos.

Cerrado para un conjunto F de funciones llamado conjunto de constructores.

Antes de describir formalmente estos conjuntos, vamos a describir un caso sencillo en el que tantoel conjunto base, como el conjunto de constructores consta de un solo elemento. Se trata de ladefinicion inductiva de los numeros naturales.

Consideremos el alfabeto a = O, “(”, “)”, σ y a∗ el lenguaje universal sobre el alfabeto a. Consi-

deremos el operador Cσ : a∗ → a∗ definido por Cσ(u) = σ(u). Entonces:

El subconjunto de a∗ generado a partir del conjunto base X = O y el constructor Cσ es

B = O,σ(O), σ(σ(O)), σ(σ(σ(O))), . . .

Si interpretamos O por el 0 de N y σ por la funcion sucesor en N, es decir σ(n) = n+ 1, se obtieneel conjunto de los naturales 0, 1, 2, . . . . . .

Page 22: Cur So Bueno Logic A

14 CAPITULO 1. PRELIMINARES

eer r Observese que:

1. El conjunto B es el menor subconjunto de a∗ que contiene a O y es “cerrado” para Cσ, es

decir, para todo u ∈ B, se tiene que Cσ(u) = σ(u) ∈ B

2. El conjunto B es la union de la sucesion de conjuntos (Xn) descritos como sigue:

X1 = O

Xn+1 = Xn ∪ σ(u)|u ∈ Xn

Pasamos ya a establecer que se entiende por conjunto definido inductivamente.

Definicion 1.4 Sea A un conjunto no vacıo, X un subconjunto no vacıo de A y F un conjuntode funciones sobre A. 2 En definitiva:

F = fni : An → A | (i, n) ∈ I × J

donde I es un conjunto arbitrario no vacıo y J un subconjunto no vacıo de N∗.

Un subconjunto Y de A se dice inductivo sobre X para F , si verifica:

1. X ⊆ Y

2. Y es cerrado para F , es decir, para toda f : An → A en F y para todo (y1, . . . , yn) ∈ Y n, setiene que f(y1, . . . , yn) ∈ Y .

La interseccion de todos los conjuntos inductivos sobre X para F , al que denotaremos por X+,es tambien un conjunto inductivo sobre X para F y se llama la clausura inductiva de X para F .Como A es, obviamente, inductivo sobre X para F , podemos asegurar que X+ 6= ∅.

Vamos a dar una descripcion constructiva de X+ (la clausura inductiva de X para F):

Sea (Xi) la sucesion creciente de los conjuntos definidos como sigue:

X1 = X

Xi+1 = Xi ∪ f(x1, . . . , xn) | f ∈ F y (x1, . . . , xn) ∈ Xni

Entonces,

X+ =⋃

i≥1

Xi

eer r Advirtamos que cada elemento de X+, puede ser representado por un conjunto de arboles delsiguiente modo:

- Cada elemento x del conjunto base, por el arbol de un solo nodo etiquetado con x.

- Cada elemento a = f(x1, . . . , xn) ∈ Xi por cualquier arbol tal que:

(i) su raız es f y su grado de ramificacion es n.

(ii) cada descendiente inmediato de la raız es la raız de un arbol que representa a xj .

Ası pues, es posible que un elemento a ∈ X+ pueda ser representado por diferentes arboles,dependiendo de la n-upla (x1, . . . , xn) elegida (basta que a = f(x1, . . . , xn) ∈ Xi).

Ahora tenemos los elementos necesarios para advertir que el principio de induccion no es mas quela lectura para N del siguiente resultado.

2Advirtamos que no exigimos que todos los elementos de F tengan la misma aridad.

Page 23: Cur So Bueno Logic A

1.7. CONJUNTOS INDUCTIVOS 15

Teorema 1.2 (Principio de Induccion Estructural) Sea X+ la clausura inductiva de X paraun conjunto de constructores F . Sea P una propiedad relativa a X+ tal que:

1. Todo elemento de X verifica P.

2. F respeta la propiedad P, es decir, para todo f ∈ F de aridad n se tiene que:

Si x1, . . . , xn ∈ X+ verifican P, entonces f(x1, . . . , xn) verifica P.

En tales condiciones, todos los elementos de X+ verifican P.

1.7.0.1. Clausuras Inductivas Libremente Generadas

Un tipo de clausura inductiva de particular interes (por su adecuacion para ser manipulada compu-tacionalmente) lo forman las clausuras inductivas libremente generadas, que son aquellas en lasque los elementos de X+ son generados de forma unica a partir del conjunto base X y del con-junto de constructores F , es decir, aquellas en las que todo elemento a de X+ es representadosintacticamente por un unico arbol. Mas formalmente:

Definicion 1.5 Sea A un conjunto, X un subconjunto de A, F un conjunto de funciones sobreA y X+ la clausura inductiva de X para F . Se dice que X+ es libremente generada si cumple lassiguientes condiciones:

1. Para toda f : Am → A de F , su restriccion a X+ es inyectiva, es decir, todo constructorgenera elementos distintos desde elementos distintos.

2. Para todo par f : Am → A, g : An → A de F , sus imagenes f((X+)m) y g((X+)n) sondisjuntas cuando f 6= g, es decir, constructores distintos generan elementos distintos.

3. Para toda f : Am → A de F y para todo (x1, . . . , xm) de (X+)m, se tiene que f(x1, . . . , xm) /∈X, es decir, ningun constructor genera elementos del conjunto base.

Es obvio que el conjunto de los naturales, como clausura inductiva, es libremente generado.

eer rEn el caso de las clausuras inductivas libremente generadas, X+ sera siempre infinito.

En las clausuras libremente generadas, los conjuntos Xi satisfacen la siguiente propiedad:

Si (x1, . . . , xn) ∈ Xni −Xn

i−1, entonces f(x1, . . . , xn) 6∈ Xi.

Por lo tanto, X+ es la union de la sucesion estrictamente creciente de conjuntos Yi definidos comosigue:

Y1 = X

Y2 = Y1 ∪ f(y1, . . . , yn) | f ∈ F e (y1, . . . , yn) ∈ Y n1

. . . . . .

Yi+1 = Yi ∪ f(y1, . . . , yn) | f ∈ F e (y1, . . . , yn) ∈ Y ni − Y n

i−1

Page 24: Cur So Bueno Logic A

16 CAPITULO 1. PRELIMINARES

1.7.1. Funciones Recursivas

Dado un conjunto no vacıo A y X ⊆ A, bajo ciertas condiciones, es posible extender una funciondefinida sobre X, de forma unica, a su clausura inductiva libremente generada para un conjuntode constructores F , X+. Sean:

Un conjunto B y un conjunto G de funciones de alguna aridad sobre B.

Una funcion d : F → G tal que, para todo f ∈ F , d(f) tiene la misma aridad que f .

En tales condiciones, si X+ es libremente generada, entonces para toda funcion h : X → B existeuna unica funcion h : X+ → B tal que:

1. h es una extension de h, es decir, h(x) = h(x) para todo x ∈ X.

2. h(f(x1, . . . , xn)) = d(f)(h(x1), . . . , h(xn)) para toda funcion f de F y para todo (x1, . . . , xn) ∈(X+)n.

La segunda condicion puede expresarse diciendo que el siguiente diagrama

Bn

d(f)B

(X+)n X+f

hn h

es conmutativo, es decir, h f = d(f) hn, siendo hn la funcion definida por:

hn(x1, . . . , xn) = (h(x1), . . . , h(xn))

La extension h definida se dice que es una funcion recursiva o tambien definida inductivamente.ası pues , conocido el valor de h sobre los elementos del conjunto base, la extension h se definesobre un elemento a de X+ en terminos de sı misma sobre elementos de h que son mas simples quea. 3

Ejemplo 1.6 La potencia de exponente natural de una relacion binaria R en un conjunto A (quehemos introducido en la seccion 1.1) es la funcion recursiva

h : N→ 2A×A

extension de h : 0 → 2A×A, con h(0) = idA, definida por h(σ(n)) = d(σ)(h(n)) donde d(σ) :2A×A → 2A×A con d(σ)(S) = S R, es decir,

h(σ(n)) = h(n) R

Si denotamos h(k) = Rk para todo k ∈ N, se tiene la definicion ya presentada

R0 = idA y Rn+1 = Rn R

3Por esta razon, se suele decir que “h “se llama a sı misma”.

Page 25: Cur So Bueno Logic A

1.8. EJERCICIOS 17

1.8. Ejercicios

1. Demuestre que una relacion binaria R en un conjunto A es transitiva si y solo si R+ = R.

2. Dadas dos relaciones binarias R y S en un conjunto A, demuestre que

a) (R+)−1 = (R−1)+

b) Si R S = S R, entonces (R S)+ = R+ S+

3. Proporcione un ejemplo de relacion binaria no reflexiva, cuya clausura transitiva sı sea refle-xiva.

4. Sea A un conjunto arbitrario. Demuestre que si B ⊆ A∗, entonces (B∗)∗ = B∗.

5. Sea (Ai)i∈I una familia de subconjuntos de un conjunto A. Pruebe que:

a) (⋃

i∈I Ai)c =

⋂i∈I A

ci

b) (⋂

i∈I Ai)c =

⋃i∈I A

ci

donde, dado un conjunto X, hemos denotado por Xc el conjunto complementario de X.

6. Sea una funcion f : A→ B y, para cada i ∈ I, Ai ⊆ A. Demuestre que:

a) f(⋃

i∈I Ai) =⋃

i∈I f(Ai).

b) f(⋂

i∈I Ai) ⊆⋂

i∈I f(Ai).

c) f(⋂

i∈I Ai) =⋂

i∈I f(Ai), si f es inyectiva.

7. Demuestre por induccion que para todo n ∈ N se tiene que:

a) n5 − n es divisible por 5.

b)∑n

k=0 ak = an+1 − 1

a− 1 para cualquier a ∈ R \ 0, 1.

8. Sea Σ = a1, . . . , a26 = a, . . . , z, el alfabeto romano. Defina rigurosamente la relacionbinaria orden lexicografico sobre Σ∗, tal que, si la denotamos por ≺,

u ≺ v se lee: “u precede a v en el diccionario”.

9. Sean (A,≤1) y (B,≤2) dos conjuntos parcialmente ordenados. Una funcion f : A→ B se diceque es monotona si para cualesquiera a, b ∈ A tales que a ≤1 b se tiene que f(a) ≤2 f(b).Demuestre que:

a) La composicion de dos funciones monotonas es monotona.

b) Si f es monotona y α es el mınimo elemento de un subconjunto X no vacıo de A, entoncesf(α) es el mınimo elemento de f(X).

c) Proporcione un contraejemplo para mostrar que si f es monotona y α es el mınimoelemento de A, entonces f(α) no es necesariamente el mınimo elemento de B.

10. a) Defina una tabla 2-dimensional de elementos de un conjunto A, como una secuencia defilas, siendo cada fila una secuencia de elementos de A.

Page 26: Cur So Bueno Logic A

18 CAPITULO 1. PRELIMINARES

b) Dada una tabla 2-dimensional de elementos de un conjunto A, TA, Defina funciones sobreTA que seleccionen la i-esima fila, la j-esima columna y el elemento aij , respectivamente.

c) Demuestre que la funcion que selecciona la j-esima columna es una secuencia.

11. Demuestre que en un arbol binario T

a) El numero de nodos en el nivel k es menor o igual que 2k.

b) Si h es la altura de T , entonces el numero de hojas es menor o igual que 2h.

c) Si h es la altura de T , entonces el numero de nodos de T es menor o igual que 2h+1− 1.

d) Si n es el numero de nodos de T con n ≥ 1, entonces la altura de T es mayor o igual quelog

2n.

12. Sea B la clase de los arboles binarios y sea f : B → N, definida por

f(T ) =

0 si T es vacıomaxf(TL), f(TR) si f(TL) 6= f(TR)f(TR) + 1 si f(TL) = f(TR)

donde TL y TR son los subarboles izquierdo y derecho de T , respectivamente. f(T ) es llamadoel numero Strahler de T .

a) Determine el numero Strahler de un arbol binario completo de altura h.

b) Proporcione una relacion general entre la altura de un arbol binario y su numero Strahler.

13. a) Demuestre el lema de Konig.

b) Use el lema de Konig para demostrar que el juego citado como ejemplo de su uso debeterminar. (Indicacion: supongamos que creamos un arbol como sigue: los nodos son lasbolas que han pasado por la caja. El nodo raız es la bola con la que comenzamos a jugar.Los hijos de una bola son las bolas que introducimos cuando la reemplazamos).

14. Defina inductivamente el conjunto n ∈ N | n es multiplo de 3 y de 7, usando (para definirlos constructores) solamente la suma en N.

15. a) Defina inductivamente el conjunto S de las secuencias finitas de elementos de un conjuntoA. Razonar si S es o no libremente generado.

b) Demuestre por induccion estructural que la longitud de una secuencia s coincide con lalongitud de su inversa (secuencia obtenida tomando los elementos de s en orden inverso).

16. Sea A = a, b, c y ∗ : A×A→ A la funcion definida por la tabla siguiente:

∗ a b c

a a b cb b c ac c a b

a) Demuestre que A es la clausura inductiva de X = b para ∗.

b) Demuestre que existe una funcion h : X → N que no tiene ninguna extension g a A talque g es un homomorfismo de (A, ∗) en (N,+), es decir, tal que g(x ∗ y) = g(x) + g(y).

Page 27: Cur So Bueno Logic A

1.8. EJERCICIOS 19

17. Defina recursivamente la funcion “nivel de un nodo” en un arbol.

18. Dadas las siguientes definiciones recursivas de funciones, busque para cada una de ellas unaformula simple para su definicion y pruebe por induccion que la respuesta es correcta

a) f : N→ N, definida por

f(n) =

1 si n = 1f(n− 1) + 2n + 1 en caso contrario

b) g : N× N→ N, definida por

g(n,m) =

1 si m = 1g(n,m− 1)× n en caso contrario

Page 28: Cur So Bueno Logic A

20 CAPITULO 1. PRELIMINARES

Page 29: Cur So Bueno Logic A

Capıtulo 2

Logica y Computacion

2.1. Objetivo de la logica

La importancia de la Logica viene siendo reconocida desde la antiguedad, ya los griegos sabıan queel razonamiento es un proceso sujeto a ciertos esquemas y que, al menos parcialmente, esta go-bernado por leyes perfectamente formulables (Aristoteles fue el primero en intentar describir lasleyes de la logica). Pero su importancia en la actualidad se debe sin duda al destacado papel queha tomado recientemente en los mas diversos campos de las Ciencias de la Computacion 1. Nodebemos sorprendernos por este hecho, ya que, como expone magistralmente Hofstadter en su libroGodel, Escher y Bach. Un Eterno y Gracil Bucle,

. . . la logica nacio como un intento de mecanizar los procesos intelectivos del razonamiento . . .

De hecho, si se pretenden mecanizar tareas tales como:

- Calculos basados en operaciones aritmeticas (que el hombre puede memorizar y aplicar sinnecesidad de razonar).

- Busqueda de datos (por simple comparacion con un patron dado).

- Clasificacion u ordenacion de datos (siguiendo un criterio establecido).

no es necesario aplicar la Logica (en el sentido de ciencia). Pero si pretendemos mecanizar tareasinteligentes, tareas en las que interviene destacadamente la capacidad deductiva del hombre, comolas involucradas en los campos de las Ciencias de la Computacion citados, se requiere:

- Tener conocimiento sobre el dominio.

- Razonar con tal conocimiento.

- Conocer como dirigir o guiar tal razonamiento

para todo ello es preciso definir (con claridad y precision) y analizar los procesos inferenciales queel hombre ejercita de modo natural. Este es el objetivo de la logica.

1Comprension del Lenguaje Natural, Teorıa de Automatas y Lenguajes Formales, Diagnosis, Simulacion de Circui-tos Digitales, Planificacion, Control Automatico, Analisis, Sıntesis y Verificacion de Programas, Programacion logica,Inteligencia Artificial, Control de Procesos, Robotica, Bases de Datos. . .

Page 30: Cur So Bueno Logic A

22 CAPITULO 2. LOGICA Y COMPUTACION

Sin embargo, las inquietudes teoricas en el campo de la automatizacion del razonamiento, distanmucho temporalmente de las consecuciones. Ası, la idea de crear un lenguaje simbolico aparece enla Edad Media con Raimundo Lulio, pero no tuvo exito en la epoca. La razon, como indican Gochety Gribomont, es que:

. . . desgraciadamente, el nivel de la Ciencia y en particular de las Matematicas era muybajo en la epoca . . .

La historia de la Logica Computacional puede ser trazada al menos desde Hobbes y Leibniz en elsiglo XVII, Boole y Frege en el siglo XIX, Herbrand y Gentzen en 1930 y Robinson en 1960, todosellos matematicos. Sus trabajos constituyen la base de lo que hoy se entiende por Ciencias de laComputacion.

Son muchas las definiciones posibles para la logica y quizas la mas estandar es la siguiente:

. . . la logica es la ciencia que tiene como objetivo el analisis de los metodos de razona-miento . . .

Desde su papel crucial en computacion, encontramos nuevas definiciones que reflejan nuestro interes.Recogemos la de Johan van Benthem (junto con otros autores) en su texto Logic in Action:

La logica es una teorıa de tareas informacionales claves ejecutadas por actores cognitivosque razonan, aprenden, actuan e interactuan con otros de modo inteligente

En este texto, estudiaremos la logica que analiza la validez de las construcciones del lenguajenatural llamadas razonamientos deductivos (o inferencias deductivas), es decir, construccionesque responden al esquema:

Si . . . y . . . y . . . y . . . y . . . , entonces . . .

y que utilizamos para establecer que cierta afirmacion (la conclusion) se deriva, deduce o infieredeductivamente de otras (las hipotesis).

En todo su quehacer, como ya destaco Aristoteles, la logica se interesa en la forma y no en el conte-nido de los razonamientos. Por ejemplo, consideremos los dos razonamientos deductivos siguientes,cuya validez nadie pondra en duda:

1. Si Parıs es la capital de Espana y Roma es la capital de Italia, entonces Parıs es la capitalde Espana.

2. Todos los malaguenos miden mas de dos metros. Juan es malagueno. Por lo tanto, Juan midemas de dos metros.

El primero tiene la forma: “si A y B, entonces A”, y el segundo, que responde al tipo derazonamiento referido por los griegos como silogismo, tiene la forma:

“Todos los A son B, C es un A. Por lo tanto, C es un B”

La validez de estas formas de argumentacion es el objetivo de la logica deductiva. La verdad ofalsedad de las hipotesis y de la conclusion (como ocurre en el primer ejemplo) no conciernen a lalogica. Su objetivo es unicamente:

Page 31: Cur So Bueno Logic A

2.2. TIPOS DE LOGICAS 23

conocer si de las hipotesis es lıcito inferir la conclusion, si la informacion que recoge la con-clusion esta implıcita en la informacion que recogen las hipotesis, y

establecer metodos validos de inferencia, es decir, poder contestar a las preguntas siguientes:

• ¿es lıcito inferir de las hipotesis H1,H2, . . . ,Hn la conclusion C?,

• ¿Existen metodos lıcitos de inferencia?;

• ¿Existen metodos lıcitos de inferencia que son automatizables?.

Con esta concepcion como punto de partida, para contestar a las anteriores preguntas, habra queestablecer con claridad:

1. El tipo de construcciones del lenguaje natural que aceptamos como hipotesis y como conclu-sion,

2. El grado de analisis sobre tales construcciones,

3. El planteamiento de partida sobre la nocion de verdad o falsedad

Todo ello, dara lugar a diversos tipos de logicas.

2.2. Tipos de Logicas

Entre las diversas logicas, y como referencia y fundamento de todas las demas, se encuentra lalogica clasica o estandar , la mas ampliamente estudiada desde que George Boole expusiera susLeyes de la Verdad en 1854 y a la que en sıntesis podemos describir como sigue:

considera unicamente frases declarativas del lenguaje natural, las cuales consideramos quesolo admiten dos posibles valores de verdad: o son verdaderas o son falsas (es decir, la logicaclasica es bivaluada).

considera que podemos pronunciarnos acerca del valor de verdad de una frase declarativa deun modo absoluto, sin recurrir a consideraciones de contexto alguno. Nos pronunciamos sobresu valor de verdad sin tener en cuenta en que momento se declaran, ni en que lugar, ni cuales nuestro grado de conocimiento previo, . . .

contempla la verdad composicionalmente, es decir, el valor de verdad de una frase compuestaqueda totalmente determinado por la verdad de las frases simples componentes (es decir, lalogica clasica es veritativo-funcional o extensional).

El estudio sobre tales construcciones se realiza en dos niveles de analisis estructural, segunse contemplen unicamente construcciones declarativas simples y compuestas o bien, en cadaafirmacion simple se distinga que se declara y de que o quien se declara. Estos dos niveles danlugar a la logica clasica proposicional y a la logica clasica de predicados, respectivamente.

El termino logica no clasica, es un termino generico usado para referir a cualquier logica diferentea una logica que posea las caracterısticas que acabamos de senalar. Por lo tanto, sera no clasicacualquier logica que, al analizar la correccion de los razonamientos, permita considerar contextos(temporales, de creencia, de necesidad y posibilidad, . . . ); no se limite a contemplar como valoresde verdad unicamente el 0 y el 1; no sea veritativo-funcional; . . .

Page 32: Cur So Bueno Logic A

24 CAPITULO 2. LOGICA Y COMPUTACION

Aunque las logicas no clasicas han adquirido mayor protagonismo por su papel en las Cienciasde la Computacion, surgieron antes de la existencia de los ordenadores. Los filosofos griegos yacuestionaban el etiquetar los enunciados de verdaderos sin contemplar la verdad por necesidad o laverdad por posibilidad o sin contemplar que existen enunciados cuya verdad es temporal. . . Smullyanafirma sobre la necesidad de las logicas no clasicas:

. . . no es que la logica clasica de respuestas incorrectas a ciertas cuestiones, sino queciertas cuestiones no pueden ser expresadas en ella facilmente , de modo natural o enun modo computacionalmente eficiente . . .

Hoy dıa es una cuestion abierta conseguir una rigurosa clasificacion de las logicas no clasicas.Siguiendo a Susan Haak, la mayorıa de las logicas no clasicas, son:

- Extensiones de la logica clasica: Pueden hablar y analizar razonamientos que la logicaclasica no puede, extendiendo el vocabulario basico de esta. Ejemplos de este tipo de logicasson aquellas en las que el analisis de los razonamientos consideran contextos de tiempo (logicastemporales), de conocimiento (logicas epistemicas), de creencia (logicas doxasticas), etc.

- Desviaciones o rivales de la logica clasica: Utilizan el mismo vocabulario que la logicaclasica, pero no mantienen algunas de las leyes de esta. Un ejemplo significativo de logica rivales el de la logica Intuicionista o constructivista, que no contempla como ley la ley del terceroexcluido (A ∨ ¬A siempre es verdadera). Esta logica fue introducida por Brouwer. Para unintuicionista, A es verdadero solo si es posible dar “constructivamente” una realizacion de Ao probar “constructivamente” la existencia de A y, obviamente, existen afirmaciones para lasque no es posible dar “constructivamente” una realizacion ni de ella ni de su negacion.

Otras logicas de este tipo son las logicas difusas, abductivas, paraconsistente, probabilıstica,etc. A todas ellas les prestaremos atencion en sucesivos textos. En este solo trataremos lalogica clasica proposicional.

2.3. Expectativas y Limitaciones de la Logica en Computacion

La vision de la logica que hemos adoptado, enfocada al analisis de razonamientos o inferencias ycon el objetivo final de aplicaciones computacionales conlleva, como destaca el logico matematicoMartin-Lof, los cuatro aspectos siguientes:

el lenguaje

la semantica

una teorıa de la demostracion; y

la automatizacion de las deducciones.

En esta seccion, describimos cada uno de estos cuatro aspectos enmarcandolos en un contextogeneral y, particularizando a la logica clasica, comentamos brevemente los resultados que generanexpectativas y los que establecen limitaciones respecto al uso de la logica en computacion.

Page 33: Cur So Bueno Logic A

2.3. EXPECTATIVAS Y LIMITACIONES DE LA LOGICA EN COMPUTACION 25

2.3.1. El Lenguaje

Todo metodo “formal” para abordar una tarea, requiere la eleccion de las cadenas de sımbolosque constituiran el lenguaje utilizado para describir el conocimiento sobre el dominio en el que seenmarca dicha tarea. Ello conlleva la descripcion de los sımbolos y las palabras (combinacionespermitidas de sımbolos) que se utilizaran para representar las construcciones del lenguaje naturalde forma no ambigua y de modo que quede reflejado el grado de analisis pretendido. Este aspectose recoge mediante lo que se denomina lenguaje formal que definimos en esta seccion.

En adelante, llamaremos alfabeto a un conjunto numerable de sımbolos a. Un lenguaje L sobre a

es un subconjunto no vacıo del lenguaje universal sobre a, es decir

L ⊆ a∗ =

n∈N

an

Llamaremos a los elementos de L palabras o formulas bien formadas (en adelante, fbfs). Ası pues,un lenguaje L viene determinado por:

(i) Un conjunto numerable, a, de sımbolos, llamado alfabeto del lenguaje.

(ii) Un conjunto de reglas de formacion que determinan que cadenas de sımbolos del alfabe-to son palabras o fbfs del lenguaje. Estas reglas de formacion constituyen la gramatica osintaxis del lenguaje.

Si ambos conjuntos estan definidos sin hacer referencia alguna al significado de los sımbolos, ellenguaje se denomina lenguaje formal.

eer r Puesto que el alfabeto a es numerable, podemos asegurar que el cardinal del lenguaje universalsobre a es infinito numerable, es decir, |a∗| = ℵ0, en consecuencia, podemos asegurar que elnumero de palabras o fbfs de cualquier lenguaje, L, sobre a es, a lo sumo infinito numerable, esdecir, |L| ≤ ℵ0

El estudio de los lenguajes formales tiene un papel destacado en la construccion de compiladorespara lenguajes de programacion. En efecto, habitualmente, la sintaxis de un lenguaje de progra-macion viene dada como una gramatica, es decir, mediante un conjunto de reglas que describenque programas son sintacticamente lıcitos. Por ejemplo, en el lenguaje Pascal, las declaraciones ifvienen definidas por la regla

if-declaracion := if-expresionthen-declaracion[else-declaracion]

Las propiedades de estas gramaticas se estudian en el marco de los lenguajes formales.

eer r Adviertase que diversos lenguajes pueden tener el mismo alfabeto (su diferencia la establecensus diferentes reglas de formacion).

Ejemplo 2.1

1. Dado el conjunto a = ♥,, definimos el siguiente lenguaje L1 sobre a:

(i) ♥ y , son fbfs de L1.

Page 34: Cur So Bueno Logic A

26 CAPITULO 2. LOGICA Y COMPUTACION

(ii) Si α es una fbf de L1 entonces ♥♥α es tambien una fbf de L1.

(iii) Si α es una fbf de L1 entonces α es tambien una fbf de L1.

Por lo tanto, ♥♥♥ y ♥♥ son palabras de L1 y ♥♥ no es una palabra de L1.

2. El lenguaje MIU: Dado el conjunto a = M, I, U, L2 = a∗ es un lenguaje sobre a. Es decir,

cualquier cadena finita que consta de los sımbolos M , I, y U es una palabra de L2.

3. El lenguaje mg : Dado el conjunto a = −,m, g, L3 ⊆ a∗ es el lenguaje sobre a definido como

sigue: Las fbfs son las cadenas de a que satisfacen

- su primer y ultimo sımbolo es “−”.

- tanto “m” como “g” intervienen exactamente una vez en la cadena y la ocurrencia de“m” es anterior a la ocurrencia de “g”

Por lo tanto, −−−mg −− y −m−−− −g− son palabras de L3 y las cadenas m− −g− y−m−−g −−m− no son cadenas de L3.

Lenguaje y Metalenguaje

A un lenguaje formal se le denomina lenguaje objeto y al lenguaje utilizado para describirlose le denomina metalenguaje. La logica utiliza como metalenguaje el lenguaje natural, la teorıaintuitiva de conjuntos. . . .

Ejemplo 2.2 Cuando en el lenguaje mg (introducido en el ejemplo anterior 2.1) utilizamos ex-presiones como: “sea αmβ g γ una fbf del lenguaje”, tenemos que ser conscientes de que α, β yγ no son sımbolos del lenguaje (recordemos que solo −,m y g lo son), sino que son sımbolos delmetalenguaje. Una cadena como αmβ g γ, la utilizamos para representar cualquier fbf del lenguajey en ella α, β y γ denotan cadenas de guiones. Por lo tanto, (de acuerdo con la definicion dellenguaje mg) tendremos que poner una restriccion a α y β: que ambas sean cadenas no vacıas deguiones (sin embargo, β sı puede ser una cadena vacıa de guiones).

2.3.2. La Semantica

En la logica clasica proposicional que vamos a considerar en este texto, la semantica tiene comofin dar significado a las fbfs del lenguaje a partir de su estructura sintactica y establecer la nocion(semantica) de deduccion.

Cuando ponemos en relacion las fbfs del lenguaje con los entes (concretos o abstractos) por ellasdesignados, a los que consideramos sus significados o valores semanticos, damos el paso de la sintaxisa la semantica. Establecer esta relacion requiere como herramientas los conceptos de interpretacion,modelo, . . . , que vamos a introducir a continuacion.

Definicion 2.1 Dado un conjunto de valores semanticos o significados, S, una interpretacion,I, para un lenguaje L es una funcion que asocia un significado o valor semantico a cada fbf de L,es decir, una interpretacion es una aplicacion I : L −→ S.

El problema en estudio, el ambito en el que queramos razonar, determinara un subconjunto, D ⊆S que “destaca” un subconjunto de valores semanticos. A este subconjunto, D, se le denominaconjunto de los valores semanticos (o significados) destacados. Como veremos, sera esteconjunto el que nos permitira introducir el concepto de razonamiento valido.

Page 35: Cur So Bueno Logic A

2.3. EXPECTATIVAS Y LIMITACIONES DE LA LOGICA EN COMPUTACION 27

En la logica clasica, el conjunto de valores semanticos es verdad, falsedad y “verdad” es el valorsemantico destacado.

Ası pues, cada interpretacion nos permite una “lectura”de las fbfs del lenguaje formal, le asigna un“significado” a cada fbf. Denotaremos por I el conjunto de interpretaciones consideradas, es decir,I ⊆ SL. En definitiva, I es el conjunto de posibles “lecturas” que consideramos para las palabrasdel lenguaje.

Dado un lenguaje formal L, a una terna (S,D,I) se le denomina una semantica para L.

Para establecer la nocion de razonamiento valido, nos interesa conocer que interpretacion “lee”o “interpreta” la fbf con un valor semantico destacado:

Definicion 2.2 Sea L un lenguaje formal y (S,D,I) una semantica para L.

Una interpretacion, I ∈ I, es un modelo para una fbf A del lenguaje L, si asigna a A unvalor destacado, es decir, si I(A) ∈ D. El conjunto de modelos de A se denota Mod(A) y nosdetalla toda la informacion contenida en A, todas las formas posibles de “modelizarla”.

Una interpretacion, I ∈ I, es un contramodelo para una fbf A del lenguaje L, si asigna aA un valor no destacado, es decir, si I(A) 6∈ D. El conjunto de contramodelos de A se denotaContramod(A).

Una interpretacion, I ∈ I, es un modelo para un conjunto de fbfs Ω ⊆ L del lenguajeL si es un modelo de todas y cada una de las fbfs de Ω, es decir, I(A) ∈ D para toda A ∈ Ω(I asigna a todas la fbfs en Ω un valor destacado). El conjunto de modelos de Ω se denotaMod(Ω).

Una interpretacion, I ∈ I, es un contramodelo modelo para un conjunto de fbfs Ω dellenguaje L si es un contramodelo de alguna fbf de Ω, es decir, existe A ∈ Ω tal que I(A) 6∈ D(I asigna a alguna fbf en Ω un valor no destacado). El conjunto de contramodelos de Ω sedenota Contramod(Ω)

Definicion 2.3

Una fbf, A ∈ L se dice modelizable o satisfacible si existe al menos una interpretacionI ∈ I tal que I(A) ∈ D, es decir, Mod(A) 6= ∅.

En consecuencia, una fbf, A ∈ L, es no modelizable o insatisfacible si para toda inter-pretacion I ∈ I se tiene que I(A) 6∈ D, es decir, Mod(A) = ∅.

Un conjunto de fbfs, Ω ⊆ L, se dice modelizable o satisfacible si tiene al menos un modelo,es decir, Mod(Ω) 6= ∅.

Un conjunto de fbfs, Ω ⊆ L, es no modelizable o insatisfacible si no tiene modelos, esdecir, Mod(Ω) = ∅.

Una vez dada la nocion de modelo, se dispone de todo lo requerido para establecer las nociones devalidez, e inferencia semantica (que entendemos al decir que unas fbfs son deducidas o derivadasde otras).

Page 36: Cur So Bueno Logic A

28 CAPITULO 2. LOGICA Y COMPUTACION

Definicion 2.4

Una fbf, A ∈ L, se dice valida, denotado |= A, si toda interpretacion es un modelo para A,es decir, Mod(Ω) = I.

Dado un conjunto de fbfs Ω ⊆ L y una fbf C ∈ L, se dice que C se deriva, deduce o infieresemanticamente de Ω, denotado Ω |= C, si todo modelo para Ω es un modelo para C, esdecir, Mod(Ω) ⊆Mod(C).

Denominamos teorıa de modelos para un lenguaje L, a un par (L,S), donde S = (S,D,I) esuna semantica para L, es decir:

S es el conjunto de valores semanticos,

D ⊆ S el conjunto de valores destacados, y

I el conjunto de interpretaciones

De nuevo, en el campo de la programacion, la formalizacion de la semantica de programas permite,dada una especificacion formal de la computacion deseada, demostrar la correccion de un programarespecto a la especificacion.

Ejemplo 2.3 Vamos a dar una teorıa de modelos para el lenguaje mg del ejemplo 2.1.

Definimos el conjunto de valores semanticos como S = (n,m, l) | n,m, l ∈ N y el conjunto devalores semanticos destacados D, como el siguiente subconjunto de S:

D = (n,m, l) ∈ S | n + m = l

Ası pues, (3, 24, 27) ∈ D (es un valor semantico destacado) y (3, 24, 21) 6∈ D (es un valor semanticono destacado).

Ahora definimos el conjunto de interpretaciones.

I = Ik | k ∈ N; Ik : L3 −→ S

donde Ik(αmβ gδ) = (a, b, c), con a = k × long(α), b = k × long(β) y c = k × long(δ).

Con esta definicion, se tiene que I6(−−−m−g−−) = (18, 6, 12), I3(−−−m−g−−−−) = (9, 3, 12)yI0(−−−m− g −−) = (0, 0, 0).

Tenemos pues que:

La interpretacion I0 es un modelo para − − −m − g − −, porque I0(− − −m − g − −) =(0× 3, 0× 1, 0 × 2) = (0, 0, 0) ∈ D,

La interpretacion I3 no es un modelo para − − −m− g − −, porque I3 es un contramodelopara ella. En efecto, I3(−−−m− g −−) = (9, 3, 6) 6∈ D (9 + 3 6= 12), y

La fbf −−−m− g −−−− es valida, ya que para todo k ∈ N, se tiene que

Ik(−−−m− g −−−−) = (3k, k, 4k) ∈ D (3k + k = 4k)

Todas las fbfs son modelizables, ya que I0 es un modelo para toda fbf del lenguaje.

Page 37: Cur So Bueno Logic A

2.3. EXPECTATIVAS Y LIMITACIONES DE LA LOGICA EN COMPUTACION 29

eer r Conviene destacar que el conjunto de fbfs modelizables y el conjunto de fbfs validas depende decada uno de los elementos de la terna (S,D, I).

Consideremos de nuevo el ejemplo anterior. Mantenemos el mismo conjunto de valores semanti-cos, S = (n,m, l) | n,m, l ∈ N, y el mismo conjunto de valores semanticos destacadosD = (n,m, l) ∈ S | n + m = l. Pero ahora consideramos el conjunto de interpretaciones

I ′ = Ik | k ∈ N, k 6= 0; Ik : L3 −→ S

donde cada Ik se define de igual modo, es decir, Ik(αmβ gδ) = (a, b, c), con a = k × long(α),b = k × long(β) y c = k × long(δ).

Ahora tenemos que:

La fbf − − −m − g − − es insatisfacible, es decir, no tiene ningun modelo, porque paratodo k 6= 0, se tiene que Ik(−−−m− g −−) = (3k, k, 2k) 6∈ D, ya que 3k + k 6= 2k.

La fbf −−−m− g −−− − es valida, ya que para todo k ∈ N, k 6= 0, se tiene que

Ik(− −−m− g −−−−) = (3k, k, 4k) ∈ D (3k + k = 4k)

2.3.3. Teorıa de la Demostracion

Especificar un “mecanismo deductivo” para el lenguaje formal, es decir, un mecanismo que permitaobtener una fbf de otras, sin hacer referencia a interpretacion alguna, nos lleva a la teorıa de lademostracion.

En particular, en los llamados Sistemas Axiomaticos sobre un lenguaje L, el mecanismo deduc-tivo viene dado por:

1. Un conjunto finito o infinito numerable, Axiom, de fbfs de L, llamadas axiomas (es decir,Axiom ⊆ L).

2. Un conjunto de reglas de inferencia, deduccion o transformacion que establecen cuandouna fbf de L es “consecuencia inmediata” de una o varias fbfs de L.

Los axiomas pueden ser considerados como reglas de inferencia sin hipotesis. Las reglas de inferenciasuelen ser introducidas como “patrones formales”, como “esquemas” y si bien su eleccion vienedictada por la semantica, en su uso se realiza una abstraccion total de los significados, es decir, semanipulan las componentes del lenguaje de un modo puramente sintactico. 2

Definicion 2.5 Una demostracion en un sistema axiomatico, SAxiom es una secuencia finita defbfs del lenguaje formal asociado, en la cual cada fbf es o un axioma de SAxiom o una consecuenciainmediata (segun dictan las reglas de inferencia) de una o mas fbfs precedentes en la secuencia. Sila ultima fbf de una demostracion es A, se dice que la secuencia es una demostracion de A enSAxiom.

Definicion 2.6 Una fbf, A, se dice es un teorema en un sistema axiomatico SAxiom, denotado⊢SAxiom

A (o simplemente ⊢ A, si no hay lugar a confusion), si existe para ella una demostracion.Obviamente, los axiomas de SAxiom son teoremas de SAxiom. Podemos caracterizar el conjunto delos teoremas como un conjunto minimal de fbfs que contiene al conjunto de los axiomas y es cerradopara las reglas de inferencia.

2El nivel puramente sintactico es la base de la fuerte conexion entre Logica y Computacion, ya que en esta ultima,los procesos simbolicos juegan un destacado papel.

Page 38: Cur So Bueno Logic A

30 CAPITULO 2. LOGICA Y COMPUTACION

eer r Ası pues, los teoremas son los productos manufacturados de una “fabrica” peculiar, en la quela materia prima son los axiomas y las “maquinas” las reglas de inferencia.

eer r De la definicion anterior se tiene que en una demostracion de longitud n, si m < n y consideramoslos m primeros elementos de la secuencia, tenemos una demostracion del m-esimo elemento dela secuencia. Por tanto todas las fbfs de una demostracion son teoremas.

Definicion 2.7 Una deduccion de una fbf A desde un conjunto Ω de fbfs en un sistema axiomaticoSAxiom, denotado Ω ⊢SAxiom

A, es una secuencia finita de fbfs del lenguaje formal asociado, en lacual cada fbf es o un axioma de SAxiom, una fbf de Ω o una consecuencia inmediata (segun dictanlas reglas de inferencia) de una o mas fbfs precedentes en la secuencia. Las fbfs de Ω se suelenllamar hipotesis o premisas, en cuyo caso decimos que A es una conclusion de las hipotesis.

eer r Ası pues, en una deduccion, los productos manufacturados por una deduccion en nuestra peculiar“fabrica”, utilizan como materia prima no solo los axiomas, sino tambien las hipotesis, es decir,las fbfs de Ω (las “maquinas” siguen siendo las reglas de inferencia).

eer r Es obvia, por tanto la relacion existente entre demostraciones y deducciones. Si en un sistemaaxiomatico SAxiom se tiene que Ω ⊢ A entonces toda deduccion de A desde Ω es una demostracionde A en un sistema S ′Axiom tal que S ′Axiom tiene las mismas reglas de inferencia que S y susaxiomas son los axiomas de SAxiom junto con todas las fbfs de Ω.

La nocion de demostracion como deduccion logica de un teorema a partir de un conjunto deaxiomas fue divulgada por primera vez por Euclides en sus Elementos , sin embargo no se disponede una definicion rigurosa hasta Leibniz en el siglo XVII.

Propiedad de Monotonıa

En el Ejercicio 3 se propone demostrar una propiedad destacada del concepto de deduccion, lapropiedad de monotonıa:

Si Ω ⊆ Ω′ y Ω ⊢ A entonces Ω′ ⊢ A.

Es decir: “si aumentamos el conjunto de hipotesis, se mantiene o aumenta el conjunto de conclu-siones”. Las logicas que poseen esta propiedad se denominan logicas no monotonas. La Logicaclasica es monotona. Sin embargo, existen logicas no clasicas que no son monotonas y que sonutiles (mas aun, imprescindibles) para modelizar el razonamiento del sentido comun, en el que enocasiones hemos de “revisar” nuestras conclusiones al aumentar nuestro conocimiento.

La relacion de consecuencia deductiva, ⊢, que acabamos de definir, tiene tambien otras dos propie-dades inmediatas:

⊢ es reflexiva, es decir: para toda fbf A ∈ Ω se tiene que Ω ⊢ A

⊢ es transitiva, es decir: Si Ω ⊢ A y A ⊢ B, entonces Ω ⊢ B

Ejemplo 2.4 Definamos un sistema axiomatico sobre el lenguaje MIU (dado en el ejemplo 2.1),al que tambien llamaremos el sistema MIU:

Axioma: MI

Reglas de inferencia:

Page 39: Cur So Bueno Logic A

2.3. EXPECTATIVAS Y LIMITACIONES DE LA LOGICA EN COMPUTACION 31

R1. De una fbf αI, se tiene como consecuencia inmediata αIU .

R2. De una fbf Mα, se tiene como consecuencia inmediata Mαα.

R3. De una fbf αIIIβ, se tiene como consecuencia inmediata αUβ.

R4. De una fbf αUUβ, se tiene como consecuencia inmediata αβ.

donde α y β representan cualquier cadena de sımbolos del alfabeto M, I, U (incluida la cadenavacıa).

Veamos que MUIUI es un teorema del sistema axiomatico MIU. Para comprobarlo, todo lo quetenemos que hacer es “dar una demostracion”, es decir, mostrar como “generarlo a partir del axiomaMI y las reglas de inferencia: :

1. MI Ax.1

2. MII De 1. y R2

3. MIIII De 2. y R2

4. MUI De 3. y R3

5. MUIUI De 4. y R2

Ahora podemos afirmar que “MUIUI es un teorema del Sistema MIU”. Este enunciado noes un teorema de MIU, sino una afirmacion verdadera acerca del sistema MIU, es decir, es unmetateorema acerca de MIU.

Con este ejemplo, reflejamos las acciones en el sistema como un juego puramente sintactico, sinpretender reflejar aspecto alguno de la realidad, sin esperar que los teoremas tengan ningun “sig-nificado” (no hemos dotado al lenguaje MIU de ninguna semantica).

Ejemplo 2.5 Definamos ahora un sistema axiomatico sobre el lenguaje mg (dado en el ejemplo 2.1),al que llamamos asimismo el sistema mg:

Axiomas: Toda fbf de mg que responde al esquema αm− gα− es un axioma.

Regla de inferencia: De una fbf de mg que responde al esquema αmβgδ, se tiene como conse-cuencia inmediata αmβ − gδ−.

A diferencia de MIU, para el lenguaje mg, hemos definido una semantica y un sistema axiomatico.Los tres aspectos expuestos hasta ahora (lenguaje, semantica y teorıa de la demostracion), suelenser agrupados diciendo que disponemos de una teorıa formal.

Definicion 2.8 Sea una teorıa formal T = (L, (S,D,I), SAxiom), donde (S,D,I) es una semanti-ca para el lenguaje L y SAxiom es un sistema axiomatico para el lenguaje L. Una interpretacion,I ∈ I es un modelo para la teorıa T , si es un modelo para el conjunto de teoremas de T .

En una teorıa formal, la teorıa de modelos (descrita por (S,D,I)) y la teorıa de la demostracion(descrita por SAxiom), se desarrollan con el objetivo (no siempre alcanzable) de que coincidan, esdecir, de modo que si una fbf es derivable semanticamente tambien sea derivable sintacticamente,y viceversa. Esta interaccion es precisamente lo que hace de la logica una herramienta atractiva.

Las propiedades que relacionan una teorıa de modelos y una teorıa de la demostracion sobre unlenguaje formal son referidas como correccion de la teorıa (la derivabilidad sintactica asegura

Page 40: Cur So Bueno Logic A

32 CAPITULO 2. LOGICA Y COMPUTACION

la derivabilidad semantica) y completitud de la teorıa (la derivabilidad semantica asegura laderivabilidad sintactica).

Definicion 2.9 Una teorıa formal se dice correcta si cumple que

Si Ω ⊢ A entonces Ω |= A

En particular, en una teorıa correcta todo teorema es una fbf valida.

Una teorıa formal se dice completa si cumple que

Si Ω |= A entonces Ω ⊢ A

En particular, en una teorıa completa toda fbf valida es un teorema.

eer r Conseguir una teorıa correcta es un objetivo facilmente alcanzable, basta elegir como axiomasfbfs validas y exigir que las reglas de inferencia “respeten” la validez, es decir, que las “con-secuencias inmediatas” de fbfs validas sean fbfs validas 3. Por el contrario, la completitud esmas difıcil ya que hemos de asegurar que no hemos olvidado ningun axioma, ni ninguna reglanecesaria para la completitud. Aun mas, la completitud no siempre es alcanzable, ello se debea que con ella se pretende (¡nada menos!) caracterizar sintacticamente la validez, es de-cir caracterizar sintacticamente nuestra comprension (recogida en la semantica) sobre ciertosaspectos del mundo real; lo cual es a veces imposible, por excesivamente ambicioso.

Ejemplo 2.6

- El lenguaje mg dado en el ejemplo 2.1, con la semantica dada en el ejemplo 2.3 y el sistemaaxiomatico dado en el ejemplo 2.4, es una teorıa correcta y completa.

- Como probaremos mas adelante, tanto la logica clasica proposicional como la logica de pre-dicados de primer orden, disponen de sistemas axiomaticos correctos y completos.

- El Teorema de incompletitud de Godel afirma que no existe ningun sistema axiomatico enel que todas las verdades de la teorıa de numeros sean demostrables, es decir, no es posibleaxiomatizar la Aritmetica.4

Aun cuando dispongamos de una teorıa completa, desafortunadamente, la mayorıa de los teoremasde completitud para un sistema de demostracion dado, prueban que si una fbf (o inferencia) esvalida, existe para ella una demostracion (o deduccion) en el sistema, pero no indican como encon-trarla. Consecuentemente, para hacer de la logica una herramienta no solo atractiva sino tambienefectiva, es preciso considerar un cuarto aspecto, el aspecto computacional.

2.3.4. La Automatizacion de las Deducciones

Esta componente es tambien de naturaleza sintactica y esta estrechamente ligada al aparato de-ductivo. Es la componente intrınsecamente computacional, ya que pretende disponer de un proce-dimiento de decision (algoritmo) tal que, dada una fbf, A, (respectivamente, un conjunto de fbfs,Ω, y una fbf C), decida en un numero finito de etapas si A es o no valida (respectivamente, si C sededuce o no de Ω).

3Si en nuestra particular fabrica la materia prima (Axiomas) es de color azul y las maquinas (Reglas de Inferencia)respetan el color, los productos fabricados (Teoremas) seran azules.

4Mas precisamente, el Teorema de incompletitud de Godel afirma que toda axiomatizacion recursivamente enu-merable y consistente de la Aritmetica es incompleta.

Page 41: Cur So Bueno Logic A

2.3. EXPECTATIVAS Y LIMITACIONES DE LA LOGICA EN COMPUTACION 33

eer r Nuestro objetivo es encontrar procedimientos de decision. Los problemas en los que estamosinteresados son problemas de decision, es decir, problemas en los que sea cual sea la inferenciade entrada, la salida sea “SI” o “NO”.

La busqueda de tales procedimientos se denomina en la bibliografıa Demostracion Automatica deTeoremas, y a los algoritmos se les denomina ATPs (Automated Theorem Provers).

Si una logica dispone de un ATP, se dice que es decidible. La logica proposicional clasica esdecidible, pero Church y Turing demostraron independientemente en 1936 que la logica clasica depredicados de primer orden no lo es.

En la logica proposicional clasica, como veremos a lo largo de los siguientes capıtulos, validez,demostracion y computacion son equivalentes. Para la logica clasica de predicados de primer orden,la demostracion automatica de teoremas solo podra aspirar a encontrar procedimientos llamadosde semidecision, es decir, procedimientos que garantizan la respuesta afirmativa si su entrada esuna fbf (respectivamente, una deduccion) valida pero, cuando la entrada no es valida puede darrespuesta o no terminar. Una logica tal se dice semidecidible.

Una medida de la eficiencia de un algoritmo es su complejidad computacional la cual, dadauna entrada, E, se expresa mediante una funcion que relaciona el tamano de la entrada, T (E), yel numero de etapas o recursos de computacion, R(E), requeridas para proporcionar la salida. Unavez determinados T (E) y R(E), es preciso establecer la relacion existente entre ellas.

La eficiencia de los procedimientos en que estamos interesados puede depender de muchos factores:

El lenguaje en el que las fbfs han de ser expresadas.

El conjunto de reglas de inferencia disponibles en el metodo.

La tecnica de eleccion de una regla en el conjunto posible de estas, y la eleccion de una o masfbfs a la que aplicar la regla.

El espacio requerido por el metodo para efectuar una demostracion.

La posibilidad de usar teoremas auxiliares en la demostracion.

Pero de nuevo, en cuanto a la consecucion de eficiencia, nos encontramos con una limitacion:

Aunque los computadores actuales son capaces de ejecutar con rapidez multitud de complejoscalculos, existen problemas cuya complejidad es tal que requieren, bien excesivo tiempo o bienexcesivo espacio de memoria para ser resueltos con un computador. Esto significa que, aunque sedisponga de algoritmos para resolverlos, todos ellos requieren (en el peor caso 5) una cantidadexponencial de espacio de memoria y/o un numero exponencial de etapas en terminos del tamanodel problema. Tales problemas son referidos como intratables, en contraposicion a los problemasdenominados tratables para los que se dispone de algoritmos que, para todas las entradas, requierena lo sumo una cantidad polinomica de tiempo y memoria.

Restringiendonos a la logica, incluso para una logica decidible como la logica clasica proposicional,no se conoce si el problema de comprobar la satisfacibilidad de una fbf (existencia de un modelopara la fbf), referido como SAT, o de comprobar la validez de una fbf, referido como TAUT, 6 sontratables, pero se conjetura que no lo son.

5es decir el valor maximo de R(E) para cada T (E)6Se denomina TAUT, debido a que las fbfs validas en la logica clasica proposicional se llaman tautologıas.

Page 42: Cur So Bueno Logic A

34 CAPITULO 2. LOGICA Y COMPUTACION

Podemos concluir pues que la demostracion automatica de teoremas ha de centrarse en la busquedade ATPs que solo tomen un tiempo excesivo para determinar la validez de una fbf o inferencia encasos excepcionales, y que se ejecuten satisfactoriamente en la mayorıa de las entradas.

Page 43: Cur So Bueno Logic A

2.4. EJERCICIOS 35

2.4. Ejercicios

1. Defina los lenguajes L1 y L3 del ejemplo 2.1, como conjuntos inductivos libremente generados.Describa el arbol asociado a cada fbf de L1 y L3 .

2. Razone si son o no ciertas las afirmaciones siguientes:

- MUIIU es un teorema del sistema MIU.

- MU es un teorema del sistema MIU.

- UMII es un teorema del sistema MIU.

- Todo teorema del sistema MIU tiene como primer sımbolo M .

3. Demuestre que en un sistema axiomatico son ciertas las siguientes afirmaciones:

i) (Propiedad de monotonıa) Si Ω ⊆ Ω′ y Ω ⊢ A entonces Ω′ ⊢ A.

ii) (Propiedad de Compacidad) Si Ω ⊢ A entonces existe ∆ finito tal que ∆ ⊆ Ω y ∆ ⊢ A

iii) Si Ω ⊢ A y existe Ω′ tal que para toda fbf B ∈ Ω se tiene que Ω′ ⊢ B, entonces Ω′ ⊢ A.

4. Considere el lenguaje mg dado en el ejemplo 2.1, con la semantica descrita en el ejemplo 2.3y el sistema axiomatico descrito en el ejemplo 2.4, ¿es una teorıa correcta? ¿es completa?

5. Sea Vprop = p, q, r, . . . , p0, q0, r0, . . . , pn, qn, rn, . . . , , y sea S = (, ), [, ].

Sea O1 = ¬,∨,∧,→,↔ y a1 = Vprop ∪ S ∪O1.

Sea O2 = 2,3 y a2 = Vprop ∪ S ∪O1 ∪O2.

considere los lenguajes:7

a) L1 ⊆ a∗1 en el que sus elementos son elementos de Vprop, o bien de la forma (X), o de

la forma [X] para X ∈ L1 o bien de la forma ¬X donde X ∈ L1 o de la forma (X ∗ Y )donde X,Y ∈ L1 y ∗ ∈ ∨,∧,→,↔.

b) L2 ⊆ a∗2 en el que sus elementos cumplen las caracterısticas de los de L1 pero ademas

puede contener elementos de la forma ∗X donde X ∈ L2 y ∗ ∈ 2,3.

A partir del conjunto base Vprop, determine un conjunto de constructores definidos a partirde dependientes de O1 y de O1 ∪O2 respectivamente, para expresar L1 y L2 como clausurasinductivas libremente generadas.

6. Se considera el conjunto de valores semanticos S = 0, 12 , 1.

a) ¿Cuantas funciones f : S → S (de aridad uno) pueden definirse sobre S? Es decir,¿cuantos operadores monarios distintos pueden definirse sobre una logica trivaluada?

b) ¿Cuantas de las funciones anteriores no son constantes?

c) ¿Cuantas funciones f : S × S → S (de aridad dos) pueden definirse sobre S? Es decir,¿cuantos operadores binarios distintos pueden definirse sobre una logica trivaluada?

d) Generalice los resultados anteriores para el caso en el que el cardinal de S sea n, esto es,para una logica n-valuada.

7Los lenguajes L1 y L2 son los lenguajes de la logica proposicional clasica y la logica modal proposicional clasicarespectivamente.

Page 44: Cur So Bueno Logic A

36 CAPITULO 2. LOGICA Y COMPUTACION

Page 45: Cur So Bueno Logic A

Capıtulo 3

Logica Proposicional

En este capıtulo presentamos dos de los aspectos destacados en el tema anterior:

El lenguaje de la logica proposicional, y

la semantica de la logica proposicional.

3.1. El Lenguaje Lprop de la Logica Proposicional

Como ya hemos indicado, un lenguaje logico consta de un alfabeto de sımbolos y de la defini-cion de un conjunto de cadenas de sımbolos de dicho alfabeto llamadas formulas bien formadas(abreviadamente fbfs).

El tipo mas simple de lenguaje logico es el que corresponde a la logica clasica proposicional la cual,a fin de establecer criterios sobre la exactitud de razonamientos, formaliza la parte mas elementalde nuestro lenguaje natural del modo mas simple. Concretamente:

Considera solo las frases declarativas, llamadas proposiciones o enunciados, a las que esposible asignar un valor de verdad o falsedad y ningun otro, es decir, es bivaluada, quedandoeste valor completamente determinado por el valor de verdad o falsedad de los enunciadossimples que la componen y las partıulas no, o, y, si . . . entonces y si y solo si, utilizadas comoelementos de enlace.

La asignacion de valores de verdad o falsedad a los enunciados se realiza sin recurrir a conside-raciones de contexto alguno y sin considerar la estructura interna de los enunciados simples. 1

Podemos destacar dos principios relevantes de la logica proposicional (aunque no exclusivos deella):

Principio de contradiccion: Un enunciado nunca es verdadero y falso a la vez.

Principio del tercero excluido: Un enunciado es verdadero o falso, no existe una terceraposibilidad.

1es decir, en las frases simples del lenguaje natural, que podrıamos describir como “las mınimas frases capaces detransmitir informacion”, se contemplan con el nivel mas sencillo de analisis: los elementos que componen internamenteun enunciado simple, el sujeto y el predicado, son irrelevantes para la logica proposicional clasica.

37

Page 46: Cur So Bueno Logic A

38 CAPITULO 3. LOGICA PROPOSICIONAL

En cuanto al tipo de enunciados contemplados, segun lo descrito, los siguientes enunciados no sonconsiderados por la logica clasica proposicional:

- ¿Esta aquı Luis? (no es una frase declarativa).

- Esta ciudad es preciosa (hace referencia a un lugar no nombrado).

- Ella es complaciente con el (hace referencia a personas no nombradas).

- !Silencio! (expresa una orden).

- Ojala estuviera ya de vacaciones (expresa un deseo).

- Lo bueno si breve, dos veces bueno (expresa una opinion a la que no podemos asignarle elvalor de verdad o falsedad).

Por el contrario, los siguientes frases pueden ser consideradas como frases simples por la logicaclasica proposicional:

- Algunos mamıferos estan en peligro de extincion.

- En el futuro habra mas oportunidades de ocio.

- Es necesario que llueva.

- Madrid es la capital de Espana.

- La valvula de escape esta abierta.

- Se ha creado un fichero de actualizacion.

Vamos pues a conocer la logica mas simple, la base de cualquier otra logica. Sin embargo, no esesta simplicidad su unico interes, ya que existen aplicaciones computacionales para las que estalogica resulta ser una herramienta adecuada. Por ejemplo, si bien la logica clasica proposicional nobasta para la especificacion y analisis de requerimientos de sistemas complejos, sı es suficiente enel caso de sistemas relativamente pequenos: la simplicidad de esta logica permite especificacionesconcisas, eliminar con facilidad las posibles contradicciones introducidas en un primer intento deespecificacion, clarificar y eliminar ambiguedades y razonar facilmente sobre el sistema.

Una aplicacion inmediata de la logica clasica proposicional se puede ver en el campo de los compu-tadores digitales. Ello es debido a que a las situaciones de paso o no paso de corriente, podemosasociarles los valores 0 y 1 y que, convencionalmente, se asocian elementos denominados puertaslogicas a determinados circuitos elementales, y el resto de los circuitos se disenan (diseno logico)por composicion de estas puertas logicas.

Definicion 3.1 El lenguaje Lprop de la logica proposicional clasica se define como sigue:

Alfabeto: El alfabeto, aprop del lenguaje Lprop consta de

Un conjunto numerable de sımbolos o variables proposicionales

Vprop = p, q, r, . . . , p1, q1, r1, . . . , pn, qn, rn, . . .

Con estos sımbolos representaremos las frases simples del lenguaje natural. En cada fraseintervendran unicamente un numero finito de este conjunto de sımbolos proposicionales. Larazon para considerar este conjunto infinito es que el numero de frases simples que puedenintervenir en un razonamiento no es limitado.

Page 47: Cur So Bueno Logic A

3.1. EL LENGUAJE LPROP DE LA LOGICA PROPOSICIONAL 39

Los sımbolos de constante, ⊤ y ⊥.

Los sımbolos ¬, ∨, ∧, → y ↔, llamados conectivas u operadores logicos.

Los sımbolos de puntuacion “(”,“)”.

Formulas bien formadas de Lprop (en adelante, fbfs): El lenguaje Lprop es la clausura induc-tiva libremente generada del conjunto base Vprop ∪ ⊥,⊤ para los constructores C¬, C∧, C∨, C→ yC↔, definidos como sigue:

Para dos cadenas X e Y cualesquiera del alfabeto aprop, definimos:

C¬(X) = ¬X

C∧(X,Y ) = (X ∧ Y )

C∨(X,Y ) = (X ∨ Y )

C→(X,Y ) = (X → Y )

C↔(X,Y ) = (X ↔ Y )

⊤ se lee “verdad” y ⊥ se lee “falsedad” y, si A y B son fbfs,

¬A se lee “no A” y se llama negacion de A;

A ∧B se lee “A y B” y se llama conjuncion de A y B;

A ∨B se lee “A o B” y se llama disyuncion de A y B;

A → B se lee “Si A entonces B” y se llama implicacion material con antecedente A yconsecuente B;

A↔ B se lee “A si y solo si B” y se llama biimplicacion material de A y B.

El lector puede comprobar que Lprop es una clausura inductiva libremente generada.

eer rPor el Principio de Induccion Estructural, para demostrar que todas las fbfs tienen la propiedadP basta demostrar que:

1. Caso base: toda fbf A ∈ Vprop ∪ ⊤,⊥ tiene la propiedad P

2. Pasos inductivos:

a) si la fbf A tiene la propiedad P, entonces ¬A tiene la propiedad P.

b) si las fbfs A y B tienen la propiedad P, entonces A ∧ B, A ∨ B, A → B y A ↔ Btienen la propiedad P.

Page 48: Cur So Bueno Logic A

40 CAPITULO 3. LOGICA PROPOSICIONAL

eer r Recordemos de nuevo que, como destacamos en el tema anterior al describir los lenguajes for-males en general, el cardinal del lenguaje universal sobre aprop es infinito numerable, es decir,|a∗prop| = ℵ0, en consecuencia, que el numero de palabras o fbfs de cualquier lenguaje, Lprop,sobre aprop es, a lo sumo infinito numerable, es decir, |Lprop| ≤ ℵ0

Usualmente, la definicion de las fbfs de Lprop se presenta en terminos menos formales como sigue:

El conjunto de las fbfs es el conjunto de cadenas sobre el alfabeto dado, aprop, determinado por lassiguientes condiciones:

1. Los sımbolos de proposicion (elementos de Vprop) son fbfs, llamadas fbfs atomicas.

2. ⊤ y ⊥ son fbfs.

3. Si A es una fbf entonces ¬A es una fbf.

4. Si A y B son fbfs entonces (A ∨B), (A ∧B), (A→ B) y (A↔ B) son fbfs.

5. Solo las cadenas obtenidas aplicando las reglas anteriores son fbfs.

Los sımbolos A y B usados en la definicion de fbfs no son sımbolos del lenguaje sino metasımbolos,es decir, sımbolos para hablar acerca el lenguaje. Las expresiones ¬A, (A → B), (A ∧ B), . . . noson, por lo tanto, fbfs sino “esquemas de fbfs”, de los que se obtienen fbfs por sustitucion de losmetasımbolos por fbfs. En todo lo que sigue siempre hablaremos de fbfs cuando en realidad se tratade esquemas de fbfs.

En la practica, para economizar parentesis en la escritura, se aceptan diversos convenios. Entreellos, el mas sencillo es el de omitir los parentesis inicial y final de toda fbf. Ası pues, escribiremosA→ B, A ∧B, etc. en lugar de (A→ B), (A ∧B), etc.

Ejemplo 3.1

La frase “Si no conseguimos terminar en media hora la tarea, uno de los dos sera despedidoy perderemos esta gran oportunidad”, se puede expresar en Lprop mediante la fbf:

¬p→ ((q ∨ r) ∧ s)

donde p simboliza “conseguimos terminar en media hora la tarea”, q simboliza “sere despe-dido”, r simboliza “seras despedido” y s simboliza “perderemos esta gran oportunidad”.

La frase “Es preciso descubrir rapidamente quien tiene oculto el botın, si no lo han sacado yadel paıs”, se puede expresar en Lprop mediante la fbf:

¬t→ u

donde t simboliza “lo han sacado ya del paıs”, u simboliza “es preciso descubrir rapidamentequien tiene oculto el botın”.

Definimos a continuacion las nociones de grado y de subformula de una fbf.

Page 49: Cur So Bueno Logic A

3.1. EL LENGUAJE LPROP DE LA LOGICA PROPOSICIONAL 41

Definicion 3.2

1. La funcion grado, gr : Lprop → N, que asigna a cada fbf A el numero de conectivas queintervienen en A, gr(A), se define recursivamente como sigue:

gr(A) = 0 si A ∈ Vprop ∪ ⊥,⊤gr(¬A) = 1 + gr(A)gr(A ∗B) = 1 + gr(A) + gr(B) si ∗ ∈ ∧,∨,→,↔

2. La funcion subformula, Sub : Lprop → 2Lprop, que asigna a cada fbf A ∈ Lprop el conjuntoSub(A) ∈ 2Lprop de todas sus subformulas, se define recursivamente como sigue:

Sub(A) = A si A ∈ Vprop ∪ ⊥,⊤Sub(¬A) = Sub(A) ∪ ¬ASub(A ∗B) = Sub(A) ∪ Sub(B) ∪ A ∗B si ∗ ∈ ∧,∨,→,↔

eer r Adviertase que en una misma fbf puede haber diversas ocurrencias de una misma subformula,como en A = ((p ∨ q)→ (r¬q)) → (¬q ↔ (p ∨ q), en la que las subformulas p, q y p ∨ q tienenmas de una ocurrencia.

Ejemplo 3.2 Dada la fbf A = (p ∨ ¬q)→ r tenemos que gr(A) = 3 y que

Sub(A) = (p ∨ ¬q)→ r, p ∨ ¬q, r, p, ¬q, q

La nocion de subformula tambien puede ser introducida como el cierre reflexivo y transitivo de larelacion “es subformula inmediata” definida en Lprop como sigue:

Si A ∈ Vprop ∪ ⊥,⊤, ninguna fbf es subformula inmediata de A.

A es subformula inmediata de ¬A.

A y B son las subformulas inmediatas de A ∗B.

3.1.1. Arbol Sintactico

Definicion 3.3 El arbol sintactico de una fbf A de Lprop, denotado TA, es el Σ-arbol (dondeΣ = aprop es el alfabeto para Lprop) definido recursivamente como sigue:

1. Si A = p con p ∈ Vprop ∪ ⊥,⊤ entonces TA es A

2. Si A = ¬B entonces TA es TB

¬

3. Si A = (B ∗ C) donde ∗ ∈ ∧,∨,→,↔ entonces TA es TB TC

∗@@

Page 50: Cur So Bueno Logic A

42 CAPITULO 3. LOGICA PROPOSICIONAL

Ejemplo 3.3 El arbol sintactico de la fbf A = ((p ∧ q)→ (¬p ∨ ¬¬q)) ∨ (q → ¬p) es

q

¬p

qp @@

q

→HHHH

@@¬

p

QQ

Q

¬¬@@

Definicion 3.4 La profundidad de una fbf, A, denotada pr(A), es la profundidad de su arbolsintactico TA.

eer r La profundidad de la formula A del ejemplo 3.3 es 5.

La profundidad de una formula es, en realidad, la longitud de la rama mas larga de su arbolsintactico (medida por el numero de arcos o enlaces entre nodos) y podemos definirla comosigue:

pr(A) = 0 si A ∈ Vprop ∪ ⊥,⊤pr(¬A) = 1 + pr(A)pr(A ∗B) = 1 + maxpr(A), pr(B) si ∗ ∈ ∧,∨,→,↔

3.2. Semantica para la logica clasica proposicional

Como hemos senalado en el capıtulo anterior, la semantica tiene como fin dar significado a las fbfsdel lenguaje a partir de su estructura sintactica y establecer la nocion (semantica) de deduccion.

Como en el caso general, tenemos que definir la terna (S,D,I). Para la logica clasica proposicional:

1. El conjunto de significados o valores semanticos es S = 0, 1.

2. El conjunto de valores semanticos destacados es D = 1

3. Nos queda pues definir el conjunto de interpretaciones, I, es decir, que subconjunto del con-junto total de todas las posibles asignaciones de significado: f : Lprop −→ 0, 1 considerala logica clasica proposicional. Los elementos de I constituyen el concepto basico sobre el quese define la semantica para el lenguaje Lprop y se denominan interpretaciones booleanas.Con estas interpretaciones pretendemos recoger que “el significado de ¬ es no”, “el significadode ∧ es y”, “el significado de ∨ es o”, concretamente el o no exclusivo de nuestro lenguajenatural, “el significado de → es si . . . entonces. . . ” y “el significado de ↔ es . . . si y solo si. . . ”.

Como hemos indicado, la logica clasica es veritativo-funcional, es decir, el significado de las fbfs noatomicas queda determinado por el de las fbfs atomicas que intervienen en ella. De aquı la definicionsiguiente:

Page 51: Cur So Bueno Logic A

3.2. SEMANTICA PARA LA LOGICA CLASICA PROPOSICIONAL 43

Definicion 3.5 Una interpretacion booleana, I, (en adelante, simplemente interpretacion) esuna funcion del conjunto Vprop ∪⊥,⊤ (fbfs atomicas) en el conjunto de valores de verdad 0, 1:

I : Vprop ∪ ⊥,⊤ → 0, 1 tal que I(⊥) = 0 e I(⊤) = 1

Dada una interpretacion I, la asignacion de un valor de verdad a una fbf arbitraria, A, se realizamediante la extension recursiva de I a Lprop, 2 a la que denotaremos tambien por I, obtenida alasignar a los constructores C¬, C∧, C∨, C→, C↔ las funciones sobre 0, 1, f¬, f∧, f∨, f→, f↔,dadas por la siguiente tabla:

x y f¬(x) f∧(x, y) f∨(x, y) f→(x, y) f↔(x, y)

1 1 0 1 1 1 11 0 0 0 1 0 00 1 1 0 1 1 00 0 1 0 0 1 1

Por lo tanto, la extension recursiva de una interpretacion I es la aplicacion

I : Lprop → 0, 1

determinada de forma unica por las siguientes condiciones: 3

I(¬A) = 1− I(A), es decir, I(¬A) = 1 si y solo si I(A) = 0;

I(A ∨B) = maxI(A), I(B), es decir, I(A ∨B) = 0 si y solo si I(A) = I(B) = 0;

I(A ∧B) = minI(A), I(B), es decir, I(A ∧B) = 1 si y solo I(A) = I(B) = 1;

I(A→ B) = 0 si y solo si I(A) = 1 e I(B) = 0;

I(A↔ B) = 1 si y solo si I(A) = I(B);

Para toda fbf A y para toda interpretacion I, si I(A) = 1 se dice que A es verdadera y se denotaI |= A. Si I(A) = 0 se dice que A es falsa y se denota I 6|= A.

Denotaremos por ILprop el conjunto de interpretaciones para Lprop.

eer r La asignacion por I de valores de verdad a las fbfs ¬A, A ∧ B y A ∨ B responde fielmente anuestro objetivo sin provocar discusion alguna:

¬A es verdadera si y solo si A es falsa.

A ∧B es verdadera si y solo si A y B son verdaderas.

A ∨B es falsa si y solo si A y B son falsas.

Por el contrario, no ocurre ası en el caso de → y ↔.

Es natural, por ejemplo, aceptar que si I(A) = 1 e I(B) = 1, entonces I(A→ B) = 1.

Tampoco presenta problema aceptar que si I(A) = 1 pero I(B) = 0, entonces I(A→ B) = 0.

2Recordemos que, como destacamos en el tema anterior, esta extension es unica.3Las conectivas definidas de este modo, es decir, de tal manera que el significado de una expresion compuesta

depende unicamente del significado de sus componentes, se denominan conectivas extensionales. Al estudiar laslogicas no clasicas, conoceremos el uso de las conectivas intensionales

Page 52: Cur So Bueno Logic A

44 CAPITULO 3. LOGICA PROPOSICIONAL

La dificultad radica al optar por aceptar que si I(A) = 0 e I(B) = 1, entonces I(A→ B) = 1.

Tenemos la tentacion de decir que, si A es falsa y B es verdadera, entonces “si A entonces B”no es ni verdadera ni falsa. La razon de nuestra reticencia se debe a que tendemos a leer esteenunciado estableciendo una relacion de causa-efecto entre A y B y con esta lectura no tienesentido decir que es verdadero el enunciado: “si Roma es la capital de Espana entoncesParıs es la capital de Francia”.

Conviene, pues, precisar que lo que se pretende con A → B, es expresar unicamente que, enel supuesto de que A sea verdadera, entonces B tambien lo sera. Por lo tanto, como dice AlfredTarski con su ilustrativo ejemplo:

. . . Supongamos que realizo la siguiente afirmacion: “si tu resuelves el problema,entonces me comere el sombrero”.

Si tu no resuelves el problema y yo no me como el sombrero, ¿como puedes decir quemiento?

Si tu no resuelves el problema y yo me como el sombrero, ¿como puedes decir quemiento?

Solo miento si resuelves el problema y no me como el sombrero . . .

Las mismas consideraciones podemos hacer para I(A ↔ B) = 1 en el caso que I(A) = 0 eI(B) = 0.

En definitiva, como toda fbf de Lprop, toda fbf del tipo A → B es tan solo una formalizacionen Lprop de un expresion del lenguaje natural del tipo “si. . . entonces . . . ” de la que podemosasegurar que, en toda interpretacion, I, se tiene que:

Si I(A) = 0, entonces I(A → B) = 1, es decir, si el antecedente es falso, la implicacionmaterial es verdadera.

Si I(B) = 1, entonces I(A→ B) = 1, es decir, si el consecuente es verdadero, la implicacionmaterial es verdadera.

Insistamos de nuevo que, dada una fbf A, y una interpretacion I, el valor de verdad de A solodepende de los valores de verdad asignados por I a los sımbolos de proposicion que intervienen enA. Esto justifica la siguiente nocion de interpretacion para una fbf:

Definicion 3.6 Una interpretacion para una fbf A es una asignacion de valores de verdad alos sımbolos proposicionales que intervienen en A (es decir, una restriccion de una interpretacional conjunto de sımbolos de proposicionales que intervienen en A). Denotaremos por ILprop(A) elconjunto de interpretaciones para A. Ası pues, si denotamos por Vprop(A) el conjunto de sımbolos ovariables proposicionales que intervienen en A, se tiene que ILprop(A) = I : Vprop(A) −→ 0, 1 y, por lo tanto, si |Vprop(A)| = n, se tiene que |ILprop(A)| = 2n.

eer r Supongamos que Vprop(A) = p1, p2, . . . , pn. El lector conoce que el conjunto de interpretacio-nes para A, ILprop

(A) = I : p1, p2, . . . , pn −→ 0, 1 se puede identificar con el conjunto

potencia de p1, p2, . . . , pn4, denotado P(Vprop(A)) o 2Vprop(A), mediante la aplicacion biyec-

tiva que asocia a cada I ∈ ILprop(A) el subconjunto de p1, p2, . . . , pn cuyos elementos son

aquellos a los que I le asigna la imagen 1.

Si, por ejemplo A = p∧ (q → (r ∨¬p)), tenemos que Vprop(A) = p, q, r. Entonces, la interpre-tacion I1 definida por I1(p) = 1; I1(q) = 0 e I1(r) = 1 podemos identificarla con el subconjuntode p, q, r cuyos elementos son aquellos a los que I1 le asigna la imagen 1, es decir, con p, r

4Conjunto de todos los subconjuntos de p1, p2, . . . , pn.

Page 53: Cur So Bueno Logic A

3.2. SEMANTICA PARA LA LOGICA CLASICA PROPOSICIONAL 45

La forma habitual de presentar los valores de verdad de una fbf para cada una de sus interpretacio-nes, es mediante las conocidas tablas de verdad. Dada una fbf A, con n sımbolos proposicionales,se construye una tabla de verdad que nos permite determinar el valor de verdad que le asignancada una de las 2n interpretaciones para A. Dicha tabla tendra 2n filas (una para cada una de lasinterpretaciones para A) y tantas columnas como subformulas.

Ejemplo 3.4 La tabla de verdad para (¬p ∨ q)→ (¬p ∧ q) es:

p q ¬p ¬p ∨ q ¬p ∧ q (¬p ∨ q)→ (¬p ∧ q)

p, q 1 1 0 1 0 0p 1 0 0 0 0 1q 0 1 1 1 1 1∅ 0 0 1 1 0 0

En la primera columna de la tabla, hemos representado cada interpretacion mediante el conjuntode sımbolos proposicionales de la fbf a las que asigna 1.

3.2.1. Clasificacion semantica de las fbs: Satisfacibilidad y Validez

Si el lector recuerda lo estudiado en el capıtulo anterior, comprobara que lo que vamos a haceres particularizar los conceptos que vimos en el caso general:

Definicion 3.7

- Una fbf A se dice modelizable o satisfacible, si I(A) = 1 para alguna interpretacion I.En este caso, se dice que la interpretacion I satisface A, o bien que I es un modelo para A.Denotaremos por Mod(A) el conjunto de modelos de A, es decir:

Mod(A) = I ∈ ILprop | I(A) = 1

Denotaremos por Contramod(A) el conjunto de contramodelos de A, es decir:

Contramod(A) = I ∈ ILprop | I(A) = 0

Una fbf A se dice contingente si tanto ella como su negacion son satisfacibles es decir, existeuna interpretacion I que es un modelo de A y una interpretacion, I ′, que es un contramodelode A. Ası pues, A es contingente si Mod(A) 6= ∅ y Contramod(A) 6= ∅

Obviamente, puesto que Mod(A) = Contramod(¬A) se tiene que

Proposicion 3.1 A es contingente si y solo si ¬A es contingente.

Definicion 3.8

Una fbf A se dice que es valida o una tautologıa, si I(A) = 1 para toda interpretacion I,es decir, toda interpretacion es un modelo de A: Mod(A) = ILprop.

Una fbf A se dice insatisfacible o que es una contradiccion si I(A) = 0 para toda inter-pretacion I, es decir, Contramod(A) = ILprop.

Obviamente, se tiene que

Proposicion 3.2

⊤ es valida y ⊥ es insatisfacible.

Page 54: Cur So Bueno Logic A

46 CAPITULO 3. LOGICA PROPOSICIONAL

A es valida si y solo si ¬A es insatisfacible.

Tenemos pues la siguiente clasificacion de las fbfs:

Lprop = fbfs insatisfacibles ∪ fbfs contingentes ∪ fbfs validas

Es decir, cada fbf A esta en uno de los tres subconjuntos disjuntos que aparecen en la union.

Definicion 3.9

Un conjunto Ω de fbfs se dice consistente, modelizable o satisfacible, si existe algunainterpretacion I tal que I(A) = 1 para toda fbf A de Ω. En este caso, se dice que la inter-pretacion I satisface Ω, o bien que I es un modelo para Ω. Denotaremos por Mod(Ω) elconjunto de modelos de Ω, es decir:

Mod(Ω) =⋂

Ai∈Ω

Mod(Ai)

Un conjunto Ω de fbfs se dice finitamente satisfacible si todos sus subconjuntos finitos sonsatisfacibles.

Un conjunto Ω de fbfs se dice insatisfacible o inconsistente si no es satisfacible, es decir,si no existe un modelo para Ω. Denotaremos por Contramod(Ω) el conjunto de contramodelosde Ω, es decir:

Contramod(Ω) =⋃

Ai∈Ω

Contramod(Ai)

En particular, se tiene el siguiente resultado:

Proposicion 3.3 Si Ω = A1, · · · , An:

Mod(Ω) =i=n⋂

i=1

Mod(Ai), es decir, Ω es satisfacible si y solo si lo es A1 ∧ . . . ∧An.

Las tablas de verdad son un metodo efectivo o algoritmo para determinar si una fbf es o no validay, puesto que A es valida si y solo si ¬A es insatisfacible, es un algoritmo para determinar si Aes o no satisfacible. Es decir, es un algoritmo tanto para el problema SAT como para el problemaTAUT. 5

En general, todo procedimiento de decision para la satisfacibilidad puede ser usado como pro-cedimiento de decision para la validez. Para analizar si A es valida aplicamos el procedimientode decision para la satisfacibilidad a ¬A. Tal procedimiento se denomina procedimiento porrefutacion (porque, para probar la validez de una fbf, intentamos “refutar”su negacion).

3.2.2. Relacion de igualdad semantica: Equivalencia Logica

Dadas las fbfs ¬(p ∨ q) y ¬p ∧ ¬q, es inmediato comprobar que, para cualquier interpretacion I,ambas son verdaderas o ambas son falsas. En definitiva, ambas transmiten la misma informacion,son iguales semanticamente. Para dos fbfs arbitrarias, este hecho se recoge mediante la nocionde equivalencia logica.

5Recordemos que el problema SAT consiste en dada una fbf arbitaria, A, determinar si A es o no satisfacible y elproblema TAUT consiste en dada una fbf arbitaria, A, determinar si A es o no una tautologıa.

Page 55: Cur So Bueno Logic A

3.2. SEMANTICA PARA LA LOGICA CLASICA PROPOSICIONAL 47

Definicion 3.10 Dos fbfs A y B se dice que son logicamente equivalentes, denotado A ≡ B,si para toda interpretacion I se tiene que I(A) = I(B), es decir, si A↔ B es una tautologıa y, porlo tanto, Mod(A) =Mod(B).

Es inmediato que ≡ es una relacion de equivalencia sobre Lprop.

eer r Es importante destacar la diferencia que existe entre el conectivo ↔, que es un sımbolo delalfabeto del lenguaje, y el metasımbolo ≡. Cuando escribimos A ↔ B simplemente estamosescribiendo en el lenguaje una fbf que puede ser verdadera o falsa para cada interpretacion.Cuando decimos que A ≡ B, estamos usando el metalenguaje para expresar que el enunciadorepresentado por A es verdadero si y solo si lo es el enunciado representado por B, es decir, Ay B tienen el mismo significado, es decir, A y B son semanticamente iguales. Los sımbolos↔ y≡ estan pues a niveles sintacticos (es decir, en lenguajes) distintos.

Como consecuencia inmediata de la definicion, tenemos que:

Lema 3.1

1. Dadas dos fbfs validas cualesquiera, A y B, se tiene que A ≡ B.

2. Dadas dos fbfs insatisfacibles cualesquiera, A y B, se tiene que A ≡ B.

Conectivas primitivas y conectivas definidas

Los siguientes ejemplos de equivalencias muestran como, semanticamente, unas conectivas puedenser expresados en funcion de otras:

A ∨B ≡ ¬A→ B, A ∧B ≡ ¬(A→ ¬B) y A→ B ≡ ¬A ∨B

La no independencia de los conectivas podrıa haber sido recogida en el alfabeto de Lprop tomandounas conectivas como primitivas y dando las restantes mediante definicion. El conjunto de conectivasescogidas como primitivas suele variar, habitualmente suele escogerse uno de los tres siguientes:

1. ¬,∧,∨. En cuyo caso,

A→ Bdef= ¬A ∨B y A↔ B

def= (¬A ∨B) ∧ (¬B ∨A)

2. ¬,∧,∨,→. En cuyo caso,

A↔ Bdef= (A ∧B) ∨ (¬A ∧ ¬B)

3. ¬,→. En cuyo caso,

A ∨Bdef= ¬A→ B; A ∧B

def= ¬(A→ ¬B) y A↔ B

def= ¬((A→ B)→ ¬(B → A))

La eleccion del conjunto de conectivas primitivas vendra determinada por la aplicacion pretendida.Ası, por ejemplo, si estamos interesados en la deduccion, la eleccion nos conducira a → (junto con¬). Por el contrario, en aplicaciones a la electronica → no sera de gran interes debido a que no essimetrico, es decir, (A→ B) 6≡ (B → A). Por esta razon, en tales aplicaciones se adoptan de modouniversal las conectivas ∧ y ∨ (junto con ¬).

Hasta aquı, hemos considerado una conectiva monaria y cuatro conectivas binarias (no todas ellasindependientes, como acabamos de ver). Podrıamos preguntarnos si la logica proposicional, paracumplir su objetivo de formalizacion de la parte senalada de nuestro lenguaje natural, requierealguna otra conectiva monaria o binaria, o bien si requiere conectivas de aridad mayor que dos. Larespuesta a ambas preguntas, dada por Post es que no necesitamos mas conectivas:

Page 56: Cur So Bueno Logic A

48 CAPITULO 3. LOGICA PROPOSICIONAL

1. La semantica de toda conectiva monaria vendra determinada por una de las funciones mi :0, 1 → 0, 1 para i ∈ 1, 2, 3, 4, dadas por la siguiente tabla:

x m1(x) m2(x) m3(x) m4(x)

1 1 0 1 00 0 1 1 0

Es claro que m2 = f¬ y que m1,m3,m4 no aportan nada, ya que nos proporcionaran conec-tivos que a cada fbf A le asocian, respectivamente, el propio A, “siempre verdad” y “siemprefalso”.

La negacion ¬ es esencial en todas las aplicaciones de la Logica:

las puertas not en el diseno logico de circuitos.

Los operadores not en programacion logica.

Los hechos negativos en la representacion del conocimiento.

2. La semantica de toda conectiva binaria vendra determinada por una de las funciones bi :0, 1 × 0, 1 → 0, 1, para i ∈ 1, 2, . . . , 16 dadas por la siguiente tabla:

p q b1 b2 b3 b4 b5 b6 b7 b8 b9 b10 b11 b12 b13 b14 b15 b161 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 01 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 00 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 00 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0

⊤ ∨ ← p → q ↔ ∧ NAND XOR ¬q ¬(→) ¬p ¬(←) NOR ⊥

Observamos que b2 = f∨, b3 = f←, b5 = f→, b7 = f↔, b8 = f∧; por su parte b1, b4, b6 noaportan nada, ya que nos proporcionaran conectivos que a cada par de fbfs A y B le asocian,respectivamente, “siempre verdad”, el propio A, y el propio B. Para 8 < i ≤ 16, bi proporcionala negacion de la conectiva determinada por b17−i (por ejemplo, b12 = f¬ f→).

La conectiva b3 = f←, donde← corresponde a la implicacion inversa, es ampliamente utilizadacomo operador base en los lenguajes de programacion logica.

La conectiva b9 = NAND se denomina tambien trazo de Sheffer 6 y se denota tambienpor |, o bien por ↑: NAND(A,B) = A|B = A ↑ B ≡ ¬(A ∧B)

La conectiva b15 = NOR se denomina tambien flecha de Peirce y se denota tambien por ↓:NOR(A,B) = A ↓ B ≡ ¬(A ∨B)

Por su parte, la conectiva b10 = f⊕, donde ⊕ corresponde al o exclusivo de nuestro lenguajenatural, es decir, A⊕B ≡ ¬(A↔ B) ≡ (A∧¬B)∨ (¬A∧B) se lee “A o B, pero no ambas”.Tambien denominada XOR, resulta de interes debido a que es el unico con la propiedad depoder proporcionar sus componentes, por ejemplo,

(A⊕B)⊕B ≡ A

Por esta razon, es utilizado en las aplicaciones de la computacion en criptografıa y en lacodificacion para correccion de errores.

6Sheffer stroke

Page 57: Cur So Bueno Logic A

3.2. SEMANTICA PARA LA LOGICA CLASICA PROPOSICIONAL 49

eer r

¿Como discernir cuando el “o”del lenguaje natural ha de ser formalizado por ∨ o por ⊕?De nuevo hemos de insistir en que nuestro enfasis ha de estar en la informacion que sedesea transmitir. Ası pues, como indica Quine, en el ejemplo de Tarski en el que un ninole pide a su padre que le lleve a una cierta hora a la playa y, a continuacion, le pide que lelleve a la misma hora al cine. El padre contesta, con un tono de negativa: “o iremos a laplaya o iremos al cine”, el uso exclusivo de “o” es claro. Por el contrario, si se afirma que“el pasaporte se extendera solo a aquellas personas nacidas en el paıs o a aquellas personascasadas con nacidos en el paıs”, es claro que se requiere el uso de ∨.

3. Para finalizar, la semantica de una conectiva n-aria arbitraria vendra determinada por unafuncion gi : 0, 1n → 0, 1. Si gi viene dada por la tabla:

x1 . . . xn giα11 . . . α1n β1α21 . . . α2n β2. . . . . . . . . ..α2n1 . . . α2nn T β2n

donde todo αij y todo βk es 0 o 1. Si ♯ es la conectiva determinada por gi y k1, k2, . . . , kl sonlas filas de la tabla anterior en las que βkm = 1, es claro que

♯ (p1, . . . pn) ≡ (lk11 ∧ lk12 ∧ . . . ∧ lk1n) ∨ (lk21 ∧ lk22 ∧ . . . ∧ lk2n) ∨

(. . . . . . . . . . . . . . . . . . . . .) ∨

(lkl1 ∧ lkld2 ∧ . . . ∧ lkln)

donde lij = pj si αij = 1 y lij = ¬pj si αij = 0.

Veamos este resultado aplicado en un ejemplo concreto.

Ejemplo 3.5 Sea ♯3 la conectiva ternaria cuya semantica viene determinada por la funcion g :0, 13 → 0, 1 definida por la tabla:

x1 x2 x3 g

1 1 1 01 1 0 11 0 1 11 0 0 00 1 1 00 1 0 10 0 1 10 0 0 0

entonces

♯3(p1, p2, p3) ≡ (p1 ∧ p2 ∧ ¬p3) ∨ (p1 ∧ ¬p2 ∧ p3) ∨ (¬p1 ∧ p2 ∧ ¬p3) ∨ (¬p1 ∧ ¬p2 ∧ p3)

Page 58: Cur So Bueno Logic A

50 CAPITULO 3. LOGICA PROPOSICIONAL

eer r Conviene destacar que una frase del lenguaje natural (de las consideradas por la logica propo-sicional) puede ser formalizada por diversas fbfs del lenguaje Lprop de la logica proposicional 7

todas ellas semanticamente equivalentes, es decir, con la misma informacion. Ası pues, “A Marıale gusta la carne o el pescado” puede ser formalizada por p∨ q (si p formaliza “A Marıa le gustala carne” y q formaliza “A Marıa le gusta el pescado”), o bien por ¬(¬p ∧ ¬q) (“No es ciertoque a Marıa no le guste la carne ni el pescado”), o bien por ¬p→ q (“Si a Marıa no le gusta lacarne entonces le gusta el pescado”), . . .

Por otra parte, el lenguaje natural no solo utiliza como partıculas de enlace aquellas destacadascomo la lectura de las conectivas de Lprop: “no”, “y”, “o”, “si . . . entonces . . . ” y “si y solosi”. Sin embargo, hemos demostrado que estas tienen total potencia expresiva, es decir, bastanpara expresar cualquier otra. Por lo tanto, ante una frase del lenguaje natural, nuestro quehacerhabra de centrarse en reflexionar cual es la informacion que deseamos transmitir para despuesproceder a formalizarla en Lprop. Por ejemplo, las frases “A Marıa le gusta la carne pero no elpescado”, “A Marıa le gusta la carne, sin embargo no le gusta el pescado”, “A Marıa le gusta lacarne aunque no el pescado” transmiten la misma informacion que “A Marıa le gusta la carney no le gusta el pescado” y por lo tanto las formalizaremos por la fbf p ∧ ¬q.

Tenemos ya todos los elementos necesarios para responder a la pregunta que nos hicimos al comenzaresta seccion: ¿cuantas conectivas se requieren en la logica clasica proposcional? Para contestarla,introducimos una definicion

Definicion 3.11 Un conjunto de conectivas Π se dice adecuado o completo si para todo n ∈ N

y cualquier conectiva, ♯, de aridad n se tiene que ♯(p1, . . . , pn) es equivalente a una fbf en la quesolo intervienen conectivas pertenecientes a Π.

En esta seccion hemos dado todos los elementos para demostrar el siguiente resultado:

Proposicion 3.4 Los conjuntos de conectivas ¬,∧, ¬,∨, ¬,→ son conjuntos completos deconectivas. Los unicos conjuntos completos de conectivas con una sola conectiva son ↑ y ↓.

Ejemplo 3.6

1. Veamos la expresion en terminos de la conectiva monaria ¬ y las conectivas binarias ∧ y ∨de una de las conectivas ternarias mas utilizada en Computacion, la conectiva “Si A entoncesB y en caso contrario C”, que denotaremos por [A,B,C] 8 y que, como es bien conocido, seutiliza para expresar que:

“si A es verdadera el valor de [A,B,C] ha de ser el de B y si A es falsa el valorde [A,B,C] ha de ser el de C“

es decir, A actua a modo de interruptor.

El lector puede comprobar facilmente que [A,B,C] ≡ (A ∧B) ∨ (¬A ∧ C).

2. Podemos considerar tambien como conectiva definida la conectiva ternaria denominada in-compatibilidad condicionada y denotada [[A,B,C]]. Esta conectiva es utilizada para ex-presar que si A es verdadera el valor de [[A,B,C]] ha de ser el de ¬B y si A es falsa el valorde [[A,B,C]] ha de ser el de ¬C. Por lo tanto, [[p, q, r]] ≡ (A ∧ ¬B)∨ (¬A ∧¬C) ≡ ¬[p, q, r].

7en rigor, podemos decir que por una infinidad numerable de fbfs8En parte de la bibliografıa se le denomina disyuncion condicionada.

Page 59: Cur So Bueno Logic A

3.2. SEMANTICA PARA LA LOGICA CLASICA PROPOSICIONAL 51

3. En ocasiones es util considerar conectivas que aseguran un determinado numero de afirmacio-nes verdaderas entre un numero finito de afirmaciones. Por ejemplo, la conectiva al menosdos de las tres, que denotaremos ♯32(A,B,C) y que expresa que al menos dos de las tresafirmaciones A,B,C son verdaderas. En consecuencia

♯32(A,B,C) = (A ∧B) ∨ (A ∧ C) ∨ (B ∧ C)

Leyes de la Logica Clasica Proposicional

Damos a continuacion una lista de equivalencias basicas, que pueden ser comprobadas de formatrivial usando las tablas de verdad, 9 y los nombres por las que son conocidas:

Leyes de cero y uno ¬⊤ ≡ ⊥; ¬⊥ ≡ ⊤A ∧ ⊤ ≡ A; A ∧⊥ ≡ ⊥A ∨⊤ ≡ ⊤; A ∨⊥ ≡ AA→ ⊤ ≡ ⊤; ⊤ → A ≡ A

A→ ⊥ ≡ ¬A; ⊥ → A ≡ ⊤A↔ ⊤ ≡ A; A↔ ⊥ ≡ ¬A

Leyes de complementacion A ∧ ¬A ≡ ⊥ A ∨ ¬A ≡ ⊤

Doble negacion ¬¬A ≡ A

Leyes de De Morgan ¬(A ∧B) ≡ ¬A ∨ ¬B¬(A ∨B) ≡ ¬A ∧ ¬B

Ley de Contraposicion A→ B ≡ ¬B → ¬A

¬(A→ B) ≡ A ∧ ¬B¬(A↔ B) ≡ ¬A↔ B ≡ A↔ ¬B

Leyes commutativas A ∧B ≡ B ∧AA ∨B ≡ B ∨AA↔ B ≡ B ↔ A

Leyes idempotentes A ∧A ≡ AA ∨A ≡ A

Leyes asociativas (A ∧B) ∧ C ≡ A ∧ (B ∧ C)(A ∨B) ∨ C ≡ A ∨ (B ∨ C)

Leyes distributivas A ∧ (B ∨ C) ≡ (A ∧B) ∨ (A ∧C)A ∨ (B ∧ C) ≡ (A ∨B) ∧ (A ∨C)

Leyes de absorcion A ∧ (A ∨B) ≡ AA ∨ (A ∧B) ≡ A

eer r La propiedad distributiva de ∧ sobre ∨ coincide con la que conocemos en aritmetica de lapropiedad distributiva del producto sobre la suma: x (y + z) = xy+xz y la que conocemos de lateorıa de conjuntos de ∩ respecto a ∪: X ∩ (Y ∪Z) = (X ∩Y )∪ (X ∩Z)). Pero si nos centramosen la propiedad distributiva de ∨ sobre ∧ no tenemos la analogıa total:

∪ es distributiva respecto de ∩: X ∪ (Y ∩ Z) = (X ∪ Y ) ∩ (X ∪ Z)), pero

la suma no es distributiva respecto al producto: x+ yz 6= (x+ y)(x+ z). Esta propiedad escierta si nos limitamos a la aritmetica binaria (en 0, 1, como es nuestro caso en la logicaclasica proposicional).

9El lector puede ver que cada una de ellas nos indica la interaccion entre dos conectivas

Page 60: Cur So Bueno Logic A

52 CAPITULO 3. LOGICA PROPOSICIONAL

Las leyes asociativas nos permiten dar categorıa de fbf a las expresiones

A1 ∨A2 ∨ . . . ∨An (abreviadamente∨n

i=1Ai)A1 ∧A2 ∧ . . . ∧An (abreviadamente

∧ni=1Ai)

Cada una de ellas representa una cualquiera de las fbfs (equivalentes entre sı) que se obtieneintercalando parentesis de modo conveniente.

Con la categorıa de fbf dada a las expresiones∨n

i=1 Ai y∧n

i=1Ai, las leyes distributivas se puedengeneralizar como sigue:

Leyes Distributivas-G A ∧ (n∨

i=1

Bi) ≡n∨

i=1

(A ∧Bi)

A ∨ (

n∧

i=1

Bi) ≡

n∧

i=1

(A ∨Bi)

Dualidad

Hay leyes de la logica clasica proposicional, como algunas de las expuestas mas arriba, que realizandoen ellas algunos intercambios de conectivas nos permiten obtener una nueva ley. De este modopodemos reducir, a veces, a la mitad nuestro trabajo al estudiar las propiedades semanticas de lasfbfs. Por ejemplo,

si en la ley de De Morgan, ¬(A ∧ B) ≡ ¬A ∨ ¬B, intercambiamos las conectivas ∨ y ∧,obtenemos la ley de De Morgan ¬(A ∨B) ≡ ¬A ∧ ¬B y viceversa;

si en la ley Distributiva A ∧ (B ∨C) ≡ (A ∧B) ∨ (A ∧C) intercambiamos las conectivas ∨ y∧, obtenemos la ley Distributiva A ∨ (B ∧ C) ≡ (A ∨B) ∧ (A ∨ C) y viceversa;

si en la ley de cero-uno A∧⊤ ≡ A intercambiamos las conectivas ∨ y ∧ y las constantes ⊤ y⊥, obtenemos la ley de cero-uno A ∨ ⊥ ≡ A

Estos resultados se recogen en el llamado principio de dualidad. En los ejemplos expuestos se diceque en cada uno de los tres ıtemes, una cualquiera de las fbfs es la dual de la otra.

Para establecer el principio de dualidad nos restringirnos al uso de las conectivas¬,∧,∨. 10

Comenzamos con la siguiente definicion:

Definicion 3.12 Sea A una fbf que solo contiene las conectivas ¬,∧ y ∨. La fbf dual de A sedefine recursivamente como sigue:

dual(A) = A, si A ∈ Vpropdual(⊤) = ⊥dual(⊥) = ⊤dual(¬A) = ¬dual(A)dual(A ∧B) = dual(A) ∨ dual(B)dual(A ∨B) = dual(A) ∧ dual(B)

10Recordemos que ¬,∧,∨ es un conjunto adecuado o completo de conectivas.

Page 61: Cur So Bueno Logic A

3.3. FORMAS NORMALES 53

En definitiva: Si A ∈ ⊤,⊥ entonces la fbf dual de A es ¬A. En caso contrario, la formula dualde A resulta de intercambiar en A todas las apariciones de ∧ y ∨.

Es facil probar (y se deja al lector) que:

Lema 3.2 Para toda fbf A que solo contiene las conectivas ¬,∧ y ∨, se tiene que dual(dual(A)) =A.

Podemos ya enunciar el resultado fundamental.

Teorema 3.1 (Principio de dualidad) Sean A,B fbfs que solo contiene las conectivas ¬,∧ y ∨.Entonces:

A ≡ B si y solo si dual(A) ≡ dual(B)

Teorema de Equivalencia

El siguiente resultado proporciona otro mecanismo simple (llamado sustitucion) mediante el cual seobtienen nuevas equivalencias a partir de equivalencias conocidas. Para su formulacion introducimoslas siguientes notaciones:

Definicion 3.13 A[B/C] expresa que B es una subformula de la fbf A y que en A se han sustituidotodas las ocurrencias de B por C. A este proceso se le denomina de “sustitucion uniforme”.

Teorema 3.2 (de equivalencia) Si B es una subformula de A y B ≡ C, entonces A ≡ A[B/C].

El paso de A a A[B/C] es lo que se llama una transformacion de equivalencia.

Podemos definir otro tipo de sustitucion que no requiera cambiar todas las ocurrencias de B porC, sino solo algunas. Para diferenciar esta operacion de la sustitucion uniforme, se le denominasimplemente sustitucion o reemplazo. Para este tipo de sustitucion, el teorema 3.2 sigue siendocierto.

La traduccion del teorema de equivalencia en terminos de arboles sintacticos, es directa:

Si B es una subformula de A y B ≡ C, entonces al sustituir en TA los subarbo-les TB por el arbol TC , se obtiene el arbol sintactico de una fbf equivalentea A.

3.3. Formas NormalesHemos definido en Lprop la relacion de equivalencia semantica, ≡. Esto nos permite trabajar conel conjunto cociente Lprop/≡. Cada fbf en Lprop pertenecera a una y solo una clase de equivalencia.Ası,

1. Todas las fbfs validas estaran en la misma clase de equivalencia (en la misma que ⊤),

2. Todas las fbfs insatisfacibles estaran en la misma clase de equivalencia (en la de ⊥),

3. p estara en la misma clase de equivalencia que, por ejemplo, p∧ (p∨A), para cualquier fbf A

4. etc.

Como siempre que trabajamos en un conjunto cociente, deseamos tener un representante canoni-co para cada clase de equivalencia. es decir, de un tipo de fbf , lo mas simple posible, tal que cualquierfbf sea expresable, de forma semanticamente equivalente, por una de dicho tipo.

Page 62: Cur So Bueno Logic A

54 CAPITULO 3. LOGICA PROPOSICIONAL

eer r Ası ocurre cuando trabajamos con fracciones; definimos que dos fracciones, ab

y cd, son equiva-

lentes si y solo si a.d = b.c y elegimos como representante canonico de cada clase la fraccionirreducible (aquella para la que el maximo comun divisor del numerador y denominador es 1)perteneciente a esa clase. Ası, el representante canonico de la clase a la que pertenece 12

15 es 45 .

Si, por ejemplo, describimos un circuito en terminos de la logica proposicional, desearıamos poderdisponer de una fbf equivalente a la fbf inicial obtenida al describir inicialmente el circuito y querepresente una combinacion mas simple de puertas logicas.

Lo ideal serıa poder encontrar la combinacion mas simple, pero desafortunadamente, a diferenciade lo que ocurre en el caso de las fracciones, no se conoce una tecnica para tal fin, no existe elmejor representante canonico de cada clase de equivalencia en Lprop/≡; sin embargo, disponemosde algunos tipos de representantes canonicos, que en logica se denominan formas normales, quese han mostrado especialmente utiles: la forma normal negativa, fnn, la forma normal disyuntiva,fnd, y la forma normal conjuntiva, fnc, que definimos a continuacion:

Definicion 3.14

1. Los sımbolos proposicionales, junto con sus negaciones son llamados literales. Decimos quelos literales p y ¬p son literales opuestos. En este curso, si ℓ es un literal, denotaremos suopuesto por ℓ.

2. Una fbf se dice que es un cubo si es ⊤, ⊥, un literal o una conjuncion (posiblemente vacıa)de literales. Decimos que es un cubo es restringido si no contiene literales repetidos nipares de literales opuestos.

3. Una fbf se dice que es una clausula si es ⊤, ⊥, un literal o una disyuncion (posiblementevacıa) de literales. Decimos que es una clausula restringida si no contiene literales repetidosni pares de literales opuestos.

Definicion 3.15 Una clausula C1 se dice que contiene a la clausula C2, si todo literal de C2 esun literal de C1.

Un cubo D1 se dice que contiene al cubo D2 si todo literal de D2 es un literal de D1.

La anterior definicion da nombres a tres tipos de fbfs de Lprop: literales, clausulas y cubos ¿que po-demos decir de ellas respecto a su semantica? Vamos a analizarlo:

Claramente, todo literal es contingente. Dado p, se tiene que toda interpretacion que asignaa p el valor de verdad 1 es un modelo de p y toda interpretacion que asigna a p el valor deverdad 0 es un contramodelo de p.

Dualmente, dado ¬p, se tiene que toda interpretacion que asigna a p el valor de verdad 0 esun modelo de ¬p y toda interpretacion que asigna a p el valor de verdad 1 es un contramodelode ¬p.

Veamos que ocurre con las clausulas:

• Toda clausula que contiene un literal y su opuesto es valida. p ∨ ¬q ∨ ¬p ∨ r es valida.

• Toda clausula que no contiene un literal y su opuesto es contingente.

Para la clausula C = p ∨ ¬q ∨ r, se tiene que

Mod(C) = ∅, p, r, p, q, p, r, q, r, p, q, r 11

11Recordemos que ∅ representa la interpretacion que asigna el valor 0 a todos los sımbolos proposicionales, por lotanto asigna el valor 1 a ¬q y, en consecuencia, asigna el valor 1 a C.

Page 63: Cur So Bueno Logic A

3.3. FORMAS NORMALES 55

Contramod(C) = q 12

• Ası que existen clausulas validas y clausulas contingentes. Pero ¿existe alguna clausu-la insatisfacible? Antes de contestar a esta pregunta reflexionemos sobre las propie-dades de ∨. Hemos visto que ∨ es asociativa (podemos eliminar los parentesis), es con-mutativa (no es relevante el orden en el que escribamos sus literales) y es idempotente(podemos eliminar repeticiones de literales). Ası, p∨((r∨¬q)∨p) podemos escribirla (porla asociatividad) como p∨r∨¬q∨p y p∨r∨¬q∨p ≡ p∨p∨¬q∨r (por la commutativi-dad –hemos elegido el orden alfabetico–) y, finalmente, p∨ p∨¬q∨ r ≡ p∨¬q∨ r (por lapropiedad idempotente). En definitiva, una clausula queda determinada por el conjuntode sus literales; en nuestro ejemplo, podemos representar la clausula p ∨ ((r ∨ ¬q) ∨ p)por el conjunto p,¬q, r, es decir, contemplar una clausula, C como una disyuncionfinita de literales C = l1 ∨ l2 ∨ . . . ∨ ln o como la disyuncion de los literales del conjunto

Λ = l1, l2, . . . , ln, es decir C =∨

li∈Λ

li. Tiene pues sentido considerar que:

⊤ y ⊥ son clausulas.

Todo literal l es una clausula

La clausula vacıa, es la disyuncion vacıa de literales y la denotaremos por .

Y ¿cual es la semantica de ? Para responder a esta pregunta, pensemos que, dada unaclausula, C, basta que tenga un literal para que sea satisfacible (ya que toda interpreta-cion que asigne a tal literal el valor de verdad 1, sera un modelo de C). Por lo tanto, laclausula vacıa es insatisfacible (no posee ningun literal al que asignar el valor 1). Elmismo razonamiento podemos realizar para una disyuncion de fbfs arbitarias:

Toda disyuncion vacıa de fbfs es insatisfacible

Repetimos el mismo analisis para los cubos:

• Todo cubo que contiene un literal y su opuesto es insatisfacible. Por ejemplo, p∧¬q∧¬p∧res insatisfacible.

• Todo cubo que no contiene un literal y su opuesto es contingente.

Para el cubo D = p ∧ ¬q ∧ r, se tiene que

Mod(C) = p, r 13

Contramod(D) = ∅, p, r, p, q, q, r, p, q, r

• Ası que existen cubos insatisfacibles y cubos contingentes. Pero ¿existe algun cubo vali-do? Realizando la misma reflexion que para las clausulas, puesto que ∧ es asociativa,conmutativa e idempotente , podemos representar el cubo p ∧ ((r ∧ ¬q) ∧ p) por el con-junto p,¬q, r, es decir, contemplar un cubo, D como una conjuncion finita de literalesD = l1∧ l2∧ . . .∧ ln o como la conjuncion de los literales del conjunto Λ = l1, l2, . . . , ln,

es decir D =∧

li∈Λ

li. Tiene pues sentido considerar que:

⊤ y ⊥ son cubos.

12Por otra parte, la unica interpretacion que hace falsa a C es aquella que asigna el valor 0 a todos sus literales, esdecir, la que asigna 0 a p y a r y asigna 1 a q.

13La unica interpretacion que hace verdadero a D es aquella que asigna el valor 1 a todos sus literales, es decir, laque asigna 1 a p y a r y asigna 0 a q.

Page 64: Cur So Bueno Logic A

56 CAPITULO 3. LOGICA PROPOSICIONAL

Todo literal l es un cubo.

El cubo vacıo, es la conjuncion vacıa de literales y lo denotaremos por ♦.

Y ¿cual es la semantica del cubo vacıo? Como hemos razonado respecto a las clausulas,dado un cubo, D, basta que tenga un literal para que tenga un contramodelo, ya quetoda interpretacion que asigne a tal literal el valor de verdad 0, sera un contramodelode D. Por lo tanto, el cubo vacıo es valido (no posee ningun literal al que asignar elvalor 0). Y aplicando el mismo razonamiento a la conjuncion vacıa de fbfs arbitrarias,tenemos que: Toda conjuncion vacıa de fbfs es valida.

3.3.1. Forma Normal Negativa

Tenemos ya tres familias de fbfs: literales, cubos y clausulas. ¿bastan para ser elegidas como re-presentantes canonicos? La respuesta es no: No toda fbf es equivalente a otra de uno de estos trestipos de fbfs. Basta considerar, por ejemplo, la fbf A = p∧ (q → r). El lector puede comprobar queno existe ningun cubo ni ninguna clausula equivalente a A.

Ası que tenemos que seguir en la tarea de buscar formas normales. Comenzamos introduciendo laforma normal mas simple y la que menos coste conlleva en el proceso de conversion:

Page 65: Cur So Bueno Logic A

3.3. FORMAS NORMALES 57

Definicion 3.16 Sea A una fbf, decimos que A esta en forma normal negativa (abreviadamente,que es una fnn), si satisface las siguientes condiciones:

En A no intervienen → ni ↔ (en terminos de su arbol sintactico, ninguno de los nodos deTA es → ni ↔).

El ambito de las negaciones en A se reduce a los sımbolos proposicionales (en terminos de suarbol sintactico, en TA los nodos ¬, si existen, tan solo ocurren como ascendientes directosde sımbolos proposicionales).

Decimos que una fbf en forma normal negativa es restringida si es ⊥, ⊤ o bien no contieneninguna constante logica y todas las clausulas y cubos que contiene son restringidos.

Es inmediato comprobar que podemos definir las fnns recursivamente como sigue:

Definicion 3.17 Dentro del conjunto de formulas generalizadas definimos recursivamente lasformulas en forma normal negativa como sigue:

Las constantes logicas, la clausula vacıa (), el cubo vacıo (♦) y los literales son formulas enforma normal negativa conjuntiva y son formulas en forma normal negativa disyuntiva.

Si C1,. . . ,Cn son formulas en forma normal negativa conjuntiva, entonces C1 ∨ · · · ∨ Cn esuna formula en forma normal negativa disyuntiva.

Si D1,. . . ,Dn son formulas en forma normal negativa disyuntiva, entonces D1 ∧ · · · ∧Dn esuna formula en forma normal negativa conjuntiva.

Aceptaremos por convenio que el arbol sintactico de una fnn es:

1. Si A es ⊤, ⊥, , ♦ o un literal, entonces TA es el arbol de un solo nodo etiquetado con A.

2. Si A =⊙n

i=1 Ai, donde⊙

es∧

o∨

, entonces TA es TA1 TAn. . .

⊙@@

Ejemplo 3.7 La representacion de las fbfs usando arboles sintacticos ayuda a identificar y entenderel esquema que hemos definido anteriormente. Como vemos en el ejemplo siguiente, en una fnn lasconectivas ∨ y ∧ se van alternando en cada nivel y la conectiva ¬ solo aparece en las hojas formandoparte de los literales. Cuando trabajamos con este tipo de fbfs, para toda variable proposicional, p,se suele escribir p en lugar de ¬p.

Ası, por ejemplo, el arbol sintactico de la fbf

p ∨(((q ∧ ¬p) ∨ (¬p ∧ s)) ∧ ¬r

)∨ ((¬s ∨ r ∨ ¬q) ∧ p)

es el siguiente:

p ∧

q p

p s

r

s r q

p

Page 66: Cur So Bueno Logic A

58 CAPITULO 3. LOGICA PROPOSICIONAL

Teorema 3.3 Toda fbf es equivalente a una formula en forma normal negativa restringida.

Demostracion:

El proceso de conversion para obtener la forma normal negativa equivalente consiste en la aplicacionde las siguientes leyes:

1. Con las equivalencias

A→ B ≡ ¬A ∨B, ¬(A→ B) ≡ A ∧ ¬B,

¬(A ∧B) ≡ ¬A ∨ ¬B, ¬(A ∨B) ≡ ¬A ∧ ¬B,

eliminamos las implicaciones y trasladamos la negacion hasta las variables proposicionales.

2. La equivalencia ¬¬A ≡ A simplifica las concatenaciones de negaciones. La asociatividad dela conjuncion y de la disyuncion permite agruparlas y disponerlas en niveles alternativos.

3. Finalmente, aplicando si es posible las siguientes equivalencias dentro de cada clausula y cadacubo

A ∧A ≡ A, ¬A ∧A ≡ ⊥, ⊤ ∧A ≡ A, ⊥ ∧A ≡ ⊥,

A ∨A ≡ A, ¬A ∨A ≡ ⊤, ⊥ ∨A ≡ A, ⊤ ∨A ≡ ⊤,

conseguimos la fnn restringida.

Describimos una sencilla transformacion de una fbf a una fnn equivalente, denominada Signar ycuya complejidad es lineal.

La transformacion Signar

Dada una fbf A, la siguiente definicion proporciona una transformacion elemental que convierteuna fbf, A, en una fnn equivalente:

Definicion 3.18 Dada una fbf A definimos recursivamente A(σ), donde σ ∈ +,−:

p(+) = p p(−) = ¬p

(¬A)(+) = A(−) (¬A)(−) = A(+)

(A ∨B)(+) = A(+) ∨B(+) (A ∨B)(−) = A(−) ∧B(−)

(A ∧B)(+) = A(+) ∧B(+) (A ∧B)(−) = A(−) ∨B(−)

(A→ B)(+) = A(−) ∨B(+) (A→ B)(−) = A(+) ∧B(−)

por signar un arbol TA entenderemos recorrer TA primero en profundidad para obtener TA(+).

Ejemplo 3.8 Sea A la fbf((

p ∨ (r → t))∧(q ∨ (t→ s)

))→

((p ∧ ¬(q → ¬t)

)∨(r →

((q → (s ∨ r)) ∧ s

)))

cuyo arbol sintactico TA aparece en la Figura 3.1 Al signarlo, se obtiene el arbol sintactico TA(+),que aparece en la Figura 3.2.

3.3.2. Formas Normales Disyuntivas y Conjuntivas

Las fnnrs siguen teniendo una compleja estructura sintactica. Su arbol sintactico puede ser deprofundidad arbitraria y, por lo tanto, es difıcil su lectura semantica. Nos gustarıa tener comorepresentantes canonicos unas formas normales “mas legibles”.

Page 67: Cur So Bueno Logic A

3.3. FORMAS NORMALES 59

p

r t

→ q

t s

p

q

t

¬

¬ r

q

s r

→ s

∨ ∨

Figura 3.1: El arbol TA.

¬p r ¬t

¬q t ¬s

p q t

∧ ¬r

¬q s r

∨ s

Figura 3.2: El arbol TA(+).

Page 68: Cur So Bueno Logic A

60 CAPITULO 3. LOGICA PROPOSICIONAL

eer r Volviendo a las fracciones, es evidente que poco nos dice la fraccion 131717×121 , pero si obtenemos su

equivalente irreducible: 313 , tenemos mas claro su significado. Cuando introdujimos el concepto

de forma normal, pusimos el ejemplo de las fracciones para destacar su “ventaja” respecto alas fbfs y destacamos que para las fracciones existe “el mejor” representante canonico y, por elcontrario, para las fbfs no existıa “la mejor” forma normal. Ahora destacaremos una ventaja delas fbfs respecto a las fracciones:

Aunque el ejemplo elegido 131717×121 ≡

313 ha sido muy favorable, no siempre es ası. Pensemos en

dos numeros primos de gran tamano, n y m. La fraccion nm

es irreducible.

Sin embargo, para las fbfs existen dos representantes canonicos cuyo significado es simple. Seacual sea la complejidad de una fbf (en terminos de la profundidad de su arbol sintactico, podemosobtener una fbf equivalente de profundidad a lo sumo 2. Mas aun, como veremos podemosobtener dos fbfs equivalentes con esta caracterıstica:

Definicion 3.19

1. Una fbf se dice que es normal disyuntiva si es:

⊤,

⊥,

un cubo, o

una disyuncion (posiblemente vacıa) de cubos.

Es decir, una forma normal disyuntiva es del tipo∨n

1 Di, donde D1, . . . ,Dn son cubos.

2. Una fbf se dice que es normal conjuntiva si es:

⊤,

⊥,

una clausula, o

una conjuncion (posiblemente vacıa) de clausulas.

Es decir, una forma normal conjuntiva es del tipo∧n

1 Ci, donde C1, . . . , Cn son clausulas.

Definicion 3.20 Una fnd se dice restringida (abreviadamente, fndr), si cumple los siguientesrequisitos:

Ningun cubo contiene un literal y su opuesto.

Ningun cubo contiene literales repetidos.

Ningun cubo contiene a otro.

Una fnc se dice restringida (abreviadamente, fncr) si cumple los siguientes requisitos:

Ninguna clausula contiene un literal y su opuesto.

Ninguna clausula contiene literales repetidos

Ninguna clausula contiene a otra.

Page 69: Cur So Bueno Logic A

3.3. FORMAS NORMALES 61

Realizando el mismo analisis que el realizado para las clausulas y los cubos, podemos representaruna fndr como un conjunto de cubos y una fncr como un conjunto de clausulas, en particular,la representacion de una fncr, A, como conjunto de clausulas se denomina la formaclausal de A.

Debido a la estructura de las formas normales restringidas se tiene que:

Lema 3.3

1. Las unicas fndr’s insatisfacibles son ⊥ y la disyuncion vacıa de cubos.

2. Las unicas fncr’s validas son ⊤ y la conjuncion vacıa de clausulas.

eer r Recordemos que para demostrar que no necesitamos conectivas n-arias con n > 2 porque po-demos introducirlas como conectivas definidas en terminos de ¬, ∧ y ∨, utilizamos la tabla deverdad que define la conectiva y comprobamos que podıa ser definida como disyuncion de cubos:si ♯3 es la conectiva ternaria cuya semantica viene definida por la tabla:

p q r ♯3(p, q, r)1 1 1 01 1 0 11 0 1 11 0 0 00 1 1 00 1 0 10 0 1 10 0 0 0

entonces ♯3(p, q, r) ≡ (p∧q∧¬r)∨(p∧¬q∧r)∨(¬p∧q∧¬r)∨(¬p∧¬q∧r). Ası, que ya disponemosde un modo de obtner una fnd para cualquier fbf, a partir de su tabla. A la fnd ası generada sele denomina forma normal disyuntiva completa (en ella cada sımbolo proposicional ocurreuna y solo una vez). Sin embargo la complejidad del proceso lo hace poco asumible. Debemospues disponer de otro metodo. Tal metodo, como veremos, elude la construccion de tablas deverdad y consiste en la aplicacion sistematica de las leyes de la logica clasica proposicional queya conocemos. No obstante, cualquier metodo para obtener una fnc o una fnd equivalente a unafbf dada, tiene complejidad exponencial en el peor caso 14

Teorema 3.4 Para toda fbf, A ∈ Lprop, existen una forma normal disyuntiva restringida, A1 yuna forma normal conjuntiva restringida, A2, tales que

A ≡ A1 ≡ A2

Demostracion: El teorema de equivalencia nos asegura que, dada una fbf arbitraria, A, podemosobtener a partir de A una fndr o una fncr equivalente, realizando en cada paso una de las siguientestransformaciones de equivalencia y en el siguiente orden:

1. Eliminacion de las conectivas ↔, mediante la transformacion de equivalencia:

A↔ B ≡ (¬A ∨B) ∧ (¬B ∨A) (para las fncrs)

A↔ B ≡ (A ∧B) ∨ (¬A ∧ ¬B) (para las fndrs)

14Podıamos haber intuido este resultado negativo, ya que no cabe duda de que el problema de satisfacibilidadpara fnds puede ser resuelto eficientemente. En consecuencia, despues de lo que sabemos de sobre el problema SAT,podemos asegurar que no existe algoritmo eficiente para transformar una fbf en una fnd equivalente.

Page 70: Cur So Bueno Logic A

62 CAPITULO 3. LOGICA PROPOSICIONAL

2. Eliminacion de las conectivas →, mediante la transformacion de equivalencia: A → B ≡¬A ∨B.

3. Transmision de las negaciones a las fbfs atomicas, mediante las transformaciones de equiva-lencia: ¬(A ∨B) ≡ ¬A ∧ ¬B, ¬(A ∧B) ≡ ¬A ∨ ¬B y ¬¬A ≡ A.

4. Aplicacion, cuantas veces sea posible, de la ley distributiva generalizada de ∧ respecto a ∨(para las fndrs) o de ∨ respecto a ∧ (para las fncrs).

5. Aplicacion, cuantas veces sea posible, de las leyes correspondientes (para ∧, o para ∨) deidempotencia, de complementacion, de cero y uno y de absorcion para obtener las formasnormales restringidas.

Despues de realizar los pasos 1) y 2), se obtiene una fnn.

Ejemplo 3.9 Dada la fbf A = (p∧(q → r))→ (r∧(p∨s)), mostramos como obtener una expresionequivalente en fndr.

(p ∧ (q → r))∗→ (r ∧ (p ∨ s)) eliminc. de → ≡

¬(p ∧ (q∗→ r)) ∨ (r ∧ (p ∨ s)) eliminc. de → ≡

∗¬ (p ∧ (¬q ∨ r)) ∨ (r ∧ (p ∨ s)) Ley de De Morgan ≡

¬p∨∗¬ (¬q ∨ r) ∨ (r ∧ (p ∨ s)) Ley de De Morgan ≡

¬p ∨ (∗¬ ¬q ∧ ¬r) ∨ (r ∧ (p ∨ s)) Doble negacion ≡

¬p ∨ (q ∧ ¬r) ∨ (r ∧ (p∗∨ s)) Distributiva ≡

¬p ∨ (q ∧ ¬r) ∨ (r ∧ p) ∨ (r ∧ s)

Ejemplo 3.10 Dada la fbf A = (p ∧ (q → r)) → (r ∧ (p ∨ s)), mostramos como obtener unaexpresion equivalente en fncr.

(p ∧ (q → r))∗→ (r ∧ (p ∨ s)) eliminc. de → ≡

¬(p ∧ (q∗→ r)) ∨ (r ∧ (p ∨ s)) eliminc. de → ≡

∗¬ (p ∧ (¬q ∨ r)) ∨ (r ∧ (p ∨ s)) Ley de De Morgan ≡

¬p∨∗¬ (¬q ∨ r) ∨ (r ∧ (p ∨ s)) Ley de De Morgan ≡

¬p ∨ (∗¬ ¬q ∧ ¬r) ∨ (r ∧ (p ∨ s)) Doble negacion ≡

¬p ∨ (q ∧ ¬r) ∨ (r∗∧ (p ∨ s)) Distributiva ≡

(¬p ∨ (q ∧ ¬r) ∨ r) ∧ (∗¬p ∨(q ∧ ¬r)∨

∗p ∨s) Complementacion ≡

¬p ∨ (q∗∧ ¬r) ∨ r

Distributiva ≡

(¬p ∨ q ∨ r) ∧ (¬p∨∗¬r ∨

∗r) Complementacion ≡

¬p ∨ q ∨ r

Por lo tanto, la forma clausal de A = (p ∧ (q → r))→ (r ∧ (p ∨ s)) es ¬p ∨ q ∨ r

3.4. Propiedad de Compacidad

En la definicion de satisfacibilidad de un conjunto de fbfs, Ω, no hemos puesto restriccion al car-dinal de Ω. Puesto que Lprop es infinito numerable, el conjunto Ω ⊆ Lprop puede ser tambien

Page 71: Cur So Bueno Logic A

3.4. PROPIEDAD DE COMPACIDAD 63

infinito numerable (es decir, |Ω| = ℵ0).15 La satisfacibilidad de un conjunto infinito de fbfs viene

caracterizada por el conocido Teorema de Compacidad.

Recordemos que un conjunto de fbfs se dice finitamente satisfacible si todos sus subconjuntosfinitos son satisfacibles. Definimos ahora un tipo de conjunto de fbfs.

Definicion 3.21 Un conjunto, Γ, finitamente satisfacible de fbfs se dice maximal si para cadafbf, A, se tiene que A ∈ Γ o bien ¬A ∈ Γ.

eer r Toda interpretacion, I ∈ I, determina de forma natural un conjunto finitamente satisfaciblemaximal, denotado ΓI y definido por

A ∈ ΓI si y solo si I(A) = 1

La inversa de esta propiedad es de gran interes y nos la asegura la siguiente proposicion:

Proposicion 3.5 Todo conjunto finitamente satisfacible maximal tiene un y solo un modelo.

Demostracion: Sea Γ un conjunto finitamente satisfacible maximal. Puesto que Γ es maximal,para todo p ∈ Vprop se tiene que p ∈ Γ o bien ¬p ∈ Γ. Definimos la interpretacion IΓ como sigue

IΓ(p) = 1 si y solo si p ∈ Γ

Veamos en primer lugar que IΓ ∈ Mod(Γ). Sea A ∈ Γ y denotemos:

∆+ = p ∈ Vprop | p ocurre en A y Γ+1 = ∆+ ∩ Γ

∆− = ¬p | p ∈ ∆+ y Γ−1 = ∆− ∩ Γ

Se tiene pues que Γ+1 ∪Γ−1 ∪A ⊆ Γ y es finito (ya que Vprop(A) es finito). Por lo tanto, por hipotesis,

es satisfacible. Ademas, por la construccion de Γ+1 y Γ−1 se tiene que Mod(Γ+

1 ∪ Γ−1 ∪ A) =Mod(Γ+

1 ∪ Γ−1 ). En efecto, Cualquier modelo I de Γ+1 ∪ Γ−1 puede extenderse de manera natural a

un modelo de Γ, que sera tambien un modelo de A, ya que A ∈ Γ. Los atomos que componen Aestan en Γ+

1 , por tanto, la restriccion de dicho modelo a I evalua A y es un modelo de Γ+1 ∪Γ−1 ∪A.

Ahora, puesto que IΓ ∈ Mod(Γ+1 ∪Γ−1 ), se tiene que IΓ(A) = 1 y puesto que A es una fbf cualquiera

de Γ, se tiene que IΓ ∈Mod(Γ).

Veamos que Mod(Γ) = IΓ. En efecto, sea I ′ ∈ Mod(Γ). Dada una variable proposicional cual-quiera, tenemos que

Si p ∈ Γ, entonces I ′(p) = IΓ(p) = 1

Si p 6∈ Γ, puesto que Γ es maximal, ¬p ∈ Γ y, en consecuencia, I ′(p) = IΓ(p) = 0.

Por lo tanto, I ′ = IΓ.

Como consecuencia de esta proposicion, tenemos el siguiente teorema:

15Podrıamos preguntarnos cual es la utilidad practica de considerar conjuntos infinitos de fbfs. En efecto, nuestrointeres al estudiar la logica proposicional esta en razonamientos con un conjunto finito de hipotesis y nunca nosvamos a encontrar con la necesidad de analizar la satisfacibilidad de un conjunto infinito de fbfs. Sin embargo,cuando estudiemos la logica de predicados de primer orden, podremos comprobar que el analisis de la satisfacibilidadde un conjunto finito de fbfs de la logica de primer orden se reduce a analizar la satisfacibilidad de un conjuntoposiblemente infinito de fbfs de la logica proposicional.

Page 72: Cur So Bueno Logic A

64 CAPITULO 3. LOGICA PROPOSICIONAL

Teorema 3.5 (de Compacidad) Un conjunto Γ de fbfs es satisfacible si y solo si es finitamentesatisfacible. 16

Demostracion: Si Γ es satisfacible, se tiene que, obviamente, es finitamente satisfacible.

Inversamente, supongamos que Γ es finitamente satisfacible. Sea A1, A2, . . . , An . . . una enumeracionde todas las fbfs del lenguaje Lprop

17. Construimos la siguiente sucesion de subconjuntos de fbfs:

Γ0 = Γ

para todo n ≥ 1, si Γn ∪ An es finitamente satisfacible, entonces, Γn+1 = Γn ∪ An y encaso contrario Γn+1 = Γn ∪ ¬An

Ahora, es inmediato comprobar que Γn es finitamente satisfacible para todo n:

Γ0 es finitamente satisfacible por hipotesis.

supongamos que Γn es finitamente satisfacible y veamos que Γn+1 lo es.

- si Γn+1 = Γn ∪ An el resultado es cierto, por construccion;

- si Γn+1 = Γn ∪ ¬An, entonces existe un subconjunto finito Γ′ de Γn tal que Γ′ ∪ Anes insatisfacible. Sea Γ′′ un subconjunto finito cualquiera de Γn+1. Por la hipotesis deinduccion, se tiene que (Γ′ ∪ Γ′′) \ ¬An ⊆ Γn es satisfacible.

Sea I ∈ Mod((Γ′ ∪ Γ′′) \ ¬An

). Puesto que Γ′ ∪ An es insatisfacible, se tiene que

I(An) = 0; por lo tanto, I(¬An) = 1 y, en consecuencia, I ∈ Mod(Γ′ ∪ Γ′′ ∪ ¬An) ⊆Mod(Γ′′). Puesto que Γ′′ es un subconjunto finito cualquiera de Γn+1, tenemos demos-trado que Γn+1 es finitamente satisfacible.

Construyamos Ω =⋃

n Γn. Este conjunto es finitamente satisfacible maximal, ya que todo subcon-junto finito de Ω es un subconjunto de Γn para algun n y, por lo tanto satisfacible. Finalmente, esclaro que Mod(Ω) ⊆Mod(Γ).

3.5. Consecuencia Logica

En esta seccion estudiamos el concepto que, como hemos venido repitiendo, es nuestro objetivofundamental: conocer cuando un enunciado de la logica proposicional es consecuencia de otros yque, como en el caso general, es el concepto de consecuencia logica.

Definicion 3.22 Sea un conjunto de fbfs Ω ⊆ Lprop y una fbf, C ∈ Lprop. Se dice que C esconsecuencia, se infiere o se deriva semanticamente de Ω, denotado Ω |= C, si

Mod(Ω) ⊆Mod(C)

es decir, si para toda interpretacion I ∈ ILprop se tiene que, si I(Ai) = 1 para toda fbf Ai ∈ Ωentonces tambien se tiene que I(C) = 1. En definitiva, no es posible que todas las fbfs de Ω seanverdaderas y C sea falsa.

En la definicion Ω puede no ser finito. No obstante se tiene el siguiente resultado que es una versionequivalente del teorema de compacidad.

16Equivalentemente, un conjunto Γ de fbfs es insatisfacible si y solo si contiene un subconjunto finito insatisfacible.17Recordemos que Lprop es infinito numerable, es decir, |Lprop| = ℵ0

Page 73: Cur So Bueno Logic A

3.5. CONSECUENCIA LOGICA 65

Teorema 3.6 Ω |= C si y solo si existe un subconjunto finito Ω0 de Ω tal que Ω0 |= C.

Si Ω = A1, A2, . . . , An, es costumbre expresarlo:

A1, A2, . . . , An |= C en lugar de Ω |= C

y denominar a las fbfs Ai premisas o hipotesis y a la fbf C conclusion.

Comenzemos destacando algunas propiedades que son consecuencias inmediatas de la definicion.

Teorema 3.7

1. Si Ω es insatisfacible, entonces se tiene que Ω |= A para toda fbf A. 18

2. Ω es insatisfacible si y solo si Ω |= ⊥.

3. Si A es una fbf valida, entonces se tiene que Ω |= A para todo conjunto de fbfs Ω. 19

4. Si Ω es un conjunto de fbfs tales que todas son validas y Ω |= C, entonces C tambien esvalida.

5. Ω |= C si y solo si Ω ∪ ¬C es insatisfacible.

6. Supongamos que Ω es finito, Ω = H1,H2, . . . ,Hn. Entonces:

6.1 H1,H2, . . . ,Hn |= C si y solo si |= (H1 ∧H2 ∧ . . . ∧Hn)→ C.

6.2 H1,H2, . . . ,Hn |= C si y solo si H1,H2, . . . ,Hn ∪ ¬C es insatisfacible.

7. Propiedad reflexiva: Ω |= A, para toda fbf A ∈ Ω

8. Propiedad de monotonıa: Si Ω |= C y Ω ⊆ Ω′, entonces Ω′ |= C.

9. Propiedad del Corte: Si Ω |= A y Ω, A |= B, entonces Ω |= B

Demostracion:

1. Ω es insatisfacible si y solo si Mod(Ω) = ∅, por lo tanto, ∅ ⊆Mod(A) sea cual sea A.

2. Es inmediato, ya que Ω es insatisfacible si y solo si Mod(Ω) = ∅ =Mod(⊥).

3. Si A es valida, se tiene queMod(A) = ILprop, por lo tanto, Mod(Ω) ⊆ ILprop sea cual sea Ω.

4. Si todas las formulas de Ω = Ai | i ∈ Λ son validas, se tiene queMod(Ω) =⋂

i∈ΛAi = ILprop

y por lo tanto, si Ω |= C, se tiene que Mod(Ω) = ILprop ⊆ Mod(C) y, en consecuencia,Mod(C) = ILprop, es decir, C es valida.

5. Ω |= C si y solo si Mod(Ω) ⊆ Mod(C) si y solo si Mod(Ω)cap(ILprop \ Mod(C) = ∅ si ysolo si Mod(Ω) ∩ Contramod(C) = ∅ si y solo si Mod(Ω) ∩ Mmod(¬C) = ∅ si y solo siMod(Ω ∪ ¬C) = ∅ si y solo si es Ω ∪ ¬C es insatisfacible.

18El resultado nos advierte que de una “inconsistencia” se deriva cualquier afirmacion. De aquı que tendremos queasegurarnos (si deseamos realizar razonamientos de interes) de que el conjunto de hipotesis es satisfacible

19En consecuencia, nuestro interes estara en las conclusiones no validas

Page 74: Cur So Bueno Logic A

66 CAPITULO 3. LOGICA PROPOSICIONAL

6. 6.1 H1,H2, . . . ,Hn |= C si y solo si, para toda interpretacion I ∈ ILprop se tiene que: siI(Hi) = 1, 1 ≤ i ≤ n, entonces I(C) = 1 si y solo si, para toda interpretacion I ∈ ILprop

se tiene que: si I(H1 ∧ . . .n) = 1, entonces I(C) = 1 si y solo si, para toda interpretacionse tiene que: si I( (H1 ∧H2 ∧ . . . ∧Hn)→ C) ) = 1.

6.2 Por el item anterior H1,H2, . . . ,Hn |= C si y solo si, para toda interpretacion I ∈ ILprop

se tiene que: si I(Hi) = 1, 1 ≤ i ≤ n, entonces I(C) = 1 si y solo si: si I(Hi) = 1,1 ≤ i ≤ n, entonces I(¬C) = 0 y, por lo tanto, si y solo si H1,H2, . . . ,Hn ∪ ¬C esinsatisfacible.

7. Es obvio. Si I es un modelo de Ω, I asigna el valor 1 a todas las fbfs de A y, en particular aA.

8. Tambien es inmediato, ya que si Ω ⊆ Ω′ se tiene que Mod(Ω′) ⊆ Mod(Ω) y por lo tanto, siMod(Ω) ⊆Mod(A), tambien se tiene que Mod(Ω′) ⊆Mod(A).

9. Tenemos que comprobar que Mod(Ω) ⊆Mod(B): para ello, basta tener en cuenta que

por la hipotesis Ω |= A, se tiene que Mod(Ω) ⊆ Mod(A) y por tanto, Mod(Ω) ∩Mod(A) =Mod(Ω)

por la hipotesis Ω, A |= B, se tiene que Mod(Ω ∪ A) ⊆Mod(B)

Ahora bien, Mod(Ω ∪ A) = Mod(Ω) ∩Mod(A) y , por el primer item: Mod(Ω ∪ A) =Mod(Ω) ∩Mod(A) = Mod(Ω). Por lo tanto, el segundo item nos asegura que Mod(Ω) ⊆Mod(B).

eer r Al igual que hicimos al destacar la diferencia entre la conectiva↔, que es un sımbolo del lenguajey el metasımbolo ≡ que expresa la equivalencia logica, es importante que ahora insistamos enla diferencia que existe entre el conectivo →, que no hace referencia a ninguna relacion causalentre las fbfs que conecta, y el metasımbolo |=. Cuando afirmamos A |= B, estamos usandoel metalenguaje para expresar que si el enunciado representado por A es verdadero, podemosasegurar que tambien es verdadero el enunciado representado por B. Los sımbolos→ y |= estanpues a niveles sintacticos distintos. Sin embargo, entre el metasımbolo (|=) y el conectivo (→)existe la siguiente relacion:

A |= B si y solo si |= A→ B

En definitiva, A |= B o, equivalentemente |= A→ B o, equivalentemente, Mod(A) ⊆Mod(B),nos indica que la informacion de B esta implıcita en la informacion de A, o bien que A es masfuerte que B.

Por ultimo, es inmediato comprobar el siguiente teorema:

Teorema 3.8 Las fbfs A y B son logicamente equivalentes si y solo si A |= B y B |= A

Page 75: Cur So Bueno Logic A

3.6. EJERCICIOS 67

3.6. Ejercicios

1. Formalice las siguientes frases:

a) Si o bien dimiten tanto el primer embajador como el segundo embajador o bien elprimer embajador ni dimite ni compromete al encargado de negocios, en cualquier casoel segundo embajador dimitira si, y solamente si, el primer embajador compromete alencargado de negocios.

b) - Si el paciente tiene rubeola, tiene fiebre.

- Si el paciente tiene hepatitis, pero no tiene rubeola, tiene la piel amarilla.

- Si el paciente tiene fiebre o tiene la piel amarilla, tiene hepatitis o tiene rubeola.

2. Defina recursivamente: el numero de parentesis de una formula, el numero de conectivasbinarias de una formula y el numero de atomos de una formula.

3. Demuestre, haciendo uso del Principio de Induccion Estructural, que toda fbf tiene un numeropar de parentesis.

4. Demuestre por induccion estructural que, para toda fbf, A, se tiene que pr(A) ≤ gr(A).

5. Supongamos que se nos entregan ocho tarjetas que poseen la siguiente caracterıstica: todasellas tienen dibujado por una cara un triangulo y por la otra cara un cırculo, de tal modoque si la cara visible de una tarjeta muestra un triangulo, podemos tener la certeza de quehabra un cırculo por la otra cara y viceversa. Ahora bien, tanto los triangulos como los cırculospueden ser de dos colores: rojos o azules. Y aquı ya no hay seguridad: por ejemplo, si en unacara de una tarjeta aparece dibujado un triangulo rojo, sabemos que en la otra cara haynecesariamente un cırculo, pero no sabemos si ese cırculo es rojo o azul.

Supongamos ahora que de esas ocho tarjetas se eligen cuatro. Esas cuatro tarjetas tienen ensus caras visibles estas cuatro figuras: un triangulo rojo, un cırculo rojo, un triangulo azul yun cırculo azul. Para cada uno de las siguientes afirmaciones, ¿cual serıa el numero mınimode tarjetas de las que habra que conocer su cara no visible para poder contestar si es o noverdadera?:

- En todas las tarjetas hay un triangulo rojo y un cırculo azul.

- En todas las tarjetas hay un triangulo rojo o un cırculo azul.

- En todas las tarjetas donde hay un triangulo rojo hay un cırculo azul.

- Solamente hay un cırculo azul en aquellas tarjetas en las que hay un triangulo rojo.

6. Exprese en terminos de ¬,∧,∨ la conectiva ternaria ∗ cuya tabla de verdad es

A B C ∗(A,B,C)

1 1 1 11 1 0 11 0 1 01 0 0 00 1 1 00 1 0 10 0 1 10 0 0 0

Page 76: Cur So Bueno Logic A

68 CAPITULO 3. LOGICA PROPOSICIONAL

7. Pruebe que → no es definible en terminos de ∨,∧.

8. Pruebe que los unicos conjuntos unitarios adecuados de conectivas son | (| se lee “Nand” o“barra de Scheffer”) y ↓ (↓ se lee “Nor” o “flecha de Peirce”) cuya semantica viene dada,respectivamente, por las funciones b9 y b14 de la tabla dada en la seccion 3.2.2.

9. Sea ⊕ el conectivo “o exclusivo”. Probar que ⊕,∧,⊤ es un conjunto adecuado.

10. Exprese la formula (¬p∧¬q)→ (¬r∧s) de manera equivalente usando los siguientes conjuntosadecuados de conectivas ¬,∧, ¬,∨ y ¬,→.

11. ¿Cual es la relacion semantica entre A ∧ (B ⊕ C) y (A ∧B)⊕ C?

12. Sea A una fbf. Pruebe que si ¬A es una tautologıa entonces A tiene al menos una ocurrenciade ¬.

13. Demuestre que si A es una formula en la que no aparece el sımbolo de negacion, entonces Aes satisfacible.

14. Dada una fbf satisfacible, A, razone si son o no ciertas cada una de las siguientes afirmaciones:

a) ¬A es valida,

b) ¬A es satisfacible,

c) ¬A es insatisfacible.

15. Pruebe que para todo n ∈ N existe un conjunto de fbfs de cardinal n, Ω tal que satisface(simultaneamente) las dos condiciones siguientes:

a) Ω es insatisfacible.

b) Todo subconjunto de Ω de cardinal n− 1 es satisfacible.

16. Demuestre que

a) Si Ω es satisfacible, entonces:

1) Si se elimina una de sus fbfs, entonces el conjunto resultante es satisfacible,

2) Si se le anade una fbf valida, el conjunto resultante es satisfacible,

3) Si se le anade una contradiccion, el conjunto resultante es insatisfacible,

4) Si se le anade una fbf satisfacible no se puede asegurar que el conjunto resultantesea satisfacible.

b) Si Ω es insatisfacible, entonces:

1) Si se le anade una fbf arbitraria, entonces el conjunto resultante es insatisfacible,

2) Si se elimina de entre sus fbfs una fbf valida (si la hubiera), el conjunto resultantees insatisfacible,

3) Si se elimina una fbf arbitraria no valida, no se puede asegurar que el conjuntoresultante sea insatisfacible.

17. Un conjunto, Ω, de fbfs se dice minimal insatisfacible si es satisfacible y todos sus subcon-juntos propios son satisfacibles, Determine cuales de los siguientes conjuntos son minimalinsatisfacibles;

Page 77: Cur So Bueno Logic A

3.6. EJERCICIOS 69

a) p→ ¬q, p→ ¬r, p ∧ q, r,

b) p→ ¬q, p→ ¬r, q ∨ r, p,

c) p→ q, p→ r, q ∧ r,¬p.

Pruebe que todo conjunto tiene un subconjunto minimal insatisfacible.

18. Probar que todo conjunto minimal insatisfacible es finito.

19. Determine los modelos y contramodelos de la formula A = (p∨¬q)→ (p∧ q). ¿Es satisfaciblela formula A? ¿Es valida la formula A?

20. Determine los modelos y contramodelos de la formula A = (p → ¬q) → (¬p ∨ ¬q) ¿Essatisfacible la formula A? ¿Es valida la formula A?

21. Sea Λ ⊆ I un conjunto de interpretaciones. Conteste razonadamente si existe una fbf A talque Mod(A) = Λ.

22. Construya, si es posible: (a) una formula bien formada que NO sea valida; (b) una formulabien formada que SI sea valida; (c) una formula valida que NO sea bien formada.

23. Construya, si es posible: (a) una formula satisfacible que NO sea valida; (b) una formulasatisfacible que SI sea valida; (c) una formula valida que NO sea satisfacible.

24. Determine si son insatisfacibles, satisfacibles o validas las siguientes formulas:

(p→ q)→ p, (p ∨ q)→ ¬(q ∨ p), (p ∨ q)→ (q ∧ p), (p ∨ q)→ (p ∨ r), (p→ q) ∧ (¬p ∨ q)

25. Determine si son satisfacibles o insatisfacibles los siguientes conjuntos de formulas:

p ∨ q,¬(¬p→ q), p→ q, (p ∧ q)→ ¬p, p,¬q, p ∧ q, p, q, p ∨ q

26. Escriba cinco formulas con tres variables proposicionales distintas y grado mayor que cinco.Diga cuales son insatisfacibles, cuales son satisfacibles y cuales son validas.

27. Demuestre el principio de Dualidad: Sean A,B fbfs que solo contiene las conectivas ¬,∧ y ∨.Entonces:

a) |= A si y solo si |= ¬dual(A)

b) A ≡ B si y solo si dual(A) ≡ dual(B)

28. Dadas las siguientes fbfs:

(p ∨ q) ∧ ((q ∧ (r ∨ ((r ∨ s) ∧ p))) ∨ r)

((p→ q)→ r)↔ (p→ r)

(p→ (q → r))→ ((p ∧ s)→ r)

(p→ (q → r))→ ((p→ q)→ (p→ r))

(¬p→ (q ∧ ¬r))→ ((¬q ∨ r)→ ((p ∧ ¬q) ∨ (p ∧ r)))

¬p→ (((r ∧ s) ∨ (r ∧ ¬s)) ∧ (p ∨ q))

Page 78: Cur So Bueno Logic A

70 CAPITULO 3. LOGICA PROPOSICIONAL

p ∧ ((p ∨ q)→ ((q → r)→ s))

(p→ (q ∧ r))→ ((q ↔ ¬r)↔ (r|p))

Obtenga fnds y fncs equivalentes a cada una de ellas.

29. Supongamos que un polıtico declara en la prensa:

“Si los impuestos suben, la inflacion bajara si y solo si el euro no se devalua”

para posteriormente, decir en un informativo de una cadena televisiva:

“Si la inflacion baja o el euro no se devalua, los impuestos no subiran”

y despues afirmar en el Congreso:

“o bien baja la inflacion y se devalua el euro, o han de subir los impuestos”

Nuestro polıtico publica luego un informe en el que, tras reiterar las afirmaciones anteriores,saca de ellas la siguiente conclusion:

“Los impuestos deben subir, pero la inflacion no bajara y el euro no se devaluara”

¿Es valido su razonamiento?

30. Pruebe si es o no valido el siguiente razonamiento:

“Si ha escapado Moriarty, entonces o Holmes ha claudicado o Watson sigue conel asunto. Watson sigue con el asunto. Holmes no ha claudicado a no ser que Mo-riarty haya escapado. Por lo tanto, Moriarty ha escapado si y solo si Holmes haclaudicado”.

31. En una isla hay dos tribus, la de los veraces (que siempre dicen la verdad) y la de los mentirosos(que siempre mienten). Un viajero se encuentra con tres islenos A, B y C y cada uno le diceuna frase:

a) A dice: “B y C son veraces si y solo si C es veraz”

b) B dice: “Si A y C son veraces, entonces C y yo somos veraces y A es mentiroso”

c) C dice: “B es mentiroso si y solo si A es veraz o B es veraz”

Determine a que tribu pertenecen A, B y C.

32. Determine los modelos y contramodelos del conjunto Ω = ¬p → p,¬p ∨ r,¬q → r. ¿Elconjunto Ω es satisfacible? ¿Es correcta la inferencia Ω |= q? ¿Es correcta la inferencia Ω |= r?

33. CalculeMod(∅) y caracterice el conjunto consecuencia semantica de ∅, es decir, el conjuntoC ∈ L | ∅ |= C.

34. Demuestre que si Ω es un conjunto de fbfs y A, B y C son fbfs se tiene:

a) Ω |= B ∧ C si y solo si Ω |= B y Ω |= C.

b) Si Ω ∪ A |= B, entonces Ω |= A→ B.

Page 79: Cur So Bueno Logic A

3.6. EJERCICIOS 71

c) A,A→ B |= B.

d) A |= A ∨B y B |= A ∨B. El recıproco es falso.

e) Si Ω ∪ A |= C y Ω ∪ B |= C entonces Ω ∪ A ∨B |= C.

f ) Si ¬B ∈ Ω y Ω ∪ A |= B entonces Ω |= ¬A.

g) Pruebe que Ω |= A sii Ω ∪ ¬A es insatisfacible

h) Usando el resultado anterior, pruebe que ¬B → A,¬A ∨ C,¬B → ¬C |= C

35. Demuestre que si Ω y Γ son conjuntos de fbfs y A y B son fbfs se tiene que:

a) Si Ω |= A y Γ |= A→ B, entonces Ω ∪ Γ |= B.

b) Si Ω |= A ∧ ¬A entonces, para toda fbf C se tiene que Ω \ ¬C |= C.

36. Pruebe que para fbfs cualesquiera A y B se tiene:

a) A ≡ B si y solo si A |= B y B |= A.

b) A ≡ B si y solo si para toda fbf C: A |= C sii B |= C.

37. Dadas dos fbfs cualesquiera, A y B, decimos que A es mas fuerte que B si |= A→ B Contesterazonadamente a las siguientes preguntas:

a) ¿Existe una fbf mas fuerte que todas las demas?

b) ¿Existe una fbf mas debil que todas las demas?

38. Razone sobre la veracidad de las siguientes afirmaciones:

a) Si una formula no es valida, su negacion sı lo es.

b) Si una formula no es satisfacible, su negacion sı lo es.

c) Si una formula no es consecuencia de un conjunto de formulas, su negacion sı lo es.

d) Si una formula no es consecuencia de un conjunto de formulas, su negacion tampoco.

e) Si un conjunto de formulas es satisfacible, cada elemento del conjunto tambien es satis-facible.

f ) Si cada elemento de un conjunto de formulas es satisfacible, el conjunto tambien essatisfacible.

g) Si Ω |= A, es posible que exista Ω′ ⊃ Ω tal que Ω′ 6|= A.

h) Si Ω 6|= A, es posible que exista Ω′ ⊃ Ω tal que Ω′ |= A.

39. Un conjunto Ω de fbfs se dice independiente si, para toda fbf A ∈ Ω, se tiene que Ω\A 6|= A.

a) Pruebe que para todo conjunto Ω finito existe un subconjunto Ω0 independiente tal quepara toda fbf A ∈ Ω, se tiene que Ω0 |= A.

b) Sea A1, A2, . . . , An, . . . una enumeracion de los elementos de Ω. Encuentre una sucesionde fbfs ,Ω′ = B1, B2, . . . , Bn, . . ., tal que:

1) Ω y Ω′ son equivalentes, es decir, Ω |= Bi y Ω′ |= Ai para todo i.

2) |= Bi+1 → Bi y 6|= Bi → Bi+1 para todo i.

Page 80: Cur So Bueno Logic A

72 CAPITULO 3. LOGICA PROPOSICIONAL

3) Dada la sucesion Ω′ obtenida en (ii), definimos C1 = B1 y Ck = Bk−1 → Bk paratodo k > 1. Pruebe que Ω” = C1, C2, . . . , Cn . . . es independiente y equivalente aΩ′.

4) Pruebe que todo conjunto infinito numerable de fbfs Ω, es equivalente a un conjuntoindependiente.

Page 81: Cur So Bueno Logic A

Capıtulo 4

Teorıa de la Demostracion para laLogica Proposicional

En el capıtulo anterior hemos estudiado el lenguaje y la semantica de la logica proposicional. Eneste capıtulo estudiaremos el tercer aspecto destacado por Martin-Lof: La teorıa de la demostracion.

Como punto de partida, dada una logica, es decir, un lenguaje L y una teorıa de modelos, (S,D,I)para L, existen, en general, diversos sistemas de demostracion para tal logica, que podemos clasificaren:

Sistemas de deduccion.

Sistemas de refutacion.

En un sistema de deduccion, la verificacion de una formula (o de una inferencia) se realiza direc-tamente, mediante lo que podrıamos llamar mecanismos de razonamiento hacia adelante. Estosmecanismos conducen finalmente a la formula por verificar (o van de las hipotesis a la conclusionen el caso de la verificacion de una inferencia).

En un sistema de refutacion, por el contrario, se realiza un razonamiento hacia atras, en el siguientesentido: haciendo uso de la conexion entre los conceptos semanticos de validez e insatisfacibilidad:

A es valida si y solo si ¬A es insatisfacible

Ω |= A si y solo si Ω ∪ ¬A es insatisfacible

En estos sistemas, se verifica la formula (o la inferencia), intentando refutar la negacion de laformula (o el conjunto de las hipotesis y la negacion de la conclusion).

Los tipos mas destacados de sistemas de deduccion son:

Sistemas axiomaticos (o sistemas de tipo Hilbert).

Sistemas de deduccion Natural.

En este capıtulo estudiaremos un sistema axiomatico y un sistema de deduccion natural para lalogica clasica proposicional.

73

Page 82: Cur So Bueno Logic A

74 CAPITULO 4. TEORIA DE LA DEMOSTRACION PARA LA LOGICA PROPOSICIONAL

4.1. Un Sistema Axiomatico para la Logica Proposicional

Deseamos caracterizar la validez semantica y la consecuencia logica en terminos puramente sintacti-cos, saber si una fbf es valida (|= A) o bien si un razonamiento es valido (H1,H2, . . . ,Hn |= C) sinrecurrir a la busqueda de modelos.

Sabemos que las tablas de verdad nos permiten mostrar que una determinada fbf es una tautologıao que un razonamiento es valido. Un sistema axiomatico nos permite explicitar como y por que loes, demostrando como se obtiene tal tautologıa o bien como se llega a la conclusion C a partir delas hipotesis, mediante reglas de transformacion.

Como hemos visto en el Capıtulo 2 (al describir el sistema MIU), un sistema axiomatico para unlenguaje logico L consiste en:

un conjunto de fbfs de L llamadas axiomas, y

un conjunto finito de relaciones de la forma A1, A2, . . . , An ⊢ A llamadas, reglas de inferencia,donde Ai (1 ≤ i ≤ n) y A representan fbfs de L.

A partir de los axiomas y usando las reglas de inferencia, obtenemos fbfs llamadas teoremas.

Si A1, A2, . . . , An ⊢ A es una regla de inferencia, es costumbre decir que la fbf A es una consecuenciadirecta de las fbfs Ai (1 ≤ i ≤ n).

Dos sistemas axiomaticos S y S ′ para un lenguaje logico, L, se dicen equivalentes si el conjunto deteoremas de S coincide con el conjunto de teoremas de S ′. En particular, si suponemos que ambostienen las mismas reglas de inferencia, entonces S y S ′ son equivalentes si y solo si todo axioma deS es un teorema de S ′ y todo axioma de S ′ es un teorema de S.

Entre los diversos sistemas axiomaticos equivalentes para la logica clasica proposicional, hemosescogido uno de los mas usados, debido a Lukasiewicz, al que denotaremos L.

4.1.1. El Sistema L de Lukasiewicz

Este sistema considera como conectivos primitivos la negacion (¬) y la implicacion material (→).Su conjunto de axiomas es el siguiente:

Ax.1 A→ (B → A)

Ax.2 (A→ (B → C))→ ((A→ B)→ (A→ C))

Ax.3 (¬A→ ¬B)→ (B → A)

Puesto que A,B y C son metasımbolos (que representan fbfs), los Ax.1, Ax.2 y Ax.3 no son axiomasen el sentido estricto del termino, sino “esquemas de axiomas”. Por lo tanto, el conjunto de axiomases un conjunto numerable de fbfs, el cual se ha especificado mediante un conjunto finito de esquemasde axiomas.

Existe una unica regla de inferencia llamada modus ponens (abreviadamente MP)

MP: A,A→ B ⊢ B

Definicion 4.1 Una fbf A se dice que es un teorema de L, si existe una secuencia finita de fbfs,A1, A2, . . . , An, tal que:

1. Cada Ai (1 ≤ i ≤ n) es un axioma o es obtenida mediante la aplicacion de MP a dos fbfsanteriores en la secuencia.

Page 83: Cur So Bueno Logic A

4.1. UN SISTEMA AXIOMATICO PARA LA LOGICA PROPOSICIONAL 75

2. An es A.

La secuencia A1, A2, . . . , An se dice es una demostracion de A. Obviamente, todo axioma es unteorema cuya demostracion se reduce a una secuencia con el como unico elemento.

Definicion 4.2 Dado un conjunto, Ω, de fbfs, se dice que A es deducible o derivable en L desdeΩ, denotado Ω ⊢ A, si existe una secuencia finita de fbfs A1, A2, . . . , An tal que:

1. Cada Ai (1 ≤ i ≤ n) es un axioma, una fbf de Ω, o es obtenida de dos fbfs anteriores en lasecuencia mediante la aplicacion de MP.

2. An es A.

La secuencia, A1, A2, . . . , An, se dice que es una deduccion o derivacion de A desde Ω. Es obvio,por definicion, que toda demostracion de una fbf A es una deduccion de A desde Ω = ∅, por ellose denota ⊢ A para expresar que A es un teorema.

eer r Por las definiciones de demostracion y deduccion, tenemos asegurado dos resultados de in-teres:

Si A1, A2, . . . , An es una demostracion de A, no solo An = A es un teorema, sino que losson tambien todos los Ai con 1 ≤ i < n.

Teorema de Finitud: Si Ω ⊢ A, entonces existe un subconjunto finito Ω′ ⊆ Ω tal queΩ′ ⊢ A (las fbfs de Ω de las que consta una deduccion de A a partir de Ω).

Teorema de Monotonıa Si Ω ⊢ A y Ω′ ⊇ Ω, entonces Ω′ ⊢ A (basta considerar ladeduccion de A a partir de Ω, que tambien es una deduccion de A a partir de Ω′).

En el siguiente ejemplo probamos que A→ A y ¬B → (B → A) son teoremas de L.

Ejemplo 4.1

- Una demostracion de A→ A es:

1. A→ ((A→ A)→ A) Ax.1

2. (A→ ((A→ A)→ A))→ ((A→ (A→ A))→ (A→ A)) Ax.2

3. (A→ (A→ A))→ (A→ A) MP(1,2)

4. A→ (A→ A) Ax.1

5. A→ A MP(3,4)

- Una demostracion de ¬B → (B → A) es:

1. (¬A→ ¬B)→ (B → A) Ax.3

2. ((¬A→ ¬B)→ (B → A))→ (¬B → ((¬A→ ¬B)→ (B → A))) Ax.1

3. ¬B → ((¬A→ ¬B)→ (B → A)) MP(1,2)

4. (¬B → ((¬A→ ¬B)→ Ax.2

(B → A)))→ ((¬B → (¬A→ ¬B))→ (¬B → (B → A)))

5. (¬B → (¬A→ ¬B))→ (¬B → (B → A)) MP(3,4)

6. ¬B → (¬A→ ¬B) Ax.1

7. ¬B → (B → A) MP(5,6)

Page 84: Cur So Bueno Logic A

76 CAPITULO 4. TEORIA DE LA DEMOSTRACION PARA LA LOGICA PROPOSICIONAL

El siguiente (meta)teorema acerca del sistema L, debido a Jacques Herbrand, es de gran utilidadpara facilitar las deducciones y en particular las demostraciones.

Teorema 4.1 (de la deduccion) Para todo conjunto de fbfs, Ω, y dos fbfs cualesquiera A y B:

Si Ω ∪ A ⊢ B, entonces Ω ⊢ A→ B

Demostracion: Tenemos que demostrar que si existe una deduccion de B desde Ω∪A, entoncesexiste una deduccion de A → B desde Ω. Lo demostraremos por induccion sobre el numero n defbfs de la secuencia que constituye la deduccion de B desde Ω ∪ A:

1. Si n = 1, tenemos tres posibilidades,

(i) B es un axioma de L. En este caso, una deduccion de A→ B a partir de Ω es:

1. B Ax.de L

2. B → (A→ B) Ax.1

3. A→ B MP(1,2)

(ii) B ∈ Ω. En este caso, una deduccion de A→ B a partir de Ω es:

1. B de Ω

2. B → (A→ B) Ax.1

3. A→ B MP(1,2)

(iii) B = A. En este caso, A→ B = A→ A. Por lo tanto la demostracion para A→ A dadaen el ejemplo anterior es una deduccion de A→ A a partir de Ω.

2. Supongamos ahora que el resultado es cierto para toda fbf para la que exista una deduccionde longitud k < n. Es decir, la hipotesis de induccion es:

Dada una fbf arbitraria, X, si existe una deduccion de longitud k < n de X desdeΩ ∪ A, entonces existe una deduccion de A→ X desde Ω.

y debemos demostrar que

Si existe una deduccion de longitud n de B desde Ω ∪ A, entonces existe unadeduccion de A→ B desde Ω.

En este caso tenemos cuatro posibilidades: las tres primeras son que B sea un axioma de L,o que B ∈ Ω o que B = A, y podemos obtener las deducciones de A → B a partir de Ωcomo en el caso n = 1. La cuarta posibilidad consiste en que B haya sido obtenida de dos fbfsanteriores en la secuencia, mediante la aplicacion de MP. Por lo tanto, estas dos fbfs tendranla forma C y C → B para alguna fbf C. Supongamos que la deduccion de B desde Ω ∪ Aes la siguiente:

(1) . . . . . .

(. . . ) . . . . . .

(m) C . . .

(. . . ) . . . . . .

(k) C → B . . .

Page 85: Cur So Bueno Logic A

4.1. UN SISTEMA AXIOMATICO PARA LA LOGICA PROPOSICIONAL 77

(. . . ) . . . . . .

(n) B MP(m,k)

Se tiene pues que la secuencia (1), . . . , (m) es una deduccion de C a partir de Ω ∪ A delongitud m < n, y la secuencia (1), . . . , (k) es una deduccion de C → B a partir de Ω ∪ Ade longitud k < n. Por lo tanto, por la hipotesis de induccion, existen deducciones de A→ Ca partir de Ω y de A→ (C → B) a partir de Ω; sean estas deducciones:

(1) . . . . . .

(. . . ) . . . . . .

(n1) A→ C . . .

y

(1) . . . . . .

(. . . ) . . . . . .

(n2) A→ (C → B) . . .

La deduccion buscada de A→ B a partir de Ω es:

(1) . . . . . .

(. . . ) . . . . . .

(n1) (A→ C) . . .

(1) . . . . . .

(. . . ) . . . . . .

(n2) A→ (C → B) . . .

(n1 + n2 + 1) (A→ (C → B))→ ((A→ C)→ (A→ B)) Ax. 2

(n1 + n2 + 2) (A→ C)→ (A→ B) MP (n2, n1 + n2 + 1)

(n1 + n2 + 3) (A→ B) MP (n1, n1 + n2 + 2)

El recıproco del teorema de la deduccion es inmediato:

Teorema 4.2 Para todo conjunto Ω de fbfs, se tiene que:

Si Ω ⊢ A→ B, entonces Ω ∪ A ⊢ B

Demostracion: Si tenemos una deduccion de A→ B a partir de Ω,

(1) . . . . . .

(. . . ) . . . . . .

(n1) A→ B . . .

entonces obtenemos la siguiente deduccion de B a partir de Ω ∪ A

Page 86: Cur So Bueno Logic A

78 CAPITULO 4. TEORIA DE LA DEMOSTRACION PARA LA LOGICA PROPOSICIONAL

(1) . . . . . .

(. . . ) . . . . . .

(n1) A→ B . . .

(n1 + 1) A de Ω ∪ A

(n1 + 2) B MP (n1, n1 + 1).

eer r Si analizamos la demostracion del metateorema de la deduccion, advertimos que las unicaspropiedades de L de las que hemos hecho uso son las siguientes:

1. Toda fbf del tipo A→ (B → A) es un teorema de L.

2. Toda fbf del tipo (A→ (B → C))→ ((A→ B)→ (A→ C)) es un teorema de L.

3. MP es la unca regla de inferencia.

Por lo tanto, en cualquier otro sistema axiomatico que satisfaga las tres propiedades anteriores,disponemos de este resultado.

El caso tıpico, por extremo, donde se observa a simple vista la utilidad del metateorema de ladeduccion es el teorema ⊢ A→ A, ya que es obvio que A ⊢ A.

Un hecho destacable en el problema de la deduccion es la posibilidad de utilizar nuevas reglas deinferencia. Si A es deducible a partir de A1, A2, . . . , An entonces la relacion

A1, A2, . . . , An ⊢ A

puede ser usada como nueva regla de inferencia o regla derivada en las deducciones. En lossiguientes ejemplos ilustramos el uso del metateorema de la deduccion para probar el segundoteorema del ejemplo anterior y para establecer la regla derivada llamada Silogismo Hipotetico(SH).

Ejemplo 4.2 Haciendo uso del metateorema de la deduccion tenemos que

⊢ ¬B → (B → A) si y solo si ¬B ⊢ (B → A) si y solo si ¬B,B ⊢ A

Por lo tanto, bastara encontrar una deduccion de A a partir de ¬B,B:

1. ¬B Hip.

2. ¬B → (¬A→ ¬B) Ax.1

3. ¬A→ ¬B MP(1,2)

4. (¬A→ ¬B)→ (B → A) Ax.3

5. B → A MP(3,4)

6. B Hip.

7. A MP(5,6)

Page 87: Cur So Bueno Logic A

4.1. UN SISTEMA AXIOMATICO PARA LA LOGICA PROPOSICIONAL 79

Ejemplo 4.3 Vamos a probar la validez en L de la siguiente deduccion (llamada silogismo hi-potetico)

A→ B,B → C ⊢ A→ C

Haciendo uso del metateorema de la deduccion,

A→ B,B → C ⊢ A→ C sii A→ B,B → C,A ⊢ C

Bastara encontrar una deduccion de C a partir de A→ B,B → C,A:

1. A→ B Hip.

2. B → C Hip.

3. A Hip.

4. B MP(1,3)

5. C MP(2,4)

Ejemplo 4.4 Vamos a demostrar los siguientes teoremas en L:

a) ⊢ (¬A→ A)→ A

b) ⊢ (¬A→ ¬B)→ ((¬A→ B)→ A)

c) A→ (B → C), B ⊢ A→ C

d) ⊢ ¬¬A→ A

e) ⊢ A→ ¬¬A

f) ⊢ (A→ B)→ (¬B → ¬A)

g) ⊢ A→ (¬B → ¬(A→ B))

h) ⊢ (A→ B)→ ((¬A→ B)→ B)

(a) Haciendo uso del metateorema de la deduccion,

⊢ (¬A→ A)→ A sii ¬A→ A ⊢ A

1. ¬A→ A Hip.

2. ¬A→ (¬¬(¬A→ A)→ ¬A) Ax.1.

3. (¬¬(¬A→ A)→ ¬A)→ (A→ ¬(¬A→ A)) Ax.3.

4. ¬A→ (A→ ¬(¬A→ A)) SH (2,3).

5. (¬A→ (A→ ¬(¬A→ A)))→ ((¬A→ A)→ (¬A→ ¬(¬A→ A))) Ax.2.

6. (¬A→ A)→ (¬A→ ¬(¬A→ A)) MP(4,5)

7. ¬A→ ¬(¬A→ A) MP (1,6)

8. (¬A→ ¬(¬A→ A))→ ((¬A→ A)→ A) Ax.3.

9. (¬A→ A)→ A MP (7,8)

10. A MP (1,9)

Page 88: Cur So Bueno Logic A

80 CAPITULO 4. TEORIA DE LA DEMOSTRACION PARA LA LOGICA PROPOSICIONAL

(b) Haciendo uso del metateorema de la deduccion,

⊢ (¬A→ ¬B)→ ((¬A→ B)→ A) sii ¬A→ ¬B,¬A→ B ⊢ A

1. ¬A→ ¬B Hip.

2. ¬A→ B Hip.

3. (¬A→ ¬B)→ (B → A) Ax.3.

4. B → A MP (1,3)

5. ¬A→ A SH (2,4).

6. (¬A→ A)→ A Por (a)

7. A MP (5,6)

(c) Haciendo uso del metateorema de la deduccion,

A→ (B → C), B ⊢ A→ C sii A→ (B → C), B,A ⊢ C

1. A→ (B → C) Hip.

2. B Hip.

3. A Hip.

4. B → C MP (1,3)

5. C MP (2,4)

(d) Una demostracion de ⊢ ¬¬A→ A es:

1. (¬A→ ¬¬A)→ ((¬A→ ¬A)→ A) Por (b).

2. ¬A→ ¬A Teorema (ejemplo 4.1)

3. (¬A→ ¬¬A)→ A Por (c) sobre 1 y 2

4. ¬¬A→ (¬A→ ¬¬A) Ax.1

5. ¬¬A→ A SH (3,4)

(e) Una demostracion de ⊢ A→ ¬¬A es:

1. (¬¬¬A→ ¬A)→ (A→ ¬¬A) Ax.3

2. ¬¬¬A→ ¬A Por (d)

3. A→ ¬¬A MP (1,2)

(f) Una deduccion de ¬B → ¬A a partir de A→ B es:

1. A→ B Hip.

2. ¬¬A→ A Por (d).

3. ¬¬A→ B MP (1,2)

4. B → ¬¬B Por (e).

5. ¬¬A→ ¬¬B SH (3,4).

6. (¬¬A→ ¬¬B)→ (¬B → ¬A) Ax.3

7. ¬B → ¬A MP (5,6)

Page 89: Cur So Bueno Logic A

4.1. UN SISTEMA AXIOMATICO PARA LA LOGICA PROPOSICIONAL 81

(g) Una deduccion de ¬(A→ B) a partir de A,¬B es:

1. A Hip.

2. A→ ((A→ B)→ B) Teorema

3. (A→ B)→ B MP (1,2)

4. ((A→ B)→ B)→ (¬B → ¬(A→ B) Por (f)

5. ¬B → ¬(A→ B) MP (3,4)

6. ¬B Hip.

7. ¬(A→ B) MP (5,6)

(h) Una deduccion de B a partir de A→ B,¬A→ B es:

1. A→ B Hip.

2. ¬A→ B Hip.

3. (A→ B)→ (¬B → ¬A) Por (f)

4. (¬B → ¬A) MP (1,2)

5. (¬A→ B)→ (¬B → ¬¬A) Por (f)

6. ¬B → ¬¬A MP (2,5)

7. (¬B → ¬¬A)→ ((¬B → ¬A)→ B) Por (b)

8. (¬B → ¬A)→ B MP (6,7)

9. B MP (4,8)

4.1.2. Correccion y Completitud de L

Es inmediato comprobar las siguientes afirmaciones:

Los axiomas del sistema L son tautologıas.

La regla MP conserva las tautologıas, es decir, si A y A → B son tautologıas entonces B estautologıa.

Por lo tanto, se tiene el siguiente resultado:

Teorema 4.3 (correccion de L) Todo teorema de L es una tautologıa, es decir

Si ⊢ A entonces |= A

El recıproco es tambien cierto, es decir, el sistema L es completo. Para su demostracion, establecemosen primer lugar el siguiente lema:

Page 90: Cur So Bueno Logic A

82 CAPITULO 4. TEORIA DE LA DEMOSTRACION PARA LA LOGICA PROPOSICIONAL

Lema 4.1 Sea A una fbf en la que solo intervienen los conectivos ¬ y →. Sea p1, p2, . . . , pn elconjunto de sımbolos proposicionales que intervienen en A. Dada una interpretacion I para A, paracada i ∈ 1, 2, . . . , n denotamos por p′i el sımbolo proposicional definido por:

p′i = pi si I(pi) = 1

p′i = ¬pi si I(pi) = 0

y denotamos por A′ la fbf definida por:

A′ = A si I(A) = 1

A′ = ¬A si I(A) = 0

Entonces, p′1, p′2, . . . , p

′n ⊢ A′.

Demostracion: Lo demostramos por induccion sobre el numero de ocurrencias de ¬ y → en A.

Si n = 0 se tiene que A = pi para algun i y tenemos que probar que p′i ⊢ p′i, resultado que yaconocıamos.

Supongamos el resultado cierto para todo k < n y probemoslo para n. Existen dos posibili-dades:

1. Si A = ¬B, entonces B tiene menos ocurrencias de ¬ y → que A. Por lo tanto,

a) Si I(B) = 1, se tiene que I(A) = 0, B′ = B y A′ = ¬A. Por hipotesis de induccion,p′1, p

′2, . . . , p

′n ⊢ B y, por el apartado (e) del ejemplo 4.4, B ⊢ ¬¬B = A′. Por lo

tanto, p′1, p′2, . . . , p

′n ⊢ A′.

b) Si I(B) = 0, se tiene que I(A) = 1, B′ = ¬B y A′ = A. Por hipotesis de induccion,p′1, p

′2, . . . , p

′n ⊢ ¬B = A′

2. Si A = B → C, entonces tanto B como C tienen menos ocurrencias de ¬ y → que A.Por lo tanto,

a) Si I(B) = 0, se tiene que I(A) = 1, B′ = ¬B y A′ = A. Por hipotesis de induccion,p′1, p

′2, . . . , p

′n ⊢ ¬B y, puesto que tenemos probado que ⊢ ¬B → (B → C), se

tiene que p′1, p′2, . . . , p

′n ⊢ (B → C) = A′.

b) Si I(C) = 1, se tiene que I(A) = 1, C ′ = C y A′ = A. Por hipotesis de induccion,p′1, p

′2, . . . , p

′n ⊢ C y, puesto que C → (B → C) es un axioma (Ax.1), se tiene que

p′1, p′2, . . . , p

′n ⊢ (B → C) = A′

c) Si I(B) = 1 y I(C) = 0, se tiene que I(A) = 0, B′ = B, C ′ = ¬C y A′ = ¬A.Por hipotesis de induccion, p′1, p

′2, . . . , p

′n ⊢ B y p′1, p

′2, . . . , p

′n ⊢ ¬C. Puesto que,

por (g) del ejemplo 4.4, ⊢ B → (¬C → ¬(B → C)), se tiene que p′1, p′2, . . . , p

′n ⊢

¬(B → C) = A′.

Teorema 4.4 (Completitud debil de L) Toda tautologıa es un teorema de L, es decir

Si |= A entonces ⊢ A

Page 91: Cur So Bueno Logic A

4.1. UN SISTEMA AXIOMATICO PARA LA LOGICA PROPOSICIONAL 83

Demostracion: Supongamos que A es una tautologıa y sea p1, p2, . . . , pn el conjunto de sımbolosproposicionales que intervienen en A. Para toda interpretacion I para A, por el lema anterior, setiene que las 2n expresiones p′1, p

′2, . . . , p

′n ⊢ A donde p′i = pi o p′i = ¬pi, son ciertas. Por lo tanto,

por el metateorema de la deduccion, p′1, p′2, . . . , p

′n−1 ⊢ pn → A y p′1, p

′2, . . . , p

′n−1 ⊢ ¬pn → A.

Ahora, el apartado (h) del ejemplo 4.4 asegura que p′1, p′2, . . . , p

′n−1 ⊢ A. El resultado buscado,

⊢ A, se obtiene repitiendo n− 1 veces este proceso. 1

El teorema de compacidad junto con el teorema de la deduccion y su inverso, permiten generalizarla equivalencia |= A si y solo si ⊢ A.

Tenemos ası el siguiente teorema

Teorema 4.5 (Correccion y Completitud Fuerte de L) Para todo conjunto Ω de fbfs,

Ω |= A si y solo si Ω ⊢ A

Demostracion: Si Ω |= A, entonces Ω∪¬A es insatisfacible y, por el teorema de compacidad 3.6,existe un subconjunto finito Ω′ = A1, . . . , An (de Ω) tal que Ω′ ∪ ¬A es insatisfacible y, enconsecuencia, Ω′ |= A. Con lo cual, |= (A1 ∧ . . . ∧ An) → A y, por el teorema de completituddebil 4.4,s ⊢ (A1 ∧ . . . ∧ An) → A. Ahora, aplicando el recıproco del teorema de deduccion 4.2, setiene que Ω′ ⊢ A y por la propiedad de monotonıa 4.1.1 de ⊢, llegamos al resultado deseado, esdecir, Ω′ ⊢ A.

Inversamente, si Ω ⊢ A, entonces, por el teorema de Finitud 4.1.1, existe un subconjunto finitoΩ′ = A1, . . . , An (de Ω) tal que Ω′ ⊢ A y, por el teorema de la deduccion 4.1, se tiene que⊢ (A1, . . . , An)→ A. Ahora, el teorema de la correccion debil nos asegura que |= (A1, . . . , An)→ Ao, equivalentemente, Ω′ |= A. Finalmente, aplicando la propiedad de monotonıa de |= llegamos alresultado deseado, es decir, Ω |= A.

Las equivalencias “|= A si y solo si ⊢ A” y “Ω |= A si y solo si Ω ⊢ A”, pueden expresarse en lossiguientes terminos:

Los planteamientos semantico y sintactico de la Logica Proposicional son equivalentesen cuanto a la caracterizacion de la verdad e inferencias logicas.

4.1.3. Independencia de los Axiomas de L

La completitud de L nos asegura que los esquemas de axiomas Ax.1, Ax.2 y Ax.3, son suficientespara demostrar todas las fbfs validas de la logica proposicional. En esta seccion veremos que elconjunto Ax.1, Ax.2, Ax.3 es minimal, en el siguiente sentido: ninguno de los tres puede serdemostrado a partir de los otros dos.

4.1.3.1. Ax.3 es independiente de Ax.1, Ax.2

Sea h : En→ En la aplicacion que a cada fbf A le asocia la fbf obtenida al eliminar en A todos losconectivos ¬. Entonces,

1. h(A→ (B → A)) = h(A)→ (h(B)→ h(A)) es una tautologıa para fbfs cualesquiera A y B.

1La demostracion fue dada por Kalmar en 1935.

Page 92: Cur So Bueno Logic A

84 CAPITULO 4. TEORIA DE LA DEMOSTRACION PARA LA LOGICA PROPOSICIONAL

2. h((A→ (B → C))→ ((A→ B)→ (A→ C))) =

(h(A) → (h(B) → h(C)) → ((h(A) → h(B)) → (h(A) → h(C))), es una tautologıa para fbfscualesquiera A, B y C.

3. Si A→ B y A son tautologıas, entonces B es una tautologıa.

Tenemos pues que la aplicacion h transforma los axiomas Ax.1 y Ax.2 en tautologıas, y que MPconserva tautologıas. Sin embargo, resulta que h((¬A → ¬B) → (B → A)) = (h(A) → h(B)) →(h(B)→ h(A)) no es una tautologıa. Por lo tanto, Ax.3 no es demostrable en L a partir de Ax.1 yAx.2.

4.1.3.2. Ax.1 es independiente de Ax.2, Ax.3

Para demostrar la independencia de Ax.1, definimos la siguiente semantica sobre el lenguaje L.

- El conjunto de valores semanticos es 0, 1, 2.

- El conjunto de valores destacados es 0.

- Una interpretacion para L es toda aplicacion I∗ : En→ 0, 1, 2 que satisfaga:

– I∗(¬A) = f∗¬(I∗(A))

– I∗(A→ B) = f∗→(I∗(A))

donde f∗¬ y f∗→ son las aplicaciones

f∗¬ : 0, 1, 2 → 0, 1, 2 y f∗→ : 0, 1, 2 × 0, 1, 2 → 0, 1, 2

definidas por las tablas siguientes

x f∗¬(x)

0 11 12 0

x y f∗→(x)

0 0 00 1 20 2 21 0 21 1 21 2 02 0 02 1 02 2 0

Una fbf, A, se dice especial si, para toda interpretacion I∗, se tiene I∗(A) = 0. Se deja al lectorcomprobar que:

1. (A→ (B → C))→ ((A→ B)→ (A→ C)) es especial para fbfs cualesquiera A y B.

2. (¬A→ ¬B)→ (B → A) es especial para fbfs cualesquiera A, B y C.

3. Si A→ B y A son especiales, entonces B es especial.

Sin embargo, A→ (B → A) no es especial. Por lo tanto, Ax.1 no es demostrable en L a partir deAx.2 y Ax.3.

Page 93: Cur So Bueno Logic A

4.1. UN SISTEMA AXIOMATICO PARA LA LOGICA PROPOSICIONAL 85

4.1.3.3. Ax.2 es independiente de Ax.1, Ax.3

Para demostrar la independencia de Ax.2, definimos la siguiente semantica sobre el lenguaje L:

- El conjunto de valores semanticos es 0, 1, 2.

- El conjunto de valores destacados es 0.

- Una interpretacion para L es toda aplicacion

I∗∗ : En→ 0, 1, 2

que satisfaga:

— I∗∗(¬A) = f∗∗¬ (I∗(A))

— I∗∗(A→ B) = f∗∗→ (I∗(A))

donde f∗∗¬ y f∗∗→ son las aplicaciones

f∗∗¬ : 0, 1, 2 → 0, 1, 2 y f∗∗→ : 0, 1, 2 × 0, 1, 2 → 0, 1, 2

definidas por las tablas siguientes

x f∗∗¬ (x)

0 11 02 1

x y f∗→(x)

0 0 00 1 20 2 11 0 01 1 21 2 02 0 02 1 02 2 0

Una fbf A se dice grotesca si, para toda interpretacion I∗, se tiene I∗(A) = 0. Se deja al lectorcomprobar que:

1. A→ (B → A) es grotesca para cualesquiera fbfs A y B.

2. (¬A→ ¬B)→ (B → A) es grotesca para cualesquiera fbfs A, B y C.

3. Si A→ B y A son grotescas entonces B es grotesca.

Sin embargo, (A → (B → C)) → ((A → B) → (A → C)) no es grotesca. Por lo tanto, Ax.2 no esdemostrable en L a partir de Ax.1 y Ax.3.

Page 94: Cur So Bueno Logic A

86 CAPITULO 4. TEORIA DE LA DEMOSTRACION PARA LA LOGICA PROPOSICIONAL

eer r Cabe plantearse cual es el interes de trabajar con un conjunto minimal de conectivos y un conjun-to minimal de axiomas. Disponer de un conjunto reducido de conectivos y de axiomas dificultala demostracion de teoremas en el sistema axiomatico, pero facilita sin duda la demostracion deteoremas sobre el sistema axiomatico, ya que requiere contemplar menos casos.

Los sistemas axiomaticos son un marco adecuado para desarrollos teoricos y su handicap, comose ha tenido ocasion de vislumbrar, es la dificultad para construir demostraciones. Esta dificultadse ve aliviada en los sistemas de deduccion natural, introducidos independientemente en 1934 porGentzen y Jaskowski. Como el mismo Gentzen destaca, el proposito de estos sistemas es recogerel modo habitual de argumentar en la vida diaria (de aquı el calificativo de natural), permitirun modo mas natural de realizar deducciones que los aportados por los sistemas de demostracionintroducidos hasta la fecha.

4.1.4. Deduccion Natural

El metateorema de la deduccion es un resultado de gran utilidad para facilitar las deducciones, yen particular las demostraciones, en los sistemas axiomaticos. El tipo de tecnica que proporciona(introduccion de hipotesis) se formaliza en los sistemas de deduccion natural.

En los sistemas de deduccion natural las deducciones adquieren el protagonismo sobre las demos-traciones. Podemos afirmar que

“Un sistema de deduccion natural es un sistema para derivar conclusiones desde unconjunto de hipotesis, sin utilizar axiomas, solo mediante reglas de inferencia.

Con tal fin, se introducen suficientes reglas de inferencia para recoger el significado de cada conectivoaisladamente.

Las reglas de inferencia son de dos tipos, reglas de introduccion y reglas de eliminacion deconectivos, denotadas (∗i) y (∗e) respectivamente, donde ∗ representa un conectivo arbitrario. Cadaregla consta de una o mas hipotesis y una conclusion y la representaremos ası

hipotesis

conclusion

Damos a continuacion un conjunto de reglas de inferencia las cuales constituyen un sistema dededuccion natural para la logica proposicional.

(∧ i) Formaliza el hecho de que si tenemos A y B entonces tenemos su conjuncion A ∧B, grafica-mente tenemos

AB

A ∧B

(∧e) La eliminacion de la conjuncion nos permite quedarnos con un elemento de la conjuncion,esto es, de A ∧B podemos deducir bien A o bien B.

A ∧B

A

A ∧B

B

Page 95: Cur So Bueno Logic A

4.1. UN SISTEMA AXIOMATICO PARA LA LOGICA PROPOSICIONAL 87

(→ i) Hace uso de la nocion de subderivacion y su lectura es la siguiente: si bajo la hipotesisadicional A hemos deducido B (subderivacion), entonces podemos deducir A→ B.

A

B

A→ B

Esta regla formaliza, al igual que el metateorema de la deduccion en los sistemas de tipoHilbert, el resultado semantico:

Si Ω ∪ A |= B, entonces Ω |= A→ B

donde Ω es un conjunto de fbfs.

(→ e) Formaliza la regla de inferencia del Modus Ponens

AA→ B

B

(∨i) Si tenemos A o tenemos B entonces tenemos A ∨B

A

A ∨B

B

A ∨B

(∨e) Formaliza el llamado razonamiento por casos. Como se observa, dicha regla requiere dossubderivaciones.

A ∨BA

C

B

C

C

Es decir, si C se deduce tanto de A como de B entonces C se puede deducir de A ∨B.

(¬i) Formaliza la demostracion por contradiccion: Si la hipotesis adicional A conduce a unacontradiccion (¬B y B), entonces no puede darse A, por lo tanto ¬A.

BA

¬B

¬A

(¬e) Permite eliminar la doble negacion

¬¬A

A

Page 96: Cur So Bueno Logic A

88 CAPITULO 4. TEORIA DE LA DEMOSTRACION PARA LA LOGICA PROPOSICIONAL

(Rep) Esta es una regla especial que no es de introduccion ni de eliminacion de conectivos, llamadaregla de repeticion, que recoge el resultado semantico A |= A y que es de utilidad en lassubderivaciones.

A

A

Definicion 4.3 En todo sistema de deduccion natural, DN, dado un conjunto Ω de fbfs, se diceque una formula A es deducible o derivable de Ω, denotado Ω ⊢DN A, si existe una secuenciafinita de fbfs, A1, A2, . . . , An tal que:

1. Cada Ai, (1 ≤ i ≤ n) es una formula de Ω o es obtenida de formulas anteriores de lasecuencia mediante la aplicacion de alguna regla de inferencia.

2. An es A.

La secuencia A1, . . . , An se dice que es una deduccion o derivacion tipo Gentzen de A a partirde Ω.

Una formula A es un teorema si es derivable desde el conjunto vacıo de formulas. Usaremos ⊢DN Apara expresar que A es un teorema.

Definicion 4.4 Un conjunto Ω de fbfs se dice DN-inconsistente si para toda fbf A se tiene queΩ ⊢DN A. El conjunto Ω se dice DN-consistente si no es DN-inconsistente.

eer r

Las hipotesis, es decir , los elementos de Ω, pueden ser usados en la derivacion inicial y, por lotanto, en todas las subderivaciones.

Las hipotesis adicionales requeridas por algunas reglas de inferencia, no son hipotesis del razo-namiento que deseamos probar y solo pueden ser usadas del modo indicado por las reglas quehan dado lugar a su introduccion.

De forma mas visual, podemos decir que cualquier formula obtenida en una derivacion puederepetirse en cualquier subderivacion suya, pero no al reves: ¡No se pueden extraer formulas deuna subderivacion!

Como en los sistemas axiomaticos, si A es deducible de A1, A2, . . . , An, la relacion

A1, A2, . . . , An ⊢DN A

puede ser usada en las deducciones como nueva regla de inferencia, llamada regla derivada. Elsiguiente ejemplo ilustra el desarrollo de una derivacion en el sistema de deduccion natural recienpresentado y proporciona una util regla derivada (que otros sistemas consideran como regla basica).

Ejemplo 4.5 Demostrar que A ∨B,¬A ⊢DN B.

Vamos a obtener una derivacion de B a partir de A ∨ B y ¬A haciendo uso de las reglas de la

Page 97: Cur So Bueno Logic A

4.1. UN SISTEMA AXIOMATICO PARA LA LOGICA PROPOSICIONAL 89

deduccion natural:

A ∨BA

¬B

¬A¬¬B

B

B

B

B

Hip.Hip. ad.Hip. ad.Hip.(¬i)

(¬e)

Hip. ad.Rep.

(∨e)

Resulta conveniente usar una numeracion de las distintas fbfs que aparecen en la derivacion comose indica:

(1) A ∨B Hip.

(2) Subderv.

(2.1) A Hip. adicional

(2.2) Subderv.

(2.2.1) ¬B Hip. adicional

(2.2.2) ¬A Hip.

(2.3) ¬¬B (2.1), (2.2) y (¬i)

(2.4) B (2.3) y (¬e)

(3) Subderv.

(3.1) B Hip. adicional

(3.2) B (3.1) y (Rep)

(4) B (1), (2), (3) y (∨e)

Esta regla derivada, que denotaremos SD y que se conoce como silogismo disyuntivo tiene dosversiones:

A ∨B¬A

B

o bien

A ∨B¬B

A

Teorema 4.6 (Correccion de DN) Para todo conjunto Ω de fbfs y para toda fbf A se tiene quesi Ω ⊢DN A entonces Ω |= A.

Demostracion: Por induccion sobre la longitud de la derivacion Ω ⊢DN A

Si n = 1, entonces A ∈ Ω y es obvio que Ω |= A.

Page 98: Cur So Bueno Logic A

90 CAPITULO 4. TEORIA DE LA DEMOSTRACION PARA LA LOGICA PROPOSICIONAL

Supongamos que el resultado es cierto para toda fbf para la que existe una deduccion delongitud menor que n a partir de Ω y probemoslo para el caso en el que exista una deduccionde A a partir de Ω de longitud n.

Si A = B∧C tiene que haber sido obtenida de fbfs B y C, anteriores en la secuencia, mediantela aplicacion de (∧i). Ahora bien, tanto B como C son derivables a partir de Ω y para ellasexiste una deduccion a partir de Ω de longitud menor que n. Por hipotesis de induccion,Ω |= B y Ω |= C y, por lo tanto, se tiene que Ω |= B ∧ C, es decir, Ω |= A.

Los demas casos, es decir, si A ha sido obtenida de fbfs anteriores en la secuencia mediantela aplicacion de las reglas (∧e), (→ i), (→ e), (∨e), (∨i), (¬i), (¬e), se demuestran de formaanaloga y se dejan como ejercicio al lector.

Para probar la completitud de DN, necesitamos algunos lemas previos:

Lema 4.2 Dado un conjunto Ω de fbfs, las dos condiciones siguientes son equivalentes

1. Existe una fbf A tal que Ω ⊢DN A y Ω ⊢DN ¬A.

2. Ω es DN-inconsistente.

Demostracion:

Si (1.), entonces (2.):

Por hipotesis, existe una derivacion a partir de Ω de la forma:

(1) . . . . . .

...

(k) A . . .

...

(m) ¬A . . .

A partir de esta derivacion obtenemos una derivacion de una fbf arbitraria B a partir de Ω,anadiendo las siguientes lıneas:

(m + 1) Subderv.

(m + 1,1) ¬B Hip. adicional

(m + 1,2) ¬A (m) y (Rep)

(m + 2)¬¬B (m + 1),(k) y (¬i)

(m + 3)B (m + 2) y (¬e)

Si (ii), entonces (i) Es evidente.

Page 99: Cur So Bueno Logic A

4.1. UN SISTEMA AXIOMATICO PARA LA LOGICA PROPOSICIONAL 91

Lema 4.3 Para todo conjunto Ω de fbfs

Si Ω es satisfacible entonces Ω es DN-consistente.

Demostracion: Si Ω fuera DN-inconsistente entonces existirıa una fbf A tal que Ω ⊢DN Ay Ω ⊢DN ¬A. Con lo cual, por la correccion de DN, Ω |= A y Ω |= ¬A. Por lo tanto,Ω serıainsatisfacible, contra la hipotesis.

Definicion 4.5 Un conjunto Ω de fbfs se dice maximalmente DN-consistente si

Ω es DN-consistente.

Si Ω ⊆ Ω′ y Ω′ es DN-consistente, entonces Ω = Ω′.

Lema 4.4 Todo conjunto de fbfs Ω DN-consistente esta contenido en un conjunto de fbfs maxi-malmente DN-consistente.

Demostracion: Sea A1, A2, . . . , An, . . . una enumeracion de En. Definimos una sucesion cre-ciente de subconjuntos de En, (Ωn)n≥1, como sigue:

Ω1 = Ω.

Para n ≥ 1, si Ωn∪An es DN-consistente, definimos Ωn+1 = Ωn∪An, y en caso contrario,Ωn+1 = Ωn.

Por construccion, todos los Ωn son DN-consistentes. Ademas

El conjunto Ω =⋃

n Ωn es DN-consistente:

Puesto que todo subconjunto finito de Ω es un subconjunto finito de algun Ωn, si existiera unB tal que tanto B como ¬B fueran derivables a partir de Ω, el conjunto de todas las hipotesisusadas en ambas derivaciones serıa un subconjunto finito de algun Ωn. Por lo tanto, B y ¬Bserıan derivables desde Ωn, lo cual contradice la DN-consistencia de Ωn.

El conjunto Ω es maximalmente DN-consistente:

Sea Ω′ un conjunto DN-consistente tal que Ω ⊆ Ω′. Si C ∈ Ω′ entonces C = Ak para algunk. Puesto que Ωk ⊆ Ω ⊆ Ω′ se tiene entonces que Ωk ∪ Ak es DN-consistente. Por lo tanto,Ωk+1 = Ωk ∪ Ak, es decir,Ak ∈ Ωk+1 ⊆ Ω y, por lo tanto, Ω = Ω′.

Lema 4.5 Dado un conjunto Ω de fbfs

Si Ω es DN-consistente, entonces Ω es satisfacible.

Demostracion: Si Ω es DN-consistente, por el Lema 4.4, Ω esta contenido en un conjuntomaximalmente DN-consistente Ω. Bastara pues dar un modelo para Ω.

Consideremos la siguiente interpretacion I: Para todo sımbolo proposicional p, se tiene I(p) = 1 siy solo si p ∈ Ω.

Probemos que, para toda fbf A, I(A) = 1 si y solo si A ∈ Ω. Por induccion sobre la profundidadde A:

Page 100: Cur So Bueno Logic A

92 CAPITULO 4. TEORIA DE LA DEMOSTRACION PARA LA LOGICA PROPOSICIONAL

Si A ∈ Vprop el resultado es cierto por definicion de I.

Si A = B ∧ C entonces I(A) = 1 si y solo si I(B) = I(C) = 1 si y solo si B ∧ C ∈ Ω(compruebese).

El resto de los casos se demuestran de forma analoga y se dejan como ejercicio al lector.

Ya estamos en condiciones de demostrar la completitud del sistema DN, formalmente demostrare-mos el siguiente teorema:

Teorema 4.7 (Completitud de DN) Para todo conjunto Ω de fbfs y para toda fbf A se tieneque si Ω |= A entonces Ω ⊢DN A.

Demostracion: Supongamos Ω |= A. Si Ω 6⊢DN A entonces Ω∪¬A serıa DN-consistente (com-pruebese). Por lo tanto, por el Lema 4.5, Ω∪¬A es satisfacible, es decir, existe una interpretacionI tal que I(B) = 1 para toda fbf B ∈ Ω y I(A) = 0 en contra del supuesto Ω |= A.

Los sistemas de deduccion natural son, al igual que los sistemas axiomaticos, no algorıtmicos.Establecen los pasos permitidos en la tarea de verificacion, pero no un metodo sistematico pararealizar dicha tarea. Es por lo tanto deseable en el quehacer heurıstico de construir una derivacion,disponer de estrategias que la faciliten. Las siguientes estrategias son consideradas basicas:

1. Si la conclusion tiene ∗ como conectivo principal, usar (∗ i).

2. Si una hipotesis tiene ∗ como conectivo principal, usar (∗ e).

3. Si las estrategias anteriores fallan, usar (¬ i).

El siguiente ejemplo se desarrolla haciendo uso de las estrategias anteriores.

Ejemplo 4.6 Demostremos que ¬A ∨B ⊢DN A→ B.

Siguiendo la estrategia I, necesitamos una subderivacion usando (→ i), es decir, una subderivaciondel tipo:

(1) Subderv.

(1.1) A Hip. adicional

...

(1.k) B

(2) A→ B (1) y (→ i)

Ahora, siguiendo la estrategia II, intentamos eliminar el conectivo ∨ de la hipotesis. Para ello, enla subderivacion (1) utilizamos (∨e).

(1) Subderiv.

(1.1) A Hip. adicional

(1.2) ¬A ∨B Hip.

Page 101: Cur So Bueno Logic A

4.1. UN SISTEMA AXIOMATICO PARA LA LOGICA PROPOSICIONAL 93

(1.3) Subderv.

(1.3.1) ¬A Hip. adicional

...

(1.3.n) B

(1.4) Subderv.

(1.4.1) B Hip. adicional

(1.4.2) B (1.4.1) y (Rep)

(1.5) B (1.2), (1.3), (1.4) y (∨e)

(2) A→ B (1) y (→ i)

Por ultimo, la subderivacion (1.3) nos conduce a la estrategia III. Obtenemos ası la derivacionplanteada.

(1) Subderv.

(1.1) A Hip. adicional

(1.2) Subderv.

(1.2.1) ¬A Hip. adicional

(1.2.2) ¬A (1.2.1) y (Rep)

(1.3) ¬¬A (1.1),(1.2) y (¬i)

(1.4) ¬A ∨B Hip.

(1.5) Subderv.

(1.5.1) ¬A Hip. adicional

(1.5.2) Subderv.

(1.5.2.1) ¬B Hip. adicional

(1.5.2.2) ¬¬A (1.3) y (Rep)

(1.5.3) ¬¬B (1.5.1), (1.5.2) y (¬i)

(1.5.4) B (1.5.3) y (¬e)

(1.6) Subderv.

(1.6.1) B Hip. adicional

(1.6.2) B (1.4.1) y (Rep)

(1.7) B (1.4), (1.5), (1.6) y (∨e)

(2) A→ B (1) y (→ i)

A continuacion mostramos como se puede acortar la derivacion anterior haciendo uso del silogismodisyuntivo como regla derivada.

(1) Subderv.

Page 102: Cur So Bueno Logic A

94 CAPITULO 4. TEORIA DE LA DEMOSTRACION PARA LA LOGICA PROPOSICIONAL

(1.1) A Hip. adicional

(1.2) Subderv.

(1.2.1) ¬A Hip. adicional

(1.2.2) ¬A (1.2.1) y (Rep)

(1.3) ¬¬A (1.1),(1.2) y (¬i)

(1.4) ¬A ∨B Hip.

(1.5) B (1.4), (1.3) y SD

(2) A→ B (1) y (→ i)

Page 103: Cur So Bueno Logic A

4.2. EJERCICIOS 95

4.2. Ejercicios

1. Dado el lenguaje L de la logica proposicional y la semantica dada para L, defina sistemasaxiomaticos sobre L con las siguientes caracterısticas:

a) correcto pero no completo.

b) completo pero no correcto.

2. Sean A y B fbfs de L y Ω un conjunto de fbfs de L. Pruebe que en el sistema axiomatico de Lukasiewicz se verifica que

a) Si A ∈ Ω, entonces Ω ⊢ A Reflexividad

b) A ⊢ A

c) Si Ω ⊢ A y Ω ⊆ Ω′, entonces Ω′ ⊢ A Monotonıa

d) Si Ω ⊢ A y Ω, A ⊢ B, entonces Ω ⊢ B Corte

e) Si ⊢ A, entonces Ω ⊢ A

f ) ⊢ A si y solo si ∅ ⊢ A

g) Si ΩA y A ⊢ B, entonces Ω ⊢ B

h) Ω ⊢ A si y solo si existe un subconjunto finito Ω′ ⊆ Ω tal que Ω′ ⊢ A

3. Sean A y B dos fbfs de L. Pruebe que en el sistema axiomatico de Lukasiewicz se verifica que

Si Ω ⊢ A entonces Ω \ B ⊢ A→ B

4. Dado el alfabeto a = a, b, c,¬,→, definimos el siguiente lenguaje L† sobre a:

a) a, b y c, son fbfs de L†.

b) Si α es una fbf de L† entonces ¬α es tambien una fbf de L†

c) Si A y B son fbfs de L† entonces (A→ B) es tambien una fbf de L†

Sobre el lenguaje L† definimos el siguiente Sistema Axiomatico:

Axiomas:

¬(A→ A)

¬(A→ (B → A))

Regla de inferencia:¬(A→ B)

A.

Demuestre que

a) a es un teorema.

b) Toda semantica sobre L† proporciona una teorıa completa y decidible.

c) Definir sobre L† una semantica respecto a la cual el sistema dado no proporciona unateorıa correcta.

Page 104: Cur So Bueno Logic A

96 CAPITULO 4. TEORIA DE LA DEMOSTRACION PARA LA LOGICA PROPOSICIONAL

5. Definimos un Sistema Axiomatico sobre el lenguaje siguiente: Dado el alfabeto: a = ♥,,definimos el lengaje L♯ como sigue :

(i) ♥ y , son fbfs de L♯.

(ii) toda secuencia de longitud ≥ 2 cuyo primer elemento es es una fbf. de L♯

Axioma:

Regla de inferencia:α

α♥

Caracterice los teoremas en este sistema axiomatico.

6. En cada uno de los siguientes casos, determine, si es posible, cuando la teorıa descrita escorreta, completa y/o decidible:

a) El lenguaje y axiomas de L y la regla de inferencia

A ⊢ A ∨B

b) El lenguaje de L, el axioma A→ ¬B y la regla de inferencia

A→ B,B → C ⊢ B

7. Use el Sistema de Deduccion Natural DN para probar las siguientes inferencias:

a) (p ∧ q)→ r ⊢DN p→ (q → r)

b) (p→ (q → r))→ (p→ q) ⊢DN (p→ (q → r))→ (p→ r)

c) p→ (p→ q) ⊢DN p→ q

d) q ⊢DN q → (p→ q)

8. Use el sistema de deduccion natural DN para probar la validez de las siguientes formulas:

a) ⊢DN ¬(A ∨B)↔ (¬A ∧ ¬B)

b) ⊢DN ¬(A ∧B)↔ (¬A ∨ ¬B)

c) ⊢DN ¬(A→ B)↔ (A ∧ ¬B)

d) ⊢DN (¬A ∨B)↔ (A→ B)

e) ⊢DN (A→ B)↔ (¬B → ¬A)

9. Pruebe en el sistema de deduccion natural DN las siguientes reglas derivadas

(∗1)A

B → A(∗2)

A

C

¬A

C

C

10. Use el Sistema de deduccion Natural DN para probar la validez de las siguientes formulas:

a) ⊢DN (A→ (B → C))→ ((A→ B)→ (A→ C))

Page 105: Cur So Bueno Logic A

4.2. EJERCICIOS 97

b) ⊢DN (B → C)→ ((A→ B)→ (A→ C))

c) ⊢DN (A ∨ (B ∧ C))↔ ((A ∨B) ∧ (A ∨ C))

d) ⊢DN A→ ((A→ B)→ B)

11. Use el Sistema de deduccion Natural DN para probar la validez de las siguientes inferencias:

a) A→ B, (B → A)→ A ⊢DN B

b) (A→ B)→ B, (E → A)→ C, (C → D)→ ¬(D → B) ⊢DN C

c) (A ∧ ¬B) ∨ (A ∧ C),¬B → ¬A ⊢DN C

12. Pruebe que para toda fbf A y para todo conjunto de fbfs Ω,

a) Si Ω ∪ ¬A es DN-inconsistente, entoncesΩ ⊢DN A

b) Si Ω ∪A es DN-inconsistente, entoncesΩ ⊢DN ¬A

13. Pruebe que si Ω es maximalmente DN-consistente se tiene que

a) Si Ω ⊢DN A entonces A ∈ Ω.

b) Para toda fbf A, A ∈ Ω o ¬A ∈ Ω

c) Dadas dos fbfs arbitrarias A y B,

A→ B ∈ Ω si y solo si (si A ∈ Ω entonces B ∈ Ω)

d) Para toda fbf A,

A ∈ Ω si y solo si ¬A /∈ Ω

Page 106: Cur So Bueno Logic A

98 CAPITULO 4. TEORIA DE LA DEMOSTRACION PARA LA LOGICA PROPOSICIONAL

Page 107: Cur So Bueno Logic A

Capıtulo 5

Razonamiento Automatico en lalogica proposicional

Llegamos al fin a la componente intrınsecamente computacional que pretende, no solo poder estable-cer que deducciones son lıcitas, sino ademas disponer de un procedimiento de decision (algoritmo)tal que, dada una fbf, A, (respectivamente, un conjunto de fbfs, Ω, y una fbf C), decida en unnumero finito de etapas si A es o no valida (respectivamente, si C se deduce o no de Ω).

Recordemos que la busqueda de tales procedimientos se denomina en la bibliografıa DemostracionAutomatica de Teoremas, y a los algoritmos ATPs (Automated Theorem Provers).

Las tablas de verdad, introducidas por Peirce y Wittgenstein a principios del siglo XX, constituyenun metodo de demostracion automatica correcto y completo para Lprop, es decir, nos aseguran quela logica clasica proposicional es decidible. No obstante, las tablas de verdad son unicamente unpunto de partida, sencillo, pero insatisfactorio:

En primer lugar, es insatisfactorio como herramienta teorica, no solo por no ser generaliza-ble a la logica clasica de primer orden ni a otras logicas no clasicas, sino tambien porque,por su estrecha relacion con la semantica, se aleja de lo que habitualmente entendemos pormanipulacion puramente sintactica de esquemas.

En segundo lugar, es insatisfactorio en el aspecto computacional por su ineficiencia ya que,si consideramos como tamano de una formula A su longitud como cadena de sımbolos, dichotamano es de orden kn donde n es el numero de sımbolos de proposicion que intervienen enA, y puesto que la tabla de verdad para A tiene 2n filas, podemos afirmar que el tiemponecesario para escribir dicha tabla es desmesurado incluso para formulas no muy grandes.

En este capıtulo estudiaremos otros ATPs para la logica proposicional.

Comenzamos con un sencillo metodo, pero que mejora sustancialmente el de las tablas de verdad:el algoritmo de Quine.

5.0.1. Algoritmo de Quine

El algoritmo de Quine esta basado en el concepto de arbol semantico que definimos a continuacion.

Definicion 5.1 Sea Λ = p1, p2, . . . , pn, . . . un conjunto numerable de sımbolos de proposicion.Un arbol semantico respecto de Λ es un arbol binario que satisface las condiciones siguientes:

99

Page 108: Cur So Bueno Logic A

100 CAPITULO 5. RAZONAMIENTO AUTOMATICO EN LA LOGICA PROPOSICIONAL

1. Cada arco esta etiquetado con un literal pi o ¬pi donde pi ∈ Λ.

2. Los literales que etiquetan dos arcos que nacen del mismo nodo son opuestos.

3. Ninguna rama contiene mas de una ocurrencia de cada pi ∈ Λ 1.

Si Λ es finito, todo arbol semantico respecto de Λ es finito. Si Λ es infinito, existen arboles semanticosfinitos e infinitos respecto de Λ.

A cada nodo N de un arbol semantico se le asocia una interpretacion parcial 2 que asigna, a unsımbolo proposicional p dado:

El valor 1 si algun arco del camino que une N con la raız esta etiquetado por p,

El valor 0 si algun arco del camino que une N con la raız esta etiquetado por ¬p,

Ni p ni ¬p ocurren en el camino que une N con la raız.

Ejemplo 5.1 A continuacion mostramos un arbol semantico respecto de p, q, r.

•I3(p) = 1I3(q) = 1I3(r) = 1

•I2(q) = 1

I2(p) = 1

@@@@•

I4(p) = 1I4(q) = 1I4(r) = 0

r ¬r

•I6(p) = 1I6(q) = 0I6(r) = 1

• I5(q) = 0I5(p) = 1

@@@@•

I7(p) = 1I7(q) = 0I7(r) = 0

r ¬r

•I9(p) = 0I9(q) = 1

• I8(p) = 0@

@@@•

I10(p) = 0I10(q) = 0

q ¬q

•I1(p) = 1

HHHHHHH

!!!!!!!!!

q ¬q

•aaaaaaaaa

p ¬p

Definicion 5.2 Un arbol semantico respecto de p1, . . . , pn se dice completo si la interpretacionparcial asociada a cada hoja asigna valores de verdad a todos los pi con 1 ≤ i ≤ n.

Definicion 5.3 Dada una fbf, A, el algoritmo de Quine procede como sigue:

1. Selecciona una ordenacion [p1, . . . , pn] del conjunto p1, . . . , pn de los sımbolos proposicio-nales que intervienen en A.

Esta ordenacion significara que los arcos de nivel 1 seran etiquetados con p1 y ¬p1, los arcosde nivel 2 seran etiquetados con p2 y ¬p2, y los arcos de nivel n seran etiquetados con pn y¬pn.

2. Se construye un arbol semantico respecto a p1, . . . , pn usando el siguiente criterio:

1Y, en consecuencia, ninguna rama contiene un literal y su opuesto.2Una asignacion de valores de verdad para un subconjunto de sımbolos proposicionales.

Page 109: Cur So Bueno Logic A

5.1. SISTEMAS DE REFUTACION 101

Si todas las posibles extensiones de la interpretacion parcial asociada a un nodo N ,asignan el mismo valor de verdad a A, no es preciso construir el subarbol del arbolsemantico completo respecto a p1, . . . , pn que tiene a N como raız. En su lugar,se etiquetara N con el valor de verdad que la interpretacion parcial asociada asignaa A.

3. Siguiendo este procedimiento, si el arbol final tiene todas sus hojas etiquetadas con Ii(A) = 1,la fbf A es valida. Si el arbol final tiene todas sus hojas etiquetadas con Ii(A) = 0, la fbf A esuna contradiccion. Si el arbol final tiene hojas etiquetadas con Ii(A) = 1 y hojas etiquetadascon Ii(A) = 0, la fbf A es satisfacible y no valida.

Ejemplo 5.2 Para la fbf A = (((p ∧ q)→ r) ∧ (p→ q))→ (p→ r), el arbol proporcionado por elalgoritmo de Quine, considerando la ordenacion [p, q, r], es:

•aaaaaaaaa

p ¬p

•I1(A) =? HHHHHHH

!!!!!!!!!

•I6(A) = 1

•I2(A) =? @@@@

•I5(A) = 1

•I3(A) = 1

•I4(A) = 1

r ¬r

q ¬q

Por lo tanto, A es valida.

eer r El lector debe tener en cuenta que la traza de ejecucion del algoritmo esta completamente deter-minada por la seleccion de la ordenacion [p1, . . . , pn] del conjunto p1, . . . , pn de los sımbolosproposicionales que intervienen en A por la que se opta. Se propone como ejercicio aplicar elalgoritmo a la fbf del ejemplo anterior con el resto de ordenaciones posibles de los elementos delconjunto p, q, r

5.1. Sistemas de refutacion

En claro contraste con los sistemas de deduccion, la mayorıa de los sistemas de refutacion sonprocedimientos automaticos. Hasta nuestros dıas, la mayor parte de los trabajos sobre demostracionautomatica de teoremas se basan en dos metodos de refutacion:

1. El metodo de construccion de modelos, basado en trabajos de Gentzen.

2. El metodo de resolucion, debido a Robinson basado en tecnicas desarrolladas por Herbrand.

El calculo de secuentes de Gentzen supuso la primera ocasion en que se utilizo la relacion de conse-cuencia logica como un calculo. Su sistema LK− ha dado lugar a diversos sistemas de demostracionpara diversas logicas, los cuales se conocen globalmente como tablas semanticas y cuya primeraformulacion se debe a Beth.

Page 110: Cur So Bueno Logic A

102 CAPITULO 5. RAZONAMIENTO AUTOMATICO EN LA LOGICA PROPOSICIONAL

Por su parte, los trabajos de Herbrand dieron lugar a importantes resultados debidos a Prawitz,Gilmore, Davis y Putnam, culminando con la publicacion en 1965 de un trabajo de Robinson enel que se introduce la regla de inferencia conocida como regla de resolucion en la cual se basan lamayorıa de los ATPs.

Los trabajos de Herbrand y Gentzen estan estrechamente relacionados, pero su desarrollo y aplica-cion han sido muy diferentes. Los ATPs basados en las tablas semanticas han sido comparativamentemuy escasos respecto a los basados en resolucion, y ello fue debido, basicamente, a los trabajos deKowalski y Colmerauer, los cuales impulsaron en la decada de los 70 la idea de que:

“la Logica puede usarse como un lenguaje de programacion”

Esta idea fue revolucionaria a causa de que, hasta 1972, la logica solo fue usada como lenguajedeclarativo de especificacion.

Como indicamos en un capıtulo anterior, si bien para la logica de primer orden estos metodosaseguran su terminacion solo si la formula a la que se aplica es valida (es decir, son semialgoritmos),para la logica proposicional que nos ocupa son algoritmos.

En este capıtulo exponemos algoritmos de refutacion de ambos tipos. Antes de ello, vamos a des-tacar que, aunque el uso habitual de las tablas de verdad permite considerarlas como sistemade deduccion, 3 es posible utilizar las tablas de verdad, de forma mas eficiente, como sistema derefutacion.

5.1.1. Las Tablas de Verdad como Sistema de refutacion

Consideremos un razonamiento,

“Si H1 y H2 y . . . y Hn, entonces C”

Para su verificacion, podemos limitarnos a analizar las filas de la correspondiente tabla de verdad enlas que C es falsa y, a continuacion, comprobar si en alguna de estas filas son verdaderas H1,H2, . . .y Hn, en cuyo caso tendrıamos que el razonamiento no es valido. Con ello, reducirıamos la tareade escribir 2n filas (supuesto que n es el numero de sımbolos de proposicion que intervienen enel razonamiento), a escribir 2k + m 2n−k, donde k es el numero de sımbolos de proposicion queintervienen en C y m el numero de filas en la tabla para C en las que C es falsa.

Ejemplo 5.3 Para analizar la validez del razonamiento

p→ (q → r)s→ (¬p→ q)r → (q ∧ s)

r → p

en lugar de escribir 24 = 16 filas, bastara:

1. Escribir la tabla de verdad para r → p, que tiene 22 = 4 filas.

2. Seleccionar las interpretaciones que asignan 0 a r → p, es decir, que asignan 1 a r y 0 a p.

3. Finalmente, escribir la tabla siguiente:

3Y ası lo hemos contemplado en el capıtulo 3.

Page 111: Cur So Bueno Logic A

5.1. SISTEMAS DE REFUTACION 103

p q r s p→ (q → r) s→ (¬p→ q) (r → (q ∧ s)

0 1 1 1 1 1 10 1 1 0 1 1 00 0 1 1 1 0 00 0 1 0 1 1 0

La primera fila, nos proporciona una interpretacion, I, tal que I(p) = 0 e I(q) = I(r) = I(s) = 1para la que las hipotesis son verdaderas y la conclusion falsa. Por lo tanto, el razonamiento no esvalido.

La estrategia seguida es una estrategia de refutacion, es decir, intentamos refutar la existenciade una interpretacion que satisface las hipotesis y no satisface la conclusion.

Un modo alternativo de evitar escribir la tabla completa para una formula A es utilizar el arbolsintactico de A como sigue:

1. Recorremos cada rama del arbol sintactico de A, de las hojas a la raız, asignando dos valoresa cada sımbolo proposicional de partida, 1 es el primer valor y 0 es el segundo, y transmitimosa los nodos, segun las definiciones semanticas de las conectivas, la informacion aportada poresta asignacion. Esta informacion la denotaremos por “1”, “0” y “?” respectivamente.

2. Un recorrido se suspende cuando llegamos a un nodo con el tipo de informacion “?”.

3. Si al recorrer una rama llegamos a la raız con informacion “0”, se concluye que A no es valida,ya que cualquier interpretacion I que asigna a la hoja de partida el valor “1” o “0”, asigna“0” a la formula A.

4. Si al recorrer una rama desde la hoja pi con asignacion “0”(o “1”) llegamos a la raız con infor-macion “1”, podemos eliminar en la tabla de verdad las filas correspondientes a la asignacion“0”(o “1”) de pi.

Por lo tanto, es suficiente escribir las lıneas de la tabla correspondientes a las asignaciones de lasvariables proposicionales que no nos han permitido llegar en nuestro recorrido a la raız.

Ejemplo 5.4 Consideremos la formula A = (((p ∧ q)→ r) ∧ (p→ q))→ (p→ r). La informacionaportada en el arbol sintactico de la figura 5.1 asegura que toda interpretacion que asigne “0” a py toda interpretacion que asigne “1” a r hace verdadera la formula A. Por lo tanto, en lugar de las23 = 8 filas, basta escribir solo las filas correspondientes a las interpretaciones (1 a p, 0 a r, 1 a q)y (1 a p, 0 a r, 0 a q).

p q r ( ( (p ∧ q) → r) ∧ (p→ q) ) → (p→ r)

1 1 0 1 0 0 1 1 01 0 0 0 1 0 0 1 0

Por lo tanto, la formula A es valida.

Page 112: Cur So Bueno Logic A

104 CAPITULO 5. RAZONAMIENTO AUTOMATICO EN LA LOGICA PROPOSICIONAL

p

1, 0 q 1, 0

@@@

?, 0

→@@@

?, 1

r 0, 1

HHHHH

?, ?

p

0, 1 q 1, 0

→@@@

1,?

→aaaaaa

1, ?

@@@

1, ?

p

0, 1 r 1, 0

Figura 5.1:

5.2. Metodo de las Tablas Semanticas

Como sistema de refutacion, para verificar la validez de una formula A (o de una inferencia), sedetermina si ¬A (o el conjunto Ω cuyos elementos son las hipotesis y la negacion de la conclusion), esinsatisfacible. Para ello se organiza la busqueda sistematica de un modelo para ¬A (respectivamente,un modelo para Ω). Si la busqueda tiene exito, la fbf A (o la inferencia) no es valida y si la busquedafracasa, la fbf A (o la inferencia) es valida.

El metodo de las tablas semanticas esta basado en trabajos de Gentzen y admite diversas presen-taciones.

En sıntesis, el metodo puede describirse como sigue:

Dado el conjunto de fbfs Ω = A1, . . . , An cuya satisfacibilidad se quiere comprobar, se organizanlas fbfs de Ω en un arbol de una sola rama con raız A1 y tal que cada Ai con 2 ≤ i ≤ n es sucesorinmediato de Ai−1, es decir,

An

...

A2

A1

Llamaremos a este arbol arbol inicial asociado a Ω. Este arbol se ira ampliando sucesivamentemediante ciertas reglas de extension, basadas unicamente en la estructura sintactica de las formulas.Cada arbol obtenido se denomina arbol asociado a Ω. Las reglas de extension estan disenadas demodo que:

La aplicacion de cada una de dichas reglas genera un arbol binario cuyos nodos estan etique-tados con fbfs.

Page 113: Cur So Bueno Logic A

5.2. METODO DE LAS TABLAS SEMANTICAS 105

Cada regla introduce fbfs que son subformulas propias o bien negaciones de subformulaspropias de fbfs existentes en el arbol al que se aplica.

Para la descripcion del metodo utilizaremos la notacion uniforme debida a Smullyan, que consisteen agrupar las formulas por tipos, consiguiendo con ello una notable simplificacion en la exposiciondel metodo.

Definicion 5.4 Las fbfs se clasifican en: literales, de tipo α (o de comportamiento conjuntivo)y de tipo β (o de comportamiento disyuntivo). Cada formula de tipo α o de tipo β tiene asociadados componentes, denotadas α1, α2 y β1, β2 respectivamente. Las siguientes tablas muestran lasformulas de tipo α y de tipo β junto con sus componentes.

α α1 α2

A ∧B A B¬(A ∨B) ¬A ¬B¬(A→ B) A ¬B¬¬A A A

β β1 β2A ∨B A B¬(A ∧B) ¬A ¬BA→ B ¬A B

Obviamente se tiene el siguiente teorema:

Teorema 5.1

Para toda α-formula, α ≡ α1 ∧ α2.

Para toda β-formula, β ≡ β1 ∨ β2.

5.2.1. Reglas de Extension

El arbol inicial asociado a un conjunto de fbfs Ω, denotado TΩ, es extendido sucesivamente, paraobtener arboles asociados a Ω, mediante las siguientes reglas:

(α) Si ρA denota la rama determinada por el nodo hoja A y una α-formula ocurre en ρA, extendemosdicha rama anadiendo:

Dos nodos etiquetados con sus componentes α1, α2 si α1 6= α2.

Un nodo etiquetado con la componente comun si α1 = α2.

Page 114: Cur So Bueno Logic A

106 CAPITULO 5. RAZONAMIENTO AUTOMATICO EN LA LOGICA PROPOSICIONAL

α2

α1

A

...

α

...

−→

A

...

α

...

(β) Si ρA denota la rama determinada por el nodo hoja A y una β-formula ocurre en ρA, extendemosdicha rama anadiendo:

Dos nodos si β1 6= β2: uno como descendiente izquierdo y otro como descendiente derechoetiquetados con sus componentes β1 y β2 respectivamente.

Un nodo etiquetado con la componente comun, si β1 = β2.

β2 @@

β1

A

...

β

...

−→

A

...

β

...

Definicion 5.5 Sea Ω = A1, . . . , An un conjunto de fbfs. Un arbol T se dice que es un arbolpara Ω, si existe una secuencia de arboles T1, . . . ,Tn tal que:

T1 es el arbol inicial asociado a Ω, es decir, el arbol de una sola rama:

An

...

A2

A1

Cada arbol Ti (2 ≤ i ≤ n) es un arbol asociado a Ω que es extension inmediata de Ti−1,es decir, Ti se obtiene de Ti−1 por aplicacion de una regla de extension a uno de sus nodos.

Tn = T .

Page 115: Cur So Bueno Logic A

5.2. METODO DE LAS TABLAS SEMANTICAS 107

Definicion 5.6 Sea T un arbol para Ω. Una rama de T se dice cerrada, si en ella ocurren unaformula B y su negacion ¬B. En caso contrario, se dice que la rama es abierta. El arbol T se dicecerrado si todas sus ramas son cerradas.

Una rama ρ de un arbol T para Ω se dice completa si satisface las siguientes condiciones:

1. Si la formula α ocurre en ρ, tambien sus componentes α1 y α2 ocurren en ρ.

2. Si la formula β ocurre en ρ, o la componente β1 o la componente β2 ocurre en ρ.

Definicion 5.7 Un arbol T para Ω se dice terminado si toda rama es cerrada o completa.

Teorema 5.2 Para todo conjunto finito Ω de fbfs, mediante un numero finito de extensiones in-mediatas se obtiene un arbol terminado para Ω.

Demostracion: Basta advertir que para toda α-formula y para toda β-formula, el grado de suscomponentes (α1 y α2, y β1 y β2 respectivamente) es estrictamente menor que el grado de α o βrespectivamente. En efecto, lo demostramos para el caso de una formula:

Sea T un arbol para A. Para todo nodo B de T sea bin(B) el numero de conectivos binarios en By neg(B) el numero de conectivos ¬ en B. Definimos

W (B) = 2bin(B) + neg(B)

Cada extension inmediata de T por aplicacion de una regla de expansion a B, crea un nuevo nodoX o dos nodos X1 y X2 tales que W (X) < W (B), W (X1) < W (B) y W (X2) < W (B). Por lotanto, ninguna rama de T puede ser extendida indefinidamente.

Definicion 5.8 Llamamos refutacion para un conjunto Ω de fbfs a todo arbol cerrado para Ω.Una fbf C se dice que se deriva del conjunto de fbfs H1, . . . ,Hn, si existe una refutacion paraH1, . . . ,Hn,¬C. En particular, una fbf A se dice demostrable si existe una refutacion para¬A.

Definicion 5.9 Un arbol T para Ω se dice satisfacible si el conjunto de las fbfs que etiquetan losnodos de alguna de las ramas de T es satisfacible. Una rama tal se dice que es satisfacible.

Teorema 5.3 (de existencia de modelo) Toda rama completa y abierta ρ de un arbol T paraΩ es satisfacible.

Demostracion: Sea FBF ρ el conjunto de fbfs que etiquetan los nodos de ρ. Definamos unainterpretacion Iρ construida a partir de ρ como sigue:

- Iρ(p) = 1, si p ∈ FBF ρ.- Iρ(p) = 0, si ¬p ∈ FBF ρ.

Puesto que ρ es abierta, no existe ninguna fbf tal que tanto ella como su negacion sean miembrosde FBF ρ. Probaremos ahora que toda formula de FBF ρ es verdadera en Iρ.

Supongamos, por reduccion al absurdo, que existe una fbf que etiqueta algun nodo de ρ y que esfalsa en Iρ. Elijamos la de menor grado (o una de ellas, si hay mas de una) con dicha propiedad,sea A tal formula. Es decir, se cumple:

(H) Iρ(A) = 0 y para toda B ∈ FBF ρ tal que gr(B) < gr(A), se tiene que Iρ(B) = 1.

Page 116: Cur So Bueno Logic A

108 CAPITULO 5. RAZONAMIENTO AUTOMATICO EN LA LOGICA PROPOSICIONAL

A no puede ser un literal, dada la definicion de Iρ. Si A = p, entonces Iρ(p) = 1. Si A = ¬p,entonces Iρ(p) = 0, luego Iρ(¬p) = 1. Por tanto, A tiene que ser una α o bien una β. Veamos quetampoco puede darse ninguno de estos casos.

- Si A fuera una α, dado que ρ es una rama completa y abierta se tiene que α1 y α2 ∈ FBF ρ. Comogr(α1), gr(α2) < gr(α), entonces por la hipotesis (H), tendrıamos que Iρ(α1) = Iρ(α1) = 1. LuegoIρ(α) = 1, lo que entra en contradiccion con (H), que establece que Iρ(A) = Iρ(α) = 0. Ası pues,A no puede ser una α.

- Si A fuera una β, dado que ρ es una rama completa y abierta se tiene que β1 ∈ FBF ρ o bienβ2 ∈ FBF ρ. Dado que gr(β1), gr(β2) < gr(β), por (H) tendrıamos que si β1 ∈ FBF ρ, entoncesIρ(β1) = 1 y si β2 ∈ FBF ρ, entonces Iρ(β2) = 1. En cualquier caso, Iρ(β) = 1. Pero esto contradicela hipotesis (H), que establece que Iρ(A) = Iρ(β) = 0. Ası pues, A tampoco puede ser una β.

El teorema de existencia de modelos asegura que en un arbol terminado para un conjunto Ω de fbfs,cada rama abierta ρ, de existir, proporciona un modelo para Ω, concretamente, toda interpretacionI tal que I(pi) = 1 si pi ocurre en ρ e I(pi) = 0 si ¬pi ocurre en ρ.

Vemos pues que no es necesario que el modelo generado asigne valores de verdad especıficos a todoslos sımbolos proposicionales que intervienen en Ω y que ramas distintas pueden generar el mismomodelo.

Teorema 5.4 (Correccion y completitud) El metodo de las tablas semanticas es:

1. Correcto: Si H1, . . . ,Hn,¬C puede ser refutado entonces H1, . . . ,Hn |= C.

2. Completo: Si H1, . . . ,Hn |= C, entonces existe una refutacion para H1, . . . ,Hn,¬C.

Demostracion: Supongamos que existe una refutacion para H1, . . . ,Hn,¬C y probemos queH1, . . . ,Hn |= C, es decir, que H1, . . . ,Hn,¬C es insatisfacible. Lo probaremos por reduccion alabsurdo, demostrando que si Ω = H1, . . . ,Hn,¬C es satisfacible entonces todo arbol terminadopara Ω tiene una rama abierta. Para ello, bastara probar que:

Si T es un arbol satisfacible para Ω entonces el arbol para Ω, T ′, obtenido al aplicar aT cualquier regla de extension es tambien satisfacible.

Lema 5.1 Sea T un arbol satisfacible para Ω y sea ρ una rama satisfacible de T . Supongamos queT ′ ha sido obtenido al aplicar una regla de extension a un nodo de una rama ρ′ de T etiquetadocon una fbf A. Entonces,

Si ρ 6= ρ′ entonces ρ es una rama de T ′ y por lo tanto T ′ es satisfacible.

Si ρ = ρ′, podemos distinguir dos casos:

• A es una α−formula. Entonces T ′ ha sido obtenido al anadir al nodo hoja de ρ las doscomponentes α1A y α2A de A y, puesto que A ≡ (α1A ∧ α2A) y ρ es satisfacible, T ′ essatisfacible.

• A es una β−formula. Entonces T ′ ha sido obtenido al anadir al nodo hoja de ρ dosnodos, uno como descendiente izquierdo y otro como descendiente derecho, etiquetadosrespectivamente con las componentes β1A y β2A de A y, puesto que A ≡ (β1A ∨ β2A) y ρes satisfacible, bien ρ∪β1A o bien ρ∪β2A es satisfacible. Por lo tanto, T ′ es satisfacible.

Page 117: Cur So Bueno Logic A

5.2. METODO DE LAS TABLAS SEMANTICAS 109

Supongamos ahora que H1, . . . ,Hn |= C y probemos que existe una refutacion para H1, . . . ,Hn,¬C.Si no existiera una refutacion para Ω = H1, . . . ,Hn,¬C entonces todo arbol terminado para Ωtendra una rama abierta y, por el teorema anterior, sera satisfacible. Por lo tanto, H1, . . . ,Hn,¬Csera satisfacible en contra de la hipotesis.

5.2.2. Descripcion del metodo

En la construccion de un arbol para refutar un conjunto de formulas, se tienen en cuenta lassiguientes consideraciones:

Para evitar ramificaciones innecesarias, se da prioridad a la regla (α).

La regla (α) o (β) se aplica sobre cada nodo una sola vez. Para indicar que la α-formula oβ-formula correspondiente no sera usada mas, tras su aplicacion, se marca el nodo con X.

No se realiza ninguna extension sobre las ramas cerradas. Para indicar que una rama escerrada se marca con ×.

En la Figura 5.2 aparece un diagrama de flujo para la construccion de un arbol de refutacion: 4

En los siguientes ejemplos hacemos uso del metodo.

Ejemplo 5.5 Demostremos la validez de la formula ((p→ q) ∧ (q → p))→ ((p ∨ q)→ (p ∧ q)).

¬[((p→ q) ∧ (q → p))→ ((p ∨ q)→ (p ∧ q))]X1

(p→ q) ∧ (q → p)X2

¬((p ∨ q)→ (p ∧ q))X3

p→ qX4

q → pX5

p ∨ qX6

¬(p ∧ q)X7HH

¬pHH

q

@@¬q

@@p×

p¬q×

p HHq

×

×

p

@@¬p×

¬q×

q

@@¬p×

¬q×

Ejemplo 5.6 Demostremos que no es valida la formula A = ((p → ¬q) ∧ (q → p)) → ((p ∨ q) →(p ∧ q)).

4El numero maximo de subformulas de una fbf, A, de la logica proposicional es lineal (O(n)) en la longitud de A.Por lo tanto, en el peor de los casos se emplea un tiempo polinomico (respecto a la longitud de A) en desarrollar unarama entera de un arbol semantico para A. Esto significa que el algoritmo es polinomial no determinista, es decir,pertenece a la clase de complejidad NP.

Page 118: Cur So Bueno Logic A

110 CAPITULO 5. RAZONAMIENTO AUTOMATICO EN LA LOGICA PROPOSICIONAL

No Valida

NO SI

?

Valida ¿Quedan nodos α o β sin marcar?

NOSI

??

¿Estan todas las ramas marcadas?

?

Marcar con × las ramas cerradas

?

Aplicar α o β a un nodo no marcado

?

Hipotesis 1Hipotesis 2

...Hipotesis n

Negacion de la conclusionNegacion de la formula

Figura 5.2:

Page 119: Cur So Bueno Logic A

5.3. METODOS QUE REQUIEREN QUE LA ENTRADA ESTE EN FORMA CLAUSAL 111

¬[((p→ ¬q) ∧ (q → p))→ ((p ∨ q)→ (p ∧ q))]X1

(p→ ¬q) ∧ (q → p)X2

¬((p ∨ q)→ (p ∧ q))X3

p→ ¬qX4

q → pX5

p ∨ qX6

¬(p ∧ q)X7HH

¬pHH

¬qXXX

¬q

@@p×

p

׬q

@@

p

HH

p

@@

q

@@

p

@@

q

@@¬p×

¬q

La rama abierta encontrada nos proporciona un modelo de ¬A, es decir, un contramodelo de A,concretamente, la interpretacion I tal que I(p) = 0 e I(q) = 0.

Ejemplo 5.7 Demostremos que la inferencia (p ∨ q)→ r,¬q |= p ∨ r no es valida.

(p ∨ q)→ rX2

¬q

¬(p ∨ r)X1

¬p

¬r

@@¬(p ∨ q)X3 r

׬p

¬q

La rama abierta nos proporciona un modelo para el conjunto de formulas

(p ∨ q)→ r,¬q,¬(p ∨ r)

concretamente, cualquier interpretacion I tal que I(p) = I(q) = I(r) = 0 satisface todas lashipotesis, pero no la conclusion de la inferencia.

El metodo de tablas semanticas que acabamos de describir tiene un marcado interes debido a quees extensible a la logica de primer orden y, lo que es mas importante, la mayorıa de los ATPsexistentes en logicas no clasicas son de este tipo.

5.3. Metodos que requieren que la entrada este en forma clausal

La mayorıa de los sistemas de refutacion exigen que su entrada este en en forma normal conjuntivarestringida. Concretamente, para verificar la validez de una formula A, considera como entrada unaforma clausal de ¬A y para verificar la validez de una inferencia

Page 120: Cur So Bueno Logic A

112 CAPITULO 5. RAZONAMIENTO AUTOMATICO EN LA LOGICA PROPOSICIONAL

H1

H2

...

Hn

——

C

consideran como entrada una forma clausal de H1∧· · ·∧Hn∧¬C, y determinan si tal forma clausal,es decir si tal conjunto de clausulas es o no insatisfacible.

Ejemplo 5.8 Para estudiar la validez del razonamiento

H1 : p→ (q ∨ r)H2 : (q ∧ s)→ pH3 : r → pC : s→ (p↔ (q ∨ r))

obtenemos la forma clausal del conjunto que se obtiene tras refutar la conclusion:

H1 = p→ (q ∨ r) ≡ ¬p ∨ q ∨ r

H2 = (q ∧ s)→ p ≡ ¬q ∨ ¬s ∨ p

H3 = r → p ≡ ¬r ∨ p

¬C ≡ s ∧ (p ∨ q ∨ r) ∧ (¬q ∨ ¬p) ∧ (¬r ∨ ¬p)

Los detalles de la conversion en forma normal conjuntiva restringida de ¬C son los siguientes:

¬C = ¬(s→ (p↔ (q ∨ r)))

≡ ¬(¬s ∨ ((¬p ∨ q ∨ r) ∧ (p ∨ ¬(q ∨ r))))

≡ s ∧ ((p ∧ ¬q ∧ ¬r) ∨ (¬p ∧ (q ∨ r)))

≡ s ∧ (p ∨ ¬p) ∧ (p ∨ q ∨ r) ∧ (¬q ∨ ¬p) ∧ (¬q ∨ q ∨ r) ∧ (¬r ∨ ¬p) ∧ (¬r ∨ q ∨ r)

≡ s ∧ (p ∨ q ∨ r) ∧ (¬q ∨ ¬p) ∧ (¬r ∨ ¬p)

Por lo tanto, la forma clausal de H1,H2,H3,¬C es

Γ = ¬p ∨ q ∨ r,¬q ∨ ¬s ∨ p,¬r ∨ p, s, p ∨ q ∨ r,¬q ∨ ¬p,¬r ∨ ¬p

En esta seccion estudiamos tres de tales metodos: El metodo de Quine, el metodo de Davis-Putnamy el metodo de resolucion.

5.3.1. Algoritmo de Quine como metodo de refutacion

El algoritmo de Quine se simplifica significativamente si se utiliza para analizar la satisfacibilidadde una forma clausal.

Sea Ω un conjunto finito de clausulas restringidas cuya satisfacibilidad deseamos analizar. En estecaso, podemos describir el algoritmo de Quine como sigue:

Si p es un sımbolo proposicional que interviene en Ω. Dividimos Ω en tres subconjuntos:

Page 121: Cur So Bueno Logic A

5.3. METODOS QUE REQUIEREN QUE LA ENTRADA ESTE EN FORMA CLAUSAL 113

Ωp el subconjunto de las clausulas de Ω que contienen p como literal,

Ω¬p el subconjunto de las clausulas de Ω que contienen ¬p como literal

Ω′ = Ω \ (Ωp ∪Ω¬p) el subconjunto de las clausulas restantes (que no contienen a p ni a ¬p).

Con esta notacion, el algoritmo de Quine procede comenzando con un arbol hoja etiquetado con Ωy expandiendolo mediante las siguientes reglas:

1. Si Ω = ∅, entonces Ω es satisfacible.

2. Si Ω = entonces Ω es insatisfacible.

3. En otro caso,

3.1 Seleccionar un sımbolo proposicional p que intervenga en Ω.

3.2 Calcular Ωp,Ω¬p y Ω′ = Ω \ (Ωp ∪ Ω¬p)

3.3 Obtener Ω′p cuyas clausulas son las de Ωp despues de haber eliminado en cada una deellas el literal p.

3.4 Obtener Ω′¬p cuyas clausulas son las de Ω¬p despues de haber eliminado en cada una deellas el literal ¬p.

Entonces, Ω es insatisfacible si y solo si los dos conjuntos Ω′p∪Ω′ y Ω′¬p∪Ω′ son insatisfacibles 5.

Si es preciso recurrir al paso 3., se reitera el proceso. De este modo, el problema de analizar lasatisfacibilidad de Ω ha quedado reducido al de analizar la satisfacibilidad de dos conjuntos declausulas Ω′p ∪ Ω′ y Ω′¬p ∪ Ω′, ambos mas simples que Ω, ya que ninguno de ellos contiene a p ni a¬p. El algoritmo termina cuando:

todas las ramas llevan a un conjunto insatisfacible, en cuyo caso el conjunto Ω original esinsatisfacible, o

en una de las ramas se llega a un conjunto de clausulas en el que no hay un par de clausulascon literales opuestos. Tal conjunto es satisfacible. Un modelo se obtiene dando el valor 1 aun literal de cada clausula 6.

La correccion del algoritmo se basa en el teorema siguiente de comprobacion inmediata:

Teorema 5.5 Para cualquier interpretacion I ∈ I se tiene que:

Si I(p) = 1, entonces Ω es satisfacible si y solo si lo es Ω′¬p ∪ Ω′.

Si I(p) = 0 entonces Ω es satisfacible si y solo si lo es Ω′p ∪ Ω′.

Ejemplo 5.9 Analizar mediante el algoritmo de Quine la satisfacibilidad de

Ω = p ∨ q, p ∨ r,¬q ∨ ¬r,¬p

5Adviertase que si Ω′ es vacıo, no hay que agregarlo ya que es una tautologıa6Lo cual no altera el valor de verdad de las otras clausulas, ya que no contienen el opuesto de tal literal

Page 122: Cur So Bueno Logic A

114 CAPITULO 5. RAZONAMIENTO AUTOMATICO EN LA LOGICA PROPOSICIONAL

Ω = p ∨ q, p ∨ r,¬q ∨ ¬r,¬p

!!!!!!!!!aaaaaaaaaΩ′p ∪ Ω′ = q, r,¬q ∨ ¬r Ω′¬p ∪ Ω′ = ,¬q ∨ ¬r

Ω′′q ∪ Ω′′ = , r Ω′′¬q ∪ Ω′′ = ¬r, r

HHHHHHH

Por lo tanto, el algoritmo termina concluyendo que Ω es insatisfacible.

5.3.2. El metodo Davis-Putnam

Este metodo tambien toma como entrada un conjunto de clausulas y es usado como metodo derefutacion. Es una mejora del metodo de Quine que acabamos de estudiar.

La mejora se consigue tomando en consideracion que, como hemos advertido, al describir el metodode Quine, la ordenacion de los sımbolos proposicionales elegida tiene especial relevancia en laejecucion del algoritmo y una seleccion optima evita ramas innecesarias en el arbol semantico.

Con esta idea, para analizar la satisfacibilidad de un conjunto de clausulas, Ω, se considera que unsımbolo de proposicion, p, debe tener prioridad en el proceso de seleccion de la ordenacion en lossiguientes casos:

Una de las clausulas de Ω es p o bien ¬p. En cuyo caso, decimos que tal literal (p o ¬p) esuna clausula unitaria en Ω.

solo uno de los literales p o ¬p interviene en Ω. En cuyo caso, decimos que tal literal (p o ¬p)es un literal puro en Ω.

En definitiva, el metodo utiliza tres reglas:

Regla de propagacion unitaria: Dado un conjunto de clausulas Ω que contiene una clausu-la unitaria cuyo unico literal es ℓ, la regla de la clausula unitaria elimina de Ω todas lasclausulas que contienen ℓ y elimina, del resto de clausulas, todas las ocurrencias del literalopuesto, ℓ 7. Por lo tanto, la regla puede ser expresada como sigue:

Si ℓ ∈ Ω entonces sustituimos Ω por Ω [ℓ/⊤]

La aplicacion reiterada de esta regla a Ω se denomina propagacion unitaria

Al aplicar propagacion unitaria a Ω se obtiene un conjunto de clausulas Ω′ = Ω [ℓ/⊤] que esequisatisfacible con Ω, pero que es mas sencillo de resolver porque tiene menos literales:

Lema 5.2 Si ℓ es una clausula unitaria en Ω, entonces Ω es satisfacible si y solo si Ω [ℓ/⊤] essatisfacible. Ademas, si I es un modelo de Ω [ℓ/⊤], entonces cualquier extension del I tal queI(ℓ) = 1 es modelo de A.

7Es decir, se asigna a ℓ el valor de verdad 1, ya que si consideramos interpretaciones, I , tal que I(ℓ) = 0, tendrıamosque I(Ω) = 0.

Page 123: Cur So Bueno Logic A

5.3. METODOS QUE REQUIEREN QUE LA ENTRADA ESTE EN FORMA CLAUSAL 115

Demostracion: Sea A una fbf tal que Ω es una forma clausal de A, entonces, Ω [ℓ/⊤] es unaforma clausal de A[ℓ/⊤]. Tenemos que demostrar que A es equisatisfacible con B.

Puesto que ℓ es una clausula unitaria en Ω, tenemos que A ≡ ℓ ∧A.

Demostremos en primer lugar que A ≡ ℓ∧A[ℓ/⊤]: Sea I una interpretacion cualquiera. Tenemosdos posibilidades:

Si I(ℓ) = 1 entonces, I(A) = I(ℓ ∧A[ℓ/⊤]) = 1

SI I(ℓ) = 0 entonces, I(A) = I(ℓ ∧A[ℓ/⊤]) = 0

Ahora, es inmediato demostrar que A es equisatisfacible con A[ℓ/⊤]. En efecto:

Si A es satisfacible, puesto que A ≡ ℓ ∧A[ℓ/⊤], se tiene que A[ℓ/⊤] es satisfacible.

Si A[ℓ/⊤] es satisfacible e I0 un modelo de A[ℓ/⊤], entonces, puesto que en A[ℓ/⊤] no ocurreni ℓ ni ℓ, podemos considerar la interpretacion I tal que I(p) = I0(p) para todo sımboloproposicional que ocurre en A[ℓ/⊤] e I(ℓ) = 1. Tenemos pues que I es un modelo de A.

Regla del literal puro: Dado un conjunto de clausulas Ω que contiene un literal puro, ℓ,esta regla elimina de Ω todas las clausulas que contienen ℓ 8. Por lo tanto, la regla puede serexpresada como sigue:

Si ℓ ∈ Ω es puro, entonces sustituimos Ω por Ω[ℓ/⊤]

Al aplicar esta regla a Ω se obtiene un conjunto de clausulas Ω′ que es equisatisfacible con Ω,pero que, como para la regla anterior, es mas sencillo de resolver porque tiene menos literales:

Lema 5.3 Si ℓ es una literal puro en Ω, entonces Ω es satisfacible si y solo si Ω [ℓ/⊤] es satisfacible.Ademas, si I es un modelo de Ω [ℓ/⊤], entonces cualquier extension del I tal que I(ℓ) = 1 es modelode A.

Demostracion: Por el lema 5.2, si ℓ es una clausula unitaria en Ω, el resultado esta asegurado.Demostramos pues el caso en que ℓ no es una clausula unitaria en Ω.

Supongamos que Ω es satisfacible y sea I0 un modelo de Ω. Entonces I0(Ci) = 1 para toda clausulaCi en Ω.

Podemos considerar dos caso:

Si I0(ℓ) = 1 entonces I0(Ω) = I0(Ω[ℓ/⊤]) = 1 y, por lo tanto, Ω[ℓ/⊤] es satisfacible.

Si I0(ℓ) = 0, puesto que, por hipotesis, en toda clausula de Ω ocurre un literal distinto de ℓ,se tiene que la interpretacion I ′ tal que

• I ′(p) = I0(p) si p 6= ℓ y ¬p 6= ℓ, y

• I ′(ℓ) = 1

es un modelo de Ω[ℓ/⊤].

8Es decir, se asigna a ℓ el valor de verdad 1

Page 124: Cur So Bueno Logic A

116 CAPITULO 5. RAZONAMIENTO AUTOMATICO EN LA LOGICA PROPOSICIONAL

Recıprocamente, si Ω[ℓ/⊤] es satisfacible entonces toda interpretacion I0 que sea un modelo paraΩ[ℓ/⊤] puede extenderse a un modelo de Ω, definiendo la nueva interpretacion I como sigue:

I(ℓ′) = I0(ℓ′) para todo literal ℓ′ tal que ℓ′ 6= ℓ

I(ℓ) = 1.

Regla de ramificacion: Dado un conjunto de clausulas Ω que contiene al menos una ocurren-cia del literal ℓ, la regla de ramificacion reduce el problema de determinar la satisfactibilidadde Ω a dos subproblemas mas sencillo de resolver:

• el problema de determinar si Ω ∪ ℓ es satisfactible, o bien

• el problema de determinar si Ω ∪ ℓ es satisfactible.

El metodo aplica la regla de ramificacion a conjuntos de clausulas que no contienen clausulasunitarias ni literales puros. Puesto que la propagacion unitaria respeta la satisfacibilidad, sepuede reducir el problema de determinar la satisfacibilidad de Ω a los dos subproblemas dedeterminar la satisfacibilidad de Ω ∪ ℓ y Ω ∪ ℓ 9

Descripcion del algoritmo

El algoritmo procede como sigue:

Paso 1: Aplicar la regla de propagacion unitaria.

Si tras su aplicacion se tiene como resultado un conjunto vacıo de clausulas, entonces elconjunto al que se aplica es satisfacible.

Si tras su aplicacion se tiene como resultado un conjunto de clausulas que contiene a ,entonces el conjunto al que se aplica es insatisfacible.

En otro caso, es preciso el paso 2.

Paso 2: Aplicar la regla del literal puro.

Si tras su aplicacion se tiene como resultado una conjunto vacıo de clausulas, entoncesel conjunto al que se aplica es satisfacible.

Si tras su aplicacion se tiene como resultado un conjunto de clausulas que contiene a ,entonces el conjunto al que se aplica es insatisfacible.

Si tras su aplicacion obtenemos una clausula unitaria, entonces regresamos al paso 1.

Si tras su aplicacion existe otro literal puro, volver a aplicar este paso.

En otro caso, es preciso el paso 3.

Paso 3: Elegir un literal que ocurra en el conjunto entrada de clausulas, aplicar la regla deramificacion y para cada uno de los dos subproblemas volver al paso 1.

Estos pasos se repiten hasta que se llega a un conjunto vacıo de clausulas en algun subproblema (encuyo caso el conjunto de clausulas de entrada, Ω, es satisfacible) o hasta que se llega a la clausulavacıa en todos los subproblemas (entonces, el conjunto de clausulas de entrada, Ω, es insatisfactible).

9Mediante la Regla de propagacion unitaria y a continuacion la regla del literal puro

Page 125: Cur So Bueno Logic A

5.3. METODOS QUE REQUIEREN QUE LA ENTRADA ESTE EN FORMA CLAUSAL 117

eer r1. La descripcion del algoritmo no es determinista, ya que en la regla de bifurcacion no hemos

establecido un criterio de seleccion del literal. Existen diferentes heurısticas:

Seleccionar el literal con el maximo numero de ocurrencias.

Seleccionar literales con el maximo numero de ocurrencias en las clausulas pequenas.

Seleccionar literales que causen el mayor numero de propagaciones unitarias.

Seleccionar las literales aleatoriamente

2. Es obvio que el algoritmo es paralelizable de modo natural, sin mas que aprovechar laregla de bifurcacion para realizar el procesamiento en paralelo. Dividiendo el espacio debusqueda, al asignar distintas ramas a los procesos, se consigue reducir el tiempo total decomputo.

Ejemplo 5.10 Apliquemos el metodo a Ω = ¬p ∨ ¬q ∨ r,¬p ∨ ¬r ∨ s, p ∨ t, q ∨ ¬s, q ∨ r ∨ s

¬p ∨ ¬q ∨ r,¬p ∨ ¬r ∨ s, p ∨ t, q ∨ ¬s, q ∨ r ∨ sHHH

p,¬p ∨ ¬q ∨ r,¬p ∨ ¬r ∨ s, p ∨ t, q ∨ ¬s, q ∨ r ∨ s ¬p,¬p ∨ ¬q ∨ r,¬p ∨ ¬r ∨ s, p ∨ t, q ∨ ¬s, q ∨ r ∨ s

¬q ∨ r,¬r ∨ s, q ∨ ¬s, q ∨ r ∨ sPr.Unit Pr.Unit

t, q ∨ ¬s, q ∨ r ∨ s

q,¬q ∨ r,¬r ∨ s, q ∨ ¬s, q ∨ r ∨ s ¬q,¬q ∨ r,¬r ∨ s, q ∨ ¬s, q ∨ r ∨ s

HHH

Pr.Unitr,¬r ∨ s

Pr.Unit

¬r ∨ s,¬s, r ∨ sPr.Unit

sPr.Unit

Hemos llegado a una rama con el conjunto vacıo de clausulas. Por lo tanto, Ω es satisfacible.

5.3.3. Metodo de Resolucion

Este metodo, introducido por Robinson, es el sistema de demostracion automatica mas conocido.Ello se debe a que la mayorıa de los sistemas de programacion logica son demostradores de teoremaspor resolucion.

A diferencia del metodo de las tablas semanticas y al igual que los metodos de Quine y Davis-Putnam, se aplica unicamente a formas clausales y para ello utiliza una sola regla de inferencia, laregla de Resolucion.

La idea basica del metodo de resolucion es el siguiente resultado semantico:

Teorema 5.6 Dado un conjunto Ω de clausulas,

Ω es insatisfacible si y solo si Ω |= 2

donde 2 representa la clausula vacıa (disyuncion vacıa de literales).

Page 126: Cur So Bueno Logic A

118 CAPITULO 5. RAZONAMIENTO AUTOMATICO EN LA LOGICA PROPOSICIONAL

Demostracion: Si Ω es insatisfacible entonces Ω |= A para toda fbf A, en particular para A = 2.Recıprocamente, puesto que 2 es insatisfacible, si Ω |= 2 se tiene que Ω es insatisfacible.

Basandose en este resultado, el metodo funciona derivando clausulas a partir del conjunto declausulas Ω hasta obtener 2, o bien concluir que 2 no es derivable de Ω.

Para derivar nuevas clausulas a partir del conjunto de clausulas, Ω, el metodo utiliza una unicaregla de inferencia llamada regla de resolucion la cual pasamos a describir.

Definicion 5.10 Dos clausulas C1 y C2 se dicen resolubles respecto a un literal l, si l ocurreen C1 y su opuesto l ocurre en C2. Si C1 y C2 son resolubles respecto a l, llamamos resolvente deC1 y C2 respecto de l , denotada Rl(C1, C2), a la clausula

Rl(C1, C2) = la forma restringida de (C1 − l) ∨ (C2 − l)

donde C1 − l representa la clausula obtenida al eliminar l en C1 y C2 − l representa la clausulaobtenida al eliminar l en C2, respectivamente.

Ejemplo 5.11

R¬p(¬p ∨ q ∨ ¬r, q ∨ p ∨ t) = q ∨ ¬r ∨ t

Rp(p,¬p) = 2

C1 = q ∨ ¬r, C2 = p ∨ ¬r no son resolubles respecto de ningun literal.

Rp(q ∨ r,¬r ∨ p) NO existe.

El Sistema por Resolucion se describe con una unica regla de inferencia, la Regla de Resolucion.

Definicion 5.11 La regla de resolucion es la siguiente:

Si C1 y C2 son resolubles respecto a ℓ entonces entonces: Rℓ(C1, C2) es consecuenciainmediata de C1 y C2:

C1

C2

Rℓ(C1, C2)

eer r La regla de Resolucion es una generalizacion de la regla Modus Ponens, mas concretamente, esun caso particular de la regla de Silogismo Hipotetico. En efecto,

C1 ≡ (C1 − l) ∨ l ≡ ¬(C1 − l)→ l

C2 ≡ (C2 − ¬l) ∨ ¬l ≡ l → (C2 − ¬l)

y la regla del Silogismo Hipotetico nos asegura que

¬(C1 − l)→ l

l → (C2 − ¬l)

¬(C1 − l)→ (C2 − ¬l) ≡ (C1 − l) ∨ (C2 − ¬l) ≡ Rl(C1, C2)

Page 127: Cur So Bueno Logic A

5.3. METODOS QUE REQUIEREN QUE LA ENTRADA ESTE EN FORMA CLAUSAL 119

eer r ¿Que ocurre si consideramos, por ejemplo, las clausulas C1 = ¬p ∨ q ∨ r y C2 = p ∨ ¬q ∨ t? Eneste caso, podemos obtener:

Rp(C1, C2) = q ∨ r ∨ ¬q ∨ t ≡ ⊤

Rq(C1, C2) = ¬p ∨ r ∨ p ∨ t ≡ ⊤

Ası, pues, si dos clausulas son resolubles respecto a mas de un literal, las resolventes respecto acualesquiera de estos literales es ⊤.

Podrıamos plantearnos resolver simultaneamente respecto de p y q. ¿Serıa correcto que talresolvente es r ∨ t? Veamos que no es ası, ya que perderıamos la propiedad deseada, es decir:C1, C2 6|= r ∨ t. En efecto, basta considera la interpretacion I tal que I(p) = I(q) = 1 eI(r) = I(t) = 0, tendrıamos que I(C1) = I(C2) = 1, pero I(r ∨ t) = 0. Es preciso pues tenerclaro que la regla de resolucion define la resolvente respecto a un unico literal.

La justificacion semantica de la regla de resolucion es el siguiente resultado mas general y decomprobacion inmediata:

Lema 5.4 Para cualesquiera tres fbfs A,B y C, se tiene que:

A ∨B,¬A ∨C |= B ∨ C

Demostracion: Tenemos que comprobar que Mod((A ∨ B) ∧ (¬A ∨ C)) ⊆ Mod(B ∨ C). Enefecto, Sea I ∈ Mod((A ∨ B) ∧ (¬A ∨ C)). Entonces, I(A ∨ B) = I(¬A ∨ C) = 1 y tenemos doscasos posibles para I:

Si I(A) = 1, se tiene que I(¬A) = 0 y puesto que I(¬A ∨ C) = 1, se concluye que I(C) = 1y, por lo tanto, I(B ∨C) = 1, es decir, I ∈ Mod(B ∨C).

Si I(A) = 0, se tiene que I(¬A) = 1 y puesto que I(A ∨B) = 1, se concluye que I(B) = 1 y,por lo tanto, I(B ∨C) = 1, es decir, I ∈ Mod(B ∨C).

Como consecuencia trivial de este resultado se tiene el siguiente

Teorema 5.7 Dado un conjunto de clausulas Ω, si C1, C2 ∈ Ω son resolubles entonces

Ω es satisfacible si y solo si Ω ∪ Rl(C1, C2 lo es.

Definicion 5.12 Dados un conjunto Ω de clausulas y una clausula C, se dice que C es deduci-ble por resolucion a partir de Ω, denotado Ω ⊢R C, si existe una secuencia finita de clausulasC1, C2, · · · , Cn tal que

1. Cada Ci (1 ≤ i ≤ n) es o bien una clausula de Ω o bien una resolvente de dos clausulasanteriores en la secuencia.

2. Cn = C.

La secuencia Ci (1 ≤ i ≤ n) se dice que es una deduccion por resolucion de C a partir de Ω; ysi C = la secuencia se denomina refutacion por resolucion de Ω.

Ejemplo 5.12 Demos una refutacion por resolucion del siguiente conjunto de clausulas Ω

Ω = p ∨ q,¬q ∨ r,¬p ∨ r,¬r

Page 128: Cur So Bueno Logic A

120 CAPITULO 5. RAZONAMIENTO AUTOMATICO EN LA LOGICA PROPOSICIONAL

1. ¬p ∨ r de Ω2. ¬r de Ω3. ¬p Rr(1, 2)4. ¬q ∨ r de Ω5. ¬q Rr(2, 4)6. p ∨ q de Ω7. q Rp(3, 6)8. 2 Rq(5, 7)

Como consecuencia del teorema 5.6 tenemos el siguiente resultado que garantiza la correccion ycompletitud de la regla de resolucion.

Teorema 5.8 Un conjunto de clausulas restringidas es insatisfacible si y solo si es posible construiruna refutacion por resolucion. Es decir,

Ω |= ⊥ si y solo si Ω ⊢R 2

Ejemplo 5.13 En el ejemplo 5.12 hemos visto que el razonamiento

H1 p→ (q ∨ r)H2 (q ∧ s)→ pH3 r→ pC s→ (p↔ (q ∨ r))

es valido si y solo si el conjunto

Γ = ¬p ∨ q ∨ r,¬q ∨ ¬s ∨ p,¬r ∨ p, s, p ∨ q ∨ r,¬q ∨ ¬p,¬r ∨ ¬p

es insatisfacible. Una refutacion por resolucion que lo prueba es la siguiente:

1. ¬p ∨ q ∨ r

2. ¬q ∨ ¬s ∨ p

3. ¬r ∨ p

4. s

5. p ∨ q ∨ r

6. ¬q ∨ ¬p

7. ¬r ∨ ¬p

8. ¬q ∨ p R(2, 4)

9. p ∨ r R(8, 5)

10. p R(3, 9)

11. ¬q R(6, 10)

Page 129: Cur So Bueno Logic A

5.3. METODOS QUE REQUIEREN QUE LA ENTRADA ESTE EN FORMA CLAUSAL 121

12. ¬p ∨ r R(1, 11)

13. r R(9, 12)

14. ¬r R(7, 10)

15. 2 R(13, 14)

5.3.3.1. Arboles semanticos para un conjunto de clausulas

Recordemos el concepto de arbol semantico introducido en la definicion 5.1:

Dada una secuencia de sımbolos de proposicion ∆ = p1, p2, . . . , pn, . . ., un arbol semantico res-pecto de ∆ es un arbol binario que satisface las condiciones siguientes:

1. cada arco esta etiquetado con un literal pi o ¬pi donde pi ∈ ∆.

2. los literales que etiquetan dos arcos que nacen del mismo nodo son opuestos.

3. ninguna rama contiene mas de una ocurrencia de cada pi ∈ ∆.

En lo que sigue, Ω es un conjunto finito de clausulas y [p1, . . . , pn] una ordenacion del conjunto delos sımbolos proposicionales que intervienen en Ω.

Definicion 5.13 Un nodo N de un arbol semantico respecto de [p1, . . . , pn] se denomina nodofallo si su interpretacion IN asociada es tal que IN (Ci) = 0 para alguna clausula Ci de Ω peroninguna de las interpretaciones asociadas a sus ascendientes posee esta propiedad.

Un nodo fallo nos proporciona una interpretacion (parcial) I que refuta a Ω. Por tanto, no espreciso considerar las extensiones de I.

Un arbol semantico respecto de [p1, . . . , pn] se dice cerrado si todas sus hojas son nodos fallo.

Un nodo N de un arbol semantico respecto de [p1, . . . , pn] se denomina un nodo inferencia si susdos descendientes inmediatos son nodos fallo.

Ejemplo 5.14 Dado Ω = p, q∨ r,¬p∨¬q,¬p∨¬r, la figura muestra un arbol semantico cerradopara Ω respecto de [p, q, r]

•I2(¬p ∨ ¬q) = 0

q

p ¬p

• (∗)

r ¬r

•I4(¬p ∨ ¬r)=0

@

@@@•

I5(q ∨ r) = 0

•I6(p) = 0

HHHHHHH

!!!!!!!!!

¬q

•aaaaaaaaa

En este arbol solo el nodo marcado con (∗) es un nodo inferencia.

Page 130: Cur So Bueno Logic A

122 CAPITULO 5. RAZONAMIENTO AUTOMATICO EN LA LOGICA PROPOSICIONAL

Lema 5.5 Sea N un nodo inferencia de un arbol semantico respecto [p1, . . . , pn], y sean Ci y Cj

clausulas a las que asignan el valor de verdad 0 las interpretaciones asociadas al descendientederecho de N , Nd y al descendiente izquierdo de N , Ni, respectivamente. Si l y l son los literalesque etiquetan los arcos que parten de N , entonces IN (Rl(Ci, Cj)) = 0. En particular, N es un nodofallo del arbol semantico respecto de [p1, . . . , pn] para Ω ∪ Rl(Ci, Cj).

Demostracion: Supongamos que N no es un nodo fallo del arbol semantico respecto de [p1, . . . , pn]para Ω ∪ Rl(Ci, Cj). Entonces, la interpretacion I asociada a N es tal que IN (Rl(Ci, Cj)) = 1 ypor lo tanto, se tiene una de las situaciones siguientes:

1. La interpretacion INiasociada al descendiente izquierdo de N es una extension de IN tal que

INi(Ci) = 1.

2. La interpretacion INdasociada al descendiente derecho de N es una extension de IN tal que

INd(Cj) = 1

Por lo tanto, alguno de los dos descendientes inmediatos de N no sera nodo fallo, en contra de lahipotesis de que N es un nodo inferencia.

Teorema 5.9 El metodo de resolucion es:

Correcto: dado un conjunto de clausulas Ω, si existe una refutacion por resolucion de Ω,entonces Ω es insatisfacible.

Completo: si un conjunto Ω de clausulas es insatisfacible entonces existe una refutacion porresolucion de Ω.

Demostracion: Supongamos que C1, C2, . . . , Cn−1,2 es una deduccion por resolucion de 2 a partirde Ω. Si Ω fuera satisfacible existira un modelo I para Ω, es decir, I(Ci) = 1 para toda clausulaCi de Ω. Puesto que Cj, Ck |= Rl(Cj , Ck), se tendrıa I(Ci) = 1 para toda clausula Ci de la secuenciaC1, C2, . . . , Cn−1,2, y, en particular, I(2) = 1 lo cual es imposible.

Recıprocamente, si Ω es insatisfacible y [p1, . . . , pn] es una ordenacion del conjunto de los sımbolosproposicionales que intervienen en Ω, el arbol semantico completo respecto a [p1, . . . , pn] nos permite(por ser Ω insatisfacible) obtener un arbol semantico cerrado T para Ω. Si T es un arbol de un solonodo, entonces 2 ∈ Ω pues, en otro caso, se requiere al menos el primer nivel del arbol semanticopara acceder a un nodo fallo. Por lo tanto, si 2 ∈ Ω, la secuencia de un solo elemento 2 es unarefutacion por resolucion de Ω. En cambio, si T no es un arbol de un solo nodo, existe entonces almenos un nodo inferencia, o de lo contrario todo nodo del arbol tendrıa un descendiente no fallo,lo cual es imposible por tratarse T de un arbol cerrado. Sea, pues, N un nodo tal, y N1 y N2 susdescendientes inmediatos; entonces ambos son nodos fallo. Por tanto, existen clausulas Cn, Cm en[C1, . . . , Ck] (una ordenacion de los elementos de Ω) tales que IN1(Cn) = IN2(Cm) = 0. Sea l el

literal del arco que va de N a N1 y l el literal opuesto que etiqueta el arco que va de N a N2, entoncespor el lema previo a este teorema resulta que IN (Rl(Ci, Cj)) = 0. Consideremos ahora el caminoque va desde la raız del arbol hasta N y eliminemos los arcos y nodos debajo del primer nodo dedicho camino que cumpla que la clausula Rl(Ci, Cj) es falsa en la interpretacion parcial asociada adicho nodo. Obtenemos ası un arbol semantico cerrado T ′ para [C1, . . . , Ck] ∪ Rl(Ci, Cj) que esun subarbol estricto de T . Ahora, aplicamos este mismo proceso en T ′ obteniendo como resultado

Page 131: Cur So Bueno Logic A

5.3. METODOS QUE REQUIEREN QUE LA ENTRADA ESTE EN FORMA CLAUSAL 123

un subarbol estricto de T ′ y una extension del conjunto de clausulas anterior de manera similar.Procedemos ası sucesivamente de modo que, en un numero finito de etapas, obtendremos unasecuencia cuyo arbol semantico cerrado es un arbol de un solo nodo y cuyo ultimo elemento es 2,es decir, una refutacion por resolucion de Ω.

El modo habitual de representar las deducciones por resolucion a partir de un conjunto Ω declausulas es mediante un arbol binario, llamado arbol de resolucion:

Definicion 5.14 Un arbol de resolucion para un conjunto de clausulas Ω es un arbol caracte-rizado como sigue:

1. cada nodo no hoja tiene dos descendientes inmediatos.

2. cada nodo hoja esta etiquetado por una clasula de Ω.

3. cada nodo no hoja esta etiquetado por una resolvente de las etiquetas de sus descendientesinmediatos.

Por definicion, resulta obvio el siguiente teorema:

Teorema 5.10 Si C es la etiqueta de la raız de un arbol de resolucion para Ω, entonces Ω ⊢R C.

Si C es 2, el arbol se dice que es un arbol de refutacion para Ω.

Ejemplo 5.15 A continuacion se presenta un arbol de refutacion para el conjunto

Ω = p ∨ q,¬q ∨ r,¬p ∨ r,¬r

@

@@@@@@@@@@@

@@@

@

@@

2

q

¬p ¬q

p ∨ q ¬p ∨ r ¬r ¬q ∨ r ¬r

En general, para todo conjunto insatisfacible de clausulas, Ω, existen refutaciones distintas para Ω.El siguiente arbol muestra una nueva refutacion para el conjunto de clausulas del ejemplo anterior

Page 132: Cur So Bueno Logic A

124 CAPITULO 5. RAZONAMIENTO AUTOMATICO EN LA LOGICA PROPOSICIONAL

@

@@@@@@@@@@@

¬p ∨ r ¬r p ∨ q ¬q ∨ r ¬r

¬p

q

r

2

5.3.4. Resolucion como algoritmo

Si el conjunto de clausulas cuya satisfacibilidad estamos estudiando es finito, el conjunto de lasvariables proposicionales tambien es finito y por lo tanto, tambien es finito el conjunto de resolventesque podemos obtener, ya que estas deben ser clausulas restringidas.

En consecuencia, es posible generar todas las resolventes, lo que nos lleva al algoritmo basicoconstruible sobre la regla de resolucion: generar sistematicamente todas las resolventes a partir de unconjunto de clausulas dado; si este conjunto contiene la clausula vacıa, el conjunto es insatisfacible,en caso contrario, es satisfacible.

En definitiva, dado un conjunto de clausulas Ω, denotamos por R(Ω) la union de Ω y el conjuntode todas las resolventes de clausulas de Ω (resolventes obtenidas utilizando solo clausulas de Ω).

Para todo n ∈ N, definimos Rn(Ω) como sigue:

R0(Ω) = Ω

Rn+1(Ω) = R(Rn(Ω))

Por definicion, es claro que Rn(Ω) ⊆ Rn+1(Ω).

El algoritmo de resolucion construye sucesivamente R1(Ω),R2(Ω) . . .. Si existe un k ∈ N tal que2 ∈ Rk(Ω) entonces, Ω es insatisfacible. En caso contrario, Ω es satisfacible.

Analicemos que el algoritmo propuesto finaliza al cabo de un numero finito de etapas, es decir:

Teorema 5.11 Dado un conjunto de clausulas, Ω, existe m ∈ N tal que

Rn(Ω) = Rm(Ω) para todo n ≥ m

Demostracion: Sea Ω∗ el conjunto de todas las clausulas cuyos literales son precisamente losliterales que ocurren en Ω. Tenemos que Ω∗ es finito por serlo Ω y ademas, como Ω ⊆ Ω∗ y al hallarla resolvente de dos clausulas no se generan nuevos literales, se tiene que Rn(Ω) ⊆ Ω∗.

De este resultado, de Rn(Ω) ⊆ Rn+1(Ω), y de la finitud de Ω∗ se concluye de forma inmediataque el algoritmo termina, es decir, el proceso de hallar resolventes para obtener nuevas clausulasfinaliza en un numero finito de etapas.

Page 133: Cur So Bueno Logic A

5.3. METODOS QUE REQUIEREN QUE LA ENTRADA ESTE EN FORMA CLAUSAL 125

Puesto que el objetivo es comprobar la insatisfacibilidad de un conjunto Ω, paramos la construccionde la secuencia

R(Ω),R2(Ω), . . . ,Rm(Ω)

cuando obtengamos 2. Si Ω es satisfacible sera necesario construir conjuntos Rm(Ω) hasta que enun paso dado no se generen nuevas clausulas, lo cual indicara que la clausula vacıa 2 no se puedededucir a partir de Ω.

El siguiente ejemplo muestra como aplicar el metodo propuesto, llamado metodo de saturacion.

Ejemplo 5.16 El conjunto de clausulas Ω = p ∨ q, p ∨ r,¬q ∨ ¬r,¬p es insatisfacible. Com-probemoslo usando el metodo de resolucion descrito, denominado resolucion por saturacion: vamosa generar sistematicamente todas las posibles resolventes, comprobando si cada clausula es resolu-ble con “todas” las demas y comprobando si cada nueva resolvente es a su vez resoluble con todaslas demas.

1. p ∨ q

2. p ∨ r

3. ¬q ∨ ¬r

4. ¬p

5. p ∨ ¬r R(1,3)

6. q R(1,4)

7. p ∨ ¬q R(2,3)

8. r R(2,4) R(Ω) = Ω ∪ p ∨ ¬r, q, p ∨ ¬q, r

9. p R(1,7)

10.−− p R(2,5)

10. ¬r R(3,6)

11. ¬q R(3,8)

12.−− ¬r R(4,5)

12.−− ¬q R(4,7)

12.−− p R(5,8)

12.−− p R(6,7) R2(Ω) = R(Ω) ∪ p,¬r,¬q

12.−− p R(1,11)

12.−− p R(2,10)

12. 2 (4,9)

Page 134: Cur So Bueno Logic A

126 CAPITULO 5. RAZONAMIENTO AUTOMATICO EN LA LOGICA PROPOSICIONAL

Las lıneas tachadas indican que las resolventes generadas son eliminadas por estar ya en la secuencia.

El metodo de resolucion por saturacion, es muy ineficiente. Basta observar que en el ejemplo anteriorse han generado quince resolventes hasta obtener la clausula vacıa, en contraste con la siguienterefutacion que requiere unicamente cuatro resolventes:

5. q R(1,4)

6. r R(2,4)

7. ¬q R(3,6)

8. 2 R(5,7)

Existen diversos refinamientos del metodo basico por saturacion. Todos ellos incluyen como simpli-ficacion la eliminacion de aquellas clausulas generadas por resolucion que, bien contienen un literaly su opuesto o bien contienen otra clausula ya generada.

Presentamos a continuacion el refinamiento conocido como resolucion lineal propuesto por Lo-veland y Luckham, y como caso particular, la mejora de este refinamiento, debida a Kowalski yKuenner, llamado resolucion lineal ordenada. El nombre de resolucion lineal se debe a que lasdeducciones se construyen como un tipo de razonamiento en cadena, es decir, para generar 2 secomienza con una clausula, se resuelve esta con otra clausula y la resolvente obtenida con otraclausula y ası sucesivamente.

5.3.5. Resolucion Lineal

Sea Ω un conjunto de clausulas y C0 ∈ Ω. Una deduccion lineal de una clausula C a partir de Ωcon cabeza C0, es una secuencia de clausulas del tipo

C0,B0, C1,B1, . . . , Cn−1,Bn−1, Cn

tal que

1. C0 ∈ Ω.

2. Para todo i = 1, . . . , n − 1, Ci es una resolvente de Ci−1 y Bi−1.

3. Para todo i = 1, 2, . . . , n, Bi ∈ Ω o Bi = Cj para algun j con j < i.

4. Cn = C.

El modo habitual de representar este tipo de deducciones es mediante un arbol binario, llamadoarbol de resolucion lineal, de la forma

Page 135: Cur So Bueno Logic A

5.3. METODOS QUE REQUIEREN QUE LA ENTRADA ESTE EN FORMA CLAUSAL 127

Bn−2

...

C

C0

Cn−1

C2

C1

Bn−1

B1

B0

Las clausulas Ci se denominan clausulas centrales y las Bi clausulas laterales. Si C = 2, elarbol se denomina un arbol de refutacion lineal para Ω con cabeza C0.

Ejemplo 5.17 Un arbol de refutacion lineal para Ω = p ∨ q,¬p ∨ q,¬q ∨ ¬r,¬q ∨ r con cabezap ∨ q es,

2

p ∨ q

¬q

r

q

q

¬q ∨ ¬r

¬q ∨ r

¬p ∨ q

Las clausulas laterales son ¬p ∨ q, ¬q ∨ r, ¬q ∨ ¬r de Ω y q. esta ultima es ademas una clausulacentral.

El metodo de resolucion lineal es correcto y completo, es decir, un conjunto de clausulas Ω esinsatisfacible si y solo si existe una refutacion lineal para Ω.

5.3.6. Resolucion Lineal Ordenada

Este tipo de resolucion constituye, como hemos indicado, una mejora de la resolucion lineal. Dosson las ideas basicas en las que se apoya este metodo:

1. considera las clausulas como secuencia ordenada de literales en lugar de como conjunto deliterales, llamandolas clausulas ordenadas y dicho orden no puede ser alterado en el proceso

Page 136: Cur So Bueno Logic A

128 CAPITULO 5. RAZONAMIENTO AUTOMATICO EN LA LOGICA PROPOSICIONAL

de deduccion.

2. para analizar si dos clausulas C1 y C2, son resolubles, solo miramos el ultimo literal de C1.

3. el literal resuelto en la clausula C1, se mantiene en la resolvente pero marcado con un recuadro.

4. en toda resolvente, se elimina todo literal encuadrado final.

Ejemplo 5.18 Presentamos tres ejemplos de resolucion lineal ordenada de dos clausulas dadas:

1. RO(p ∨ ¬q ∨ r, p ∨ ¬r ∨ t) = p ∨ ¬q ∨ r ∨ t [= p ∨ ¬q ∨ t].

Como vemos, en caso de repeticion se elimina el literal repetido de la clausula derecha.

2. RO(p ∨ ¬q ∨ r, p ∨ ¬r) = p ∨ ¬q.

3. RO(p ∨ ¬q ∨ r, q ∨ ¬r) = p ∨ ¬q ∨ r ∨ q [= p ∨ q].

Sobre las clausulas con literales recuadrados, definimos la operacion de Reduccion: si el ultimoliteral de la clausula coincide es con el opuesto de un literal recuadrado, tal literal es eliminado:

RO(p ∨ ¬q ∨ ¬r ∨ q) = p ∨ ¬q ∨ ¬r

Con relacion a la resolucion lineal, la resolucion lineal ordenada no solo reduce el numero deresolventes (debido al hecho de resolver unicamente respecto del ultimo literal) sino que ademasincorpora una nueva eficiencia considerando un determinado tipo de clausulas respecto de las cualessolo se requiere resolver con clausulas centrales:

Definicion 5.15 Una clausula ordenada se denomina una clausula ordenada reducible sisu ultimo literal es el opuesto de algun literal enmarcado de dicha clausula. Si C es una clausulaordenada reducible, la clausula ordenada Re(C) se denomina la clausula reducida de C.

Si la clausula Ci a resolver es reducible, solo sera necesario resolver con clausulas centrales y existeuna clausula central Cj tal que R(Ci, Cj) es la reducida de Ci.

Disponemos ya de los elementos necesarios para definir la deduccion en la resolucion lineal ordenada.

Algoritmo. El algoritmo de resolucion lineal ordenada consiste en la creacion de uno o variosarboles en donde cada nodo y cada rama se etiquetan de una de las siguientes formas:

C1

C2

Red(C1, C2)

C1

Red(C1)

Definicion 5.16 Sea Ω un conjunto de clausulas ordenadas y C0 ∈ Ω. Una deduccion linealordenada de una clausula C a partir de Ω con cabeza C0 es una secuencia de clausulasordenadas C0,B0, C1,B1, . . . , Cn−1,Bn−1, Cn tal que

1. Para todo i = 0, 1, 2, . . . , n− 1, Bi ∈ Ω o Bi = Cj para algun j con j < i.

2. Para todo i = 2, . . . , n, si Ci−1 es reducible, entonces Ci es la reducida de Ci−1 y en casocontrario, Ci es la resolvente ordenada de Ci−1 y Bi con Bi ∈ Ω.

Page 137: Cur So Bueno Logic A

5.3. METODOS QUE REQUIEREN QUE LA ENTRADA ESTE EN FORMA CLAUSAL 129

3. Cn = C.

Como en el caso de la resolucion lineal, la secuencia de clausulas ordenadas

C0,B0, C1,B1, . . . , Cn−1,Bn−1, Cn

se representa mediante el arbol

C

Cn−1 Bn−1

C2 Bn−2...

C1 B1

C0 B0

En el caso en que C = 2, este arbol se dice que es un arbol de refutacion lineal ordenada paraΩ.

Ejemplo 5.19 Un arbol de refutacion lineal ordenada para

Ω = p ∨ q,¬p ∨ q,¬q ∨ ¬r,¬q ∨ r

con cabeza p ∨ q es el siguiente:

2

p ∨ q ∨ r ∨ ¬q

p ∨ q ∨ r

p ∨ q

p •

(. . . p ∨ q)

¬q ∨ ¬r

¬q ∨ r

¬p ∨ q

p ∨ q ∨ ¬r ∨ ¬q (. . . p ∨ q)

p ∨ q ∨ ¬r ¬q ∨ r

p ∨ q ¬q ∨ ¬r

Los puntos suspensivos en el arbol de refutacion indican que no es preciso localizar la correspon-diente clausula lateral.

Page 138: Cur So Bueno Logic A

130 CAPITULO 5. RAZONAMIENTO AUTOMATICO EN LA LOGICA PROPOSICIONAL

El metodo de resolucion lineal ordenada es correcto y completo, es decir, un conjunto Ω de clausulasordenadas es insatisfacible si y solo si existe una refutacion lineal ordenada para Ω.

Finalmente, pasamos a describir un modo sistematico para encontrar una refutacion lineal ordenadao bien asegurar que no existe, es decir, a dar una descripcion algorıtmica del metodo:

1. la raız del primer arbol es cualquier clausula del conjunto Ω, C0 ∈ Ω (a la que denominamosdenomina cabeza),

2. elegida C0, se toman de Ω todas las clausulas laterales resolubles con C0. Sean R1, . . . ,Rk lascorrespondientes resolventes. Cada Ri (1 ≤ i ≤ k) es una clausula central de una deduccion apartir de Ω (con cabeza C0) (es decir, cada rama del arbol se extiende anadiendo tantos hijoscomo clausulas de Ω sean resolubles respecto al primer literal por la derecha de la clausulade la hoja).

3. si la clausula de una hoja es reducible, esta se extiende con una unica rama cuyo nodo seetiqueta con la clausula reducida,

4. una rama deja de extenderse si ocurre una de las siguientes situaciones:

la clausula de la hoja ya ha sido generada anteriormente en cualquier parte del arbol (ysu rama se ha extendido o parado por otra causa).

la clausula de la hoja es ⊤.

5. si detenemos todas las ramas sin generar 2, iniciamos la construccion de otro arbol a partirdel conjunto ΩrC0.

6. si en cualquier arbol generamos la clausula vacıa, la salida del algoritmo es “Ω es insatisfaci-ble”.

7. si todos los arboles son parados sin generar 2 la salida del algoritmo es “Ω es satisfacible”.

En cuanto a su representacion grafica, las deducciones lineales ordenadas no se representan comoarboles sino como se indica a continuacion:

Cn •Bn−1

Cn−1 •

...•C2B1•C1

C0B0•

y para cada proceso de cabeza C0, se utiliza un arbol con raız la clausula cabeza C0. El arbol segenera (habitualmente, primero en profundidad) de forma que cada nivel de profundidad representauna etapa. Las ramas del arbol ası generado son por lo tanto deducciones lineales ordenadas decabeza C0.

En el siguiente ejemplo utilizamos la resolucion lineal ordenada para verificar la insatisfacibilidadde un conjunto de clausulas.

Page 139: Cur So Bueno Logic A

5.3. METODOS QUE REQUIEREN QUE LA ENTRADA ESTE EN FORMA CLAUSAL 131

Ejemplo 5.20 Dado Ω = p ∨ q,¬p ∨¬r,¬q ∨¬r,¬q ∨ ¬w, r ∨w, q ∨ r, elegimos como cabeza laclausula ¬q ∨ ¬r

(1)

AA

AA

AA

¬q∨ ¬r ∨w ¬q∨ ¬r ∨q

¬q∨¬r

r∨w q∨r

¬q

¬q∨¬w

@@

@@

@@

@@@

¬q ∨p ¬q ∨r

p∨q q∨r

• •

¬p∨¬r

•¬q ∨ p ∨¬r

AA

AA

AA

¬q ∨ p ∨ ¬r ∨ w ∨¬q

¬q ∨ p ∨ ¬r ∨q¬q ∨ p ∨ ¬r ∨w

¬q∨¬w

r∨w q∨r

2

La rama senalada con (1) no ha sido desarrollada por ser ¬q ∨ q una tautologıa.

5.3.7. Complejidad del Metodo de Resolucion

Vamos a analizar la complejidad en el peor caso del metodo de resolucion para analizar la insatis-facibilidad de un conjunto finito de clausulas Ω.

Usaremos como medida del tamano de Ω (la entrada al metodo) la suma del numero de literalesde todas las clausulas en Ω y como medida de los recursos empleados el numero de aplicaciones dela Regla de Resolucion que se realizan.

Puesto que deseamos analizar la complejidad en el peor caso, bastara considerar un ejemplo ycomprobar que sobre el, cualquier implementacion del metodo tiene una complejidad al menosexponencial. Para ello hemos elegido la formalizacion del llamado “principio del palomar” que sepuede enunciar como sigue:

Page 140: Cur So Bueno Logic A

132 CAPITULO 5. RAZONAMIENTO AUTOMATICO EN LA LOGICA PROPOSICIONAL

Si tenemos n palomas y un palomar con n − 1 casillas, y cada paloma debe estar enalguna casilla, y en una casilla no puede haber mas de una paloma, entonces es imposiblealojar las palomas en el palomar.

Dicho de otra forma, al simbolizar en un lenguaje proposicional las condiciones exigidas, obtenemosnecesariamente un conjunto insatisfacible de formulas.

Para su formalizacion, emplearemos n × (n − 1) sımbolos de proposicion a las que denotaremospor pji , con la lectura “la paloma i-esima esta en la casilla j-esima”. Tendremos pues la siguienteformalizacion:

1. Clausulas que formalizan la condicion 1: “Cada paloma esta en alguna casilla”:

Cc11 = p11 ∨ . . . ∨ pn−11

Cc12 = p12 ∨ . . . ∨ pn−12

. . . . . . . . .Cc1n = p1n ∨ . . . ∨ pn−1n

Son n clausulas cada una con n−1 literales. Al conjunto de estas clausulas lo denotaremospor PP c1

n = Cc11 , . . . Cc1

n

2. Clausulas que formalizan la condicion 2: Si la paloma i-esima esta en la casilla j-esima,entonces la paloma k-esima (k 6= i) no esta en la casilla j-esima:

¬p11 ∨ ¬p12

. . .¬p11 ∨ ¬p

1n

. . .

¬pn−11 ∨ ¬pn−12

. . .

¬pn−11 ∨ ¬pn−1n

. . .

¬pn−1n−1 ∨ ¬pn−1n

Son n(n−1)2

2 clausulas cada una con dos literales. Al conjunto de estas clausulas lo denotare-mos por PP c2

n = Cc21 , . . . Cc2

n(n−1)2

2

. Finalmente, denotaremos por PPn al conjunto de todas las

clausulas, es decir:

PPn = PP c1n ∪ PP c2

n

El tamano de PPn es

l(PPn) = n(n− 1) + 2n(n− 1)2

2= n2(n− 1) < n3.

Si consideramos, por ejemplo, el caso de 4 palomas y 3 casillas, es decir, intentamos una refutacion dePP4, observaremos que resultara necesario considerar “simultaneamente” las clausulas Cc1

1 , . . . , Cc14

para deducir la clausula vacıa.

La idea intuitiva que subyace en las demostraciones de los resultados que damos a continuacion yque nos llevaran a concluir la complejidad exponencial del metodo para analizar la satisfacibilidado no de PPn es la siguiente:

Page 141: Cur So Bueno Logic A

5.3. METODOS QUE REQUIEREN QUE LA ENTRADA ESTE EN FORMA CLAUSAL 133

en toda refutacion de PPn hay alguna clausula muy “grande” (lema 5.7) , y

esta clausula tan grande exige una refutacion de tamano exponencial con n (teorema 5.12).

La idea es sencilla; pero de ejecucion muy laboriosa. La prueba la dio Haken en 1985.

Definicion 5.17 Sea un k ∈ 1, . . . , n. Se dice que una interpretacion I del lenguaje anterior esk-crıtica cuando en cada casilla hay exactamente una paloma y solamente ha quedado sin colocarla paloma k-esima. Mas formalmente,

Dado i ∈ 1, . . . , k−1, k+1, . . . , n se tiene que I(pji ) = 1 para exactamente un j ∈ 1, . . . , n−1,

I(pjk) = 0 para todo j ∈ 1, . . . , n− 1,

Dado j ∈ 1, . . . , n − 1 se tiene que I(pji ) = 1 para exactamente un i ∈ 1, . . . , k − 1, k +1, . . . , n

Una interpretacion I se dice crıtica si es k-crıtica, para algun k ∈ 1, . . . , n. Denotamos por Icrel conjunto de interpretaciones crıticas.

eer r Notese que una interpretacion k-crıtica es un modelo de PPn − Ck.

Definicion 5.18 Dos clausulas C1 y C2 se dicen equivalentes respecto a Icr, si I(C1) = I(C2)para toda I ∈ Icr.

Una derivacion C1, C2 |= C3 se dice correcta respecto a Icr, denotado C1, C2 |=Icr C3 si paratoda interpretacion crıtica, I ∈ Icr, se tiene que

Si I(C1) = I(C2) = 1 entonces I(C3) = 1

Definicion 5.19 Dada una clausula de C ∈ PPn, decimos que una clausula es la forma monotonade C, denotada mon(C), si mon(C) se obtiene a partir de C sustituyendo cada literal negativo ¬pjipor la disyuncion del conjunto de literales positivos pj1, p

j2, . . . , p

ji−1, p

ji+1, . . . , p

jn 10.

Es facil ver que se cumplen los siguientes resultados:

Lema 5.6 Para toda clausula C se tiene que C y m(C) son equivalentes respecto a Icr.

Corolario 5.1 Sea C ′ una resolvente de C1, C2, y sean m(C ′),m(C1),m(C2), las correspondientesformas monotonas. Para toda interpretacion crıtica I, se tiene que si I(m(C1)) = I(m(C2)) = 1,entonces I(m(C ′)) = 1.

Por tanto, dada cualquier refutacion de PPn, podemos transformar todas sus clasulas en las co-rrespondientes formas monotonas, obteniendo una refutacion correcta con respecto a Icr que tieneel mismo numero de pasos que la refutacion original.

10Es decir, en lugar de decir la paloma i no esta en la casilla j decimos alguna de las n − 1 restantes palomas

esta en la casilla j.

Page 142: Cur So Bueno Logic A

134 CAPITULO 5. RAZONAMIENTO AUTOMATICO EN LA LOGICA PROPOSICIONAL

Si ahora probamos que no existen refutaciones con clausulas en forma monotona 11 que sean co-rrectas respecto a Icr y de tamano menor que exponencial, habremos alcanzado nuestro objetivo.Antes de abordar esta tarea, introducimos la siguiente definicion

Definicion 5.20 Diremos que una clausula C es “grande” si contiene al menos n2

10 literales posi-tivos, es decir, contiene al menos la decima parte de todas los sımbolos proposicionales.

Definicion 5.21 Si Ω ⊆ PPn, decimos que Ω |=Icr C si para toda I ∈ Icr se tiene que si I(Ω) = 1entonces I(C) = 1.

Llamemos complejidad columbar de una clausula C, denotada cpp(C), al mınimo numero deelementos del conjunto de clausulas PPn necesario para deducir C mediante |=Icr

Lema 5.7 En toda refutacion de PPn, correcta respecto a Icr, existe al menos una clausula queen forma monotona tiene al menos 2n2

9 atomos.

Demostracion: Sea ∆ una refutacion de PPn. Puesto que solo estamos considerando interpreta-ciones crıticas, solo las clausulas que expresan que alguna paloma esta asignada a una casilla seranelementos del conjunto minimal.

Destaquemos que cpp satisface las tres propiedades siguientes:

para toda clausula Ci ∈ PP c1n , se tiene que cpp(Ci) = 1,

La complejidad de la clausula final es n.

por la propiedad de correccion, C es una resolvente de dos clausulas cualesquiera C ′, C ′′, setiene que cpp(C) ≤ cpp(C ′) + cpp(C ′′).

El conjunto de estas tres afirmaciones implica que existe al menos una clausula C en la refutacion∆ con n

3 < cpp(C) ≤ 2n3 .

Veamos que C contiene un numero grande de sımbolos proposicionales.

Sea Γ un conjunto minimal de clausulas de PP c1n tal que Γ |=Icr y tal que |Γ| = m. Probaremos

ahora que C tiene al menos (n−m)m ≥ 2n2

9 literales distintos.

Fijemos algun Cc1i ∈ ∆ y sea I una interpretacion i-crıtica que haga falsa a C (tal interpretacion

existe pues, de lo contrario, Γ no serıa mınimo). Para cada Sea Cc1j /∈ Γ, construyamos una inter-

pretacion j-crıtica I ′ a partir de I de la siguiente forma: echamos a la paloma j de la casilla queocupaba en la interpretacion Iα, y en su lugar colocamos a la paloma i, es decir, reemplazamos Cc1

i

por Cc1j . I ′ satisface C, y difiere de I solo en un lugar: si I asina a j la casilla l, entonces I ′ asigna

a i la casilla l. Puesto que C es monotona, ha de contener a P li . Recorriendo los n−m j′s que no

estan en l (usando la misma I), se sigue que C contiene al menos n −m sımbolos proposicionalesdistintos pli, con l ≤ n. Repitiendo el razonamiento para todas las Cc1

i ∈ Γ comprobamos que Ccontiene al menos (n-m)m literales positivos.

Teorema 5.12 Existe un K tal que para todo n > K, la menor prueba por resolucion de PPn

requiere al menos 2n20 clausulas.

11la transformacion a forma monotona no es esencial, pero hace mas clara la demostracion

Page 143: Cur So Bueno Logic A

5.4. CLAUSULAS DE HORN 135

Demostracion: Vamos a proceder por reduccion al absurdo, suponiendo que existe una refuta-cion de PPn con m clausulas, m < 2

n20 y llegando a una contradiccion con el lema ?? anterior.

Recordemos que hemos llamado a una clausula C “grande” si en ella aparecen al menos n210 literales

positivos . Entonces C incluye mas de 110 de las n× (n− 1) proposiciones atomicas de PPn.

Supongamos que existe una refutacion de PPn con s < 2n20 clausulas. Entonces habra a lo sumo s

clausulas “grandes”. Existe al menos un pji tal que aparece en al menos 110 de todas las clausulas

grandes.

Supongamos que anadimos la condicion de que la paloma i esta en la casilla j y en ninguna otracasilla, y de que en la casilla j no hay otra paloma. Ello equivale a quitar una paloma y una casillay por tanto a enunciar PPn−1. Pero, en la refutacion cuya existencia estamos suponiendo, esta

condicion se puede expresar sustituyendo pji por ⊤, pj′

i por ⊥ (si j′ 6= j) y pji′ por ⊥ (si i′ 6= i);

lo cual significa suprimir las clausulas en las que aparece pji y suprimir las apariciones de pj′

i (si

j′ 6= j) y pji′ (si i′ 6= i) en las restantes clausulas; con lo cual tenemos una refutacion de PPn−1 cona lo sumo 9 s

10 clausulas grandes. Repitiendo este proceso, a lo sumo en log 109s pasos tenemos una

refutacion de PPn′ en la que no hay clausulas “grandes”. Pero n′ ≥ n − log 109s > 0,67n y, segun

el lema 5.7, debe haber una clausula con al menos 2n′2

9 > 2 × 0,45n2

9 = n2

10 atomos; con lo cual setiene la contradiccion buscada.

5.4. Clausulas de Horn

La complejidad del metodo de resolucion se puede mejorar pagando el precio de tener una menorexpresividad, limitandose a un tipo especial de clausulas llamadas clausulas de Horn que son larepresentacion utilizada en la programacion logica.

Un programa logico, P, es un conjunto de formulas que responden al siguiente esquema

(A1 ∧ · · · ∧An)→ A

en donde A y cada Ai son atomos; en particular, no se incluye la negacion. Este tipo de conjuntosresponde a la idea de una base de conocimiento compuesta por reglas. Si n = 0, la regla se reduceal atomo A; estas reglas se denominan hechos. Cada atomo Ai debe ser distinto de ⊥, ya que encaso contrario la regla serıa una tautologıa y por lo tanto superflua en el programa. El atomo Ası puede ser ⊥; en ese caso, la regla es equivalente a la formula ¬(A1 ∧ · · · ∧ An) y se denominarestriccion.

Si las reglas de un programa logico se convierten en forma clausal, obtenemos un conjunto declausulas que contienen a los sumo un literal positivo. Este tipo de clausulas se denominan clausulasde Horn y por lo tanto, trabajar con programas logicos es equivalente a considerar conjuntos declausulas de Horn.

Definicion 5.22 Una clausula de Horn es una clausula con a lo sumo un literal positivo. Unaclausula Horn se dice definida si contiene un literal positivo, se dice positiva unidad si constade un solo literal positivo y se dice objetivo si solo contiene literales negativos.

Page 144: Cur So Bueno Logic A

136 CAPITULO 5. RAZONAMIENTO AUTOMATICO EN LA LOGICA PROPOSICIONAL

eer r Una clausula definida modeliza una regla. En efecto, la clausula ¬p ∨ ¬q ∨ r es equivalente ala fbf (p ∧ q) → r, esta formula modeliza la regla “si p y q entonces r” y en el ambito de laprogramacion logica se suele representar por r : −p, q, llamandose a r la cabeza de la regla y ap, q la cola de la regla.

Una clausula positiva unidad consta de un solo literal positivo, p, y modeliza un hecho 12.

Puesto que la resolucion es un sistema de demostracion por refutacion, la conjuncion de objetivosindividuales sera anadida a la conjuncion de la hipotesis como una clausula no definida, es decir,una clausula sin literales positivos. Por esta razon a las clausulas no definidas se les denominanobjetivos.

Advirtamos que puesto que las clausulas objetivo son negativas, se traducen en una preguntaal programa. Por lo tanto, no es posible probar que un literal negativo es consecuencia de unprograma logico. En la practica se suele considerar falsa la informacion que no puede ser deducidade un programa. Este uso se conoce en programacion logica como negacion como fallo. Estano es la solucion optima, ya que identifica lo falso con lo no demostrable. Sin embargo, el usode esta tecnica con clausulas de Horn es la base del lenguaje Prolog.

Si el objetivo es multiple, es decir, si intentamos probar que O1 ∧ . . . ∧ On, la aplicacion delmetodo de resolucion ordenada a P ∪6= O1∨ . . .∨¬On se recoge en Prolog como una funcionde seleccion que selecciona sucesivamente los objetivos a considerar:

Si B = H1, . . . ,Hn es una base de datos cuyos elementos son hechos y reglas, ante la pregunta ¿laconjuncion de objetivos individuales O1∧O2, . . . , On es consecuencia logica de B?, que denotaremospor ¿B ⊢R O1 ∧O2, . . . , On?, el metodo de resolucion procedera como sigue:

1. considera el conjunto de clausulas Ω = H1, . . . ,Hn,¬O1 ∨ ¬O2 ∨ . . . ∨ ¬On

2. elige un hecho p ∈ Ω y una clausula C ∈ Ω tal que ¬p es un literal de C y calcula C ′ = Rp(C, p),la cual no es mas que la clausula obtenida al eliminar en C el literal ¬p, y reemplaza Ω porΩ′ = Ω ∪ C ′.

3. si 2 ∈ Ω′ la respuesta es afirmativa. En caso contrario, repetira la etapa anterior hasta obtener2 o un conjunto de clausulas no resolubles.

El proceso anterior siempre termina ya que en cada etapa de resolucion se suprime un literal de laclausula resuelta.

Ejemplo 5.21 Dado el conjunto de hipotesis p∨¬r∨¬t, q, r, t∨¬p∨¬r, t∨¬q ¿podemos deducirp ∧ q ∧ r?

1) p ∨ ¬r ∨ ¬t, q, r, t ∨ ¬p ∨ ¬r, t ∨ ¬q,¬p ∨ ¬q ∨ ¬r

2) p ∨ ¬r ∨ ¬t, q, r, t ∨ ¬p ∨ ¬r, t,¬p ∨ ¬q ∨ ¬r

3) p ∨ ¬r ∨ ¬t, q, r, t ∨ ¬p ∨ ¬r, t,¬p ∨ ¬r

4) p ∨ ¬t, q, r, t ∨ ¬p ∨ ¬r, t,¬p ∨ ¬r

5) p ∨ ¬t, q, r, t ∨ ¬p, t,¬p ∨ ¬r

6) p ∨ ¬t, q, r, t ∨ ¬p, t,¬p

7) p, q, r, t ∨ ¬p, t,¬p

8) p, q, r, t ∨ ¬p, t,2

12unit clause en la bibliografıa inglesa.

Page 145: Cur So Bueno Logic A

5.4. CLAUSULAS DE HORN 137

La respuesta es que sı se puede deducir p∧ q∧ r del conjunto dado, ya que el conjunto de clausulasobtenido al anadir su negacion es insatisfacible.

La aplicacion del metodo de resolucion sobre conjuntos de clausulas de Horn (y por lo tanto elestudio de consultas sobre un programa logico), admite refinamiento mas fuertes, lo que recogemosen los siguientes resultados.

Lema 5.8 Sea Ω un conjunto de clausulas de Horn. Si todas las clausulas contienen un literalpositivo, entonces el conjunto es satisfacible.

Teorema 5.13 Sea Ω un conjunto de clausulas de Horn. Si Ω es insatisfacible, entonces existeuna refutacion por resolucion lineal tal que:

La cabeza es una clausula negativa (no contiene literales positivos).

Las clausulas laterales son elementos de Ω.

Es decir, si aplicamos el algoritmo de resolucion lineal ordenada sobre un conjunto de clausulasde Horn, empezaremos siempre por una clausula negativa (si no existiera podremos afirmar que elconjunto es satisfacible) y no necesitaremos utilizar literales marcados, ya que todas las resolventesobtenidas seran igualmente negativas y por lo tanto nunca se podra aplicar el paso de reduccion.

eer r En definitiva, puesto que la base de datos, B es, presumiblemente, satisfacible, en la ejecuciondel algoritmo de resolucion no tiene sentido buscar resolventes entre los elementos de la misma;en lugar de ello buscaremos resolver una clausula objetivo O (que sera tomada como cabeza).

Puesto que = ¬O1∨ . . .∨¬On, solo existe la posibilidad de que uno de tales literales negativos,¬Oi, se resuelva con el unico literal positivo de una clausula de B. La resolvente sera portanto una clasula que constara solo de literales negativos. Por tanto, todos las resolventes queaparezcan a lo largo de la refutacion contendran solo literales negativos.

El procedimiento de refutacion descrito es no determinista: en cada paso puede darse la opcionde que literal resolver y con que hecho o regla. Es preciso pues, especificar reglas que fijen lasopciones anteriores. Tales reglas concretan la semantica operacional del lenguaje de programa-cion logica. Entre las mencionadas reglas cabe distinguir entre reglas de computacion y reglasde busqueda:

Regla de computacion: Regla que indica el literal y la clausula objetivo con que se efec-tuara una resolucion.

Regla de busqueda: Regla que indica la clausula con que se efectuara una resolucion con unliteral y clausula objetivo previamente escogidos.

Terminamos nuestro estudio de clausulas Horn destacando una de sus propiedades de gran interes.Para ello comenzamos destacando el siguiente hecho: Consideremos un conjunto finito de clausu-las, Ω, el cual es satisfacible. Sea Mod(Ω) el conjunto de sus modelos. Como en el capıtulo 3,identificamos cada interpetacion I ∈ Mod(Ω) con el conjunto p ∈ Vprop(Ω) | I(p) = 1. SeanI1, I2 ∈ Mod(Ω) ¿podemos asegurar que I1 ∩ I2 ∈ Mod(Ω)? Veamos que, en general no es cierto.Basta considerar Ω = p∨q, para el cual,Mod(Ω) = p, q, p, q y p∩q = ∅ 6∈ Mod(Ω).La respuesta sı es afirmativa en el caso de un conjunto de clausulas de Horn:

Definicion 5.23 Sea Ω un conjunto finito de clausulas de Horn y Mod(Ω) el conjunto de susmodelos. Si la interpretacion

I∗Ω

=⋂

I∈Mod(Ω)

I ∈ Mod(Ω)

Page 146: Cur So Bueno Logic A

138 CAPITULO 5. RAZONAMIENTO AUTOMATICO EN LA LOGICA PROPOSICIONAL

llamamos a I∗Ω

el modelo minimal de Ω.

En particular, si Mod(Ω) = ∅ entonces I∗Mod(Ω) = Vprop(Ω) 13

Teorema 5.14 (Existencia de modelo minimal) Todo conjunto no vacıo finito y satisfaciblede clausulas de Horn posee un unico modelo minimal.

eer r El teorema de existencia de modelo minimal tiene consecuencias de interes:

la unica informacion que contiene el modelo minimal es que ciertos hechos son verdaderos.Esto corresponde a la “Hipotesis del Mundo cerrado” y conlleva una justificacionparcial del concepto usado en programacion logica “negacion como fallo” a la que hemoshecho referencia anteriormente. 14

si Ω ⊆ Ω′ son dos conjuntos no vacıos, finitos y satisfacibles de clausulas de programa.Entonces, I∗

Ω′es una extension de I∗

Ω.

Esta propiedad, no es cierta para clausulas arbitrarias. En efecto, Si Ω = p ∨ q ∨ ¬r setiene que I = ∅ 15 es un modelo minimal, sin embargo, Ω′ = Ω ∪ r es satisfacible, perono posee ningun modelo minimal.

13Recordemos de nuevo que dado un conjunto X la interseccion vacıa de subconjutos de X es el propio X.14La negacion como fallo se basa en la Hipotesis del mundo cerrado, que afirma que toda la informacion relevante

esta expresada de manera explıcita en la Base de Conocimiento. Es decir, supone que informacion contenida en laBase de Conocimiento es completa: lo que no esta recogido en ella, no se da. Claramente, no siempre es aceptableesta suposicion.

Es preciso distinguir entre la negacion como fallo y la negacion ¬A con la que venimos trabajando y a la cual hemoscaracterizado del siguiente modo:

• semanticamente como: “para cualquier fbf, A, se tiene que ¬A es verdadera si y solo si A es falsa”, y

• en terminos de derivabilidad: por medio de la regla (¬i) (introduccion de la negacion) en el sistema DN dededuccion natural: “para cualquier fbf, A, se tiene que ¬A es derivable si cuando suponemos A como hipotesisadicional se deriva un absurdo”.

desde el punto de vista practico: la negacion como fallo puede verse como un caso de los llamados“razonamiento porignorancia.

15Es decir, la interpretacion que asigna 0 a p, q y r.

Page 147: Cur So Bueno Logic A

5.5. EJERCICIOS 139

5.5. Ejercicios

1. Use las tablas de verdad como metodo de refutacion y el algoritmo de Quine para estudiarla satisfacibilidad de la formula A = (p→ q)↔ (q↔ (p ∨ q)). En caso afirmativo, determinetodos los modelos de A. ¿Es valida la formula A?

2. Use el algoritmo de Quine para estudiar la satisfacibilidad del conjunto

Ω = p→ (q ∨ r), q → r, r → s

3. Use el algoritmo de Quine para estudiar la validez de la formula

A = ((p→ r) ∧ (q → s))→ ((p ∧ q)→ (r ∧ s))

4. Use el algoritmo de Quine para estudiar la correccion de la inferencia

p→ q, r → s, (s ∧ q)→ t |= (p ∧ r)→ t

5. Use Tablas Semanticas para estudiar la validez de las siguientes formulas

A = (¬r ∨ (p ∧ q))→ ((r → p) ∧ (r → q)); B = (p ∧ r)→ ((q → s)→ ((p ∨ q)→ s))

6. Use Tablas Semanticas para estudiar la satisfacibilidad del conjunto

Ω = p→ (q → r), p→ q, p

y, en caso afirmativo, determine todos sus modelos.

7. Use Tablas Semanticas para estudiar la correccion de la inferencia

p→ (q ∨ r), q → r, r → s |= p→ s

8. Las formulas del tipo A↔B y ¬(A↔B) pueden considerarse como formulas de tipo β en elmetodo de las Tablas semanticas usando las siguientes equivalencias

A↔B ≡ (A ∧B) ∨ (¬A ∧ ¬B) y ¬(A↔B) ≡ (¬A ∧B) ∨ (A ∧ ¬B)

y, en consecuencia, las siguientes reglas de expansion:

A↔B

AB¬A¬B

¬(A↔B)

A¬B

¬AB

Utilizando estas reglas, estudie la validez de la formula A = (p→ q)↔ (p↔ (p ∧ q)).

9. Estudie la validez de las siguientes inferencias utilizando el metodo de las Tablas semanticas.

a) p→ (q ∨ r), q → r, r → s |= p→ ¬s

b) p→ q, r → s, (s ∧ q)→ t |= (p ∧ r)→ t

Page 148: Cur So Bueno Logic A

140 CAPITULO 5. RAZONAMIENTO AUTOMATICO EN LA LOGICA PROPOSICIONAL

c) p→ (q → r), p→ q, p |= r

d) p→ (q ∨ r), q → r, r → s |= p→ s

10. Demuestre la validez de las siguientes formulas utilizando los metodos de Quine y Tablassemanticas.

p→ (q → p) (p→ (q → r))→ ((p→ q)→ (p→ r))((¬p→ ¬q)→ (q → p) (p ∧ (p→ q))→ q(p ∧ q)→ q p→ (p ∨ q)((p ∨ q) ∧ (p→ r) ∧ (q → r))→ r (p ∧ (q → ¬p))→ ¬q(p→ (q ∧ ¬q))→ ¬p

11. Demuestre las equivalencias basicas, utilizando los metodos de Quine y Tablas semanticas:

¬(p ∧ q) ↔ (¬p ∨ ¬q) ¬(p ∨ q) ↔ (¬p ∧ ¬q)((p ∧ q) ∧ r) ↔ (p ∧ (q ∧ r)) ((p ∨ q) ∨ r) ↔ (p ∨ (q ∨ r)(p ∧ (q ∨ r)) ↔ ((p ∧ q) ∨ (p ∧ r)) (p ∨ (q ∧ r)) ↔ ((p ∨ q) ∧ (p ∨ r)(p ∧ (p ∨ q)) ↔ p (p ∨ (p ∧ q)) ↔ p(p→ q) ↔ (¬q → ¬p) (p→ q) ↔ (¬p ∨ q)¬(p→ q) ↔ (p ∧ ¬q) ((p↔q)↔r) ↔ (p↔(q↔r)(p ∧ (q ∨ r)) ↔ ((p ∧ q) ∨ (p ∧ r))

12. Estudie la validez de las siguientes formulas utilizando el metodo de las Tablas semanticas.

(p→ q)→ ((q → r)→ (q → r)) (p→ ¬p) ↔ ¬p((p→ (q → r)) ↔ ((p ∧ q)→ r) (p→ q)→ ((p→ (q → r))→ (p→ r))p→ (q → (p ∧ q)) (p ∧ r)→ ((q → r)→ ((p ∨ q)→ r)(p ∧ r)→ ((q → s)→ ((p ∨ q)→ s)) (p→ q)→ ((q → ¬r)→ ¬p)(p→ q)→ ((q → ¬r)→ p) (p→ q)→ ((p→ ¬q)→ p)(p↔q) ↔ ((p→ q) ∧ (q → p)) ((p→ q) ∧ (q → r))→ (p→ r)((p→ q)→ p)→ p (p↔(q → r)) ∧ ((p ↔ q) ∧ (p ↔ ¬r))¬(((p→ q)→ ¬p)→ ¬p) (p→ q) ↔ (p ↔ (p ∧ q))(p ∧ q) ↔ ((p ↔ q) ↔ (p ∨ q)) (p↔q) ↔ ((p ∨ q)→ (p ∧ q))

13. Estudie la validez de las siguientes inferencias utilizando los metodos de Quine y Tablassemanticas.

p ∨ q, q → r, r → s, p→ ¬q, p→ t, t→ u |= u ¬p→ q, q → r |= ¬p→ rp→ ¬q, r → q |= ¬(p ∧ r) p→ r, q → s, p ∨ q |= r ∨ s(p ∧ q)→ r, r → s |= (p ∧ q)→ s p→ r, q → s, p ∨ q |= r ∨ sp,¬p ∨ q,¬p ∨ (¬q ∨ r) |= r

14. Demuestre la insatisfacibilidad del conjunto de fbfs

Ω = h, h→ (p ∨ q), p→ c, q → c,¬c

mostrando un arbol semantico para Ω tal que todas sus hojas son nodos fallos. Generese apartir del arbol construido una refutacion por resolucion de Ω.

Page 149: Cur So Bueno Logic A

5.5. EJERCICIOS 141

15. Use los metodos de Davis-Putnam y Resolucion Lineal Ordenada para analizar la satisfacibi-lidad o no de los siguientes conjuntos de clausulas:

a) h,¬h ∨ p ∨ q,¬p ∨ c,¬q ∨ c,¬c

b) p ∨ q,¬p ∨ ¬q, p ∨ ¬q,¬p ∨ q

c) p ∨ q, p ∨ ¬q ∨ r, p ∨ ¬q ∨ ¬r,¬p ∨ r,¬p ∨ ¬r

d) p ∨ q,¬p ∨ r ∨ s,¬r ∨ t,¬r ∨ u,¬u ∨ s ∨ ¬t

e) p ∨ q,¬q ∨ r, r ∨ ¬p,¬q ∨ ¬r,¬p ∨ ¬r

16. Convierta la siguiente inferencia a fncr y use los metodos de Davis-Putnam y ResolucionLineal Ordenada para determinar si es o no valida

p ∨ q, p→ (r ∨ s), r → (t ∧ u), (u ∧ ¬s)→ ¬t |= ¬s→ q

17. Estudie la satisfacibilidad de los siguientes conjuntos usando resolucion lineal ordenada.

a) p ∨ r ∨ s,¬p ∨ ¬r ∨ s,¬p ∨ r¬s, p¬r ∨ ¬s

b) p ∨ q ∨ r ∨ s,¬q ∨ r ∨ s,¬p ∨ r ∨ s, q ∨ s,¬p ∨ s

c) ¬p ∨ q, q ∨ ¬r ∨ s,¬p ∨ ¬q ∨ r ∨ s,¬r, q

18. Lea la seccion 5.2.4. y analice cuales de los conjuntos del ejercicio anterior estan formadospor clausulas de Horn. Estudie su satisfacibilidad atendiendo a las restricciones detalladas endicha seccion.

19. Dada la base de datos B = (q, t, v, (p ∧ q ∧ r)→ s, (t ∧ u)→ r, (v ∧ r)→ p, v → u respondaa la pregunta ¿B ⊢ s?.

20. Dada la base de datos B = (p, s, (p∧ q)→ r, u→ r, s→ u responda a la pregunta ?‘B ⊢ r?.

21. Pruebe que B ⊢R q ∧ u ∧ w, siendo

B = p, t, s, t→ r, s→ w,w → u, (p ∧ t)→ u, (p ∧ w)→ q, (p ∧ r ∧ s)→ q

22. A partir de la Hipotesis del Mundo Cerrado pruebe que B ⊢R ¬p siendo

B = q, t, w → p, (q ∧ r ∧ s)→ p, v → p, u→ w, t→ r

Page 150: Cur So Bueno Logic A

142 CAPITULO 5. RAZONAMIENTO AUTOMATICO EN LA LOGICA PROPOSICIONAL

Page 151: Cur So Bueno Logic A

Capıtulo 6

El metodo TAS

El metodo de resolucion es, como hemos indicado, el sistema de demostracion automatica mejorconocido y mas ampliamente desarrollado. No obstante, este metodo tiene inconvenientes aun noresueltos. Ası, por ejemplo, como afirma Rich:

. . . basa su simplicidad en una representacion uniforme de los enunciados. Desafortu-nadamente, la uniformidad tiene su precio, todo parece igual. A causa de este parecidogeneral, no existe ninguna forma facil de seleccionar aquellos enunciados que tienenmas probabilidad de ser utiles para resolver un problema concreto. Al convertirlo to-do a forma clausal, se pierde a menudo una informacion heurısticamente valiosa queesta contenida en la representacion original de los hechos . . . Otro problema que plan-tea el uso de la resolucion como sistema de demostracion automatica, es que en la vidadiaria no se piensa siguiendo los pasos de la resolucion. Ası pues, es muy difıcil pa-ra una persona interaccionar con un demostrador por resolucion. Que tal interaccionsea posible, es importante desde un punto de vista practico, debido a que las compu-tadoras no han alcanzado un comportamiento optimo en la demostracion de problemascomplicados.

Por su parte, Gallier utiliza argumentos similares:

El principal atractivo del metodo de resolucion, es que tiene una sola regla de inferencia(la regla de resolucion). No obstante, existe un precio que pagar: el metodo de resolucionsolo se aplica a enunciados en forma normal conjuntiva.

En el mismo sentido incide Ramsay:

. . . lo mas irritante sobre resolucion es su falta de naturalidad. Se trabaja con ella delmismo modo que con cualquier otro sistema formal. Sin embargo, nunca nos permitevislumbrar de que modo resolverıamos el problema por nosotros mismos. Si un demos-trador de teoremas por resolucion forma parte de un sistema que requiere explicar sumodo de razonar a sus usuarios, serıa necesario volver a procesar sus demostracionespara obtenerlas en una forma comprensible, incluso para un experto usuario. Serıa con-veniente encontrar algun otro motor de inferencia que pudiera trabajar de modo mascercano a como nosotros trabajamos, sus demostraciones serıan mas faciles de seguir.

El segundo inconveniente destacable sobre la exigencia de la conversion a forma clausalde las formulas es el coste computacional. la transformacion conlleva una gran canti-dad de trabajo (la mayorıa de las veces innecesario) y a la destruccion de cualquier

143

Page 152: Cur So Bueno Logic A

144 CAPITULO 6. EL METODO TAS

estructura que tuviera el enunciado original del problema. Podrıamos incluso asegurarque es precisamente la conversion a forma clausal la causante de la dificultad de seguirlas demostraciones por resolucion, ya que la relacion de las clasulas con el enunciadooriginal es con frecuencia casi imposible de desentranar.

Ademas de las dificultades referidas, podemos senalar otra dificultad no menos importante: Ladificultad de ser extendido a las logicas no clasicas. Ello se debe a que para tales logicas no se hanencontrado, por el momento, formas clausales adecuadas, lo cual impide la aplicacion agradable delas tecnicas basadas en resolucion.

En este capıtulo presentamos un nuevo metodo de demostracion automatica para la logica clasicaproposicional, al que hemos denominado TAS, que al igual que el metodo de las tablas semanticasno requiere la conversion a forma clausal.

Este metodo nacio en el grupo GIMAC 1 del Dpto de Matematica Aplicada de la Universidadde Malaga, ası que, antes de describirlo, podemos relatar brevemente cual fue su motivacion. Loharemos de forma que el lector de este libro pueda seguir las reflexiones que nos llevaron a su diseno:

Sabemos que nos enfrentamos a un problema NP-completo. Ası que solo nos queda intentar aportartodo el ingenio posible para aranar eficiencia. A este objetivo se dedican no pocos investigadoresen la actualidad. Pero, ¿en que tipo de metodos?

Lo que hemos comentado sobre los metodos que requieren que la entrada en forma clausal, nospuede llevar a inclinarnos por el metodo de las tablas. Sin olvidar su adaptabilidad a todo tipo delogicas. Sin embargo, hemos visto que, a falta de anadir nuevas heurısticas, tarea en la que no seescatiman esfuerzos, nos resistimos a no mirar a metodos como los de Davis-Putnam (quizas el masutilizado en Demostracion Automatica, como referente para el fin indicado de aranar eficiencia) ocomo el de Resolucion (insustituible hasta la fecha en el ambito de la Programacion Logica). Serıapues conveniente integrar las “mejores propiedades” de ambos tipos de metodos.

Por otra parte, existe un gran consenso en considerar que las estructuras de datos que se utilizanpara representar formulas son decisivas para realizar, eficientemente, las operaciones que constituyenun algoritmo de satisfactibilidad.

Teniendo en cuenta estas dos reflexiones, el metodo TAS que vamos a describir tiene las siguientescaracterısticas:

I) al igual que el metodo de las Tablas Semanticas, el metodo TAS no requiere la conversionprevia de la entrada a forma normal.

II) al igual que el metodo de las Tablas Semanticas, el metodo TAS se basa en la conversion delas formulas de entrada en forma normal disyuntiva pero sin exigir la transformacion previade la entrada. De esta forma, permite su ejecucion paralela de forma natural 2

III) generaliza para fbfs cualesquiera la Regla de Propagacion Unitaria, la Regla del Literal Puroy la Regla de Ramificacion del metodo de Davis-Putnam.

IV) trabaja sobre una nueva representacion de las fbfs a la que denominamos ∆-arbol, que deter-mina el criterio de seleccion de los literales involucrados en sus reglas.

1Grupo de Investigacion de Matematicas Aplicadas a la Computacion.2Recordemos que una forma normal disyuntiva es insatisfacible si y solo si lo son cada uno de sus cubos compo-

nentes.

Page 153: Cur So Bueno Logic A

6.1. ∆-ARBOLES COMO REPRESENTACION DE FNN’S 145

Ademas de estas cuatro caracterısticas, posee una mas que, como veremos, permite reducir eltamano de la fbf sobre la que ejecuta antes de aplicar la regla responsable de la complejidadexponencial del metodo en el peor caso, es decir, antes de aplicar la Regla de Ramificacion:

V) introduce una regla de transformacion sobre las subformulas que es una transformacion deequivalencia. 3

Vamos pues a describir el metodo TAS. Para ello comenzamos introduciendo la nueva representa-cion de las fbfs o mas concretamente, de las formas normales negativas, lo cual no supone limitacionalguna, ya que como vimos en el capıtulo 3, la conversion de una fbf cualquiera a fnn tiene com-plejidad lineal.

6.1. ∆-arboles como representacion de FNN’s

Hasta aquı hemos usado dos tipos de representacion para las fbfs: como cadena de sımbolos delalfabeto y como arbol sintactico. En esta seccion vamos a introducir una representacion alternativapara las fnns a la que denominamos ∆-arbol.

De forma sintetica, podemos decir que en la representacion por ∆-arboles, las clausulas y cubosson escritos como listas de literales.

6.1.1. ∆-listas:

Definicion 6.1 Una ∆-lista es la constante ⊤, la constante ⊥, o una lista de literales (posiblementevacıa) en la que cada variable proposicional aparece a lo sumo una vez; denotaremos por nil a lalista vacıa. Si λ = ℓ1, . . . , ℓn es una ∆-lista, λ es la lista formada por los literales opuestos a los deλ, es decir, ℓ1, . . . , ℓn = ℓ1, . . . , ℓn.

Ejemplo 6.1 Las siguientes listas de literales son ∆-listas:

⊤ ⊥ nil pqs qstu pqrtw

Sin embargo, pqrq no lo es, ya que q interviene dos veces.

Los elementos de las ∆-listas se escribiran ordenados respecto del orden lexicografico. Esto noinfluye en la correccion de las transformaciones que vamos a describir posteriormente 4, pero sı enla eficiencia de las mismas.

Igual que en la definicion de forma normal negativa, en la definicion de ∆-arbol distinguiremosentre ∆-arboles conjuntivos y ∆-arboles disyuntivos.

En la definicion de ∆-arbol, los nodos estan etiquetados con ∆-listas precedidas de los prefijos [α]o [β], de manera alternativa en cada nivel, para especificar el caracter conjuntivo o disyuntivo delcorrespondiente nodo. Este prefijo no es estrictamente necesario, pero ayuda a leer y entender lafbf asociada. Segun la raız del ∆-arbol sea una [α]-lista o una [β]-lista, hablaremos de ∆-arbolconjuntivo o ∆-arbol disyuntivo.

3Si queremos disminuir (cuando sea posible) el tamano de una subformula, no podemos realizar transformacionesque tan solo respeten la satisfacibilidad, ya que Si B es una subformula de A y se tiene que C es equisatisfacible conB, no podemos asegurar que A y A[B/C] son equisatisfacibles.

4la razon por la que podemos tomar esta opcion, es que usaremos las ∆-listas para representar clausulas y cubos,y sabemos que ∨ y ∧ son conmutativas

Page 154: Cur So Bueno Logic A

146 CAPITULO 6. EL METODO TAS

Definicion 6.2 Definimos los ∆-arboles como sigue:

1. Toda ∆-lista es un ∆-arbol. En particular, [α]⊤, [α]⊥, [α]nil, [β]⊤, [β]⊥ y [β]nil son ∆-arboles.

2. Si λ es una ∆-lista, entonces [α]λ es un ∆-arbol conjuntivo.

3. Si λ es una ∆-lista,entonces [β]λ es un ∆-arbol disyuntivo.

4. Si T1,. . . , Tn son ∆-arboles disyuntivos y λ es una ∆-lista, entonces el siguiente arbol es un∆-arbol conjuntivo:

[α]λ

T1 . . . Tn

5. Si T1,. . . , Tn son ∆-arboles conjuntivos y λ es una ∆-lista, entonces el siguiente arbol es un∆-arbol disyuntivo:

[β]λ

T1 . . . Tn

Los ∆-arboles definidos en los puntos 1 y 2 son ∆-arboles hoja.

Ejemplo 6.2 Los siguientes arboles son ∆-arboles:

[β]nil [α]pq [β]nil

[α]nil [α]pqr

[α]pq

[β]pr

[α]nil

[β]pr [β]pq

[α]qr [α]pqr

6.1.2. Transformando ∆-arboles en fnns

Cada ∆-arbol determina una fnn, la construida por el operador FNN que definimos a continuacion.

Definicion 6.3 El operador FNN, que convierte ∆-arboles en fnns, se define recursivamente comosigue:

FNN( [α]nil) = FNN([β]⊤) = FNN([α]⊤) = ⊤

FNN( [β]nil) = FNN([α]⊥) = FNN([β]⊥) = ⊥

FNN( [α]ℓ1 . . . ℓn) = ℓ1 ∧ · · · ∧ ℓn

FNN( [β]ℓ1 . . . ℓn) = ℓ1 ∨ · · · ∨ ℓn

Page 155: Cur So Bueno Logic A

6.1. ∆-ARBOLES COMO REPRESENTACION DE FNN’S 147

FNN

[α]nil

T1 . . . Tm

= FNN(T1) ∧ · · · ∧ FNN(Tm)

FNN

[β]nil

T1 . . . Tm

= FNN(T1) ∨ · · · ∨ FNN(Tm)

FNN

[α]ℓ1 . . . ℓn

T1 . . . Tm

= ℓ1 ∧ · · · ∧ ℓn ∧ FNN(T1) ∧ · · · ∧ FNN(Tm)

FNN

[β]ℓ1 . . . ℓn

T1 . . . Tm

= ℓ1 ∨ · · · ∨ ℓn ∨ FNN(T1) ∨ · · · ∨ FNN(Tm)

eer rRecordemos que

la conjuncion vacıa de literales es valida. Por esta razon, definimos FNN([α]nil) = ⊤.

la disyuncion vacıa de literales es insatisfacible. Por esta razon, definimos FNN([β]nil) = ⊥.

Ejemplo 6.3 Las fnns correspondientes a los ∆-arboles del ejemplo 6.2 son las siguientes:

FNN([β]nil) = ⊥

FNN([α]pq) = p ∧ ¬q

FNN

[β]nil

[α]nil [α]pqr

= FNN([α]nil) ∨ FNN([α]pqr) = ⊤ ∨ (¬p ∧ q ∧ ¬r)

FNN

[α]pq

[β]pr

= p ∧ ¬q ∧ FNN([β]pr) = p ∧ ¬q ∧ (¬p ∨ r)

FNN

[α]nil

[β]pr [β]pq

[α]qr [α]pqr

= (¬p ∨ r) ∧ (p ∨ ¬q ∨ (q ∧ ¬r) ∨ (p ∧ ¬q ∧ r))

En adelante, aplicaremos a los ∆-arboles las propiedades y conceptos asociados a fnns. Ası porejemplo, diremos que el ∆-arbol A es satisfacible para indicar que la fbf FNN(A) es satisfacible.

Page 156: Cur So Bueno Logic A

148 CAPITULO 6. EL METODO TAS

6.1.3. Transformando fnns en ∆-arbolesInversamente, toda fnn puede ser escrita como ∆-arbol, por lo que podemos trabajar exclusivamentecon este tipo de representacion. Por su definicion, toda fnn restringida responde a uno de lossiguientes esquemas:

ℓ1 ∧ · · · ∧ ℓn ∧A1 ∧ · · · ∧Am, donde Ai, 1 ≤ i ≤ m son fnns disyuntivas y en la lista ℓ1,. . . ,ℓnno aparecen literales opuestos o repetidos.

ℓ1 ∨ · · · ∨ ℓn ∨A1 ∨ · · · ∨Am, donde Ai, 1 ≤ i ≤ m son fnns conjuntivas y en la lista ℓ1,. . . ,ℓnno aparecen literales opuestos o repetidos.

De esta forma, es facil definir el operador de conversion que vemos a continuacion.

Definicion 6.4 El operador ∆Arbol que convierte fnns restringidas en ∆-arboles, se define recur-sivamente como sigue:

1. ∆Arbol(ℓ1 ∧ · · · ∧ ℓn) = [α]ℓ1 . . . ℓn

2. ∆Arbol(A1 ∧ · · · ∧Am) =[α]nil

∆Arbol(A1) . . . ∆Arbol(Am)

3. ∆Arbol(ℓ1 ∧ · · · ∧ ℓn ∧A1 ∧ · · · ∧Am) =[α]ℓ1 . . . ℓn

∆Arbol(A1) . . . ∆Arbol(Am)

4. ∆Arbol(ℓ1 ∨ · · · ∨ ℓn) = [β]ℓ1 . . . ℓn

5. ∆Arbol(A1 ∨ · · · ∨Am) =[β]nil

∆Arbol(A1) . . . ∆Arbol(Am)

6. ∆Arbol(ℓ1 ∨ · · · ∨ ℓn ∨A1 ∨ · · · ∨Am) =[β]ℓ1 . . . ℓn

∆Arbol(A1) . . . ∆Arbol(Am)

Ejemplo 6.4 Vamos a escribir la fbf del ejemplo 3.7 como ∆-arbol:

∆Arbol

p ∧

q p

p s

r

s r q

p

=

[β]p

[α]r

[β]nil

[α]pq [α]ps

[α]p

[β]qrs

Page 157: Cur So Bueno Logic A

6.1. ∆-ARBOLES COMO REPRESENTACION DE FNN’S 149

6.1.4. Operaciones basicas con ∆-arboles

Definimos la union, interseccion y diferencia de listas de literales, que denotaremos con los corres-pondientes sımbolos conjuntistas; estos operadores se definen considerando las listas de literalescomo conjuntos. 5

Sin embargo, dado que necesitamos trabajar con ∆-listas, al unir dos de ellas deberemos eliminar,en su caso, la posible existencia de literales opuestos, reemplazando la lista por una constante logica(haciendo uso de las leyes de complementacion y las leyes cero-uno).

Definicion 6.5 [Union de ∆-listas] El operador Union se define como:

Union([α]λ, [α]λ′) =

[α]⊥ si λ ∩ λ′ 6= nil

[α](λ ∪ λ′) en caso contrario

Union([β]λ, [β]λ′) =

[β]⊤ si λ ∩ λ′ 6= nil

[β](λ ∪ λ′) en caso contrario

En la definicion hemos aplicado que: λ ∩ λ′ 6= nil nos asegura que existe un literal ℓ ∈ λ tal queℓ ∈ λ′. Si se trata de conjunciones es insatisfacible y si se trata de disyunciones es valida.

La segunda operacion basica es la sustitucion de literales por constantes.

Definicion 6.6 [Sustitucion de literales por constantes] Sea A un ∆-arbol y ℓ un literal. El ∆-arbolA[ℓ/⊤] se construye recorriendo A primero en profundidad de la raız a las hojas para realizar lassiguientes transformaciones:

1. En todo nodo [α]λ tal que ℓ ∈ λ, se elimina ℓ en λ.

2. Si [α]λ es un nodo tal que ℓ ∈ λ se procede como sigue:

2.1 Si dicho nodo es la raız, se realiza la sustitucion A[ℓ/⊤] = [α]⊥.

2.2 Si dicho nodo no es la raız, se elimina el subarbol que tiene a tal nodo como raız.

3. En todo nodo [β]λ tal que ℓ ∈ λ, se elimina ℓ en λ.

4. Si [β]λ es un nodo tal que ℓ ∈ λ se procede como sigue:

4.1 Si dicho nodo es la raız, se realiza la sustitucion A[ℓ/⊤] = [β]⊤.

4.2 Si dicho nodo no es la raız, se elimina el subarbol que tiene a tal nodo como raız.

En la definicion hemos utilizado:

En 1) la ley cero-uno: B ∧ ⊤ ≡ B

En 2.1) la ley cero-uno: B ∨ ⊥ ≡ B

En 2.2) las leyes cero-uno B ∧⊥ ≡ ⊥ (para sustituir λ por ⊥ y, puesto que el padre del nodoes β, la ley cero-uno B ∨ ⊥ ≡ B para eliminar el subarbol.

En 3) la ley cero-uno: B ∨ ⊥ ≡ B.

5Que como venimos repitiendo, nos esta permitido por ser ∧ y ∨ asociativas, conmutativas e idempotentes.

Page 158: Cur So Bueno Logic A

150 CAPITULO 6. EL METODO TAS

En 4.1) la ley cero-uno: B ∨ ⊤ ≡ ⊤

En 4.2) las leyes cero-uno B ∨⊤ ≡ ⊤ (para sustituir λ por ⊤ y, puesto que el padre del nodoes α, la ley cero-uno B ∧ ⊤ ≡ B para eliminar el subarbol.

Por otra parte, definimos A[ℓ/⊥] como A[ℓ/⊤].

La sustitucion de varios literales simultaneamente se puede hacer efectuando la operacion de ladefinicion anterior para cada literal,

A[ℓ1 . . . ℓn/⊤] = A[ℓ1/⊤] . . . [ℓn/⊤]

A[ℓ1 . . . ℓn/⊥] = A[ℓ1/⊥] . . . [ℓn/⊥],

pero tambien puede hacerse en un unico recorrido del arbol, segun establece el siguiente resultado.

Proposicion 6.1 Sea A un ∆-arbol y µ = ℓ1 . . . ℓn una ∆-lista. El ∆-arbol A[µ/⊤] se construyecomo sigue:

1. Si [α]λ es la raız de A y λ ∩ µ 6= nil, entonces A[µ/⊤] = [α]⊥.

2. Si [β]λ es la raız de A y λ ∩ µ 6= nil, entonces A[µ/⊤] = [β]⊤.

Si no se pueden aplicar las reglas anteriores, recorremos A primero en profundidad de la raız a lashojas para realizar las siguientes transformaciones:

3. Si un nodo esta etiquetado con [α]λ y λ ∩ µ 6= nil, entonces el subarbol correspondiente alnodo es eliminado; en caso contrario, el nodo es sustituido por [α](λrµ); es decir, cada literalde µ es eliminado del nodo.

4. Si un nodo esta etiquetado con [β]λ y λ ∩ µ 6= nil, entonces el subarbol correspondiente alnodo es eliminado; en caso contrario, el nodo es sustituido por [β](λrµ); es decir, cada literalde µ es eliminado del nodo.

Podemos calcular A[µ/⊥] usando la proposicion anterior si tenemos en cuenta que A[µ/⊥] =A[µ/⊤].

Ejemplo 6.5

[α]rs

[β]prt [β]qst [β]pqt

[rs/⊤] =

[α]nil

[β]pt [β]pqt

6.1.5. ∆-arboles restringidos:

Vamos a definir el concepto de ∆-arbol restringido, como aquel en los que no existen subarbolesque puedan ser reducidos a una constante de forma trivial.

Definicion 6.7 Sea A un ∆-arbol y η un nodo en A.

1. η se dice concluyente si verifica una de las siguientes condiciones:

a) η = [α]⊥ o η = [β]⊤. 6

6es decir, la fnn asociada a η es ⊥ ∧B o bien ⊤ ∨B

Page 159: Cur So Bueno Logic A

6.1. ∆-ARBOLES COMO REPRESENTACION DE FNN’S 151

b) Es un nodo monario y su ∆-lista es nil. 7

c) Tiene un hijo que es hoja y cuya ∆-lista es nil. 9

d) Su ∆-lista es λ′, la ∆-lista de su padre es λ y λ′ ∩ λ 6= nil. 10

2. η se dice simple si es una hoja y su ∆-lista es unitaria. 11

3. Decimos que η es actualizable si satisface las condiciones siguientes:

a) su ∆-lista es λ,

b) tiene un hijo, η′, cuya ∆-lista es nil,

c) si λ1,. . . ,λn son las ∆-listas de los hijos de η′, entonces: δ = λ1 ∩ · · · ∩ λm 6⊂ λ.

Definicion 6.8 Decimos que el ∆-arbol A es restringido si no tiene nodos concluyentes, simpleso actualizables.

Los nodos concluyentes, simples y actualizables pueden ser eliminados manteniendo el significadode la fbf. Esta propiedad es establecida por el siguiente teorema.

Teorema 6.1 Todo ∆-arbol es equivalente a un ∆-arbol restringido.

La demostracion de este teorema consiste en la definicion del operador Restringir que modificael arbol eliminando los nodos concluyentes, simples y actualizables.

El operador Restringir

Si A es un ∆-arbol, el ∆-arbol Restringir(A) se obtiene a partir de A aplicando las siguientesreglas de reescritura hasta que no puedan aplicarse mas; omitiremos los prefijos [α] y [β] cuandono influyan en la regla.

1. Si algun nodo esta etiquetado con [α]⊥ o [β]⊤, entonces el correspondiente subarbol se eliminao simplifica de la siguiente forma:

[β]λ

A1 . . . Am [α]⊥

∗1→→[β]λ

A1 . . . Am

[α]λ

A1 . . . Am [β]⊤

∗2→→[α]λ

A1 . . . Am

7es decir, la fnn asociada a η es ⊤ si es [α]nil 8 o bien ⊥ si es [β]nil (porque la disyuncion vacıa es insatisfacible)9es decir, η tiene un hijo como el descrito en el item anterior

10es decir, el subarbol con raiz η representa a una fnn del tipo (ℓ∧B)∨ℓ∨C, en cuyo caso la propiedad de absorcionnos asegura que (ℓ ∧B) ∨ ℓ ∨ C ≡ ℓ ∨ C

11es decir, la fnn asociada es un literal

Page 160: Cur So Bueno Logic A

152 CAPITULO 6. EL METODO TAS

Si la constante esta en la raız, simplemente se eliminan sus hijos. 12

[α]⊥

A1 . . . Ak

→→ [α]⊥

[β]⊤

A1 . . . Ak

→→ [β]⊤

2. Puesto que [α]nil ≡ ⊤ y [β]nil ≡ ⊥, las leyes cero-uno, nos llevan a definir que, si algun hijode η es una hoja etiquetada con [α]nil o [β]nil entonces el subarbol con raız η se sustituyepor [β]⊤ y [α]⊥ respectivamente:

[β]λ

A1 . . . Am [α]nil

→→ [β]⊤

[α]λ

A1 . . . Am [β]nil

→→ [α]⊥

Observese que si η no es la raız, podemos aplicar la regla 1 y eliminar completamente elsubarbol.

3. Si algun hijo de η es un nodo monario etiquetado con nil, entonces dicho nodo es eliminadode la siguiente forma:

η

A1 . . . Am nil

η′

Am+1 . . . Am+1

→→Union(η, η′)

A1 . . . Am Am+1 . . . Am+k

La justificacion de esta regla es la siguiente: la etiqueta nil nos indica que el nodo correspon-diente no tiene hijos literales. Por otra parte, por la definicion de la estructura de ∆-arbol, ηy η′ son ambas β o bien ambas α. por lo tanto, podemos aplicar la ley asociativa (de ∨ o ∧respectivamente.

Si el nodo vacıo y monario es la raız, entonces:

nil

η

A1 . . . Am

→→η

A1 . . . Am

12En ∗1 hacemos uso de que X ∧ ⊥ ≡ ⊥ y X ∨ ⊥ ≡ X. Dualmente, en ∗2 hacemos uso de que X ∨ ⊤ ≡ ⊤ yX ∧ ⊤ ≡ X.

Page 161: Cur So Bueno Logic A

6.2. REGLAS DE TRANSFORMACION DEL METODO TAS 153

4. Si algun hijo de η es una hoja cuya ∆-lista es unitaria, entonces el contenido de su ∆-lista sepasa a η:

η

A1 . . . Am ℓ

→→Union(η, ℓ)

A1 . . . Am

5. La leyes distributivas nos conducen a la siguiente regla: Si en el esquema de abajo tenemosque δ = λ1 ∩ · · · ∩ λm 6⊂ λ, el contenido de δ se pasa a λ

λ

. . . nil

λ1

. . .

. . . λm

. . .

→→Union(λ, δ)

. . . nil

λ1

. . .

. . . λm

. . .

El ∆-arbol Restringir(A) ası construido es restringido y equivalente a A.

Ejemplo 6.6 Mostramos algunos ejemplos de ∆-arboles que no son restringidos y las transforma-ciones que conducen a su forma restringida.

(i) [α]nil

[β]nil

[α]q [α]r

[β]nil

[α]qr

(b)→→ [α]nil

[β]qr [β]nil

[α]qr

(b)→→ [α]qr

[β]qr

(ii) [α]nil

[β]nil

[α]pq [α]pr

[β]p

[α]qr

(d)→→ [α]p

[β]nil

[α]pq [α]pr

[β]p

[α]qr

(iii) [α]nil

[β]nil

(b)→→ [α]⊥

6.2. Reglas de transformacion del metodo TAS

El metodo TAS es un metodo transformacional, de reescritura, en el que se realizan cambios enla estructura del arbol sintactico de la fbf que se va a transformar, con el objetivo de adecuar laestructura de dicho arbol al objetivo propuesto: disminuir, en la medida de lo posible, el numerode distribuciones. Para ello utiliza las siguientes reglas:

Page 162: Cur So Bueno Logic A

154 CAPITULO 6. EL METODO TAS

la “Regla de Reduccion Completa”, que generaliza la de propagacion unitaria del metodoDavis-Putnam.

la “Regla del Literal Puro”, que generaliza la correspondiente regla del metodo Davis-Putnam.

la “Regla de Reduccion”, que especializa la regla de reduccion completa para que pueda seraplicada a las subformulas.

la “Regla de Ramificacion”, que al igual que la usada por el metodo Davis-Putnam no es masque la regla del metodo de Quine

6.2.1. Regla de Reduccion Completa

Definicion 6.9 Un ∆-arbol A es completamente reducible si es conjuntivo y su raız es novacıa.

Los atomos que ocurren en la raız de un ∆-arbol completamente reducible pueden ser eliminadosde todo el arbol. La aplicacion del siguiente resultado, que describe esta eliminacion, se hara en elalgoritmo con el nombre de reduccion completa.

Teorema 6.2 Si [α]λ, con λ 6= nil, es la raız de A, entonces A es satisfacible si y solo si A[λ/⊤]es satisfacible. Ademas, si I es un modelo de A[λ/⊤], entonces cualquier extension de I tal queI(ℓ) = 1 para cada ℓ ∈ λ, es un modelo de A

Demostracion: Es consecuencia inmediata del siguiente lema:

Lema 6.1 Dada una fnn, A, se tiene que:

1. Si A = p ∧B, entonces A ≡ p ∧B[p/⊤]

2. Si A = p ∧ B, entonces A es satisfacible si y solo si B[p/⊤] es satisfacible. Ademas, si I esun modelo de B[p/⊤], entonces la interpretacion I ′ tal que I ′(p) = 1 e I ′(q) = I(p) para todoatomo q 6= p es un modelo de A.

3. Si A = p ∨B, entonces A ≡ p ∧B[p/⊤]

Demostracion:

1. Supongamos que A = p∧B y sea I una interpretacion arbitraria. Tenemos dos posibilidades:

Si I(p) = 0, entonces I(A) = I(p ∧B) = I(p ∧B[p/⊤] = 0

Si I(p) = 1, entonces I(A) = I(p∧B) = I(B) y puesto que I(p) = 1 = I(⊤), tenemos queI(B) = I(B[p/⊤]). En definitiva, I(A) = I(p∧B) = I(B) = I(B[p/⊤] = I(p∧B[p/⊤] =0

Por lo tanto, para ambas posibilidades, I(A) = I(p∧B[p/⊤] = 0 y puesto que I es arbitraria,A ≡ p ∧B[p/⊤].

2. Es consecuencia directa del ıtem 1.

3. Supongamos que A = p∨B y sea I una interpretacion arbitraria. Tenemos dos posibilidades:

Page 163: Cur So Bueno Logic A

6.2. REGLAS DE TRANSFORMACION DEL METODO TAS 155

Si I(p) = 1, entonces I(A) = I(p ∨B) = I(p ∨B[p/⊤] = 1

Si I(p) = 0, entonces I(A) = I(p∨B) = I(B) y puesto que I(p) = 0 = I(⊥), tenemos queI(B) = I(B[p/⊥]). En definitiva, I(A) = I(p∨B) = I(B) = I(B[p/⊥] = I(p∨B[p/⊥] =0

Por lo tanto, para ambas posibilidades, I(A) = I(p∨B[p/⊥] = 0 y puesto que I es arbitraria,A ≡ p ∨B[p/⊥].

4. Es consecuencia directa del ıtem 3.

Ejemplo 6.7 El ∆-arbolA = [α]rs

[β]prt [β]qst [β]pqt

es completamente reducible y por lo tanto es satisfacible si y solo si lo es el siguiente:

A[rs/⊤] = [α]nil

[β]pt [β]pqt

No es difıcil comprobar que la interpretacion I tal que I(p) = 1 e I(q) = 0 es un modelo de A[rs/⊤],por lo que podemos extenderlo a un modelo de A considerando I(r) = 1 e I(s) = 0.

6.2.2. Regla del literal puro

Definicion 6.10 Un literal ℓ se dice puro en un ∆-arbol si en el no aparece el literal ℓ.

Las variables de los literales puros pueden ser eliminadas en todo el arbol aplicando el resultadosiguiente, que es incorporado al algoritmo en el proceso denominado reduccion de literales puros.

Teorema 6.3 Si µ es la lista de literales puros de A, entonces A es satisfacible si y solo si A[µ/⊤]es satisfacible. Ademas, si I es un modelo de A[µ/⊤], entonces cualquier extension del I tal queI(ℓ) = 1 para cada ℓ ∈ µ, es modelo de A.

Demostracion: Solo probaremos el primer caso, pues el segundo se demuestra de modo similar.

Si A[µ/⊤] es satisfacible entonces la formula A es satisfacible. Concretamente, toda interpreta-cion I que sea un modelo para A[µ/⊤] puede extenderse a un modelo de A, definiendo la nuevainterpretacion I ′ como sigue:

Si µ = ℓ1ℓ : 2 . . . ℓn. Entonces, cada ℓi, con 1 ≤ i ≤ n, es de la forma ℓi = pi o bien ℓi = pi. Seaλ = p1, . . . , pn.

Definimos I ′ tal que:

I ′(pj) = I(pi) si pj 6 λ

I ′(ℓ1) = 1

Recıprocamente, sea A una fnn satisfacible en la que todo literal ℓ ∈ µ es puro y consideremos unaformula B en forma normal disyuntiva equivalente a A. Obviamente, se tiene que:

Page 164: Cur So Bueno Logic A

156 CAPITULO 6. EL METODO TAS

B es satisfacible, por ser equivalente a A,

todo literal ℓ ∈ µ es puro en B, ya que las leyes aplicadas para obtener B a partir de A(distrivutiva, leyes cero-uno, absorcion e idempotencia) no cambian la propiedad de ℓ de serpuro

A[µ/⊤] ≡ B[µ/⊤].

Puesto que B es satisfacible y esta en fnd entonces existe un cubo C en B que es satisfacible. solotenemos que considerar dos casos: Para cada ℓ ∈ µ, se tiene que

Si ℓ ocurre en C entonces C[ℓ/⊤] es satisfacible porque C es un cubo.

Si ℓ no ocurre en C entonces C[ℓ/⊤] es satisfacible porque C = C[ℓ/⊤].

En cualquier caso podemos concluir que C[ℓ/⊤] es satisfacible y, por lo tanto, B[ℓ/⊤] es satisfacible,lo cual indica que A[µ/⊤] es satisfacible.

6.2.3. Regla de Reduccion

Vamos a definir la transformacion denominada reduccion que elimina aquellos literales en un arbolque esten dominados por otro literal con la misma variable proposicional. Ası, cada rama del arbolcontendra a lo sumo un literal por cada variable. Para esta regla, aplicable a los subarboles, el arbolresultante sera equivalente al inicial.

Definicion 6.11 Sea A un ∆-arbol. Entonces Reducir(A) es el ∆-arbol obtenido a partir de Arecorriendolo primero en profundidad de la raız a las hojas y realizando en cada nodo la siguientetransformacion:

[α]λ

A1 . . . Am

→→[α]λ

A1[λ/⊤] . . . Am[λ/⊤]

[β]λ

A1 . . . Am

→→[β]λ

A1[λ/⊥] . . . Am[λ/⊥]

Teorema 6.4 Sea A un ∆-arbol. Entonces A ≡ Reducir(A).

Demostracion: Es el resultado afirmado por los ıtemes 1 y 3 del lema 6.1.

Ejemplo 6.8 Sobre el ∆-arbol siguiente aplicamos la transformacion Reducir para obtener suversion reducida.

[α]nil

[β]pr [β]q

[α]p

[β]qr [β]pr

→→ [α]nil

[β]pr [β]q

[α]p

[β]r [β]pr

→→ [α]q

[β]pr [β]q

[α]p

[β]r [β]r

Page 165: Cur So Bueno Logic A

6.3. EL ALGORITMO TAS 157

eer r Como hemos indicado, la utilidad de la transformacion Reducir es clara, permite dejar una solaocurrencia de cada sımbolo proposicional en cada rama. Pero existe otra utilidad, la salida delproceso Reducir puede ser un ∆-arbol no restringido, en cuyo caso, tendremos que aplicar denuevo el proceso Restringir. Ası, en el ejemplo anterior, el arbol salida no es restringido y, trasaplicarle el proceso Restringir, obtenemos:

[β]pr

[α]q

Mas aun, podemos encontrarnos con que, despues de aplicar Restringir, el ∆-arbol obtenidosea reducible, con lo cual, podemos, de nuevo reducir su tamano y ası sucesivamente.

6.3. El Algoritmo TAS

Tenemos ya todos los elementos necesarios para describir el metodo TAS.

El flujo de datos del algoritmo es una lista de pares de la forma

[(B1, µ1), . . . , (Bm, µm)],

en donde cada Bi es un ∆-arbol y cada µi son listas de literales. La lista inicial para estudiar lasatisfacibilidad de una formula A es

[(∆Arbol(A), nil)]

Los nuevos elementos en esta lista se obtendran al dividir los arboles disyuntivos separando loselementos de la disyuncion, o bien al aplicar el proceso de ramificacion.

De esta forma, si [(B1, µ1), . . . , (Bm, µm)] es el flujo en un instante cualquiera de la ejecucion delalgoritmo, entonces:

la formula inicial A es satisfacible si y solo si B1 ∨ · · · ∨Bn es satisfacible.

Es decir, A es insatisfacible si y solo si todos los Bi son insatisfacibles. La lista de literales almacenala informacion sobre el posible modelo, de forma que

si Bi es satisfacible por un modelo I, entonces cualquier extension de I con I(ℓ) = 1para cada ℓ ∈ µi es un modelo de la formula inicial.

La lista [(B1, µ1), . . . , (Bm, µm)] se denomina lista de tareas pendientes. Atendiendo a las observa-ciones remarcadas mas arriba, el algoritmo terminara si

1. Todos los elementos del flujo son [α]⊥ o [β]nil, en cuyo caso la formula inicial es insatisfa-cible.

2. Algun elemento del flujo es [α]nil o [β]⊤, en cuyo caso la formula inicial es satisfacible,pudiendo ademas construir un modelo.

A continuacion, explicamos detalladamente la progresion del algoritmo sobre la lista de tareasdescribiendo cada bloque de transformaciones y cada transformacion que aparece en el diagramade flujo del algoritmo.

Page 166: Cur So Bueno Logic A

158 CAPITULO 6. EL METODO TAS

Bloque Actualizar: Despues de cada simplificacion las formulas del flujo entran en el bloqueActualizar, en el cual se convierten los arboles a forma restringida y se analiza si estamos ensituacion de finalizacion:

1. Si todas los elementos de la lista son [α]⊥ o [β]nil, el algoritmo finaliza devolviendo lasalida Insatisfacible.

2. Si alguno de los elementos de la lista es ([α]nil, µ) o ([β]⊤, µ), entonces el algoritmofinaliza devolviendo la salida Satisfacible y dando como modelo a I tal que I(ℓ) = 1para cada ℓ ∈ µ.

Paralelizar: Si algun elemento de la lista de tareas es disyuntivo, entonces a la lista de tareas sele aplica la siguiente transformacion, con la cual se elimina la raız disyuntiva y se anadentantos arboles como elementos tiene la disyuncion.

[. . . ,

[β]ℓ1 . . . ℓn

B1 . . . Bm

, µ

, . . . ] →→

→→ [. . . , ([α]ℓ1, µ), . . . , ([α]ℓn, µ), (B1, µ), . . . , (Bm, µ), . . . ]

Observese que si la raız no es vacıa, los arboles hoja generados en la lista de tareas permitiranfinalizar haciendo simplemente una completa reduccion.

Reduccion Completa: A continuacion se analiza si alguno de los elementos de la lista de tareases completamente reducible, en cuyo caso se aplica la correspondiente reduccion:

[. . . ,

[α]λ

B1 . . . Bn

, µ

, . . . ] →→

→→ [. . . ,

[α]nil

B1[λ/⊤] . . . Bn[λ/⊤]

, µ ∪ λ

, . . . ]

Esta es la primera etapa en la que se modifica la lista con la informacion para el posiblemodelo, anadiendo a ella los literales de la raız que han sido eliminados.

Reduccion: Si el arbol de la tarea no es completamente reducible, pasamos a aplicar el operadorde subreduccion. Este proceso no modifica el contenido de la lista con la informacion para elposible modelo.

Literales puros: Si el operador de subreduccion no modifica el arbol, se halla la lista de literalespuros para su reduccion. Si (B,µ) es un elemento de la lista de tareas y π es la lista (no vacıa)de literales puros de B, entonces:

[. . . , (B,µ), . . . ] →→ [. . . , (B[π/⊤], µ ∪ π), . . . ]

Como vemos, esta etapa tambien modifica la lista de literales con la informacion para elposible modelo.

Page 167: Cur So Bueno Logic A

6.4. EJEMPLO 1 159

Quine Las transformaciones explicadas hasta ahora no son suficientes para la construccion de undemostrador completo, es necesario una etapa de ramificacion. Concretamente, el algoritmoutiliza el mismo proceso de ramificacion que el algoritmo de Quine. Si en la lista de tareasno se puede aplicar ninguna de las transformaciones anteriores, entonces elegimos una tareacualquiera y un literal ℓ y efectuamos la siguiente transformacion en la lista de tareas.

[. . . , (B,µ), . . . ] →→ [. . . , (B[ℓ/⊤], µ ∪ ℓ), (B[ℓ/⊥], µ ∪ ℓ), . . . ]

En las dos tareas se elimina completamente la variable elegida, la cual es anotada en la listapara la construccion del posible contramodelo.

Es practicamente imposible mostrar un ejemplo en donde se apliquen todas las etapas del algoritmo.En la secciones siguientes mostramos con detalle cinco ejemplos que abarcan todas las situacionesposibles en la ejecucion del algoritmo.

6.4. Ejemplo 1

Estudiemos la validez de la siguiente inferencia

(p ∧ q) ∨ (p ∧ r) |= p ∧ (q ∨ r)

1. La entrada del algoritmo es

[(∆Arbol(((p ∧ q) ∨ (p ∧ r)) ∧ (¬p ∨ (¬q ∧ ¬r))), nil)] =

=

[α]nil

[β]nil

[α]pq [α]pr

[β]p

[α]qr

, nil

2. Al aplicar el operador Restringir observamos que la raız es actualizable porque el nodomarcado con un cırculo esta etiquetado con nil y sus dos hijos contienen el literal p; por lotanto, la salida del operador es:

[α]p

[β]nil

[α]pq [α]pr

[β]p

[α]qr

, nil

3. El arbol es completamente reducible, y la sustitucion [p/⊤] conduce a

[α]nil

[β]nil

[α]q [α]r

[β]nil

[α]qr

, p

Page 168: Cur So Bueno Logic A

160 CAPITULO 6. EL METODO TAS

4. El operador Restringir sobre este arbol actua como sigue:

[α]nil

[β]nil

[α]q [α]r

[β]nil

[α]qr

(h. simples)→→ [α]nil

[β]qr [β]nil

[α]qr

(nil monario)→→ [α]qr

[β]qr

Y por lo tanto, obtenemos el siguiente resultado

[α]qr

[β]qr

, p

5. La completa reduccion aplica la sustitucion [qr/⊤] y produce el siguiente resultado:

[α]nil

[β]nil

, pqr

6. El operador Restringir elimina la hoja nil devolviendo:

[([α]⊥, pqr)]

y por lo tanto, la inferencia es valida. Aunque hemos ido guardando los literales eliminados,en este caso tal informacion no aporta nada.

6.5. Ejemplo 2

Queremos estudiar la validez del siguiente razonamiento:

p→ s, (s→ q)→ (s ∧ r) |= q ∧(p→ ¬

((r → ¬q) ∧ (p→ r))

))

1. La validez es equivalente a la insatisfacibilidad de la conjuncion de las dos hipotesis y lanegacion de la conclusion que convertimos en ∆-arbol para obtener la entrada del algoritmo:

[(∆Arbol(A1 ∧A2 ∧ ¬A), nil)] =

[α]nil

[β]ps [β]nil

[α]qs [α]rs

[β]q

[α]p

[β]qr [β]pr

, nil

Page 169: Cur So Bueno Logic A

6.5. EJEMPLO 2 161

2. El operador Restringir detecta que la raız es actualizable, ya que el nodo marcado conun cırculo es vacıo y todos sus hijos contienen el literal s; tras actualizar la raız, obtenemosel arbol de la izquierda. El nodo marcado con un cırculo puede ser eliminado, ya que suinterseccion con la raiz es distinta del vacıo; el arbol resultante, a la derecha, es restringido

[α]s

[β]ps [β]nil

[α]qs [α]rs

[β]q

[α]p

[β]qr [β]pr

, nil

→→

[α]s

[β]nil

[α]qs [α]rs

[β]q

[α]p

[β]qr [β]pr

, nil

3. El arbol es completamente reducible y la reduccion lleva a

[α]s

[β]nil

[α]qs [α]rs

[β]q

[α]p

[β]qr [β]pr

[s/⊤], s

=

[α]nil

[β]nil

[α]q [α]r

[β]q

[α]p

[β]qr [β]pr

, s

4. El arbol obtenido no es restringido, ya que las dos hojas de la izquierda son simples; traseliminar estas hojas, obtenemos el siguiente arbol restringido:

[α]nil

[β]qr [β]q

[α]p

[β]qr [β]pr

, s

5. Este arbol no es completamente reducible y pasamos a aplicar el operador subreduce queproduce el siguiente resultado:

[α]nil

[β]qr [β]q

[α]p

[β]r [β]r

, s

6. El arbol obtenido no esta restringido; el proceso Restringir actua como sigue

Page 170: Cur So Bueno Logic A

162 CAPITULO 6. EL METODO TAS

[α]nil

[β]qr [β]q

[α]p

[β]r [β]r

(h. simples)→→ [α]nil

[β]qr [β]q

[α]⊥

(nodo ⊥)→→ [α]nil

[β]qr [β]q

(h. simples)→→ [α]q

[β]qr

→→ [α]q

y el resultado de la tarea es [([α]q, s)].

7. La completa reduccion nos lleva a la finalizacion:

[(([α]q)[q/⊤], qs)] = [([α]nil, qs)]

Por lo tanto, la inferencia no es valida y un contramodelo esta determinado por I(q) = 0,I(s) = 1.

6.6. Ejemplo 3

Vamos a estudiar la validez de la siguiente formula:

A = ((p ∨ (r → t)) ∧ (q ∨ (t→ s)))→ ((p ∧ ¬(q → ¬t)) ∨ (r → ((q → (s ∨ r)) ∧ s)))

1. La entrada al algoritmo es

[(∆Arbol(¬A), nil)] =

[α]r

[β]prt [β]qst [β]pqt [β]s

[α]qsr

, nil

2. Restringir: El nodo marcado con un cırculo es eliminado, ya que tiene literales comunes consu padre.

[α]r

[β]prt [β]qst [β]pqt [β]s, nil

La hoja simple se elimina subiendo el literal s a la raız. Obtenmos el siguiente arbol restringido.

[α]rs

[β]prt [β]qst [β]pqt, nil

3. El ∆-arbol es completamente reducible,

[α]rs

[β]prt [β]qst [β]pqt

[rs/⊤], rs

Page 171: Cur So Bueno Logic A

6.7. EJEMPLO 4 163

y la sustitucion efectiva de los literales por las constantes da como resultado

[α]nil

[β]pt [β]qt [β]pqt

, rs

4. El arbol obtenido ya esta restringido, no es completamente reducible, la subreduccion nomodifica el arbol y no tiene literales puros. Aplicamos entonces la etapa Quine y para elloelegimos la variable p; la lista de tareas pasa a ser:

[α]nil

[β]pt [β]qt [β]pqt

[p/⊤], rsp

,

[α]nil

[β]pt [β]qt [β]pqt

[p/⊥], rsp

Las sustituciones efectivas de los literales conduce a

[α]nil

[β]qt [β]qt

, rsp

,

[α]nil

[β]t [β]qt

, rsp

5. Nos preocupamos ahora de la primera tarea. El ∆-arbol es restringido, no es completamentereducible y la subreduccion no realiza ninguna modificacion. Sı tenemos un literal puro, t,por lo que la reduccion de dicho literal conduce a

[α]nil

[β]qt [β]qt

[t/⊤], rspt

,

[α]nil

[β]t [β]qt

, rsp

La sustitucion efectiva del literal da([α]nil, rspt),

[α]nil

[β]t [β]qt

, rsp

6. Por lo tanto, la primera tarea es finalizable: ¬A es satisfacible y un modelo es I(r) = 1,I(s) = 0, I(p) = 1, I(t) = 0. Observese que, dado que el resultado es satisfacible, no esnecesario continuar con la tarea pendiente.

6.7. Ejemplo 4

Estudiemos la validez de la siguiente inferencia:

A = (p ∧ (r ∨ q) ∧ (s→ r)) ∨ (p ∧ r ∧ (q → s) ∧ (p→ q))

B = ¬((r ∨ ¬q ∨ s)→ p)

Page 172: Cur So Bueno Logic A

164 CAPITULO 6. EL METODO TAS

1. El ∆-arbol de la premisa y de la negacion de la conclusion da la entrada del algoritmo:

[(∆Arbol(A ∧ ¬B), nil)] =

[α]nil

[β]nil

[α]p

[β]qr [β]rs

[α]pr

[β]qs [β]pq

[β]p

[α]qrs, nil

2. Restringir:

[α]nil

[β]nil

[α]p

[β]qr [β]rs

[α]pr

[β]qs [β]pq

[β]p

[α]qrs

(actual.)→→

[α]p

[β]nil

[α]p

[β]qr [β]rs

[α]pr

[β]qs [β]pq

[β]p

[α]qrs

(lit.comunes)→→

[α]p

[β]nil

[α]p

[β]qr [β]rs

[α]pr

[β]qs [β]pq

Los dos nodos marcados con un cırculo en el primer arbol, tienen un literal en comun, p, quepor la actualizacion suben a la raız; en el segundo arbol, el nodo marcado tiene un literal encomun con su padre y por lo tanto el subarbol es eliminado; el tercer ∆-arbol es la formarestringida.

Page 173: Cur So Bueno Logic A

6.7. EJEMPLO 4 165

3. El ∆-arbol es completamente reducible:

[α]p

[β]nil

[α]p

[β]qr [β]rs

[α]pr

[β]qs [β]pq

[p/⊤], p

=

[α]nil

[β]nil

[α]nil

[β]qr [β]rs

[α]r

[β]qs [β]q

, p

4. Restringir:

[α]nil

[β]nil

[α]nil

[β]qr [β]rs

[α]r

[β]qs [β]q

→→ [α]nil

[β]nil

[α]nil

[β]qr [β]rs

[α]qr

[β]qs

→→ [β]nil

[α]nil

[β]qr [β]rs

[α]qr

[β]qs

El nodo marcado en el primer arbol es una hoja simple y el literal que contiene sube al padre;en el segundo arbol, la raız es vacıa y monaria, por lo que es eliminada; el tercer arbol es laforma restringida.

5. Paralelizar: Dado que el ∆-arbol es disyuntivo, es satisfacible si y solo si alguno de lossubarboles es satisfacible; la etapa Paralelizar es la encargada de dividir el problema en lascorrespondientes subtareas:

[β]nil

[α]nil

[β]qr [β]rs

[α]qr

[β]qs

, p

Paralelizar→→

[α]nil

[β]qr [β]rs

, p

;

[α]qr

[β]qs

, p

6. La primera tarea no es completamente reducible y la subreduccion no modifica el arbol; tienedos literales puros

Lit.puros→→

[α]nil

[β]qr [β]rs

[qs/⊤], pqs

; . . .

= [([α]nil, pqs); . . . ]

7. Por lo tanto, la primera tarea es finalizable, siendo la salida del algoritmo: Satisfacible, conmodelo I(p) = 1, I(q) = 1 y I(s) = 0. En consecuencia, la inferencia no es valida e I es uncontramodelo.

Page 174: Cur So Bueno Logic A

166 CAPITULO 6. EL METODO TAS

6.8. Ejemplo 5

Estudiemos la validez de la siguiente inferencia:

A1 = (p ∧ (¬q ∨ r))→ ((¬r → p) ∧ (¬p ∨ t))A2 = (q ∨ ¬t)→ (p ∧ r)A3 = (t→ r)→ (¬q ∧ r)

A = p ∨ ¬r

1. Convertimos cada formula en ∆-arbol:

∆Arbol(A1) = ∆Arbol(¬p ∨ (q ∧ ¬r) ∨ ((r ∨ p) ∧ (¬p ∨ t)) =

[β]p

[α]qr [α]nil

[β]pr [β]pt

;

∆Arbol(A2) =[β]nil

[α]qt [α]pr

; ∆Arbol(A3) =[β]nil

[α]rt [α]qr

;

∆Arbol(¬A) = [α]pr

Por lo tanto, la entrada del algoritmo es:

[(∆Arbol(A1 ∧A2 ∧A3 ∧ ¬A), nil)] =

=

[α]pr

[β]p

[α]qr [α]nil

[β]pr [β]pt

[β]nil

[α]qt [α]pr

[β]nil

[α]rt [α]qr, nil

2. La restriccion del arbol elimina el subarbol cuya raız aparece marcada y tras esto pasamos aaplicar la completa reduccion sustituyendo [pr/⊤].

Restringir→→

[α]pr

[β]nil

[α]qt [α]pr

[β]nil

[α]rt [α]qr

, nil

→→

Comp.Red.→→

[α]nil

[β]nil

[α]qt

[β]nil

[α]q

, pr

3. El operador Restringir actua sobre el arbol como sigue:

Page 175: Cur So Bueno Logic A

6.8. EJEMPLO 5 167

[α]nil

[β]nil

[α]qt

[β]nil

[α]q

(nil monario)→→ [α]qt

[β]nil

[α]q

(nil monario)→→ [α]qt

y por lo tanto, el resultado de la tarea es [([α]qt, pr)]

4. Finalmente, la completa reduccion nos lleva a [([α]nil, pqrt)] y, por lo tanto, la inferencia noes valida y un contramodelo es I(p) = 0, I(q) = 0, I(r) = 1, I(t) = 1.

Page 176: Cur So Bueno Logic A

168 CAPITULO 6. EL METODO TAS

6.9. Ejercicios

1. Transforme los siguientes ∆-arboles en formulas; obtenga la formula tal y como la devuelveel operador FNN, es decir, sin simplificar.

[α]nil

[β]nil

[α]pr [α]pq

[β]nil

[α]qr [α]qr

[α]nil

[β]qr [β]q

[α]nil

[β]qr [β]pr

2. Transforme las siguientes formulas en ∆-arbol.

a) ¬((s ∧ p)→ ((q ∧ s) ∨ (¬q → t)))

b) p ∨ ¬(q → p) ∨ (¬q ∧ (¬s→ q) ∧ (¬r → p))

c) ¬((p↔(q → r))→ (p↔q))

3. Evalue las siguientes sustituciones; en el segundo apartado, realice la dos sustituciones si-multaneamente.

[α]nil

[β]nil

[α]pr [α]pq

[β]nil

[α]qr [α]qr

[q/⊤],

[α]nil

[β]qr [β]q

[α]nil

[β]qr [β]pr

[qr/⊤]

4. Obtenga la forma restringida de los siguientes ∆-arboles y escriba los resultados como formu-las.

[α]nil

[β]pr [β]p

[α]qr [α]p

, [α]q

[β]nil

[α]pqr [α]pr

, [α]pr

[β]qr [β]p

[α]pq

, [α]nil

[β]nil

5. Estudie la validez de las siguientes fbfs y razonamientos utilizando el metodo TAS.

a) ((p→ r) ∧ (q → s))→ ((p ∧ q)→ (r ∧ s))

b) p→ q, r → s, (s ∧ q)→ t |= (p ∧ r)→ t

c) (s→ q)→ (s ∧ r),(p→ ¬

((r → ¬q) ∧ (p→ r)

))→ ¬q |= p ∧ ¬s

d) (p ∧ ¬q) ∨ (r ∧ q), (s ∧ ¬p) ∨ (¬s ∧ ¬r) |= s ∧ ¬p

e) (p→ (q → r))→ ((p→ q)→ (p→ r))

Page 177: Cur So Bueno Logic A

6.9. EJERCICIOS 169

f ) (¬p→ (q ∧ ¬r))→ ((¬q ∨ r)→ ((p ∧ ¬q) ∨ (p ∧ r)))

6. Para cada una de las siguientes formulas, A, obtenga ∆Arbol(¬A) y deduzca la validez delas mismas.

¬(p ∧ q)↔ (¬p ∨ ¬q) ¬(p ∨ q)↔ (¬p ∧ ¬q)((p ∧ q) ∧ r)↔ (p ∧ (q ∧ r)) ((p ∨ q) ∨ r)↔ (p ∨ (q ∨ r)(p ∧ (q ∨ r))↔ ((p ∧ q) ∨ (p ∧ r)) (p ∨ (q ∧ r))↔ ((p ∨ q) ∧ (p ∨ r)(p ∧ (p ∨ q))↔ p (p ∨ (p ∧ q))↔ p(p→ q)↔ (¬q → ¬p) (p→ q)↔ (¬p ∨ q)¬(p→ q)↔ (p ∧ ¬q) ((p↔ q)↔ r)↔ (p↔ (q↔ r)(p ∧ (q ∨ r))↔ ((p ∧ q) ∨ (p ∧ r))

7. Estudie la validez de las siguientes formulas utilizando el metodo TAS.

a) (p→ q)→ ((p→ ¬q)→ ¬p)

b) (¬r ∨ (p ∧ q))→ ((r → p) ∧ (r → q))

c) ((p→ r) ∧ (q → s))→ ((p ∧ q)→ (r ∧ s))

d) (p→ q)↔ (q↔ (p ∨ q))

8. Estudie la validez de las siguientes inferencias utilizando el metodo TAS.

a) p→ (q ∨ r), q → r, r → s |= p→ ¬s

b) p→ q, r → s, (s ∧ q)→ t |= (p ∧ r)→ t

c) p→ (q → r), p→ q, p |= r

d) p→ (q ∨ r), q → r, r → s |= p→ s

9. Estudie la validez de las siguientes inferencias utilizando el metodo TAS.

p ∨ ¬(q → p) ∨ (¬q ∧ (¬s→ q) ∧ (¬r → p)) |= (¬q → s) ∧ (p ∨ r)

¬p→ ((r → p) ∧ (q → s) ∧ ¬(q → p)) |= p ∧ (r → q)

( ( (p→ q)→ (¬r → ¬s) )→ r )→ t |= (t→ p)→ (s→ p)

10. Utilice TAS para estudiar la validez de los siguientes razonamientos y formulas:

a)((¬s→ t)→ r) ∨ ¬(q → (r → (u→ ¬p)))((¬s ∧ p)→ r)→ (s→ (r ∧ p))

(s→ (t→ (q ∧ ¬p)))→ ((p ∨ u)→ t)

b)p→ (q ∨ ((s ∨ r) ∧ (t→ s)))¬r→ (s ∨ (t ∧ (t→ q)))¬(r ∧ s)

¬p ∧ ¬(q ∧ (q → p))

c) [(r → (q → t)) ∧ (r → q) ∧ (s→ (r ∨ q)) ∧ ¬(¬p ∧ ((r ∨ ¬q)→ t)

)∧ (p→ t)]→ (s→ t)

Page 178: Cur So Bueno Logic A

170 CAPITULO 6. EL METODO TAS

Figura 6.1: Algoritmo TAS