Sie sind auf Seite 1von 21

Vol.

XIV No 2 Diciembre (2006)


Matemticas: 1939

Matemticas:
Enseanza Universitaria
c
Escuela
Regional de Matemticas
Universidad del Valle - Colombia

Propiedades bsicas de los nmeros computables


Carlos M. Parra
Recibido Mar. 31, 2006

Johany A. Surez
Aceptado Sep. 5, 2006

Abstract
Motivated by Algorithmic Information Theory, we study the field Cc of the complex computable numbers. We also present some non trivial examples of computable and noncomputable real numbers and propose a definition of a partial computable function defined in
Cn
c . We develop the basic notions of convergence in the field Rc of the real computable
numbers and show that every analytic function whose series representation has computable
coefficients is a computable function when restricted to any closed disk in its domain. Finally, we prove that Rc is a real closed field and also that Cc is an algebraic closed field
containing the algebraic numbers.
Keywords: Real numbers, Computable numbers, Constructive analysis.
AMSC(2000): Primary: 03D80, Secondary: 03F60, 26E40
Resumen
Motivados por la Teora Algortmica de la Informacin, estudiamos el campo Cc de los nmeros complejos computables. Presentamos ejemplos no triviales de nmeros reales tanto
computables como no computables y proponemos una definicin de funcin parcial computable definida en Cn
c . Desarrollamos la convergencia en el campo Rc de los reales computables y mostramos que toda funcin analtica, cuya expansin en serie de potencias tenga
coeficientes computables, es una funcin computable cunado se restringe a un disco cerrado de su dominio. Por ltimo, probamos que Rc es un campo real cerrado y que Cc es un
campo algebraicamente cerrado que contiene a los nmeros algebraicos.
Palabras y frases claves: Nmeros reales, Nmeros computables, Anlisis constructivo.

Introduccin

Un resultado bastante mencionado en la literatura sobre Aleatoriedad e Informacin es que todo nmero real aleatorio es trascendente. Esto se debe a que
todo nmero algebraico es computable, un hecho que suele citarse sin prueba.
En lo que sigue, ofrecemos un desarrollo, en gran medida autocontenido, de
las propiedades bsicas de los nmeros y las funciones computables, incluyendo una demostracin de que los nmeros computables forman un campo
algebraicamente cerrado que incluye a los nmeros algebraicos.
En la lgica matemtica y el anlisis constructivo, los nmeros computables, tambin conocidos como nmeros recursivos, son aquellos que se pueden computar por un algoritmo. Estos nmeros fueron introducidos por Alan
Turing en su artculo pionero de 1936 y definidos independientemente por
Post y Church (ver [5]). Desde entonces se han ofrecido varias definiciones
equivalentes. La exposicin de los temas se basa en gran medida en [8]. Por
conveniencia, seguiremos el enfoque desarrollado en [1] y [2], de los cuales modificamos algunas pruebas. Supondremos que el lector est familiarizado con

20

C. Parra y J. Surez

las nociones bsicas y resultados fundamentales de la teora de la computabilidad as como con la Tesis de Church-Turing, tal como se expone en textos
como [1] [4]. En lo que sigue adoptaremos la prctica usual de fijar una
enumeracin calculable {Me } , e N, de las mquinas de Turing y denotar
(m)
por e la funcin recursiva parcial de m variables computada por la mquina de Turing Me . En ciertas aplicaciones, necesitaremos el conocido teorema
s-m-n de Kleene.
Teorema 1.1. Para todo m, n, k 1, existe una funcin recursiva total sm
n :
(n+m)
N Nm N tal que para todo e N si e
: Nm+n Nk es recursiva
parcial, entonces para todo v Nm se cumple que
(n)

s(e,v) (u) = e(n+m) (v, u) ,

para todo u Nn .

Recordemos que A Nm es recursivamente enumerable si A = dom(), con


recursiva parcial y que A es recursivo si tanto A como Ac son recursivamente
enumerables (o equivalentemente si su correspondiente funcin caracterstica
A : Nm {0, 1} es recursiva). El ejemplo ms clebre de un conjunto
recursivamente enumerable que no es recursivo es el conjunto de parada
K = {n | n dom (n )} ,
cuya importancia es vital en la teora de la recursin.
2

Definiciones bsicas y cdigos

Fijemos dos biyecciones computables : N2 N y : N Q cuyas inversas


tambin sean computables. Diremos que la funcin : Nm Q es recursiva
parcial si la funcin (m) = 1 : Nm N es recursiva parcial. En general,
: Nm Qk , con = (1 , . . . , k ) , es recursiva parcial si cada una de sus
componentes i : Nm Q es recursiva parcial. En particular, una funcin
recursiva total f : N Q se denomina una sucesin computable de nmeros
racionales y se denotar por (qn )
n=1 , donde qn = f (n) . Anlogamente al
caso natural, A Q es recursivo si su funcin caracterstica A : Q {0, 1}
es recursiva.
Definicin 2.1. Decimos que R es computable si existe una sucesin
computable (qn )
n=1 de racionales tal que
| qn |

1
,
2n

para todo n.

La funcin recursiva f : N Q que satisface f (n) = qn se denomina funcin


de aproximacin para . Diremos que z C es computable si Re z Im z son
reales computables. Por comodidad, introducimos la siguiente notacin:
Rc = { R | es computable} ,

Cc = {a + bi | a, b Rc }

Propiedades bsicas de los nmeros computables

21

y
A = {z C | z es algebraico} .

