Sei sulla pagina 1di 18

Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM Mquinas de Turing Indecidibilidad Incomputabilidad T.

de Church-Turing Modelos equivalentes a TM


Definicin y ejemplos Variantes Recursivo vs. recursivamente enumerable

Entscheidungsproblem I

LENGUAJES RECURSIVAMENTE ENUMERABLES Las mquinas de Turing se inventaron para contestar una pregunta abierta
MQUINAS DE TURING. DECIDIBILIDAD en lgica matemtica:
OTROS MODELOS COMPUTACIONALES Sean 1 , . . . , n frmulas del clculo de predicados a las que
llamaremos axiomas.
Sea otra frmula a la que llamaremos candidato a teorema.
Francisco Hernndez Quiroz
Queremos un mtodo para poder contestar la pregunta
Departamento de Matemticas
Facultad de Ciencias, UNAM 1 , . . . , n |= ?
E-mail: fhq@ciencias.unam.mx
Pgina Web: www.matematicas.unam.mx/fhq
(Que se lee es una consecuencia lgica de 1 , . . . , n ?)
Facultad de Ciencias ste es el problema clsico de la decisin o Entscheidungsproblem.

Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 1 / 69 Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 2 / 69

Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM
Definicin y ejemplos Variantes Recursivo vs. recursivamente enumerable Definicin y ejemplos Variantes Recursivo vs. recursivamente enumerable

Procedimiento efectivo Mquinas de Turing (TM)

El mtodo que buscamos deber tener las siguientes caractersticas:


1 Deber expresarse en trminos tan formales como las instancias del Una mquina de Turing es un mecanismo muy simple que consiste en una
problema. cinta de lectura y escritura, una cabeza de lectura y escritura que recorre
2 Deber ser mecnico: su aplicacin se basar en reglas que se esta cinta (y que puede estar en diferentes estados) y una funcin que regula
siguen sin necesidad de interpretacin o de inspiracin. los movimientos de la cinta.
3 El mtodo deber especificarse de manera finita.
4 Los recursos utilizados deben ser finitos tanto espacial como
temporalmente y, de preferencia, deben poder acotarse con a a b b c c
anticipacin.
q
Church y Turing demostraron que no existe un mtodo para resolver el
Entscheidungsproblem que cumpla con lo anterior.
De paso, inventaron dos de los modelos ms populares de computacin.

Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 3 / 69 Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 4 / 69
Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM
Definicin y ejemplos Variantes Recursivo vs. recursivamente enumerable Definicin y ejemplos Variantes Recursivo vs. recursivamente enumerable

Definicin formal Aceptacin y rechazo I

Una configuracin es una terna


Una mquina de Turing est formada por los siguientes elementos:
un conjunto de estados Q;
(q, , n),
un alfabeto de entrada ;
donde q Q, y n N. La configuracin inicial es
un alfabeto de cinta, con ;

una funcin de transicin : Q Q {, } (s, , 0) .
los estados inicial, de aceptacin y de rechazo s, t, r Q,
respectivamente; Definiremos una relacin entre configuraciones. Sean
el smbolo de espacio en blanco ; [n]
el smbolo de inicio de la cinta .
Es imposible moverse a la izquierda del smbolo de inicio. el n-simo smbolo de la cadena y
Los estados de aceptacin y rechazo no se pueden abandonar.
[n/x]

Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 5 / 69 Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 6 / 69

Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM
Definicin y ejemplos Variantes Recursivo vs. recursivamente enumerable Definicin y ejemplos Variantes Recursivo vs. recursivamente enumerable

Aceptacin y rechazo II Ejemplos


la cadena resultante de sustituir ese smbolo por x. Una mquina que acepta {an bn c n }, con Q = {s, q1 , . . . , q10 , t, r},
Entonces: = {a, b, c}, = {a, b, c, , , } y definida por la tabla

(q, , n) (r, , m) sii (q, [n] ) = (r, b, ), = [n/b] , m = n + 1 a b c


s (s, , ) (s, a, ) (q1 , b, ) (q2 , c, ) (q3 , , )
o bien (q, [n] ) = (r, b, ), = [n/b] , m = n 1 q1 (r, , ) (q1 , b, ) (q2 , c, ) (q3 , )
q2 (r, , ) (r, , ) (q2 , c, ) (q3 , , )
es la cerradura transitiva y reflexiva de esta relacin. q3 (t, , ) (r, , ) (r, , ) (q4 , , ) (q3 , , )
Una mquina de Turing M se detiene con una entrada sii q4 (r, , ) (r, , ) (q5 , , ) (q4 , c, ) (q4 , , )

q5 (r, , ) (q6 , , ) (q5 , b, ) (q5 , , )
(s, , 0) (q,
, n) con q = t o bien q = r. q6 (q7 , , ) (q6 , a, ) (q6 , , )
q7 (q8 , , ) (r, , ) (r, , ) (q7 , , ) (t, , )
El lenguaje aceptado por M es q8 (q8 , a, ) (q9 , , ) (r, , ) (q8 , , ) (r, , )
q9 (q9 , b, ) (q10 , ) (q9 , , ) (r, , )
L(M) = { | (s,
, 0) (t,
, n)}. q10 (q10 , c, ) (q10 , , ) (q3 , , )

Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 7 / 69 Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 8 / 69
Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM
Definicin y ejemplos Variantes Recursivo vs. recursivamente enumerable Definicin y ejemplos Variantes Recursivo vs. recursivamente enumerable

