Bitácora · Lógica · Lista del parcial 3

Renombrar por una variable que no estaba

Ejercicio 5 de la lista del parcial 3 · Guía 10, Ejercicio 4 · el nombre cambia y el valor viaja con él; la inducción, con la estructura, la asignación y el elemento cuantificados adentro

El enunciado, textual: «Sea τ un tipo y sea t∈Tτ tal que la variable xl no ocurre en t. Sea t′ el resultado de reemplazar toda ocurrencia de xi en t por xl. Acepte sin demostración que t′∈Tτ. Entonces para cualquier estructura 𝐀, cualquier asignación a→∈A𝐍 y cualquier a∈A, se tiene que t′𝐀[↓la(a→)]=t𝐀[↓ia(a→)].» Es el Ejercicio 4 de la Guía 10, con el agregado de que t′∈Tτ se acepta.

Está entre los ejercicios 1 a 17 de la lista, así que se resuelve sin notación declaratoria: con asignaciones infinitas a→∈A𝐍 y con ↓ia. Y como toda inducción de la lista, nombra la regla y escribe el Enuk entero.

01 · Qué pide, con una estructura a la vista

Un término es un nombre compuesto, y su valor depende de qué le asigna a→ a cada variable. El ejercicio dice que si a xi se le cambia el nombre por xl en todas partes, y al mismo tiempo se le da a xl el valor que se le daba a xi, el término vale lo mismo. Con una condición: que xl no estuviera ya en t, porque si estaba, el renombre la confunde con xi.

Un ejemplo con números. Tomemos el tipo del Ejercicio 6, τ=({uno},{MAS,P},{Her},{(MAS,4),(P,1),(Her,3)}), y la estructura 𝐀 con universo A={0,1,…,6}, i(uno)=1, i(MAS)(x,y,z,w)=x+2y+3z+4w módulo 7 e i(P)(x)=3x módulo 7 (lo que sea i(Her) no importa: no aparece en los términos). Sea a→=(1,2,3,4,5,6,0,0,0,…) y

t=MAS(X1,P(X3),uno,X1)

Con i=1 y l=2, x2=X2 no ocurre en t, y t′=MAS(X2,P(X3),uno,X2). Con a=5:

Las dos cuentas son la misma porque en las dos el valor 5 entra por los mismos lugares del término; sólo cambió el nombre de la variable que lo trae. En cambio, sin mover la asignación, t𝐀[a→]=5 y t′𝐀[a→]=3: renombrar solo cambia el valor. Y si se renombra por una variable que ya estaba —l=3, con t′=MAS(X3,P(X3),uno,X3)—, el lado izquierdo da t′𝐀[↓35(a→)]=i(MAS)(5,i(P)(5),1,5)=2, y el derecho sigue en 4: el X3 que estaba adentro de P también recibió el 5.

02 · Las herramientas

El valor de un término (Guía 10, p. 1). Dada una estructura 𝐀=(A,i) de tipo τ, t∈Tτ y a→=(a1,a2,…)∈A𝐍, se define recursivamente:

La lectura única de términos (Teorema 3 de la Guía 9), que la lista deja usar sin enunciar, es lo que hace que la definición no sea ambigua: en (3), f y los tj son únicos. Está desarrollado en El valor de un término.

La asignación modificada (Guía 10, p. 3): ↓ia(a→) es la asignación que resulta de reemplazar en a→ el i-ésimo elemento por a. O sea, su elemento i-ésimo es a y su elemento j-ésimo, para j≠i, es aj.

Las variables (Guía 9, p. 1): xn es X seguida de los numerales de n, todos itálicos salvo el último, negrita. Una variable tiene una sola X, la primera, y termina en su único negrita; por eso xi ocurre en xj sólo si i=j: una ocurrencia tendría que empezar en la única X de xj y terminar en su único negrita, y sería xj entera.

El tipo (Guía 8, p. 4): ningún nombre de constante o de función usa la X ni numerales itálicos o negritas. Así que una variable no ocurre en un nombre de constante, y una ocurrencia de una variable en f(t1,…,tn) no puede tocar f, ni los paréntesis, ni las comas.

