7.8 Modelo matematico del valor de verdad de una formula

En esta seccion daremos una definicion matematica que modeliza la idea intuitiva de cuando una formula de tipo τ es verdadera en una estructura dada para una asignacion de elementos a las variables libres de dicha formula. Esto corresponde al punto (2) del Programa de Logica Matematica.

7.8.1 El valor de un termino en una estructura

Sea A=(A,i) una estructura de tipo τ. Una asignacion de A sera un elemento de AN={infinituplas de elementos de A}. Si a=(a1,a2,...) es una asignacion, entonces diremos que aj es el valor que a le asigna a la variable xj.

Dada una estructura A de tipo τ, un termino tTτ y una asignacion a=(a1,a2,...)AN definamos recursivamente tA[a] de la siguiente manera

  1. (1) Si t=xiVar, entonces tA[a]=ai

  2. (2) Si t=cC, entonces tA[a]=i(c)

  3. (3) Si t=f(t1,...,tn), con fFn,n1 y t1,...,tnTτ, entonces tA[a]=i(f)(t1A[a],...,tnA[a])

El elemento tA[a] sera llamado el valor de t en la estructura A para la asignacion a.

Veamos un ejemplo. Sea τ el tipo ({uno,doli},{MAS,P},{Her},{(MAS,4),(P,1),(Her,3)}) y sea A=(A,i) la estructura de tipo τ con universo A=R y

  1. - i(uno)=9

  2. - i(doli)=0

  3. - i(MAS) igual a la operacion R4R(x,y,z,w)2x+4y

  4. - i(P) igual a la operacion RRx5x

  5. - i(Her)={(x,y,z)R3:x.y.z=9}

Sea a=(1,2,3,4,5,...). Claramente a es una asignacion de A. Se tiene que:

  1. Si t=X554, entonces tA[a]=X554A[a]=554 (por (1) de la definicion recursiva de tA[a])

  2. Si t=uno, entonces tA[a]=unoA[a]=9 (por (2) de la definicion recursiva de tA[a])

  3. Si t=P(X3), entonces tA[a]=P(X3)A[a]=i(P)(X3A[a]) (por (3) de la definicion de tA[a])=i(P)(3)=53=125

  4. Si t=MAS(X1,uno,X3,X554), entonces tA[a]=MAS(X1,uno,X3,X554)A[a]=i(MAS)(X1A[a],unoA[a],X3A[a],X554A[a])=i(MAS)(1,9,3,554)=2.1+4.9=38

7.14. Sea A una estructura de tipo τ y sea tTτ. Supongamos que a,b son asignaciones tales que ai=bi, cada vez que xi ocurra en t. Entonces tA[a]=tA[b].

Proof. Sea

  1. - Teok: El lema vale para tTkτ.

Teo0 es facil de probar. Veamos TeokTeok+1. Supongamos tTk+1τTkτ y sean a,b asignaciones tales que ai=bi, cada vez que xi ocurra en t. Notese que t=f(t1,...,tn), con fFn,n1 y t1,...,tnTkτ. Notese que para cada j=1,...,n, tenemos que ai=bi, cada vez que xi ocurra en tj, lo cual por Teok nos dice que tjA[a]=tjA[b]j=1,...,n Se tiene entonces que tA[a]=i(f)(t1A[a],...,tnA[a]) (por def de tA[a])=i(f)(t1A[b],...,tnA[b])=tA[b] (por def de tA[b])   


7.8.2 La relacion

Fijemos un tipo τ. A continuacion definiremos matematicamente una relacion "Aφ[a]", donde A es una estructura de tipo τ, a es una asignacion de A y φFτ. Intuitivamente hablando Aφ[a] significara que la formula φ es verdadera en la estructura A cuando le asignamos a las variables libres de φ los valores que asigna a. Escribiremos Aφ[a] para expresar que no se da Aφ[a]. Nuestra definicion matematica sera recursiva y mas abajo explicaremos por que la definicion es precisa o rigurosa matematicamente hablando. Dada una estructura A de tipo τ, una asignacion aAN y aA, con ia(a) denotaremos la asignacion que resulta de reemplazar en a el i-esimo elemento por a. Ahora si la definicion recursiva:

  1. (1) Si φ=(ts), entonces

    1. - Aφ[a] si y solo si tA[a]=sA[a]

  2. (2) Si φ=r(t1,...,tm), entonces

    1. - Aφ[a] si y solo si (t1A[a],...,tmA[a])i(r)

  3. (3) Si φ=(φ1φ2), entonces

    1. - Aφ[a] si y solo si Aφ1[a] y Aφ2[a]

  4. (4) Si φ=(φ1φ2), entonces

    1. - Aφ[a] si y solo si Aφ1[a] o Aφ2[a]

  5. (5) Si φ=(φ1φ2), entonces

    1. - Aφ[a] si y solo si Aφ1[a] o Aφ2[a]

  6. (6) Si φ=(φ1φ2), entonces

    1. - Aφ[a] si y solo si ya sea se dan Aφ1[a] y Aφ2[a] o se dan Aφ1[a] y Aφ2[a]

  7. (7) Si φ=¬φ1, entonces

    1. - Aφ[a] si y solo si Aφ1[a]

  8. (8) Si φ=xiφ1, entonces

    1. - Aφ[a] si y solo si para cada aA, se da que Aφ1[ia(a)]

  9. (9) Si φ=xiφ1, entonces

    1. - Aφ[a] si y solo si hay un aA tal que Aφ1[ia(a)]