Si identificamos Q + iQ con Q2 , se puede ver fcilmente que z Cc si, y slo


si, existe una funcin total recursiva g : N Q2 tal que g (n) = rn + isn y se
satisface que
1
para todo n.
|z (rn + isn )| n ,
2
Anlogamente al caso real, denominaremos g : N Q2 una funcin de aproximacin para z.
Informalmente, describir un nmero computable z se reduce a determinar
un ndice e tal que la mquina de Turing Me genera aproximaciones para z en
el sentido de las anteriores definiciones. En general, es imposible operar directamente con los nmeros computables. En lugar de ello, se elige un mtodo de
codificacin computable adecuado y se opera con los ndices correspondientes.
Necesitamos describir con detalle una forma adecuada de codificar ktuplas de nmeros computables. Por brevedad, denotemos por
N = {N, Q, Rc , Cc }
la familia de sistemas numricos computables.
Definicin 2.2. Supongamos que A N. Un cdigo para z A es un nmero
natural e que se define por casos:
(a) si A = N, entonces e = z.
(b) si A = Q, entonces e = 1 (z) .
(c) si A = Rc , entonces e es el ndice de una funcin de aproximacin
e : N Q para z.
(d) si A = Cc , entonces e = (e1 , e2 ) donde e1 , e2 son cdigos para Re z
Im z de acuerdo a los casos (a) (c).
Por ejemplo, un cdigo para z = 2 + i sera un natural n = (2, m) , donde
m : N Q es una funcin de aproximacin para .
En general, sean A1 , . . . , Ak N. Un cdigo para z = (z1 , . . . , zk )
A1 Ak es una k-tupla e = (e1 , . . . , ek ) Nk donde ei es un cdigo para
zi Ai en el sentido de la definicin 2.2, para todo i = 1, . . . , k.
A primera vista, esta nocin de cdigo puede parecer algo artificial, pero
es consistente con la prctica usual en el anlisis constructivo.
Lema 2.3. Para todo A, A N existe una funcin parcial recursiva : N
N tal que para todo z A A , si e es un cdigo para z A, entonces (e)
es un cdigo para z A .

22

C. Parra y J. Surez

Demostracin. Consideremos algunos de los casos ms relevantes. Para A =


Rc y A = N, dado e N definimos (e) como el menor natural k tal que
1
|k e (2)| < .
2
Ahora, supongamos que e es un cdigo para z A. Si z A A = N,
entonces k existe y, en dicho caso, k = z. Por tanto, (e) = k es un cdigo
para z A . Para A = Rc y A = Cc , dado e N definimos
(e) = (e, 0) .
Ahora, si e es un cdigo para z A y z A A = Rc , entonces (e) es
un cdigo para z A . Para A = Cc y A = Q, dado e N computamos el
nico (e1 , e2 ) N2 tal que (e1 , e2 ) = e y definimos (e) = e1 . Ahora, si e es
un cdigo para z A, entonces e1 es un cdigo para Re z. Si adems z A ,
entonces z = Re z y (e) = e1 es un cdigo para z A . Para A = N y
A = Rc , primero consideramos una funcin total recursiva : N2 Q dada
por
(e, n) = e.
Por el teorema s-m-n, existe una funcin total recursiva : N N tal que
para todo n : (e) = (e, ) . Si e es un cdigo para z A, entonces z = e. Por
tanto, (e) es una funcin de aproximacin para z. Esto es, (e) es un cdigo
para z A . Los restantes casos se pueden obtener de forma anloga.
Como consecuencia inmediata se obtiene el siguiente corolario.
Corolario 2.4. Para todo Ai , Ai N, con 1 i Qk, existe
Q una funcin
k
k

parcial recursivaQ : N N tal que para todo z Ai Q Ai , si e es un


cdigo para z Ai , entonces (e) es un cdigo para z Ai .

Ahora, proponemos una generalizacin de la nocin de funcin parcial recursiva.

Definicin 2.5. Sean A1 , . . . , Ak , B1 , . . . , Bj N. Decimos que una funcin


parcial F : A1 Ak B1 Bj es computable si existe una funcin
parcial recursiva : Nk Nj tal que para todo z dom (F ) : si e es un
cdigo para z, entonces
e dom ()

(e) es un cdigo para F (z) .

En la definicin anterior, surge una ambigedad respecto a la computabilidad


de F si su dominio se considera contenido en un conjunto de salida diferente
A1 Ak (similarmente si modificamos su conjunto de llegada). La ambigedad consiste en que se pueden generar dos funciones parciales F, Fb con el
mismo grfico y no es obvio que una sea computable si y slo si la otra lo es.
Esta aparente inconsistencia de nuestra definicin se resuelve a continuacin.

Propiedades bsicas de los nmeros computables

23

Lema 2.6. Sean Ai , Ai , B N, con 1 i k y F : A1 Ak B una


funcin parcial. Si dom (F ) A1 Ak , definimos Fb : A1 Ak B
por

F (z) ,
si z dom (F ) ,
b
F (z) =
indefinido, en caso contrario.
Entonces F es computable sii Fb es computable.

Demostracin. Basta mostrar que si F es computable, entonces Fb es computable. Luego, supongamos que existe una funcin parcial recursiva : Nk N
con las propiedades de la definicin 2.5. Basta tomar la funcin parcial recursiva b = , donde : Nk Nk es la funcin dada por el corolario 2.4. Por
tanto, Fb es computable.

De la anterior discusin tcnica, podemos concluir que intuitivamente una


