Top Banner
TRABAJO COLABORATIVO 3 LENGUAJES ESTRUCTURADOS POR FRASES PRESENTADO POR: EDER ANDRES GARCIA CRUZ COD: 14 296 440 JOSE LEONARDO CORDERO MORENO COD: 13.928.645 GUILLERMO ALONSO ARCHILA GUALDRON CÓD: 13721517 GRUPO: 301405_12 PRESENTADO A: CARLOS ALBERTO AMAYA TARAZONA UNAD
30

Trabajo Colaborativo 3

Feb 08, 2016

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Trabajo Colaborativo 3

TRABAJO COLABORATIVO 3

LENGUAJES ESTRUCTURADOS POR FRASES

PRESENTADO POR:

EDER ANDRES GARCIA CRUZ COD: 14 296 440

JOSE LEONARDO CORDERO MORENO COD: 13.928.645

GUILLERMO ALONSO ARCHILA GUALDRON CÓD: 13721517

GRUPO: 301405_12

PRESENTADO A:

CARLOS ALBERTO AMAYA TARAZONA

UNAD

MAYO DEL 2012

CAMPUS VIRTUAL

Page 2: Trabajo Colaborativo 3

INTRODUCCION

El concepto de maquina de turing fue implantado por Alan Turing en el trabajo on computables numbers, en 1936, en el cual se estudiaba la cuestión planteada por Hilbert referente a si las matemáticas son deducibles, por lo tanto turing diseño un modelo formal de computadora mas conocido como maquina de turing la cual es una maquina idealizada para el procesamiento de información, cuyas acciones están especificadas en términos matemáticos, este invento fue realizado con el fin de generar una herramienta para el estudio de la compatibilidad de funciones matemáticas.

Las máquinas de Turing, son máquinas formales o abstractas es decir sin cables ni componentes físicos y es precisamente de ellas que trataremos en el presente taller.

La importancia de dichas maquinas radica en que ellas definen el límite entre los problemas que puede resolver una máquina y los que No, dicho en otros términos marcan el límite entre lo computable y lo no computable; es por ello que es indispensable para nosotros como estudiantes: conocer La Historia, El Funcionamiento, Los Lenguajes Aceptados y todas las demás características inherentes a las máquinas de Turing Ya que los principios de funcionamiento de estas se aplican a todas las maquinas automatizadas reales que encontramos hoy en nuestro diario vivir.

Entonces el desarrollo del tercer trabajo colaborativo se genero en base al estudio y adelanto de la tercera unidad del curso denominada (Lenguajes Estructurados por Frases) en la cual tuvimos la oportunidad de reconocer las Maquinas de Turing su creador y a demás identificar su funcionamiento, apreciamos las diferencias entre un computador y una MT, también se identificaron los lenguajes aceptados por la maquina de turing, todo esto se realizo con la intencionalidad de dar solución a los ejercicios propuestos en la guía del trabajo colaborativo, plasmando en desarrollo de las actividades a continuación.

Page 3: Trabajo Colaborativo 3

OBJETIVOS

OBJETIVO GENERAL

Identificar la aplicación de los lenguajes Estructurados por frases con la intención de reconocer su aplicación y funcionamiento en los modelos computacionales que podemos desarrollar.

OBJETIVOS ESPECIFICOS

Reconocer la historia del surgimiento de las maquinas de turing. Analizar la función de las maquinas de Turing y los elementos que la

conforman identificando su funcionamiento. Identificar las principales diferencia entre una MT y un computador. Efectuar la verificación de los lenguajes aceptados por las MT.

Page 4: Trabajo Colaborativo 3

DESARROLLO DE LA ACTIVIDAD

1. Mediante un grafo explique la construcción modular de las Máquinas de Turing y describa cada uno de sus elementos.

Como objetivo principal cuando se desea realizar una creación modular de una maquina de turing, es lograr realizar maquinas complejas a partir de bloque elementales, a partir de maquinas mas pequeñas mediante la utilización de los diagramas de transición, Es claro que para la construcción de las maquinas de turing lo hacemos mediante los nombrados diagramas de transición y combinarlos de forma muy similar a lo que se hace en la formación de la unión y concatenación en el manejo de los autómatas finitos.