Para ver que la definicion de la relacion “Aφ[a]" es correcta, notemos que en (1) y (2) se dice cuando se da Aφ[a] y cuando no se da Aφ[a] para el caso en que φ es atomica, es decir el caso en que φF0τ. Las siguientes clausulas nos aseguran que si ya esta definido cuando se da Aφ[a] y cuando no se da Aφ[a] para el caso en que φFkτ, entonces tambien queda definido cuando se da Aφ[a] y cuando no se da Aφ[a] para el caso en que φFk+1τ. De esta forma comensando desde la capa 0 vemos que se va determinando para todas las formulas de las distintas capas cuando vale y cuando no vale la relacion Aφ[a].

Cuando se de Aφ[a] diremos que la estructura A satisface φ en la asignacion a y en tal caso diremos que φ es verdadera en A para la asignacion a. Cuando no se de Aφ[a] diremos que la estructura A no satisface φ en la asignacion a y en tal caso diremos que φ es falsa en A para la asignacion a. Tambien hablaremos del valor de verdad de φ en A para la asignacion a el cual sera igual a 1 si se da Aφ[a] y 0 en caso contrario.

Veamos algunos ejemplos. Sea τ el tipo ({uno,doli},{MAS,P},{Her},{(MAS,4),(P,1),(Her,3)}) y sea A=(A,i) la estructura de tipo τ con universo A=R y

  1. - i(uno)=9

  2. - i(doli)=0

  3. - i(MAS) igual a la operacion R4R(x,y,z,w)2x+4y

  4. - i(P) igual a la operacion RRx5x

  5. - i(Her)={(x,y,z)R3:x.y.z=9}

Sea a=(1,2,3,4,5,...). Claramente a es una asignacion de A. Consideremos los siguientes ejemplos:

  1. (E1) Si φ=(MAS(X1,uno,X3,X554)P(X3)), entonces ya que

    1. MAS(X1,uno,X3,X554)A[a]=38

    2. P(X3)A[a]=125

    tenemos que (1) de la definicion nos dice que Aφ[a] si y solo si 38=125 por lo cual se saca que Aφ[a].

  2. (E2) Si φ=¬Her(P(P(X6)),X3,doli), entonces ya que

    1. - P(P(X6))A[a]=5(56)

    2. - X3A[a]=3

    3. - doliA[a]=0

    tenemos que (7) de la definicion nos dice que Aφ[a] si y solo si AHer(P(P(X6)),X3,doli)[a]. Pero (2) de la definicion nos dice que AHer(P(P(X6)),X3,doli)[a] si y solo si (5(56),3,0)i(Her) ya que no se da que (5(56),3,0)i(Her), tenemos que AHer(P(P(X6)),X3,doli)[a] lo cual nos dice que Aφ[a].

  3. (E3) Si φ=X3Her(X6,X3,uno), entonces por (9) de la definicion tenemos que

    1. - Aφ[a] sii hay un rR tal que AHer(X6,X3,uno)[3r(a)]

    es decir que

    1. - Aφ[a] sii hay un rR tal que AHer(X6,X3,uno)[(1,2,r,4,5,6,...)]

    Pero (2) de la definicion nos dice que cualquiera sea rR se tiene que

    1. - AHer(X6,X3,uno)[(1,2,r,4,5,6,...)] sii (6,r,9)i(Her)

    O sea que obtenemos finalmente que

    1. - Aφ[a] sii hay un rR tal que 6.r.9=9

    Lo cual claramente implica que Aφ[a] ya que podemos tomar r=1/6.

  4. (E4) Si φ=X3((X4X3)X6Her(X6,X3,uno)), entonces por (8) de la definicion tenemos que

    1. - Aφ[a] sii para cada rR se da que A((X4X3)X6Her(X6,X3,uno))[3r(a)]

    es decir que

    1. - Aφ[a] sii para cada rR se da que A((X4X3)X6Her(X6,X3,uno))[(1,2,r,4,5,6,...)]

    Pero entonces (5) de la definicion nos dice que

    1. - Aφ[a] sii para cada rR se da que A(X4X3)[(1,2,r,4,5,6,...)] o AX6Her(X6,X3,uno))[(1,2,r,4,5,6,...)] O sea que

    2. - Aφ[a] sii para cada rR se da que r4 o AX6Her(X6,X3,uno))[(1,2,r,4,5,6,...)] Es decir que debemos ver cuando se da que AX6Her(X6,X3,uno))[(1,2,r,4,5,6,...)]. Por (9) y (2) de la definicion tenemos que cualquiera sea el rR se da que

    3. - AX6Her(X6,X3,uno))[(1,2,r,4,5,6,...)] sii hay un sR tal que s.r.9=9.

    Esto nos dice finalmente que

    1. - Aφ[a] sii para cada rR se da que r4 o hay un sR tal que s.r.9=9

    Pensando un poco esto nos dice que Aφ[a] (separar los casos r=4 y r4)