funcin computable est determinada por un procedimiento efectivo que toma
cdigos apropiados para elementos de su dominio y los envia en cdigos para
las correspondientes imgenes.
Las siguientes propiedades son ahora inmediatas.
Proposicin 2.7. (a) Una funcin F : Ckc Cm es computable sii cada
componente Fi : Ckc C es computable.
(b) Una funcin F : Ckc C es computable sii Re (F ) : Ckc R y Im (F ) :
Ckc R son computables.
r
m
(c) Si F : Ckc Cm
c y G : Cc Cc son funciones parciales computables,
entonces, G F es computable.

En analoga con la familia de funciones primitivas recursivas, introducimos


las siguientes operaciones entre funciones.
Definicin 2.8.

(a) Sustitucin:

f (w1 , . . . , wn ) = g (h1 (w1 , . . . , wn ) , . . . , hm (w1 , . . . , wn )) .


Decimos que f : Cn C se obtuvo por sustitucin de las funciones
g : Cm C, h1 : Cn C, . . . , hm : Cn C.
(b) Recursin:
f (w1 , . . . , wk , 0)
= g (w1 , . . . , wk )
f (w1 , . . . , wk , n + 1) = h (w1 , . . . , wk , n, f (w1 , . . . , wk , n))
Decimos que f : Ck N C se obtuvo por recursin de g : Ck C y
h : Ck N C C.

24

C. Parra y J. Surez

Teorema 2.9. La familia de funciones computables es cerrada bajo las operaciones de sustitucin y recursin.
Demostracin. Para la sustitucin, basta aplicar la proposicin 2.7 (a) y (c).
Ahora para la clausura bajo recursin, dadas las funciones computables g :
Ckc Cc y h : Ckc N Cc Cc , el siguiente procedimiento computa
f (w1 , . . . , wk , n):
1.
Haga w := g (w1 , . . . , wk ) .
2.
si n = 0, imprima w y pare
3.
en caso contrario
para i = 1 hasta n haga
w := h (w1 , . . . , wk , i, w)
4.
imprima w
Luego, f : Ckc N Cc es computable.
3

Propiedades y ejemplos

Es claro que un nmero real x es computable si, y slo si, su parte decimal
es computable. Esto nos permite ofrecer las siguientes equivalencias.
Proposicin 3.1. Sea (0, 1) . Las siguientes afirmaciones son equivalentes:
(a) es computable.
(b) La cortadura izquierda L () = {q Q | q < } es un conjunto recursivo.
(c) Existe una funcin computable f : N {0, 1} tal que
=

X
f (n)
n=1

2n

Demostracin. Primero veamos que (a) (b). Notemos que si Q, entonce


es inmediato que L () es recursivo. Ahora, sea
/ Q. Dado q Q, existe m
1
tal que | q| > 2m . Por tanto, para la aproximacin m-sima qm+1 de se
cumple que
|qm+1 q| |qm+1 | | q| >

1
1
1
m+1 = m+1 .
m
2
2
2

Luego, computamos q1 , q2 , . . . hasta hallar qk que satisfaga |qk q| >


Entonces,
1
|qk | k < |qk q| .
2

1
.
2k

Propiedades bsicas de los nmeros computables

25

Por tanto, q < sii q < qk . As, tenemos un procedimiento para decidir si
q < ; esto es, L () es recursivo. Ahora, veamos que (b) (c). De nuevo,
consideremos dos casos. Es un hecho elemental que se pueden computar los
bits de cualquier racional. Para
/ Q, basta observar que para todo n se
cumple que
n
X
1
ak
+ n+1 < .
an+1 = 1 sii
2k
2
k=1

Como L () es recursivo, entonces lo anterior describe un procedimiento efectivo para


Xn calcular los bits de . Por ltimo, para (c) (a) basta tomar
qn :=
ak 2k .
k=1

El contenido del enunciado (c) de la proposicin 3.1 corresponde a la definicin


original de nmero computable que Turing propuso en [8]. Cabe mencionar
que las implicaciones (a) (b) y (b) (c) no son efectivas, lo cual es de
esperarse dado que en las pruebas debemos distinguir entre el caso racional e
irracional. Por tanto, las anteriores definiciones no son efectivamente equivalentes. De hecho, se puede mostrar que la implicacin (a) (c) tampoco es
efectiva. Esto significa que no existe un procedimiento efectivo que aplicado
a un cdigo para un real computable d como salida un ndice para un
algoritmo que genere los bits de (para ms detalles ver [1]).
Dado que el conjunto de funciones de aproximacin es contable, los conjuntos Cc y Rc son contables, sin embargo, es imposible enumerarlos efectivamente. Para probar este notable hecho necesitamos la siguiente nocin.
Definicin 3.2. Decimos que una sucesin (zn )
n=1 en Cc es computable si
existe una funcin recursiva g : N N tal que g (n) es un cdigo para zn .
Proposicin 3.3. Cc y Rc no son efectivamente enumerables.
Demostracin. Basta ver que Rc no es efectivamente enumerable. De hecho, mostremos que si (n ) es una sucesin computable de nmeros reales
computables, entonces existe un nmero real computable en [0, 1] tal que
6= n para todo n. Construyamos una sucesin encajada de intervalos
I0 := [0, 1] I1 I2 In In+1
tal que para todo n 1 se satisface lo siguiente:(i) In es el tercio derecho
o el tercio izquierdo de In1 .(ii) k
/ In para k = 1, . . . , n. Suponiendo que
hemos construido I1 , I2 , . . . , In1 con las propiedades requeridas, construimos
In mediante el siguiente procedimiento: sean J1 el tercio izquierdo, J2 el tercio
medio y J3 el tercio derecho de In1 . Sea xn el punto medio de In . Por
(n)
hiptesis, podemos computar un nmero racional rn = qn+1 tal que
|n rn |

