fundamentos de lógica 2

30
Tecnolog´ ıas de la Informaci´ on UAM-C Carlos Rodr´ ıguez Lucatero Slide 1 Tecnolog´ ıas de la Informaci´ on UAM-C ogica Computacional Dr. Carlos Rodr´ ıguez Lucatero Slide 2 Sistemas de deducci´on El primer sistema que vamos a considerar en este cap´ ıtulo no es aplicable al conjunto de todas las f´ ormulas del c´ alculo proposicional, mas bien solamente a las cl´ ausulas. ´ Este presenta la ventaja de ser simple, ya que solamante lleva consigo una sola regla de deducci´ on y constituye la base de un m´ etodo de constituci´ on autom´ atica. Este m´ etodo ser´ a posteriormente generalizado para l´ ogica de primer orden, bajo el nombre de etodo de resoluci´ on, y nos proveer´ a el fundamento de la programaci´ on l´ ogica. El segundo sistema, llamado deducci´ on natural, se aplica al conjunto de f´ ormulas de la l´ ogica cl´ asica. Una restricci´ on de este sistema a la ogica intuicionista (ver cap´ ıtulo de sistemas de tipajes)

Upload: delvathrel-ozana

Post on 29-Nov-2015

14 views

Category:

Documents


0 download

DESCRIPTION

introducción a la lógica matematica, contiene excerpts del libro de Grimaldi Discrete and Combinatorial Mathematics

TRANSCRIPT

Tecnologıas de la Informacion UAM-C Carlos Rodrıguez Lucatero

Slide 1

Tecnologıas de la Informacion UAM-CLogica Computacional

Dr. Carlos Rodrıguez Lucatero

Slide 2

Sistemas de deduccion

El primer sistema que vamos a considerar en este capıtulo no esaplicable al conjunto de todas las formulas del calculoproposicional, mas bien solamente a las clausulas. Este presenta laventaja de ser simple, ya que solamante lleva consigo una solaregla de deduccion y constituye la base de un metodo deconstitucion automatica. Este metodo sera posteriormentegeneralizado para logica de primer orden, bajo el nombre demetodo de resolucion, y nos proveera el fundamento de laprogramacion logica. El segundo sistema, llamado deduccionnatural, se aplica al conjunto de formulas de la logica clasica. Unarestriccion de este sistema a la logica intuicionista (ver capıtulode sistemas de tipajes)

Tecnologıas de la Informacion UAM-C Carlos Rodrıguez Lucatero

Slide 3

Un sistema de deduccion para las clausulas

La regla de corte es un procedimiento que, dadas dos clausulas,permite deducir una nueva. Una prueba esta compuesta por unasucesion finita de aplicaciones de esta regla.

0.1 Regla de corte

Definicion 1 Sea C1 = (Γ1, ∆1), y C2 = (Γ2, ∆2) dos clausulas. Siexiste una variable proposicional p que aparece positivamente en C1

y negativamente C2, se dice que podemos deducir una nuevaclausula C a partir de C1, C2 por corte sobre p : C = (Γ, ∆) y estadefinida por

Γ = Γ1 ∪ (Γ2 − {p}) y ∆ = (∆1 − {p}) ∪∆2

Ejemplo. A partir de C1 = (p ∨ q ∨ r) y C2 = (p ∨ q ∨ ¬r) se

Slide 4deduce C = (p ∨ q)

Una aplicacion de esta regla la denotaremos como:

Tecnologıas de la Informacion UAM-C Carlos Rodrıguez Lucatero

Slide 5 C1 C2

C

Slide 6

Una prueba por corte es una secuencia finita de clausulasobtenidas por la aplicacion sucesiva de esta regla a un conjunto declausulas.

Definicion 2 Sea S un conjunto de clausulas y C una clausula.Una prueba de C por corte a partir de S es una secuencia finita declausulas C1, C2, . . . , Ck donde Ck = C y para toda i = 1, 2, . . . , k,

• Sea Ci una clausula de S,

• Sea que existe 1 ≤ j, l < i tales que Ci se deduce de Cj , Cl porcorte.

