View
13
Download
0
Category
Preview:
DESCRIPTION
k
Citation preview
Logica y Computabilidad
Verano 2011
Departamento de Computacion - FCEyN - UBA
Logica Proposicional - clase 1
Lenguaje de logica proposicional, semantica, tautologa, consecuencia
semantica, conjunto satisfacible, sistema axiomatico SP,
consecuencia sintactica
1
El lenguaje P
I smbolos p ( )I p, p, p, p, . . . son smbolos proposicionales
I formulas1. todo smbolo proposicional es una formula2. si es una formula entonces es una formula3. si y son formulas entonces ( ) es una formula4. nada mas es una formula
I convencionesI escribimos q por p r por p s por p...I escribimos ( ) en lugar de ( )I escribimos ( ) en lugar de ( )I escribimos en lugar de () cuando convenga
I llamamos PROP al conjunto de todos los smbolosproposicionales
I llamamos FORM al conjunto de todas las formulas2
SemanticaUna interpretacion es una funcion
v : PROP {0, 1}
A v tambien se la llama valuacion.
Definimos la nocion de verdad de una formula para una valuacion.
Si FORM y v es una valuacion, notamosI v |= si es verdadera para vI v 6|= si es falsa para v
La definicion de |= es recursiva:1. si p PROP, v |= p sii v(p) = 12. v |= sii v 6|= 3. v |= ( ) sii v 6|= o v |=
3
Semantica
Observar que, por la convencion,
5. v |= ( ) sii v |= y v |= 6. v |= ( ) sii v |= o v |=
Por ejemplo, si v(p) = 1 , v(q) = 0 , v(r) = 1
I v |= (p r)I v |= (q r)I v 6|= pI v 6|= (p q)
4
Tautologas y metodo de decisionUna formula es una tautologa (|= ) si es verdadera paratoda interpretacion, i.e. para toda valuacion v , v |= .
Proposicion
Sea FORM y sean v y w son dos valuaciones tal quev(p) = w(p) para toda variable proposicional que aparece en .Entonces v |= sii w |= .
Existe un metodo de decision para saber si es tautologa o no:
I supongamos que tiene variables proposicionales p1, . . . , pnI sea P ({p1, . . . , pn}) = {V1, . . . ,V2n}
I para i {1, . . . , 2n} definimos vi (p) ={
1 si p Vi0 si no
I es tautologa sii
vi |= para todo i {1, . . . , 2n}5
Consecuencia semantica y conjunto satisfacibleSea FORM y FORM
es consecuencia semantica de ( |= ) si para todainterpretacion v :
si v |= para toda lo notamos v |=
, entonces v |=
es satisfacible si existe una interpretacion v tal que v |= paratoda (i.e. tal que v |= )
Por ejemplo
I {q} |= qI {q} |= p qI {r , p q} 6|= pI {r , p q} 6|= s
I es satisfacibleI {p, q} es satisfacibleI {p, p q} no es satisfacibleI {p, p q,q} no es satisfacible
6
Algunos resultados sobre |=Proposicion
1. |= sii |= (i.e. es tautologa)2. si |= entonces |= 3. {} |= 4. si y |= entonces |= 5. si |= y |= entonces |=
Demostracion de 5.
I sea v una interpretacion tal que v |= I sabemos v |= I sabemos v |= I concluimos v |=
7
Mecanismo deductivo SP
I axiomas. Sean ,, FORMSP1 ( )SP2 ( ( )) (( ) ( ))SP3 ( ) ( )
I regla de inferenciaMP Sean , FORM. es una consecuencia
inmediata de y Una demostracion de en SP es una cadena finita y no vaca
1, . . . , n
de formulas de P tal que n = y
I i es un axioma oI i es una consecuencia inmediata de k , l , k , l < i
En este caso, decimos que es un teorema (` )8
Ejemplo: demostracion de p pRecordar
SP1 ( )SP2 ( ( )) (( ) ( ))SP3 ( ) ( )MP Sean , FORM. es una consecuencia
inmediata de y
Demostracion:
1. p ((p p) p) SP12. (p ((p p) p)) ((p (p p)) (p p)) SP23. (p (p p)) (p p) MP 1 y 24. p (p p) SP15. p p MP 3 y 4
Concluimos ` p p (i.e. p p es un teorema)9
Consecuencia sintactica
Sea FORM y FORM
es una consecuencia sintactica de ( ` ) si existe una cadenafinita y no vaca
1, . . . , n
de formulas de P tal que n = y
I i es un axioma oI i oI i es una consecuencia inmediata de k , l , k , l < i
Aqu, 1, . . . , n se llama derivacion de a partir de . se llamateora. Decimos que es un teorema de la teora .
10
Correctitud de SP
TeoremaSi ` entonces |= (i.e. si es teorema de la teora , es validoen toda interpretacion de ).
Demostracion.Supongamos ` . Es decir, existe una cadena finita y no vaca
1, . . . , n
de formulas de P tal que n = y
I i es un axioma oI i oI i es una consecuencia inmediata de k , l , k , l < i
Demostramos que |= por induccion en n (la longitud de lademostracion). Detalles a continuacion.
11
Demostracion de Correctitud de SP
Propiedad a demostrar:
P(n) = si 1, . . . , n = es una derivacion de a partir de entonces v |= v |=
Demostramos que vale P(n) por induccion en n.
1. caso base. Veamos que vale P(1). Sup. v tal que v |= . Queremosver que v |= v |= . Hay 2 posibilidades1.1 is axioma de SP: en este caso, v |= ;1.2 : en este caso, tambien v |= .
2. paso inductivo. Sup. v tal que v |= . Sup. que vale P(m) para todom n. Queremos ver que vale P(n + 1).Sup. 1, . . . , n, n+1 = es una derivacion de a partir de . Hay 3 posibilidades
2.1 is axioma de SP: igual que en caso base;2.2 : igual que en caso base;2.3 es consecuencia inmediata de i y j = i (i , j n). Por HI
(P(i) y P(j)), sabemos v |= i y v |= i . Entoncesnecesariamente v |= .
12
EjemplosI 1 = {p} ` p
1. p p 1I 2 = {p} ` p
1. p p 22. p ( p) SP13. p MP 1 y 2
I 3 = {p} 6` qporque 3 6|= q (considerar v(p) = 1; v(q) = 0)
I 4 = {p,p} ` 1. p ( p) SP12. p p 43. p MP 1 y 24. ( p) (p ) SP35. p MP 3 y 46. p p 47. MP 5 y 6
13
Conjuntos y sistemas consistentes FORM es consistente si no existe FORM tal que
` y ` Un sistema S es consistente si no existe FORM tal que
`S y `S TeoremaEl sistema SP es consistente.
Demostracion.
I sea v cualquier valuacionI por correctitud, todo teorema de SP es verdadero para v
` v |= v 6|= 6` I luego no puede pasar que y sean teoremas
14
Algunos resultados sobre `
Proposicion
1. ` sii ` (i.e. es teorema)2. si ` entonces ` 3. {} ` 4. si y ` entonces ` 5. si ` y ` entonces `
Si reemplazamos ` por |=, obtenemos los mismos resultados (verhoja 7)
15
Resumen
lenguaje P
semantica
tautologa(verdadera en toda interpretacion)
consecuencia semantica |=
conjunto satisfacible(existe modelo para todos sus elementos)
metodo deductivo
teorema(tiene demostracion en SP)
consecuencia sintactica `
conjunto consistente(no permite probar y )
16
Notas sobre computabilidadSe pueden codificar las formulas de P con numeros naturales.I a cada formula se le asigna un numero # > 0I cada numero positivo representa una unica formula
Se puede decidir algortmicamente si una formula es un axioma onoI es computable la funcion
ax(x) =
{1 si la formula de numero x es un axioma de SP
0 si no
Se puede decidir algortmicamente si una formula es consecuenciainmediata de otras dosI es computable la funcion
mp(x , y , z) =
1si la formula de numero z es consecencia
inmediata de las formulas de numeros x e y
0 si no17
Notas sobre computabilidad
Las demostraciones son listas (finitas) de formulas.
I la demostracion 1 . . . n se codifica como [#1, . . . ,#n]
Se puede decidir algortmicamente si una lista de formulas es unademostracion valida o no
I es computable la funcion
dem(x) =
{1 x es una demostracion valida
0 si no
I en efecto,
dem(x) = (k {1, . . . , |x |})[ax(x [k]) cons(x , k)]cons(x , k) = (i , j {1, . . . , k 1})[mp(x [i ], x [j ], x [k])]
18
Notas sobre computabilidadI considerar el siguiente programa P:
[A] IF dem(D) = 1 D[|D|] = X GOTO ED D + 1GOTO A
I P busca una demostracion para la formula con numero XI si la encuentra, se detieneI si no, se indefine
I ` sii P(#) , o equivalentemente es teorema sii # domP
I el conjunto de teoremas de SP es c.e.I esto pasa en general para cualquier sistema axiomatico
I es decir, cualquier sistema de deduccion con un conjuntocomputable de axiomas y reglas de inferencia computablestiene un conjunto de teoremas c.e.
I sera el conjunto de teoremas de SP computable? 19
Logica y Computabilidad
Verano 2011
Departamento de Computacion - FCEyN - UBA
Logica Proposicional - clase 2
Teorema de la deduccion, lema de Lindenbaum, completitud de SP,
compacidad
1
Plan
I vimos que SP es correcto: ` |= Esto pruebaI satisfacible consistente
I ahora veremos que SP es completo: ` |= Para esto:
I Lema de LindenbaumI satisfacible consistente
I consecuencia: Teorema de Compacidad
2
El Teorema de la Deduccion
TeoremaSi {} ` entonces ` Demostracion.Por induccion en la longitud de la demostracion de {} ` .Supongamos que
1, . . . , n
es una derivacion de (= n) a partir de {}.I caso base (n = 1)I paso inductivo
I HI: para toda derivacion de a partir de {} de longitud< n tenemos `
I probamos que para una demostracion de longitud n de {} ` tenemos ` .
3
Demostracion del Teorema de la Deduccion (caso base)SupongamosI 1, . . . , n es una derivacion de a partir de {}I n = 1 (i.e. la derivacion es una sola formula 1 = )
Queremos ver que ` . Hay 3 posibilidades:1. es un axioma de SP
1. es axioma2. ( ) SP13. MP 1,2
` 2.
1. 2. ( ) SP13. MP 1,2
` 3. =
vimos que ` p p.la misma demostracion sirve para probar `
4
Demostracion del Teorema de la Deduccion (paso inductivo)Supongamos
1, . . . , n
es una derivacion de a partir de {}HI: para toda derivacion de a partir de {} de longitud < ntenemos `
Queremos ver que ` . Hay 4 posibilidades:1. es un axioma de SP: igual que en en caso base2. : igual que en en caso base3. = : igual que en en caso base4. se infiere por MP de i y j (i , j < n)
I sin perdida de generalidad, j = i I {} ` i y la derivacion tiene longitud < nI por HI ` iI {} ` j y la derivacion tiene longitud < nI por HI ` j , i.e. ` (i )I sabemos (SP2) ` ( (i )) (( i ) ( ))I por MP 2 veces ` 5
Conjuntos consistentes
Proposicion
1. {} es inconsistente sii ` 2. {} es inconsistente sii `
Demostracion de 1.
() ` {} ` trivialmente {} `
} {} es inconsistente
() existe tal que {} ` y {} ` por el Teorema de la Deduccion,
` y `
se puede ver que (ejercicio)` ( ) (( ) )por MP 2 veces tenemos `
6
Satisfacible consistente
TeoremaSi FORM es satisfacible entonces es consistente.Demostracion.
I supongamos v tal que v |= pero es inconsistenteI existe tal que ` y ` I por correctitud de SP, |= y |= I v |= y v |=
7
Lema de Lindenbaum
FORM es maximal consistente (m.c.) en SP siI es consistente yI para toda formula
I oI existe tal que {} ` y {} `
LemaSi FORM es consistente, existe m.c. tal que .
8
Demostracion del Lema de Lindenbaum (obtener m.c.)Enumeramos todas las formulas: 1, 2, . . . DefinimosI 0 =
I n+1 =
{n {n+1} si n {n+1} es consistenten si no
I =
i0 i
Tenemos
1. 2. cada i es consistente3. es consistente
I si no, existe tal que ` y ` I en ambas derivaciones aparecen unicamente {1, . . . , k} .I sea j suficientemente grande tal que {1, . . . , k} jI entonces j ` y j ` ; contradice 2
4. es maximalI supongamos / . Debe existir n tal que n+1 = I n+1 / n+1, entonces n {n+1} es inconsistenteI luego {n+1} es inconsistente (pues n)
9
Conjuntos maximales consistentes
Proposicion
Si es m.c. entonces para toda FORM, o bien o bien .Demostracion.
I no puede ser que y esten en porque sera inconsistenteI supongamos que ninguna esta. Como es maximal y por
Proposicion de la hoja 6,
{} es inconsistente ` {} es inconsistente `
} inconsistente
Proposicion
Sea m.c. ` sii .10
Consistente satisfacibleTeoremaSi FORM es consistente entonces es satisfacible.Demostracion.Dado consistente, construimos m.c. (Lindenbaum)
Definimos la interpretacion v tal que
v(p) = 1 sii p
Veamos v |= sii por induccion en la complejidad de I caso base: = p. Trivial por definicion de v .I paso inductivo:
HI: v |= sii para toda de complejidad < mSea de complejidad m. Hay 2 casos:
1. = 2. =
11
Demostracion de consistente satisfacible (caso = )
HI: v |= sii para toda de complejidad < m
= tiene complejidad m.
Quiero probar que v |= sii
() v |= v 6|= HI / () / HI v 6|= v |= v |=
12
Demostracion de consistente satisfacible (caso = )HI: v |= sii para toda de complejidad < m = tiene complejidad m.Quiero probar que v |= sii
() v |= v |= ( ) v 6|= o v |= I v 6|= HI / `
sabemos ` ( ) (ejercicio)por MP ` entonces
I v |= HI ` sabemos por SP1 que ` ( )por MP ` entonces
() v 6|= v |= y v 6|= HI y / y ` y ` sabemos ` ( ( )) (ejercicio)aplicando MP 2 veces, ` ( )por lo tanto ( ) entonces / 13
Teorema de Completitud (fuerte)
Probamos que
I consistente sii satisfacible (hojas 7 y 11)I {} es inconsistente sii ` (hoja 6)
TeoremaSi |= entonces ` .Demostracion.
I supongamos |= I {} es insatisfacibleI {} es inconsistenteI `
14
Consecuencias del Teorema de Completitud
Corolario ` sii |= Corolario` sii |= (i.e. es un teorema de SP sii es tautologa)Teorema (Compacidad)
Sea FORM. Si todo finito incluido en es satisfacible,entonces es satisfacible.
Demostracion.I supongamos insatisfacibleI es inconsistenteI existe tal que ` y ` I se usan solo finitos axiomas de I existe finito tal que ` y ` I es inconsistenteI es insatisfacible 15
Resumen
lenguaje P
semantica
tautologa(verdadera en toda interpretacion)
consecuencia semantica |=
conjunto satisfacible(existe modelo para todos sus elementos)
metodo deductivo
teorema(tiene demostracion en SP)
consecuencia sintactica `
conjunto consistente(no permite probar y )
16
Notas sobre computabilidad
Habamos visto que el conjunto de teoremas de SP es c.e.
Vemos que es computable:
metodo de decision = tablas de verdad
` sii |=
` sii en la tabla de verdad de solo hay 1s en la ultima columna
17
Logica y Computabilidad
Verano 2011
Departamento de Computacion - FCEyN - UBA
Logica de Primer Orden - clase 1
Lenguaje de logica de primer orden, terminos, formulas, variables
libres y ligadas, interpretacion, valuacion, niveles de verdad,
consecuencia semantica
1
Lenguajes de primer orden
I smbolos logicos y auxiliares: x ( )I x , x , x , x , . . . son variables
I VAR es el conjunto de variables
I se llama cuantificador universalI smbolos de cada lenguaje particular L = C F P, donde
I C es un conjunto de smbolos de constantes (puede ser C = )I F es un conjunto de smbolos de funciones (puede ser F = )I P es un conjunto de smbolos de predicados (P 6= )
2
Terminos
Para un lenguaje fijo L, definimos los terminos de L:1. toda variable es un termino
2. todo smbolo de constante de L es un termino3. si f es un smbolo de funcion n-adico de L y t1, . . . , tn son
terminos de L, entonces f (t1, . . . , tn) es un termino de L4. nada mas es un termino de L
TERM(L) es el conjunto de todos los terminos del lenguaje L
Un termino es cerrado si no tiene variables.
Por ejemplo, para L = C F P, con C = {c, d}, F = {f } yP = {R} (f de aridad 3, R binario) son terminos:
c , d , x , f (c , d , x ) , f (c, f (x , x , x ), x )
3
FormulasPara un lenguaje fijo L, definimos las formulas de L:
1. si P es un smbolo de predicado n-adico de L y t1, . . . , tn sonterminos de L, entonces P(t1, . . . , tn) es una formula de L(atomica)
2. si es una formula de L entonces es una formula de L3. si y son formulas de L entonces ( ) es una formula
de L4. si es una formula de L y x una variable entonces (x) es
una formula de L5. nada mas es una formula de L
FORM(L) es el conjunto de todas las formulas del lenguaje LPor ejemplo, para L = C F P, con C = {c, d}, F = {f } yP = {R} (f de aridad 3, R binario) son formulas:
R(d , x ) , (x ) R(d , x ) , (x ) R(f (x , x , x ), d)4
Convenciones
I usamos x , y , z , . . . para variablesI usamos a, b, c , d , . . . para smbolos de constanteI usamos f , g , h, . . . para smbolos de funcion (la aridad
siempre va a quedar clara del contexto)
I usamos P,Q,R, . . . para smbolos de predicado (la aridadsiempre va a quedar clara del contexto)
I escribimos (x) en lugar de (x)I escribimos ( ) en lugar de ( )I escribimos ( ) en lugar de ( )I escribimos en lugar de () cuando convenga
5
Variables libres y ligadasI una aparicion de una variable x en una formula esta ligada si
esta dentro del alcance de un cuantificador. En caso contrario,dicha aparicion esta libre.
I una variable esta libre en una formula si todas sus aparicionesestan libres.
I una variable esta ligada en una formula si todas susapariciones estan ligadas.
I una formula es una sentencia si todas las variables son ligadas(es decir, no hay apariciones libres de variables)
Por ejemplo, (para un lenguaje con un smbolo de predicado binario P)I en P(x , y) , x esta libreI en (y) P(x , y) , x esta libreI en (x) P(x , y) , x esta ligadaI en (x)(y) P(x , y) , x esta ligadaI en P(x , y) (x)(y) P(x , y)
I la primera aparicion de x esta libreI la segunda aparicion de x esta ligadaI entonces, x no esta ni libre ni ligada 6
Interpretacion de un lenguaje
Una L-estructura A de un lenguaje L = C F P esI un conjunto A no vaco, se lo llama universo o dominioI las siguientes asignaciones:
I para cada smbolo de constante c C, un elemento fijo
cA AI para cada smbolo de funcion n-aria f F , una funcion
fA : An AI para cada smbolo de predicado n-ario P P, una relacion
PA An
Las funciones fA y predicados PA son siempre totales.
7
Ejemplos
Para L = C F P, con C = {c, d}, F = {f , g} y P = {P}(f unaria, g binaria, P binario)
L-estructura AI A = ZI cA = 0I dA = 1I fA(x) = xI gA(x , y) = x + yI PA(x , y) sii x divide a y
L-estructura BI B = P(N)I cB = I dB = NI fB(x) = xI gB(x , y) = x yI PB(x , y) sii x y
8
No ejemplos
Para L = C F P, con C = {c, d}, F = {f , g} y P = {P}(f unaria, g binaria, P binario)
L-estructura MI M = ZI cM = 0I dM = 1I fM(x) = 1/xI gM(x , y) = xyI PM(x , y) sii x divide a y
en general
I 1/x / ZI xy / Z
L-estructura NI N = funciones R RI cN = funcion identidadI dN = funcion 0I fN (x) = derivada de xI gN (x , y) = x yI PN (x , y) sii x = y
una funcion R R puede noser derivable
9
ValuacionesFijemos una L-estructura A con dominio A.Una valuacion para A es una funcion v : VAR AExtendemos v a v : TERM(L) A, que interpreta un termino ten una L-estructura A:I si t = x (variable) entonces
v(t) = v(x)
I si t = c (constante) entonces
v(t) = cAI si t = f (t1, . . . , tn) (funcion) entonces
v(t) = fA (v(t1), . . . , v(tn))
Sea v una valuacion de A y sea a A. Definimos la valuacionv(x = a) de la siguiente manera
v(x = a) (y) =
{v(y) x 6= ya x = y
10
EjemplosPara L = C F P, con C = {c, d}, F = {f , g} y P = {P}(f unaria, g binaria, P binario)
L-estructura AI A = ZI cA = 0I dA = 1I fA(x) = xI gA(x , y) = x + yI PA(x , y) sii x divide a y
Tenemos
I si v(x) = 2
v(g(x , f (d))
)= 2+(1) = 1
I para cualquier v
v(g(c , f (d))
)= 0+(1) = 1
L-estructura BI B = P(N)I cB = I dB = NI fB(x) = xI gB(x , y) = x yI PB(x , y) sii x y
Tenemos
I si v(x) = {1, 2}
v(g(x , f (d))
)= {1, 2}N = {1, 2}
I para cualquier v
v(g(c , f (d))
)= N =
11
Interpretacion de una formulaSea A una L-estructura con dominio A y v una valuacion de A.Definimos cuando es verdadera en A bajo la valuacion v(notacion: A |= [v ])
1. es de la forma P(t1, . . . , tn) (atomica)
A |= P(t1, . . . , tn)[v ] sii(v(t1), . . . , v(tn)
) PA2. es de la forma
A |= [v ] sii no A |= [v ]3. es de la forma ( )
A |= ( )[v ] sii no A |= [v ] o A |= [v ]4. es de la forma (x)A |= (x)[v ] sii para cualquier a A, A |= [v(x = a)]
12
EjemplosPara L = C F P, con C = {c, d}, F = {f , g} y P = {P}(f unaria, g binaria, P binario)
L-estructura AI A = ZI cA = 0I dA = 1I fA(x) = xI gA(x , y) = x + yI PA(x , y) sii x divide a y
Tenemos
I para v(x) = 1A |= P(x , d)[v ]
I para v(x) = 0A 6|= P(x , c)[v ]
I para cualquier vA 6|= (y)P(y , g(y , d))[v ]
L-estructura BI B = P(N)I cB = I dB = NI fB(x) = xI gB(x , y) = x yI PB(x , y) sii x y
Tenemos
I para v(x) = B |= P(x , d)[v ]
I para v(x) = {1, 2, 3}B 6|= P(x , c)[v ]
I para cualquier vB |= (y)P(y , g(y , d))[v ]
13
Notacion (, , )
Sea A una L-estructura y v una valuacion de A. Se deduce:5. es de la forma ( )
A |= ( )[v ] sii A |= [v ] o A |= [v ]
6. es de la forma ( )
A |= ( )[v ] sii A |= [v ] y A |= [v ]
7. es de la forma (x)
A |= (x)[v ] sii hay un a A tal que A |= [v(x = a)]
14
3 niveles de verdad
Para un lenguaje L fijo.1. es satisfacible si existe una L-estructura A y una valuacion
v de A tal que A |= [v ]
2. es verdadera (o valida) en una L-estructura A (A |= ) siA |= [v ] para toda valuacion v de AI decimos que A es un modelo de
3. es universalmente valida (|= ) si A |= [v ] para todaL-estructura A y toda valuacion v de A
15
EjemplosI A = Z;
Algunos resultados sobre satisfacibilidad y validez
I si es una sentencia, A |= sii A |= [v ]I es universalmente valida sii es insatisfacibleI preservacion de validez del Modus Ponens:
I A |= [v ] y A |= ( )[v ] entonces A |= [v ]I A |= y A |= ( ) entonces A |= I |= y |= ( ) entonces |=
I clausura universalI A |= sii A |= (x)I |= sii |= (x)
17
Consecuencia semantica
Sea FORM(L) y FORM(L)
es consecuencia semantica de ( |= ) si para todaL-estructura A y toda valuacion v de A:
si A |= [v ] entonces A |= [v ]
Notacion:A |= [v ]
significa que para toda ,
A |= [v ]
18
Ejemplos
L = {P,Q}, con P y Q smbolos de predicado 1-arios
I 1 ={
(x)(P(x) Q(x)) }I 1 6|= (x)P(x)I 1 |= (x)P(x) (x)Q(x)I 1 |= (x)P(x) (x)Q(x)
I 2 ={
(x)(P(x) Q(x)) , (x)P(x) }I 2 |= (x)Q(x)I 2 |= (x)(P(x) Q(x))I 2 6|= (x)(P(x) Q(x))
I 3 ={
(x)(P(x) Q(x)) , (x)(P(x) Q(x)) }I 3 |= para cualquier
19
Lenguajes con igualdadL es un lenguaje con igualdad si tiene un smbolo proposicionalbinario especial (el =) que solo se interpreta como la igualdad.
Fijemos un lenguaje L con igualdad y con ningun otro smbolo.Buscamos FORM(L) tal que {A : A |= } sea la clase demodelos
I con exactamente 1 elemento
= (x)(y)x = yI con exactamente 2 elementos
= (x)(y)( x=y x 6= y (z)(z = x z = y))I con al menos 3 elementos
= (x)(y)(z)(x 6= y x 6= z y 6= z)I con infinitos elementos... con finitos elementos. Se podra?
20
Logica y Computabilidad
Verano 2011
Departamento de Computacion - FCEyN - UBA
Logica de Primer Orden - clase 2
Lema de sustitucion, sistema axiomatico SQ, consecuencia sintactica,
teorema de la generalizacion, teorema de la generalizacion en
constantes
1
Reemplazo de variables libres por terminos
Sea L = C F P un lenguaje fijo.
Sea FORM(L), t TERM(L) y x VAR. [x/t] es laformula obtenida a partir de sustituyendo todas las aparicioneslibres de la variable x por t
Por ejemplo, (para un lenguaje con smbolo de predicado binario P ysmbolo de funcion unario f )
I P(x , y)[x/f (z)] = P(f (z), y)
I P(x , y)[x/f (x)] = P(f (x), y)
I((x)(y) P(x , y))[x/f (z)] = (x)(y) P(x , y)
I(P(x , y) (x)(y) P(x , y))[x/f (z)] =
P(f (z), y) (x)(y) P(x , y)
Si c C, [c/t] es la formula obtenida a partir de sustituyendotodas las apariciones de la constante c por t
2
Variable reemplazable por un termino
Sea t TERM(L), x VAR, FORM(L).
Decimos que x es reemplazable por t en cuando
1. t es un termino cerrado (i.e. no tiene variables) o
2. t tiene variables pero ninguna de ellas queda atrapada por uncuantificador en el reemplazo [x/t]
Por ejemplo, (para un lenguaje con smbolo de predicado unario P ysmbolo de funcion binaria f )
En(y)((x)P(x) P(x))
I x es reemplazable por z : (y)((x)P(x) P(z))I x es reemplazable por f (x , z): (y)((x)P(x) P(f (x , z)))I x no es reemplazable por f (x , y): (y)((x)P(x) P(f (x , y)))
3
Lema de Sustitucion
LemaSi x es reemplazable por t en entonces
A |= ([x/t])[v ] sii A |= [v(x = v(t))]
Demostracion.Por induccion en la complejidad de .(a veces escribo v por v)
I = P(u) es atomica (u es termino; el caso n-ario es similar).A |= P(u[x/t])[v ] sii v(u[x/t]) PA sii (lema auxiliar)v [x = v(t)](u) PA sii A |= [v(x = v(t))].
I es de la forma o de la forma . Directo.(sigue )
4
Lema de Sustitucion
Demostracion (cont.)I es de la forma (y) .
Sup. x no aparece libre en . Entonces v y v [x = v(t)] coinciden en todas lasvariables que aparecen libres en . Ademas, = [x/t]. Inmediato.
Sup. x aparece libre en . Como t es reemplazable por x en , y no ocurre en t.Luego para todo d A,
v(t) = v(y = d)(t). (1)
Ademas, t es reemplazable por x en . Como x 6= y ,
[x/t] = ((y) )[x/t] = (y) ([x/t]).Luego
A |= [x/t][v ] sii (def.) para todo d A, A |= [x/t][v(y = d)]sii (HI) para todo d A, A |= [v(y = d)
w
(x = w(t))]
sii (1) para todo d A, A |= [v(y = d)(x = v(t))]sii (x 6= y) para todo d A, A |= [v(x = v(t))(y = d)]sii (def.) A |= [v(x = v(t))] 5
Mecanismo deductivo SQ (para un lenguaje fijo L)
Para un lenguaje fijo LI axiomas. Sean ,, FORM(L), x VAR, t TERM(L)
SQ1 ( )SQ2 ( ( )) (( ) ( ))SQ3 ( ) ( )SQ4 (x) [x/t] si x es reemplazable por t en SQ5 (x) si x no aparece libre en SQ6 (x)( ) ((x) (x))SQ7 si es un axioma entonces (x) tambien es un
axioma
I regla de inferencia
MP Sean , FORM(L). es una consecuenciainmediata de y
6
Consecuencia sintactica, demostraciones, teoremas, teorasFijamos un lenguaje L. Sea FORM(L) y FORM(L)
1. una demostracion de en SQ es una cadena finita y no vaca
1, . . . , n
de formulas de L tal que n = yI i es un axioma oI i es una consecuencia inmediata de k , l , k , l < i
En este caso, decimos que es un teorema (` ).2. es una consecuencia sintactica de ( ` ) si existe una
cadena finita y no vaca
1, . . . , n
de formulas de L tal que n = yI i es un axioma oI i oI i es una consecuencia inmediata de k , l , k , l < i
Aqu, 1, . . . , n se llama derivacion de a partir de . sellama teora. Decimos que es un teorema de la teora . 7
Ejemplo ={
(x)([z/x ])} ` (z) (x no aparece en )1. (z)((x)([z/x ]) ) SQ4+SQ72. (z)((x)([z/x ]) ) ((z)(x)([z/x ]) (z)) SQ63. (z)(x)([z/x ]) (z) MP 1,24. (x)([z/x ]) (z)(x)([z/x ]) SQ55. (x)([z/x ]) 6. (z)(x)([z/x ]) MP 4,57. (z) MP 3,6
Observar
I paso 1: x es reemplazable por z en [z/x ]
I paso 1: [z/x ][x/z ] =
I paso 4: z no aparece libre en (x)([z/x ])8
Correctitud y consistencia
Teorema (Correctitud)
El sistema SQ es correcto, i.e. si ` entonces |= .
Teorema (Consistencia)
El sistema SQ es consistente, i.e. no existe FORM(L) tal que` y `
9
Resultados similares a los de SP
Teorema (de la Deduccion)
Si {} ` entonces `
FORM(L) es consistente si no existe FORM(L) tal que ` y `
Proposicion
1. {} es inconsistente sii ` 2. {} es inconsistente sii `
TeoremaSi es satisfacible, entonces es consistente.
TeoremaSi es inconsistente, entonces existe un subconjunto finito de que es inconsistente.
10
Instancias de esquemas tautologicos
I sea (p1, . . . , pn) una tautologa de P con variablesproposicionales p1, . . . , pn.
I sean 1, . . . , n formulas cualesquiera de primer orden
I (1, . . . , n) es una instancia de un esquema tautologico(reemplazar pi por i en la formula original )
Proposicion
Si es una instancia de un esquema tautologico entonces ` .
Por ejemplo, la formula de P
(p q) pes tautologa. Entonces
` ((x)R(x) (y)Q(y)) (x)R(x)11
Variantes alfabeticasSea L = {0, S} con igualdad y FORM(L) definida como
= x 6= 0 (y)x = S(y)En la variable x es reemplazable por z :
[x/z ] = z 6= 0 (y)z = S(y)Sin embargo, la variable x no es reemplazable por y :
[x/y ] = y 6= 0 (y)y = S(y)No habra habido problemas si la formula original hubiese sido
= x 6= 0 (w)x = S(w) se llama variante alfabetica de
LemaSea FORM(L). Dados x VAR y t TERM(L) podemosencontrar (variante alfabetica de ) tal queI {} ` y {} ` I x es reemplazable por t en
12
Teorema de Generalizacion (TG)
TeoremaSi ` y x no aparece libre en ninguna formula de , entonces ` (x)
Observar que es necesario pedir que x no aparezca libre en ningunaformula de :
I {R(x)} 6|= (x)R(x)I entonces {R(x)} 6` (x)R(x) (por correctitud)
Demostracion del teorema.Planteo
P(n) = para toda , y x tal que ` y x no aparecelibre en ninguna formula de , si 1, . . . , n es unaderivacion de a partir de entonces ` (x)
Demostracion por induccion en n (detalles a continuacion).13
Demostracion del TG (caso base)P(n) = para toda , y x tal que ` y x no aparecelibre en ninguna formula de , si 1, . . . , n es unaderivacion de a partir de entonces ` (x)
Probamos P(1):
I sea , y x tal que x no aparece libre en
I sea una derivacion de a partir de
I queremos ver que ` (x)Hay 2 posibilidades:
1. es axioma de SQSQ7 ` (x) ` (x)
2. entoncesI ` I por hipotesis x no aparece libre en I por SQ5, ` (x)I por MP, ` (x)
14
Demostracion del TG (paso inductivo)P(n) = para toda , y x tal que ` y x no aparecelibre en ninguna formula de , si 1, . . . , n es unaderivacion de a partir de entonces ` (x)
Probamos P(n):
I sea , y x tal que x no aparece libre en I sea 1, . . . , n una derivacion de a partir de I queremos ver que ` (x)I HI: vale P(m) para todo m < n
Hay 3 posibilidades:
1 y 2. es axioma de SQ o : igual que en caso base.3. se obtiene por MP de i y j (i , j < n):
supongamos que j = i . Usamos HI 2 veces:I como i < n, vale P(i), en particular, ` (x)iI como j < n, vale P(j), en particular, ` (x)(i )
por SQ6, ` (x)(i ) ((x)i (x))usando MP 2 veces, ` (x) 15
Teorema de Generalizacion en Constantes (TGC)
TeoremaSupongamos que ` y c es un smbolo de constante que noaparece en . Entonces existe una variable x que no aparece en tal que ` (x)([c/x ]). Mas aun, hay una derivacion de(x)([c/x ]) a partir de en donde c no aparece.Idea de la demostracion.Sea 1, . . . , n una derivacion de a partir de .Sea x la primera variable que no aparece en ninguna de las i .
1. demostrar que 1[c/x ], . . . , n[c/x ]
1.1 es una derivacion de [c/x ] a partir de (por induccion en n)1.2 no contiene al smbolo de constante c
2. hay un finito tal que ` [c/x ] con derivacion que nousa c y tal que x no aparece libre en ninguna formula de
2.1 es el conjunto de axiomas de que se usan en 1, . . . , n
3. por el TG, ` (x)([c/x ]) con derivacion que no usa c16
Consecuencias del TGC
CorolarioSupongamos que ` [z/c] y c es un smbolo de constante queno aparece en ni en . Entonces ` (z). Mas aun, hay unaderivacion de (z) a partir de en donde c no aparece.Demostracion.
I por el TGC, existe x tal queI x no aparece en [z/c]I ` (x)([z/c][c/x ])I en esta ultima derivacion no aparece c
I como c no aparece en , [z/c][c/x ] = [z/x ]
I entonces ` (x)([z/x ])I sabemos ` (x)([z/x ]) (z)
(aplicar el Teorema de la Deduccion a derivacion de hoja 8)
I por MP concluimos ` (z)I en esta ultima derivacion no aparece c
17
Lenguajes con igualdad
Fijamos un lenguaje L con igualdad.Para los lenguajes con igualdad, se considera el sistema SQ= conlos axiomas y regla de inferencia de SQ, sumando estos dosaxiomas
I axiomas adicionales para SQ=. Sean , FORM(L),x , y VAR
SQ=1 x = xSQ=2 x = y ( ) donde es atomica y se
obtiene de reemplazando x por y en cero omas lugares
Se puede probar que
I SQ= es consistente
I Si hay una derivacion de en SQ= entonces es verdaderaen toda L-estructura en donde el = se interpreta como laigualdad
18
Notas sobre computabilidadFijemos un lenguaje numerable L. Se pueden codificar las formulasde FORM(L) con numeros naturales.Igual que para la logica proposicional:
I es computable la funcion
demL(x) =
{1 x es una demostracion valida en SQ para L0 si no
I considerar el siguiente programa P:
[A] IF demL(D) = 1 D[|D|] = X GOTO ED D + 1GOTO A
I es teorema de SQ para L sii # domPI el conjunto de teoremas del sistema SQ para L es c.e.I sera el conjunto de teoremas de SQ para L computable?
19
Logica y Computabilidad
Verano 2011
Departamento de Computacion - FCEyN - UBA
Logica de Primer Orden - clase 3
Completitud de SQ, compacidad
1
Consistente satisfacibleSea L un lenguaje fijo. Sea FORM(L) consistente. Queremosconstruir un modelo canonico B y una valuacion v de B tal que:
B |= [v ] para toda
Demostracion en 5 pasos:
Paso 1. expandir L a L con nuevas constantes. L = L C. En C hayuna cantidad infinita numerable de nuevas constantes(nuevas porque no aparecen en L)
Paso 2. agregar testigos a . Trabajamos con , donde es unconjunto de formulas especiales que usan las constantesnuevas de L
Paso 3. aplicar el Lema de Lindenbaum para . Obtener maximal consistente
Paso 4. construir el modelo canonico A y valuacion v (para ellenguaje L) tal que A |= [v ] sii
Paso 5. restringir A y v al lenguaje original L y obtener B2
Paso 1: expandir de L a L con nuevas constantesTeoremaSea FORM(L) consistente. Sea C un conjunto de nuevasconstantes que no aparecen en L. Si L = L C entonces esconsistente en el lenguaje L.Demostracion.I supongamos inconsistente en el nuevo lenguaje L. Entonces
existe FORM(L) tal que ` y ` I cada una de estas derivaciones usa formulas en FORM(L),
pero aparecen solo finitas constantes nuevas
I por el TGC, cada constante nueva utilizada (por hipotesis noaparece en ) puede reemplazarse por una variable nueva
I obtenemos una derivacion de
` [c1, . . . , cn/x1, . . . , xn] y ` [c1, . . . , cn/x1, . . . , xn]en el lenguaje original L (ci son nuevas constantes; xi sonnuevas variables)
I entonces es inconsistente en el lenguaje L 3
Paso 2: agregar testigos a Sean y C como en el paso 1. Sea
1, x1, 2, x2, . . .una enumeracion de FORM(L) VARDefinimos
n = (xn)n (n[xn/cn])donde cn es la primera constante de C queI no aparece en n yI no aparece en 1, . . . , n1
Definimos = {1, 2, . . . }
Teorema FORM(L) es consistente.Observar que agrega testigos a . Si ocurre (x) entonceshay una constante c que atestigua que no vale para todo x , i.e.([x/c])
4
Demostracion del paso 2Supongamos consistente. Recordemos que = {1, 2, . . . }I supongamos inconsistenteI debe existir i tal que {1, . . . , i+1} es inconsistenteI sea n el mnimo tal i y sea = {1, . . . , n+1}I observar que {1, . . . , n} es consistenteI {1, . . . , n} `
((x) ([x/c])) n+1
donde c no aparece en {1, . . . , n} ni en I las siguientes son instancias de esquemas tautologicos:
I n+1 (x)I n+1 ([x/c])
I por lo tantoI ` n+1 (x) MP {1, . . . , n} ` (x)I ` n+1 ([x/c]) MP {1, . . . , n} ` [x/c]
I por el corolario del TGC, {1, . . . , n} ` (x)(notar que c no aparece en {1, . . . , n} ni en )
I entonces {1, . . . , n} es inconsistente5
Paso 3: Lema de Lindenbaum para
TeoremaSean y como en los pasos 1 y 2. Existe un conjunto tal que es maximal consistente.Demostracion.Igual que para el caso proposicional.
Como en el caso proposicional, para toda FORM(L)I o bien I sii `
6
Paso 4: construccion del modelo canonico ADefinimos el modelo canonico A:I A = TERM(L)I para cada smbolo de funcion n-aria f L,
fA(t1, . . . , tn An
) = f (t1, . . . , tn) A
I para cada smbolo de constante c L,
cA = c A
I para cada smbolo de predicado n-ario P L,(t1, . . . , tn
) An
PA sii P(t1, . . . , tn)
7
Paso 4: definicion de la valuacion v
Definimos la valuacion v : VAR TERM(L) A
como
v(x) = x
LemaPara todo t TERM(L), v(t) = t.Demostracion.Por induccion en la complejidad de t (facil).
TeoremaPara toda FORM(L), A |= [v ] sii .Demostracion.Por induccion en la complejidad de (detalles a continuacion).
8
Paso 4: A |= [v ] sii (caso base)
Si es una formula atomica P(t1, . . . , tn):
A |= P(t1, . . . , tn)[v ] sii(v(t1), . . . , v(tn)
) PAsii
(t1, . . . , tn
) PA pues v(t) = tsii P(t1, . . . , tn) por def. de A
9
Paso 4: A |= [v ] sii (paso inductivo; = )
A |= [v ] sii A 6|= [v ]sii / por HIsii por propiedad de
10
Paso 4: A |= [v ] sii (paso inductivo; = )
A |= [v ] sii A 6|= [v ] o A |= [v ]sii / o por HIsii o por propiedad de ` (ejercicio) por propiedad de
/ o ( y ` ) MP en 2do caso / o ( y ) por propiedad de / o sii A 6|= [v ] o A |= [v ] por HIsii A |= [v ]
11
Paso 4: A |= [v ] sii (paso inductivo () ; = (x))I supongamos A |= (x)[v ]I para todo t A, A |= [v(x = t)]I supongamos (x) ([x/c]) I en particular, A |= [v(x = c)]I por definicion de v , A |= [v(x = v(c))]I por el Lema de Sustitucion, A |= ([x/c])[v ]I por HI, [x/c] I por propiedad de , ([x/c]) / I veamos que (x) / :
I supongamos que (x) I ` (x)I como , (x) ([x/c]) I ` (x) ([x/c])I por MP tenemos ` ([x/c])I por propiedad de , ([x/c])
I concluimos (x) 12
Paso 4: A |= [v ] sii (paso inductivo () ; = (x))I supongamos A 6|= [v ]I existe t A, A 6|= [v(x = t)]I sea una variante alfabetica de tal que x sea reemplazable
por t en )I A 6|= [v(x = t)]I como v(t) = t, A 6|= [v(x = v(t))]I por el Lema de Sustitucion A 6|= ([x/t])[v ]I por HI, [x/t] / I veamos que (x) / :
I supongamos que (x) I ` (x)I sabemos ` (x) [x/t] por SQ4I por MP concluimos ` [x/t]I por propiedad de , [x/t]
I por equivalencia de variantes alfabeticas, (x) / 13
Paso 5: restringir A y v al lenguaje original LVolvemos al lenguaje original L.
Definimos B como la restriccion de A a L.
Del paso 4 sabemos que para toda FORM(L),A |= [v ] sii .
Obviamente, si FORM(L) tenemos
A |= [v ] sii B |= [v ]
Luego, para consistente, encontramos una L-estructura B tal queB |= [v ] para toda
Concluimos que es satisfacible.
14
Teorema de Lowenheim-Skolem
Corolario es consistente sii es satisfacible
Teorema (sin igualdad)
Sea L numerable y sin igualdad. Si FORM(L) es satisfacible,es satisfacible en un modelo infinito numerable.
Demostracion.Es lo que acabamos de ver. Si L es numerable, A = FORM(L) esinfinito numerable.
Teorema (con igualdad)
Sea L numerable y con igualdad. Si FORM(L) es satisfacible,es satisfacible en un modelo finito o infinito numerable.
Se puede probar algo mas fuerte
Teorema (ascendente)
Si L es numerable y FORM(L) tiene modelo infinito, tienemodelo de cualquier cardinalidad. 15
Completitud y Compacidad
Teorema (Completitud fuerte, Godel)
Si |= entonces ` .Demostracion.Igual que para proposicional
Corolario |= sii ` .Teorema (Compacidad)
Sea FORM(L). Si todo finito, es satisfacible,entonces es satisfacible.
Demostracion.Igual que para proposicional
16
Logica y Computabilidad
Verano 2011
Departamento de Computacion - FCEyN - UBA
Logica de Primer Orden - clase 4
Aplicaciones de compacidad, indecidibilidad de la logica de primer
orden
1
Aplicaciones de Compacidad - no expresividad
TeoremaSi tiene modelos arbitrariamente grandes, tiene modelo infinito.
Demostracion.Definimos (en el lenguaje con solo la igualdad)
2 = (x)(y)x 6= y3 = (x)(y)(z)(x 6= y x 6= z y 6= z)
...
n = hay al menos n elementos
I por hipotesis, todo subconjunto finito de {i | i 2} tienemodelo
I por Compacidad, {i | i 2} tiene algun modelo MI M tiene que ser infinito
Conclusion:
I A es infinito sii A |= {i | i 2}I no existe tal que A es finito sii A |= 2
Aplicaciones de Compacidad - modelos no estandarConsideremos un lenguaje L = {0, S ,
Modelo de computo de maquina de Turing
Recordar que la maquina
M = (,Q,T , q0, qf )
con entrada w {1}+ termina (notado M(w) ) sii partiendo dew en la cinta de entrada y la cabeza leyendo el primer caracterdespues de w ,
. . . 1 1 . . . 1 . . .q0
llega al estado qf despues de una cantidad finita de pasos.
No es computable determinar si una maquina de Turing termina ono.
5
Idea de la demostracion de que Primer Orden es indecidibleI fijar un lenguaje adecuado LI dada una maquina M y w {1}+, construir (uniformemente)
una sentencia M,w FORM(L) tal queM(w) sii ` M,w
I si el problema de determinar si vale ` o 6` para FORM(L) fuese computable, en particular seracomputable determinar si ` M,w o 6` M,w para cualquiermaquina M y entrada w .
I como esto ultimo es no-computable, tampoco es computabledeterminar si vale ` o 6` para cualquier FORM(L)
Dados M y w , quien es M,w?I una formula de L que se construye computablemente a partir
de M y wI M,w describe el comportamiento de M con entrada w en una
cierta interpretacion AI M,w es una formula-programa
6
El lenguaje LI smbolos de constante:
I uno solo:
I smbolos de funcion:I la funcion 1 unariaI la funcion * unaria
I smbolos de relacion:I infinitos (tantas como necesitemos) smbolos de relaciones
binariasI sea E = {q0, qf , p, q, r , . . . } un conjunto infinito de estados
que podemos llegar a usar en maquinas de TuringI cada maquina particular usara solo una cantidad finita de
estados de E
I los smbolos des relacion son:
Rq0 ,Rqf ,Rp,Rq,Rr , . . .
7
Notacion de los terminos de L
I si t es un termino de L, 1(t) lo notamos 1tI si t es un termino de L, (t) lo notamos t
Por ejemplo
I 1(x) lo notamos 1x
I 1(1()) lo notamos 11
I 1(1((1(y)))) lo notamos 11 1y
8
La interpretacion ADada una maquina
M = (,Q,T , q0, qf )
y una entrada w {1}+, fijamos una interpretacion A = AM,wI el universo: A = {1, } = cadenas finitas sobre {1, }
I va a representar datos en la cinta de MI A = cadena vaca
I la cinta es infinita, pero infinitos se representan como I las funciones
1A : A A y A : A Ase interpretan as:
I 1A(x) = 1x , o sea la cadena que empieza por 1 y sigue con xI A(x) = x , o sea la cadena que empieza por y sigue con x
I para q Q, (Rq)A(x , y) es verdadero sii la maquina M conentrada w llega a una configuracion en la que:
I el estado es qI en la cinta esta escrito x en orden inverso y a continuacion yI la cabeza de M apunta al primer caracter de y
9
Definicion de la formula-programa M,wDada una maquina
M = (,Q,T , q0, qf )
y una entrada
w =
k 1 . . . 1
fijamos la interpretacion A = AM,w que acabamos de ver.
I 0 := Rq0(
k 1 . . . 1 , )
I dice: el estado inicial es alcanzableI A |= 0
I f := (x)(y) Rqf (x , y)I dice: el estado final es alzanzable I A |= f sii M(w)
10
Definicion de la formula-programa M,w
Para cada instruccion I T :
I si I dice si M esta en el estado q y lee un 1, escribir b y pasaral estado r, definir
I := (x)(y) (Rq(x , 1y) Rr (x , by))
I si I dice si M esta en el estado q y lee un , escribir b y pasaral estado r, definir
I := (x)(y) (Rq(x , y) Rr (x , by)) (x) (Rq(x , ) Rr (x , b))
11
Definicion de la formula-programa M,w
I si I dice si M esta en el estado q y lee un 1, moverse a laizquierda y pasar al estado r, definir
I := (x)(y) (Rq(1x , 1y) Rr (x , 11y)) (x)(y) (Rq(x , 1y) Rr (x , 1y)) (y) (Rq(, 1y) Rr (, 1y))
I si I dice si M esta en el estado q y lee un moverse a laizquierda y pasar al estado r, definir
I := (x)(y) (Rq(1x , y) Rr (x , 1 y)) (x)(y) (Rq(x , y) Rr (x , y)) (y) (Rq(, y) Rr (, y)) (Rq(, ) Rr (, ))
(Misma idea con moverse a la derecha...)
12
Definicion de la formula-programa M,wRecordar que la maquina
M = (,Q,T , q0, qf )
tiene siempre un conjunto finito de instrucciones T
Definimos
M,w := (Rq0(wn, . . .w1, ) 0
IT
I ) (x)(y) Rqf (x , y) f
Proposicion
Si A |= M,w sii M(w) .Demostracion.Sabemos que A |= 0. Sabemos que A |= f sii M(w) . Es facilver que A |= I para cada I T .Luego A |= M,w sii A |= f sii M(w) .
13
EntscheidungsproblemTeorema` M,w sii M(w) .Demostracion.() Si ` M,w entonces |= M,w , es decir, M,w es verdadera entoda interpretacion. En particular, A |= M,w . Luego M(w) .() Idea. Si M(w) entonces existe un computo de M(w):
(x1, r1, y1) (x2, r2, y2) (xn, rn, yn)con xi , yi {1, },ri Q, x1 = w , r1 = q0, y1 = , rn = qf .Cada (xi , ri , yi ) representa una configuracion del computo M(w):I el estado es riI la cinta contiene [ xi ][ yi ] I la cabeza esta apuntando al primer caracter de yi
Cada paso de la ejecucion coincide con una sustitucion de una delas formulas I .
I computo de M(w) = demostracion de M,wI formula M,w = programa de M 14
Entscheidungsproblem
Teorema (Turing, 1936)
Sea L el lenguaje descripto y sea FORM(L). El problema dedecidir si ` o 6` no es computable.Demostracion.Supongamos que hay un programa que dada FORM(L)devuelve verdadero sii ` .Dada M y w , habra un procedimiento para decidir si M(w) oM(w) :
1. construir M,w (esto se hace computablemente)
2. si ` M,w entonces M(w) ; si no M(w)
15
Logica y Computabilidad
Verano 2011
Departamento de Computacion - FCEyN - UBA
Logica de Primer Orden - clase 5
Teorema de incompletitud de Godel
1
Artimetica de PeanoLenguaje L = {0, S ,+, } con igualdad.I axiomas (para x , y VAR, FORM(L) con variable libre x)
S1. 0 6= S(x)S2. S(x) = S(y) x = yS3. x + 0 = xS4. x + S(y) = S(x + y)S5. x 0 = 0S6. x S(y) = (x y) + xS7.
([x/0] (x)( [x/S(x)])) (x)
I definimos la teora S :
S ={ : es instanciacion de alguno de estos 7 esquemas
}Sea N = N; 0, S ,+, el modelo estandar de los naturales.I querramos capturar todas las verdades de N con los teoremas
de S (en el sistema SQ=)I querramos N |= sii S ` I se puede ver que N |= S ` 2
Notacion (solo para esta clase)
I notamos (x1, . . . , xn) a una formula que tiene variables libresx1, . . . , xn
I sea (x1, . . . , xn) y sean t1, . . . , tn terminos
(t1, . . . , tn) representa [x1, . . . , xn/t1, . . . , tn]
I notacion para los numerales:
1 = S(0)
2 = S(S(0))...
n = S(. . . S n veces
(0) . . . )
Por ejemplo,I (x) = (y)y + 2 = xI (3) = (y)y + 2 = 3
3
Aritmetizacion de formulas
( ) = 0 S + x1 x2 x3 . . .1 2 3 4 5 6 7 8 9 10 11 12 13 . . .
Por ejemplo,
( x1 ) S ( x1 ) = x12 3 5 7 11 13 17 19 23 29 311 5 11 2 3 8 1 11 2 6 1321 35 511 72 113 138 171 1911 232 296 3113
I toda formula de L se representa con un numero natural (sellama numero de Godel de la formula)
I de la misma manera, toda demostracion en S se representacon un numero natural (se llama numero de Godel de lademostracion)
4
Resultados previos
TeoremaLos siguientes predicados son primitivos recursivos
I var(x): x es el numero de Godel de una expresion que consistede una variable
I term(x): x es el numero de Godel de una expresion queconsiste de un termino
I form(x): x es el numero de Godel de una formula deFORM(L)
I axSQi (x): x es el numero de Godel de una instanciacion deli -esimo axioma de SQ=
I axSi (x): x es el numero de Godel de una instanciacion deli -esimo axioma de S
I MP(x , y , z): z es el numero de Godel de una expresion queresulta de MP de las expresiones con numero de Godel x e y
I dem(x) = x es el numero de Godel de una demostracion de S5
Funciones expresables en S
Una relacion R : Nn N es expresable en S si existe una formula con (unicas) variables libres x1, . . . , xn tal que para todok1, . . . , kn N:I si R(k1, . . . , kn) es verdadero en N entonces
S ` (k1, . . . , kn)I si R(k1, . . . , kn) es falso en N entonces
S ` (k1, . . . , kn)
TeoremaToda relacion computable es expresable en S.
6
Consistencia y -consistencia
Sea FORM(L)
es consistente si no existe FORM(L) tal que ` y `
es -consistente cuando
si ` (n) para todo n, entonces 6` (x)(x)
Proposicion
Si es -consistente entonces es consistente.
Una teora es completa si para toda sentencia , ` o `
7
La formula de Godel
W (e, y) : e es el numero de Godel de una formula con una unica variable libre x1 y ademasy es el numero de Godel de una demostracion en S de (e)
El predicado W : N2 {0, 1} es primitivo recursivo, luego esexpresable en S por una formula W(x1, x2). Consideremos(x1) = (x2)W(x1, x2)
= la formula con numero de Godel x1 instanciada en x1
no es demostrable en S
Sea m el numero de Godel de (x1). Consideremos
(m) = (x2)W(m, x2)= la formula con numero de Godel m instanciada en m
no es demostrable en S
= (m) no es demostrable en S
= yo no soy demostrable en S
8
Teorema de incompletitud de Godel (1931)Recordemos que m es el numero de Godel de
(x1) = (x2)W(x1, x2)
Teorema
1. si S es consistente, S 6` (m)2. si S es -consistente, S 6` (m)
}si S es -consistente, es incompleto
Demostracion.
1. Sup. S ` (x2)W(m, x2)I sea k el numero de Godel de
alguna demostracion en SI W (m, k) es verdaderoI S ` W(m, k)I como S ` (x2)W(m, x2)
por SQ4, S ` W(m, k)I S es inconsistente
2. Sup. S ` (x2)W(m, x2)I como S es consistente,
S 6` (x2)W(m, x2)I W (m, k) es falso para todo kI S ` W(m, k) para todo kI como S es -consistente,
S 6` (x2)W(m, x2)I S 6` (x2)W(m, x2)I S 6` (m)
Decimos que (m) es independiente9
Formulas verdaderas en N pero no demostrables en SRecordemos que m es el numero de Godel de
(x1) = (x2)W(x1, x2)de modo que
(m) = (x2)W(m, x2)= (m) no es demostrable en S
I si (m) fuese falsa en N (i.e. N 6|= (m)), (m) serademostrable en S , pero acabamos de ver que esto no es as
I entonces (m) es verdadera en N , pero no demostrable en S :N |= (m) y S 6` (m)
I esto no contradice el teorema de completitud:
S 6|= (m) hay un modelo de S
en donde (m) es falsa
sii S 6` (m)
10
Teorema de Godel-Rosser (1936)
TeoremaSi S es consistente, es incompleta.
Una teora es recursivamente axiomatizable si existe una teora
tal que x ? es computable y ` sii `
CorolarioCualquier teora recursivamente axiomatizable que extiende a S esincompleta.
11
Teoras completas para N
Sin embargo, es posible dar teoras completas que capturen todaslas verdades de N
Para L = {0, S ,+, } con igualdad, existe FORM(L) tal que ` sii N |= :I = { : N |= }
es completa, pero no es decidible.
12
Aritmetica de Presburger (1929)
Lenguaje L = {0, S ,+} con igualdad. Sin
I axiomas (como S pero sin S5 ni S6):
S1. 0 6= S(x)S2. S(x) = S(y) x = yS3. x + 0 = xS4. x + S(y) = S(x + y)S7.
([x/0] (x)( [x/S(x)])) (x)
I definimos la teora P:
P ={ : es instanciacion de alguno de estos 5 esquemas
}I P es completa
I P es decidible
13
Recommended