Los pasos que debemos tener en cuenta para la construcción de una maquina de turing son:

Eliminar las características de inicio de los estados iniciales de las maquinas, con excepción de la de donde iniciara la maquina compuesta.

Eliminar las características de detención de los estados de parada de todas la maquinas y luego introducir un nuevo estado de parada que nos se encuentre en ninguno de los diagramas que se combinan.

Para cada uno de los antiguos estados de parada P y cada X en Y.

Page 5: Trabajo Colaborativo 3

Entonces podemos decir que los diagramas compuestos para trabajar la construcción Modular de maquinar de turing son los que en cada uno de los bloques de construcción es representado por un nodo, a demás de flechas entre los referentes nodos indicando con esto las transiciones realizadas entre los bloques.

Existen casos en los cuales podemos efectuar la combinación de 2 Maquinas de Turing accediendo a compartir la misma cinta, siempre y cuando una primero termine su ejecución para que la otra empiece dicho proceso. Cuando comienza la ejecución de la segunda maquina de turing el contenido de la cinta es el formado por lo que ha dejado la primera maquina de turing, por lo tanto el cabezal de la segunda maquina estará situado al principio de la ejecución, es decir sobre la celda de la cinta en la cual allá terminado la primera maquina.

2.

Diseñe una MT que reconozca

Cambie un 0 por una x (explique qué pasa con la máquina).R//: se mueve hacia la derecha, pasando por encima de los ceros e Y, hasta llegar al primer 1

Cambie un 1 por una y (explique qué pasa con la máquina).R//: Se mueve hacia la izquierda por encima de todas la Y y de todos los ceros hasta llegar a una X y se repite el proceso hasta que solo queden Xs

y Ys.

Identifique en qué momento la máquina de Turing se detiene.Calcule la función

Page 6: Trabajo Colaborativo 3

Grafíquela e identifique sus elementos.

Page 7: Trabajo Colaborativo 3

