«Turing» redirige aquí. Para otras acepciones, véase Turing (desambiguación).
| Alan Turing | ||
|---|---|---|
Turing en 1951 | ||
| Información personal | ||
| Nombre de nacimiento | Alan Mathison Turing | |
| Nacimiento | 23 de junio de 1912 Maida Vale (Reino Unido de Gran Bretaña e Irlanda) | |
| Fallecimiento | 7 de junio de 1954 (41 años) Wilmslow (Reino Unido) | |
| Causa de muerte | Intoxicación cianhídrica | |
| Sepultura | Woking Crematorium | |
| Nacionalidad | Británica | |
| Religión | Ateísmo | |
| Lengua materna | Inglés | |
| Familia | ||
| Padres | Julius Mathison Turing Ethel Sara Stoney | |
| Educación | ||
| Educado en |
| |
| Tesis doctoral | Sistemas de lógica basados en ordinales (1938) | |
| Supervisor doctoral | Alonzo Church | |
| Información profesional | ||
| Ocupación | Informático teórico y criptógrafo | |
| Área | Criptoanálisis, ciencias de la computación, matemáticas, lógica y criptografía | |
| Empleador |
| |
| Obras notables | ||
| Miembro de | Real Sociedad de Londres (desde 1951) | |
| Distinciones |
| |
| Firma | ||
Alan Mathison Turing (Londres, 23 de junio de 1912-Wilmslow, Cheshire, 7 de junio de 1954) fue un matemático, lógico, informático teórico, criptógrafo, filósofo y biólogo teórico británico.[1][2][3][4][5] Es considerado como uno de los padres de la ciencia de la computación y precursor de la informática moderna. Proporcionó una formalización influyente de los conceptos de algoritmo y computación: la máquina de Turing. Formuló su propia versión que hoy es ampliamente aceptada como la tesis de Church-Turing (1936). Durante la Segunda Guerra Mundial, trabajó en descifrar los códigos nazis, particularmente los de la máquina Enigma, y durante un tiempo fue el director de la sección Naval Enigma de Bletchley Park. Se ha estimado que su trabajo acortó la duración de esa guerra entre dos y cuatro años.[6] Tras la guerra, diseñó uno de los primeros computadores electrónicos programables digitales en el Laboratorio Nacional de Física del Reino Unido y poco tiempo después construyó otra de las primeras máquinas en la Universidad de Mánchester.
En el campo de la inteligencia artificial, es conocido sobre todo por la concepción de la prueba de Turing (1950), un criterio según el cual puede juzgarse la inteligencia de una máquina si sus respuestas en la prueba son indistinguibles de las de un ser humano.
La carrera de Turing terminó súbitamente tras ser procesado por homosexualidad en 1952. Dos años después de su condena, murió —según la versión oficial, por suicidio; sin embargo, su muerte ha dado lugar a otras hipótesis, incluida la del envenenamiento accidental —. Después de una campaña pública en 2009, el primer ministro británico, Gordon Brown, se disculpó públicamente en nombre del gobierno británico por «la forma espantosa en la que Turing había sido tratado». La reina Isabel II le otorgó un indulto póstumo en 2013. El término «ley Alan Turing» ahora se usa de manera informal para referirse a una ley de 2017 en el Reino Unido que perdona retroactivamente a hombres amonestados o condenados en virtud de la legislación que prohibía los actos homosexuales.[7]
Turing tiene un extenso legado con estatuas y muchas cosas que llevan su nombre, incluido un premio anual por innovación en informática. Aparece en el billete actual de 50 libras del Banco de Inglaterra,[8] que se lanzó el 23 de junio de 2021, coincidiendo con su cumpleaños. Un programa de la BBC de 2019, votado por la audiencia, lo nombró la persona más grande del siglo XX.[9]
Biografía
Turing nació en el distrito londinense de Maida Vale.[10] Su padre, Julius Mathison Turing (1873-1944), era miembro del cuerpo de funcionarios británicos en la India. Su madre, Ethel Sara Stoney, era hija de Edward Waller Stoney, ingeniero jefe de Madras Railways. Los Stoney eran una familia de la nobleza protestante angloirlandesa de los condados de Tipperary y Longford, mientras que la propia Ethel había pasado gran parte de su infancia en el condado de Clare.
Primeros años

