Está en la página 1de 20

Vctor Manuel Domnguez Ramrez

Maquina Turing
4.1 Definicion formal de maquina Turing

El modelo bsico, ilustrado en la figura 5.1, tiene un control finito, una cinta de entrada que est dividida en celdas y una cabeza de cinta que barre una celda de la cinta a la vez. La cinta tiene una celda que est ms a la izquierda, pero se extiende de manera infinita hacia la derecha. Cada celda de la cinta puede contener exactamente un smbolo de un nmero infinito de smbolos de la cinta. Inicialmente, las n celdas que estn ms a la izquierda, para alguna n 0 finita, sujetan la entrada, que es una cadena de smbolos escogidos de un subconjunto de los smbolos de la cinta, llamados smbolos de entrada. Cada una del nmero infinito de celdas restantes sujetan el espacio en blanco, que es un tipo especial de smbolo que no es de entrada.

En un movimiento, dependiendo del smbolo barrido por la cabeza de la cinta y del estado de control finito, la mquina de Turing: 1. Cambia de estado,
1

Vctor Manuel Domnguez Ramrez

2. Imprime un smbolo en la celda de la cinta que est siendo barrida, sustituyendo lo que se encontraba ah escrito y 3. Mueve su cabeza una celda hacia la izquierda o la derecha. De manera formal, una mquina de Turing (TM de sus siglas en ingls Turing Machine) se representa por: M=(Q, S , G , d , q0, B, F) en donde: Q es un conjunto finito de estados. G es el conjunto finito de smbolos de cinta admisibles. B smbolo de G , es el espacio en blanco. S subconjunto de G que no incluye a B, es el conjunto de los smbolos de entrada. d es la funcin de movimientos siguiente, una transformacin de Q x G a Q x G x {L, R} ( d puede sin embargo, permanecer indefinida por algunos argumentos). q0 en Q es el estado inicial. F Q es el conjunto de estados finales. En esta definicin se supone que el valor inicial de todas las celdas de la cinta es el smbolo B. La definicin requiere que B S . Generalmente permitimos que S G - {B}. La funcin de transicin d transforma pares (q, s ) formados por el estado actual y los smbolos de la cinta en ternas de la forma (p, t, x), donde p es el estado siguiente, t es el smbolo escrito en la cinta y x es un movimiento de lectura/escritura de la cabeza, que puede ser L o R, segn que el movimiento sea hacia la izquierda o hacia la derecha (nos imaginamos que la cinta se extiende de izquierda a derecha).

Vctor Manuel Domnguez Ramrez

Por ejemplo, la transicin d (q1, a)=(q5, b, R) provoca que la TM pase de una configuracin figura 5.2. A la configuracin de la figura 5.3. Usaremos una descripcin instantnea (ID) de la mquina de Turing, para su notacin denotando el paso de una configuracin a otra por medio del smbolo . Ejemplo: consideremos la mquina de Turing que acepta el lenguaje regular a*, definida mediante Q ={q1, q2} S ={a, b} G ={a, b, B} F ={q2} q0 =q1

y d dada por la siguiente tabla:: los datos de d tambin se pueden listar de la siguiente manera: 1. d (q1, a) = (q1, a, R) 2. d (q1, B) = (q2, B,R) Por lo tanto, la ejecucin de la mquina de Turing para la cadena "aaa" es la siguiente configuracin:

Vctor Manuel Domnguez Ramrez

q1aaa por la regla 1 aq1aa, por la regla 1 aaq1a, por la regla 1 aaaq1B, por regla 2 aaaBq2 Esta mquina de Turing para en el estado q 2, slo si se analiza una cadena de cero o ms as. Las notaciones * y + tienen el significado usual "cero o ms" o "una o ms", respectivamente. Cuando d (q, a) est indefinido y la configuracin de la mquina de Turing es imposible que pase a otra se dice que la mquina de Turing est parada. La secuencia de todos los movimientos que conducen a una configuracin de parada se llama computacin. Para los casos donde la mquina de Turing nunca parar se dice, que la mquina se encuentra en un bucle infinito.

4.2 Construccin modular de una maquina Turing