Denotamos S ` C para expresar que existe una prueba de C porcorte a partir de S

Una refutacion por corte de S es una prueba de la clausulavacıa a partir de S

Tecnologıas de la Informacion UAM-C Carlos Rodrıguez Lucatero

Slide 7Ejemplo.

Existe una prueba de r a partir de S = {(¬p ∨ q ∨ r), (¬p ∨ ¬q), p} :

C1 = (¬p ∨ q ∨ r), C2 = (¬p ∨ ¬q), C3 = (¬p ∨ r), C4 = p, C5 = r

entonces existe una refutacion de S ∪ {¬r}

Slide 8

0.2 El metodo de refutacion por corte

Lema 1 Si la clausula C es deducida de las clausulas C1, C2 porcorte, entonces C es consecuencia de {C1, C2}Demostracion :

Suponemos que la clausula C es deducida de las clausulas C1 = (Γ1, ∆1)

y C2 = (Γ2, ∆2) por corte sobre la variable proposicional p. Se demuestra

que si V es una valuacion que no satisface C, entonces V no satisface a

C1 o no satisface a C2. Si V no satisface C, es porque : para toda

q ∈ Γ1 ∪ (Γ2 − {p}),V(q) = 1 y para toda r ∈ (∆1 − {p}) ∪∆2,V(q) = 0

Dos situaciones se hacen entonces posibles para la valuacion V:

• Ya sea que V(p) = 1 en cuyo caso V(C2) = 0

• Ya sea que V(p) = 0 en cuyo caso V(C1) = 0

Entonces la clausula C es consecuencia de S

Tecnologıas de la Informacion UAM-C Carlos Rodrıguez Lucatero

Slide 9

Lema 2 Si existe una prueba de la clausula C por corte a partir deun conjunto S, entonces C es consecuencia de S.

Demostracion : Sea C1, C2, . . . , Ck una prueba de C a partir de S.

Se demuestra por induccion sobre la longitud k de la prueba que, para

toda i = 1, 2 . . . , k, Ci es consecuencia de S:

• si Ci ∈ S, es verdadero

• si existe 1 ≤ j, l < k tales que Ci se deduzca de Cj , Cl por corte y si

Cj , Cl son consecuencia de S (hipotesis de induccion), segun el lema

anterior, C es consecuencia de Cj , Cl y por lo tanto de S.

La ultima formula de la prueba, C, es claramente una consecuencia de S.

Se ve claramente que si C no es satisfacible, tampoco lo es S.

Slide 10Corolario 1 Si S ` C y si la clausula C no es satisfacible,entonces el conjunto S no es satisfacible. En particular, si existeuna refutacion de S, entonces S no es satisfacible.

Tecnologıas de la Informacion UAM-C Carlos Rodrıguez Lucatero

Slide 11

Este resultado permite justificar el uso del metodo de refutacionpor corte para determinar si una formula F es consecuencia de unconjunto finito de formulas Σ:

1. Asociamos a Σ un conjunto S de clausulas obtenidasconsiderando que para cada formula G de Σ, las clausulasaparecen en forma normal conjuntiva.

2. Asociamos a la formula ¬F un conjunto S′ de clausulasobtenidas de la misma manera.

3. Construimos el conjunto (finito) de todas las clausulas dondeexista una prueba por corte a partir de S ∪ S′ Si la clausulavacıa pertenece a este conjunto, S ∪ S′ no es satisfacible, lo quesignifica que Σ ∪ {¬F} tampoco lo es y que la formula F esconsecuencia de Σ En el caso contrario S ∪ S′ es satisfacible ypor lo tanto tambien Σ ∪ {¬F} lo es y la formula F no esconsecuencia de Σ.

Slide 12

Ejemplo.

¿ La formula (¬q ∨ t) es consecuencia logica del conjunto de formulas

Σ = {p→ (¬q ∨ (r ∧ s))),¬(p→ s)} ?

S = {(¬p ∨ ¬q ∨ r), (¬p ∨ ¬q ∨ s), p,¬s}, S′ = {q,¬t}

A partir de S ∪ S′, podemos construir la siguiente refutacion:

C1 = (¬p ∨ ¬q ∨ s), C2 = p, C3 = (¬q ∨ s), C4 = ¬s, C5 = ¬q, C6 =

q, C7 = clausula vacıa.

El colorario anterior expresa el hecho de que el metodo derefutacion por corte es correcto con respecto a la nocion desatisfaccion. Nos queda por demostrar que este metodo es tambiencompleto, es decir que para todo conjunto (finito) de clausulas S nosatisfacible, existe una refutacion de S.

Tecnologıas de la Informacion UAM-C Carlos Rodrıguez Lucatero

Slide 13

0.3 El metodo de refutacion por corte es

completo