3. Construya una MT que acepte el Lenguaje (represéntela

Se cambia la a por una x moviéndose a la derecha. (Explique qué pasa con la máquina).

Page 8: Trabajo Colaborativo 3

1. Se cambia la a por una X y se mueve hacia la derecha pasando por encima de todas las a’s e Y s, hasta llegar a la primera b, cambia la primera b por una Y, se mueve a la derecha pasando por encima de las bs y Zs y luego encuentra la primera c y la cambia por Z y se mueve a la izquierda.

Luego se mueve a la izquierda pasando por encima de las bs (bes) (explique qué pasa con la máquina).

2. Luego se mueva a la izquierda pasando por encima de bs, Y s, as, hasta encontrar la X la reemplaza por una X y repite el proceso anterior, cuando la máquina reemplaza la cadena X, Y y Zs reconoce la cadena vacía y busca el estado de aceptación.

La función de transición es la siguiente,

Sea T = {q3}

(q0, (a,B)) = (q0, (a,X), (D,D))(q0, (b,B)) = (q1, (b,B), (N,D))(q1, (b,X)) = (q1, (b,X), (D, I))(q1, (c,B)) = (q2, (c,B), (N,D))(q2, (c,X)) = (q2, (c,X), (D,D))(q2, (B,B)) = (q3, (B,B), (D,D))

4. En el siguiente diseño de máquina de Turing (MT), identifique cuales operaciones realiza y que son válidas acordes a la forma de “operar” o “trabajar” una MT. : Sea ordenado en la descripción acorde a los pasos, posiciones y operaciones que hace la MT.

• Sea objetivo, crítico. La explicación es de la interpretación suya o la del grupo, que sea objetiva, crítica, conceptual. Si hace referencia a un texto o aun autor y no copia las fuentes o referencias de página, (formato APA) no es válido el punto.

Page 9: Trabajo Colaborativo 3

5. Cite un ejemplo real (aplicado a algún problema computacional válido, problema de cálculo, problema inmerso en un ejercicio de la vida diaria ó problema que se pueda representar mediante un algoritmo) que lo lleve a comprender o a asociar PRINCIPIO DE CHURCH-TURING:. (Describa su ejemplo de forma concisa y aplicada).

Tenga cuidado con lo que copia de Internet. La explicación debe ser precisa, clara y objetiva, de su autoría. Si cita algún documento de la web, se verificarán las referencias y pié de página. Documento que no tenga estas referencias, será material no evaluado.

6. Construir una MT que reconozca L = 01+ = 10* * Para la Máquina M = (Q, Σ, ┌ , q, T , B , δ) 0 Q = { q, q} x {0,1,B} 01Estado inicial [q, B] 0 Estado final [q, B] 1La función de transición δ está dada por: δ ([q, B] , 0 ) = ([q, 0], 0 , D) 0 1δ ([q, 0] , 1 ) = ([q, 0], 1 , D) 0 1δ ([q, 0] , B ) = ([q, B], B , D) 0 1δ ([q, B] , 1 ) = ([q, 1], 1 , D) 0 1δ ([q, 1] , 0 ) = ([q, 1], 0 , D) 11δ ([q, 1] , B ) = ([q, B], B , D)11

7. Haciendo uso de un simulador, monte los tres ejercicios iniciales (2, 3 ,6) de este trabajo en un simulador y recorra la máquina, verificando: • su estado inicial, • su estado final • estado de parada • estado de inicio • cadenas aceptadas.

Page 10: Trabajo Colaborativo 3

Tenga en cuenta que la construcción de las máquinas (los diagramas de Moore) solo son permitidos si son generados por un simulador.

En este ejercicio debe incluir los archivos generados por el simulador.

Ejercicio elegido el n° 2

2. UNA MT QUE RECONOZCA

La siguiente máquina de Turing acepta el lenguaje {0n1n: n ≥ 1}.Inicialmente, sobre la cinta se escribe una secuencia finita de ceros y unos, precedida y seguida por un número finito de espacios en blanco. Alternativamente, la máquina de Turing cambiara primero un 0 por una x y luego un 1 por una y, hasta que se hayan cambiado todos los ceros y unos. La máquina de Turing repite los pasos que se describen a continuación más detalladamente, y comenzando por el extremo izquierdo de la entrada. Cambia un 0 por una x y se mueve hacia la derecha, pasando por encima de todos los ceros e y que encuentre, hasta llegar a un 1. Cambia el 1 por una Y y se mueve hacia la izquierda, pasando por encima de todas las Y y de todos los ceros que vaya encontrando, hasta llegar a una x. Entonces, busca el primer 0 que se encuentre inmediatamente a su derecha y, si lo encuentra, lo sustituye por una x y repite el proceso igual que antes, cambiando un 1 por una Y. Si la entrada no es de la forma 0* 1*, la máquina de Turing no conseguirá finalmente realizar ningún movimiento, y dejara de operar sin aceptar. Sin embargo, si termina cambiando todos los ceros por x en la misma pasada en la que cambia el ultimo 1 por una y, entonces determina que la cadena de entrada era de la forma 0n1n y acepta. La máquina de Turing que realiza la serie de movimientos es la siguiente:M = ({q0; q1q2; q3; q4} ; {0; 1} ; {0; 1;X; Y;B},, q0, B; {q4})

Donde está representada mediante la siguiente tabla

Estado 0 1 X Y Bq0 (q1;X;D)D lo

remplazamos por (R)

- - (q3; Y;D) -

q1 (q1; 0;D) (q2; Y; 1) - (q1; Y;D) -q2 (q2; 0; I) I lo

remplazamos por S

(q0;X;D) (q2; Y; I) -

q3 - (q3; Y;D) (q4;B;D)q4 - - - - -

Una máquina de Turing para {0n1n}

Page 11: Trabajo Colaborativo 3

Mientras M realiza los pasos anteriores, la porción de la cinta que ya ha sido recorrida por la cabeza de la cinta corresponderá siempre a una secuencia de símbolos descrita mediante la expresión regular X* 0* Y* 1*. Es decir, habrá algunos ceros que ya han sido sustituidos por X, seguidos de algunos ceros que todavía no han sido sustituidos. Luego, se encontraran algunos unos ya reemplazados por Y, seguidos de unos que aún no han sido reemplazados.A continuación, puede que haya algunos ceros o unos. El estado q0 es el estado inicial, y M entra de nuevo en q0 cada vez que vuelve a señalar al 0 que quede más a la izquierda. Si M se encuentra en el estado q0 y la cabeza señala a un 0, la regla del extremo superior izquierdo de la figura anterior indica que M debe pasar por el estado q1, reemplazar el 0 por una X, y moverse hacia la derecha. Una vez en el estado q1, M sigue moviéndose hacia la derecha, pasando por encima de todos los ceros y todas las Y que encuentre, mientras permanece en el estado q1. Si M encuentra una X o una B, deja de operar. Sin embargo, si M encuentra un 1 cuando está en el estado q1, sustituye dicho 1 por una Y, pasa al estado q2, y comienza a moverse hacia la izquierda.

En el estado q2, M se mueve hacia la izquierda, pasando por encima de los ceros y las Y que encuentre, mientras permanece en el estado q2. Cuando M alcanza la X que se encuentra más a la derecha, que determina cual es el extremo derecho del bloque de ceros que ya han sido sustituidos por X, M vuelve al estado q0 y se mueve hacia la derecha. Hay dos casos posibles:1. Si M encuentra ahora un 0, repite el ciclo de sustituciones que acabamos de escribir.

2. Si M encuentra una Y, significa que ya ha cambiado todos los ceros por X. Si había cambiado todos los unos por Y, entonces la entrada era de la forma 0n1n, y M aceptaría. Por tanto, M pasa al estado q3 y comienza a moverse hacia la derecha, pasando por encima de las Y. Si el primer símbolo distinto de una Y que encuentra M es un espacio en blanco, entonces efectivamente había en la entrada el mismo número de ceros que de unos, de forma que M pasa al estado q4 y acepta. Por otra parte, si M encontrara un 1, significaría que hay demasiados unos, así que M dejaría de operar sin aceptar. Si encontrara un 0, significaría que la entrada era incorrecta, y M también se detendría.

A continuación emplearemos la maquina M anterior para comprobar si la cadena 0011 es aceptada por la máquina de Turing. Comenzamos con M en el estado q0, y señalando al primer 0, con lo cual la configuración inicial es q00011, presentamos a continuación la secuencia completa de movimientos.

de M es:

Page 12: Trabajo Colaborativo 3

Aquí se presenta otro ejemplo, en el que se examina que hace M con la entrada 0010, la cual es una cadena que no pertenece al lenguaje aceptado por la máquina.

El comportamiento de M con 0010 recuerda su comportamiento con 0011, hasta que alcanza la conjuración XXY0q1B. Sin embargo, en el estado q1, M no puede realizar ningún movimiento si el símbolo de la entrada al que señala es B. Por tanto, M deja de operar sin aceptar esta entrada.La simbología que se usa normalmente en las máquinas de Turing es similar a la utilizada en otros tipos de autómatas.

Las letras minúsculas iniciales del alfabeto se utilizan para los símbolos de entrada.

Las letras mayúsculas, normalmente las de la zona final del alfabeto, se utiliza como símbolos de la cinta que pueden o no formar parte del conjunto de símbolos de entrada. Sin embargo, generalmente se usa B para representar el símbolo correspondiente al espacio en blanco.

Las letras minúsculas del final del alfabeto se utilizan para designar cadenas formadas por símbolos de entrada.

Las letras griegas representan cadenas de símbolos de cinta.Letras como q, p, u otras próximas, representan estados.

Page 13: Trabajo Colaborativo 3

OTRA SOLUCION PLANTEADA:

Diseñe una MT que reconozca {0n 1n : n ≥ 1 }

Cambie un 0 por una X (explique qué pasa con la máquina).

El cabezal se mueve hacia la derecha, pasando por encima de los ceros (0) e Y, hasta llegar al primer 1.

Cambie un 1 por una Y (explique qué pasa con la máquina).

El cabezal se mueve hacia la izquierda por encima de todos los Y, y de todos los ceros hasta llegar a una X y se repite el proceso hasta que solo queden X’s y Y’s.

Identifique en qué momento la máquina de Turing se detiene.

La MT planteada, se detiene porque queda en el estado de aceptación q4, después de hacer paso por el símbolo “B” en blanco y la cadena es reconocida.

Calcule la función δ

Page 14: Trabajo Colaborativo 3

(q0, 0) = (q1,X,D)

(q1, 0) = (q1, 0,D)

(q1,X) = (q1,X,D)

(q1, 1) = (q2, Y, I)

(q2, Y ) = (q2, Y, I)

(q2, 0) = (q2, 0, I)

(q2,X) = (q0,X,D)

(q0, Y ) = (q3, Y,D)

(q3, Y ) = (q3, Y,D)

(q3,B) = (q4,B,D)

Grafíquela e identifique sus elementos

Page 15: Trabajo Colaborativo 3
Page 16: Trabajo Colaborativo 3

Identifique la función de transición

Sea T = {q4} Sea w = 1100 q00011 ├ Xq111 ├ X0q111 ├ Xq20Y 1 ├ q2X0Y 1 ├ Xq00Y 1 ├ XXq1Y 1 ├ XXY q11 ├ XXq2Y Y ├ Xq2XY Y ├ XXq0Y Y ├ XXY q3Y ├ XXY Y q3B ├ XXY Y Bq4B La Máquina de Turing se detiene porque quedó en un estado de

aceptación y la cadena es reconocida

8. Una manera más simple de determinar la indecibilidad es utilizando el método de reducción, el cual está implícito en nuestra manera de pensar a la hora de solucionar ciertos problemas: dado un problema P1, este se reduce a solucionar P2. Es decir, si solucionamos P2, tenemos solucionado P1.

Formule un problema típico que aplique a su vida cotidiana, personal, académica o laboral que mediante el método de reducción solucione esta “indecibilidad”. La formulación implica: • Descripción del problema • Actores que intervienen • Justificación porque es indecidible • Una posible solución (de reducción)

Page 17: Trabajo Colaborativo 3

• Una comparativa con el autómata y la descripción de sus componentes.

Ejemplo:

El jefe al fin se ha decidido a dar las vacaciones, pero estamos a 30 de julio y queremos ir con la familia, que resulta que está en Australia. El problema entonces se reduce a encontrar un billete de avión a este destino.

En términos de máquinas de turing, dado un lenguaje L1, que define un problema, su decisión se produce a otro lenguaje L2 que es decidible. Para ello se debe encontrar un algoritmo que convirtieran una cadena ’ de L1 en otra cadena ’ de L2 (L2 puede tener más cadenas aceptables, pero nos interesan las que se puedan obtener por el algoritmo desde L1), decidiéndose entonces si ’ pertenece a L2.

Para demostrar la indecidibilidad de un lenguaje L, se va a utilizar la reducción ante dos situaciones distintas:

Que P1 sea RE, el problema se reduce a otro P2 que también es RE.

Que P1 no sea RE, el problema se reduce a otro P2 que tampoco es RE.

Demostrar que un lenguaje L2 es recursivamente enumerable / noRE, se hará por reducción al absurdo. Para ello partimos de un lenguaje L1 del que conoceremos de antemano su no decibilidad (normalmente se utilizaran Lu o Ld, aunque puede ser cualquier otro del que haya demostrado su indecibilidad). Tenemos, en las dos situaciones antes descritas:

Que haya que demostrar que L2 es RE. Para ello partimos de la certeza que L1

es RE (por ejemplo Lu) y lo reducimos a L2. Se supondrá que este último es decidible, es decir, que se puede encontrar una MT que, siendo la entrada una cadena de L1, esta se puede convertir en una cadena ’ de L2, y decidir si esta ultima pertenece a L2 o no. Si se encuentra al algoritmo de conversión, se habrá encontrado una MT que es capaz de reducir L1 a L2 y por tanto, la manera de decidir L1. Pero esto es una contradicción, pues sabemos de antemano que L1 es RE, por lo que, forzosamente, L2 no puede ser decidible. Se llega a la conclusión de que L2 también es RE.

Que haya que demostrar que L2 no es RE. Para ello partimos de la certeza de que L1 no es RE (por ejemplo Ld) y lo reducimos a L2. Se supondrá que este último es RE, es decir, que se puede encontrar una MT que, siendo la entrada una cadena de L1, esta se puede convertir en una cadena ’ de L2, y aceptarla si esta ultima pertenece a L2. Si se encuentra un algoritmo de conversión, se habrá encontrado una MT que es capaz de reducir L1 a L2 y por lo tanto la manera de aceptar L1. Pero esto es una contradicción, pues sabemos de antemano que L1 no es RE (ninguna MT puede aceptarlo), por lo que, forzosamente, L2 no puede ser RE. Se llega a la conclusión de que L2 tampoco es RE

Page 18: Trabajo Colaborativo 3

EJEMPLO 2:P1- Hambre en el mundo.

P2. Hay que redistribuir parte de la riqueza.

El problema del hambre en el mundo se reduce a redistribuir riqueza.

P2 es un problema mucho mas general, pues además de solucionar el hambre también solucionaría otros problemas.

Este método no hace referencia a la manera en la que se soluciona P1 o P2, sino que determina como la solución de P2 conduce a solucionar P1. También se puede ver que P2es un problema mas general que P1. De hecho este método no funcionaria en el sentido inverso: siempre se reduce a un problema a otro mas general.

En términos de máquina de Turing, dado un lenguaje L1, que define un problema, su decisión se reduce a otro lenguaje L2 que es decidible. Para ello se debe encontrar una algoritmo que convierta una cadena w de L1 en otra cadena w´ de L2 (L2 puede tener más cadenas aceptables, pero nos interesan las que se pueden obtener por el algoritmo desde L1), decidiéndose entonces si w´ pertenece a L2.

Para demostrar la indecibilidad de un lenguaje L, se va a utilizar la reducción ante dos situaciones:

Que P1 sea RE, el problema se reduce a otro P2 que también es RE.

Que P1 no sea RE, el problema se reduca a otro P2 que otro también es RE.

Demostrar que un lenguaje L2 es recursivamente enumerable noRE, hara por reducción al absurdo. Para ello partimos de un lenguaje L1 del que reconocemos de antemano su no decibilidad (normalmente se utiliza Lu o Ld, aunque puede ser cualquier otro del que se haya demostrado su indecibilidad). Tenemos en las dos situaciones antes descritas:

Que hata que demostrar que L2 no es RE. Para ello partimos de la certeza de que L1 no es RE y lo reducimos a L2, se supondrá que este ultimo es RE, es

Page 19: Trabajo Colaborativo 3

decir que se puede encontrar una MT que siendo la entrada una cadena w de L1, esta se puede convertir en cadena w´ de L2, y aceptarla si esta ultima pertenece a L2. Si se encuentra un algoritmo de conversión, se habrá encontrado una MT que es capaz de reducir L1 a L2, y por tanto la manera de aceptar L1. Pero esto es una contradicción pues sabemos de antemano que L1 no es RE (niguna MT puede aceptarlo), por lo que forzosamente, L2 no puede ser RE se llega a la conclusión que L2 tampoco es RE.

9. Diseñar una MT que acepte las palabras en {a, b} que terminen con a.

a/a,Ra/a,R/,L/,L/,R/,Ra/a,Ra/a,Rb/b,Sb/b,Sb/b,Rb/b,Rq0q0q1q1q2q2

haha

• Plásmela en el simulador (debe entregar el archivo generado por el simulador), Las imágenes capturadas van inmersas en el desarrollo del trabajo • Plasme el diagrama de Moore. • Identifique los elementos de la MT para este ejercicio explicando su significado. • Identifique la función de transición. • Ejecute el recorrido con el Run Test para una cadena válida.

10. Considere la máquina de Turing de la figura e indique que tipo de cadenas decide el lenguaje que acepta.

• Plásmela en el simulador. Las imágenes capturadas van inmersas en el desarrollo del trabajo.

Page 20: Trabajo Colaborativo 3

• Ejecute el RunTest a la cadena aceptada (muéstrela en la captura de imagen para el trabajo) • Plasme el diagrama de Moore. • Identifique la función de transición. • Ejecute el recorrido con el Run Test para una cadena válida.

11. Una de las variantes de la máquina de Turing es la “Máquina de Turing Multipista”.

Describa su funcionamiento y su característica principal mediante un ejemplo. Puede buscarlo en la web, pero debe justificarlo, explicarlo y referenciar las fuentes origen de donde extrajo la información 8Normas APA Rev 5).