7.15. Supongamos que a,b son asignaciones tales que si xiLi(φ), entonces ai=bi. Entonces Aφ[a] sii Aφ[b]

Proof. Probaremos por induccion en k que el lema vale para cada φFkτ. El caso k=0 se desprende del Lema 7.14. Veamos que Teok implica Teok+1. Sea φFk+1τFkτ. Hay varios casos:

CASO φ=(φ1φ2).

Ya que Li(φi)Li(φ), i=1,2, Teok nos dice que Aφi[a] sii Aφi[b], para i=1,2. Se tiene entonces que Aφ[a]   (por (3) en la def de Aφ[a])Aφ1[a] y Aφ2[a]   (por Teok)Aφ1[b] y Aφ2[b]  (por (3) en la def de Aφ[a])Aφ[b]

CASO φ=(φ1φ2).

Es completamente similar al anterior.

CASO φ=(φ1φ2).

Es completamente similar al anterior.

CASO φ=(φ1φ2).

Es completamente similar al anterior.

CASO φ=¬φ1.

Es completamente similar al anterior.

CASO φ=xjφ1.

Supongamos Aφ[a]. Entonces por (8) en la def de Aφ[a] se tiene que Aφ1[ja(a)], para todo aA. Notese que ja(a) y ja(b) coinciden en toda xiLi(φ1) ya que Li(φ1)Li(φ){xj}. O sea que por Teok se tiene que Aφ1[ja(b)], para todo aA, lo cual por (8) en la def de Aφ[a] nos dice que Aφ[b]. La prueba de que Aφ[b] implica que Aφ[a] es similar.

CASO φ=xjφ1.

Es similar al anterior.  


7.1. Si φ es una sentencia, entonces Aφ[a] sii Aφ[b], cualesquiera sean las asignaciones a,b.

En virtud del corolario anterior tenemos que el valor de verdad de una sentencia φ en una estructura dada A para una asignacion a no depende de a, es decir este valor es ya sea 1 para todas las asignaciones o 0 para todas las asignaciones. En el primer caso diremos que φ es verdadera en A (y escribiremos Aφ) y en el segundo caso diremos que φ es falsa en A (y escribiremos Aφ)

Una sentencia de tipo τ sera llamada universalmente valida si es verdadera en cada modelo de tipo τ.

El valor de verdad es “efectivamente computable” en el caso finito

