Teoría de los Conjuntos I: Teorema de recursión

Por Gabriela Hernández Aguilar

Introducción

A lo largo de la historia, el ser humano tuvo la necesidad de contar sus pertenencias. Esta idea la podemos asociar con los números naturales. Dado que la cantidad de cosas que alguien puede aumentar o disminuir, se tuvo la necesidad de sumar y restar. Ya definimos a los números naturales. Ahora hablaremos de la operación de suma. Pero para ello, primero necesitamos enunciar y demostrar un teorema muy importante: el teorema de recursión.

Motivación del proceso recursivo

Definir una operación de forma recursiva es de los procesos más comunes que hay. La suma y el producto son operaciones que se definirán con este proceso. Veamos, de manera intuitiva cómo queremos definir a la suma en los naturales.

La operación +:(N×N)N queremos que cumpla lo siguiente:

+(n,0)=n+0=n+(n,s(0))=n+s(0)=n+1=s(n)=s(n+0)+(n,s(1))=n+s(1)=n+2=s(n+1)

En vez de poner puntos suspensivos, podemos reescribir esto como sigue.

+(n,0)=n+(n,s(m))=s(n+m) para cualquier mN.

Observa estas propiedades con cuidado. Pensemos en que el número n es fijo y vemos qué está sucediendo con m. En primer lugar, estamos diciendo qué queremos que suceda cuando m=0: estamos pidendo que se cumpla que n+0=n. En segundo lugar, estamos diciendo qué queremos que suceda con el sucesor de m: queremos que n+s(m)=s(n+m). Esto tiene sentido pues si vamos definiendo «en orden» la suma, ya sabremos cuál es el valor de n+m, y para calcular n+s(m) basta aplicar la función sucesor al número ya conocido n+m.

A este procedimiento es al que le llamaremos recursión. Para definir una función f:NA, estableceremos un «caso base» diciendo quién es f(0) y luego daremos una manera de obtener f(n+1) a partir de f(n). Antes de enunciar y demostrar esto formalmente, veremos un concepto que nos será de utilidad.

Cálculos de longitud m

Definición. Sea A un conjunto y aA. Sea g:AA una función. Sea mN. Decimos que t es un cálculo de longitud m basado en g si y sólo si t es una función que satisface:

t:s(m)At(0)=at(s(k))=g(t(k)) para cualquier kN tal que 0k<m.

Ejemplo.

¿Cómo se ve un cálculo de longitud 0?

Sea A un conjunto y aA y sea g:AA. Un cálculo de longitud 0 es una función t:s(0)A tal que t(0)=a. (La segunda propiedad de la definición se satisface por vacuidad).

Y, ¿cómo se ve un cálculo de longitud 1?

Sea A un conjunto y aA y sea g:AA. Un cálculo de longitud 1 es una función

t:s(1)At(0)=at(s(0))=g(t(0))=g(a).

El dom(t)=s(1)={0,1} por lo que para saber quién es t basta con saber a dónde envía al 0 y al 1, lo cuál sabemos: 0a y 1g(a), donde g(a)A.

◻

Ahora que tenemos ejemplos de cálculos de longitud 0 y 1, vamos a proceder a enunciar el teorema de recursión. En la demostración notaremos que será de gran importancia conocer el concepto de cálculo de longitud m.

Teorema de recursión

Teorema. Sean A un conjunto cualquiera, aA y g:AA una función. Existe una única función f:NA que satisface:

a) f(0)=a,

b) f(s(n))=g(f(n)) para todo nN.

Demostración.

Para hacer la demostración primero vamos a ver que para cada número natural m existe un único cálculo de longitud m basado en g. Este hecho lo vamos a probar por inducción.

Base de inducción. En el ejemplo anterior vimos que existe el cálculo de longitud 0, por lo que basta ver que esta función es única. Supongamos que existe l:s(0)A tal que l(0)=a. Como t={(0,a)} y l={(0,a)}, entonces s=t, y por lo tanto el cálculo de longitud 0 es único.

Hipótesis de inducción. Supongamos que existe un único cálculo de longitud n basado en g, es decir, existe una única función t:s(n)A que satisface:

t:s(n)At(0)=at(s(k))=g(t(k)) con 0k<n

Paso inductivo. Veamos que existe un único cálculo de longitud s(n).

Proponemos t:s(s(n))A dada por t=t{(s(n),g(t(n)))}. Se tiene que t es un cálculo de longitud s(n). Para comprobarlo, notemos primero que t{(s(n),g(t(n)))}=, pues s(n)s(n)=dom(t), de modo que la pareja (s(n),g(t(n))) no está en t. Por tanto, t y {(s(n),g(t(n)))} son funciones compatibles y, en consecuencia, t es una función. Además, domt=dom(t){s(n)}=s(n){s(n)}=s(s(n)), por lo que t es una función de s(s(n)) en A. Notemos ahora que t(0)=t(0)=a; por otro lado, si kN es tal que 0k<n, entonces, t(s(k))=t(s(k))=g(t(k))=g(t(k)) y, además, t(s(n))=g(t(n))=g(t(n)). Por tanto, t es un cálculo de longitud s(n). Resta ver que t es el único cálculo de longitud s(n).

