Maquina de turing y resolubilidad e Irresolubilidad
1. Máquina de Turing y
Resolubilidad e
Irresolubilidad
Luis Alberto Morel 16-0585
José Armado Almanzar 16-0495
03/03/2017 Teorías autómatas y Lenguajes formales, Universidad Iberoamericana.
2. 2
Temas a tratar
Máquina de Turing no
determinista
Ejercicios sobre la Máquina de
Turing
Problema de la parada
Problema de correspondencia
POST
Gramática Libre de contexto
Alan Turing y sus aportes a la
teoría computacional
¿Qué es una máquina de Turing?
Lenguaje formal de la máquina de
Turing
Máquina de Turing Multicinta
Máquina de Turing Determinista
3. Objetivos
• Estudiar y analizar las Máquinas de Turing y sus
propiedades.
• Reconocer la importancia de la Máquina de Turing
en el contexto de la solución de problemas
computacionales, lógicos y matemáticos.
• Desarrollar máquinas a través de bloques
elementales y a partir de maquinas más pequeñas,
mediante diagramas de transiciones.
3
4. 4
Términos comúnmente utilizaremos
Los computables o Recursivos son aquellos algoritmo siempre existe una
solución.
Los semicomputables son aquellos para los cuales hay un algoritmo
que es capaz encontrar una solución si es que existe, pero ningún
algoritmo que determine cuando la solución no existe (en cuyo caso el
algoritmo para encontrar la solución entraría a un bucle infinito).
Los incomputables son aquellos para los cuales no hay ningún
algoritmo que los pueda resolver.
Irresolubilidad, Teorías, teoremas o algoritmos que no pueden plantearse
una solución mientras que Resolubilidad son aquellos que si pueden ser
planteados una solución y resolverse.
6. http://blogs.elpais.com/turing/2012/07/turing-el-nacimiento-del-hombre-1912-la-maquina-1936-y-el-test-1950.html
6
Cont.
En 1936, en un artículo titulado “Los números computables, con una
aplicación al Entscheidungsproblem”. Turing demostró que dicha
máquina era capaz de resolver cualquier problema matemático que
pudiera representarse mediante un algoritmo.
Entre otros aportes de Alan Turing a la computación:
El Test de Turing (1950) – Inteligencia Artificial
Enigma
Tesis Church-Turing
The Bombe (Segunda Guerra Mundial)
7. http://formatalent.com/que-es-una-maquina-de-turing-y-como-funciona/
7
¿Qué es una máquina de Turing?
La llamada “Máquina de Turing” es en realidad un modelo matemático
consistente en un autómata que es capaz de “implementar cualquier
problema matemático expresado a través de un algoritmo”.
Una Máquina de Turing consta:
Cinta infinita dividida en espacios o celdas.
Un cabezal capaz de leer y escribir símbolos en
la cinta.
Un registro de estado.
Una tabla finita de instrucciones o tabla de
acción.
10. 10
Ejemplo #2
Diseñar una Máquina de Turing que calcule la paridad de un número binario. Es
decir, si el número de 1’s de la cadena es par, se añade un 0 al final, y si es impar,
se añade un 1.
14. Your Footer Here 14
Ejercicio #2
Diseñar una maquina de Turing que cumpla las
condiciones descrita debajo:
15. 15
Ejercicio #3
Diseñar una Máquina de Turing que sea un contador unario de caracteres del
lenguaje con alfabeto Σ = {a,b,c}. Es decir, se deben devolver tantos 1’s como
caracteres haya en la palabra de entrada.
16. https://es.wikipedia.org/wiki/M%C3%A1quina_de_Turing 16
Máquina de Turing multicinta
Una MT con más de una cinta consiste de un
control finito con k cabezales lectores/escritores y k
cintas. Cada cinta es infinita en ambos sentidos.
La MT define su movimiento dependiendo del
símbolo que está leyendo cada uno de sus
cabezales, da reglas de sustitución para cada uno de
los símbolos y dirección de movimiento para cada
uno de los cabezales. Inicialmente la MT empieza
con la entrada en la primera cinta y el resto de las
cintas en blanco.
17. http://www.w3ii.com/es/automata_theory/non_deterministic_turing_machine.html 17
Maquina de Turing No determinista
En un no-determinista de la máquina de
Turing, para cada estado y el símbolo, hay un
conjunto de acciones que el TM pueda tener.
Así pues, aquí las transiciones no son
deterministas. El cálculo de una máquina de
Turing no determinista es un árbol de
configuraciones que se puede llegar desde la
configuración de inicio.
Una entrada es aceptada si hay al menos un
nodo del árbol que acepta la configuración,
de lo contrario, no se acepta.
21. 21
Pero, ¿Qué hizo que Alan Turing se inspirara para crear un sistema
formal y estructurado como la máquina de Turing? . La Respuesta
de esto es el problema de decisión en las década de las años 20 y
30, los matemáticos se hacían varias preguntas sobre encontrar
soluciones a determinados problemas, pero la pregunta que mas
resonaba era:
¿Es posible encontrar una manera sencilla de decidir si un problema
matemático cualquiera tiene solución?
David Hilbert y Wilhelm Ackermann
22. 22
El problema de la parada
(Halting Problem)
El problema de la parada o problema de la detención para máquinas de Turing
consiste en lo siguiente:
Dada una Máquina de Turing M y una palabra w, determinar si M terminará
en un número finito de pasos cuando es ejecutada usando w como dato de
entrada. Alan Turing, en su famoso artículo de 1936, demostró que el problema
de la parada de la Máquina de Turing es indecidible (no computable o no
recursivo), en el sentido de que ninguna máquina de Turing lo puede resolver.
https://es.wikipedia.org/wiki/Problema_de_la_parada
23. 23
Quedó demostrado con el Problema de la
decisión que no hay ningún sistema para
decidir si un problema matemático tiene
solución o no.
24. Ramon.Brena.-.Automatas.y.Lenguajes_-_By_Santirub.pdf page 185 24
El Problema de Correspondencia de
Post
El Problema de Correspondencia de Post es un problema de
decisión indecidible que fue propuesto por Emil Post.
Informalmente, el problema puede ser descrito como sigue: Dado un
diccionario bilingüe que contiene pares de frases, es decir, listas de
palabras, que significan lo mismo, decidir si existe una frase que
significa lo mismo en ambos lenguajes.
26. https://es.wikipedia.org/wiki/Gram%C3%A1tica_libre_de_contexto 26
Gramática libre de contexto
Una gramática libre de contexto (o de contexto libre) es una
gramática formal en la que cada regla de producción es de la
forma:
V → w
Donde V es un símbolo no terminal y w es una cadena de
terminales y/o no terminales. El término libre de contexto
se refiere al hecho de que el no terminal V puede siempre
ser sustituido por w sin tener en cuenta el contexto en el
que ocurra. Un lenguaje formal es libre de contexto si hay
una gramática libre de contexto que lo genera.
27. 27
Definición formal
Así como cualquier gramática formal, una gramática libre de contexto
puede ser definida mediante la 4-tupla:
28. 28
Una simple gramática libre de contexto es
S → aSb | ε
donde | es un o lógico y es usado para separar múltiples opciones para el mismo no
terminal, ε indica una cadena vacía. Esta gramática genera el lenguaje no regular
Una gramática libre de contexto para un lenguaje consistente en todas las cadenas que se
pueden formar con las letras a y b, habiendo un número diferente de una que de otra,
sería:
Ejemplos