Sunteți pe pagina 1din 27

AUTOMATAS Y LENGUAJES FORMALES

INTRODUCCION

Al observar la historia y mirar la evolucin de la informtica encontramos un tema muy


importante y es la mquina Turng y como esta le permitieron al hombre realizar
grandes proezas como descifrar el cdigo variante originado por otra mquina llamada
enigma desarrollada por los alemanes para encriptar las comunicaciones esto lo
podemos observar en la historia acerca del matemtico Alan Turng quien en la
segunda guerra mundial la diseo para descifrar la comunicaciones del ejercito
enemigo y poder premeditar los ataques, ahora nosotros gozamos de una diversidad
tecnolgica sin saber cmo se hace, es as que en este trabajo desarrollaremos
ejercicios propuestos para analizar el comportamiento de las mquinas de Turng y
como su programacin tan bsica permite analizar y conocer lenguajes asociados a
funciones especficas que se pueden desarrollar en este tipo de mquinas.

OBJETIVOS
Realizar los ejercicios propuestos aplicando la temtica de autmatas correspondiente
a esta unidad mquinas de Turng.

DESARROLLO PRCTICO

Ejercicio 1
Disee Una MT que se comporte como transductor que reconozca el lenguaje L ={a}*
(incluye la cadena ). La transduccin (salida) debe ser que por cada smbolo que entre, se
duplique: Ejemplo: para la cadena (aa) la salida ser (aaaa). El alfabeto de la cinta debe ser
diferente al alfabeto de entrada.

Identifique los componentes de la Mquina de Turng (descrbala).


MT es un sptuplo (K, , ,,s) en donde:
K = es el conjunto de estados tal que h K ;

K= { q 0, q 1,q 2,q 3 } Estados de la MT

= es el alfabeto de entrada, donde ;

={ a } Alfabeto de entrada
= es el alfabeto de la cinta, donde y ;
{ , a , x } Alfabeto de lacinta
sK es el estado inicial;

q 0 es el estadoinicial

T K es el estado final;

q 3 es el estado final

B es el smbolo blanco (el smbolo B no puede hacer parte de ) aparece


en
Todas las casillas excepto en aquellas que contienen los smbolos de entrada.

: (K {h} x ) K x ( U { L,R } ) la funcin de transicin donde L es un


movimiento a la izquierda y R es el movimiento ala derecha

(q0,1) = (q1, X, R)
(q1,0) = (q1, x, R)
(q1,X) = (q2, X, R)
(q2,1) = (q2, x, L)
(q2,x) = (q2, x, L)
(q2,x) = (q2, X, L)
(q2,0) = (q2, X, L)
(q2,x) = (q3, x, L)

Llega al primer estado q0 lee la cinta valida el primer carcter de la cadena que esa pues es
el requerido para efectuar la transicin lo cambia por un carcter X y mueve el cabezal a la
izquierda y cambia al estado q1

En el estado q1 lee la cinta valida cambia a por X y mueve el cabezal a la derecha

Lee la cinta valida el carcter X lo deja tal cual y avanza a la derecha

En el estado q2 lee la cinta valida el carater a lo cambia por una x y avanza a la izquierda

En el estado q2 devuelve el cabezal hasta un posicin de vaco en la cinta

Al llegar a esta posicin el cabezal valido cambia el carcter vaco por una x y pasa al
estado q3 finalizando la funcin.

Identifique una cadena que no sea vlida y justifquela porque

X no es el carcter requerido en la cinta para iniciar la funcin de la maquina

Cuando llega al estado halt o de aceptacin que se cumple la condicin


establecida o la funcin para la cual fue diseada.
Ejecute el RunTest a una cadena aceptada que tenga la menos cinco smbolos

Lo que acaba de disear es una MUT o una MT. Justifique su respuesta.


Es una MT pues solo computa una determinada funcin parcial de carcter definido o
programa o algoritmo para el cual se dise y es duplicar los elementos de una cadena en
nuestro ejercicio.

Ejercicio 2
Disee Una MT que reconozca el lenguaje L ={1}* (incluye la cadena ). Y que en la cinta
escriba el doble de la cadena que ha reconocida cuando haya terminado el recorrido. El
alfabeto de la cinta debe ser diferente al alfabeto de entrada

Identifique los componentes de la Mquina de Turng (descrbala).


MT es un sptuplo (K, , ,,s) en donde:
K = es el conjunto de estados tal que h K ;