Por razones de trabajo, la familia residía en la India británica. Sin embargo, tanto Julius como Ethel querían que sus hijos se criaran en Gran Bretaña, por lo que se mudaron a Maida Vale (Londres). Allí nació Alan Turing el 23 de junio de 1912.[n. 1] Turing tuvo un hermano mayor.
Durante su infancia, sus padres viajaron constantemente entre Hastings, Reino Unido, y la India debido a que su padre seguía activo en la Administración Colonial, por lo que pasó algunos años viviendo con su hermano en la casa de un matrimonio retirado del ejército.
Muy pronto Turing mostró signos del genio que luego sería. Desde temprana edad mostró un gran interés por la lectura, por los números y los rompecabezas.
Estudios

Entre enero de 1922 y 1926, Turing estudió en la preparatoria Hazelhurst, una escuela independiente en el pueblo de Frant en Sussex (hoy East Oriental).[11]
En 1926, con trece años, ingresó en el internado de Sherborne, en Dorset. Su primer día de clase coincidió con la huelga general en Inglaterra, pero su determinación por asistir a clase era tan firme que recorrió con su bicicleta los más de 96 km que separaban Southampton de su escuela, pasando la noche en una posada.[12]
La inclinación natural de Turing hacia la matemática y la ciencia no le atrajo el respeto de sus profesores de Sherborne, cuyo concepto de educación hacía mayor énfasis en los clásicos. En la escuela de Sherbone, ganó la mayor parte de los premios matemáticos que se otorgaban y, además, realizaba experimentos químicos por su cuenta, aunque la opinión del profesorado respecto a la independencia y ambición de Turing no era demasiado favorable. A pesar de ello, el joven continuó mostrando una singular habilidad para los estudios que realmente le gustaban, y llegó a resolver problemas muy avanzados para su edad (16 años) sin ni siquiera haber estudiado cálculo elemental.[13]
Amistad con Christopher Morcom
Christopher Morcom estudiaba junto con Turing en la escuela de Sherborne y ambos compartían la pasión por la ciencia. Durante las clases de matemática o física, se intercambiaban notas de comentarios sobre rompecabezas. Alan se enamoró de él. Fue su primer amor y la primera persona que creyó en sus ideas y con quien podía continuar desarrollándolas.[14][15][16] El 13 de febrero de 1930,[17] solo unas pocas semanas después de su última temporada en Sherborne, Morcom falleció debido a complicaciones de la tuberculosis bovina contraída tras beber leche de alguna vaca infectada. Al recordarlo, Turing afirmaba: «Mis recuerdos más vívidos de Chris son casi siempre, sobre las cosas tan amables que me decía».[16]
A raíz de esas vivencias, su fe religiosa desapareció por completo y se convirtió en ateo. También se obsesionó por entender la naturaleza de la consciencia, su estructura y orígenes. Adoptó la convicción de que todos los fenómenos, incluyendo el funcionamiento del cerebro humano, son materialistas.[18] Sin embargo, siguió creyendo en la supervivencia del espíritu después de la muerte.
Universidad y sus estudios sobre computabilidad

Debido a su falta de voluntad para esforzarse con la misma intensidad en el estudio de los clásicos que en el de la ciencia y la matemática, Turing suspendió sus exámenes finales varias veces y tuvo que ingresar en la escuela universitaria que eligió en segundo lugar, King's College, Universidad de Cambridge, en vez de en la que era su primera elección, Trinity. Tras su graduación, se trasladó a la Universidad estadounidense de Princeton, donde trabajó con el lógico Alonzo Church. Recibió las enseñanzas de Godfrey Harold Hardy, un respetado matemático que ocupó la cátedra Sadleirian en Cambridge, y que posteriormente fue responsable de un centro de estudios e investigaciones matemáticas entre 1931 y 1934. En 1935 Turing fue nombrado profesor del King's College.
Solución al problema de decisión
El Entscheidungsproblem, que se traduce como «problema de decisión», fue un reto en lógica simbólica para encontrar un algoritmo general que decidiera si una fórmula de cálculo de primer orden es un teorema. El problema fue planteado inicialmente por Leibniz en el siglo XVII luego de construir su máquina mecánica de cálculo. David Hilbert formalizó el problema en el VII Congreso Internacional de Matemáticas (Bolonia, 1928), planteando la búsqueda de un procedimiento algorítimico válido para solucionar las posibles cuestiones matemáticas, a través de tres preguntas:
- ¿Son las matemáticas completas?
- ¿Son las matemáticas consistentes?
- ¿Son las matemáticas decidibles?
Si bien Hilbert suponía que la respuesta a las preguntas era afirmativa, Kurt Gödel, mediante los teoremas de Incompletitud demostró que las dos primeras preguntas no podrían serlo ya que, tal como afirma Gödel:
«En cualquier formalización consistente de las matemáticas que sea lo bastante fuerte para definir el concepto de los números naturales, se puede construir una afirmación que ni se puede demostrar ni se puede refutar dentro de ese sistema», mientras que el primero afirma: «Ningún sistema consistente se puede usar para demostrarse a sí mismo».[19]
Sin embargo, no podían resolver la última pregunta. La dificultad estaba en la ausencia de significado de lo que se entiende por un «procedimiento mecánico». En 1936, Alan Turing en su trabajo Acerca de los números computables, introduce el concepto de la máquina de Turing y, junto a Alonzo Church demostraron ambos que es imposible escribir tal algoritmo. Como consecuencia, es también imposible decidir con un algoritmo general si ciertas frases concretas de la aritmética son ciertas o falsas.
EPÓNIMO :