En efecto, supongamos que t1 y t2 son dos cálculos de longitud s(n). Veamos que t1=t2. Sean p1=t1{(s(n),t1(s(n)))} y p2=t2{(s(n),t2(s(n)))}. Veamos que p1 y p2 son cálculos de longitud n. Notemos que dom(p1)=dom(t1){s(n)}=s(s(n)){s(n)}=s(n) y dom(p2)=dom(t2){s(n)}=s(s(n)){s(n)}=s(n). Por otro lado, p1(0)=t1(0)=a=t2(0)=p2(0) y, para cada ks(n) tal que 0k<n tenemos p1(s(k))=t1(s(k))=g(t1(k))=g(p1(k)) y p2(s(k))=t2(s(k))=g(t2(k))=g(p2(k)). Esto muestra que p1 y p2 son cálculos de longitud n y, por hipótesis de inducción, tenemos que p1=p2 y, por tanto, t1{(s(n),t1(s(n)))}=t2{(s(n),t2(s(n)))}. Resta mostrar que t1(s(n))=t2(s(n)), lo cual ocurre debido a lo siguiente

t1(s(n))=g(t1(n))=g(t2(n))=t2(s(n)).

Por lo tanto, t1=t2. Esto prueba la unicidad del cálculo de longitud s(n). Llamemos entonces tm al único cálculo de longitud m para cada mN.

Ahora consideremos F={tm:mN} y sea f=F. Afirmamos que f es función. Por lo que se discutió en la entrada anterior, basta ver que F es un sistema compatible de funciones.

Sean tn,tmF cualesquiera funciones. Veamos que tn:s(n)A y tm:s(m)A son funciones compatibles. Para ello, mostraremos que para cualquier xdom(tn)dom(tm), se tiene que tn(x)=tm(x).

Primero, tenemos que dom(tn)=s(n) y dom(tm)=s(m). Supongamos, sin pérdida de generalidad, que s(n)s(m), por lo que s(n)s(m) y así, dom(tn)dom(tm)=s(n)s(m)=s(n). Así, debemos ver que para cualquier xs(n), se tiene que tn(x)=tm(x). Notemos que tms(n) es un cálculo de longitud s(n), pues tms(n)(0)=tm(0)=a y tms(n)(s(k))=tm(s(k))=g(tm(k))=g(tms(n)(k)) para cada kN tal que 0k<n. Por tanto, tn=tms(n), es decir, tn(x)=tm(x) para cada xs(n). Por tanto, tn y tm son funciones compatibles.

Tenemos entonces que f=F es función y además, es tal que dom(f)=N y Im(f)A (en los ejercicios mostrarás que N=N).

Esto prueba que existe f:NA que satisface las condiciones enunciadas en el teorema.

Nos resta ver que f es única. Para ello, supongamos que existe h:NA, tal que:

  1. h(0)=a,
  2. h(s(n))=g(h(n)) para cualquier nN.

Veremos por inducción que h(n)=f(n) para cada nN. Primero, h(0)=a=f(0). Ahora supongamos que h(n)=f(n) para algún nN. Para el paso inductivo, tenemos que:

h(s(n))=g(h(n))=g(f(n))=f(s(n)).

Por lo tanto, para cualquier nN se cumple que h(n)=f(n). Esto prueba la unicidad de f y concluye la prueba del teorema de recursión.

◻

Tarea moral

La siguiente lista de ejercicios te permitirá reforzar el contenido de esta entrada.

  1. Demuestra que N=N.
  2. Sea A un conjunto y f:AA una función. Definimos:
    f0=IdA,fn+1=fnf.
    Demuestra que para cada nN, fn es un elemento unívocamente determinado de AA.
  3. Demuestra la siguiente versión más general del teorema de recursión, en donde en cada «paso» se permite aplicar una función distinta. Sean A un conjunto cualquiera y aA. Sea G={gi}iN una familia de funciones de A en A. Entonces, existe una única función f:NA que satisface:
    a) f(0)=a,
    b) f(s(n))=gn(f(n)) para todo nN.
  4. Sean A un conjunto y g:S=nNAnA una función, donde An es el conjunto de funciones de n en A para cada nN. Demuestra que existe una única función f:NA tal que f(n)=g(fn) para cada nN.
    Sugerencia: Considera la función F:SS definida por medio de F(x)=x{(n,g(x))} si xAn, para cada xS. Por el teorema de recursión, existe una única función h:NS tal que h(0)= y h(s(n))=F(h(n)) para cada nN. Concluye que f:=h[N] es una función de N en A con las propiedades deseadas.

Más adelante…

Ahora que hemos enunciado y demostrado el teorema de recursión, podemos definir la suma en el conjunto de los números naturales. En la siguiente entrada definiremos esta operación y a su vez probaremos algunas de sus propiedades haciendo uso del principio de inducción.

Entradas relacionadas

Agradecimientos

Trabajo realizado con el apoyo del Programa UNAM-DGAPA-PAPIME PE109323 «Hacia una modalidad a distancia de la Licenciatura en Matemáticas de la FC-UNAM – Etapa 3»

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.