You are on page 1of 4

Mquina de Turing. Una mquina de Turing es un autmata que se mueve sobre una secuencia lineal de datos.

En cada instante la mquina puede leer un solo dato de la secuencia (generalmente un carcter) y realiza ciertas acciones en base a una tabla que tiene en cuenta su "estado" actual (interno) y el ltimo dato ledo. Entre las acciones est la posibilidad de escribir nuevos datos en la secuencia; recorrer la secuencia en ambos sentidos y cambiar de "estado" dentro de un conjunto finito de estados posibles. En realidad la mquina de Turing es ms una abstraccin matemtica que un dispositivo fsico o mecnico. El hecho que se le denomine "mquina" se debe a que su funcionamiento puede ser descrito en trminos de operaciones individuales muy sencillas que sugieren una implementacin real muy simple, lo que ha motivado que existan muchas versiones prcticas del mismo. Funcionamiento. Una mquina de Turing es un dispositivo que transforma un INPUT en un OUTPUT despus de algunos pasos. Tanto el INPUT como el OUPUT constan de nmeros en cdigo binario (ceros y unos). En su versin original la mquina de Turing consiste en una cinta infinitamente larga con unos y ceros que pasa a travs de una caja. La caja es tan fina que solo el trozo de cinta que ocupa un bit (0 1) est en su interior. La mquina tiene una serie de estados internos finitos que tambin se pueden numerar en binario. Para llevar a cabo algn algoritmo, la mquina se inicializa en algn estado interno arbitrario. A continuacin, se pone en marcha y la mquina lee el bit que se encuentra en ese momento en su interior y ejecuta alguna operacin con ese bit (lo cambia o no, dependiendo de su estado interno). Despus se mueve hacia la derecha o hacia la izquierda, y vuelve a procesar el siguiente bit de la misma manera. Al final se para, dejando el resultado al lado izquierdo por ejemplo. 11011iUna instruccin tpica podra ser: 01 La traduccin es como sigue: si la mquina se encuentra en el estado interno 0 y lee 1 en la cinta, entonces pasar al estado interno 1101 (13), escribir 1 y se mover hacia la izquierda un paso (la cinta se mover hacia la derecha). A continuacin es conveniente inventar una notacin para la secuencia del INPUT. Esta notacin se llama notacin binaria expandida. Consiste en cambiar la secuencia original binaria por otra construida de la siguiente forma: el 0 se cambia por 0 y el 1 por 10 y se ponen un cero a la izquierda y/o a la derecha del resultado si empieza o acaba en 1 respectivamente. As por ejemplo, el nmero 13 que en binario es 1101 es en binario expandido 1010010 con un cero delante por esta ltima regla 01010010. Para volver al original hay que contraer el binario expandido con la siguiente regla:

Empezamos a leer por la izquierda el binario expandido. Cuando encontremos un 0 tomamos nota de cuntos 1 hay hasta llegar al siguiente 0 y lo escribimos. Si encontramos que hay dos 0 seguidos, apuntaramos un 0 porque no habra ningn 1.Veamos con el 13 cmo se hara. El primer 0 se encuentra en la primera posicin y el siguiente 0 est en la posicin 3. Entre los dos solo hay un 1. Lo anotamos. Seguidamente hay un 1, y despus un 0, entonces apuntamos 1 porque hay un 1 entre medias de ellos. Esto es lo que se hace sucesivamente y encontramos: 1101 que es el nmero original.

Historia. En 1947 el famoso matemtico ingls Alan Turing pronunci su polmica conferencia Puede pensar una mquina?. Frente al dualismo imperante, Turing defendi que era posible que una mquina pudiese llegar a hacer exactamente lo mismo que hace un hombre, incluida la funcin de pensar. Resulta curioso que algo tan normalizado hoy en da como el hecho de que las mquinas realicen mucho mejor que nosotros ciertas actividades que calificaramos como inteligentes, hace tan slo cincuenta aos sonara a despropsito irrelevante. Unos aos antes, Turing haba publicado un artculo titulado On computable Numbers, with an Application to the Entscheidungsproblem en donde desarroll la teora de las mquinas que llevan su nombre y que supondrn un hito para la historia de la informtica al suponer el fundamento terico de los computadores digitales modernos. Bien, y qu es una mquina de Turing? Antes de nada nos tenemos que acercar al concepto de algoritmo. La palabra procede del matemtico rabe Al-Khowarizm, quien escribi en el 825 un tratado de aritmtica muy conocido durante la Edad Media. No obstante, antes de l ya se conocan ejemplos de algoritmos. Uno de ellos es el popular algoritmo de Euclides que constituye un procedimiento para encontrar el mximo comn divisor de dos nmeros. Se trata de dividir entre s ambos, formar una nueva pareja con el divisor y el resto y volverlos a dividir. As, sucesivamente hasta que se consiga un resto cero. El divisor que quede entonces ser el mximo comn divisor de ambos nmeros. El algoritmo de Euclides supone una regla, unas instrucciones para conseguir un resultado, que se obtendr siempre sean cuales sean ambos nmeros. Si son muy altos, el procedimiento tendr ms pasos, nada ms. De este modo, todas las operaciones aritmticas son algoritmos (sumar, multiplicar, races cuadradas, elevar a una potencia). Todas consisten en realizar un pequeo nmero de instrucciones que se repetirn cuantas veces sean necesarias para llegar a una conclusin. Entonces, un algoritmo se podra definir como un conjunto de instrucciones para realizar una tarea con las siguientes caractersticas: 1) Precisin: un algoritmo ha de estar definido con suficiente precisin para no albergar dudas sobre qu paso seguir. 2) Simplicidad: las reglas son sencillas. Cuando se trata de algoritmo, en apariencia sencillo, se puede descomponer en algoritmos ms elementales. El de Euclides, por ejemplo, se puede descomponer en divisiones y agrupamientos divisor-resto. 3) Finitud: el nmero de reglas ha de ser finito mientras que el nmero de operaciones que pueden realizarse debe ser infinito. 4) Carcter mecnico: es un procedimiento mecnico, automtico. Un algoritmo no requiere ninguna agudeza mental ni ingenio creativo, es algo que cualquier persona puede hacer con slo tener la capacidad de seguir y obedecer reglas.

