4.1 Y 4.2

5
 Iván Cruz Zabalegui 4. Máqui nas de T uring El argumento de Turing para probar que las funciones recursivas coinciden con las funciones calculables mediante un algoritmo se basa en el concepto de máquina de Turing. Una máquina de Turing es un modelo terico de ordenador con in!nita memoria disponible. "unque la descripcin que sigue parezca la descripcin de una máquina real# debemos tener presente que una máquina de  T uring es un concepto abstracto de la misma naturaleza que una teor$a a%i omá tica# es decir# un sistema concep tual que fundamenta una serie de a!rmaciones ob&etivas. Una máquina de Turing consta de una cinta in!nita dividida en in!nitas casillas contiguas in!nitamente prolongable tanto a izquierda como a derec'a( Figura 1: Máquina de Turing. Cada casilla puede estar en blanco o tener impreso un signo de entre los de una lista !nita que llamaremos alfabeto( s)#...#s& *& +),!&a para cada máquina particular. Escribiremos s- para nombrar al blanco/ 0 as$ la situacin posible de una casilla será una de entre s-#...#s&. En cualquier momento la cinta tendrá un n1mero !nito de casillas impresas *con signos distintos de s-,. 2epr esentaremos la cinta con signos as$( 3e sobrentiende que el resto de la cinta está en blanco. 3i queremos indicar que el resto de la cinta puede no estar en blanco pero que no importa lo que 'a0a impreso# lo representaremos as$(

description

ñllllllllllllllllllllllllllllllllllllllllllllllllllllllllllmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm

Transcript of 4.1 Y 4.2

Ivn Cruz Zabalegui4. Mquinas de TuringEl argumento de Turing para probar que las funciones recursivas coinciden con las funciones calculables mediante un algoritmo se basa en el concepto de mquina de Turing. Una mquina de Turing es un modelo terico de ordenador con infinita memoria disponible. Aunque la descripcin que sigue parezca la descripcin de una mquina real, debemos tener presente que una mquina de Turing es un concepto abstracto de la misma naturaleza que una teora axiomtica, es decir, un sistema conceptual que fundamenta una serie de afirmaciones objetivas.Una mquina de Turing consta de una cinta infinita dividida en infinitas casillas contiguas infinitamente prolongable tanto a izquierda como a derecha:

Figura 1: Mquina de Turing.Cada casilla puede estar en blanco o tener impreso un signo de entre los de una lista finita que llamaremos alfabeto: s1,...,sj (j 1)fija para cada mquina particular. Escribiremos s0 para nombrar al blanco y as la situacin posible de una casilla ser una de entre s0,...,sj. En cualquier momento la cinta tendr un nmero finito de casillas impresas (con signos distintos de s0).Representaremos la cinta con signos as:

Se sobrentiende que el resto de la cinta est en blanco. Si queremos indicar que el resto de la cinta puede no estar en blanco pero que no importa lo que haya impreso, lo representaremos as:

El estado de la cinta en un momento dado lo llamaremos situacin. En cada instante la mquina se encontrar en un estado de entre un nmero finito posible de ellos q0,...,qk (k1) fijo para cada mquina particular. Cada estado puede ser activo o pasivo. El estado q0 siempre es Pasivo, q1 siempre es Activo. A q1 le llamaremos estado inicial, es el estado en que se encuentra la Mquina cuando empieza a funcionar.En cada instante la mquina lee el signo de una casilla de la cinta. Esta Casilla se llama casilla escrutada y el signo se llama signo escrutado. El estado de la mquina y el signo escrutado determinan la configuracin de la mquina en un instante dado. La configuracin y la situacin determinan la configuracin completa.Expresaremos las configuraciones completas indicando el estado sobre la casilla escrutada as:

