apuntes lógica proposicionalk

32
ogica y Computabilidad Verano 2011 Departamento de Computaci´ on - FCEyN - UBA ogica Proposicional - clase 1 Lenguaje de l´ ogica proposicional, sem´ antica, tautolog´ ıa, consecuencia sem´ antica, conjunto satisfacible, sistema axiom´ atico SP , consecuencia sint´ actica 1 El lenguaje P I ımbolos p 0 ¬ ( ) I p, p 0 , p 00 , p 000 ,... son ımbolos proposicionales I ormulas 1. todo s´ ımbolo proposicional es una f´ ormula 2. si ϕ es una f´ ormula entonces ¬ϕ es una f´ ormula 3. si ϕ y ψ son f´ ormulas entonces (ϕ ψ) es una f´ ormula 4. nada m´ as es una f´ ormula I convenciones I escribimos q por p 0 r por p 00 s por p 000 ... 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 s´ ımbolos proposicionales I llamamos FORM al conjunto de todas las f´ ormulas 2 Sem´ antica Una interpretaci´ on es una funci´ on v : PROP →{0, 1} A v tambi´ en se la llama valuaci´ on. Definimos la noci´ on de verdad de una f´ ormula para una valuaci´ on. Si ϕ FORM y v es una valuaci´ on, notamos I v | = ϕ si ϕ es verdadera para v I v 6| = ϕ si ϕ es falsa para v La definici´ on de | = es recursiva: 1. si p PROP, v | = p sii v (p)=1 2. v | = ¬ψ sii v 6| = ψ 3. v | =(ψ ρ) sii v 6| = ψ o v | = ρ 3 Sem´ antica Observar que, por la convenci´ on, 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| = ¬p I v 6| =(p q) 4

Upload: omaar-mustaine-rattlehead

Post on 16-Dec-2015

13 views

Category:

Documents


0 download

DESCRIPTION

k

TRANSCRIPT

  • 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