1
2n+1

26

C. Parra y J. Surez

Ahora, si rn xn , hacemos In = J3 . En caso contrario, hacemos In = J1 .


En cualquier caso, n
/ In . Como la longitud de In es 31n , existe un nico
nmero real tal que
\

In .
n=1

Por (ii), es inmediato que 6= n para todo n. Adems la funcin f : N Q,


dada por f (n) = bn = extremo derecho de In , es claramente computable.
Como
1
1
para todo n,
| bn | n < n ,
3
2
se sigue que Rc .
De lo anterior se sigue que cualquier intervalo cerrado no degenerado de R
contiene un conjunto no contable de nmeros no computables. Por otro lado,
el siguiente lema nos ofrece un criterio muy sencillo para definir nmeros no
computables.
Lema 3.4. Sean A N y
:=

X
A (n)
n=1

3n

[0, 1] .

Entonces Rc si y slo si A es recursivo.


Demostracin. Si A es recursivo, entonces A : N {0, 1} es una funcin
recursiva. As, para aproximar a , basta tomar
qn :=

n
X
A (k)
k=1

3k

Ahora, supongamos que Rc y que (qn ) es una sucesin de racionales


que aproxima a 2. Definamos la funcin : N {0, 2} por el siguiente
procedimiento recursivo: (0) = 0 si y slo si 0 A y habiendo computado
(0) , . . . , (n 1) , definimos (n) por

Xn1 (k) 1
1

+ n1 ,
0
si
q2n+2 <

k=0 3
2 3

Xn1 (k) 1
1
(n) =
+ n1
2
si
q2n+2 >

k=0 3k
2
3

indefinido
en caso contrario.
Claramente, es recursiva parcial. Notemos que para cada n :
|2 q2n+2 |

1
22n+2

<

1
.
2 3n

Propiedades bsicas de los nmeros computables

27

Si A (n) = 0, entonces

2
Por tanto,

Xn1 2 A (k)
k=0

3k

q2n+2 < 2 +

Xn1 2 A (k)
1
2
=
+ n.
k
k
k=n+1 3
k=0
3
3

Xn1 2 A (k) 1
1
1

+ n1 .
n
k
k=0
23
3
2 3

Similarmente, si A (n) = 1, entonces


q2n+2 >

Xn1 2 A (k)
k=0

3k

1
1

.
2 3n1

Es fcil ver, por induccin sobre n, que (n) = 2 A (n) .


Es un hecho notable que la equivalencia anterior es efectiva, aunque dicha
prueba es ms complicada (ver [1]). Ahora, si tomamos A = K, podemos
concluir que el correspondiente nmero real
K =

X
K (n)

n=1

3n

no es computable. Por otra parte en 1974, apoyndose en la Teora Algortmica


de la Informacin, Chaitin defini un nmero real no computable, de hecho
aleatorio, que llam la probabilidad de parada . Debido a sus conexiones con
la Incompletez sintctica, la Aleatoriedad y la insolubilidad algortmica del
Dcimo Problema de Hilbert, el nmero se ha convertido en una de las
constantes ms clebres de la matemtica (para una descripcin informal de
ver el reciente artculo [3]).
Intuitivamente, representa la probabilidad de que cierto tipo de mquina de Turing universal U (llamada autolimitante) se detenga cuando se
le ingresa una entrada u elegida al azar. Es importante observar que depende de la mquina U (equivalentemente, depende de la gdelizacin de las
mquinas de Turing autolimitantes) que se halla fijado. As, lo que tenemos
realmente es una familia de nmeros U, no una constante absoluta como
o e. Para un estudio ms detallado de y sus relaciones con la lgica y la
computabilidad, referimos el lector a [2] o [7].
De otro lado, es natural pensar que las operaciones aritmticas elementales entre nmeros computables sean computables. Sin embargo, este hecho
depende de la definicin que adoptemos. En otras palabras, podemos mostrar
que existe un procedimiento efectivo que aplicado a nmeros computables
, genera un cdigo para + . Pero tal procedimiento no existe si adoptamos la definicin original de Turing (ver [1]). Ahora, dado que las operaciones

28

C. Parra y J. Surez

de campo entre nmeros complejos estn definidas a partir de las operaciones entre nmeros reales, es suficiente restringirnos al caso real (Modificamos
ligeramente las pruebas correspondientes que aparecen en [1]).
Teorema 3.5. Las operaciones de suma, resta y producto de Rc Rc en Rc
y la operacin de divisin de Rc (Rc \ {0}) en Rc \ {0} son computables.
Demostracin. Veamos que el producto : Rc Rc Rc es computable.
Dados , Rc , sean i, j cdigos para y respectivamente. Luego, para
cada k :
| i (k) j (k)| | i (k)| || + | j (k)| |i (k)|
1 + |j (k)| + |i (k)|
.

2k
Ahora, consideremos la funcin parcial recursiva : N3 N dada por
(i, j, n)

menor k N tal que

1 + |j (k)| + |i (k)|
1
n.
k
2
2

Como
1 + |i (k)| + |j (k)| 1 + || +

1
2k

es claro que

+ || +

1
2k

|| + || + 3,

1 + |j (k)| + |i (k)|
= 0.
k
2k
lm

Luego, es total recursiva. Luego, la funcin f : N3 Q, dada por


