SlideShare una empresa de Scribd logo
1 de 23
Descargar para leer sin conexión
INSTITUTO TECNOLÓGICO DE TEPIC
Ingeniería en Sistemas Computacionales
LENGUAJES Y AUTÓMATAS 1
UNIDAD 4, Máquina de Turing
PORTAFOLIO UNIDAD 4
Alumno: Luis Adrian Parra Avellaneda
Docente: Sonia Alvarado Mares
1 | L u i s A d r i a n P a r r a A v e l l a n e d a
Introducción
En el universo de la computación, existen máquinas que sirven para realizar diversos algoritmos
computacionales, entre ellos validar ciertas cadenas o lenguajes, por ejemplo los autómatas
finitos. En este caso existe un modelo matemático que puede realizar infinidad de algoritmos, el
cual se llama máquina de Turing, este modelo se implementa actualmente en la computación
actual, los procesadores y diversos componentes, es tanta la infinidad de algoritmos que se
pueden ejecutar que hasta se puede simular una máquina de Turing dentro de otra máquina.
En este portafolio analizaremos este tema ya que es de gran importancia sobre todo para la teoría
de la computación y lenguajes, ya que en este caso utilizaremos la máquina con el propósito de
manipular y validar lenguajes
INDICE
Alan Turing.......................................................................................................................................... 2
La máquina de Turing......................................................................................................................... 2
Transiciones de la máquina de Turing......................................................................................... 3
La máquina de Turing en la teoría de autómatas ....................................................................... 4
Lenguajes reconocidos por la máquina de Turing......................................................................... 4
Validación de lenguajes.................................................................................................................. 4
Diagrama de transiciones de una máquina de Turing................................................................. 6
Validación de un lenguaje no regular.......................................................................................... 6
Conversión de un lenguaje a otro ............................................................................................... 9
Construcción modular de una máquina de Turing...................................................................... 10
ANEXOS............................................................................................................................................. 12
Tarea 1, validación de lenguajes:.................................................................................................. 12
Tarea2. Validación de lenguaje ..................................................................................................... 13
Tarea 3: Validación de lenguajes con más nivel de dificultad....................................................... 14
Tarea 4. Conversión entre lenguajes............................................................................................. 16
Conclusiones..................................................................................................................................... 22
Referencias y bibliografía................................................................................................................. 22
2 | L u i s A d r i a n P a r r a A v e l l a n e d a
Alan Turing
Alan Turing nos relata Vilso(2002) 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 plena ebullició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 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 se utiliza. En
definitiva, Alan Turing fue uno de los 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.
La máquina de Turing
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. Agrega
Vilso(2002) la máquina de Turing consiste en una cinta teóricamente infinita con una cabeza
lectora que se puede mover a la izquierda, derecha o no realizar ningún movimiento, un control
finito de estados, concuerdan la mayoría de los autores que la máquina puede escribir caracteres,
por lo tanto sirve para realizar infinidad de algoritmos de computadora
Nos dice Isasi(1997) y Brookshear(1989) que las Máquinas de Thring son el autómata más general,
capaz de reconocerlos lenguajes generados por las gramáticas menos restrictivas
Elementos de una máquina de Turing
Los elementos de una máquina de Turing son:
 Conjunto de estados: Los estados son importantes en la máquina de Turing, ya que son
necesarios para realizar las transiciones entre los elementos
 Estado inicial: Semejante a un autómata finito, es el estado con el que iniciamos el proceso
3 | L u i s A d r i a n P a r r a A v e l l a n e d a
 Estado final: A diferencia de los autómatas finitos, en una máquina de Turing solo hay un
estado final, en este estado terminamos el proceso
 Alfabeto de entrada Σ: Es el alfabeto de nuestra cadena
 Alfabeto de la cinta Γ: Consiste en el alfabeto de entrada y el alfabeto de escritura
 Conjunto de transiciones: Son las transiciones para recorrer la cinta
