Alan Turing y la computación en la BUAP

Imagen tomada de
http://berto-meister.blogspot.mx/2010/06/happy-birthday-alan-turing.html

La ciencia también sufre de crisis, no sólo por la falta de financiamiento, sino también por los resultados de los trabajos de los investigadores que conducen a contradicciones y paradojas.

Un ejemplo de ello es la gran crisis de las matemáticas en cuerpos matemáticos que se consideraban bien establecidos y bien comportados, como la paradoja de Bertrand Russell (1872–1970), en la que demostró que la teoría informal de conjuntos de Georg Cantor contenía una contradicción que podía ser construida a partir de sus propios axiomas.

Como respuesta a esta crisis, el científico alemán David Hilbert (1862–1943) propuso un proyecto de investigación conocido como el “programa de Hilbert”.

Durante el Congreso Internacional de Matemáticas celebrado en Bologna en 1928, Hilbert planteó tres preguntas específicas:

Primera pregunta: demostrar si acaso la matemática podía formularse como un sistema completo, en el sentido de que cualquier enunciado matemático (tal como decidir si la raíz cuadrada de dos es o no un número racional) pudiera ser ya sea demostrado formalmente o refutado.

Segunda pregunta: demostrar si la matemática era consistente en el sentido de que para cualquier sistema fuese imposible arribar a contradicciones (tales como “1 + 2 = 4” en la aritmética de los enteros), derivadas de aplicar pasos matemáticos correctamente deducidos a partir del conjunto de axiomas que definían al sistema.

Tercera pregunta: encontrar si acaso la matemática era decidible en el sentido de que pudiera demostrarse que para cualquier aserción debía existir algún método o algoritmo capaz de decidir en un tiempo finito acerca de la validez de dicha afirmación.

Inesperadamente, y muy poco tiempo después, en septiembre de 1930, el joven matemático checo Kurt Gödel (1906–1978) sacudió violentamente a su comunidad al anunciar en una conferencia en Könisberg sus teoremas de incompletitud.

Gödel demostraba que:

1. Si un sistema es consistente entonces no puede ser completo,

2. Si un sistema es inconsistente entonces debe ser completo, y

3. La consistencia de los axiomas no puede ser probada desde dentro del sistema.

Una consecuencia directa de estos resultados es que las respuestas correctas a las dos primeras preguntas de Hilbert son: ¡no!

Sin embargo, la respuesta a la tercera pregunta de Hilbert, conocida como el Entscheidungsproblem, continuaba abierta.

En la primavera de 1935 Alan Turing tomó el curso de fundamentos de la matemática impartido por el topólogo y lógico inglés Max H. A. Newman (1897– 1984). El curso de Newman concluyó con la demostración del teorema de Gödel y mencionó que el Ents-cheidungsproblem continuaba abierto por lo que dirigió a sus alumnos la siguiente pregunta:

“¿Es posible concebir un proceso mecánico capaz de ser aplicado a enunciados matemáticos para responder si ellos son o no demostrables?”

Para responder a esta pregunta, Turing ideó un autómata mecánico que fuera capaz de ejecutar cualquier programa de manera automática.

Fue así como Turing especificó las capacidades de cómputo de una máquina equipada con una cinta de tamaño infinito la cual contenía las instrucciones y los datos del programa a ser ejecutado. La máquina podría leer, escribir y navegar sobre la cinta, con la capacidad de modificar a su paso los valores almacenados en ella.

Alan Turing simuló el problema de decisión de Hilbert en su autómata, y demostrando a través de una adaptación del famoso argumento de la diagonal de Cantor que existían números reales que eran computables mientras que otros eran no computables.

Los números reales no computables son infinitos y no enumerables, y Turing mostró, además, que el problema de escribir un número no computable es indecidible. Con la evidencia de este contraejemplo, Turing encontró que la respuesta correcta a la tercera pregunta de Hilbert era, una vez más, negativa.

El hallazgo y definición de números computables le pareció a Turing un resultado tan fundamental que tituló el artículo en que publicó su investigación como: On computable numbers, with an application to the Entscheidungsproblem, que puede traducirse como “Acerca de los números computables y de su aplicación al Entscheidungsproblem”.

El resultado negativo al Entscheidungsproblem contiene en sí mismo muchas consecuencias filosóficas, pues demuestra matemáticamente que hay problemas que no podrían ser resueltos por ninguna entidad inteligente sin importar si ésta dispone de recursos de cómputo infinitos y sin importar si puede esperar toda la eternidad a que se produzcan las soluciones a tales problemas.

Entre otras cosas, la existencia de números no computables demuestra matemáticamente la no existencia de dioses todopoderosos y más mundanamente define las cotas superiores de nuestra capacidad como civilización para resolver problemas.

En palabras de Turing, sus máquinas son una idealización del computador humano: “The behaviour of the computer at any moment is determined by the symbols which he is observing, and his “state of mind’ at that moment. We may suppose that there is a bound B to the number of symbols or squares which the computer can observe at one moment…”’

Nota: La palabra “computer” arriba significa lo que esa palabra quería decir en 1936: un ser humano haciendo cálculos.

El equivalente al premio Nobel en Computación se llama premio Turing, en honor a Alan; su contribución científica incluyo las matemáticas, el criptoanálisis, la lógica, la filosofía, la biología, las ciencias de la computación, las ciencias del conocimiento, la inteligencia artificial y la vida artificial.

Gracias a él, se estima que la Segunda Guerra Mundial se redujo en al menos dos años, y con ello se salvaron varios millones de vidas de seres humanos. Durante la guerra todas las comunicaciones del ejército alemán se transmitían en texto cifrado, es decir ilegible para cualquier persona que no tuviera una máquina de cifrado, llamada Enigma, y conociera la llave secreta con la cual los mensajes eran cifrados.

Turing, basado en trabajos de matemáticos polacos, diseñó una máquina electromecánica, llamada Bombe, capaz de transformar el texto cifrado en texto claro (legible), encontrando para ello la llave secreta que era cambiada todos los días. Esta labor la realizó en la escuela de Cifrado y Código del gobierno inglés en Bletchley Park, lo que permitió a su gobierno y a los países aliados conocer desde 1942 los planes del ejército nazi.

Al término de la guerra las máquinas Bombe fueron destruidas y Bletchley Park fue desmantelado; el trabajo ahí desarrollado se mantuvo en secreto durante treinta años.

Dos años antes de que se hicieran públicos los trabajos de Turing durante la guerra, en 1973, a propuesta de Luis Rivera Terrazas, director de la Escuela de Ciencias Físico-Matemáticas, el Honorable Consejo Universitario, presidido por el químico Sergio Flores Suárez, rector de la Universidad Autónoma de Puebla, aprobó por mayoría de votos la creación de las carreras de Matemáticas, Computación y Electrónica. Se debe notar que las carreras se ubican en la Escuela de Ciencias y por ello sus planes y programas de estudio forman licenciados en Ciencias.

Terrazas era ingeniero civil, egresado del IPN, y realizó estudios de posgrado en astrofísica en el Observatorio Yerkes de la Universidad de Chicago. Pero el ingeniero era un científico interesado en el desarrollo de las ciencias naturales y sociales, por lo que es necesario destacar su decisión de declarar a la computación una ciencia, aún antes de que ésta tuviera un objeto de estudio y una metodología.

Así, el 10 de enero de 2013 estas carreras cumplieron 40 años en la hoy BUAP; desde entonces se han formado recursos humanos para la docencia y la investigación contribuyendo al desarrollo y crisis de la ciencia.

*[email protected]