Sunteți pe pagina 1din 8

Universidad Mariano Glvez

Ingeniera en Sistemas de Informacin

6to. Semestre

Seccin A

Autmatas y Lenguajes Formales

Ing. Atilio Maltez

Mquinas de Turing

Alvin Steve Padilla Meza

3090-10-11973

Mazatenango 31 de octubre de 2016.


Mquinas de Turing
La mquina de Turing (MT) fue creada por Alan Turing. Y este concepto lo podemos explicar como
un autmata, como modelo computacional y como modelo matemtico.

Mquina de Turing como modelo computacional que realiza una lectura/escritura de manera
automtica sobre una entrada llamada cinta, generando una salida en esta misma.

La Mquina de Turing como un Modelo matemtico es una expresin de esas que se


utilizan con cierta frecuencia pero que pocas veces nos paramos a pensar qu significa.
Y aunque parezca algo complicado, en realidad se trata de un concepto bastante
sencillo.

La mquina de Turing como un autmata es lo que se conoce como una mquina terica,
esto quiere decir, un dispositivo cuyo funcionamiento se estudia sin necesidad de
construirlo realmente. En si un autmata es una mquina terica que se encarga de
leer unas instrucciones en forma de smbolos y va a venir a cambiar de estado segn
se le pida. Podemos explicar tambin que un autmata va a ser aquella forma
secuencia lineal de datos. Y En cada instante la mquina puede leer un solo dato de la
secuencia (generalmente un carcter) y realiza ciertas acciones en base a una tabla
que tiene en cuenta su "estado" actual (interno) y el ltimo dato ledo. Entre las
acciones est la posibilidad de escribir nuevos datos en la secuencia; recorrer la
secuencia en ambos sentidos y cambiar de "estado" dentro de un conjunto finito de
estados posibles.

Una mquina de Turing como autmata va a constar de una cabeza lectora y una cinta
infinita en la que la cabeza puede leer smbolos, borrarlos, escribirlos y moverse a la
derecha o a la izquierda. Por supuesto tambin consta de una funcin de estado que
determinar los cambios de un estado a otro que se deben producir en funcin de las
instrucciones que reciba.

Mquina de Turing como realizadora de clculos


Antes que nada ya conocimos que las mquinas de Turing pueden transformar cadenas
de entradas, y de esta forma tambin estas mquinas de Turing se pueden utilizar
como mecanismos para calcular o realizar funciones o clculos. A continuacin vamos a
expresar lo que son las Maquinas de Turing con sus siglas (MT).

MTM= (Q, , , q_0, T, B, )


Formalmente una f: ^*^* (parcial o total)

Calcula una funcin q_0 w*q_f v, donde v=f (w)

Si para una entrada w se tiene: = {a, b} y q_f

El modelo de MT o la Maquina de Turing no utiliza estado de aceptacin, el estado es


llamado estado final se usa para terminar el proceso de la entrada y producir la
salida.

Ejemplo:

Supongamos que tenemos = {a, b} y q_f y que representamos los enteros positivos
mediante cadenas solo de as. As el entero n estara representado por a^n.

Se puede construir la MT que calcule la funcin f(n, m) = n+m, implementando la


transformacin

a^n a^n en a^(n+m) b

Solucin:

Se recorren desde la izquierda todas las as hasta encontrar una b, esta se


reemplaza por una a, cambiando de estado, en este mismo estado se recorren todas
las as a la derecha y cuando se llega a un blanco se reemplaza por el mismo blanco se
deja la cabecera a la izquierda y se reemplaza la a por un blanco para restarle la que
adiciono y se mueve hacia la derecha y se cambia al estado final q3.

M= (Q, , , q_0, q_3, B, )

Donde la funcin se define as:


Reconocimiento de una cadena de entrada en una
MT Maquina de Turing
Para explicar el proceso de reconocimiento de una cadena de entrada se emplea la
grfica a continuacin. En la cual se explica por medio de una mquina de Turing como
esta acepta el lenguaje de palabras sobre {0,1} que comienzan y acaban con el mismo
smbolo. Para validar este lenguaje, se presentan dos cadenas, una que cumple la
condicin y otra que ser rechazada por la mquina. Tambin se muestra entonces la
cadena del lenguaje descrito, aceptada en este caso sera: 0110100 (lo que es el
estado de aceptacin q5).

Ejemplo de reconocimiento de cadenas:

Las transiciones, y el proceso seguido en la evaluacin y aceptacin de una cadena


dada, se resumen en la siguiente tabla:
Cadena del lenguaje descrito, rechazada: 110

Mquina de Turing como Reconocedora de Lenguajes

La Mquina de Turing como Reconocedor de Lenguajes. Vamos a explicar que MT o


Maquina de Turing que es sus siglas va a ser capaz de reconocer o aceptar un lenguaje
L. Y se va a expresar antes que nada recordando la definicin de L(M) que segn las
siglas de L va a ser Lenguaje , y esto se va a explicar cmo el lenguaje reconocido por
una Maquina de Turing, M: Dada la Maquina de Turing, M = h, Q, , f, q0, B,

Si el lenguaje asociado a esta mquina, al que llamaremos L (M) se define como, L(M)