f (i, j, n) = i ( (i, j, n)) j ( (i, j, n)) ,
tambin es total recursiva. As, por el teorema s-m-n, existe una funcin total
recursiva : N2 N tal que
(i,j) (n) = f (i, j, n) ,

para todo n.

Basta ver que (i, j) es un cdigo para . En efecto,




(i,j) (n) = | i ( (i, j, n)) j ( (i, j, n))|
1 + |j ( (i, j, n))| + |i ( (i, j, n))|

2(i,j,n)
1
n.
2
Luego, el producto en Rc es una operacin computable. De forma anloga, se
puede mostrar que la suma y la diferencia en Rc son computables. En cuanto a
la divisin en Rc , dada la computabilidad del producto y la proposicin 2.7 (c),

Propiedades bsicas de los nmeros computables

29

es suficiente probar que la operacin 1 : Rc \ {0} Rc \ {0} es computable.


Sean un nmero real computable no nulo y e un correspondiente cdigo
para . Teniendo presente la enumeracin (m ) de todas las funciones de N
en Q, podemos considerar la funcin parcial recursiva : N N dada por
(m)

menor k 2 tal que

1
2k2

|m (k)| .

Ahora, definamos una funcin parcial recursiva : N2 N por

1
si m (2 (m) + n 2)

est definido y es no nulo,


m (2 (m) + n 2)
(m, n) =

indefinido
en caso contrario.

Aplicando el teorema s-m-n, existe una funcin total recursiva : N N tal


5
que (m) = (m, ) para cada m. Como 6= 0, existe k0 tal que k0 || .
2
Luego,
5
1
1
1
|e (k0 )| || k0 k0 k0 = k0 2
2
2
2
2
y as, (e) est definido. Adems, para todo k (e) tenemos que
|e (k)| |e ( (e))| | e ( (e))| | e (k)|
1
1
1
1
(e)2 (e) (e) = (e)1 .
2
2
2
2
Por tanto,
1
2(e)1

lm |e (k)| = ||
k

1
2(e)1 .
||

Dado que (e) 2, para cada n N se tiene que 2 (e) + n 2 (e) y,


por tanto,
1
0 < (e)1 |e (2 (e) + n 2)| .
2
Luego, (e) (n) = (e, n) est definido y cumple que


(e)1 2(e)1

1
1
(e) (n) = | e (2 (e) + n 2)| 2
= n.
|| |e (2 (e) + n 2)|

2(e)+n2
2
2

Esto muestra que (e) es un cdigo para

Corolario 3.6. Las operaciones de suma, resta y producto de Cc Cc en C


y la operacin de divisin de Cc (Cc \ {0}) en C \ {0} son computables.

30
4

C. Parra y J. Surez

Orden y algoritmos de decisin en Rc

Notemos que, por el teorema 3.5, Rc es un subcampo ordenado de R. Sin


embargo, en general es computacionalmente imposible comparar dos reales
computables arbitrarios. La principal dificultad radica en el hecho en que un
nmero real computable slo se puede describir de forma indirecta a traves de
un cdigo (o una funcin de aproximacin). Intuitivamente, para comparar
dos nmeros reales computables uno necesitara conocer de antemano toda
la expasin binaria de los nmeros en cuestin. Lo cual nos lleva a la insolubilidad algortmica del problema de la parada, como lo ilustra el siguiente
resultado fundamental.
Lema 4.1. El problema de decidir si una funcin cualquiera i : N {0, 1}
recursiva total es idnticamente cero es algortmicamente insoluble.
Demostracin. Supongamos que existe una funcin recursiva : N {0, 1}
tal que si i : N {0, 1} es total recursiva, entonces i dom () y
(i) = 0

sii

i 0.

Definamos una funcin total recursiva H : N2 {0, 1} por



1, si Mm (m) para a lo sumo en n pasos
H (m, n) =
0, en caso contrario.
Por el teorema s-m-n existe una funcin total recursiva s : N N tal que
s(m) = H (m, ) . Como s(m) : N {0, 1} es recursiva, entonces s (m)
dom () y
(s (m)) = 0

sii

s(m) 0

sii

Mm (m) nunca para.

Si tomamos = s : N {0, 1} , tenemos que es recursiva y que


(m) = 0

sii

m K.

Por tanto, K sera recursivo; absurdo.


Proposicin 4.2. No existe un algoritmo que, aplicado a cualesquiera ,
Rc , decida si > .
Demostracin. Notemos que es suficiente mostrar que no existe un algoritmo
que, aplicado a un nmero real computable, decida si es positivo o negativo.
Luego, supongamos que existe una funcin parcial recursiva : N {0, 1}
tal que para todo Rc si e es un cdigo para , entonces e dom () y
(e) = 1

sii

> 0.

Propiedades bsicas de los nmeros computables

31

Ahora, dado i tal que i : N {0, 1} es una funcin total recursiva, definamos
=

X
i (n)

n=0

2n

Entonces Rc y la funcin f : N Q dada por


f (k) =

k
X
i (n)

n=0

(k N) .

2n

es una funcin de aproximacin para . Elijamos un ndice m tal que 1 f =


m . As, m es un cdigo para y m dom () . Si (m) = 1, entonces > 0
y, por tanto, existe n tal que i (n) = 1. Si (m) = 0, entonces 0.
Luego, i (n) = 0, para todo n. Es claro que el anterior razonamiento es
independiente del ndice m elegido para la funcin de aproximacin f para
y que
(i) = (m)
define una funcin parcial recursiva : N {0, 1} tal que
(i) = 0