El objetivo de creacin modular de una maquina de Turing es que mediante esta tcnica se puedan desarrollarse maquinas de Turing complejas a partir de bloques de elementales a partir de maquinas mas pequeas mediaste diagramas de transiciones. se lleva a cabo la construccin de maquinas de Turing mediante los diagramas de transicin y combinarlos de manera parecida a lo que se realiza en la formacin de la unin y concatenacin de los autmatas finitos.
4

Vctor Manuel Domnguez Ramrez

los pasos para la construccin de una mquina de Turing son: 1.-Elimine las caractersticas de inicio de los estados iniciales de las maquinas, excepto la de aquel donde iniciara la maquina compuesta. 2.-Elimine las caractersticas de detencin de los estados de parada de todas la maquinas e introduzca un nuevo estado de parada que nos se encuentre en ninguno de los diagramas que se combinan. 3.-Para cada uno de los antiguos estados de parada p y cada x en y. 4.-ejemplifique dicha construccion.

Vctor Manuel Domnguez Ramrez

los diagramas compuestos para la construccin modular de una maquina de Turing son aquellos en los que cada uno de los bloques de construccin se representa como un nodo , con flechas entre dichos nodos para indicar las transmisiones entre bloques. Ejemplo el concepto de diagrama compuesto para la construccin modulara de una maquina de Turing

Combinacin de las maquinas Turng en una construccion

Vctor Manuel Domnguez Ramrez

Se puede combinar dos mquinas de Turing permitiendo que compartan la misma cinta y, que cuando una termine su ejecucin, la otra empiece. El contenido de la cinta cuando comienza la ejecucin de la segunda mquina de Turing, est formado por todo lo que dej la primera mquina de Turing, y la cabeza de l/e de la segunda se situar, al comienzo de la ejecucin, sobre la celda de la cinta sobre la que termin la primera. Sistema Turing completo Un sistema Turing completo es aquel que puede simular el comportamiento de una mquina de Turing. Es evidente que salvando los problemas de memoria, los ordenadores modernos y los lenguajes de programacin de uso general, son sistemas de Turing completos. Tambin es evidente, que con independencia de su forma concreta, cualquier dispositivo que se comporte como un sistema de Turing completo, puede en principio ejecutar cualquier clculo que realice cualquier computador. Nota: Observe que la anterior afirmacin no menciona para nada la

posible dificultad de escribir el programa o del tiempo que pueda emplear en realizar el clculo (cualquier clculo que pueda hacer un ordenador puede tericamente efectuarse con papel y lpiz).

4.3 Lenguajes aceptados por la maquina turing


Una mquina de Turing se puede comportar como un aceptador de un lenguaje. Si colocamos una cadena w en la cinta, situamos la cabeza de lectura/escritura sobre el smbolo del extremo izquierdo de la cadena w y ponemos en marcha la mquina a partir de su estado inicial. Entonces w es aceptada si, despus de una secuencia de movimientos, la mquina de Turing llega a un estado final y para. Por tanto w es aceptada. Si q w *

Vctor Manuel Domnguez Ramrez

w1pw2 para algn estado final p y unas cadenas w 1 y w2. Entonces, se obtiene la siguiente definicin: Sea M = (Q, S , G , q 0=q1, B, F, d ) una mquina de Turing. Entonces el lenguaje aceptado por M es: L(M) = {w S * q 1w * w1pw2 para p F y wi
G

*}.

Ejemplo. Disear una TM que acepte el lenguaje regular a* sobre S ={a, b}. Comenzando con el smbolo que est ms a la izquierda en una cadena, realizaremos un anlisis hacia la derecha, leyendo cada smbolo y comprobando que es una a; si lo es, realizaremos un desplazamiento hacia la derecha. Si encontramos un blanco (B) sin que se haya ledo ningn smbolo que no fuera a, paramos y aceptamos la cadena. Si por el otro lado, encontramos un smbolo que no es ni a ni B, podemos parar en un estado que no es de aceptacin. Sea Q = {q1,q2}, q0=q1 y F={q2}, y sea d definida por: d (q1,a) = (q1,a,R) d (q1,B) = (q2,B,R) Esta mquina de Turing para en el estado q 2, slo si se analiza una cadena de 0 ms as. Para rechazar una cadena que no es aceptable, lo nico que hay que hacer es evitar que se llegue a un estado final. En este ejemplo las cadenas que no son aceptables, provocan que la mquina pare en un estado que no es final. Otra alternativa para rechazar una cadena es entrar en un bucle infinito.