= {x | q0x ` 1p2, p F, 1, 2 } (L(M) es el conjunto de cadenas de

entrada que llevan a la maquina a un estado final o estado de aceptacin,


independientemente de la posicin que ocupe en el cabezal).

Si la cadena de entrada en una maquina M pertenece a L (M), la maquina M siempre


se detiene. Pero lo que ocurre cuando la cadena no pertenece al lenguaje da pie a la
clasificacin de los lenguajes en Recursivos y Recursivamente Numerables.
(Lenguaje Recursivamente Enumerable) Sea M una Maquina de Turing; se dice que

L = L(M) es un Lenguaje Recursivamente Enumerable si - x L, M se detiene en q

F, - x 6 L, M se detiene en q 6 F o bien M no se detiene


X 6 L, M se detiene en q 6 F o bien M no se detiene. SI (x L (M)) M

Y Aqu se va dar a conocer que estos Aceptan lenguajes formales que pueden ser
generados por una gramtica de tipo 0: recursivamente innumerable (r.e) Las mquinas
de Turing son los reconocedores de lenguaje ms poderosos que existen.

Tambin vamos a expresar que como forma para reconocer mejor los lenguajes van a
ser necesario conocer los mismos:

Lenguajes Regulares: las gramticas (de tipo 3) formales definen un lenguaje


describiendo como se pueden generar las cadenas del lenguaje Las gramticas
regulares (Van a ser aquellos reconocidos por un autmata finito). Tambin van a ser
aquellas que son las gramticas ms restrictivas. El lado derecho de una produccin
debe contener un smbolo Terminal y como mximo un smbolo no Terminal.

Lenguajes Libres de contexto: Estas gramticas conocidas tambin como gramticas


de tipo 2 o gramticas independientes del contexto, son las que generan los lenguajes
libres o independientes del contexto. Los lenguajes libres del contexto son aquellos
que pueden ser reconocidos por un autmata de pila determinstico o no
determinstico. Como toda gramtica se definen mediante una cudrupla G=N, T, S, P),
siendo N un conjunto finito de smbolos no terminales; T un conjunto de smbolos
terminales: P un conjunto finito de producciones; S es el smbolo distinguido o axioma.

Diseo de la Maquina de Turing


La mquina imaginada por Turing era sumamente simple. Realizaba su trabajo
utilizando como hardware un cabezal de lectoescritura y como soporte para el
programa y los datos una cinta de papel infinitamente larga. El cabezal era capaz de
leer el contenido de una posicin de la cinta, borrarlo o escribir un nuevo valor.
Concretamente, las operaciones que puede realizar una Mquina de Turing se limitan a
avanzar el cabezal lector/escritor hacia la derecha o avanzar el cabezal
lector/escritor hacia la izquierda. Una vez que est en la nueva posicin, realiza el
cmputo, que est determinado por una tabla de estados de la forma (estado, valor)
(nuevo estado, nuevo valor, direccin). Los parmetros de la tabla son el estado
actual de la mquina y el carcter ledo de la cinta, o que produce un nuevo estado de
la mquina, proporciona la direccin a la que mover el cabezal y el nuevo valor a ser
escrito en la cinta. A pesar de su sencillez extrema, esta mquina es capaz de realizar
cualquier cmputo que un ordenador digital sea capaz de realizar, aunque obviamente,
a una velocidad mucho menor. Por supuesto, en 1936 la Mquina de Turing era slo un
modelo matemtico abstracto que formalizaba el concepto de algoritmo.

Para hacer una mquina de Turing debemos utilizar un marcador convencional


impulsado por servomecanismos y controlado por un Propeller, el cual es un micro
controlador producido por la compaa Parallax Inc. Como muchos chips de este tipo,
poseen una seccin de proceso, generacin de reloj, contador de sistema, puertos de
entrada/salida, memoria RAM y ROM... pero aqu termina toda similitud con los micros
controladores conocido el cual se utiliza para escribir ceros y unos sobre la cinta.
Una pequea cmara se encarga de ver el contenido de las celdas que contiene la
cinta, y un rodillo motorizado se encarga de borrar aquellos datos que haga falta
eliminar. La cinta utilizada es un largo carrete de pelcula en blanco, que es arrastrado
por dentro del cabezal mediante un sistema tractor impulsado por un motor paso a
paso controlado tambin por el Propeller. Hay que aclarar que el micro controlador no
sabe cul es el contenido de la cinta: solamente cuenta con los datos que ve con la
cmara, respetando a rajatabla la idea de Turing.

El estado inicial de la Mquina est dado por el contenido inicial de la cinta y la


posicin del cabezal. Esos datos se ingresan a la mquina mediante una tarjeta
de memoria flash tipo SD, y el sistema se encarga de volcar los ceros y unos sobre la
cinta. Cuando todo est listo, la Mquina comienza a trabajar. Este aparato se puede
dotar de una serie de visualizadores de 7 segmentos que permiten que el operador
pueda ver en todo momento que es lo que est haciendo la mquina. Tambin posee
una pantalla LCD de 4 renglones en la que puede verse el estado actual, los prximos
estados o el sistema de mens destinado a la carga o grabacin de estados desde o en
la tarjeta de memoria.

Tcnicas para la Construccin de Maquinas de Turing.

a) Elimine las caractersticas de inicio de los estados iniciales de las mquinas,


excepto la de aquel donde iniciara la maquina compuesta.
b) Elimine las caractersticas de detencin de los estados de parada de todas la
maquinas e introduzca un nuevo estado de parada que no se encuentre en ninguno de
los diagramas que se combinan.

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

Ejemplificacin de dicha construccin

Una mquina de Turing es un autmata que se mueve sobre una secuencia lineal de
datos. En cada instante la mquina puede leer un solo dato de la secuencia
(generalmente un carcter) y realiza ciertas acciones en base a una tabla que tiene en
cuenta su "estado" actual (interno) y el ltimo dato ledo.

Entre las acciones est la posibilidad de escribir nuevos datos en la secuencia;


recorrer la secuencia en ambos sentidos y cambiar de "estado" dentro de un conjunto
finito de estados posibles.

S-ar putea să vă placă și