Los niveles (Guía 9, p. 1): T0τ=Var∪𝒞 y Tk+1τ=Tkτ∪{f(t1,…,tn):f∈ℱn,n≥1,t1,…,tn∈Tkτ}, con Tτ=⋃k≥0Tkτ. Y la Regla de Inducción desde 0: si Enu0 es verdadero y, para cada k, Enuk implica Enuk+1, entonces Enuk es verdadero para todo k∈ω.

03 · La mariposa: qué va en el Enu

La inducción es en el nivel de t, porque t𝐀[a→] está definido por recursión en la construcción de t. El Enuk es el enunciado del ejercicio con t∈Tkτ en lugar de t∈Tτ:

Enuk: Si t∈Tkτ y xl no ocurre en t, y t′ es el resultado de reemplazar toda ocurrencia de xi en t por xl, entonces para cualquier estructura 𝐀 de tipo τ, cualquier a→∈A𝐍 y cualquier a∈A, se tiene que t′𝐀[↓la(a→)]=t𝐀[↓ia(a→)].

Qué va adentro y por qué. La hipótesis «xl no ocurre en t» y la definición de t′ hablan de t, que es lo que recorre la inducción: van adentro sí o sí. La estructura, la asignación y a también van adentro, cuantificadas. En este ejercicio el paso aplica la hipótesis a cada argumento con los mismos 𝐀, a→ y a, así que también se podrían fijar antes de empezar —«sean 𝐀, a→ y a fijos pero arbitrarios»— y generalizar al final. Lo que no puede pasar es que queden sueltas: un Enuk que nombra a→ sin cuantificarla no es un enunciado. Adentro es el molde de la lista, y es el que sobrevive a las fórmulas: en el caso ∀xjφ1 la asignación cambia, y la hipótesis se tiene que poder usar con otra (es lo que pasa en el Ejercicio 12).

La base tiene tres casos, y en uno trabaja la hipótesis. T0τ=Var∪𝒞, y entre las variables hay que separar xi de las demás:

El paso es mirar dónde caen las ocurrencias. Si t=f(t1,…,tn), toda ocurrencia de xi en t está hecha de X y numerales, que no aparecen en f, en los paréntesis ni en las comas: cae adentro de algún tj. Entonces t′=f(t1′,…,tn′), con tj′ el reemplazo hecho en tj. La hipótesis también baja: si xl no ocurre en t, no ocurre en ningún tj. Con eso Enuk se aplica a cada argumento y la cláusula (3) cierra la cuenta.

i=l es trivial, y la prueba no necesita separarlo: si xi=xl no ocurre en t, no hay nada que reemplazar, t′=t y ↓la=↓ia. El caso t=xi de la base no puede darse, y el resto de la prueba vale igual.

Abajo están los dos lados del ejercicio, en la estructura de la sección 01, y la tabla del paso: cada argumento de t′ con la asignación de la izquierda contra el mismo argumento de t con la de la derecha.

Simulación Renombrar y mover el valor — arranca con l = 3, y X𝟑 ya está en t: los dos lados no coinciden. Buscá las l que los igualan, y después mirá en qué argumento se rompe cuando no. A = {0,…,6}, uno = 1, MAS(x,y,z,w) = x+2y+3z+4w y P(x) = 3x, módulo 7; la asignación es (1,2,3,4,5,6,0,0,…).
t′
xl ocurre en t — t′𝐀[↓la(a→)] — t𝐀[↓ia(a→)] — sin mover la asignación: t𝐀[a→], t′𝐀[a→] —

Cuando xl ya está en t, la tabla muestra dónde se rompe: en el argumento que contiene a xl, que en t′ recibe a y en t recibe al. Los demás argumentos coinciden, como dice la hipótesis inductiva. Y con i igual a l no pasa nada: t′=t.

04 · El escarabajo: la prueba escrita

Prueba. Fijemos τ y i,l∈𝐍. Usaremos la Regla de Inducción desde 0. Para cada k∈ω sea Enuk el enunciado:

Enuk: Si t∈Tkτ y xl no ocurre en t, y t′ es el resultado de reemplazar toda ocurrencia de xi en t por xl, entonces para cualquier estructura 𝐀 de tipo τ, cualquier a→∈A𝐍 y cualquier a∈A, se tiene que t′𝐀[↓la(a→)]=t𝐀[↓ia(a→)].

En lo que sigue, dados 𝐀, a→ y a, escribimos b→=↓la(a→) y c→=↓ia(a→). Por la definición de ↓: bl=a y bj=aj si j≠l; ci=a y cj=aj si j≠i.

Prueba de que Enu0 es verdadero. Sea t∈T0τ=Var∪𝒞 tal que xl no ocurre en t, sea t′ el resultado de reemplazar toda ocurrencia de xi en t por xl, y sean 𝐀 una estructura de tipo τ, a→∈A𝐍 y a∈A. Hay tres casos.

Prueba de que si Enuk es verdadero entonces Enuk+1 lo es. Supongamos que vale Enuk. Sea t∈Tk+1τ tal que xl no ocurre en t, sea t′ el resultado de reemplazar toda ocurrencia de xi en t por xl, y sean 𝐀 una estructura de tipo τ, a→∈A𝐍 y a∈A. Por definición de Tk+1τ hay dos casos.

Por la Regla de Inducción desde 0, Enuk vale para todo k∈ω. Como todo t∈Tτ está en algún Tkτ, para cualquier 𝐀, a→∈A𝐍 y a∈A se tiene t′𝐀[↓la(a→)]=t𝐀[↓ia(a→)]. ∎

05 · Lo que se lleva a otros ejercicios

El molde de todas las inducciones de valor sobre términos. Base con variables y constantes, paso con f(t1,…,tn), y la cláusula (3) de la definición aplicada dos veces con la hipótesis en el medio. Es el molde del Lema 1 de la Guía 10, y el de los dos ejercicios que siguen: el Ejercicio 6, donde lo que se reemplaza es P(x1), y el Ejercicio 7, donde se reemplaza un término por otro que vale lo mismo. En los dos la diferencia está en dónde puede caer lo que se reemplaza: una variable cae siempre adentro de un argumento; un término con paréntesis puede ser el término entero.

Con fórmulas aparece un caso que acá no hay. En Qxjφ1 el valor de verdad se calcula con otras asignaciones, ↓jb(a→) para cada b∈A, y la hipótesis inductiva se tiene que poder usar con ellas. Ahí la cuantificación de a→ adentro del Enuk deja de ser una costumbre y pasa a ser necesaria.

Lo que hace perder puntos. Escribir Enuk con 𝐀, a→ o a sin cuantificar, o sin nombrar la Regla de Inducción desde 0. Olvidar en la base el caso xj con j≠i, o no decir que j≠l y de dónde sale. Afirmar que las ocurrencias de xi en f(t1,…,tn) caen en los argumentos sin decir por qué: la definición de tipo. No justificar que tj′∈Tτ antes de usar la cláusula (3). Olvidar el caso t∈Tkτ del paso. Y confundir el enunciado con t′𝐀[a→]=t𝐀[a→], que es falso: en la sección 01, 3≠5.

Para tener a mano

  1. Enuk: si t∈Tkτ, xl no ocurre en t y t′ es el reemplazo, entonces para toda 𝐀, toda a→∈A𝐍 y todo a∈A, t′𝐀[↓la(a→)]=t𝐀[↓ia(a→)].
  2. Base: xi (los dos lados valen a), xj con j≠i (y j≠l porque xl no ocurre: los dos valen aj), c (los dos valen i(c)).
  3. xi ocurre en xj sólo si i=j: una sola X al principio, un solo negrita al final.
  4. Paso: las ocurrencias de una variable en f(t1,…,tn) caen en los argumentos, porque f, los paréntesis y las comas no tienen X ni numerales. t′=f(t1′,…,tn′) y la cláusula (3) dos veces.
  5. Sin la hipótesis falla: t=X1, i=2, l=1 da a contra a1. Y i=l es trivial.
← Anterior Siguiente → Inicio
Relacionados El valor de un término Inducción en la construcción Si P no hace nada, sacarlo no cambia el valor Equivalentes en una sola estructura