K= { q 0, q 1,q 2,q 3 } Estados de la MT

= es el alfabeto de entrada, donde ;

={ 1 } Alfabeto de entrada
= es el alfabeto de la cinta, donde y ;
{ ,1, x } Alfabeto de la cinta
sK es el estado inicial;

q 0 es el estadoinicial

T K es el estado final;

q 3 es el estado final

B es el smbolo blanco (el smbolo B no puede hacer parte de ) aparece


en
Todas las casillas excepto en aquellas que contienen los smbolos de entrada.

: (K {h} x ) K x ( U { L,R } ) la funcin de transicin donde L es un


movimiento a la izquierda y R es el movimiento ala derecha

(q0,a) = (q1, X, R)
(q1,0) = (q1, x, R)
(q1,X) = (q2, X, R)
(q2,a) = (q2, x, L)
(q2,x) = (q2, x, L)
(q2,x) = (q2, X, L)
(q2,0) = (q2, X, L)
(q2,x) = (q3, x, L)

Recorra la mquina con al menos una cadena vlida explicando lo sucedido tanto en la cinta
como en la secuencia de entrada. Utilizando la cadena 11
Llega al primer estado q0 lee la cinta valida el primer carcter de la cadena que es 1 pues es
el requerido para efectuar la transicin lo cambia por un carcter X y mueve el cabezal a la
izquierda y cambia al estado q1

En el estado q1 lee la cinta valida cambia a por X y mueve el cabezal a la derecha

Lee la cinta valida el carcter X lo deja tal cual y avanza a la derecha

En el estado q2 lee la cinta valida el carcter 1 a lo cambia por una x y avanza a la derecha

En el estado q2 devuelve el cabezal hasta una posicin de vaco en la cinta

Finaliza en el estado q3 dobla los caracteres ingresados mientras que los


reemplaza por otros

Identifique una cadena que no sea vlida y justifquela porque- la siguiente es


una cadena no valida pues no contiene el carcter inicial que le permite iniciar
la funcin.

Identifique en que momento la mquina se detiene


Cuando llega al estado halt o de aceptacin que se cumple la condicin
establecida o la funcin para la cual fue diseada.

cadena aceptada que tenga la menos cinco smbolos

Se comporta como transductor. Ya que reconoce y toma el contenido de la cinta y lo duplica


adems lo cambia Modifica el contenido de la cinta realizando cierta funcin.

Ejercicio3
Disee Una MT que reconozca el lenguaje L ={1}* (incluye la cadena ). Y que al final del
recorrido de la cadena aceptada, la cinta quede vaca solo con los caracteres blanco.

Identifique los componentes de la Mquina de Turng (descrbala).


MT es un sptuplo (K, , ,,s) en donde:
K = es el conjunto de estados tal que h K ;

K= { q 0, q 1,q 3 } Estados de la MT

= es el alfabeto de entrada, donde ;

={ 1 } Alfabeto de entrada
= es el alfabeto de la cinta, donde y ;
{ ,1 } Alfabeto de lacinta

sK es el estado inicial;

q 0 es el estadoinicial

T K es el estado final;

q 3 es el estado final

B es el smbolo blanco (el smbolo B no puede hacer parte de ) aparece


en
Todas las casillas excepto en aquellas que contienen los smbolos de entrada.

: (K {h} x ) K x ( U { L,R } ) la funcin de transicin donde L es un


movimiento a la izquierda y R es el movimiento ala derecha

Recorra la mquina con al menos una cadena vlida explicando lo sucedido tanto en la
cinta como en la secuencia de entrada
Recorriendo la maquina con la cadena valida 111
Llega al primer estado q0 lee la cinta valida el primer carcter de la cadena que es 1 pues es
el requerido para efectuar la transicin lo cambia por un carcter vacio y mueve el cabezal a
la derecha y cambia al estado q1

En el estado q1 lee la cinta valida cambia a 1 por y mueve el cabezal a la derecha pero no
cambia de estado permanece en q1

En el estado q1 vuelve lee la cinta valida cambia a 1 por y mueve el cabezal a la derecha
pero no cambia de estado permanece en q1

En el estado q1 vuelve lee la cinta valida y mueve el cabezal a la derecha

Llega al estado halt que es q2 y la cinta vacia

Identifique una cadena que no sea vlida y justifquela porque


