EJERCICIO [SUBMÁQUINA] Dar una máquina de Turing con submáquinas y otra máquina de Turing sin submáquinas que emule a la primera. Se puede aplicar el mismo procedimiento a cualquier máquina de Turing con submáquinas? Debería estar claro cómo generalizar la construcción a cualquier otra MdT con submáquinas.
EJERCICIO [VARIAS CINTAS] Describir el funcionamiento de una MdT con varias cintas. Dar un ejemplo de una MdT que utilice dos cintas y otra MdT normal que emule a la primera. Debería estar claro cómo generalizar la construcción a cualquier otra MdT con varias cintas.
EJERCICIOS [CINTA LIMITADA] Dar un ejemplo de una MdT con cinta limitada por la izquierda y otra MdT normal que la emule. Debería estar claro cómo generalizar la construcción a cualquier otra MdT con cinta limitada por la izquierda. [SÍMBOLOS] Dar un ejemplo de una MdT con 3 símbolos y otra con 2 símbolos que la emule. Debería estar claro cómo generalizar la construcción a cualquier otra MdT con más de 3 símbolos.
Codificación de MdT Las máquinas de Turing se pueden codificar codificando cada transición y concatenando los resultados con separadores. De esta forma se define un lenguaje de programación en el que hay tres variables: El estado de la máquina y las dos partes en que se divide la cinta.
Ejemplo de codificación de MdT y de sus estados instantáneos EstIni.EstFin ;Trans,… :Cinta1EstadoCinta2 0.24 ;0a1a+,0b4a-,1a2a+,1b0a-,2a3a+,2b1a-,3a4a+,3b2a-,4a0a+,4b3a- :aa2bab (Gp:) 0 (Gp:) 1 (Gp:) 2 (Gp:) 4 (Gp:) 3 (Gp:) aa+ (Gp:) aa+ (Gp:) aa+ (Gp:) aa+ (Gp:) aa+ (Gp:) ba- (Gp:) ba- (Gp:) ba- (Gp:) ba- (Gp:) ba-
Máquina de Turing universal Hay máquinas de Turing capaces de emular el funcionamiento de otras cualesquiera a partir de su codificación. (Gp:) 1 (Gp:) ?BuscaTransición (Gp:) ?AplicaTransición (Gp:) 2 (Gp:) :Comprueba (Gp:) 0
Cuestión Comparar lo anterior con la emulación de programas.
EJERCICIO [BUSCA TRANSICIÓN] Escribir la submáquina BuscaTransición de la MTU [APLICA TRANSICIÓN] Escribir la submáquina AplicaTransición de la MTU [COMPRUEBA] Escribir la submáquina Comprueba de la MTU
EJERCICIOS [EMULA DETERMINISTA] Dar una MdT indeterminista y otra MdT determinista que emula su funcionamiento. [MTU DETERMINISTA] Dar una MdT determinista que emule el funcionamiento de una MdT arbitraria, determinista o no
Problema de la parada Dada una MdT M y una palabra w, ¿llega M a un estado de parada a partir de w? Solución del problema: Sería MdT que, al ejecutarse sobre una codificación de M + w, se para si y sólo si M no lo hace a partir de w. No tiene solución. Demostración: Análoga al caso de programas.
EJERCICIO [PARA PARA 1] Suponiendo que el problema de la parada tuviera solución, escribir una MdT, PP, que utilice a la anterior como submáquina que, al ejecutarse sobre la codificación de otra MdT M + una palabra w, se pare en el estado 0 si M lo hace sobre w, y en ese caso deje sobre la cinta el valor calculado por M, y se pare en el estado 1 si M no lo hace sobre w.
Página anterior | Volver al principio del trabajo | Página siguiente |