Una máquina de Turing es un dispositivo que manipula símbolos sobre una tira de cinta de acuerdo con una tabla de reglas. A pesar de su simplicidad, una máquina de Turing puede ser adaptada para simular la lógica de cualquier algoritmo de computador y es particularmente útil en la explicación de las funciones de una CPU dentro de un computador.
Originalmente fue definida por el matemático inglés Alan Turing como una «máquina automática» en 1936 en la revista Proceedings of the London Mathematical Society[nota 1]. La máquina de Turing no está diseñada como una tecnología de computación práctica, sino como un dispositivo hipotético que representa una máquina de computación. Las máquinas de Turing ayudan a los científicos a entender los límites del cálculo mecánico.[3][4]
Turing dio una definición sucinta del experimento en su ensayo de 1948, «Máquinas inteligentes». Refiriéndose a su publicación de 1936, Turing escribió que la máquina de Turing, aquí llamada una máquina de computación lógica, consistía en:
... una ilimitada capacidad de memoria obtenida en la forma de una cinta infinita marcada con cuadrados, en cada uno de los cuales podría imprimirse un símbolo. En cualquier momento hay un símbolo en la máquina; llamado el símbolo leído. La máquina puede alterar el símbolo leído y su comportamiento está en parte determinado por ese símbolo, pero los símbolos en otros lugares de la cinta no afectan el comportamiento de la máquina. Sin embargo, la cinta se puede mover hacia adelante y hacia atrás a través de la máquina, siendo esto una de las operaciones elementales de la máquina. Por lo tanto cualquier símbolo en la cinta puede tener finalmente una oportunidad.[5]
Una máquina de Turing que es capaz de simular cualquier otra máquina de Turing es llamada una máquina universal de Turing (UTM, o simplemente una máquina universal). Una definición más matemáticamente orientada, con una similar naturaleza «universal», fue presentada por Alonzo Church, cuyo trabajo sobre el cálculo lambda se entrelaza con el de Turing en una teoría formal de la computación conocida como la tesis de Church-Turing. La tesis señala que las máquinas de Turing capturan, de hecho, la noción informal de un método eficaz en la lógica y las matemáticas y proporcionan una definición precisa de un algoritmo o «procedimiento mecánico».
La importancia de la máquina de Turing en la historia de la computación es doble: primero, la máquina de Turing fue uno de los primeros (si no el primero) modelos teóricos para las computadoras, viendo la luz en 1936. Segundo, estudiando sus propiedades abstractas, la máquina de Turing ha servido de base para mucho desarrollo teórico en las ciencias de la computación y en la teoría de la complejidad. Una razón para esto es que las máquinas de Turing son simples, y por tanto amenas al análisis. Dicho esto, cabe aclarar que las máquinas de Turing no son un modelo práctico para la computación en máquinas reales, las cuales precisan modelos más rápidos como los basados en RAM.
Historia


Alan Turing introdujo el concepto de máquina de Turing en el trabajo On computable numbers, with an application to the Entscheidungsproblem, publicado por la Sociedad Matemática de Londres en 1936, en el que se estudiaba la cuestión planteada por David Hilbert sobre si las matemáticas son decidibles, es decir, si hay un método definido que pueda aplicarse a cualquier sentencia matemática y que nos diga si esa sentencia es cierta o no. Turing ideó un modelo formal de computador, la máquina de Turing, y demostró que existían problemas que una máquina no podía resolver.[6]
Con este aparato extremadamente sencillo es posible realizar cualquier cómputo que un computador digital sea capaz de realizar.[7]
Mediante este modelo teórico y el análisis de la complejidad de los algoritmos, fue posible la categorización de problemas computacionales de acuerdo a su comportamiento, apareciendo así, el conjunto de problemas denominados P y NP, cuyas soluciones pueden encontrarse en tiempo polinómico por máquinas de Turing deterministas y no deterministas, respectivamente.
Precisamente, la tesis de Church-Turing formulada por Alan Turing y Alonzo Church, de forma independiente a mediados del siglo XX caracteriza la noción informal de computabilidad con la computación mediante una máquina de Turing.[8]
La idea subyacente es el concepto de que una máquina de Turing puede verse como un autómata ejecutando un procedimiento efectivo definido formalmente, donde el espacio de memoria de trabajo es ilimitado, pero en un momento determinado solo una parte finita es accesible.
Descripción informal