Variantes de mquinas de Turing Varias cintas I


Una mquina de Turing con dos cintas tiene una funcin de transicin
: Q 2 Q Q 2 {, }2

Existen variantes de las TM que no aaden poder computacional (aunque s a a b b c c


ventajas prcticas):
Mquinas con varias cintas (se presentar el caso particular de dos q

cintas).
a b c a b c
Mquinas con cintas infinitas en ambos sentidos.
Mquinas no deterministas. Esta mquina se puede simular con una mquina de una sola cinta con
alfabeto
El ltimo caso tiene inters especial en la teora de la complejidad.
1 = { } ( {a | a })2 .
Todas estas variantes pueden reducirse al modelo original.
La cinta de esta mquina se ve as

a a b b c c
a b c a b c
Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 9 / 69 Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 10 / 69

Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM
Definicin y ejemplos Variantes Recursivo vs. recursivamente enumerable Definicin y ejemplos Variantes Recursivo vs. recursivamente enumerable

Varias cintas II Cinta infinita en ambos sentidos


Una mquina con cinta infinita en ambos sentidos se puede simular por
medio de una mquina con dos cintas:
Se elige un punto arbitrario en la cinta original.
Se divide la cinta original a partir de este punto.
La nueva mquina utiliza con smbolos del tipo a para indicar la posicin en Se copia la informacin de la cinta original a las dos cintas nuevas,
cada una de las cintas de la mquina original y simula de esta forma una invirtiendo el orden de una de ellas para simular la parte infinita hacia la
transicin original con una serie de transiciones en la nueva mquina. izquierda.

... a a a a b b b b c c c c ...

b b a a a a ...
b b c c c c ...

Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 11 / 69 Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 12 / 69
Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM
Definicin y ejemplos Variantes Recursivo vs. recursivamente enumerable Definicin y ejemplos Variantes Recursivo vs. recursivamente enumerable

TM no deterministas I TM no deterministas II

Una mquina de Turing no determinista (NTM) es similar a una TM, excepto


por
: Q P(Q {, }). en la tercera cinta se copiar la entrada original y se procesar de
acuerdo con las instrucciones de la mquina original, elegidas de
La aceptacin se produce sii existe una secuencia de elecciones que lleve al
acuerdo con las secuencias de la cinta 2:
estado de aceptacin.
Para reducir una NTM a un TM se utilizar una mquina con tres cintas: donde r es el nmero mximo de opciones que contiene la funcin original.
la primera cinta tendr la entrada original; Esta mquina aceptar la entrada sii en alguna de las simulaciones de la
mquina original acepta.
la segunda contendr secuencias de los dgitos 1, . . . , r, separadas por
el smbolo # ordenadas por longitud y lexicogrficamente:

1 # 2 # # r # 11 # 12 # # rr # 111 # 112 #

Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 13 / 69 Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 14 / 69

Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM
Definicin y ejemplos Variantes Recursivo vs. recursivamente enumerable TM universal Problema de la detencin Reduccin m Teorema de Rice

Lenguajes recursivos y recursivamente enumerables Propiedades decidibles, indecidibles y semidecidibles

Sea M TM. Dada una cadena , tenemos tres posibilidades:


1 M acepta , es decir, hs, , 0i M ht, , ni;
Sea P una propiedad de cadenas en , i.e., P() = V sii P es verdadera
2 M rechaza , es decir, hs, , 0i M hr, , ni; de . Por ejemplo, la propiedad
3 M no hace ninguna de las dos cosas anteriores pues entra en un ciclo
Primo() = V sii ||= n y n es primo.
infinito.
Diremos que M es total si para toda , M acepta o rechaza . Una propiedad P es
Definiremos ahora dos tipos de lenguajes. Sea L .
decidible sii { | P() = V } es recursivo
L es recursivo (rec) sii existe una M TM total tal que L = L(M);
indecidible sii { | P() = V } no es recursivo
L es recursivamente enumerable (r.e.) sii existe una M TM tal que semidecidible sii { | P() = V } es r.e.
L = L(M);
Como se ver ms adelante, algunos lenguajes que son r.e. no son rec.

Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 15 / 69 Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 16 / 69
Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM
TM universal Problema de la detencin Reduccin m Teorema de Rice TM universal Problema de la detencin Reduccin m Teorema de Rice

Indecidibilidad Codificacin de mquinas de Turing I

El primer paso es representar de manera adecuada una mquina de Turing


adecuada. Un esquema posible es el siguiente. Sea
M = hQ, , , , s, t, r, , i una TM con
De acuerdo con la definicin,todas las propiedades decidibles son
semidecidibles. |Q | = i
Sin embargo, algunas propiedades semidecidibles son indecidibles. || = j
Peor todava, existen tambin propiedades indecidibles que no son || = k
siquiera semidecidibles. s el m-simo estado
Para demostrar lo anterior, construiremos mquinas de Turing que se basan t el n-simo estado
en la idea de universalidad. r el p-simo estado
el q-simo carcter de
el r-simo carcter de

Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 17 / 69 Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 18 / 69

Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM
TM universal Problema de la detencin Reduccin m Teorema de Rice TM universal Problema de la detencin Reduccin m Teorema de Rice