La demostracion de esta propiedad se vale de un procedimientoeficaz de transformacion de conjuntos de clausulas que preserva elhecho de ser satisfacible. En el caso de que el conjunto de clausulasde partida no sea satisfacible, la iteracion de esta transformacionnos da por resultado un conjunto que contiene la clausula vacıa.

Lema 3 Si S es un conjunto de clausulas no satisfacible, que nocontiene la clausula vacıa, entonces existe una variableproposicional p y dos clausulas C1, C2 en S tales que p aparecepositivamente en C1 y negativamente en C2

Demostracion :

Sea S un conjunto de clausulas que no contiene la clausula vacıa.

Suponemos que cada variable proposicional p que aparece en una de las

clausulas de S se encuentra en una de las dos situaciones siguientes:

Slide 14

• p aparece positivamente en toda clausula de S

• p aparece negativamente en toda clausula de S

El conjunto S es entonces satisfacible: basta con considerar la valuacion

definida tomando, para cada variable proposicional p,V(p) = 1

(respectivamente 0) si p aparece positivamente (respectivamente

negativamente) en las clausulas de S.

Tecnologıas de la Informacion UAM-C Carlos Rodrıguez Lucatero

Slide 15

La transformacion que nos proponemos efectuar sobre S consiste enescoger una variable que nos permita hacer cortes y realizar todaslas cortaduras posibles sobre esta variable a partir de clausulas deS.

Definicion 3 Sea S un conjunto de clausulas y p una variableproposicional que aparece positivamente en una clausula de S ynegativamente en otra. El subconjunto de clausulas de S quecontiene p denotado por Sp. El conjunto resolvente de Sp es elsubconjunto res(Sp) de todas las clausulas obtenidas por corte sobrela variable p a partir de dos clausulas de Sp.

Slide 16 Corolario 2 Si S es un conjunto de clausulas no satisfacibles,entonces existe una variable proposicional p tal que res(Sp) 6= ∅

Tecnologıas de la Informacion UAM-C Carlos Rodrıguez Lucatero

Slide 17

Lema 4 Sea S una variable proposicional que verifica la condicionde la definicion anterior. Entonces el conjunto S es satisfacible si ysolamente si (S − Sp) ∪ res(Sp) es satisfacible tambien.

Demostracion :

Si existe una valuacion que satisface S, entonces la misma valuacion

satisface por igual a (S − Sp) ∪ res(Sp) : en efecto, toda formula de

res(Sp) es obtenida por corte a partir de las formulas de S y entonces es

consecuencia de S. Si existe una valuacion V que satisface

(S − Sp) ∪ res(Sp), basta con mostrar que puede ser prolongada a la

variable p de forma que se satisfagan las clausulas de Sp. Esta valuacion

V satisface todas las clausulas de la forma (C1 ∨ C2) obtenidas por corte

a partir de dos clausulas (C1 ∨ p) y (¬p ∨ C2) (segun el orden de las

variables) de Sp. Dos casos son posibles:

• Si existe una clausula de la forma (C1 ∨ p) en Sp, tal que V(C1) = 0

entonces para toda clausula de la forma (¬p ∨ C2) en Sp, V(C2) = 1

ya que V(C1 ∨ C2) = 1 ; tomando V(p) = 1, la valuacion V satisface

todas las clausulas de la forma (C1 ∨ p), asi como todas las de la

Slide 18

forma (¬p ∨ C2)

• Si para toda clausula de la forma (C1 ∨ p) en Sp, V(C1) = 1,

tomando V(p) = 0 la valuacion V satisface igualmente todas las

clausulas de la forma (¬p ∨ C2) en Sp.

En cada uno de los casos, la valuacion V prolongada de esta forma

satisface todas las clausulas de Sp

Tecnologıas de la Informacion UAM-C Carlos Rodrıguez Lucatero

Slide 19

En lo que resta, denotaremos por V ar(S) al conjunto de variablesque aparezcan en S

Corolario 3 Si S es un conjunto finito de clausulas nosatisfacibles, entonces la secuencia obtenida iterando a partir de S

la transformacion anterior es finita y la clausula vacıa pertenece aalguno de los conjuntos de la secuencia.

Demostracion :

Siendo el conjunto S no satisfacible, existe una variable p1 en S que nos

permite aplicar la transformacion anterior. La secuencia de conjuntos Si

se define por recurrencia:

S0 = S, S1 = (S − Sp1) ∪ res(Sp1)

Si se supone que Si es no satisfacible, Si+1 se define de la misma manera:

