¿Es una máquina de Turing en un alfabeto arbitrario (finito) equivalente a uno en {0, 1}?

Breve contexto:

Estoy tratando de entender por qué existe una Máquina Universal de Turing, en una cinta con alfabeto { 0 , 1 } . Creo que puedo ver que un 3 -la máquina de Turing de cinta puede representar una Máquina de Turing Universal, usando cinta 1 para la entrada correspondiente a la máquina de Turing a simular, cinta 2 correspondiente a un búfer que contiene el estado actual, y la cinta 3 siendo el cálculo real en la entrada.

Entonces, esto se reduce a comprender por qué cualquier función computable por una máquina de Turing de múltiples cintas también es computable por una máquina de Turing de una sola cinta.

Ahora, al agregar posibles símbolos adicionales a mi alfabeto, puedo ver cómo podría simular una máquina de Turing de múltiples cintas con una máquina de Turing de una sola cinta con un alfabeto más grande (algo así como: agregue un delimitador '#' para separar el cintas y símbolos 0 ˙ , 1 ˙ , B ˙ para representar la posición actual en cada cinta). Sin embargo, no me queda claro cómo sería posible hacer esto en una cinta en la que solo se permite el alfabeto. { 0 , 1 } .

Mi pregunta es:

Dada una máquina de Turing T en algún alfabeto (finito) Σ { 0 , 1 } que calcula una función parcial norte norte (usando la representación binaria), ¿existe una máquina de Turing? T solo en el alfabeto { 0 , 1 } que calcula la misma función parcial?

(Esto entonces responde a la última parte de mi proceso de pensamiento anterior).

¡Gracias! Sabía que no estaba seguro de los nombres correctos de las cosas. Editaré la pregunta.
Sí, puede codificar símbolos de Σ como cadenas de 0 arena 1 s de longitud fija registro 2 | Σ | y definir T de T para operar en estos fragmentos binarios. T necesita más estados que T recordar T 's state y averiguar qué símbolo ha escaneado... y otros detalles. Pero puede hacerse.
Oh, bien (regracias y edición), esperaba que esa fuera tu respuesta. Algunas personas... no son así, jajaja. Eres muy bienvenido.

Respuestas (1)

Ciertamente es posible que una máquina de Turing con alfabeto { 0 , 1 } para simular una máquina de Turing con cualquier alfabeto finito. La idea es que si el alfabeto más grande tiene un tamaño menor que 2 k entonces puede dividir la cinta en "trozos" de tamaño k y use cada uno de estos fragmentos para codificar un solo carácter del alfabeto más grande. Esto requiere una mayor cantidad de estados en la nueva máquina, porque reconocer un solo símbolo del alfabeto más grande requiere una secuencia de k estados en la nueva máquina.

Esto es ligeramente similar a usar UTF-32 para almacenar cadenas de caracteres Unicode arbitrarios en un lenguaje de programación que solo admite caracteres de 8 bits.