Una máquina de Turing multipista es un tipo específico de Multi-cinta de máquina de Turing. En un nivel n-cinta de la máquina de Turing, n cabezas se mueven de forma independiente a lo largo de las pistas n. En una máquina de Turing n-track, una cabeza de lectura y escritura en todas las pistas de manera simultánea. Una posición de la cinta en una máquina de Turing n-track contiene n símbolos del alfabeto de la cinta. Es equivalente a la norma máquina de Turing y por lo tanto acepta precisamente los idiomas recursivamente enumerable.Una máquina de Turing multicinta se puede definir formalmente como una 6-tupla, dondedonde

Page 21: Trabajo Colaborativo 3

Esto demostrará que una máquina de Turing de dos vías es equivalente a un estándar de la máquina de Turing. Esto se puede generalizar a una máquina de Turing n-track. Sea L un lenguaje recursivamente enumerable. Sea M = es la norma máquina de Turing que acepta L. Sea M 'es una máquina de Turing de dos vías. Para probar que M = M 'se debe demostrar que el MM y M. M'Si todos, pero la primera pista se tiene en cuenta que M y M 'son claramente equivalentes.El alfabeto de la cinta de una máquina de Turing de una sola pista equivalente a una máquina de dos vías de Turing consta de un par ordenado. El símbolo de entrada una de Turing "máquina M se puede identificar como un par ordenado [x, y] de la máquina de Turing M. La máquina de Turing de una sola pista es la siguiente:M = con la función de transición

