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.
Sea A=(A,i)A=(A,i) una estructura de tipo ττ. Una asignacion de AA sera un elemento de AN={AN={infinituplas de elementos de A}A}. Si →a=(a1,a2,...)→a=(a1,a2,...) es una asignacion, entonces diremos que ajaj es el valor que →a→a le asigna a la variable xjxj.
Dada una estructura AA de tipo ττ, un termino t∈Tτt∈Tτ y una asignacion →a=(a1,a2,...)∈AN→a=(a1,a2,...)∈AN definamos recursivamente tA[→a]tA[→a] de la siguiente manera
(1) Si t=xi∈Vart=xi∈Var, entonces tA[→a]=aitA[→a]=ai
(2) Si t=c∈Ct=c∈C, entonces tA[→a]=i(c)tA[→a]=i(c)
(3) Si t=f(t1,...,tn)t=f(t1,...,tn), con f∈Fn,n≥1f∈Fn,n≥1 y t1,...,tn∈Tτt1,...,tn∈Tτ, entonces tA[→a]=i(f)(tA1[→a],...,tAn[→a])tA[→a]=i(f)(tA1[→a],...,tAn[→a])
El elemento tA[→a]tA[→a] sera llamado el valor de tt en la estructura AA para la asignacion →a→a.
Veamos un ejemplo. Sea ττ el tipo ({uno,doli},{MAS,P},{Her},{(MAS,4),(P,1),(Her,3)})({uno,doli},{MAS,P},{Her},{(MAS,4),(P,1),(Her,3)}) y sea A=(A,i)A=(A,i) la estructura de tipo ττ con universo A=RA=R y
- i(uno)=9i(uno)=9
- i(doli)=0i(doli)=0
- i(MAS)i(MAS) igual a la operacion R4→R(x,y,z,w)→2x+4yR4→R(x,y,z,w)→2x+4y
- i(P)i(P) igual a la operacion R→Rx→5xR→Rx→5x
- i(Her)={(x,y,z)∈R3:x.y.z=9}i(Her)={(x,y,z)∈R3:x.y.z=9}
Sea →a=(1,2,3,4,5,...)→a=(1,2,3,4,5,...). Claramente →a→a es una asignacion de AA. Se tiene que:
Si t=X554t=X554, entonces tA[→a]=X554A[→a]=554tA[→a]=X554A[→a]=554 (por (1) de la definicion recursiva de tA[→a]tA[→a])
Si t=unot=uno, entonces tA[→a]=unoA[→a]=9tA[→a]=unoA[→a]=9 (por (2) de la definicion recursiva de tA[→a]tA[→a])
Si t=P(X3)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=125tA[→a]=P(X3)A[→a]=i(P)(X3A[→a]) (por (3) de la definicion de tA[→a])=i(P)(3)=53=125
Si t=MAS(X1,uno,X3,X554)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=38tA[→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.13. Sea AA una estructura de tipo ττ y sea t∈Tτt∈Tτ. Supongamos que →a,→b→a,→b son asignaciones tales que ai=bi,ai=bi, cada vez que xixi ocurra en tt. Entonces tA[→a]=tA[→b]tA[→a]=tA[→b].
Proof. Sea
Teokk: El lema vale para t∈Tτkt∈Tτk.
Teo00 es facil de probar. Veamos Teok⇒k⇒Teok+1k+1. Supongamos t∈Tτk+1−Tτkt∈Tτk+1−Tτk y sean →a,→b→a,→b asignaciones tales que ai=biai=bi, cada vez que xixi ocurra en tt. Notese que t=f(t1,...,tn)t=f(t1,...,tn), con f∈Fnf∈Fn,n≥1n≥1 y t1,...,tn∈Tτkt1,...,tn∈Tτk. Notese que para cada j=1,...,nj=1,...,n, tenemos que ai=bi,ai=bi, cada vez que xixi ocurra en tjtj, lo cual por Teokk nos dice que tAj[→a]=tAj[→b], j=1,...,ntAj[→a]=tAj[→b], j=1,...,n Se tiene entonces que tA[→a]=i(f)(tA1[→a],...,tAn[→a]) (por def de tA[→a])=i(f)(tA1[→b],...,tAn[→b])=tA[→b] (por def de tA[→b])tA[→a]=i(f)(tA1[→a],...,tAn[→a]) (por def de tA[→a])=i(f)(tA1[→b],...,tAn[→b])=tA[→b] (por def de tA[→b])
Fijemos un tipo ττ. A continuacion definiremos matematicamente una relacion "A⊨φ[→a]""A⊨φ[→a]", donde AA es una estructura de tipo ττ, →a→a es una asignacion de AA y φ∈Fτφ∈Fτ. Intuitivamente hablando A⊨φ[→a]A⊨φ[→a] significara que la formula φφ es verdadera en la estructura AA cuando le asignamos a las variables libres de φφ los valores que asigna →a→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 →a∈AN y a∈A, con ↓ai(→a) denotaremos la asignacion que resulta de reemplazar en →a el i-esimo elemento por a. Ahora si la definicion recursiva:
(1) Si φ=(t≡s), entonces
- A⊨φ[→a] si y solo si tA[→a]=sA[→a]
(2) Si φ=r(t1,...,tm), entonces
- A⊨φ[→a] si y solo si (tA1[→a],...,tAm[→a])∈i(r)
(3) Si φ=(φ1∧φ2), entonces
- A⊨φ[→a] si y solo si A⊨φ1[→a] y A⊨φ2[→a]
(4) Si φ=(φ1∨φ2), entonces
- A⊨φ[→a] si y solo si A⊨φ1[→a] o A⊨φ2[→a]
(5) Si φ=(φ1→φ2), entonces
- A⊨φ[→a] si y solo si A⊭φ1[→a] o A⊨φ2[→a]
(6) Si φ=(φ1↔φ2), entonces
- 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) Si φ=¬φ1, entonces
- A⊨φ[→a] si y solo si A⊭φ1[→a]
(8) Si φ=∀xiφ1, entonces
- A⊨φ[→a] si y solo si para cada a∈A, se da que A⊨φ1[↓ai(→a)]
(9) Si φ=∃xiφ1, entonces
- A⊨φ[→a] si y solo si hay un a∈A tal que A⊨φ1[↓ai(→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 φ∈Fτ0. 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 φ∈Fτk, entonces tambien queda definido cuando se da A⊨φ[→a] y cuando no se da A⊨φ[→a] para el caso en que φ∈Fτk+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
- i(uno)=9
- i(doli)=0
- i(MAS) igual a la operacion R4→R(x,y,z,w)→2x+4y
- i(P) igual a la operacion R→Rx→5x
- 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:
(E1) Si φ=(MAS(X1,uno,X3,X554)≡P(X3)), entonces ya que
MAS(X1,uno,X3,X554)A[→a]=38
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].
(E2) Si φ=¬Her(P(P(X6)),X3,doli), entonces ya que
- P(P(X6))A[→a]=5(56)
- X3A[→a]=3
- doliA[→a]=0
tenemos que (7) de la definicion nos dice que A⊨φ[→a] si y solo si A⊭Her(P(P(X6)),X3,doli)[→a]. Pero (2) de la definicion nos dice que A⊨Her(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 A⊭Her(P(P(X6)),X3,doli)[→a] lo cual nos dice que A⊨φ[→a].
(E3) Si φ=∃X3Her(X6,X3,uno), entonces por (9) de la definicion tenemos que
- A⊨φ[→a] sii hay un r∈R tal que A⊨Her(X6,X3,uno)[↓r3(→a)]
es decir que
- A⊨φ[→a] sii hay un r∈R tal que A⊨Her(X6,X3,uno)[(1,2,r,4,5,6,...)]
Pero (2) de la definicion nos dice que cualquiera sea r∈R se tiene que
- A⊨Her(X6,X3,uno)[(1,2,r,4,5,6,...)] sii (6,r,9)∈i(Her)
O sea que obtenemos finalmente que
- A⊨φ[→a] sii hay un r∈R tal que 6.r.9=9
Lo cual claramente implica que A⊨φ[→a] ya que podemos tomar r=1/6.
(E4) Si φ=∀X3((X4≡X3)→∃X6Her(X6,X3,uno)), entonces por (8) de la definicion tenemos que
- A⊨φ[→a] sii para cada r∈R se da que A⊨((X4≡X3)→∃X6Her(X6,X3,uno))[↓r3(→a)]
es decir que
- A⊨φ[→a] sii para cada r∈R se da que A⊨((X4≡X3)→∃X6Her(X6,X3,uno))[(1,2,r,4,5,6,...)]
Pero entonces (5) de la definicion nos dice que
- A⊨φ[→a] sii para cada r∈R se da que A⊭(X4≡X3)[(1,2,r,4,5,6,...)] o A⊨∃X6Her(X6,X3,uno))[(1,2,r,4,5,6,...)] O sea que
- A⊨φ[→a] sii para cada r∈R se da que r≠4 o A⊨∃X6Her(X6,X3,uno))[(1,2,r,4,5,6,...)] Es decir que debemos ver cuando se da que A⊨∃X6Her(X6,X3,uno))[(1,2,r,4,5,6,...)]. Por (9) y (2) de la definicion tenemos que cualquiera sea el r∈R se da que
- A⊨∃X6Her(X6,X3,uno))[(1,2,r,4,5,6,...)] sii hay un s∈R tal que s.r.9=9.
Esto nos dice finalmente que
- A⊨φ[→a] sii para cada r∈R se da que r≠4 o hay un s∈R tal que s.r.9=9
Pensando un poco esto nos dice que A⊨φ[→a] (separar los casos r=4 y r≠4)
7.14. Supongamos que →a,→b son asignaciones tales que si xi∈Li(φ), entonces ai=bi. Entonces A⊨φ[→a] sii A⊨φ[→b]
Proof. Probaremos por induccion en k que el lema vale para cada φ∈Fτk. El caso k=0 se desprende del Lema 7.13. Veamos que Teok implica Teok+1. Sea φ∈Fτk+1−Fτk. 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[↓aj(→a)], para todo a∈A. Notese que ↓aj(→a) y ↓aj(→b) coinciden en toda xi∈Li(φ1) ya que Li(φ1)⊆Li(φ)∪{xj}. O sea que por Teok se tiene que A⊨φ1[↓aj(→b)], para todo a∈A, 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 τ.
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 f∈F2 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:
Datos de entrada: Una formula φ de tipo τ y elementos a1,...,an de A donde n es tal que Li(φ)⊆{x1,...,xn}
Si A⊨φ[a1,...,an,a1,a1,a1,a1,...] entonces el programa se detiene y da como salida el Booleano 1
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 ...
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:
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 →a∈AN (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.
Dadas φ,ψ∈Fτ diremos que φ y ψ son equivalentes cuando se de la siguiente condicion
- A⊨φ[→a] si y solo si A⊨ψ[→a], para cada modelo de tipo τ, A y cada →a∈AN
Escribiremos φ∼ψ cuando φ y ψ sean equivalentes. Notese que {(φ,ψ)∈Fτ:φ∼ψ} es una relacion de equivalencia sobre Fτ.
7.15. Se tiene que:
(a) Si Li(ϕ)∪Li(ψ)⊆{xi1,...,xin}, entonces ϕ∼ψ si y solo si la sentencia ∀xi1...∀xin(ϕ↔ψ) es universalmente valida.
(b) Si ϕi∼ψi, i=1,2, entonces ¬ϕ1∼¬ψ1, (ϕ1ηϕ2)∼(ψ1ηψ2) y Qvϕ1∼Qvψ1.
(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 →a∈AN ⇕A⊨(γ↔ψ)[↓ain(→a)], para todo A, a∈A y toda →a∈AN ⇕(por (8) de la def de⊨)A⊨∀xin(γ↔ψ)[→a], para todo A y toda →a∈AN ⇕A⊨∀xin(γ↔ψ)[↓ain−1(→a)], para todo A, a∈A y toda →a∈AN ⇕ (por (8) de la def de⊨)A⊨∀xin−1∀xin(γ↔ψ)[→a], para todo A y toda →a∈AN ⇕ ⋮ ⇕A⊨∀xi1...∀xin(γ↔ψ)[→a], para todo A y toda →a∈AN ⇕∀xi1...∀xin(γ↔ψ) es universalmente valida
(b) Es dejado al lector.
(c) Por induccion en el k tal que α∈Fτk.