Alan Turing y On Computable Numbers
El 12 de noviembre de 1936, los Proceedings of the London Mathematical Society publicaron “On Computable Numbers, with an Application to the Entscheidungsproblem” de Alan Turing, un matemático de 24 años del King’s College de Cambridge.
El artículo no pretendía inventar la computadora. Pretendía resolver un problema de lógica matemática planteado por David Hilbert: ¿existe un procedimiento mecánico para determinar si cualquier proposición matemática es verdadera o falsa?
La respuesta fue no. Y el camino para demostrarlo cambió el mundo.
La máquina de Turing
Para formalizar qué significa “procedimiento mecánico”, Turing imaginó un dispositivo abstracto:
- Una cinta infinita dividida en celdas, cada una con un símbolo
- Un cabezal que lee, escribe y se mueve a izquierda o derecha
- Una tabla de reglas que determina qué hacer según el estado actual y el símbolo leído
Esta construcción teórica — la máquina de Turing — define los límites de lo que puede y no puede ser computado. Toda computadora moderna, desde un smartphone hasta un supercomputador, es funcionalmente equivalente a este modelo abstracto de 1936.
El concepto revolucionario
La idea más poderosa del artículo es la máquina universal: una máquina de Turing que puede simular cualquier otra máquina de Turing si recibe su descripción como entrada. Es decir, una máquina de propósito general que ejecuta programas.
Este es el principio sobre el que se construye todo el software moderno.
El hombre
Turing fue crucial en descifrar el código Enigma durante la Segunda Guerra Mundial, contribuyendo decisivamente a la victoria aliada. Después de la guerra, diseñó algunos de los primeros computadores electrónicos y planteó la pregunta de si las máquinas pueden pensar (el Test de Turing).
En 1952, fue procesado por homosexualidad — entonces un delito en el Reino Unido — y sometido a castración química. Murió en 1954, a los 41 años, por envenenamiento con cianuro. En 2013, recibió un indulto real póstumo.
El legado
Cada vez que un programa se ejecuta en cualquier dispositivo, se cumple lo que Turing formalizó en 1936: la idea de que un procedimiento abstracto puede ser codificado, almacenado y ejecutado por una máquina universal.