5) Procedimiento general: los algoritmos estn orientados a la solucin de problemas, pero no tendra mucho sentido disear uno para solucionar un nico problema particular (imaginemos crear un algoritmo para multiplicar 45 por 678 y nada ms). Est en la naturaleza del algoritmo ser un mecanismo lo ms sencillo y econmico posible para realizar correctamente muchas tareas. Sin embargo, como la dificultad para realizar muchas tareas diferentes por un mismo algoritmo es mucha, se los suele utilizar para resolver un tipo de problemas. As, el algoritmo de Euclides soluciona todos los casos posibles del problema de encontrar el mximo comn divisor.

Breve biografa de Alan Turing Alan Mathison Turing naci en Paddington el 23 de junio de 1912. Sus padres Julius y Ethel residan en la India debido a que Julius trabajaba de funcionario en la India, pero decidieron volver al Reino Unido para que su hijo naciera all. Esto hizo que Alan tuviera una infancia peculiar debido a los constantes viajes de sus padres entre Inglaterra e India durante los cuales dejaban a sus hijos al cargo de amigos. A los 12 aos entra en Sherborne School. Su jefe de estudios dijo de l si lo nico que quiere ser es un especialista cientfico, est perdiendo el tiempo en una escuela pblica. Durante su estancia en dicha escuela Turing perdi a su amigo Christopher Morcom por una tuberculosis bovina contrada tras beber leche de vaca infectada. Esto le hizo perder su fe religiosa y convertirse en ateo. Tras Sherborne School, Turing fue a Kings College en Cambridge. A pesar de que destac en el campo de las matemticas y la computabilidad, en un artculo suyo de 1950 mostrar un toque filosfico/moralista ya que relacion el concepto matemtico de la computabilidad con problemas tradicionales como la separacin de la mente y cuerpo, el libre albedro y el determinismo. En 1931 formaliza el concepto de mquina de Turing sustituyendo as el lenguaje formal que Kurt Gdel utilizaba sobre los lmites de la computacin y la demostrabilidad. En 1935 es nombrado profesor del Kings College, a la temprana edad de 22 aos. La Mquina de Turing Desarroll el concepto de la mquina de Turing. Una mquina de Turing es un dispositivo terico que manipula smbolos de una cinta de entrada en funcin de unas reglas. Se define como un autmata, que mediante un cabezal lector que lee de una cinta de entrada smbolos de un alfabeto, cambiando entre estados en funcin de la entrada pudiendo rechazar o aceptar la cadena de entrada dependiendo del lenguaje que acepte. Dicha mquina era capaz de implementar cualquier problema matemtico que pudiera representarse mediante un algoritmo. Formalmente se define en funcin de los estados que tiene dicho autmata el alfabeto de entrada y las transiciones que soportal. Es una herramienta bsica para el campo de los autmatas y lenguajes formales. Demostr el problema de la parada de una manera muy intuitiva, aunque dicha demostracin la haba publicado previamente Alonzo Church (clculo lambda) con el que trabajara en Princeton donde obtuvo en 1938 el Doctorado debido a sus estudios sobre la hipercomputacin. La siguiente etapa de su vida da un cambio radical ya que el objeto de sus estudios no es investigacin sin rumbo sino un fin especfico: El criptoanlisis. La Segunda Guerra Mundial Decide empezar a trabajar para el Ejrcito porque Nada estaba haciendo nada al respecto. En 1939

empieza a trabajar en Bletchley Park (estacin secreta del Ejrcito) liderando el Hut- 8 que era una de las secciones de la estacin Britnica de codebreaking durante la 2WW. Fue uno de los principales protagonistas en el desmantelamiento y ruptura de la mquina Enigma, mediante la que el Eje ocultaba sus transmisiones. Tras la declaracin de guerra del 3 de Septiembre , Turing se volc en el criptoanlisis en Bletchley Park. Con el trabajo que haban realizado los criptoanalistas polacos, Turing desarroll la Bombe que era una mquina capaz de romper el cdigo de la Enigma. Pero no bastaba, el ejrcito polaco haba interceptado una mquina enigma parecida a la que utilizaba el ejrcito alemn y saban que aun as no les dara tiempo a descifrar mensajes, ya que cada da cambiaban la forma de cifrarlos. En Diciembre de 1939 resolvi gran parte del indicador que era una parte de la configuracin que se cargaba en la mquina cada da, en la misma noche concibi la idea de Banburismus (conocido como anlisis secuencial). Desde 1940 en adelante el Hut-8 utiliz la bomba criptogrfica para leer mensajes de la Lufftwaffe, en cambio el mtodo utilizado por la Kriegsmarine era mucho ms complejo y se tomaba por irrompible. Sin embargo Turing aprovechando el conocimiento que tenan de la mquina proporcionada por el ejrcito polaco desarroll, el solo, un sistema para atacar el cifrado: El banburismo.

You might also like