Codificacin de mquinas de Turing II Codificacin de mquinas de Turing III

Entonces la cadena binaria siguiente codifica esta informacin

0i 10j 10k 10m 10n 10p 10q 10r 1 queda codificada por la cadena

Y una transicin en delta (su , av ) = (sw , ax , ) est representada por la 0n1 10n2 1 0nz 1
cadena
0u 10v 10w 10x 101 En adelante, designaremos con hMi y hi las codificaciones de la TM M y la
cadena , respectivamente.
Mientras que la transicin (su , av ) = (sw , ax , ) queda codificada en la Si las queremos combinar en una cadena usaremos el smbolo # para
cadena separarlas:
0u 10v 10w 10x 111. hMi#hi
Finalmente una cadena en de la forma

an1 an2 anz

Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 19 / 69 Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 20 / 69
Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM
TM universal Problema de la detencin Reduccin m Teorema de Rice TM universal Problema de la detencin Reduccin m Teorema de Rice

Mquina de Turing universal Problema de la detencin HP

Con las codificaciones anteriores podemos definir dos conjuntos:


Dada esta codificacin, se puede crear un mquina de Turing que, para
HP = {hMi#hi | M se detiene con la entrada }
todas M TM y M , simule la ejecucin de las instrucciones de
M con la entrada a partir de la cadena MP = {hMi#hi | L(M)}.

hMi#hi. El primer conjunto debe su nombre a que describe lo que se conoce


como el problema de la detencin (halting problem); y el segundo, el
Llamaremos mquina de Turing universal (o para abreviar TMU) a esta problema de la pertenencia (membership problem).
mquina y, con algunas leves modificaciones propias de cada caso, la Si HP fuera rec, la pregunta de si una TM dada se detiene con una
usaremos como base para construir TM especiales. entrada particular sera decidible. Algo anlogo se puede plantear para
Por ejemplo, podemos modificar la TMU de tal forma que al terminar de MP.
simular M con acepte la cadena hMi#hi sii M acept . En cambio, es muy fcil ver que ambos son r.e., pues una leve
adaptacin de la TMU nos lleva a tener TM que aceptan HP y MP
(vase la lmina anterior).
Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 21 / 69 Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 22 / 69

Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM
TM universal Problema de la detencin Reduccin m Teorema de Rice TM universal Problema de la detencin Reduccin m Teorema de Rice

HP no tiene solucin total I HP no tiene solucin total II


donde tenemos s en la entrada (M , ) si la TM codificada por la
HP no es rec, i.e. la pregunta de si una TM se detiene con una entrada cadena se detiene con la entrada ; y n, en caso contrario.
no es decidible. Si aceptamos la tesis de Church-Turing, esto equivale a
Por reduccin al absurdo, supongamos que existe una TM total H tal
decir que no existe un procedimiento efectivo para responder siempre
que
esta pregunta.
L(H) = HP = {hMi#hi | M se detiene con }
Antes de demostrar lo anterior, vase cmo la codificacin de las TM
nos permite ordenarlas lexicogrficamente. H nos permitira construir la tabla anterior sin error, pues
Se puede hacer lo mismo con las cadenas y, gracias a esto, construir hMi#hi L(H)
una tabla como la siguiente:
TM/cad.  0 1 ... ... sii M se detiene con la entrada .
M s s n ... n ... Considrese a hora la siguiente TM, H: para toda entrada hMi#hi, H
M0 s s s ... n ... la acepta si H la rechaza, y entra en un ciclo trivial en caso contrario.
... ... ... ... ... ... ... Obsrvese cmo H es muy fcil de construir, suponiendo que
M n n s ... n ... contamos ya con H.
Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 23 / 69 Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 24 / 69
Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM
TM universal Problema de la detencin Reduccin m Teorema de Rice TM universal Problema de la detencin Reduccin m Teorema de Rice

HP no tiene solucin total III HP no tiene solucin total IV


Por otro lado, la lista de TM codificada es exhaustiva (pero veremos que
H no est ah).
Nos podemos preguntar ahora si
En conclusin, la suposicin de que H existe nos lleva una
hHi#hHi HP,
contradiccin.
lo que equivale a decir que H se detiene cuando recibe como entrada la La demostracin anterior se basa en el mtodo de diagonalizacin de
cadena que la codifica. Cantor, pues H es la negacin de la diagonal de la tabla anterior, lo que
Pero en ese caso, por la definicin de H, esta TM debe entrar en un la hace diferir de todas los renglones de la lista.
loop trivial cuando tiene como entrada su propia descripcin, lo cual Esto contradice el supuesto de que la lista es exhaustiva.
contradice nuestra hiptesis.
Si por el contrario suponemos que

hHi#hHi 6 HP,

llegamos a una contradiccin anloga.


Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 25 / 69 Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 26 / 69

Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM
TM universal Problema de la detencin Reduccin m Teorema de Rice TM universal Problema de la detencin Reduccin m Teorema de Rice

Problemas indecidibles o que no son semidecidibles Complementos de lenguajes I

El problema de la detencin no es el nico indecidible; el problema de


El caso de HP se puede demostrar por medio de un teorema muy general.
la pertenencia tampoco es decidible.
Sin embargo, ambos problemas son semidecidibles, i.e., HP y MP son Definicin
r.e. Sea L . Designaremos su complemento con L. Si L es rec (r.e.),
Para demostrarlo, se necesitan adaptaciones muy simples de la TMU. entonces diremos que L es co-rec. (co-r.e.).
Dadas M TM y :
se simula M con y se acepta hMi#hi si M acepta (el lenguaje Teorema
aceptado es MP);
se simula M con , pero se acepta hMi#hi si M termina, ya sea con (a) Si tanto L como L son r.e., entonces ambos son rec.
aceptacin o rechazo (el lenguaje aceptado es HP). (b) Si L es rec, entonces es co-rec.
Otros problemas no son siquiera semidecidibles, e.g. determinar si una Dem. (a) Si L y L son r.e., existen M, M TM tales que
TM no se detiene con una entrada:
L(M) = L L(M) = L.
HP = {hMi#hi | M no se detiene con }.

Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 27 / 69 Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 28 / 69
Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM
TM universal Problema de la detencin Reduccin m Teorema de Rice TM universal Problema de la detencin Reduccin m Teorema de Rice

Complementos de lenguajes II Complementos de lenguajes III

La TMU se puede adaptar muy para obtener N TM tal que


Dado que L = L(M) o bien L = L(M), N siempre se detiene y, por
L(N) = L y N es total. tanto, L es recursivo.
Se puede construir una TM total para L de manera anloga.
N funciona as: Para (b) la hiptesis implica la existencia de una TM total que acepta L.
N tiene dos cintas y Basta modificar esta TM invirtiendo los estados de aceptacin y rechazo
para obtener otra TM total que acepta L.
N simula M en la primera cinta
N simula M en la segunda cinta Corolario
las simulaciones se realizan alternando pasos (para evitar la posibilidad Corolario. HP no es r.e.
de que N entre en un ciclo infinito si M o M lo hacen)
Dem. HP es r.e, y (a) implicara que si HP tambin fuera r.e., ambos seran
si M acepta , N acepta rec y ya se demostr que HP no es rec.
si M acepta , N rechaza.

Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 29 / 69 Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 30 / 69

Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM
TM universal Problema de la detencin Reduccin m Teorema de Rice TM universal Problema de la detencin Reduccin m Teorema de Rice

Funciones computables Reduccin m I

Hasta ahora hemos visto las TM como mecanismos para decidir Definicin
problemas (i.e., responder preguntas con s o no). Sean A y B . Una reduccin (no inyectiva) de A a B es una
Pero tambin podramos verlas como formas de calcular funciones. funcin computable : tal que para toda
Sea M TM, con y como alfabetos de entrada y de la cinta,
A sii () B.
respectivamente. Entonces, podemos definir una funcin
fM : como En general, escribiremos A m B sii existe una reduccin de A a B.
{(, ) | hsM , , 0i M ht, , ni}. El siguiente teorema ser de gran utilidad en adelante:
Obsrvese que fM no tiene por qu ser total. Teorema
Por otro lado, diremos que la funcin : es: Sean A, B y A m B. Entonces:
(a) Turing-computable sii existe una M TM tal que = fM ; (a) Si B es r.e (rec), entonces A tambin es r.e (rec).
(b) computable sii existe una M TM total tal que = fM . (b) Si A no es r.e. (rec), entonces B tampoco es r.e. (rec).

Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 31 / 69 Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 32 / 69
Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM
TM universal Problema de la detencin Reduccin m Teorema de Rice TM universal Problema de la detencin Reduccin m Teorema de Rice

Reduccin m II Ejemplos
Dem. Por hiptesis, existe computable tal que para toda
Sea
A sii () B. FIN = {hMi | L(M) es finito}
En el caso (a) existe una M TM (total) tal que L(M) = B. Entonces, Entonces
podemos construir una N TM (total) tal que L(N) = A. HP m MP
N procede as:
HP m FIN.
para toda , N calcula ();
simula M con (); El primer ejemplo se resuelve con una K TM total que, a partir de una
cadena hMi#hi, genera otra M 0 TM que, para toda entrada , simula
acepta si M acepta ().
M con y, si esta se detiene, acepta .
Entonces M 0 acepta todas las cadenas sii M se detiene con .
K computa la deseada y la pregunta hMi#hi HP? se convierte en la
N acepta sii M acepta () sii () B sii A.
pregunta hM 0 i#hi MP?, para cualquier arbitraria.
En cuanto a (b), es fcil ver que la reduccin nos permitira decidir la El segundo caso se puede demostrar con una construccin similar.
pertenencia a A por medio de la pertenencia a B si B fuera r.e. (rec).
Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 33 / 69 Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 34 / 69

Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM
TM universal Problema de la detencin Reduccin m Teorema de Rice TM universal Problema de la detencin Reduccin m Teorema de Rice

Propiedades no triviales de lenguajes r.e. Propiedades decidibles

Sea un alfabeto y consideremos ahora slo los subconjuntos de que


sean lenguajes r.e.
Nos interesan propiedades de lenguajes r.e. como las siguientes: Hay que observar que hablamos de propiedades de lenguajes y no de
cadenas. Sin embargo, los conceptos de decidibilidad, semidecibilidad e
ser regular;
indecibilidad se pueden extender a estas propiedades.
ser un CFL; Sea P una propiedad y sea L un r.e. Entonces P es decidible sii
ser infinito;
incluir a . M, N TM . L(N) = L M es total (hNi L(M) P(L) = V ).

Sea P una propiedad y L un lenguaje. Si P es cierta de L escribiremos Indecibilidad y semidecibilidad se definen de manera anloga.
P(L) = V . En caso contrario, P(L) = F .
Una propiedad que es cierta de algunos lenguajes r.e. pero no de otros es no
trivial. Todos los ejemplos anteriores son no triviales.

Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 35 / 69 Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 36 / 69
Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM
TM universal Problema de la detencin Reduccin m Teorema de Rice TM universal Problema de la detencin Reduccin m Teorema de Rice

Teorema de Rice I Teorema de Rice II


Sea P una propiedad no trivial de lenguajes r.e. Entonces P es indecidible.
Demostracin. Reduciremos HP al lenguaje
4 si N se detiene con , simula MA con y acepta si MA acepta.
{hMi | P(L(M)) = V }. Si hNi#hi 6 HP, L(K ) = . En caso contrario, L(K ) = L(MA ) = A. Es
decir,
Supongamos que P() = F . Como P no es trivial, existe A r.e. tal que
hNi#hi HP L(K ) = A P(L(K )) = P(A) = V
P(A) = V . hNi#hi 6 HP L(K ) = P(L(K )) = P() = F

Sea MA TM tal que L(MA ) = A. es decir,


Dada una N TM y una N , construimos una K = (hNi#hi) tal HP m {hMi | P(L(M)) = V }.
que para toda K
Como HP no es rec, {hMi | P(L(M)) = V } tampoco lo es y P es indecidible.
1 preserva una copia de en una cinta separada;
2 escribe en su cinta;
3 simula N con ;
Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 37 / 69 Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 38 / 69

Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM
TM universal Problema de la detencin Reduccin m Teorema de Rice TM universal Problema de la detencin Reduccin m Teorema de Rice

Segundo teorema de Rice I Segundo teorema de Rice II


Sea P una propiedad de lenguajes r.e. Diremos que P es montona si A, B Como P no es montona, existen A, B r.e. tales que
r.e.
A B P(A) = V P(B) = V . AB P(A) = V P(B) = F .

Por ejemplo, la propiedad de contener a  es montona, lo mismo que la Sean MA , MB TM tales que
propiedad de ser infinito, pero las propiedades de ser finito o regular no son
montonas. L(MA ) = A L(MB ) = B.
Segundo teorema de Rice. Sea P una propiedad de lenguajes r.e. no
montona. Entonces P no es siquiera semidecidible. K contar con tres cintas y proceder de la siguiente forma
Demostracin. Por reduccin de HP al conjunto 1 escribe en las cintas 1 y 2;
2 escribe en la cinta 3;
{hMi | P(L(M)) = V }. 3 simula MA en la cinta 1, MB en la cinta 2 y M en la cinta 3;
Para esto, M TM, M construimos una K TM tal que 4 acepta si ocurre cualquiera de los siguientes casos:
1 MA acepta o bien
hMi#hi HP sii hK i {hMi | P(L(M)) = V }. 2 MB acepta y M se detiene con .
Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 39 / 69 Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 40 / 69
Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM
TM universal Problema de la detencin Reduccin m Teorema de Rice TM con orculo Jerarqua aritmtica

Segundo teorema de Rice III Incomputabilidad y sus grados

Hasta ahora parece que los conjuntos incomputables se reducen a dos


tipos: los que no son recursivos y los que ni siquiera son
Entonces recursivamente enumerables.
hMi#hi HP L(K ) = L(MB ) P(L(K )) = P(L(MB )) = F En realidad, el panorama puede ser ms complejo: los conjuntos no r.e.
hMi#hi HP L(K ) = L(MA ) P(L(K )) = P(L(MA )) = V son clasificables en funcin de su grado de incomputabilidad.
El mtodo bsico es determinar qu problema necesitamos resolver
para que un conjunto se vuelva rec o r.e.
Las soluciones a problemas de decisin se pueden clasificar por medio
de orculos.

Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 41 / 69 Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 42 / 69

Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM
TM con orculo Jerarqua aritmtica TM con orculo Jerarqua aritmtica

Mquinas de Turing con orculo Reductibilidad-Turing

Un orculo es una cinta adicional donde se codifica la funcin


caracterstica de un conjunto. Sean A, B . A es recursivamente enumerable en B sii existe una
Supongamos que ordenamos las cadenas en un alfabeto y que la M TMO con orculo OB tal que
funcin : b N nos dice la posicin que le corresponde a una
cadena en el orden lexicogrfico. A = L(M).
Sea A . El orculo de A, denotado por OA es una cinta infinita Si M es total, entonces A es recursiva en B o Turing-reductible a B. En
que en cada celda guarda 0 o 1 de acuerdo con la regla smbolos
A T B.
A sii OA [n] = 1.
Ejemplos: MP T HP y HP T MP.
Una mquina de Turing con orculo (TMO) es una TM que durante un Obsrvese que HP T HP y vicerversa, pero HP 6m HP.
momento de su ejecucin puede entrar en un estado tal que puede
consultar el valor de una celda de un orculo.

Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 43 / 69 Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 44 / 69
Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM
TM con orculo Jerarqua aritmtica TM con orculo Jerarqua aritmtica

Jerarqua aritmtica Versin lgica de la jerarqua aritmtica


La relacin T nos permite clasificar lenguajes no r.e.:

01 = {lenguajes r.e.} Las observaciones anteriores se pueden generalizar por medio del siguiente
01 = {lenguajes rec} teorema:
0n+1 = {lenguajes r.e. en algn L 0n } 1 Un lenguaje L est en 0n sii una propiedad R (n + 1)-aria decidible tal
0n+1 = {lenguajes rec en algn L 0n }
L = { | 1 2 . . . . R(, 1 , . . . , n )}
0n = {complementos de lenguajes en 0n }
2 Un lenguaje L est en 0n sii una propiedad R (n + 1)-aria decidible tal

Alternativamente, un lenguaje L es r.e. sii existe una propiedad R decidible L = { | 1 2 . . . . R(, 1 , . . . , n )}


de pares de cadenas tal que L = { | . R(, )}. Por ejemplo
3 0n = 0n 0n .
HP = {hMi#hi | x . M se detiene con en x pasos}
MP = {hMi#hi | x . M acepta en x pasos}

Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 45 / 69 Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 46 / 69

Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM
TM con orculo Jerarqua aritmtica

Completitud Definiciones de computabilidad

Turing propuso sus mquinas como una definicin formal de la nocin


intuitiva de calculabilidad efectiva.
Definicin. Sea C un nivel de la jerarqua aritmtica y sea L un lenguaje. l mismo aplic su definicin a dos problemas: la determinacin de qu
Diremos que L es es un nmero computable y la demostracin de irresolubilidad del
C-difcil sii para todo A C, A m L. Entscheidungsproblem.
C-completo sii L es C-difcil y L C. Otros matemticos contemporneos propusieron otras formas de
definir la calculabilidad efectiva: el clculo lambda, las gramticas
Por ejemplo, HP y MP son 0n -completos.
formales, etc.
Es posible demostrar que, una vez que se acepta una nocin de
equivalencia adecuada, todos estas definiciones son equivalentes, en
el sentido de que nos permiten calcular la misma clase de funciones.

Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 47 / 69 Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 48 / 69
Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM

Tesis de Church-Turing Computabilidad-Turing


La equivalencia entre modelos de computacin llev a plantear la Para poder comparar los modelos que estudiaremos adoptaremos una
siguiente afirmacin: convencin similar a la que vimos antes.
Toda funcin es calculable efectivamente si y slo si es calculable por Sea M TM, con y como alfabetos de entrada y de la cinta,
una mquina de Turing. respectivamente. Entonces, podemos definir una funcin
Esta afirmacin es conocida como la tesis de Church-Turing, pues se fM : como
deriva del trabajo de ambos
{(, ) | hsM , , 0i M ht, , ni}.
Dado que afirma que una nocin intuitiva (calculabilidad efectiva) es
capturada por una nocin formal, no se puede decir propiamente que Obsrvese que fM no tiene por qu ser total.
est demostrada. Por otro lado, diremos que la funcin : es:
Pero es una hiptesis de trabajo conveniente y los resultados de (a) Turing-computable sii existe una M TM tal que = fM ;
computabilidad vistos en la seccin anterior pueden formularse de (b) computable sii existe una M TM total tal que = fM .
manera ms general si se acepta la validez de la tesis. Esta convencin se puede modificar para que se refiera a nmeros
Tambin es posible reformularla de manera que no se vea como una naturales y no a cadenas. Por ejemplo, podemos pensar en que la
afirmacin dogmtica, sino como un conjunto de axiomas de los cuales cadena se refiere al nmero natural que corresponde al lugar que
se pueden derivar los mismos resultados ocupa en el orden lexicogrfico.
Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 49 / 69 Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 50 / 69

Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM
Fun. recursivas Clculo Programas M. de registros Fun. recursivas Clculo Programas M. de registros

Funciones recursivas Funciones nuevas I

Las operaciones para crear nuevas funciones son:


Las funciones recursivas- son otro modelo de computabilidad. La Composicin. Si las funciones
terminologa adoptada presupone la tesis de Church-Turing.
Estas funciones son el mnimo conjunto cerrado bajo las operaciones de f : Nk N
composicin, recursin primitiva, minimizacin acotada y que contiene a las
siguientes funciones bsicas (donde x = x1 , . . . , xn ): y
g1 , . . . , gk : Nn N
Cero. La constante c : N0 N, con c = 0 es computable.
Sucesor. La funcin s : N N, con s(x) = x + 1, es computable. son computables entonces tambin lo es la funcin
Proyecciones. Las funciones kn : Nn N y kn (x1 , . . . , xn ) = xk , con f (g1 , . . . , gk ) : Nn N,
1 k n, son computables.
definida por
f (g1 (x), . . . , gk (x)).

Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 51 / 69 Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 52 / 69
Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM
Fun. recursivas Clculo Programas M. de registros Fun. recursivas Clculo Programas M. de registros

Funciones nuevas II Funciones nuevas III


Minimizacin no acotada. Sea
Recursin primitiva. Si
g : Nn+1 N
n
h1 , . . . , hk : N N
una funcin computable. Entonces, tambin es computable la funcin
y
f : Nn N,
g1 , . . . , gk : Nn+k+1 N
son computables, entonces tambin lo son las funciones definida por

f (x) = m donde m es el mnimo valor tal que:


f1 , . . . , fk : Nn+1 N,
g(x, m) = 0 y n m . g(x, n) est definida
definidas a continuacin = indefinida, en caso de que no exista tal m

fi (0, x) = hi (x) El valor de f (x) se denota con la expresin


fi (s(n), x) = gi (n, x, f1 (n, x), . . . , fk (n, x)).
y . g(y, x) = 0.

Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 53 / 69 Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 54 / 69

Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM
Fun. recursivas Clculo Programas M. de registros Fun. recursivas Clculo Programas M. de registros

Ejemplos Clculo lambda I

La funcin + suele definirse por medio de las siguientes ecuaciones


Las funciones recursivas tambin son expresables en el clculo .
0+x = x El conjunto de trminos del clculo se denotar por .
s(y) + x = s(y + x) La sintaxis del clculo lambda es al siguiente

En la notacin de las funciones tendramos: V | (x . ) | ()

h = 11 donde V denota una variable: w, x, y, z, w1 , . . .


g = s 33 La regla bsica es la reduccin
f (0, x) = 11 (x)
f (s(y), x) = s(33 (y, x, f (y, x))) ((x . M)N) M[x/N]

Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 55 / 69 Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 56 / 69
Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM
Fun. recursivas Clculo Programas M. de registros Fun. recursivas Clculo Programas M. de registros

Funciones recursivas en el clculo lambda I Funciones recursivas en el clculo lambda II


Sean M y N . Entonces: Obviamente, 0 y n + 1 definen los nmeros naturales. S y P son las
funciones predecesor y sucesor. V y F son los valores de verdad, Cero es
V def xy . x una funcin que nos da V si su argumento es 0 y F en caso contrario. in es,
F def xy . y por supuesto, la proyeccin i-sima con n argumentos. El trmino Y ser til
ms adelante para definir la recursin.
[M, N] def z . zMN
Supongamos que h : N N y g1 , . . . , gn : N N son funciones
0 def x . x definidas por los trminos H y G1 , . . . Gn , respectivamente, la
n + 1 def [F , n] composicin e(x) = h(g1 (x), . . . , gn (x)) se define con el trmino E
S def x . [F , x]
E def x . H(G1 x) . . . (Gn x).
P def x . xF
C def x . 0 Supongamos que h : N N y g : N N N son funciones computables
Cero def x . xV definidas por los trminos H, G . La funcin recursiva e : N N
definida a partir de h y g se define por medio del trmino :
in def x1 , . . . , xn . xi
Y def f . (x . f (xx))(x . f (xx)) E def Y f . x . (Cero x)(Hx)(G(P x)(f (P x)))
Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 57 / 69 Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 58 / 69

Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM
Fun. recursivas Clculo Programas M. de registros Fun. recursivas Clculo Programas M. de registros

Funciones recursivas en el clculo lambda III Lenguaje de programacin IMP

Sea g : N N N una funcin computable definida por el trmino G . Se trata de un CFL. Empezaremos con las expresiones aritmticas:
La funcin e : N N definida por minimizacin a partir de g es el trmino
A n | X | (A + A) | (A A) | (A A)
E def x[y . Cero(Gxy)]
donde n Z y X Loc.
Supongamos que ahora queremos definir la funcin suma del ejemplo Tenemos ahora las expresiones booleanas EB:
anterior en trminos de . Entonces:
B V | F | (A = A) | (A A) | B | (B B) | (B B)
H def x1 . x1
donde A EA. Finalmente, los comandos del lenguaje se definen as:
G def z, x1 , x2 . S((x1 , x2 , x3 . x3 )zx1 x2 )
SUMA def Y f . x, y . (Cero x)(Hy)(G(P x)y(f (P x)y)) C ::= skip | X := A | (C ; C) | (if B then C else C) | (while B do C).

donde A EA y B EB.

Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 59 / 69 Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 60 / 69
Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM
Fun. recursivas Clculo Programas M. de registros Fun. recursivas Clculo Programas M. de registros

Funciones recursivas y programas while I Funciones recursivas y programas while II

Lo haremos por induccin en la funciones recursivas.


Las funciones tambin son definibles por medio de programas de IMP. Sea
P0 def X0 := 0
n
f :N N PS def X0 := X1 + 1;
Pin def X0 := Xi ;
una funcin recursiva. El objeto es definir un programa P con al menos las
localidades Sean Pf y Pg1 , . . . , Pgk los programas correspondientes a las funciones
f : Nk N y g1 , . . . , gk : Nn N. Entonces, el programa correspondiente
X0 , . . . , Xn
a h = f (g1 , . . . , gk ) es
tal que
[ P]](X0 ) = f ((X1 ), . . . , (Xn )). Ph def Pg1 ; Y1 := X0 ; . . . Pgk ; Yk := X0 ;
X1 := Y1 ; . . . Xk := Yk ; Pf

Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 61 / 69 Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 62 / 69

Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM
Fun. recursivas Clculo Programas M. de registros Fun. recursivas Clculo Programas M. de registros

Funciones recursivas y programas while III Funciones recursivas y programas while IV


Por hiptesis inductiva, suponemos la existencia de dos programas
Veamos ahora un caso restringido para la recursin primitiva. Supongamos
que tenemos las funciones [ Ph ] (X0 ) = h((X1 ))
h:NN [ Pg ] (X0 ) = g((Z ), (X1 ), (X2 ))
y
Entonces Pf es el programa
g : N3 N
y a partir de ellas definimos la funcin f : N2 N: W := Z ; Y1 := X1 ; % Guardamos los argumentos originales de f
Y0 := 0; % Usaremos a Y0 como contador
f (0, x1 ) = h(x1 ) Ph ; % Ejecutamos el programa del caso base
f (s(n), x1 ) = g(n, x1 , f (n, x1 )) while Y0 < W do
Z := Y0 ;
Queremos un programa Pf tal que X1 := Y1 ;
X2 := X0 ;
[ Pf ] (X0 ) = f ((Z ), (X1 )). Pg
Y0 := Y0 + 1
Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 63 / 69 Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 64 / 69
Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM
Fun. recursivas Clculo Programas M. de registros Fun. recursivas Clculo Programas M. de registros

Funciones recursivas y programas while V Funciones recursivas y programas while VI


Por ejemplo, si tenemos la funcin recursiva
y entonces, el programa Psuma tal que
suma(0, x1 ) = x1
[ Psuma ] (X0 ) = suma((Z ), (X1 ))
suma(s(n), x1 ) = s(suma(n, x1 ))
queda as:
aqu la funcin base h : N N se define como la proyeccin 11 (x1 ) = x1 y
la funcin g : N3 N es s 33 (n, x1 , x2 ) = s(x2 ). Los programas Ph y Pg W := Z ; Y1 := X1 ;
tales que Y0 := 0;
Ph ;
[ Ph ] (X0 ) = 11 ((X1 )) while Y0 < W do
[ Pg ] (X0 ) = s 33 ((Z ), (X1 ), (X2 )) Z := Y0 ;
X1 := Y1 ;
son: X2 := X0 ;
Pg ;
Ph = X0 := X1
Y0 := Y0 + 1
Pg = X0 := X2 + 1
Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 65 / 69 Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 66 / 69

Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM
Fun. recursivas Clculo Programas M. de registros Fun. recursivas Clculo Programas M. de registros

Mquinas de registros I Los registros guardan nmeros naturales y los estados posibles son
Las mquinas de registros ilimitados (URM) son una abstraccin del = { : Reg N}
procesador central de una computadora.
La memoria es como la del lenguaje IMP, pero las localidades se llaman Este programa calcula la suma de los nmeros en R1 y R2 . La tabla presenta
registros: el estado de la memoria despus de cada instruccin:
Reg = {R1 , R2 . . . } R1 R2 R3
Los programas para URM se basan en unas cuantas instrucciones: 1.1 1 2 0
2.1 2 2 0
Nombre Sintaxis Significado 1 J(2, 3, 5) 3.1 2 2 1
Cero Z (n) Rn := 0 2 S(1) 4.1 2 2 1
Sucesor S(n) Rn := Rn + 1 3 S(3) 1.2 2 2 1
Transferencia T (n, m) Rn := Rm 4 J(1, 1, 1) 2.2 3 2 1
Salto J(n, m, k) si Rn = Rm entonces ve a la 5 3.2 3 2 2
instruccin k-sima; si no, 4.2 3 2 2
contina con la siguiente 1.3 3 2 2
5.1 3 2 2
Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 67 / 69 Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 68 / 69
Mquinas de Turing Indecidibilidad Incomputabilidad T. de Church-Turing Modelos equivalentes a TM
Fun. recursivas Clculo Programas M. de registros

Funciones recursivas y URM

Las funciones recursivas pueden calcularse por medio de URM de una


manera muy similar a los programas en IMP:
Las funciones cero, sucesor y proyecciones tienen una implementacin
muy simple.
Para la composicin de funciones hay que adoptar convenciones para
guardar resultados parciales de funciones y presentar parmetros de
manera similar a como se hizo con los programas IMP.
Adems, hay que reenumerar las direcciones referidas en la operacin
de salto, para evitar interferir en el cdigo de otros programas.
Finalmente, la recursin y la minimalizacin se manejan como se hizo
con los ciclos while en IMP.

Francisco Hernndez Quiroz Teora de la Computacin Mq. de Turing y Mod. de Comp. 69 / 69

Potrebbero piacerti anche