Esta máquina también acepta L.

12. La máquina de Turing con varias cintas es una generalización de una MT con una cinta y es importante porque con ella se simula de manera directa el comportamiento de un computador.

Estudie el funcionamiento y comportamiento de esta variante de MT y defínala como un lenguaje formal.

Defina como se representa y explique la función de transición para cada cinta.

Generalice la función de transición para "k" cintas

Justifique sus apreciaciones.

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.

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

Page 22: Trabajo Colaborativo 3

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.

Page 23: Trabajo Colaborativo 3

CONCLUSION

Las máquinas de Turing son la base de toda la teoría de la computación, y por ello sus principios funcionales, aplican tanto a la más simple de las calculadoras como a la más avanzada de las computadoras que hoy en día conocemos.

Page 24: Trabajo Colaborativo 3

REFERENCIAS BIBLIOGRAFICAS

Módulo Académico: Autómatas y Lenguajes Formales. QUIROGA ROJAS, Edgar Alberto. Universidad Nacional Abierta y a Distancia “UNAD”. 2008

http://odariasm.blogspot.com/2011_04_01_archive.html 2002 Referencia de la Biblioteca UPV Problem solving in autómata,

languages and complexity Ding-Zhu Du, Ker-I Ko. John Wiley and Sons 2001 Referencia de la Biblioteca UPV. Apuntes sobre la teoría de

autómatas y lenguajes formales Pedro García, Tomás Pérez, José Ruiz, Encarna Segarra, José Sempere, Manuel Vázquez de Parga. Universidad Politécnica de Valencia (Libro Apunte Ref. 846),

1996 Referencia de la Biblioteca UPV. Hopcroft John E., Motwani Rajeev, Ullman Jeffrey, “Introducción a la Teoría de Autómatas, Lenguajes y Computación”, Addison Wesley.

Material de apoyo Unidad 2.