Si+1 = (S − Spi) ∪ res(Spi), donde pi es una variable que nos permite

aplicar la transformacion anterior. Segun el lema anterior, el nuevo

conjunto de clausulas es igualmente no satisfacible y la secuencia esta

bien definida. Como el numero de variables que aparecen en S es finito y

Slide 20V ar(Si+1) = V ar(Si)− {pi}, esta secuencia es finita y uno de los

conjuntos Si contiene la clausula vacıa.

Tecnologıas de la Informacion UAM-C Carlos Rodrıguez Lucatero

Slide 21

Corolario 4 Todo conjunto finito de clausulas no satisfacible poseeuna refutacion por corte

Demostracion :

Utilizando la secuencia de transformaciones anterior, la clausula vacıa es

obtenida por un numero finito de aplicaciones de la regla de corte sobre

clausulas de S.

El hecho de que el metodo de refutacion por corte sea completo esla misma propiedad que aquella que se menciona en este corolario,para todo conjunto de clausulas, incluso infinito. Esta propiedad esuna consecuencia del teorema de compacidad, que se demostrara enla ultima seccion de este capıtulo. Si se quiere utilizar este metodoen la practica, antes es necesario definir estrategias de prueba (orefutacion) por corte.

Slide 22

0.4 Estrategias de prueba por corte

La primera forma de aplicar este metodo consiste en engendrartodas las clausulas que se pueden obtener en una prueba por cortea partir de un conjunto finito de clausulas S. Una estrategia,correspondiente a este proceso conocido como de saturacion,construye la secuencia de conjuntos Si definida por recurrencia:S0 = S y Si = {C deducida por corte deC1, C2 : C1 ∈ S0 ∪ S1 ∪ . . . ∪ Si−1} y C2 ∈ Si− 1. El proceso setermina:

• Ya sea cuando la clausula vacıa es obtenida en la etapa i y elconjunto S no es satisfacible

• Ya sea cuando la etapa i no permite nuevas clausulas conrespecto a la etapa anterior i− 1 y el conjunto es entoncessatisfacible.

Tecnologıas de la Informacion UAM-C Carlos Rodrıguez Lucatero

Slide 23

Esta estrategia es muy ineficiente ya que enumera todas lasclausulas que aparecen en la prueba a partir de S. Una mejoraposible consiste en no engendrar las clausulas inutiles oredundantes.

Definicion 4 • Se dice que una clausula es una tautologıa siuna misma variable aparece a la vez positivamente ynegativamente en la misma clausula.

• Una clausula C = (Γ, ∆) absorbe una clausula C ′ = (Γ′, ∆′) siΓ ⊆ Γ′ y ∆ ⊆ ∆′

• Una estrategia de aplicacion del metodo de refutacion por cortese dice completa si para todo conjunto finito S de clausulas nosatisfacible, existe una refutacion siguiendo esta estrategia.

Slide 24

Proposicion 1 La nueva estrategia de saturacion, consistente enno engendrar a cada etapa i

• las clausulas tautologicas,

• las clausulas C que son absorbidas por una clausula C ′

engendrada en alguna etapa anterior,

es completa.

La demostracion es dejada al lector como ejercicio. Otra estrategiade aplicacion del metodo de refutacion por corte consiste encontruir la secuencia de sımbolos Si en el parrafo anterior:

• si en cada etapa i, es posible encontrar una variableproposicional pi apareciendo positivamente en una clausula deSi y negativamente en otra clausula de Si, la secuencia deconjuntos Si se termina en una etapa donde la clausula vacıaaparece y el conjunto de S no es satisfacible;

Tecnologıas de la Informacion UAM-C Carlos Rodrıguez Lucatero

Slide 25

• si existe una etapa i donde ya no es posible hallar una talvariable proposicional, es que el conjunto Si es satisfacible y elconjunto S de clausulas tambien lo es.

La restriccion del metodo a una clase particular de clausulas, que esel mas usado en la practica, da lugar a un algoritmo mas eficiente.

Slide 26

Definicion 5 Se dice que una clausula es una clausula de Horn sitiene a lo mas una variable proposicional positiva.

Sea S un conjunto de clausulas y P el conjunto de clausulaspositivas de S. Se ve facilmente que si P es vacıo, entonces S essatisfacible (ejercicio).El siguiente algoritmo nos permitedeterminar si un conjunto de clausulas de Horn es satisfacible:

D := 0

mientras P 6= ∅ ∧D = 0 hacer;

• Sea C1 una clausula en P ;

