Page 46 - 06 Turing
P. 46
resulta mucho más sencillo de abordar. Entre los proyectos más
interesantes destacan «Turing and Post Machines: C++ Simula-
tors», una colección de programas en lenguaje C++ con los que
simular distintas clases de máquina ( determinista, no determi-
nista, universal, «con fallos», varias cintas, etc.). El Visual Turing,
diseñado para el sistema operativo Windows, es un atractivo simu-
lador con el que es posible experin1entar con diversas máquinas
de Turing por medio de instrucciones gráficas. Otro de los simula-
dores es Jflap, esta vez en Java, muy interesante al incluir la simu-
lación de la máquina de Turing junto con otras máquinas sinulares.
Otro ejemplo de máquina de Turing en lenguaje Java, aunque de
presentación más sobria, y por tanto de aspecto más académico,
es tmsim_bgm. Volviendo la vista atrás, para el sistema operativo
MS-DOS, el programa original jkturing, de John Kennedy, de la
Universidad de Santa Mónica, en Estados Unidos, representa otra
opción de sinmlación, aunque algo menos atractiva que Visual Tu-
ring o Jflap; no obstante, este programa fue actualizado para las
distintas versiones del sistema operativo Windows. Muy atractivo
es Uber Turing Machine, desarrollado en 2011, que incluye un al-
fabeto con el que escribir distintos programas para la máquina. ·
Todos estos programas son ejemplos de algo que resulta verdade-
ran1ente curioso, pues consisten en simular máquinas de Turing
en una máquina de Turing universal, el ordenador.
Uno de los desafíos más interesantes es la posibilidad de
construir una máquina de Turing utilizando para tal fin otra má-
quina, conocida con el nombre de Juego de la Vida. Este juego fue
diseñado en 1970 por John Horton Conway (n. 1937), profesor de
la Universidad de Cambridge, donde también estudió Turing. Se
trata de una simulación por ordenador que fue muy popular entre
los aficionados a la ciencia recreativa, especialmente tras su pu-
blicación por el matemático y divulgador Martin Gardner (1914-
2010) en la revista Scientijic American. El juego es un autómata
celular, es decir, una rejilla en dos dimensiones cuyas celdas están
ocupadas por lo que se denominan autómatas finitos, también
conocidos como máquinas de estados finitos; se trata de un ob-
jeto que se encuentra en uno de entre un conjunto de estados
posibles, siendo este conjunto finito. Por ejemplo, un semáforo
46 WUÉ ES UN ORDENADOR?