Вы находитесь на странице: 1из 4

Máquinas de Turíng

Que es y como funciona


Es un dispositivo de reconocimientos de lenguaje, es más general que cualquier
autómata finito y cualquier autómata de pila, debido a que ellas pueden
reconocer tanto los lenguajes regulares, como los lenguajes independientes de
contexto y además muchos otros tipos de lenguajes.
La máquina de Turing (abreviado MT) tiene, un control finito, una cabeza lectora y una
cinta donde puede haber caracteres, y donde eventualmente viene la palabra de
entrada. La cinta es de longitud infinita hacia la derecha, hacia donde se extiende
indefinidamente, llenándose los espacios con el carácter blanco (que representaremos
con “t”). La cinta no es infinita hacia la izquierda, por lo que hay un cuadro de la cinta
que es el extremo izquierdo, la MT la cabeza lectora es de lectura y escritura, por lo que
la cinta puede ser modificada en curso de ejecución. Además, en la MT la cabeza se
mueve bidireccionalmente (izquierda y
derecha), por lo que puede pasar repetidas
veces sobre un mismo segmento de la cinta.

La máquina de Turing consta de un cabezal lector/escritor y una cinta infinita en la que


el cabezal lee el contenido, borra el contenido anterior y escribe un nuevo valor. Las
operaciones que se pueden realizar en esta máquina se limitan a: avanzar el cabezal
lector/escritor hacia la derecha. Avanzar el cabezal lector/escritor hacia la izquierda. El
cómputo es determinado a partir de una tabla de estados de la forma: (estado, valor)
(nuevo estado, nuevo valor, dirección)
¿Como funciona una maquina de turing?

Una máquina de Turing es un dispositivo que transforma un INPUT en un OUTPUT después de


algunos pasos. Tanto el INPUT como el OUPUT constan de números en código binario (ceros y
unos). En su versión original la máquina de Turing consiste en una cinta infinitamente larga con
unos y ceros que pasa a través de una caja. La caja es tan fina que solo el trozo de cinta que
ocupa un bit (0 ó 1) está en su interior. La máquina tiene una serie de estados internos finitos
que también se pueden numerar en binario.

Para llevar a cabo algún algoritmo, la máquina se inicializa en algún estado interno arbitrario. A
continuación, se pone en marcha y la máquina lee el bit que se encuentra en ese momento en
su interior y ejecuta alguna operación con ese bit (lo cambia o no, dependiendo de su estado
interno). Después se mueve hacia la derecha o hacia la izquierda, y vuelve a procesar el siguiente
bit de la misma manera. Al final se para, dejando el resultado al lado izquierdo por ejemplo.
6.1 Definición formal mt
Una Máquina de Turing es un modelo matemático que consiste en un autómata capaz
de implementar cualquier problema matemático expresado por medio de un algoritmo.
AlanTuring ;
fue un matemático inglés que vivió durante la primera mitad del siglo XX. Aunque fue
un matemático brillante en muchos campos, destacando especialmente en criptografía,
su principal interés se centraba en la lógica, que en aquellos momentos se encontraba en
plenaebullición gracias al intento de David Hilbert de hallar una formulación de las
matemáticas sobre una base estricta de lógica formal. La Máquina de Turing, o
Máquina de Computación Lógica
como la llamaba él, fue quizás la mayor aportación de Alan Turing a esta tarea y con
seguridad

Libertad de espíritu en ciencia y tecnología


Ingeniería en Sistemas Computacionales
su descubrimiento de mayor transcendencia, ya que abrió el camino de la ciencia de la
Computación, que a su vez nos lleva al computador que en estos momentos estoy
utilizando para escribir esto, o al que usted está usando para leerlo. En definitiva, Alan
Turing fue uno delos científicos más importantes de la primera mitad del siglo XX y, sin
duda, una de las mentes que más influyó en la manera actual que tenemos de ver el mundo
e interactuar con él
(MT) Es un modelo computacional que realiza una lectura/escritura de manera
automática sobre una entrada llamada cinta, generando una salida en esta misma. Este
modelo está conformado por un alfabeto de entrada y uno de salida, un símbolo especial
llamado blanco (normalmente b, Δ o 0), un conjunto de estados finitos y un conjunto de
transiciones entre dichos estados.

Su funcionamiento se basa en una función de transición, que recibe un estado inicial y