Fue diseada para el lenguaje1
La mquina de Turing anterior, no acepta la cadena 00, esta es rechazada ya que el estado
de aceptacin de la maquina se da cuando la cadena contiene un smbolo 1 en la cadena

Ejecutando el RunTest a una cadena aceptada que tenga la menos cinco smbolos

Identifique en que momento la mquina se detiene


Cuando llega al estado halt o de aceptacin que se cumple la condicin
establecida o la funcin para la cual fue diseada.

Ejercicio 4 mquinas de Turng

La siguiente Mquina de Turing hace que se comporte como calculadora


computacional de una funcin especfica:

1. Identifique la funcin (escrbala)


Para una cadena valida en la cinta

Tenemos la funcin de salida:

( q 0,o )=(q 0,0, R)

( q 0,1 )=( q 1,0, R)


( q 1, )=(q 2, 0 , L)

( q 2, 0 )=(q 3,1 , R)
( q 3,1 ) =( q 3, , R)

La funcin solo permite ingresar un nico 1 en una cadena, Cadena de ceros


que solo pueden contener un 1 en toda su extensin al final invierte el ultimo
digito en un 1
2. Identifique los componentes de la Mquina de Turing (descrbala).
MT es un sptuplo (K, , ,,s) en donde:
K = es el conjunto de estados tal que h K ;

K= { q 0, q 1,q 3,q 4 } Estados de la MT


= es el alfabeto de entrada, donde ;

={ 1, 0 } Alfabeto de entrada
= es el alfabeto de la cinta, donde y ;
{ , 0,1 } Alfabeto de lacinta
sK es el estado inicial;

q 0 es el estadoinicial

T K es el estado final;

q 3 es el estado final

B es el smbolo blanco (el smbolo B no puede hacer parte de ) aparece


en
Todas las casillas excepto en aquellas que contienen los smbolos de entrada.

: (K {h} x ) K x ( U { L,R } ) la funcin de transicin donde L es un


movimiento a la izquierda y R es el movimiento ala derecha
2. .Recorra la mquina con al menos una cadena vlida explicando lo
sucedido tanto en la cinta como en la secuencia de entrada. (es decir
compruebe la funcin con una cadena vlida explicando lo encontrado).
Adems resuelva En dnde se escribe lo procesado o funcin o la
salida?
Introducimos una cadena de 5 digitos valida ej: 01000

El cabezal arranca la lectura en el primero digito de la cadena lee cero pone


cero y avanza a la derecha al segundo digito de la cadena pero sigue en el
estado q0

En el segundo digito de la cadena lee 1 deber cambiarlo por un cero avanzar


a la derecha y pasar al siguiente estado q1

En el estado q1 lee la cinta en cero avanza el cabezal a la derecha pero no


cambia de estado pues la condicin para el siguiente estado es que no haya
nada en la cinta

En el estado q1 lee la cinta en cero avanza el cabezal a la derecha pero no


cambia de estado pues la condicin para el siguiente estado es que no haya
nada en la cinta

Lee la cinta detecta que no hay nada pues ya ley todos los elementos de la
cadena y pasa al estado q2 el cabezal avanza a la izquierda y cambia el ultimo
digito de la cadena por un 1 y avanza al estado q3 y entra halt

Lo procesado o la funcin salida se escribe sobre la cinta el ltimo dato de la


cadena siempre va ser un 1 (la cadena conserva la cantidad de elementos pero
el ultimo digito ser 1) la funcin solo permite ingresar un nico 1 en una
cadena
4. Identifique una cadena que no sea vlida y justifquela porque
La mquina de Turing anterior, no acepta la cadena 000, esta es rechazada
ya que el estado de aceptacin de la maquina se da cuando la cadena
contiene un smbolo 1 en la cadena y al finalizar la funcin invierte el ultimo
digito de la cinta por un 1.

El cabezal lee y avanza a la derecha pero no cambia de estado

Llega al final de la cinta y no cambia de estado pues se requiere 1 para que se


cambie de estado

5. Ejecute el RunTest a una cadena de entrada aceptada que tenga al menos


cinco smbolos

6. Identifique en que momento la mquina se detiene


Cuando llega al estado halt o de aceptacin que se cumple la condicin
establecida o la funcin para la cual fue diseada.
7. Visualice las salidas para tres cadenas (es decir mostrar seis cadenas
ordenadas) cadenas vlidas en el simulador JFLAP

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