Sie sind auf Seite 1von 16

Máquinas de Turing

Introducción

 Consta de una unidad de control, que puede encontrarse


en cualquiera de un conjunto finito de estados.
 Dispone de una cinta de longitud infinita en la que se
pueden leer y escribir datos.
 La cinta se divide en cuadrados o casillas y cada casilla
puede contener un símbolo de entre un número finito de
símbolos.
Introducción

 Inicialmente, la entrada se coloca en la cinta.


 Las restantes casillas de la cinta, que se extiende hacia la
izquierda y la derecha, inicialmente almacenan un símbolo
especial denominado espacio en blanco.
 El espacio en blanco es un símbolo de cinta, pero no un
símbolo de entrada.
 Pueden existir también otros símbolos de cinta además de
los símbolos de entrada y del espacio en blanco.
 Existe una cabeza de la cinta que siempre está situada en
una de las casillas de la cinta.
 Inicialmente, la cabeza de la cinta está en la casilla más a
la izquierda que contiene la entrada.
Movimiento de la Máquina
de Turing
 Es una función del estado de la unidad de control y el
símbolo de cinta al que señala la cabeza.
 En un movimiento, la máquina de Turing:
 Cambiará de estado. El siguiente estado puede ser
opcionalmente el mismo que el estado actual.
 Escribirá un símbolo de cinta en la casilla que señala la
cabeza (puede ser el mismo símbolo).
 Moverá la cabeza de la cinta hacia la izquierda o hacia
la derecha.
Notación Formal

 Describimos un máquina de turing mediante la siguiente


séptupla (Q, , Γ, , q0, B, F), donde:
 Q es un conjunto finito de estados de la unidad de control.
  es un conjunto finito, alfabeto de entrada.
 Γ conjunto completo de símbolos de cinta; Σ siempre es un
subconjunto de Γ.
 La función de transición. Los argumentos de δ(q,X) son un
estado q y un símbolo de cinta X. El valor de δ(q,X), si está
definido, es (p,Y,D), donde:
 p es el siguiente estado de Q.
 Y es el símbolo de Γ, que se escribe en la casilla que señala la
cabeza
 D es una dirección y puede ser L o R
 q0 Q, es el estado inicial.
 B El símbolo espacio en blanco
 F  Q es el conjunto de estados de aceptación(o finales).
Ejemplo

 Máquina de Turing (MT) que acepta el lenguaje {0n1n | n≥1}


 Inicialmente, se proporciona a la cinta una secuencia finita
de ceros y unos, precedida y seguida por secuencias
infinitas de espacios en blanco.
 La MT cambiará primero un 0 por X y luego un 1 por una Y,
hasta que se hayan cambiado todos los 0s y 1s.
 Si la entrada no es de la forma 0n1n, entonces la MT
terminará no haciendo el siguiente movimiento y se
detendrá sin aceptar.
 Si termina cambiando todos los 0s por X en la misma
iteración en la que cambia el último 1 por una Y, entonces
determina que la entrada es 0n1n y acepta.
Ejemplo

 La especificación formal de la máquina de Turing M


es:

 Su tabla de transiciones es:


Ejemplo

 El diagrama de transiciones es:


Secuencia de movimiento Ͱ

 Para w=01 se tiene:


q001ͰXq11Ͱq2XYͰXq0YͰXYq3B ͰXYBq4B

q001
Xq11
q2XY
Xq0Y
XYq3B
XYBq4B
Lenguajes de máquina de
turing
 Máquina de Turing reconoce los lenguajes
recursivamente enumerables.
 Si máquina de Turing se detiene para toda
entrada, el lenguaje es recursivo.
Extensiones de la máquina
de Turing básica
 Existen modelos de computadoras relacionadas con
las máquinas de Turing que tienen la misma
funcionalidad de reconocimiento de lenguajes que el
modelo básico de las MT:
 Máquina de Turing de varias cintas
 Maquina de Turing no determinista
Máquina de Turing de varias
cintas
 El dispositivo tiene una unidad de control (estado) y
un número infinito de cintas.
 Inicialmente:
 La entrada, una secuencia finita de símbolos de entrada,
se coloca en la primera cinta.
 Todas las casillas de las demás cintas contienen espacios
en blanco.
 La unidad de control se encuentra en el estado inicial.
 La cabeza de la primera cinta apunta al extremo
izquierdo de la entrada.
 Las cabezas de las restantes cintas apuntan a una casilla
arbitraria. Puesto que las cintas distintas de la primera
están completamente en blanco.
Máquina de Turing de varias
cintas
 Un movimiento de la MT de varias cintas depende del
estado y del símbolo señalado por las cabezas de
cada una de las cintas:
 La unidad de control entra en un nuevo estado, que
podría ser el mismo que en el que se encontraba antes.
 En cada cinta, se escribe un nuevo símbolo de cinta en la
casilla señalada por la cabeza.
 Cada una de las cabezas de las cintas realizan un
movimiento independiente: L (izquierda), R (derecha) o S
(estacionaria). En algunos textos se considera E para
estacionaria o P.
Máquina de Turing de varias
cintas
 La función de transición para máquinas de turing con n
cintas es:

 Donde k es el número de cintas.


 Ejemplo de máquina de turing de tres cintas:
Máquinas de Turing no
deterministas (MTN)
 Se diferencia de la máquina determinista en que
tiene una función de transición δ tal que para el
estado q y símbolo de cinta X, δ(q, X) es un conjunto
de tuplas:

 La MTN puede elegir, en cada paso, cuál de las


tuplas será el siguiente movimiento.
 No puede elegir un estado de una, un símbolo de
cinta de otra y una dirección de una tercera.
 Las MTN no aceptan ningún lenguaje que no sea
aceptado por una MT determinista.
Máquinas de Turing no
deterministas (MTN)

Determinista No Determinista

Das könnte Ihnen auch gefallen