una cadena de caracteres (la cinta, la cual es finita por la izquierda) pertenecientes al
alfabeto de entrada. Luego va leyendo una celda de la cinta , borrando el símbolo ,
escribir el nuevo símbolo perteneciente al alfabeto de salida y finalmente avanza a la
izquierda o a la derecha (solo una celda a la
vez), repitiendo esto según se indique en la
función de transición, para finalmente
detenerse en un estado final o de aceptación,
representando así la salida.
6.2 Construcción modular de las MT
El objetivo de la creación modular de una maquina de Turing es poder desarrollar máquinas
complejas a partir de bloques elementales, a partir de maquinas más pequeñas, mediante
diagramas de transiciones. La construcción de máquinas de Turing se lleva a cabo mediante los
diagramas de transición y combinarlos de manera parecida a lo que se realiza en la formación
de la unión y concatenación de los autómatas finitos.

Pasos para la construcción de una máquina de Turing:

1. Elimine las características de inicio de los estados iniciales de las maquinas, excepto la de
aquel donde iniciara la maquina compuesta.

2. Elimine las características de detención de los estados de parada de todas la maquinas e


introduzca un nuevo estado de parada que nos se encuentre en ninguno de los diagramas que
se combinan.

3. Para cada uno de los antiguos estados de parada p y cada x en y.

Ejemplificación de dicha construcción.

Los diagramas compuestos para la construcción modular de una máquina de Turing:

Son aquellos en los que cada uno de los bloques de construcción se representa como un nodo,
con flechas entre dichos nodos para indicar las transiciones entre bloques.

Se puede combinar dos máquinas de Turing permitiendo que compartan la misma cinta y, que
cuando una termine su ejecución, la otra empiece. El contenido de la cinta cuando comienza la
ejecución de la segunda máquina de Turing, está formado por todo lo que dejó la primera
máquina de Turing, y la cabeza de l/e de la segunda se situará, al comienzo de la ejecución,
sobre la celda de la cinta sobre la que terminó la primera.

Un sistema Turing completo es aquel que puede simular el comportamiento de una máquina de
Turing. Es evidente que salvando los problemas de memoria, los ordenadores modernos y los
lenguajes de programación de uso general, son sistemas de Turing completos. También es
evidente, que con independencia de su forma concreta, cualquier dispositivo que se comporte
como un sistema de Turing completo, puede en principio ejecutar cualquier cálculo que realice
cualquier computador.
6.3 Lenguajes aceptados por una MT

Una máquina de Turing se puede comportar como un aceptador de un


lenguaje. Si colocamos una cadena w en la cinta, situamos la cabeza de
lectura/escritura sobre el símbolo del extremo izquierdo de la cadena w y
ponemos en marcha la máquina a partir de su estado inicial. Entonces w es
aceptada si, después de una secuencia de movimientos, la máquina de Turing
llega a un estado final y para. Por tanto w es aceptada. Si qw * w1pw2 para
algún estado final p y unas cadenas w1 y w2.

De acuerdo a la clasificación de los lenguajes formales realizada por el


norteamericano Avram Chomsky, la Máquina de Turing acepta los lenguajes
más generales, o tipo cero (0), también llamadoslenguajes recursivamente
enumerables.

Un lenguaje recursivamente enumerable es un lenguaje formal para el cual


existe una máquina de Turing que acepta y se detiene con cualquier cadena
del lenguaje, pero que puede parar y rechazar, o bien iterar indefinidamente,
con una cadena que no pertenece al lenguaje. Todos los lenguajes, regulares,
independientes de contexto, dependientes de contexto y recursivos son
recursivamente enumerables.

Una cadena ω∈A^*, es aceptada por una MT, si comienza en el estado e0, con
la cabeza de lectura/escritura en el símbolo más a la izquierda, luego de leer
toda la cadena ω, llega a un estado e_f∈F. El lenguaje aceptado por MT, es el
conjunto de todas las cadenas que son aceptadas por MT:

L(MT)={ω / e_0 ω ⊢*α_1 e_f α_2 y e_f∈F y α_1,α_1 ∈C^* y ω∈A^* }

Tenemos por ejemplo una MT que reconoce el lenguaje {0^n 1^n:n≥1}. Las
transiciones de la máquina se representan como sigue:

Вам также может понравиться