• mientras exista una clausula C2 en S − P permitiendo

hacer un corte con C1:

– retirar C2 de S − P ;

Tecnologıas de la Informacion UAM-C Carlos Rodrıguez Lucatero

Slide 27

– Sea C un resolvente de C1, C2;

– Si C es la clausula vacıa entonces D := 1sino si C es positiva entonces agregar C a P

sino agregar C a S − P ;

• retirar C1 de P ;

Si D = 0 entonces S es satisfacible sino S no es satisfacible

El lector podra como ejercicio verificar que si el numero declausulas de S es n, el numero de etapas de calculo esta mayoradopor un polinomio de grado 2 en funcion de n.

Slide 28

0.5 Pruebas y refutaciones lineales

Ciertas restricciones en la manera de aplicar la regla de cortecorresponden a formas particulares de pruebas, particularmenteagradables en su manipulacion. Las pruebas lineales son unejemplo, utilizado en el marco de la programacion logica. Laspruebas, por corte o en un sistema de reglas mas general, puedenser representadas por arboles de la siguiente manera.

Definicion 6 Sea C1, C2, . . . , Cn una prueba de C por corte apartir de S. El arbol de prueba asociado es un arbol binariocuyos nodos estan etiquetados por clausulas de tal suerte que:

• la raiz esta etiquetada por la clausula C

• las hojas, o nodos terminales, estan etiquetadas por lasclausulas de S

• todo nodo no terminal esta etiquetado por una clausula Ci,

Tecnologıas de la Informacion UAM-C Carlos Rodrıguez Lucatero

Slide 29 deducida de dos clausulas Cj , Ck(j, k < i) que son las etiquetasde los dos predecesores del nodo correspondiente a Ci.

Slide 30

Definicion 7 Una prueba de C por corte a partir de S es lineal sia cada etapa de corte, una de las dos clausulas utilizadas es ya seauna clausula de S, o una clausula ancestro de la otra en el arbol deprueba.

Tecnologıas de la Informacion UAM-C Carlos Rodrıguez Lucatero

Slide 31

Ejemplo.

1. La siguiente refutacion de S no es lineal:

S = {(p ∨ q), (¬p ∨ q), (p ∨ ¬q), (¬p ∨ ¬q)}

(p ∨q) (¬p ∨ q)

q

(p ∨¬q) (¬p ∨ ¬q)

¬q

q ¬q

2. La siguiente refutacion de S es lineal:

Slide 32

(p ∨q) (¬p ∨ q)

q

q (¬q ∨ p)

p

p ¬p ∨ ¬q

¬q

¬q q

Tecnologıas de la Informacion UAM-C Carlos Rodrıguez Lucatero

Slide 33

La proposicion siguiente tiene como consecuencia que nos podamosrestringir a la busqueda de refutaciones lineales.

Proposicion 2 Para toda prueba de una clausula C por corte apartir de clausulas S, existe una prueba lineal de C a partir de S.

Demostracion :

La idea es de considerar, en el arbol de prueba de C, los nodos que

constituyen fuentes de no linealidad para el arbol y reemplazarlos por

dos subarboles de prueba tales que el arbol resultante sea un arbol de

prueba lineal. Los nodos que presentan dichos defectos pueden ser de dos

tipos (las clausulas que etiquetan los nodos en cuestion son considerados

en el orden de las variables proposicionales: las unicas variables

distinguidas son aquellas

sobre las cuales se efectuan los cortes). La primera categorıa es de la forma:

Slide 34

(C1 ∨ ¬p ∨ q) (C2 ∨ ¬q)

(C1 ∨ C2 ∨ ¬p)

(C3 ∨ p) (C1 ∨ C2 ∨ ¬p)

(C1 ∨ C2 ∨ C3)

Es posible de sustituir este subarbol por el siguiente:

(C3 ∨ p) (C1 ∨ ¬p ∨ q)

(C1 ∨ C3 ∨ q)

(C1 ∨ C3 ∨ q) (C2 ∨ ¬q)

(C1 ∨ C2 ∨ C3)

La segunda categorıa de nodos defectuosos es de la forma siguiente:

Tecnologıas de la Informacion UAM-C Carlos Rodrıguez Lucatero

Slide 35

(C1 ∨ ¬p ∨ q) (C2 ∨ ¬p ∨ ¬q)

(C1 ∨ C2 ∨ ¬p)

(C3 ∨ p) (C1 ∨ C2 ∨ ¬p)

(C1 ∨ C2 ∨ C3)