Supongamos que τ es finito en el sentido que los conjuntos C,F y R son finitos. Y supongamos que tenemos dada una estructura A de tipo τ tal que A es finito. Por supuesto, podemos ponerles nombre a los elementos de A de manera que los podamos manejar dentro de una computadora y ademas notese que una ves puesto estos nombres a los elementos de A, tambien podemos manejar dentro de nuestra computadora a las interpretaciones de los nombres de cte, funcion y relacion en A (por ejemplo si fF2 podemos representar a fA con una tabla de tres columnas. Entonces el lector no tendra problema en imaginar como haria un programa (en cualquier lenguaje de los actuales) con las siguientes caracteristicas:

  1. Datos de entrada: Una formula φ de tipo τ y elementos a1,...,an de A donde n es tal que Li(φ){x1,...,xn}

  2. Si Aφ[a1,...,an,a1,a1,a1,a1,...] entonces el programa se detiene y da como salida el Booleano 1

  3. Si Aφ[a1,...,an,a1,a1,a1,a1,...] entonces el programa se detiene y da como salida el Booleano 0

Esto realmente es una consecuencia muy interesante de haber dado un modelo matematico de las formulas elementales y sus valores de verdad, resulta que ahora este programa nos esta permitiendo calcular sin pensar el valor de verdad de una formula en una estructura finita! Por supuesto esto tiene sentido si la nocion matematica de valor de verdad es realmente un modelo adecuado de nuestra idea intuitiva de valor de verdad. Pero ...

Hemos creado un mounstro?

Que tal si nuestro modelo matematico de valor de verdad no es del todo satisfactorio, es decir que tal si el programa anterior en algun caso da como salida el Booleano 1 y para nosotros la formula de entrada era falsa en la asignacion de entrada. En ese caso nos deberiamos sentir identificados con el Dr Frankenstein, el cual quizo hacer un humano pero su creacion tenia detalles ....

Veamos un ejemplo feo:

  1. Sea τ=({c},,{P11,P21,R1},a). Consideremos la sentencia μ=(((P1(c)P2(c))R(c)))((P1(c)R(c))(P2(c)R(c)))). Notese que esta sentencia nos dice que si tenemos que P1(c) y P2(c) implican R(c), entonces ya sea se da que P1(c) implica R(c) o que P2(c) implica R(c). Esto intuitivamente hablando no parece cierto independientemente de en que estructura estemos pensando ya que la intuicion nos dice que podria hacer falta que c cumpla ambas propiedades (P1 y P2) para asegurar que entonces debe cumplir R y que ninguna de las dos propiedades por separado asegure que se cumple R. Sin enbargo una facil inspeccion nos permite ver que Aμ[a], cualesquiera sea la estructura A y la asignacion aAN (dejamos este chequeo para el lector, aplicando la definicion de “Aφ[a]”).

Este ejemplo nos hace pensar que quizas nuestro modelo no sea tan bueno. Pero la verdad es que es muy bueno y en este caso, en el que no parece modelizar bien, la explicacion tiene que ver con el hecho que en general en la matematica real no le asignamos valor de verdad a una implicacion de dos sentencias concretas ya verdaderas o falsas. Esto nos hace pensar las implicaciones de μ de una forma “parametrizada” lo cual es incorrecto ya que para una estructura dada c esta fijo. Solo resta decir que son casos marginales, estos en los cuales se rompe la intuicion, y en general no aparecen en la escritura real de los matematicos. Mas aun, quisas deberiamos pensar que el modelo matematico dado nos enseña a pensar de una manera mas madura este tipo de casos que nunca ocurren en la matematica real.

7.8.3 Equivalencia de formulas

Dadas φ,ψFτ diremos que φ y ψ son equivalentes cuando se de la siguiente condicion

  1. - Aφ[a] si y solo si Aψ[a], para cada modelo de tipo τ, A y cada aAN

Escribiremos φψ cuando φ y ψ sean equivalentes. Notese que {(φ,ψ)Fτ:φψ} es una relacion de equivalencia sobre Fτ.

7.16. Se tiene que:

  1. (a) Si Li(ϕ)Li(ψ){xi1,...,xin}, entonces ϕψ si y solo si la sentencia xi1...xin(ϕψ) es universalmente valida.

  2. (b) Si ϕiψi, i=1,2, entonces ¬ϕ1¬ψ1, (ϕ1ηϕ2)(ψ1ηψ2) y Qvϕ1Qvψ1.

  3. (c) Si ϕψ y α es el resultado de reemplazar en una formula α algunas (posiblemente 0) ocurrencias de ϕ por ψ, entonces αα.

Proof. (a) Tenemos que γψ   (por (6) de la def de)A(γψ)[a], para todo A y toda aAN  A(γψ)[ina(a)],para todo AaA y toda aAN  (por (8) de la def de)Axin(γψ)[a], para todo A y toda aAN  Axin(γψ)[in1a(a)],para todo AaA y toda aAN   (por (8) de la def de)Axin1xin(γψ)[a], para todo A y toda aAN        Axi1...xin(γψ)[a], para todo A y toda aAN  xi1...xin(γψ) es universalmente valida

(b) Es dejado al lector.

(c) Por induccion en el k tal que αFkτ.