Documentos de Académico
Documentos de Profesional
Documentos de Cultura
aaabbbccc¬
a aabbbccc¬ De lo anterior se establece que el contenido de la pila
aa abbbccc¬ establecido por an no ha sido destruido tan solo cambiado
aaa bbbccc¬ por asteriscos y que el tope ya no queda en la parte
superior como ocurría en la pila sino al comienzo de los
aa* bbccc¬ asteriscos listo para comenzar a recorrer y contar las ces.
a** bccc¬
*** ccc¬
Máquinas de Turing
Solución
Características de la máquina solución
Generalmente se permite
∑ є Γ–{b}
Ejemplo
Se tiene la siguiente función de transición
δ( q1, a) = ( q1, b, R)
Gráficamente se la ve así:
Máquinas de Turing
Ejemplo
Realizar una máquina de Turing que reciba una secuencia de aes y bes y que cambie las
bes por aes
Solución
Q ={ q1,q2 }
∑ = { a, b }
Γ = {a,b,b}
F = {q2}
S = {q1}
Con esta notación el ejercicio anterior para una cadena abba tendrá las
siguientes transacciones
Máquinas de Turing
Notaciones empleadas
Con esta notación el ejercicio anterior para una cadena abba tendrá las
siguientes transacciones
En esta notación el estado se ubica antes del símbolo que está ubicado en la
cabeza de lectura/escritura
δ( q4, y) = ( q4, y, R)
δ( q4, b) = ( q5, b , L) q5 Es el estado de aceptación.
Máquinas de Turing
Ejercicios
Realizar una máquina de Turing que permita reconoces la secuencia
an bn n>0
El resultado final de las transiciones será lo siguiente:
δ( q1, a) = ( q2, x, R)
δ( q2, a) = ( q2, a, R)
δ( q2, b) = ( q3, y, L)
δ( q3, a) = ( q3, a, L)
δ( q3, x) = ( q1, x, R)
δ( q2, y) = ( q2, y, R)
δ( q3, y) = ( q3, y, L)
δ( q1, y) = ( q4, y, R)
δ( q4, y) = ( q4, y, R)
δ( q4, b) = ( q5, b, L)
q5 es de aceptación
Máquinas de Turing
Ejercicios
Realizar una máquina de Turing que permita reconoces la secuencia
an bn cn n>0
Ejemplo
aaabbbccc
Análisis
aaabbbccc
x x y y z z
Sigue el mismo comportamiento del ejercicio anterior, en donde se va a tener estados que
permiten marcar las a con x (q1), las b con y (q2) y la c con z (q3) respectivamente.
Entonces se van a tener estados como q1 que es de inicio marcando la a con x, un estado
q2 que avanza a buscar la b correspondiente, y marcarla con y, un estado q3, al igual que
el q2 que va a avanzar a buscar la c correspondiente para marcarla con z y cambiarse al
estado q4, para retornar a buscar nuevamente la siguiente a y volver a realizar los pasos
anteriores.
En el proceso de avanzar y retornar se tienen que colocar las transiciones correspondiente
de tal forma que se tengan en cuenta los nuevos símbolos (x,y,z) que van quedando
almacenados en la cinta.
Máquinas de Turing
Ejercicios
Realizar una máquina de Turing que permita reconoces la secuencia
an bn cn n>0
Solución
δ( q1, a) = ( q2, x, R) δ( q2, y) = ( q2, y, R)
δ( q2, a) = ( q2, a, R) δ( q3, z) = ( q3, z, R)
δ( q1, y) = ( q5, y, R)
δ( q2, b) = ( q3, y, R)
δ( q5, y) = ( q5, y, R)
δ( q3, b) = ( q3, b, R) δ( q5, z) = ( q5, z, R)
δ( q3, c) = ( q4, z, L) δ( q5, b) = ( q6, b, L)
δ( q4, b) = ( q4, b, L)
δ( q4, y) = ( q4, y, L)
δ( q4, a) = ( q4, a, L)
δ( q4, x) = ( q1, x, R)
δ( q4,z) = ( q4,z, L)
q6 es de aceptación
Máquinas de Turing
Ejercicios
Realizar una máquina de Turing que permita reconoces la secuencia
an b2n n>0
Solución
aabbbb
x x yyyy
Igual que an bnb el cambio que una a condiciona a dos bes, por lo que el estado q3 va a manejar la segunda b, para
regresarse con q4
δ( q1, a) = ( q2, x, R)
δ( q2, a) = ( q2, a, R)
δ( q2, b) = ( q3, y, R)
δ( q3, b) = ( q4, y, L)
δ( q4, y) = ( q4, y, L)
δ( q4, y) = ( q4, y, L)
δ( q4, a) = ( q4, a, L)
δ( q2, y) = ( q2, y, R)
δ( q4, x) = ( q1, x, R)
δ( q1, y) = ( q5, y, R)
δ( q5, y) = ( q5, y, R)
δ( q5, b) = ( q6, b, L)
Máquinas de Turing
Modificación de Máquinas de Turing
A la máquina de Turing básica que tiene la siguiente transición
δ: Q x Γ→ Q x Γ x {R,L}
Puede ser modificada por:
δ: Q x Γ→ Q x Γ x {R,L,S}
Donde S significa permanecer en la posición de la cinta
Por lo tanto la transición
δ(q,σ) = (p, σ , S)
pasa del estado q al estado p pero no se mueve en la cinta.
Máquinas de Turing
Modificación de Máquinas de Turing
División de las celdas de la cinta en subceldas
Cada celda está subdividida en n subceldas las cuales se pueden trabajar
independientemente con la función de transición
Ejemplo
q4 estado de aceptación
Gramáticas más generales y familias lingüísticas
Clasificación de Chomsky
Hemos visto gramáticas libres de contexto que cubren las principales
construcciones que ocurren en técnicas de lenguajes, a saber, estructuras de
paréntesis y listas jerárquicas, pero fallan con otras estructuras sintácticas incluso
simples, como la réplica o las tres potencias iguales
L = { an bncn | n ≥ 1}
Tales deficiencias han motivado, desde los primeros días de la teoría del lenguaje,
para realizar muchas investigación sobre gramáticas formales más poderosas.
Gramática tipo 0
Son gramáticas que no tienen restricciones en las producciones, estas gramáticas no tienen
relevancia en los lenguajes de programación. Escribir un analizador sintáctico es muy difícil
Nombre
Sin nombre
Forma de la reglas
Familia de lenguaje
Recursivamente enumerable
Tipo de reconocedor
Máquina de Turing
una regla de tipo 0 puede reemplazar una cadena arbitraria no vacía sobre terminales y no
terminales, con otra cadena arbitraria;
Gramáticas más generales y familias lingüísticas
Clasificación de Chomsky
Gramática tipo 1
Son gramáticas que no tienen restricciones en las producciones, estas gramáticas no
tienen relevancia en los lenguajes de programación. Escribir un analizador sintáctico es
muy difícil
Nombre
Gramáticas dependientes de contexto o sensibles al conexto
Forma de la reglas
Familia de lenguaje
Contextual o dependiente de contexto
Tipo de reconocedor
Máquina de Turing con complejidad del espacio limitada por la longitud de la cadena
de entrada
una regla de tipo 1 agrega una restricción a la forma de tipo 0: la parte derecha de una
regla debe ser al menos tan largo como la parte izquierda;
Gramáticas más generales y familias lingüísticas
Clasificación de Chomsky
Gramática tipo 2
Son gramáticas formadas por producciones independientes de contexto
Nombre
Independientes de contexto o BNF
Forma de la reglas
Familia de lenguaje
Independiente del contexto (CF) o algebraica.
Tipo de reconocedor
Autómata de pila
Gramáticas más generales y familias lingüísticas
Clasificación de Chomsky
Gramática tipo 3
Son gramáticas formadas por producciones independientes de contexto
restringidas
Nombre
Regular o unilineal (lineal por la derecha o por la izquierda).
Forma de la reglas
Familia de lenguaje
Regular REG o racional o de estado finito.
Tipo de reconocedor
Autómata finito
Gramáticas más generales y familias lingüísticas
Clasificación de Chomsky
Ejemplos gramáticas tipo 1 de lenguaje de potencia igual de tres elementos