La máquina de Turing modela matemáticamente a una máquina que opera mecánicamente sobre una cinta. En esta cinta hay símbolos que la máquina puede leer y escribir, uno a la vez, usando un cabezal lector/escritor de cinta. La operación está completamente determinada por un conjunto finito de instrucciones elementales como «en el estado 42, si el símbolo visto es 0, escribe un 1; Si el símbolo visto es 1, cambia al estado 17; en el estado 17, si el símbolo visto es 0, escribe un 1 y cambia al estado 6; etc». En el artículo original («Sobre números computables con una aplicación al Entscheidungsproblem»), Turing no imagina un mecanismo, sino una persona a la que él llama la «computadora», quien ejecuta servilmente estas reglas mecánicas deterministas (o como Turing pone, «de una manera desganada»).
Más precisamente, una máquina de Turing consta de:
- Una cinta que se divide en celdas, una al lado de la otra. Cada celda contiene un símbolo de algún alfabeto finito. El alfabeto contiene un símbolo especial llamado blanco (aquí escrito como «B») y uno o más símbolos adicionales. La cinta se supone que es arbitrariamente extensible hacia la izquierda y hacia la derecha, es decir, la máquina de Turing siempre es provista con tanta cinta como necesite para su computación. Las celdas que no se hayan escrito previamente se asumen que están rellenas con el símbolo blanco. En algunos modelos la cinta tiene un extremo izquierdo marcado con un símbolo especial; la cinta se extiende o es indefinidamente extensible hacia la derecha.
- Un cabezal que puede leer y escribir símbolos en la cinta y mover la cinta a la izquierda y a la derecha una (y solo una) celda a la vez. En algunos modelos el cabezal se mueve y la cinta es estacionaria.
- Un registro de estado que almacena el estado de la máquina de Turing, uno de los estados finitos. Hay un estado inicial especial con el que el registro de estado se inicia. Turing escribe que estos estados reemplazan el «estado de la mente» en que ordinariamente estaría una persona realizando cálculos.
- Una tabla finita de instrucciones (llamada ocasionalmente como tabla de acción o función de transición). Las instrucciones son usualmente 5-tuplas: qiaj→qi1aj1dk, (a veces 4-tuplas), que, dado el estado (qi) en que la máquina se encuentra actualmente y el símbolo (aj) que se está leyendo en la cinta (el símbolo actualmente debajo del cabezal) le indica a la máquina hacer lo siguiente en secuencia (para los modelos de 5-tupla):
- Borra o escribe un símbolo (reemplazando aj con aj1), y entonces
- Mueve el cabezal (que es descrito por dk y puede tener los valores: «L» para un paso a la izquierda, o «R» para un paso a la derecha, o «N» para permanecer en el mismo lugar) y luego
- Asume el mismo o un nuevo estado como prescrito (ve al estado qi1).
- En los modelos de 4-tupla, son especificadas como instrucciones separadas: borrar o escribir un símbolo (aj1) y mover el cabezal a la izquierda o la derecha (dk). Específicamente, la tabla indica a la máquina: (ia) borrar o escribir un símbolo o (ib) mover el cabezal a la izquierda o a la derecha, y luego (ii) asumir el mismo o un nuevo estado, pero no las dos acciones (ia) y (ib) en la misma instrucción. En algunos modelos, si no hay ninguna entrada en la tabla para la actual combinación de símbolo y estado, la máquina se detendrá; otros modelos requieren que estén llenas todas las entradas.
Note que cada parte de la máquina — su estado y colecciones de símbolos — y sus acciones — imprimir, borrar, movimiento de la cinta — es finito, discreto y distinguible; es la cantidad potencialmente ilimitada de cinta lo que le da una cantidad ilimitada de espacio de almacenamiento.
Definición formal
Una máquina de Turing[10] es un modelo computacional que realiza una lectura/escritura de manera automática sobre una entrada llamada cinta, generando una salida en esta misma.
Este modelo está formado por un alfabeto de entrada y uno de salida, un símbolo especial llamado blanco (normalmente b, o 0), un conjunto de estados finitos y un conjunto de transiciones entre dichos estados. Su funcionamiento se basa en una función de transición, que recibe un estado inicial y una cadena de caracteres (la cinta, la cual puede ser infinita) pertenecientes al alfabeto de entrada. La máquina va leyendo una celda de la cinta en cada paso, borrando el símbolo en el que se encuentra posicionado su cabezal y escribiendo un nuevo símbolo perteneciente al alfabeto de salida, para luego desplazar el cabezal a la izquierda o a la derecha (solo una celda a la vez). Esto se repite según se indique en la función de transición, para finalmente detenerse en un estado final o de aceptación, representando así la salida.
Una máquina de Turing con una sola cinta puede definirse como una 7-tupla
donde:[11]
- es un conjunto finito de estados.
- es un conjunto finito de símbolos distinto del espacio en blanco, denominado alfabeto de máquina o de entrada.
- es un conjunto finito de símbolos de cinta, denominado alfabeto de cinta ().
- es el estado inicial.
- es un símbolo denominado blanco, y es el único símbolo que se puede repetir un número infinito de veces.
- es el conjunto de estados finales de aceptación.
- es una función parcial denominada función de transición, donde es un movimiento a la izquierda y es el movimiento a la derecha.
Existe en la literatura un abundante número de definiciones alternativas, pero todas ellas tienen el mismo poder computacional, por ejemplo se puede añadir el símbolo como símbolo de «no movimiento» en un paso de cómputo.
Funcionamiento de la máquina de Turing
La máquina de Turing consta de un cabezal lector/escritor y una cinta infinita en la que el cabezal lee el contenido, borra el contenido anterior y escribe un nuevo valor. Las operaciones que se pueden realizar en esta máquina se limitan a:
- Mover el cabezal lector/escritor hacia la derecha.