Funcionamiento de una máquina de Turing
Según Vilso(2002) el funcionamiento básico consiste en
1. La máquina cambia de estado
2. Imprime un símbolo en la celda, reemplazando el símbolo anterior
3. Mueve la cabeza a la izquierda o derecha dependiendo de la transición
Transiciones de la máquina de Turing
Para hacer un programa para máquina de Turing se deben de poner las respectivas transiciones,
en este portafolio la estructura de la transición será:
Δ (estado actual , carácter )→ (estado siguiente, carácter que escribe, lado al que va )
el lado es derecho=r, o izquierdo =l
4 | L u i s A d r i a n P a r r a A v e l l a n e d a
La máquina de Turing en la teoría de autómatas
Una de las aplicaciones de la máquina de Turing menciona Louden(2004) es la validación de
lenguajes, y conversión de estos.
Una máquina de Turing a diferencia de un autómata finito puede validar cualquier lenguaje, ya
que puede escribir, borrar y moverse en ambos lados de la cinta
Lenguajes reconocidos por la máquina de Turing
Nos menciona Isasi(1997) que una palabra es reconocida por la máquina si la cabeza lectora se
encuentra en el primer símbolo, y del estado inicial la máquina llega al estado final y llegar a
detenerse.
Por tanto, el lenguaje aceptado por una MT es el conjunto de palabras que son reconocidas, según
la definición anterior.
Validación de lenguajes
Veamos un ejemplo de la validación de un lenguaje
𝐿 = 𝑎 𝑛
𝑏 𝑚
𝑛, 𝑚 > 0}
Δ (q0 , a )→ (q1, a, r )
Si iniciamos con q0, el estado tiene que iniciar con una [a], ya que tiene que tener 0 o mas [a], si
inicia con otra letra no llegará al estado final. Si inicia con una [a] cambia de estado a q1
Δ (q1 , a )→ (q1, a, r )
Δ (q1 , b )→ (q2, b, r )
q1 puede toparse con [a] o [b], pero si topa con b tiene que cambiar de estado a q2
Δ (q2 , b )→ (q2, b, r )
ahora solo se pueden tener *b+ o *β+ (blanco), pero no *a+, sino no llega al estado final
Δ (q2 , β )→ (q3, β, l )
Si llega a un β blanco, nos recorremos a la izquierda, escribimos el blanco y llegamos al estado final
5 | L u i s A d r i a n P a r r a A v e l l a n e d a
Ilustremos con una cadena válida
aaabbbb
Los elementos de la máquina son:
Estados: Q= ,q0…q3-
Estado inicial: S=q0
Estado final: E=q3
Alfabeto de entrada: Σ ={a, b}
Alfabeto de la cinta: Γ ={a, b, β-
Probemos con una cadena inválida
aaa
Como vemos no hay transición de q1 con blanco, por lo tanto no llega al estado final y la
cadena es inválida
6 | L u i s A d r i a n P a r r a A v e l l a n e d a
Diagrama de transiciones de una máquina de Turing
Basándonos en el ejemplo anterior haremos el diagrama de transición, es parecido al de
un autómata finito, solo que en las transiciones ponemos la letra que encuentra; letra que
escribe, lado. Observemos:
Validación de un lenguaje no regular
Una máquina de Turing también puede validar lenguajes que no parten de una expresión regular
nos dice Kelly(2003), a diferencia de los autómatas finitos los cuales no pueden validarlos. Para eso
vamos a escribir ciertos caracteres con otros símbolos para usarlos como referencia
𝐿 = 𝑎 𝑛
𝑏 𝑛
𝑛 > 0}
Lógica para resolverlo
Para esto se plantea recorrer de extremo a extremo escribiendo 1 donde van las letras [a] y 2
donde van las [b], si queda una letra sin marcar entonces no es valida
Transiciones
𝛥 (𝑞0 , 𝑎 ) → (𝑞1, 1, 𝑟 )
𝛥 (𝑞1 , 𝑎 ) → (𝑞1, 𝑎, 𝑟 )
𝛥 (𝑞1 , 𝑏 ) → (𝑞1, 𝑏, 𝑟 )
𝛥 (𝑞1 , 𝛽 ) → (𝑞2, 𝛽, 𝑙 )
𝛥 (𝑞1 , 2 ) → (𝑞2, 2, 𝑙 )
𝛥 (𝑞2 , 𝑏 ) → (𝑞3, 2, 𝑙 )
𝛥 (𝑞3 , 𝑏 ) → (𝑞3, 𝑏, 𝑙 )
𝛥 (𝑞3 , 𝑎 ) → (𝑞3, 𝑎, 𝑙 )
𝛥 (𝑞3 , 1 ) → (𝑞0, 1, 𝑟 )
𝛥 (𝑞0 , 2 ) → (𝑞4, 2, 𝑙 )
𝛥 (𝑞4 , 2 ) → (𝑞4, 2, 𝑙 )
𝛥 (𝑞4 , 1 ) → (𝑞4, 1, 𝑙 )
𝛥 (𝑞4 , 𝛽 ) → (𝑞5, 𝛽, 𝑟 )
𝛥 (𝑞5 , 1 ) → (𝑞5, 𝑎, 𝑟 )
𝛥 (𝑞5 , 2 ) → (𝑞5, 𝑏, 𝑟 )
7 | L u i s A d r i a n P a r r a A v e l l a n e d a
𝛥 (𝑞5 , 𝛽 ) → (𝑞ℎ, 𝛽, 𝑙 )
𝛥 (𝑞0 , 𝛽 ) → (𝑞ℎ, 𝛽, 𝑟 )
Diagrama de transición
8 | L u i s A d r i a n P a r r a A v e l l a n e d a
Ejemplo con la cadena válida aaabbb
9 | L u i s A d r i a n P a r r a A v e l l a n e d a
Ahora comprobemos con una cadena inválida, en esta cadena no tendrá que llegar al estado final
qh, la cadena será aab
Como se puede observar no existe transición de q2 con un 1, por lo tanto el proceso se detiene y
no se llega al estado final
Características de la máquina:
Estados: Q= {q0, q1, q2, q3, q4, q5, qh}
Estado inicial: S=q0
Estado final: E=qh
Alfabeto de entrada: Σ ={a, b}
Alfabeto de la cinta: Γ ={a, b, 1, 2, β-
Conversión de un lenguaje a otro
Con una máquina de Turing también podemos convertir de un lenguaje a otro, veamos un ejemplo
Convertiremos de este lenguaje L a L1
𝐿 = 𝑎𝑏 𝑛
𝑛 ≥ 0}
𝐿1 = 𝑎 𝑛
𝑏 𝑛 ≥ 0}
Para el proceso de validación y conversión son las siguientes transiciones:
𝛥(𝑞0, 𝑎) → (𝑞1, 𝑎, 𝑟)
𝛥(𝑞1, 𝑏) → (𝑞1, 𝑏, 𝑟)
𝛥(𝑞1, 𝛽) → (𝑞2, 𝛽, 𝑙)
𝛥(𝑞2, 𝑏) → (𝑞2, 𝑎, 𝑙)
𝛥(𝑞2, 𝑎) → (𝑞3, 𝛽, 𝑟)
10 | L u i s A d r i a n P a r r a A v e l l a n e d a
𝛥(𝑞3, 𝑎) → (𝑞3, 𝑎, 𝑟)
𝛥(𝑞3, 𝛽) → (𝑞4, 𝑏, 𝑟)
𝛥(𝑞4, 𝛽) → (𝑞5, 𝛽, 𝑙)
Ilustramos el proceso de conversión
Convertiremos la cadena abbb
Construcción modular de una máquina de Turing
Menciona Brookshear(1989) y Kelly(2003), que la construcción modular de una máquina de Turing
consiste en armar una máquina de Turing compleja a partir de máquinas de Turing sencillas.
La construcción de maquinas 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
a) Eliminar las características de inicio de los estados iniciales de las maquinas, excepto la de
aquel donde iniciara la maquina compuesta.
b) Eliminar 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.
c) Para cada uno de los antiguos estados de parada p y cada x en y.
Los pequeños bloques de la máquina son
11 | L u i s A d r i a n P a r r a A v e l l a n e d a
Como resultado al unirlos tenemos:
12 | L u i s A d r i a n P a r r a A v e l l a n e d a
ANEXOS
Tarea 1, validación de lenguajes:
Tarea 2: Validación de lenguajes
L = {x^n y^m | n,m>0}
Δ (q0 , x )→ (q1, x, r )
Δ (q1 , x )→ (q1, x, r )
Δ (q1 , y )→ (q2, y, r )
Δ (q2 , y )→ (q3, y, r )
Δ (q3 , β )→ (q4, β, l )
Q= ,q0…q4-
S=q0
E=q4
Alf={x, y}
Alf Cinta={x, y, β-
L1={x^n y^m | n>=0,m>0}
Δ (q0 , x )→ (q0, x, r )
Δ (q0 , y )→ (q1, y, r )
Δ (q1 , y )→ (q2, y, r )
Δ (q2 , y )→ (q2, y, r )
Δ (q2 , β )→ (q3, β, l )
Q= ,q0…q3-
S=q0
E=q3
Alf={x, y}
Alf Cinta={x, y, β-
L2={x^n y^m | n>0,m>=0}
Δ (q0 , x )→ (q1, x, r )
Δ (q1 , x )→ (q1, x, r )
Δ (q1 , y )→ (q2, y, r )
Δ (q2 , y )→ (q2, y, r )
Δ (q1 , β )→ (q3, β, l )
Δ (q2 , β )→ (q3, β, l )
Q= ,q0…q3-
S=q0
E=q3
Alf={x, y}
Alf Cinta={x, y, β-
L3={x^n y^m | n,m>=0}
Δ (q0 , x )→ (q0, x, r )
Δ (q0 , y )→ (q1, y, r )
Δ (q1 , y )→ (q1, y, r )
Δ (q0 , β )→ (q2, β, l )
Δ (q1 , β )→ (q2, β, l )
Q= ,q0…q2-
S=q0
E=q2
Alf={x, y}
Alf Cinta={x, y, β-
13 | L u i s A d r i a n P a r r a A v e l l a n e d a
Tarea2. Validación de lenguaje
𝐿 = 𝑤 𝑤 ∈ 0,1 ∗}
Δ (q0 , 0 )→ (q0, 0, r )
Δ (q0 , 1 )→ (q0, 1, r )
Δ (q0 , β )→ (q1, β, l )
Q= {q0, q1}
S=q0
E=q1
Alf={a, b}
Alf Cinta={a, b, β-
14 | L u i s A d r i a n P a r r a A v e l l a n e d a
Tarea 3: Validación de lenguajes con más nivel de dificultad
15 | L u i s A d r i a n P a r r a A v e l l a n e d a
16 | L u i s A d r i a n P a r r a A v e l l a n e d a
Tarea 4. Conversión entre lenguajes
17 | L u i s A d r i a n P a r r a A v e l l a n e d a
18 | L u i s A d r i a n P a r r a A v e l l a n e d a
19 | L u i s A d r i a n P a r r a A v e l l a n e d a
20 | L u i s A d r i a n P a r r a A v e l l a n e d a
21 | L u i s A d r i a n P a r r a A v e l l a n e d a
22 | L u i s A d r i a n P a r r a A v e l l a n e d a
Conclusiones
A través de esta unidad trabajamos con un nuevo modelo matemático, en las actividades no solo
validamos lenguajes regulares, sino que también se puede validar un lenguaje no regular, solo que
en este caso necesitamos viajar a los 2 lados y escribir ciertos caracteres. Además observamos que
también se pueden convertir lenguajes, y realizar otros algoritmos como la conversión de binario a
decimal, suma de números, etc.
Al realizar las transiciones que indicaban ciertas instrucciones, observamos que es semejante a
una programación en un nivel muy bajo, por eso entendemos que una máquina de Turing es la
base para la computación actual.
Referencias y bibliografía
 Hopcroft, Ullman (1993). Introducción a la teoría de autómatas, lenguajes y computación.
Editorial CECSA
 Isasi, Martínez, Borrajo (1997). Lenguajes, gramáticas y autómatas, un enfoque práctico.
México. Editorial Addison-wesley
 Brookshear(1989). Teoría de la Computación, Lenguajes Formales, Autómatas y
Complejidad. Addison Wesley.
 Viso (2002). Teoría de la computación. México. Facultad de Ciencias UNAM
 Kelly(2003) Teoría de Automatas y Lenguajes Formales. Prentice Hall.
 Louden (2004). Construcción de compiladores, principios y práctica.

Más contenido relacionado

La actualidad más candente

Lista de adyacencia
Lista de adyacenciaLista de adyacencia
Lista de adyacenciaFrank Doria
 
Presentacion 2 - Maquinas de Estado Finito
Presentacion 2 - Maquinas de Estado FinitoPresentacion 2 - Maquinas de Estado Finito
Presentacion 2 - Maquinas de Estado Finitojunito86
 
Tipos de Autómatas 
Tipos de Autómatas Tipos de Autómatas 
Tipos de Autómatas yelizabeth_20
 
Unidad No. 5 - Agentes Inteligentes
Unidad No. 5 - Agentes InteligentesUnidad No. 5 - Agentes Inteligentes
Unidad No. 5 - Agentes InteligentesMilton Klapp
 
Máquinas de Turing
Máquinas de TuringMáquinas de Turing
Máquinas de TuringTania Arroyo
 
Elementos de una máquina de turing
Elementos de una máquina de turingElementos de una máquina de turing
Elementos de una máquina de turingvmtorrealba
 
Máquinas de Turing - Tipos y Aplicaciones
Máquinas de Turing - Tipos y AplicacionesMáquinas de Turing - Tipos y Aplicaciones
Máquinas de Turing - Tipos y AplicacionesRosviannis Barreiro
 
Programación 3: algoritmo de Prim y de Kruskal
Programación 3: algoritmo de Prim y de KruskalProgramación 3: algoritmo de Prim y de Kruskal
Programación 3: algoritmo de Prim y de KruskalAngel Vázquez Patiño
 
Ejercicio de máquina de turing
Ejercicio de máquina de turingEjercicio de máquina de turing
Ejercicio de máquina de turingJonathan Bastidas
 
Tipos de gramatica y arboles de derivacion
Tipos de gramatica y arboles de derivacionTipos de gramatica y arboles de derivacion
Tipos de gramatica y arboles de derivacionjorge severino
 
Portafolio unidad 2 [Lenguajes y autómatas]- Expresiones y lenguajes regulares
Portafolio unidad 2 [Lenguajes y autómatas]- Expresiones y lenguajes regularesPortafolio unidad 2 [Lenguajes y autómatas]- Expresiones y lenguajes regulares
Portafolio unidad 2 [Lenguajes y autómatas]- Expresiones y lenguajes regularesHumano Terricola
 
Máquina de turing
Máquina de turingMáquina de turing
Máquina de turingIvan
 
Conversión de un AFN a un AFD.
Conversión de un AFN a un AFD.Conversión de un AFN a un AFD.
Conversión de un AFN a un AFD.Vikky Moscoso
 
Trabajo de circuito logico restador
Trabajo de circuito logico restadorTrabajo de circuito logico restador
Trabajo de circuito logico restadorJesus Jimenez
 
Sesion 02 - Señales y sistemas
Sesion 02 - Señales y sistemasSesion 02 - Señales y sistemas
Sesion 02 - Señales y sistemasgluzardo
 

La actualidad más candente (20)

Lista de adyacencia
Lista de adyacenciaLista de adyacencia
Lista de adyacencia
 
Presentacion 2 - Maquinas de Estado Finito
Presentacion 2 - Maquinas de Estado FinitoPresentacion 2 - Maquinas de Estado Finito
Presentacion 2 - Maquinas de Estado Finito
 
Tipos de Autómatas 
Tipos de Autómatas Tipos de Autómatas 
Tipos de Autómatas 
 
Unidad No. 5 - Agentes Inteligentes
Unidad No. 5 - Agentes InteligentesUnidad No. 5 - Agentes Inteligentes
Unidad No. 5 - Agentes Inteligentes
 
Máquinas de Turing
Máquinas de TuringMáquinas de Turing
Máquinas de Turing
 
Ejercicios
EjerciciosEjercicios
Ejercicios
 
GRAMATICAS AMBIGUAS
GRAMATICAS AMBIGUASGRAMATICAS AMBIGUAS
GRAMATICAS AMBIGUAS
 
Elementos de una máquina de turing
Elementos de una máquina de turingElementos de una máquina de turing
Elementos de una máquina de turing
 
Máquinas de Turing - Tipos y Aplicaciones
Máquinas de Turing - Tipos y AplicacionesMáquinas de Turing - Tipos y Aplicaciones
Máquinas de Turing - Tipos y Aplicaciones
 
Automatas de pila
Automatas de pilaAutomatas de pila
Automatas de pila
 
Programación 3: algoritmo de Prim y de Kruskal
Programación 3: algoritmo de Prim y de KruskalProgramación 3: algoritmo de Prim y de Kruskal
Programación 3: algoritmo de Prim y de Kruskal
 
Ejercicio de máquina de turing
Ejercicio de máquina de turingEjercicio de máquina de turing
Ejercicio de máquina de turing
 
Tipos de gramatica y arboles de derivacion
Tipos de gramatica y arboles de derivacionTipos de gramatica y arboles de derivacion
Tipos de gramatica y arboles de derivacion
 
Investigacion errores lexicos
Investigacion errores lexicosInvestigacion errores lexicos
Investigacion errores lexicos
 
Portafolio unidad 2 [Lenguajes y autómatas]- Expresiones y lenguajes regulares
Portafolio unidad 2 [Lenguajes y autómatas]- Expresiones y lenguajes regularesPortafolio unidad 2 [Lenguajes y autómatas]- Expresiones y lenguajes regulares
Portafolio unidad 2 [Lenguajes y autómatas]- Expresiones y lenguajes regulares
 
Máquina de turing
Máquina de turingMáquina de turing
Máquina de turing
 
Transacciones
TransaccionesTransacciones
Transacciones
 
Conversión de un AFN a un AFD.
Conversión de un AFN a un AFD.Conversión de un AFN a un AFD.
Conversión de un AFN a un AFD.
 
Trabajo de circuito logico restador
Trabajo de circuito logico restadorTrabajo de circuito logico restador
Trabajo de circuito logico restador
 
Sesion 02 - Señales y sistemas
Sesion 02 - Señales y sistemasSesion 02 - Señales y sistemas
Sesion 02 - Señales y sistemas
 

Similar a Portafolio Unidad 4 [Lenguajes y autómatas] - Máquinas de Turing

Máquina de Turing.pptx
Máquina de Turing.pptxMáquina de Turing.pptx
Máquina de Turing.pptxYessicaReyes30
 
Maquina de turing - Enzo y Bolivar - Teoria de Automatas
Maquina de turing - Enzo y Bolivar - Teoria de AutomatasMaquina de turing - Enzo y Bolivar - Teoria de Automatas
Maquina de turing - Enzo y Bolivar - Teoria de AutomatasEnzo Casamassima
 
maquinas de turing
maquinas de turingmaquinas de turing
maquinas de turingAnel Sosa
 
Gramáticas y Modelos Matemáticos - Clase 5 continuación
Gramáticas y Modelos Matemáticos - Clase 5 continuaciónGramáticas y Modelos Matemáticos - Clase 5 continuación
Gramáticas y Modelos Matemáticos - Clase 5 continuaciónUTN-FRT Tucumán Argentina
 
Maquina de turing y resolubilidad e Irresolubilidad
Maquina de turing y resolubilidad e IrresolubilidadMaquina de turing y resolubilidad e Irresolubilidad
Maquina de turing y resolubilidad e Irresolubilidadlluis31
 
Reny galaviz web quest
Reny galaviz web questReny galaviz web quest
Reny galaviz web questReny-Galaviz
 
Reny Galaviz Web Quest
Reny Galaviz Web QuestReny Galaviz Web Quest
Reny Galaviz Web QuestReny-Galaviz
 
Introducción a la Teoría de Autómatas by Yeredith
Introducción a la Teoría de Autómatas by YeredithIntroducción a la Teoría de Autómatas by Yeredith
Introducción a la Teoría de Autómatas by Yeredithyeredith1
 
Manuel torres web-quest informe
Manuel torres web-quest informeManuel torres web-quest informe
Manuel torres web-quest informeMrx Mirrorx
 
EJERCICIO MAQUINA DE TURIN.pptx
EJERCICIO MAQUINA DE TURIN.pptxEJERCICIO MAQUINA DE TURIN.pptx
EJERCICIO MAQUINA DE TURIN.pptxgeslereliasvicente
 
Algoritmos
AlgoritmosAlgoritmos
AlgoritmosCarlos
 
Algoritmos univ colombia
Algoritmos univ colombiaAlgoritmos univ colombia
Algoritmos univ colombiaJulio Camargo
 
Sistemas AutÓmatas.
Sistemas AutÓmatas.Sistemas AutÓmatas.
Sistemas AutÓmatas.jengibre
 

Similar a Portafolio Unidad 4 [Lenguajes y autómatas] - Máquinas de Turing (20)

Máquina de Turing.pptx
Máquina de Turing.pptxMáquina de Turing.pptx
Máquina de Turing.pptx
 
Maquina de turing - Enzo y Bolivar - Teoria de Automatas
Maquina de turing - Enzo y Bolivar - Teoria de AutomatasMaquina de turing - Enzo y Bolivar - Teoria de Automatas
Maquina de turing - Enzo y Bolivar - Teoria de Automatas
 
maquinas de turing
maquinas de turingmaquinas de turing
maquinas de turing
 
Gramáticas y Modelos Matemáticos - Clase 5 continuación
Gramáticas y Modelos Matemáticos - Clase 5 continuaciónGramáticas y Modelos Matemáticos - Clase 5 continuación
Gramáticas y Modelos Matemáticos - Clase 5 continuación
 
Maquina de turing y resolubilidad e Irresolubilidad
Maquina de turing y resolubilidad e IrresolubilidadMaquina de turing y resolubilidad e Irresolubilidad
Maquina de turing y resolubilidad e Irresolubilidad
 
Maquina de Turing
Maquina de TuringMaquina de Turing
Maquina de Turing
 
Máquinas que comen máquinas
Máquinas que comen máquinasMáquinas que comen máquinas
Máquinas que comen máquinas
 
Reny galaviz web quest
Reny galaviz web questReny galaviz web quest
Reny galaviz web quest
 
Reny Galaviz Web Quest
Reny Galaviz Web QuestReny Galaviz Web Quest
Reny Galaviz Web Quest
 
Introducción a la Teoría de Autómatas by Yeredith
Introducción a la Teoría de Autómatas by YeredithIntroducción a la Teoría de Autómatas by Yeredith
Introducción a la Teoría de Autómatas by Yeredith
 
Manuel torres web-quest informe
Manuel torres web-quest informeManuel torres web-quest informe
Manuel torres web-quest informe
 
Máquinas de turing
Máquinas de turingMáquinas de turing
Máquinas de turing
 
EJERCICIO MAQUINA DE TURIN.pptx
EJERCICIO MAQUINA DE TURIN.pptxEJERCICIO MAQUINA DE TURIN.pptx
EJERCICIO MAQUINA DE TURIN.pptx
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Máquinas que comen máquinas
Máquinas que comen máquinasMáquinas que comen máquinas
Máquinas que comen máquinas
 
Máquina de Turing
Máquina de TuringMáquina de Turing
Máquina de Turing
 
Algoritmos univ colombia
Algoritmos univ colombiaAlgoritmos univ colombia
Algoritmos univ colombia
 
Sistemas AutÓmatas.
Sistemas AutÓmatas.Sistemas AutÓmatas.
Sistemas AutÓmatas.
 
Automatas[1]
Automatas[1]Automatas[1]
Automatas[1]
 
Maquina de turing
Maquina de turingMaquina de turing
Maquina de turing
 

Más de Humano Terricola

Portafolio lenguajes y automatas unidad 3 - Autómatas finitos
Portafolio lenguajes y automatas unidad 3 - Autómatas finitosPortafolio lenguajes y automatas unidad 3 - Autómatas finitos
Portafolio lenguajes y automatas unidad 3 - Autómatas finitosHumano Terricola
 
Portafolio Lenguajes y Autómatas Unidad 1
Portafolio Lenguajes y Autómatas Unidad 1Portafolio Lenguajes y Autómatas Unidad 1
Portafolio Lenguajes y Autómatas Unidad 1Humano Terricola
 
Cuadro comparativo estandares de calidad software
Cuadro comparativo estandares de calidad softwareCuadro comparativo estandares de calidad software
Cuadro comparativo estandares de calidad softwareHumano Terricola
 
Analisys of Selection Sort and Bubble Sort
Analisys of Selection Sort and Bubble SortAnalisys of Selection Sort and Bubble Sort
Analisys of Selection Sort and Bubble SortHumano Terricola
 
Apuntes generación de codigo intermedio
Apuntes generación de codigo intermedioApuntes generación de codigo intermedio
Apuntes generación de codigo intermedioHumano Terricola
 
Generación código intermedio 2
Generación código intermedio 2Generación código intermedio 2
Generación código intermedio 2Humano Terricola
 
Configuración del servidor smtp centos
Configuración del servidor smtp centosConfiguración del servidor smtp centos
Configuración del servidor smtp centosHumano Terricola
 

Más de Humano Terricola (9)

Bica22
Bica22Bica22
Bica22
 
Portafolio lenguajes y automatas unidad 3 - Autómatas finitos
Portafolio lenguajes y automatas unidad 3 - Autómatas finitosPortafolio lenguajes y automatas unidad 3 - Autómatas finitos
Portafolio lenguajes y automatas unidad 3 - Autómatas finitos
 
Portafolio Lenguajes y Autómatas Unidad 1
Portafolio Lenguajes y Autómatas Unidad 1Portafolio Lenguajes y Autómatas Unidad 1
Portafolio Lenguajes y Autómatas Unidad 1
 
Cuadro comparativo estandares de calidad software
Cuadro comparativo estandares de calidad softwareCuadro comparativo estandares de calidad software
Cuadro comparativo estandares de calidad software
 
Analisys of Selection Sort and Bubble Sort
Analisys of Selection Sort and Bubble SortAnalisys of Selection Sort and Bubble Sort
Analisys of Selection Sort and Bubble Sort
 
Apuntes generación de codigo intermedio
Apuntes generación de codigo intermedioApuntes generación de codigo intermedio
Apuntes generación de codigo intermedio
 
Generación código intermedio 2
Generación código intermedio 2Generación código intermedio 2
Generación código intermedio 2
 
Configuración del servidor smtp centos
Configuración del servidor smtp centosConfiguración del servidor smtp centos
Configuración del servidor smtp centos
 
Servidor proxy en centos
Servidor proxy en centosServidor proxy en centos
Servidor proxy en centos
 

Último

Normas para los aceros basados en ASTM y AISI
Normas para los aceros basados en ASTM y AISINormas para los aceros basados en ASTM y AISI
Normas para los aceros basados en ASTM y AISIfimumsnhoficial
 
estadisticasII Metodo-de-la-gran-M.pdf
estadisticasII   Metodo-de-la-gran-M.pdfestadisticasII   Metodo-de-la-gran-M.pdf
estadisticasII Metodo-de-la-gran-M.pdfFlorenciopeaortiz
 
Presentación Proyecto Trabajo Creativa Profesional Azul.pdf
Presentación Proyecto Trabajo Creativa Profesional Azul.pdfPresentación Proyecto Trabajo Creativa Profesional Azul.pdf
Presentación Proyecto Trabajo Creativa Profesional Azul.pdfMirthaFernandez12
 
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdfAnthonyTiclia
 
Fe_C_Tratamientos termicos_uap _3_.ppt
Fe_C_Tratamientos termicos_uap   _3_.pptFe_C_Tratamientos termicos_uap   _3_.ppt
Fe_C_Tratamientos termicos_uap _3_.pptVitobailon
 
Edificio residencial Tarsia de AEDAS Homes Granada
Edificio residencial Tarsia de AEDAS Homes GranadaEdificio residencial Tarsia de AEDAS Homes Granada
Edificio residencial Tarsia de AEDAS Homes GranadaANDECE
 
CICLO DE DEMING que se encarga en como mejorar una empresa
CICLO DE DEMING que se encarga en como mejorar una empresaCICLO DE DEMING que se encarga en como mejorar una empresa
CICLO DE DEMING que se encarga en como mejorar una empresaSHERELYNSAMANTHAPALO1
 
Caldera Recuperadora de químicos en celulosa tipos y funcionamiento
Caldera Recuperadora de químicos en celulosa  tipos y funcionamientoCaldera Recuperadora de químicos en celulosa  tipos y funcionamiento
Caldera Recuperadora de químicos en celulosa tipos y funcionamientoRobertoAlejandroCast6
 
Calavera calculo de estructuras de cimentacion.pdf
Calavera calculo de estructuras de cimentacion.pdfCalavera calculo de estructuras de cimentacion.pdf
Calavera calculo de estructuras de cimentacion.pdfyoseka196
 
Comite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxComite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxClaudiaPerez86192
 
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...SuannNeyraChongShing
 
CLASE 2 MUROS CARAVISTA EN CONCRETO Y UNIDAD DE ALBAÑILERIA
CLASE 2 MUROS CARAVISTA EN CONCRETO  Y UNIDAD DE ALBAÑILERIACLASE 2 MUROS CARAVISTA EN CONCRETO  Y UNIDAD DE ALBAÑILERIA
CLASE 2 MUROS CARAVISTA EN CONCRETO Y UNIDAD DE ALBAÑILERIAMayraOchoa35
 
Curso intensivo de soldadura electrónica en pdf
Curso intensivo de soldadura electrónica  en pdfCurso intensivo de soldadura electrónica  en pdf
Curso intensivo de soldadura electrónica en pdfFernandaGarca788912
 
Seleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSeleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSaulSantiago25
 
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)ssuser563c56
 
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Francisco Javier Mora Serrano
 
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdfECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdffredyflores58
 
Unidad 3 Administracion de inventarios.pptx
Unidad 3 Administracion de inventarios.pptxUnidad 3 Administracion de inventarios.pptx
Unidad 3 Administracion de inventarios.pptxEverardoRuiz8
 
Magnetismo y electromagnetismo principios
Magnetismo y electromagnetismo principiosMagnetismo y electromagnetismo principios
Magnetismo y electromagnetismo principiosMarceloQuisbert6
 
SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.
SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.
SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.ariannytrading
 

Último (20)

Normas para los aceros basados en ASTM y AISI
Normas para los aceros basados en ASTM y AISINormas para los aceros basados en ASTM y AISI
Normas para los aceros basados en ASTM y AISI
 
estadisticasII Metodo-de-la-gran-M.pdf
estadisticasII   Metodo-de-la-gran-M.pdfestadisticasII   Metodo-de-la-gran-M.pdf
estadisticasII Metodo-de-la-gran-M.pdf
 
Presentación Proyecto Trabajo Creativa Profesional Azul.pdf
Presentación Proyecto Trabajo Creativa Profesional Azul.pdfPresentación Proyecto Trabajo Creativa Profesional Azul.pdf
Presentación Proyecto Trabajo Creativa Profesional Azul.pdf
 
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
 
Fe_C_Tratamientos termicos_uap _3_.ppt
Fe_C_Tratamientos termicos_uap   _3_.pptFe_C_Tratamientos termicos_uap   _3_.ppt
Fe_C_Tratamientos termicos_uap _3_.ppt
 
Edificio residencial Tarsia de AEDAS Homes Granada
Edificio residencial Tarsia de AEDAS Homes GranadaEdificio residencial Tarsia de AEDAS Homes Granada
Edificio residencial Tarsia de AEDAS Homes Granada
 
CICLO DE DEMING que se encarga en como mejorar una empresa
CICLO DE DEMING que se encarga en como mejorar una empresaCICLO DE DEMING que se encarga en como mejorar una empresa
CICLO DE DEMING que se encarga en como mejorar una empresa
 
Caldera Recuperadora de químicos en celulosa tipos y funcionamiento
Caldera Recuperadora de químicos en celulosa  tipos y funcionamientoCaldera Recuperadora de químicos en celulosa  tipos y funcionamiento
Caldera Recuperadora de químicos en celulosa tipos y funcionamiento
 
Calavera calculo de estructuras de cimentacion.pdf
Calavera calculo de estructuras de cimentacion.pdfCalavera calculo de estructuras de cimentacion.pdf
Calavera calculo de estructuras de cimentacion.pdf
 
Comite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxComite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptx
 
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...
 
CLASE 2 MUROS CARAVISTA EN CONCRETO Y UNIDAD DE ALBAÑILERIA
CLASE 2 MUROS CARAVISTA EN CONCRETO  Y UNIDAD DE ALBAÑILERIACLASE 2 MUROS CARAVISTA EN CONCRETO  Y UNIDAD DE ALBAÑILERIA
CLASE 2 MUROS CARAVISTA EN CONCRETO Y UNIDAD DE ALBAÑILERIA
 
Curso intensivo de soldadura electrónica en pdf
Curso intensivo de soldadura electrónica  en pdfCurso intensivo de soldadura electrónica  en pdf
Curso intensivo de soldadura electrónica en pdf
 
Seleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSeleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusibles
 
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
 
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
 
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdfECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
 
Unidad 3 Administracion de inventarios.pptx
Unidad 3 Administracion de inventarios.pptxUnidad 3 Administracion de inventarios.pptx
Unidad 3 Administracion de inventarios.pptx
 
Magnetismo y electromagnetismo principios
Magnetismo y electromagnetismo principiosMagnetismo y electromagnetismo principios
Magnetismo y electromagnetismo principios
 
SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.
SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.
SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.
 

Portafolio Unidad 4 [Lenguajes y autómatas] - Máquinas de Turing

  • 1. INSTITUTO TECNOLÓGICO DE TEPIC Ingeniería en Sistemas Computacionales LENGUAJES Y AUTÓMATAS 1 UNIDAD 4, Máquina de Turing PORTAFOLIO UNIDAD 4 Alumno: Luis Adrian Parra Avellaneda Docente: Sonia Alvarado Mares
  • 2. 1 | L u i s A d r i a n P a r r a A v e l l a n e d a Introducción En el universo de la computación, existen máquinas que sirven para realizar diversos algoritmos computacionales, entre ellos validar ciertas cadenas o lenguajes, por ejemplo los autómatas finitos. En este caso existe un modelo matemático que puede realizar infinidad de algoritmos, el cual se llama máquina de Turing, este modelo se implementa actualmente en la computación actual, los procesadores y diversos componentes, es tanta la infinidad de algoritmos que se pueden ejecutar que hasta se puede simular una máquina de Turing dentro de otra máquina. En este portafolio analizaremos este tema ya que es de gran importancia sobre todo para la teoría de la computación y lenguajes, ya que en este caso utilizaremos la máquina con el propósito de manipular y validar lenguajes INDICE Alan Turing.......................................................................................................................................... 2 La máquina de Turing......................................................................................................................... 2 Transiciones de la máquina de Turing......................................................................................... 3 La máquina de Turing en la teoría de autómatas ....................................................................... 4 Lenguajes reconocidos por la máquina de Turing......................................................................... 4 Validación de lenguajes.................................................................................................................. 4 Diagrama de transiciones de una máquina de Turing................................................................. 6 Validación de un lenguaje no regular.......................................................................................... 6 Conversión de un lenguaje a otro ............................................................................................... 9 Construcción modular de una máquina de Turing...................................................................... 10 ANEXOS............................................................................................................................................. 12 Tarea 1, validación de lenguajes:.................................................................................................. 12 Tarea2. Validación de lenguaje ..................................................................................................... 13 Tarea 3: Validación de lenguajes con más nivel de dificultad....................................................... 14 Tarea 4. Conversión entre lenguajes............................................................................................. 16 Conclusiones..................................................................................................................................... 22 Referencias y bibliografía................................................................................................................. 22
  • 3. 2 | L u i s A d r i a n P a r r a A v e l l a n e d a Alan Turing Alan Turing nos relata Vilso(2002) 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 plena ebullició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 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 se utiliza. En definitiva, Alan Turing fue uno de los 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. La máquina de Turing 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. Agrega Vilso(2002) la máquina de Turing consiste en una cinta teóricamente infinita con una cabeza lectora que se puede mover a la izquierda, derecha o no realizar ningún movimiento, un control finito de estados, concuerdan la mayoría de los autores que la máquina puede escribir caracteres, por lo tanto sirve para realizar infinidad de algoritmos de computadora Nos dice Isasi(1997) y Brookshear(1989) que las Máquinas de Thring son el autómata más general, capaz de reconocerlos lenguajes generados por las gramáticas menos restrictivas Elementos de una máquina de Turing Los elementos de una máquina de Turing son:  Conjunto de estados: Los estados son importantes en la máquina de Turing, ya que son necesarios para realizar las transiciones entre los elementos  Estado inicial: Semejante a un autómata finito, es el estado con el que iniciamos el proceso
  • 4. 3 | L u i s A d r i a n P a r r a A v e l l a n e d a  Estado final: A diferencia de los autómatas finitos, en una máquina de Turing solo hay un estado final, en este estado terminamos el proceso  Alfabeto de entrada Σ: Es el alfabeto de nuestra cadena  Alfabeto de la cinta Γ: Consiste en el alfabeto de entrada y el alfabeto de escritura  Conjunto de transiciones: Son las transiciones para recorrer la cinta Funcionamiento de una máquina de Turing Según Vilso(2002) el funcionamiento básico consiste en 1. La máquina cambia de estado 2. Imprime un símbolo en la celda, reemplazando el símbolo anterior 3. Mueve la cabeza a la izquierda o derecha dependiendo de la transición Transiciones de la máquina de Turing Para hacer un programa para máquina de Turing se deben de poner las respectivas transiciones, en este portafolio la estructura de la transición será: Δ (estado actual , carácter )→ (estado siguiente, carácter que escribe, lado al que va ) el lado es derecho=r, o izquierdo =l
  • 5. 4 | L u i s A d r i a n P a r r a A v e l l a n e d a La máquina de Turing en la teoría de autómatas Una de las aplicaciones de la máquina de Turing menciona Louden(2004) es la validación de lenguajes, y conversión de estos. Una máquina de Turing a diferencia de un autómata finito puede validar cualquier lenguaje, ya que puede escribir, borrar y moverse en ambos lados de la cinta Lenguajes reconocidos por la máquina de Turing Nos menciona Isasi(1997) que una palabra es reconocida por la máquina si la cabeza lectora se encuentra en el primer símbolo, y del estado inicial la máquina llega al estado final y llegar a detenerse. Por tanto, el lenguaje aceptado por una MT es el conjunto de palabras que son reconocidas, según la definición anterior. Validación de lenguajes Veamos un ejemplo de la validación de un lenguaje 𝐿 = 𝑎 𝑛 𝑏 𝑚 𝑛, 𝑚 > 0} Δ (q0 , a )→ (q1, a, r ) Si iniciamos con q0, el estado tiene que iniciar con una [a], ya que tiene que tener 0 o mas [a], si inicia con otra letra no llegará al estado final. Si inicia con una [a] cambia de estado a q1 Δ (q1 , a )→ (q1, a, r ) Δ (q1 , b )→ (q2, b, r ) q1 puede toparse con [a] o [b], pero si topa con b tiene que cambiar de estado a q2 Δ (q2 , b )→ (q2, b, r ) ahora solo se pueden tener *b+ o *β+ (blanco), pero no *a+, sino no llega al estado final Δ (q2 , β )→ (q3, β, l ) Si llega a un β blanco, nos recorremos a la izquierda, escribimos el blanco y llegamos al estado final
  • 6. 5 | L u i s A d r i a n P a r r a A v e l l a n e d a Ilustremos con una cadena válida aaabbbb Los elementos de la máquina son: Estados: Q= ,q0…q3- Estado inicial: S=q0 Estado final: E=q3 Alfabeto de entrada: Σ ={a, b} Alfabeto de la cinta: Γ ={a, b, β- Probemos con una cadena inválida aaa Como vemos no hay transición de q1 con blanco, por lo tanto no llega al estado final y la cadena es inválida
  • 7. 6 | L u i s A d r i a n P a r r a A v e l l a n e d a Diagrama de transiciones de una máquina de Turing Basándonos en el ejemplo anterior haremos el diagrama de transición, es parecido al de un autómata finito, solo que en las transiciones ponemos la letra que encuentra; letra que escribe, lado. Observemos: Validación de un lenguaje no regular Una máquina de Turing también puede validar lenguajes que no parten de una expresión regular nos dice Kelly(2003), a diferencia de los autómatas finitos los cuales no pueden validarlos. Para eso vamos a escribir ciertos caracteres con otros símbolos para usarlos como referencia 𝐿 = 𝑎 𝑛 𝑏 𝑛 𝑛 > 0} Lógica para resolverlo Para esto se plantea recorrer de extremo a extremo escribiendo 1 donde van las letras [a] y 2 donde van las [b], si queda una letra sin marcar entonces no es valida Transiciones 𝛥 (𝑞0 , 𝑎 ) → (𝑞1, 1, 𝑟 ) 𝛥 (𝑞1 , 𝑎 ) → (𝑞1, 𝑎, 𝑟 ) 𝛥 (𝑞1 , 𝑏 ) → (𝑞1, 𝑏, 𝑟 ) 𝛥 (𝑞1 , 𝛽 ) → (𝑞2, 𝛽, 𝑙 ) 𝛥 (𝑞1 , 2 ) → (𝑞2, 2, 𝑙 ) 𝛥 (𝑞2 , 𝑏 ) → (𝑞3, 2, 𝑙 ) 𝛥 (𝑞3 , 𝑏 ) → (𝑞3, 𝑏, 𝑙 ) 𝛥 (𝑞3 , 𝑎 ) → (𝑞3, 𝑎, 𝑙 ) 𝛥 (𝑞3 , 1 ) → (𝑞0, 1, 𝑟 ) 𝛥 (𝑞0 , 2 ) → (𝑞4, 2, 𝑙 ) 𝛥 (𝑞4 , 2 ) → (𝑞4, 2, 𝑙 ) 𝛥 (𝑞4 , 1 ) → (𝑞4, 1, 𝑙 ) 𝛥 (𝑞4 , 𝛽 ) → (𝑞5, 𝛽, 𝑟 ) 𝛥 (𝑞5 , 1 ) → (𝑞5, 𝑎, 𝑟 ) 𝛥 (𝑞5 , 2 ) → (𝑞5, 𝑏, 𝑟 )
  • 8. 7 | L u i s A d r i a n P a r r a A v e l l a n e d a 𝛥 (𝑞5 , 𝛽 ) → (𝑞ℎ, 𝛽, 𝑙 ) 𝛥 (𝑞0 , 𝛽 ) → (𝑞ℎ, 𝛽, 𝑟 ) Diagrama de transición
  • 9. 8 | L u i s A d r i a n P a r r a A v e l l a n e d a Ejemplo con la cadena válida aaabbb
  • 10. 9 | L u i s A d r i a n P a r r a A v e l l a n e d a Ahora comprobemos con una cadena inválida, en esta cadena no tendrá que llegar al estado final qh, la cadena será aab Como se puede observar no existe transición de q2 con un 1, por lo tanto el proceso se detiene y no se llega al estado final Características de la máquina: Estados: Q= {q0, q1, q2, q3, q4, q5, qh} Estado inicial: S=q0 Estado final: E=qh Alfabeto de entrada: Σ ={a, b} Alfabeto de la cinta: Γ ={a, b, 1, 2, β- Conversión de un lenguaje a otro Con una máquina de Turing también podemos convertir de un lenguaje a otro, veamos un ejemplo Convertiremos de este lenguaje L a L1 𝐿 = 𝑎𝑏 𝑛 𝑛 ≥ 0} 𝐿1 = 𝑎 𝑛 𝑏 𝑛 ≥ 0} Para el proceso de validación y conversión son las siguientes transiciones: 𝛥(𝑞0, 𝑎) → (𝑞1, 𝑎, 𝑟) 𝛥(𝑞1, 𝑏) → (𝑞1, 𝑏, 𝑟) 𝛥(𝑞1, 𝛽) → (𝑞2, 𝛽, 𝑙) 𝛥(𝑞2, 𝑏) → (𝑞2, 𝑎, 𝑙) 𝛥(𝑞2, 𝑎) → (𝑞3, 𝛽, 𝑟)
  • 11. 10 | L u i s A d r i a n P a r r a A v e l l a n e d a 𝛥(𝑞3, 𝑎) → (𝑞3, 𝑎, 𝑟) 𝛥(𝑞3, 𝛽) → (𝑞4, 𝑏, 𝑟) 𝛥(𝑞4, 𝛽) → (𝑞5, 𝛽, 𝑙) Ilustramos el proceso de conversión Convertiremos la cadena abbb Construcción modular de una máquina de Turing Menciona Brookshear(1989) y Kelly(2003), que la construcción modular de una máquina de Turing consiste en armar una máquina de Turing compleja a partir de máquinas de Turing sencillas. La construcción de maquinas 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 a) Eliminar las características de inicio de los estados iniciales de las maquinas, excepto la de aquel donde iniciara la maquina compuesta. b) Eliminar 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. c) Para cada uno de los antiguos estados de parada p y cada x en y. Los pequeños bloques de la máquina son
  • 12. 11 | L u i s A d r i a n P a r r a A v e l l a n e d a Como resultado al unirlos tenemos:
  • 13. 12 | L u i s A d r i a n P a r r a A v e l l a n e d a ANEXOS Tarea 1, validación de lenguajes: Tarea 2: Validación de lenguajes L = {x^n y^m | n,m>0} Δ (q0 , x )→ (q1, x, r ) Δ (q1 , x )→ (q1, x, r ) Δ (q1 , y )→ (q2, y, r ) Δ (q2 , y )→ (q3, y, r ) Δ (q3 , β )→ (q4, β, l ) Q= ,q0…q4- S=q0 E=q4 Alf={x, y} Alf Cinta={x, y, β- L1={x^n y^m | n>=0,m>0} Δ (q0 , x )→ (q0, x, r ) Δ (q0 , y )→ (q1, y, r ) Δ (q1 , y )→ (q2, y, r ) Δ (q2 , y )→ (q2, y, r ) Δ (q2 , β )→ (q3, β, l ) Q= ,q0…q3- S=q0 E=q3 Alf={x, y} Alf Cinta={x, y, β- L2={x^n y^m | n>0,m>=0} Δ (q0 , x )→ (q1, x, r ) Δ (q1 , x )→ (q1, x, r ) Δ (q1 , y )→ (q2, y, r ) Δ (q2 , y )→ (q2, y, r ) Δ (q1 , β )→ (q3, β, l ) Δ (q2 , β )→ (q3, β, l ) Q= ,q0…q3- S=q0 E=q3 Alf={x, y} Alf Cinta={x, y, β- L3={x^n y^m | n,m>=0} Δ (q0 , x )→ (q0, x, r ) Δ (q0 , y )→ (q1, y, r ) Δ (q1 , y )→ (q1, y, r ) Δ (q0 , β )→ (q2, β, l ) Δ (q1 , β )→ (q2, β, l ) Q= ,q0…q2- S=q0 E=q2 Alf={x, y} Alf Cinta={x, y, β-
  • 14. 13 | L u i s A d r i a n P a r r a A v e l l a n e d a Tarea2. Validación de lenguaje 𝐿 = 𝑤 𝑤 ∈ 0,1 ∗} Δ (q0 , 0 )→ (q0, 0, r ) Δ (q0 , 1 )→ (q0, 1, r ) Δ (q0 , β )→ (q1, β, l ) Q= {q0, q1} S=q0 E=q1 Alf={a, b} Alf Cinta={a, b, β-
  • 15. 14 | L u i s A d r i a n P a r r a A v e l l a n e d a Tarea 3: Validación de lenguajes con más nivel de dificultad
  • 16. 15 | L u i s A d r i a n P a r r a A v e l l a n e d a
  • 17. 16 | L u i s A d r i a n P a r r a A v e l l a n e d a Tarea 4. Conversión entre lenguajes
  • 18. 17 | L u i s A d r i a n P a r r a A v e l l a n e d a
  • 19. 18 | L u i s A d r i a n P a r r a A v e l l a n e d a
  • 20. 19 | L u i s A d r i a n P a r r a A v e l l a n e d a
  • 21. 20 | L u i s A d r i a n P a r r a A v e l l a n e d a
  • 22. 21 | L u i s A d r i a n P a r r a A v e l l a n e d a
  • 23. 22 | L u i s A d r i a n P a r r a A v e l l a n e d a Conclusiones A través de esta unidad trabajamos con un nuevo modelo matemático, en las actividades no solo validamos lenguajes regulares, sino que también se puede validar un lenguaje no regular, solo que en este caso necesitamos viajar a los 2 lados y escribir ciertos caracteres. Además observamos que también se pueden convertir lenguajes, y realizar otros algoritmos como la conversión de binario a decimal, suma de números, etc. Al realizar las transiciones que indicaban ciertas instrucciones, observamos que es semejante a una programación en un nivel muy bajo, por eso entendemos que una máquina de Turing es la base para la computación actual. Referencias y bibliografía  Hopcroft, Ullman (1993). Introducción a la teoría de autómatas, lenguajes y computación. Editorial CECSA  Isasi, Martínez, Borrajo (1997). Lenguajes, gramáticas y autómatas, un enfoque práctico. México. Editorial Addison-wesley  Brookshear(1989). Teoría de la Computación, Lenguajes Formales, Autómatas y Complejidad. Addison Wesley.  Viso (2002). Teoría de la computación. México. Facultad de Ciencias UNAM  Kelly(2003) Teoría de Automatas y Lenguajes Formales. Prentice Hall.  Louden (2004). Construcción de compiladores, principios y práctica.