Vctor Manuel Domnguez Ramrez

Un lenguaje que es aceptado por una mquina de Turing se conoce como lenguaje recursivamente enumerable (r.e.). El trmino enumerable proviene de que dichos lenguajes son aquellos cuyas cadenas pueden ser listadas (enumeradas) por una mquina de Turing. Esta clase de lenguajes es bastante grande, incluyendo los lenguajes libres de contexto. Hay lenguajes r.e. para los cuales ninguna mquina de Turing que los acepte para con todas las entradas (naturalmente, cualquier mquina de Turing para dichos lenguajes debe parar para toda cadena que pertenezca realmente al lenguaje). La subclase de los lenguajes recursivamente enumerables que son aceptados por al menos una mquina de Turing que para con toda cadena de entrada (dependiendo de si la cadena es aceptada o no), se conoce por la clase de los lenguajes recursivos. Puesto que las mquinas de Turing pueden leer y escribir sobre su cinta pueden convertir la entrada en salida. La transformacin de la entrada en salida es el primer propsito de las computadoras digitales; por tanto, una mquina de Turing se considera como un modelo abstracto de una computadora. Se supone que la entrada para la mquina de Turing est formada por todos los smbolos de la cinta que no son blancos. La salida est formada por cualquiera de los smbolos que queden en la cinta cuando la computacin termina. Las mquinas de Turing pueden ser consideradas como la implementacin de una funcin de cadena f definida mediante f(w) = u cuando se cumple qsw * q f u, donde qs es el estado inicial y q f es un estado final, por lo que se requiere que la cabeza de lectura/escritura empiece y termine, respectivamente, sobre el smbolo de las cadenas de entrada y salida que est situado ms a la izquierda.

Vctor Manuel Domnguez Ramrez

Definiendo lo anterior se dice que una funcin de cadena f es Turing computable si existe una mquina de Turing M = (Q, S , G , q 1,B,F,d ) para la cual q1w * q f u para algn q f F, cuando f(w) = u. Se puede extender la anterior definicin de funciones integrales, como se muestra en el siguiente ejemplo. Ejemplo. Supongamos que tenemos S ={a,b} y que representamos los enteros positivos mediante cadenas de as. As, el entero positivo n estara representado por an. La funcin suma f(n,m) = n + m podra ser implementada mediante la transformacin de anbam en an+mb. Podramos obtener una mquina de Turing para la suma, que estara representada por M = (Q, S , G , q0, B,F,d ), donde Q = {q1, q2, q3, q4, q5} q0 = {q5} y d dada por las siguientes transformaciones: 1. d (q1,a) = (q1,a,R) 2. d (q1,b) = (q2,a,R) 3. d (q2,a) = (q2,a,R) 4. d (q2,B) = (q3,B,L) 5. d (q3,a) = (q4,b,L) 6. d (q4,a) = (q4,a,L) 7. d (q4,B) = (q5,B,R) Esta mquina de Turing desplaza la b hacia el final, a la derecha de an+m. Para ello se crea una a extra. La mquina de Turing "recordar" que se ha creado una a al pasar al estado q2 una vez que se ha encontrado la b, y entonces se escribir una b sobre la a que est al final de la cadena.
10

Vctor Manuel Domnguez Ramrez

Cuando termina la mquina de Turing la cabeza de lectura/escritura est sobre la a que encuentra ms a la izquierda.

4.4 Variantes de una maquina Turing


Mquina con cinta infinita en los dos sentidos M = (Q, , , , q0, B, F) Diferencia con el modelo bsico: Con la D.I. qa, ante (q, a) = (p, x, L) La anterior para. Esta produce la D.I. pBx.