Visualización de una máquina de Turing, en la que se ve el cabezal y la cinta que se lee. - Mover el cabezal lector/escritor hacia la izquierda.
El cómputo se determina a partir de una tabla de estados de la forma:
- (estado, valor) (nuevo estado, nuevo valor, dirección)
Esta tabla toma como parámetros el estado actual de la máquina y el carácter leído de la cinta, dando la dirección para mover el cabezal, el nuevo estado de la máquina y el valor a escribir en la cinta.
La memoria es la cinta de la máquina que se divide en espacios de trabajo denominados celdas, donde se pueden escribir y leer símbolos. Inicialmente todas las celdas contienen un símbolo especial denominado «blanco». Las instrucciones que determinan el funcionamiento de la máquina tienen la forma, «si estamos en el estado x leyendo la posición y, donde hay escrito el símbolo z, entonces este símbolo debe ser reemplazado por este otro símbolo, y pasar a leer la celda siguiente, bien a la izquierda o bien a la derecha».
La máquina de Turing puede considerarse como un autómata capaz de reconocer lenguajes formales. En ese sentido, es capaz de reconocer los lenguajes recursivamente enumerables, de acuerdo a la jerarquía de Chomsky. Su potencia es, por tanto, superior a otros tipos de autómatas, como el autómata finito, o el autómata con pila, o igual a otros modelos con la misma potencia computacional.
Representación como diagrama de estados
Las máquinas de Turing pueden representarse mediante grafos particulares, también llamados diagramas de estados finitos, de la siguiente manera:
siendo el símbolo denominado «blanco». Esta máquina reconoce la expresión regular de la forma con .
- Los estados se representan como vértices, etiquetados con su nombre en el interior.
- Una transición desde un estado a otro, se representa mediante una arista dirigida que une a estos vértices, y está rotulada por símbolo que lee el cabezal/símbolo que escribirá el cabezal, movimiento del cabezal.
- El estado inicial se caracteriza por tener una arista que llega a él y que no proviene de ningún otro vértice.
- El o los estados finales se representan mediante vértices que están encerrados a su vez por otra circunferencia.
Descripción instantánea
Es una secuencia de la forma donde y que escribe el estado de una máquina de Turing. La cinta contiene la cadena seguida de infinitos blancos. El cabezal señala el primer símbolo de .
Por ejemplo, para la máquina de Turing
con las transiciones
La descripción instantánea para la cinta 1011 es:



No hay comentarios:
Publicar un comentario