Este subarbol puede ser reemplazado por el siguiente:

(C3 ∨ p) (C1 ∨ ¬p ∨ q)

(C1 ∨ C3 ∨ q)

(C1 ∨ C3 ∨ q) (C2 ∨ ¬p ∨ ¬q)

(C1 ∨ C2 ∨ C3 ∨ ¬p)

Slide 36

(C1 ∨ C2 ∨ C3 ∨ ¬p) (C3 ∨ p)

(C1 ∨ C2 ∨ C3)

Aplicando esta transformacion de manera recursiva a los subarboles, el

arbol que se obtiene al final sera asociado a una prueba lineal.

Tecnologıas de la Informacion UAM-C Carlos Rodrıguez Lucatero

Slide 37

Deduccion natural

Historicamente, los primeros sistemas de deduccion para la logicaclasica estaban basados sobre los esquemas de axiomas y sobre lasreglas de deduccion. G.Gentzen tuvo la idea de remplazarlas porun sistema que contenıa solamente una forma de deduccion natural:en una demostracion matematica, la deduccion se efectua a partirde hipotesis admitidas a lo largo del razonamiento, mas bien que apartir de hipotesis generales, fijadas una vez y por todas. En lo quesigue Γ y ∆ denotan conjuntos finitos de formulas y Γ, ∆ sureunion: si ∆ se reduce a una sola formula A, lo denotamos comoΓ, A. Las formulas del calculo proposicional consideradasanteriormete son construıdas con la ayuda de los conectores ∧,∨,→y ⊥, que es un conector de aridad 0 representando el falso oabsurdo.

Definicion 8 La expresion Γ ` A expresa que la formula A puede

Slide 38

ser deducida con ayuda de las formulas de Γ aplicando un numerofinito de veces las siguientes reglas:

• axioma

Γ, A ` A

• introduccion de →Γ, A ` B

Γ ` A→ B

• eliminacion del →Γ ` A ∆ ` A→ B

Γ, ∆ ` B

Tecnologıas de la Informacion UAM-C Carlos Rodrıguez Lucatero

Slide 39

• introduccion de ∧Γ ` A ∆ ` B

Γ, ∆ ` A ∧B

• eliminacion de ∧1

Γ ` A ∧B

Γ ` A

• eliminacion de ∧2

Γ ` A ∧B

Γ ` B

Slide 40

• introduccion de ∨1

Γ ` A

Γ ` A ∨B

• introduccion de ∨2

Γ ` B

Γ ` A ∨B

• eliminacion de ∨Γ ` A ∨B ∆, A ` C ∆′, B ` C

Γ, ∆′ ` C

Tecnologıas de la Informacion UAM-C Carlos Rodrıguez Lucatero

Slide 41

• eliminacion de ⊥Γ `⊥

Γ ` A

En el caso en que Γ este vacıo, se denota como ` A.

Slide 42

Estas diez reglas constituyen un sistema de deduccion para lalogica intuicionista. La negacion de una formula puede serintroducida como una abreviacion de la formula A→⊥. La logicaclasica estudia los procesos de razonamiento matematico: algunosson no constructivos como el principio del tercero excluıdo o elrazonamiento por reduccion al absurdo.

La logica intuicionista es un marco de formalizacion delrazonamiento que no autoriza mas que procedimientosconstructivos: es decir que no toma en cuenta un objeto mas que sieste ha sido obtenido por medio de un construccion efectiva. Es loque explica que sea la que este en la base del estudio de losproblemas de deduccion en computacion, como por ejemplo eltipaje en los lenguajes funcionales o los procesos de inferencia en laprogramacion logica. El sistema de reglas para la logica clasicahace uso de una regla adicional a la del conjunto de reglas para lalogica intuisionista. Esta regla corresponde al uso clasico de la

Tecnologıas de la Informacion UAM-C Carlos Rodrıguez Lucatero

Slide 43

doble negacion:

Γ ` ¬¬A

Γ ` A

Slide 44

Los ejemplos siguientes de prueba estan construidos en el sistemaintuisionista.

Ejemplo.

1. ` A→ (B → A) :

A ` A

A ` (B → A)

` A→ (B → A)

2. ` (A→ B)→ ((B → C)→ (B → C)) :

Tecnologıas de la Informacion UAM-C Carlos Rodrıguez Lucatero

Slide 45

(A → B) ` (A→ B) A ` A

(A → B), A ` B (B → C) ` (B → C)

