7.10 Notacion declaratoria

Introduciremos una notacion que hace mas dinamica e intuitiva la manera de escribir las cosas. Por supuesto el precio que esto tiene es que deberemos dedicarnos bastante a aprender a manejar esta notacion en forma precisa, para no perder rigor matematico.

7.10.1 Notacion declaratoria para terminos

Si t es un termino de tipo τ, entonces escribiremos t=dt(v1,...,vn) para declarar que v1,...,vn son variables distintas (con n1) y tales que toda variable que ocurre en t pertenece a {v1,...,vn} (no necesariamente toda vj debe ocurrir en t).

El uso de declaraciones de la forma t=dt(v1,...,vn) sera muy util cuando se lo convina con ciertas convenciones notacionales que describiremos a continuacion.

Convencion Notacional 1: Cuando hayamos hecho la declaracion t=dt(v1,...,vn), si P1,...,Pn son palabras cualesquiera (no necesariamente terminos), entonces t(P1,...,Pn) denotara la palabra que resulta de reemplazar simultaneamente cada ocurrencia de v1 en t, por P1, cada ocurrencia de v2 en t, por P2, etc.

Notese que cuando las palabras Pis son terminos, t(P1,...,Pn) es un termino (Lema 7.6). Ademas notese que en esta convencion notacional, el orden de las variables v1,...,vn es clave. Por ejemplo si τ=(,{FU},,{(FU,2)}) y t=FU(FU(x2,x16),x3) y declaramos t=dt(x3,x2,x16), entonces

  1. - Si declaramos t=dt(x3,x2,x16), entonces t(##,#,@@) denotara la palabra FU(FU(#,@@),##)

  2. - Si declaramos t=dt(x16,x3,x2), entonces t(##,#,@@) denotara la palabra FU(FU(@@,##),#)

Tambien podriamos haber declarado t=dt(x3,x200,x2,x16,x100) y en tal caso t(##,!!!!,#,@@,!!) denotara la palabra FU(FU(#,@@),##)

Convencion Notacional 2: Cuando hayamos declarado t=dt(v1,...,vn), si A es un modelo de tipo τ y a1,...,anA, entonces con tA[a1...,an] denotaremos al elemento tA[b], donde b es una asignacion tal que a cada vi le asigna el valor ai. (Notese que esta notacion es inhambigua gracias al Lema 7.13.)

Nuevamente cabe destacar que en esta convencion notacional, el orden de las variables v1,...,vn es clave. Por ejemplo si τ y t son los dados en el ejemplo anterior y A es dado por A={1,2,3} y FUA(i,j)=j, para cada i,jA, tenemos que

  1. - Si declaramos t=dt(x3,x2,x16), entonces tA[2,1,3]=FU(FU(x2,x16),x3)A[2,1,3]=FUA(FUA(1,3),2)=2

  2. - Si declaramos t=dt(x16,x3,x2), entonces tA[2,1,3]=FU(FU(x2,x16),x3)A[2,1,3]=FUA(FUA(3,2),1)=1

Tambien podriamos haber declarado t=dt(x3,x200,x2,x16,x100) y en tal caso tA[2,10,1,3,1000]=2.

Lectura unica de terminos declarados

Para establecer nuestra Convencion Notacional 3, debemos antes probar un lema de "lectura de terminos declarados", el cual sera muy util para hacer demostraciones usando la notacion declaratoria.

7.24 (Lectura unica de terminos declarados). Sea τ un tipo cualquiera y supongamos tTτ. Si t=dt(v1,...,vn), entonces se da una y solo una de las siguientes:

  1. (1) t=c, para algun cC

  2. (2) t=vj, para algun j

  3. (3) t=f(t1,...,tm), con fFm y t1,...,tmTτ unicos y tales que las variables que ocurren en cada uno de ellos estan en {v1,...,vn}

Proof. Rutina  


Convencion Notacional 3: Cuando hayamos declarado t=dt(v1,...,vn) y se el caso (3) del Lema 7.24 supondremos tacitamente que tambien hemos hecho las declaraciones t1=dt1(v1,...,vn),...,tm=dtm(v1,...,vn).

Cabe destacar que esta ultima convencion notacional junto con la Convencion Notacional 1, nos dice que cuando se de el caso (3) del Lema 7.24, si P1,...,Pn son palabras cualesquiera, entonces t(P1,...,Pn)=f(t1(P1,...,Pn),...,tm(P1,...,Pn))

Caracter recursivo de la notacion tA[a1,....,an]

El siguiente lema se basa en la Convencion Notacional 3 y nos permite darle caracter recursivo a la notacion tA[a1,....,an]. Esto sera muy util para hacer demostraciones usando la notacion declaratoria.

7.25 (Caracter recursivo de la notacion tA[a1,....,an]). Sea τ un tipo cualquiera y tTτ. Supongamos t=dt(v1,...,vn). Sea A un modelo de tipo τ. Sean a1,...,anA. Se tiene que:

  1. (1) Si t=c, entonces tA[a1,....,an]=cA

  2. (2) Si t=vj, entonces tA[a1,....,an]=aj

  3. (3) Si t=f(t1,...,tm), con fFm y t1,...,tmTτ, entonces tA[a1,....,an]=fA(t1A[a1,....,an],...,tmA[a1,....,an])

Proof. (1) y (2) son triviales.

(3) Sea b una asignacion tal que a cada vi le asigna el valor ai. Tenemos que tA[a1,....,an]=tA[b] (por def. de tA[a1,....,an])=fA(t1A[b],...,tmA[b]) (por def. de tA[b])=fA(t1A[a1,....,an],...,tmA[a1,....,an]) (por def. de cada tiA[a1,....,an])  


Veamos un ejemplo de como se pueden probar cosas con la notacion declaratoria.

7.26. Supongamos que F:AB es un homomorfismo. Sea t=d(v1,...,vn)Tτ. Entonces

F(tA[a1,a2,...,an])=tB[F(a1),F(a2),...,F(an)]

para cada a1,a2,...,anA. Proof. Por induccion. Sea

Teok: Sea F:AB un homomorfismo y sea t=d(v1,...,vn)Tkτ. Entonces

F(tA[a1,a2,...,an])=tB[F(a1),F(a2),...,F(an)]

para todo a1,a2,...,anA.

Probaremos primero que vale Teo0. Como t=d(v1,...,vn)T0τ={VarC}, tenemos que dos casos posibles. Si t=c, para algún cC entonces tenemos lo siguiente

2F(tA[a1,a2,...,an])=F(cA)=cB=tB[F(a1),F(a2),...,F(an)]

Por otro lado, si t=vj, para algún j, tenemos que

1F(tA[a1,a2,...,an])=F(aj)=tB[F(a1),F(a2),...,F(an)]

Veamos ahora que Teok implica Teok+1. Podemos suponer que tTk+1τTkτ, usando el lema anterior tenemos que t=f(t1,...,tm) con fFm y t1,...,tmTkτ. Dado a que hemos declarado t=d(v1,...,vn), por la Convención Notacional 3, tenemos declarados también t1=d(v1,...,vn),...,tm=d(v1,...,vn). Entonces

2F(tA[a1,a2,...,an])=F(fA(t1A[a1,a2,...,an],...,tmA[a1,a2,...,an]))=fB(F(t1A[a1,a2,...,an]),...,F(tmA[a1,a2,...,an])))=fB(t1B[F(a1),...,F(an)],...,F(tmB[F(a1),...,F(an)])))(\text{Teo}k)=tB[F(a1),F(a2),...,F(an)]  


7.10.2 Notacion declaratoria para formulas

Si φ es una formula de tipo τ, entonces escribiremos φ=dφ(v1,...,vn) para declarar que v1,...,vn son variables distintas (con n1) tales que Li(φ){v1,...,vn}. Tal como para el caso de terminos, el uso de declaraciones de la forma φ=dφ(v1,...,vn) sera muy util cuando se convina con ciertas convenciones notacionales que describiremos a continuacion.

Convencion Notacional 4: Cuando hayamos hecho la declaracion φ=dφ(v1,...,vn), si P1,...,Pn son palabras cualesquiera, entonces φ(P1,...,Pn) denotara la palabra que resulta de reemplazar simultaneamente cada ocurrencia libre de v1 en φ, por P1, cada ocurrencia libre de v2 en φ, por P2, etc.

Notese que cuando las palabras Pis son terminos, φ(P1,...,Pn) es una formula. Ademas notese que tal como para el caso de terminos, en esta convencion notacional, el orden de las variables v1,...,vn es clave. Es facil dar el ejemplo analogo al dado para terminos.

Convencion Notacional 5: Cuando hayamos declarado φ=dφ(v1,...,vn), si A es un modelo de tipo τ y a1,...,anA, entonces Aφ[a1...,an] significara que Aφ[b], donde b es una asignacion tal que a cada vi le asigna el valor ai. (Notese que esta definicion es inambigua gracias al Lema 7.14). En gral Aφ[a1,....,an] significara que no sucede Aφ[a1,....,an]

Nuevamente cabe destacar que en esta convencion notacional, el orden de las variables v1,...,vn es clave. Veamos un ejemplo. Sea τ=(,{F},{E},{(F,1),(E,2)}) y sea φ=((F(x16)F(x17))x16E(x2,x16)) Sea A el modelo de tipo τ dado por A={1,2,3,4,5}, FA(x)=max{x,3} y EA={1}×A. Entonces

  1. - Si declaramos φ=dφ(x2,x16,x17,x18) tenemos que Aφ[1,2,2,4]

  2. - Si declaramos φ=dφ(x18,x16,x17,x2) tenemos que no se da que Aφ[1,2,2,4]

Lectura unica de formulas declaradas

Para establecer nuestra Convencion Notacional 6, debemos antes enunciar un "lema de lectura unica de formulas declaradas".

7.27 (Lectura unica de formulas declaradas). Sea τ un tipo cualquiera y φFτ. Supongamos φ=dφ(v1,...,vn). Entonces se una y solo una de las siguientes:

  1. (1) φ=(ts), con t,sTτ, unicos y tales que las variables que ocurren en t o en s estan todas en {v1,...,vn}

  2. (2) φ=r(t1,...,tm), con rRm y t1,...,tmTτ, unicos y tales que las variables que ocurren en cada ti estan todas en {v1,...,vn}

  3. (3) φ=(φ1φ2), con φ1,φ2Fτ, unicas y tales que Li(φ1)Li(φ2){v1,...,vn}

  4. (4) φ=(φ1φ2), con φ1,φ2Fτ, unicas y tales que Li(φ1)Li(φ2){v1,...,vn}

  5. (5) φ=(φ1φ2), con φ1,φ2Fτ, unicas y tales que Li(φ1)Li(φ2){v1,...,vn}

  6. (6) φ=(φ1φ2), con φ1,φ2Fτ, unicas y tales que Li(φ1)Li(φ2){v1,...,vn}

  7. (7) φ=¬φ1, con φ1Fτ, unica y tal que Li(φ1){v1,...,vn}

  8. (8) φ=vjφ1, con vj{v1,...,vn} y φ1Fτ, unicas y tales que Li(φ1){v1,...,vn}

  9. (9) φ=vφ1, con vVar{v1,...,vn} y φ1Fτ, unicas y tales que Li(φ1){v1,...,vn,v}

  10. (10) φ=vjφ1, con vj{v1,...,vn} y φ1Fτ, unicas y tales que Li(φ1){v1,...,vn}

  11. (11) φ=vφ1, con vVar{v1,...,vn} y φ1Fτ, unicas y tales que Li(φ1){v1,...,vn,v}

Proof. Ejercicio (haga induccion en el k tal que φFkτ).  


Convencion Notacional 6: Cuando hayamos declarado φ=dφ(v1,...,vn), entonces:

- si se da el caso (1) del Lema 7.27, supondremos tacitamente que tambien hemos hecho las declaraciones t=dt(v1,...,vn) y s=ds(v1,...,vn).

- si se da el caso (2) del Lema 7.27, supondremos tacitamente que tambien hemos hecho las declaraciones t1=dt1(v1,...,vn),...,tm=dtm(v1,...,vn).

- si se da cualquiera de los casos (3), (4), (5) o (6) del Lema 7.27, supondremos tacitamente que tambien hemos hecho las declaraciones φ1=dφ1(v1,...,vn) y φ2=dφ2(v1,...,vn).

- si se da cualquiera de los casos (7), (8) o (10) del Lema 7.27, supondremos tacitamente que tambien hemos hecho la declaracion φ1=dφ1(v1,...,vn).

- si se da el caso (9) o el caso (11) del Lema 7.27, supondremos tacitamente que tambien hemos hecho la declaracion φ1=dφ1(v1,...,vn,v).

Caracter recursivo de la notacion Aφ[a1,....,an]

El siguiente lema se basa en la Convencion Notacional 6 y nos permite darle caracter recursivo a la notacion Aφ[a1,....,an]. Esto sera muy util para hacer demostraciones usando la notacion declaratoria.

7.28 (Caracter recursivo de la notacion Aφ[a1,....,an]). Supongamos φ=dφ(v1,...,vn). Sea A=(A,i) un modelo de tipo τ y sean a1,...,anA. Entonces

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

    1. - Aφ[a1,....,an] si y solo si tA[a1,...,an]=sA[a1,...,an]

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

    1. - Aφ[a1,....,an] si y solo si (t1A[a1,...,an],...,tmA[a1,...,an])rA

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

    1. - Aφ[a1,....,an] si y solo si Aφ1[a1,....,an] y Aφ2[a1,....,an]

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

    1. - Aφ[a1,....,an] si y solo si Aφ1[a1,....,an] o Aφ2[a1,....,an]

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

    1. - Aφ[a1,....,an] si y solo si Aφ2[a1,....,an] o Aφ1[a1,....,an]

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

    1. - Aφ[a1,....,an] si y solo si ya sea Aφ1[a1,....,an] y Aφ2[a1,....,an] o Aφ1[a1,....,an] y Aφ2[a1,....,an]

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

    1. - Aφ[a1,....,an] si y solo si Aφ1[a1,....,an]

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

    1. - Aφ[a1,....,an] si y solo si Aφ1[a1,....,a,...,an], para todo aA.

  9. (9) Si φ=vφ1, con v{v1,...,vn}, entonces

    1. - Aφ[a1,....,an] si y solo si Aφ1[a1,....,an,a], para todo aA.

  10. (10) Si φ=vjφ1, entonces

    1. - Aφ[a1,....,an] si y solo si Aφ1[a1,....,a,...,an], para algun aA.

  11. (11) Si φ=vφ1, con v{v1,...,vn}, entonces

    1. - Aφ[a1,....,an] si y solo si Aφ1[a1,....,an,a], para algun aA.

Proof. Rutina.