sii

i 0.

Absurdo, pues se contradice el lema 4.1.

De acuerdo a la prueba de la proposicin 4.2 no existe una mquina de


Turing que aplicada a la entrada e (el cdigo para una funcin que aproxima a
) d como salida S cuando > 0 o No si 0. Intuitivamente, el problema
estriba en que la mquina codificada por e podra generar slo ceros como
aproximacin para y no es claro cunto tiempo debemos esperar para decidir
que la mquina nunca generar una aproximacin que obligue a que sea
positivo.
Proposicin 4.3. No existe un algoritmo que, aplicado a cualesquiera ,
Rc , decida si = .
Demostracin. Basta mostrar que no existe una funcin parcial recursiva :
N {0, 1} tal que para todo Rc si e es un cdigo para , entonces e
dom () y (e) = 0 sii = 0. En caso contrario, dado i tal que i : N {0, 1}
es una funcin total recursiva, consideramos el nmero real computable
=

X
i (n)

n=0

2n

32

C. Parra y J. Surez

con cdigo m. Si (m) = 0, entonces = 0. Luego, i (n) = 0, para todo n.


Si (m) = 1, entonces 6= 0 y, por tanto, existe n tal que i (n) = 1. As,
(i) = (m) define una funcin parcial recursiva : N {0, 1} tal que
sii

(i) = 0

i 0.

Absurdo, de nuevo se contradice el lema 4.1.


En contraste con la insolubilidad algortmica de los problemas previos,
es posible mostrar que existe un procedimiento efectivo que, aplicado a dos
nmeros reales computables distintos, decide cul es mayor.
Teorema 4.4. Existe un algoritmo que, aplicado a , Rc tales que 6= ,
decide si < .
Demostracin. Dado que < sii < 0 y que la diferencia en Rc
es computable (teorema 3.5), es suficiente mostrar que existe un algoritmo
que, aplicado a un nmero real computable no nulo, decide si es positivo o
negativo. Ahora, dado un cdigo e de un nmero arbitrario en Rc \ {0},
aplicamos el siguiente procedimiento:
1
1. Genere el menor n tal que |e (n + 1)| > n+1 .
2
2. Si e (n + 1) > 0, entonces
imprima el nmero es positivo y pare;
en caso contrario
imprima el nmero es negativo y pare.
Como 6= 0, existe n0 tal que || > 2n0 . Adems | e (n0 + 1)|
2n0 1 , implica que
|e (n0 + 1)| ||

1
2n0 +1

>

1
1
1

=
.
n
n
+1
n
2 0
2 0
2 0 +1

Por tanto, el paso 1 es efectivo. Ahora, notemos que

1
2n+1

e (n + 1)

1
2n+1

Si e (n + 1) > 0, entonces
e (n + 1)

1
1
1
> n+1 n+1 = 0.
2n+1
2
2

Similarmente, si e (n + 1) < 0, entonces < 0. Por tanto, el anterior procedimiento decide efectivamente si es positivo negativo.
Por ltimo, mencionamos que no existe un procedimiento efectivo que
aplicado a un cdigo para un racional q decida si q = 0. Similarmente, tampoco existe un algoritmo que aplicado a un Rc determine si es racional
irracional (ver [1]).

33

Propiedades bsicas de los nmeros computables

Aplicaciones al anlisis

Uno de los teoremas clsicos del anlisis real afirma que toda sucesin montona y acotada es convergente. Como consecuencia de la insolubilidad algortmica del problema de la parada, este principio fundamental es falso en
Rc . Para justificar este hecho, introducimos la siguiente definicin y unos
resultados preliminares.
Definicin 5.1. Una sucesin (zn ) en Cc converge efectivamente a z C si
existe una funcin total recursiva h : N N tal que para todo m :
|z zn | 2m ,

si n h (m) .

Proposicin 5.2. Si (zn ) es una sucesin computable en Cc que converge


efectivamente a z, entonces z Cc .
Demostracin. Por hiptesis, existen funciones totales recursivas g, h : N N
tales que para cada n, m : g(n) : N Q es una funcin de aproximacin para
zn y si n h (m) , entonces
|z zn | 2m .
Ahora, definamos una funcin total recursiva f : N Q por
f (n) gh(n+1) (n + 1) .
Luego, para cada n,



1
|z f (n)| z zh(n+1) + zh(n+1) g(h(n+1)) (n + 1) n .
2

Por tanto, z Cc .

La siguiente proposicin es un caso particular de un teorema de CaludeHertling. Para la versin general, ver [2].
Proposicin 5.3. Toda sucesin computable montona de nmeros racionales que converge a un nmero real computable converge efectivamente.
Demostracin. Sea (an ) una sucesin computable montona de racionales que
converge a Rc . Sea (qn ) una sucesin de racionales que aproximen a .
Dado m N existe k tal que
| ak |

1
2m+2

Para este k se cumple que


|ak qm+2 | |ak | + | qm+2 |

1
2m+1

34

C. Parra y J. Surez

Luego, podemos definir una funcin total recursiva h : N N por


h (m)

menor k N tal que |ak qm+2 |

1
.
2m+1

Por la monotona de (an ) , para todo m y todo n h (m) se tiene que






1
| an | ah(m) | qm+2 | + qm+2 ah(m) < m .
2

Por tanto, (an ) converge efectivamente a .

Teorema 5.4 (Specker). Existe una sucesin computable (an ) Q estrictamente creciente en [0, 1] que no converge efectivamente.
Demostracin. Sea f : N K una enumeracin efectiva de K y definamos
an