L es reconocido por una MT 2 L es reconocido por MT 1 M1= (Q1, , 1, 1, q1, B, F) 1- , construimos M2= (Q2, , 2, 2, q2, B, F) con: Q2 = Q1 {q2}, 2 = 1 {X} y 2 = 1 + las siguientes transiciones 1. 2 (q2, a) = (q2, a, L), a (para las que est definida ) 2. 2 (q2, B) = (q1, X, R) 3. No se define 2 (qi, X) L(M2)= L(M1) A partir de una mquina M2 = (Q2, 2, 2, 2, q2, B, F 2) con cinta 2 se construye una M1= (Q1, 1, 1, 1, q1, B, F 1) con dos pistas: Q1= {[q , x]: q Q2 , x {U, D}} {q1} 1 = {(a, B), a 2} 1 = {(X, Y), X 2 , Y 2 {&}}

F1 = {[q , X]: q F 2, X {U, D}}

11

Vctor Manuel Domnguez Ramrez

La funcin de transicin es de la forma: Si 2 (q2, a) = (q, X, R) 1 (q1, (a, B)) = ([q , U] , (X, &), R) (al comienzo) Si 2 (q2, a) = (q, X, L) 1 (q1, (a, B)) = ([q , D] , (X, &), R) Si 2 (q, X) = (p, Z, A) 1 ([q , U] , (X, Y)) = ([p , U] , (Z, Y), A), A {L, R} ............................ Mquina multicinta Una cinta contiene los datos de entrada, las dems estn inicialmente en blanco. Cada cinta tiene su cabezal de L/E que se desplaza de manera independiente. Cada movimiento es funcin del estado y de los smbolos leidos por los cabezales. En funcin de ellos, la mquina: - Cambia de estado. - Sustituye los smbolos de las cintas accedidas. - Se desplaza el cabezal (o no, nueva posibilidad). Ejemplo de movimiento de mquina con tres cintas: (q, X1 ,X2 , X3) = (p, Y1 ,Y2 , Y3, M1 ,M2 , M3) Mi {L, R, S}

Mquina de Turing No Determinista Mquina de Turing estndar con una sola cinta y un solo control finito.

12

Vctor Manuel Domnguez Ramrez

Su funcin de transicin es : Q P(Q {L,R}). (p, a) = {(p1, a1, z1), (p2, a2, z2),... (pn, an, zn)}, pi Q, ai , zi {L,R} Mquina de Turing Multidimensional Control finito usual. Cinta: matriz de celdas k-dimensional infinita en En funcin del estado y smbolo, la mquina: -cambia de estado. -se desplaza en una de las 2k direcciones. Mquina de Turing Multicabeza las 2k direcciones. Tiene la misma potencia que la estndar.

q ...k... X1 X2 X3 ... Xn

En un movimiento cada cabeza puede moverse independientemente. L es reconocido por una MT de k cabezas L es reconocido por MT estndar

13

Vctor Manuel Domnguez Ramrez

L = L(M1), M1 con k cabezas. Construimos M2 con una cinta y k + 1 pistas El CF de M2 almacena el estado de M1. La primera pista de M2 almacena el contenido de la Las restantes contienen marcas (posiciones de los M1). cabezales de cinta de M1.

4.5 Problemas de Hilbert

Los problemas de Hilbert son una lista de 23 problemas matemticos compilados por el matemtico alemn David Hilbert para la conferencia en Pars del Congreso Internacional de Matemticos de 1900. Los problemas estaban todos por resolver en aquel momento, y varios resultaron ser muy influyentes en la matemtica del siglo XX. Hilbert present diez de los problemas (1, 2, 6, 7, 8, 13, 16, 19, 21 y 22) en la conferencia, en un acto el 8 de agosto en La Sorbona. La lista completa se public ms adelante. Naturaleza e influencia de los problemas Aunque se han producido intentos de repetir el xito de la lista de Hilbert, ningn otro conjunto tan variado de problemas o conjeturas ha tenido un efecto comparable en el desarrollo del tema y obtenido una fraccin importante de su celebridad. Por ejemplo, las conjeturas de Weil son famosas pero fueron poco publicidadas. Quiz el propio temperamento de Andr Weil evit que intentase ponerse en posicin de competir con

14

Vctor Manuel Domnguez Ramrez