Si no queremos indicar el estado usaremos un guin.Si en un instante dado una mquina de Turing se encuentra en un estado activo, sta realizar un acto. Un acto consiste en:a) Leer el signo de la casilla escrutada,b) Imprimir un signo (quiz s0) en la casilla escrutada,c) Mover un lugar la cinta de modo que la nueva casilla escrutada pase a ser la contigua izquierda, la misma casilla o la contigua derecha,d) Cambiar de estado (pasando quiz al mismo), de tal modo que el signo que se imprime, el movimiento que se hace y el estado al que se pasa, son funcin exclusivamente de la configuracin de la mquina en ese instante.Si el estado es pasivo no se produce ningn acto: la mquina est parada.Describimos un MT mediante la siguiente sptupla:M=(Q,,,,q0,B,F)Cuyos componentes tienen el siguiente significado:Q El conjunto finito de estados de la unidad de control. El conjunto finito de smbolos de entrada. El conjunto completo de smbolos de cinta; siempre es un subconjunto de . La funcin de transicin. Los argumentos de (q, X) son un estado q y un smbolo de cinta X. El valor de (q ,X), si est definido, es (p, Y, D), donde:1. P es el siguiente estado de Q.2. Y es el smbolo de , que se escribe en la casilla que seala la cabeza y que sustituye a cualquier smbolo que se encontrara en ella.3. D es una direccin y puede ser L o R, lo que nos indica la direccin en que la cabeza se mueve, izquierda (L) o derecha (R), respectivamente.q0 El estado inicial, un elemento de Q, en el que inicialmente se encuentra la unidad de control.B El smbolo espacio en blanco. Este smbolo pertenece a pero no a ; es decir, no es un smbolo de entrada. El espacio en blanco aparece inicialmente en todas las casillas excepto en aqullas que se almacenan los smbolos de la entrada.F El conjunto de los estados finales o de aceptacin, un subconjunto de Q.

4.1 Funciones parcialesUna funcin parcial f es una funcin que puede estar indefinida para algunos (tal vez ninguno; tal vez todos) sus argumentos. Notamos f (x1,, xn) cuando f est definida para x1, xn. En este caso f (x1,..., xn) es un nmero natural. Notamos f (x1,, xn) cuando f est indefinida para x1,, xn.El conjunto de argumentos para los que f est definida se llama dominio de f, notado dom(f ).dom(f ) = {(x1, . . . , xn) : f (x1, . . . , xn) }f es total si dom(f ) = N.Cmputo de funciones parciales en mquinas de TuringUna funcin parcial f : N n N es Turing computable si existe una mquina de Turing determinstica M = (, Q,T, q0, qf ) con = {, 1} tal que cuando empieza en la configuracin inicial

(Con los enteros xi representados en unario y nada ms en la entrada salvo la representacin de la entrada): si f (x1, . . . , xn) entonces siguiendo sus instrucciones en T llega a una configuracin final de la forma

(quiz algo ms en la cinta) si f (x1, . . . , xn) entonces nunca termina en el estado qf .

Ejamplo 1Computo de la funcin f(x)=0

Ejemplo 2Computo de la funcin f(x)=x+1

4.2 Concatenacin de mquinas de Turing Si M es una mquina de Turing con estados pasivos 01,...,0n y N1,...,Nn son otras mquinas de Turing, llamaremos:

A la mquina de Turing definida como sigue:Si q1,...,qj son los estados activos de M y qi1,... qiji son los estados activos de Ni, los estados activos de la nueva mquina son q1,...,qj, qi1,... qiji, para i=1,...,n.Los estados pasivos son los de las mquinas N1,...,Nn. El estado inicial es q1, es decir, el estado inicial de M. El programa es como sigue:Dada una configuracin, se realiza el acto marcado por el programa de la mquina a la que pertenece el estado en curso, a excepcin del caso en que M deba pasar al estado 0i, en cuyo caso se pasa al estado qi1.En otras palabras, se trata de la mquina que empieza actuando como M y, cuando sta se ha de parar por pasar al estado 0i, en lugar de ello comienza a actuar la mquina Ni.La concatenacin puede repetirse cuantas veces se quiera, incluso de forma circular. Por ejemplo, la mquina de la figura empieza actuando como M, cuando sta acaba empieza N1 o N2, segn el estado pasivo de M al que se llegue; si empieza N2, cuando sta acaba empieza P1 o vuelve a empezar M segn el estado pasivo final.Si M es una mquina de Turing con un nico estado pasivo, llamaremos M a la mquina que resulta de concatenar M consigo misma n veces.