n
X

1
Q.
f (k)+1
2
k=0

Claramente, (an ) es una sucesin computable estrictamente creciente en [0, 1]


que converge a un nmero real . Supongamos que (an ) converge efectivamente. Luego, sea h : N N una funcin total recursiva tal que
| an |

1
,
2m

si n h (m) .

Notemos que si n > h (m + 3) , entonces


1
2f (n)+1



an ah(m+3) |an | + ah(m+3) <

1
.
2m+1

Por tanto, m < f (n) . As, se sigue que m K sii existe n h (m + 3) tal
que f (n) = m. Comparando m con
f (1) , f (2) , . . . , f (h (m + 3)) ,
podemos decidir si m K. Pero esto es imposible, dado que K no es recursivo.
Un nmero real para el cual exista una sucesin montona computable
de nmeros racionales que converge a l, pero no efectivamente, se denomina
nmero de Specker. Por la proposicin 5.3 se sigue que los nmeros de Specker son no computables. Tambin podemos concluir que existen sucesiones
montonas y acotadas en Rc que convergen a nmeros no computables.
Definicin 5.5. Para cada n N, sea fn : Cc Cc una funcin parcial
computable. Decimos que la sucesin (fn )
n=0 es computable si la funcin parcial (n, z) 7 fn (z) de N Cc en Cc computable.

Propiedades bsicas de los nmeros computables

35

Podemos generalizar la proposicin 5.2 y probar que toda funcin analtica cuya representacin en series de potencias tenga coeficientes computables
restringida a cualquier disco cerrado de su dominio es una funcin computable.
Teorema 5.6. Sean f, f0 , f1 , . . . funciones parciales complejas con dominio
D C. Supongamos que existe una funcin total recursiva h : N N tal que
|f (z) fn (z)|

1
,
2m

si z D y n h (m) .

Si (fn ) es una sucesin computable de funciones computables, entonces f es


una funcin parcial computable de Cc en Cc .
Demostracin. Por hiptesis, existe una funcin parcial recursiva : N2 N
tal que si e : N Q2 es una funcin de aproximacin para z D, entonces
(n, e) dom () y (n,e) : N Q2 es una funcin de aproximacin para
fn (z) . Definamos una funcin parcial recursiva : N2 Q2 por
(e, n) (h(n+1),e) (n + 1) .
Aplicando el teorema s-m-n, existe una funcin total recursiva s : N N tal
que s(e) = (e, ) para cada e. Ahora, sean z D computable y e un cdigo
para z. Entonces, para cada n :



f (z) s(e) (n) f (z) fh(n+1) (z) +


fh(n+1) (z) (h(n+1),e) (n + 1) 1 + 1 = 1 .
2n+1 2n+1
2n

Por tanto, s (e) es un cdigo para f (z) . As, f es una funcin parcial computable de D Cc en Cc .
Teorema 5.7. Sea
f (z) =

n=0

n z n

una serie de potencias con disco abierto de convergencia . Si (n ) Cc


es una sucesin computable, entonces f restringida a cualquier disco cerrado
es una funcin computable.
Demostracin. Dado un disco cerrado , tomamos z0 tal que
D (0, r), donde r = |z0 | . Luego, existen racionales b y M > 0 tales que
r<by

X
|n | bn M.
n=0

Ahora, escogemos n0 tal que :

 r n0
b

1
2

36

C. Parra y J. Surez

y definimos
fn (z) =

n+n
X0
k=0

k z k ,

(n N) .

Sea ahora h la funcin computable definida como sigue: h (m) es el mnimo


entero n0 tal que 2h(m) M 2m . Entonces, para todo z D (0, r) y todo
n h (m) , se cumple que

  |z| k

X
X
k
k
|k | b
|f (z) fn (z)|
|k | |z| =
b
k=n+n0 +1

 r k
b

k=n0 +n+1
 k
X

k=n+1

1
2

k=n+n0 +1

=M

k=n+1

h r n0 ik
b

M
1
m.
n
2
2

Aplicando el teorema 2.9 y el corolario 3.6 (b), es claro que (fn ) es una
sucesin computable de funciones (totales) computables. Luego, se satisfacen
las condiciones del teorema anterior con D = D (0, r) . Por tanto, f restringida
a es computable.
Corolario 5.8. Sea
f (z) =

n=0

n z n ,

n Cc ,

una serie de potencias con disco abierto de convergencia . Si (n ) es una


sucesin computable, entonces para todo z computable se cumple que
f (z) es computable.
Como otra consecuencia directa del teorema 5.7 podemos concluir que las
funciones elementales trascendentales (ez , cos z, arcsin z, log z, etc) aplicadas
a nmeros computables generan nmeros computables. De este modo, las
constantes trascendentes usuales que aparecen en el anlisis, como e, , log 2,
entre otras, son computables.
6

Aplicaciones al lgebra

En esta seccin, nos proponemos mostrar que el campo Cc es algebraicamente


cerrado y contiene a los nmeros algebraicos. Iniciamos probando la siguiente
versin efectiva del teorema del valor intermedio para polinomios en Rc .
Proposicin 6.1. Sean p (x) un polinomio en Rc [x] y < en Rc tales que
p () p () < 0. Si p (x) es montono en el intervalo [, ] , entonces existe
un nico Rc tal que p () = 0.

Propiedades bsicas de los nmeros computables

37

Demostracin. Sin prdida de generalidad, supongamos que p (x) es creciente