(A → B), (B → C), A ` C

(A → B), (B → C) ` (B → C)

(A → B) ` ((B → C)→ (B → C))

` (A→ B)→ ((B → C)→ (B → C))

3. En particular : ` (A→ B)→ (¬B → ¬A)

4. ` A→ ¬¬A :

A ` A (A →⊥) ` (A→⊥)

A ,(A →⊥) `⊥

A ` ((A→⊥)→⊥)

` A→ ¬¬A

Slide 46

Las propiedades de los conectores con respecto a la deduccionquedan como ejercicio.

• ` ¬(A ∧B) si y solamente si ` (¬A ∨ ¬B)

• ` ¬(A ∨B) si y solamente si ` (¬A ∧ ¬B)

Tecnologıas de la Informacion UAM-C Carlos Rodrıguez Lucatero

Slide 47

Teorema de compacidad

Esta ultima seccion se refiere a un resultado importante de la logicacuya demostracion puede ser omitida en una primera lectura. Elteorema de compacidad, o de finitud, expresa que la propiedad,para un conjunto de formulas, de ser satisfacible es de caracterfinito. Este resultado se aplica a continuacion a los conjuntos declausulas.

Definicion 9 • Un conjunto T de formulas se dice finitamentesatisfacible si todo subconjunto finito de T es satisfacible.

• Un conjunto de formulas T finitamente satisfacible es maximalsi T es finitamente satisfacible y si, para toda formula F , yasea que F ∈ T o sea que ¬F ∈ T

Slide 48

Proposicion 3 Existe una biyeccion entre las valuaciones y losconjuntos de formulas finitamente satisfacibles maximales.

Demostracion :

A cada valuacion V, asociamos ΣV = {F : V(F ) = 1}. Este conjunto de

formulas es finitamente satisfacible maximal. Reciprocamente, a todo

conjunto de formulas Σ, finitamente satisfacible maximal, se le hace

corresponder la valuacion V definida de la siguiente manera:para toda

variable proposicional p,V(p) = 1 ssi p ∈ Σ. Mostramos por induccion

sobre las formulas, que: Σ = ΣV . En efecto, las propiedades siguientes se

deducen facilmente del hecho de que Σ es finitamente satisfacible

maximal:

• F ∈ Σ si y solamente si ¬F /∈ Σ

• (F ∧G) ∈ Σ si y solamente si F ∈ Σ y G ∈ Σ

• (F ∨G) ∈ Σ si y solamente si F ∈ Σ o G ∈ Σ

• (F → G) ∈ Σ si y solamente si F /∈ Σ o G ∈ Σ

Tecnologıas de la Informacion UAM-C Carlos Rodrıguez Lucatero

Slide 49

• (F ↔ G) ∈ Σ si y solamente si F ∈ Σ es equivalente a G ∈ Σ

Por ejemplo: (F ∨G) ∈ Σ implica F ∈ Σ o G ∈ Σ. Suponemos lo

contrario: (F ∨G) ∈ Σ pero ¬F ∈ Σ y ¬G ∈ Σ ; {(F ∨G),¬F,¬G} serıa

entonces un subconjunto finito de Σ no satisfacible. La definicion de Σ y

las anteriores propiedades permiten concluir que : para toda formula

F,V(F ) = 1 si y solamente si F ∈ Σ

Segun la ultima proposicion, el hecho para un conjunto finitamentesatisfacible T de ser satisfacible es equivalente a la existencia de unconjunto finitamente satisfacible maximal Σ que contiene a T .

Slide 50

Teorema 1 Un conjunto de formulas T es satisfacible si ysolamente si T es finitamente satisfacible

Demostracion :

Si T es satisfacible, esta claro que es finitamente satisfacible. Para

montrar lo recıproco, basta con que, dado un conjunto de formulas T ,

finitamente satisfacible, se construya un conjunto finitamente maximal Σ

que contenga a T . El conjunto P de variables propocicionales siendo

finito o enumerable, el conjunto F de formulas es enumerable: sea

F = {Fn : n ∈ N}. La secuencia creciente de conjuntos Tn se define, a

partir de T , por recurrencia sobre n: T0 = T, Tn+1 = Tn ∪ {Fn} si

Tn ∪ {Fn} es finitamente satisfacible, Tn+1 = Tn ∪ {¬Fn} si

no. El conjunto Σ buscado esta definido como la union de estos conjuntos:

Σ =⋃n

Tn

Tecnologıas de la Informacion UAM-C Carlos Rodrıguez Lucatero

Slide 51

El conjunto Σ contiene evidentemente a T y es maximal: por

construccion, para toda formula F , ya sea que F ∈ Σ, o que ¬F ∈ Σ. La

secuencia de conjuntos Tn siendo creciente, el hecho de que Σ sea

finitamente satisfacible es resultado de que cada una de las Tn lo sea:

• Esta claro para T0 = T

• Suponiendo Tn finitamente satisfacible, si Tn+1 = Tn ∪ {Fn}, se

cumple que Tn+1 es finitamente satisfacible; sino Tn+1 = Tn ∪ {¬Fn}y existe un subconjunto T ′n de Tn tal que T ′n ∪ {Fn} no es

satisfacible, entonces existe igualmente un subconjunto finito T ′′n de

Tn tal que T ′′n ∪ {Fn} no es satisfacible; T ′n ∪ T ′′n es un subconjunto

finito de Tn y es por lo tanto satisfacible; toda valuacion que la

satisfaga debe de satisfacer ya sea a Fn, o a ¬Fn, lo que contradice

el hecho de que T ′n ∪ {Fn} y T ′′n ∪ {¬Fn} sean ambas no satisfacibles.

Esto muestra que cada una de las Tn es finitamente satisfacible y que su

reunion lo es tambien.

Slide 52

Corolario 5 Todo conjunto de clausulas no satisfacible posee unarefutacion por corte.

Demostracion :

Sea S un conjunto de clausulas no satisfacible. Segun el teorema de

compacidad, existe un subconjunto finito S0 de S, no satisfacible. Este

conjunto finito de clausulas posee una refutacion por corte y S, que lo

contiene, posee una igualmente.

Tecnologıas de la Informacion UAM-C Carlos Rodrıguez Lucatero

Slide 53

Ejercicios

1. Suponemos que la regla de corte se aplica a las clausulas A, B sobre

la variable proposicional p y da la clausula C. Que podemos decir de

las clausulas A, B si p aparece en C ?

2. Suponemos que la regla de corte se aplica a las clausulas A, B por

un lado sobre la variable proposicional p dando la clausula C, y por

otro lado sobre la variable proposicional q (q 6= p) dando la clausula

C′ Que podemos decir de las clausulas C, C′ ?

3. En este ejercicio las clausulas seran denotadas bajo la forma Γ > ∆

donde Γ representa al conjunto de las variables negativas y ∆ el de

las variables positivas. Para cada uno de los siguientes sistemas,

determinar una refutacion o una valuacion que las satisfaga

(precisando las etapas intermedias)

Slide 54

S S′

ae > d > ej

d > df bj > h

ab > > a

bd > d bce >

cd > af hi >

e > b > i

be > ac j > h

> acd ce >

bdf > i > bh

> abc i > ch

4. Demostrar las propiedades de los siguientes conectores con respecto

Tecnologıas de la Informacion UAM-C Carlos Rodrıguez Lucatero

Slide 55

a la deduccion natural

(a) ` ¬(A ∧B) ssi ` (¬A ∨ ¬B)

(b) ` ¬(A ∨B) ssi ` (¬A ∧ ¬B)

5. Sea F la formula p1.p2.p3 + p1.p2.p3

(a) Demostrar que ` p1 ∨ p2 es consecuencia de F .

(b) Demostrar que ` p2p3 ∨ p2.p3 es consecuencia de F .

(c) La formula p1 ∧ p2 es consecuencia de F ?

Para las clausulas de Horn, se utiliza frecuentemente la siguiente

notacion ∧ es denotada por ”,” , ∨ por ”;”, y una clausula

(A1 ∧A2 ∧A3)→ A se escribe A : −A1, A2, A3

Sea S el conjunto de clausulas :

p : −q, r

s : −p, q

q

r

Slide 56

(a) Dar una prueba por corte de p, s a partir de S

(b) Sea S′ el conjunto S al cual se le agrego una clausula:

p : −q, r

s : −q, s, t

s : −p, q

q

r

(c) Existe una prueba por corte de p, s a partir de S′ ?

(d) Existe una prueba por corte lineal de p, s a partir de S′ ?

(e) Existe una prueba por corte lineal de p, t a partir de S′ ?

(f) La formula p ∧ ¬t es consecuencia de S′ ?

Tecnologıas de la Informacion UAM-C Carlos Rodrıguez Lucatero

Tecnologıas de la Informacion UAM-C Carlos Rodrıguez Lucatero