Hilbert. John von Neumann produjo una lista, pero no obtuvo reconocimiento universal. A primera vista, este xito podra atribuirse a la eminencia del autor de los problemas. Hilbert estaba en la cspide de su poder y reputacin en aquel momento y continu dirigiendo la sobresaliente escuela de matemtica en la Universidad de Gttingen. Un examen ms cuidadoso revela que el asunto no es tan simple. La matemtica de aquel tiempo era an discursiva: la tendencia a sustituir palabras por smbolos y apelaciones a la intuicin y conceptos mediante axiomtica pura segua subyugada, aunque se volvera fuerte durante la siguiente generacin. En 1900, Hilbert no pudo acudir a la teora axiomtica de conjuntos, la integral de Lebesgue, los espacios topolgicos o la tesis de Church, que cambiaran sus respectivos campos de forma permanente. el anlisis funcional, fundado en cierto modo por el propio Hilbert como nocin central de los testigos del espacio de Hilbert, no se haba diferenciado an del clculo de variaciones; hay en la lista dos problemas de matemtica variacional, pero nada, como podra asumirse inocentemente, sobre teora espectral (el problema 19 tiene una conexin con la hipoelipticidad). La lista no fue predictiva en ese sentido: no consigi plasmar o anticipar el fulgurante ascenso que experimentaran la topologa, la teora de grupos y la teora de la medida en el siglo XX, as como no previ la manera en que iba a avanzar la lgica matemtica. Por tanto, su valor documental es el de ensayo: una visin parcial, personal. Sugiere algunos programas de investigacin y algunas direcciones a seguir sin fin concreto.

15

Vctor Manuel Domnguez Ramrez

De hecho, muchas de las preguntas daban una falsa idea del matemtico profesional del siglo XXI, o incluso de 1950, en que la forma de una solucin a una buena pregunta tomara la forma de un artculo publicado en una publicacin matemtica. Si este fuera el caso de todos los veintitrs problemas, se hubiera simplificado el comentario hasta el punto de poder dar una referencia a una revista, o considera la pregunta como abierta todava. En algunos casos el lenguaje usado por Hilbert se sigue considerando un tanto "negociable", en cuanto al significado real de la formulacin del problema (en ausencia, repetimos, de fundamentos axiomticos, basados en matemtica pura, empezando con el propio trabajo de Hilbert sobre geometra euclidiana, pasando por el Principia Mathematica, y terminando con el grupo Bourbaki y el "terrorismo intelectual" para terminar el trabajo). Los problemas Primero y Quinto se encuentran, quiz sorprendentemente, en un estado de formulacin de una claridad menos que total (vanse las notas). En casos como el Vigsimo, el problema se podra leer de forma razonable en una versin "interna", relativamente accesible, en la que el lector puede saber a qu estaba apuntando Hilbert; o como una penumbra "externa" y especulativa. Dicho todo esto, por tanto, la razn ms importante es la gran rapidez con la que acept la lista de Hilbert la comunidad matemtica de aquel momento (lo cual es una frmula menos convencional que ahora, ya que por entonces haban pocos lderes investigadores, que generalmente se encontraban en unos pocos pases Europeos y se conocan todos entre ellos). Los problemas se estudiaron con gran atencin; resolver uno labr reputaciones. El estilo fue al menos tan influyente como el contenido de los problemas. Hilbert solicitaba clarificaciones. Pidi soluciones en principio a preguntas algortmicas, no a algoritmos prcticos. Pidi un fortalecimiento de los
16

Vctor Manuel Domnguez Ramrez