en [, ]. Por el teorema del valor intermedio, existe un nico R tal que
p () = 0. Veamos que Rc . Consideremos el siguiente procedimiento de biseccin. Dado el intervalo [, ] calculamos su punto medio 1 := 12 ( + ) .
Ahora, tomamos los subintervalos resultantes [, 1 ] , [1 , ] y sus correspondientes puntos medios, generando as cuatro subintervalos. Si iteramos este
procedimiento, generamos una familia infinita de subintervalos de [, ] . Sea
D el conjunto formado por los extremos de dichos subintervalos. Es claro
que D Rc . Se presentan dos casos: Caso 1. D. Obviamente, Rc .
Caso 2.
/ D. Por tanto, p (d) 6= 0, para todo d D. Entonces, definiremos una sucesin computable (n ) de aproximaciones de acuerdo al siguiente
procedimiento.
1. Haga L := y R := .
2. Para k de 1 hasta n
L+R
y compute p (k )
haga k :=
2
si p (k ) < 01 , entonces
haga L := k
en caso contrario
haga R := k
3. Genere n .
Es claro que n D y que
|n |

| |
.
2n

Por tanto, (n )
n=1 es una sucesin de nmeros computables que converge
efectivamente a . Por la proposicin 5.2, es computable.
Teorema 6.2. A Cc . Esto es, todo nmero algebraico es computable.
Demostracin. Por la definicin de nmero algebraico, se tiene que z A si
y slo si z A. Dado que A es un campo, se cumple entonces que
zA

si y slo si

Re z, Im z A.

Por tanto, es suficiente probar que todo real algebraico en [0, 1] es


computable. Mostremos por induccin sobre el grado de cualquier polinomio
p (x) Z [x] que todas sus races en [0, 1] son computables. Cuando n = 1,
b
p (x) = ax + b, donde a, b Z. En este caso, = Q es obviamente
a
computable. Supongamos que para todo polinomio con grado menor que n
se cumple el enunciado y sea p (x) un polinomio de grado n. Como p (x) ,
la derivada de p, es un polinomio de grado n 1, por hiptesis inductiva,

38

C. Parra y J. Surez

sus races en [0, 1] son reales computables que se pueden ordenar en forma
creciente:
0 = 0 1 < 2 < < r1 1 = r .
Luego, si [0, 1] es una raz de p (x) , es claro que existe k tal que
[k , k+1 ] . Si es uno de los extremos, entonces es computable. En caso
contrario, es el nico cero de p (x) en [k , k+1 ], dado que p (x) es montono
en [k , k+1 ] . Adems k , k+1 Rc y p (k )p (k+1 ) < 0. Por la proposicin
6.1, es computable.
Proposicin 6.3. Rc es un campo real cerrado.
Demostracin. Primero mostremos que si R+
c , entonces tiene una raz
cuadrada en Rc . Para ello, basta aplicar la proposicin 6.1 al polinomio p (x) =
x2 Rc [x] en el intervalo [0, + 1] . Ahora, consideremos un polinomio
p (x) Rc [x] de grado impar y veamos que p tiene un cero en Rc . Como el
grado de p (x) es impar, p toma valores positivos y negativos (arbitrariamente
grandes). Por el teorema del valor intermedio, p tiene al menos una raz real.
Podemos suponer, sin prdida de generalidad, que lm p (x) = . Sea
x

el primer cero de p (x) en cierto intervalo [, ] tal que


p () < 0

p () > 0.

Por continuidad, podemos suponer que , Q y que es el nico cero de p


en [, ]. Como p (x) es creciente en [, ] , por la proposicin 6.1, Rc .
De la anterior proposicin, podemos concluir que la extensin Rc [i] es un
campo algebraicamente cerrado (ver [6]). Adems, es claro que
Rc [i] = {a + bi | a, b Rc } = Cc .
As, hemos obtenido el siguiente
Teorema 6.4. Cc es un campo algebraicamente cerrado.
Agradecimientos. Este trabajo hace parte del proyecto Aleatoriedad y
Lgica (cdigo QUIP: 030802734) financiado por la Direccin de Investigacin, sede Medelln (DIME), de la Universidad Nacional de Colombia.
Referencias
[1] Douglas S. Bridges. Computability. A Mathematical Sketchbook. Springer-Verlag, New York, 1994.
[2] Cristian S. Calude. Information and Randomness - An Algorithmic Perspective, Springer-Verlag, Berlin, 2002.

Propiedades bsicas de los nmeros computables

39

[3] Gregory Chaitin. The Limits of Reason. Scientific American, 294, No. 3
(March 2006), p. 74-81.
[4] Nigel J. Cutland. Computability. Cambridge University Press, Cambridge,
1997.
[5] Martin Davis (ed). The Undecidable, Raven Press, New York, 1965.
[6] Serge Lang.Algebra. Springer-Verlag, New York, 2005.
[7] Johany A. Surez. El Nmero Omega.Informacin, Incompletez y Aleatoriedad. Tesis de Grado. Universidad de Antioquia, Medelln. 2003.
[8] Alan M. Turing. On Computable Numbers, with an Application to the
Entscheidungsproblem. Davis, M (ed) The Undecidable. p 115-154, 1965.
Direccin de los autores: Carlos M. Parra , Universidad Nacional de Colombia, Sede
Medelln, cmparra@unalmed.edu.co Johany A. Surez , Universidad Nacional
de Colombia, Sede Medelln, jasuarezr@unalmed.edu.co

Das könnte Ihnen auch gefallen