cimientos de partes de la matemtica que a los no practicantes an se antojaban guiadas por intuiciones opacas (el clculo de Schubert y la geometra enumerativa). Estas actitudes fueron adoptadas por muchos seguidores, aunque tambin fueron discutidas, y continan sindolo. Treinta aos despus, Hilbert haba endurecido su postura: vase ignorabimus. Los problemas como manifiesto de Hilbert Est bastante claro que la lista de problemas, y su forma de discusin, estaban pensadas para ser influyentes. Hilbert no fall a las espectativas de la academia Alemana en cuanto a construccin de imperios, verbo programtico, y establecimiento explcito de una direccin y reclamo de territorio para una escuela. Nadie habla ya de la 'escuela de Hilbert' en esos trminos; ni gozaron los problemas de Hilbert de su momento como si hizo el programa de Erlangen de Felix Klein. Klein fue colega de Hilbert, y en comparacin la lista de este ltimo era mucho menos prescriptiva. Michael Atiyah ha caracterizado el programa de Erlangen como prematuro. Los problemas de Hilbert, por el contrario, mostraron la capacidad del experto de buscar el momento adecuado. Si la 'escuela de Hilbert' tiene un significado, posiblemente se refiera a la teora de operadores y al estilo de la fsica terica que tom los volmenes Hilbert-Courant como cannicos. Como se seal antes, la lista no establece directamente problemas sobre teora espectral. Tampoco le dio relevancia al lgebra conmutativa (entonces se la conoca como teora de ideales), su contribucin algebraica ms importante y mayor preocupacin en sus das de la teora de invariantes; lo cual, podra decirse, hubiera estado ms en la lnea de Klein. Ni, al menos superficialmente, predic

17

Vctor Manuel Domnguez Ramrez

contra Leopold Kronecker, el oponente de Georg Cantor, del que haba aprendido mucho pero cuyas actitudes casi detestaba (como queda documentado en la biografa de Constance Reid). El lector podra extraer amplias conclusiones de la presencia de la teora de conjuntos en cabeza en la lista. La teora de funciones de variable compleja, la rama del anlisis clsico que todo matemtico puro debera conocer, est bastante olvidada: ni la conjetura de Bieberbach ni otra cuestin interesante, aparte de la hiptesis de Riemann. Uno de los objetivos estratgicos de Hilbert fue poner el lgebra conmutativa y la teora de funciones complejas al mismo nivel; esto, sin embargo, llevara 50 aos (y an no ha resultado en un cambio de lugares). Hilbert tena un pequeo grupo de pares: Adolf Hurwitz y Hermann Minkowski eran ambos amigos cercanos e iguales intelectuales. Hay un guio a la geometra de nmeros de Minkowski en el problema 18, y a su trabajo en las formas cuadrticas en el problema 11. Hurwitz fue el gran desarrollador de la teora de la superficie de Riemann. Hilbert us la analoga del cuerpo de funciones, una gua a la teora algebraica de nmeros mediante el uso de anlogos geomtricos, para desarrollar la teora del cuerpo de clases dentro de su propia investigacin, y esto queda reflejado en el problema 9, hasta cierto punto en el problema 12, y en los problemas 21 y 22. Por otro lado, el nico rival de Hilbert en 1900 era Henri Poincar, y la segunda parte del problema 16 es una cuestin de sistemas dinmicos al estilo de Poincar.

18

Vctor Manuel Domnguez Ramrez

Dos docenas redondas Originalmente Hilbert incluy 24 problemas en su lista, pero decidi excluir uno de ellos de la publicada. El "problema vigsimocuarto" (en la teora de la demostracin, sobre un criterio de simplicidad y mtodos generales) lo redescubri en el ao 2000 el historiador alemn Rdiger Thiele, dentro de las notas manuscritas originales de Hilbert. Resumen De los problemas de Hilbert claramente formulados, los problemas 3, 7, 10, 11, 13, 14, 17 , 19 y 20 tienen una solucin aceptada por consenso. Por otro lado, los problemas 1, 2, 5, 9, 15, 18+, 21 y 22 tienen soluciones de aceptacin parcial, pero existe cierta controversia al respecto de si la solucin resuelve realmente el problema. El + en el 18 indica que la solucin a la ecuacin de Kepler es una demostracin asistida por computador, una nocin anacrnica para un problema de Hilbert y controvertida hasta cierto punto debido a que un lector humano no puede verificarla en tiempo razonable. Esto deja sin resolver el 8 (la hiptesis de Riemann) y el 12, ambos dentro de la teora de nmeros. En esta clasificacin los 4, 6, 16 y 23 son demasiado vagos como para que algn da se les pueda declarar resueltos. El 24 retirado tambin caera en esta clase.

19

Vctor Manuel Domnguez Ramrez

20

También podría gustarte