You are on page 1of 22

Autómatas de Pila

Presentación Realizada por :


Bladimir Suárez

TUTOR:
LUIS ERNESTO BONILLA

Curso de Autómatas y Lenguajes formales


Autómata con Pila
Son parte de los autómatas finitos deterministas (AFD) con la diferencia
de que los autómatas de pila poseen memoria (Pilas).

Allí almacena símbolos de cadena de entrada, de gramática y caracteres


especiales (#) para la indicación de pila vacía.
Formalmente
𝑴 = (𝑸, 𝚺, 𝚪, 𝜹, 𝒒𝟎, 𝒁𝟎, 𝑭)
Q conjunto finito de estados
Z0 ∈ Γ símbolo inicial de pila
Σ alfabeto de entrada
F ⊆ Q conjunto de estados finales
Γ alfabeto de pila
q0 ∈ Q estado inicial
𝜹: 𝑸 × (𝚺 ∪ {𝝀}) × 𝚪 → 𝑷(𝑸 × 𝚪 ∗)
Autómata con Pila
Características
 Aceptan lenguajes que no aceptan los autómatas finitos.
 El ultimo carácter almacenado es el primero en salir
 Solo se modifica su ‘tope’, este es por donde entran y salen los caracteres.
 No se pude acceder a los caracteres que están en la mitad de la pila hasta
no quitar los que están encima.
 Tiene un alfabeto propio que podría coincidir con el alfabeto de la palabra
de entrada.
 Cuentan con una cinta de entrada y un mecanismo de control que se
encuentra en uno de sus números finitos de estados.
 es un símbolo de pila que se usa como elemento de control para detectar el
fin de la pila
 La palabra vacía & tiene diferentes funciones según la posición que ocupa
en la flecha de transición.
Si esta sobre la flecha significa que no se lee nada de la tira y por lo
tanto no avanza de posición.
El segundo lugar no extraemos nada de la pila
El tercer lugar no ponemos nada en la pila.
Propiedades autómata Pila
Propiedades Autómatas de pila determinísticos
 Un autómata de pila determinístico (APD) es un autómata de
pila M=(Q, S, U, P, qr, P) con un solo estado inicial y un
programa en el cual solo una instrucción es aplicable en una
configuración dada.
 Una cadena es aceptada por Un autómata de pila determinístico
(APD) si M tiene una secuencia de movimientos.
 Un lenguaje independiente de contexto es llamado
determinístico ,si es reconocido por algún autómata de pila
determinístico.
 Todos Los lenguajes regulares son determinísticos puesto que
todos son reconocidos por un autómata determinístico de estado
finito, el cual es un autómata determinístico de pila.
 Los lenguajes determinísticos independientes de contexto son
una subclase propia de todos los lenguajes independientes del
contexto. En Particular lenguaje.
Propiedades autómata Pila
Propiedad de cerradura (APD)
Estas propiedades difieren significativamente de aquellas de clase completa
de los lenguajes independientes de contexto. Esta clase de lenguajes su
complemento de un lenguaje determinístico es siempre un lenguaje
determinístico. Para este resultado hacemos la idea de intercambiar los
estados finales y no finales en un autómata de pila para algún lenguaje
determinístico arbitrario.
La construcción se empleo para demostrar la cerradura de los lenguajes
independientes del contexto bajo la intersección con un conjunto regular, se
aplica a los lenguajes determinísticos. Si 𝑀𝑃 es un APD pala L y 𝑀𝐹 es un
autómata finito determinístico para R, luego M es un APD para 𝐿 ∩ 𝑅.
Esta cerradura es para un traductor finito, no puede ser trasladada para
lenguajes determinísticos.
Autómata con Pila por
vaciado
Se refiere a la aceptación de una palabra o el conjunto de palabras que
permiten transitar desde el estado inicial hasta una descripción
instantánea ( es la descripción del estado del autómata) en la que tanto la
entrada como la pila estén vacías.
consiste en definir el lenguaje aceptado como el conjunto de todas las
entradas para las cuales una sucesión de movimientos ocasiona que el
autómata de pila vacíe su pila.

Aceptación por pila vacía


M = (Q, Σ, Γ, δ, q0, Z0, F)
M acepta la cadena w si (q * 0,w,Z0) (q,λ,λ)
N(M) = { w ∈Σ : (q0, w, Z0) (q, * λ, λ) }
Autómata a pila por estados finales
Designa algunos estados como estados finales y definimos el lenguaje
aceptado como el conjunto de todas las entradas para las cuales
alguna selección de movimiento ocasiona que el autómata de pila
accese un estado final.

Aceptación por estado final


M = (Q, Σ, Γ, δ, q0, Z0, F)
M acepta la cadena w si (q * 0,w,Z0) (q,λ,γ) q ∈ F, γ∈Γ*
L(M) = { w ∈Σ : (q0, w, Z0) (q, * λ, γ), q ∈ F, γ∈Γ* }
Gramática
La gramática es un ente formal para especificar, de una manera finita,
el conjunto de cadenas de símbolos que constituyen un lenguaje.
Una gramática es una estructura algebraica formada por cuatro
elementos fundamentales (Cuádrupla) :
G = { NT, T, S, P }
donde
NT es el conjunto de elementos No Terminales
T es el conjunto de elementos Terminales
S es el Símbolo inicial de la gramática
P es el conjunto de Reglas de Producción
Gramática

Características:
• Ausencia de ambigüedad, por tanto son bien definidas.
• Rigurosas (claridad, explicitud).
• Facilitan evaluación: comprobar, conclusiones, derivar.
• Hacer predicciones: generalización.
• Desarrollo de aplicaciones.
Tipos de gramáticas
Jerarquía de Chomsky
Las gramáticas generativas son modelos matemáticos finitos que nos
permiten las cadenas o palabras de un lenguaje finito o infinito, Estas se
clasifican en 4 tipos según la jerarquía de Chomsky.

Tipo Lenguaje Tipo de maquina


0 Recursivamente Enumerables Maquina de Turing
1 Sencibles al contexto Automata lineal acotado
2 Libres de contexto Automatas de Pila
Automatas finitos y
3 Regulares
Expresiones regulares
Tipos de gramáticas
Tipo 0 ‘Irrestricta’
Que no tiene ninguna restricción, su lenguaje es recursivamente enumerable.
Sea 𝐺 = (Σ 𝑇, Σ𝑁, 𝑆, 𝑃) una gramática, G es gramática tipo 0 si todas sus producciones P son del tipo:
𝒖 ∶: = 𝒗
𝒖, 𝒗 ∈ (𝜮𝑻 ∪ 𝜮𝑵 ) ∗

1. Hay que notar que un lenguaje regular siempre es un lenguaje libre de contexto

Tipo 1 ‘dependientes o sensibles al contexto’


Sea 𝐺 = (Σ 𝑇, Σ𝑁, 𝑆, 𝑃) una gramática, G es gramática tipo 1 si todas sus producciones P son del tipo: xAy: : =
xvy

 A ∈ ΣN

 x, y ∈ (ΣT 𝖴 ΣN )∗

 v ∈ (ΣT 𝖴 ΣN )+

1. Esto dice que un símbolo no terminal A se transforma en la cadena v si está flanqueado a la


izquierda por la cadena x y a la derecha por la cadena y (contexto).
2. Además, v no puede ser la cadena vacía.
Tipos de gramáticas
Gramáticas de tipo 2 (gramáticas independientes del contexto).
Sea 𝐺 = (Σ 𝑇, Σ𝑁, 𝑆, 𝑃) una gramática, G es gramática tipo 2 o libre de contexto, son
aquellas cuyas producciones tienen la forma:
 𝑨: : = 𝒗
 𝒗 ∈ (𝚺T 𝖴 𝚺𝑵 )∗
 𝑨 ∈ 𝚺𝑵

A::=λ es una producción de tipo 2.


Sin embargo, se puede demostrar que todo lenguaje generado por una gramática de tipo 2
puede ser generado por una gramática cuyas producciones tienen la forma:
1. 𝑨: : = 𝒗 𝒄𝒐𝒏 𝒗 ∈ 𝚺 + , 𝑨 ∈ 𝜮𝑵
2. 2. S::=λ siendo S el axioma de la gramática

La parte izquierda solo puede tener un símbolo A a β, Donde A en V, y β en (V U T)*


Tipos de gramáticas
Gramática de tipo 3 o regulares
Esta gramática se clasifican en 2 grupos:
Gramáticas lineales por la izquierda: Donde 𝐺 = (Σ 𝑇, Σ𝑁, 𝑆, 𝑃) Las reglas de producción de P serán de la
forma:
 A ::= a
 A ::= Va
 S ::= λ
Donde a ∈ Σ 𝑇, , 𝐴, 𝑉, 𝑆 ∈ Σ𝑁, S es el axioma de la gramática

Gramáticas lineales por la derecha: sea 𝐺 = (Σ 𝑇, Σ𝑁, 𝑆, 𝑃) Las reglas de producción de P serán de la
forma:

 A ::= a
 A ::= aV
 S ::= λ
Donde a ∈ Σ 𝑇 , 𝐴, 𝑉, 𝑆 ∈ Σ𝑁 , S es el axioma de la gramática.
En los dos casos, la ultima regla se puede aplicar si la gramática no es recursiva en S. Si se desea
considerar el lenguaje representado por la gramática a la palabra vacía, se genera una nueva transición.
Realice un ejemplo de autómata a Pila de
autoría propia
Tenemos el ejercicio
simulado en jflap de autoría
propia con el siguiente
lenguaje:
ababab.
Observamos que en la
simulación empieza desde Z
que es el inicio de la pila.

Tabla de transición

Estado Por leer Pila

q0 ababab Z
Autómata a Pila de autoría
propia
Observamos el primer paso “a”
en el estado q0 dice que se
mantiene en “a”, no quita nada a
la pila pero si agrega un 1.

Tabla de transicion
Estado Por leer Pila
q0 ababab Z
q0 babab 1Z
Autómata a Pila de autoría
propia
Al aplicar el siguiente paso
La entrada “b”, la transición me
lleva hasta q1, no me quita nada
pero si me agrega otro 1.

Tabla de transicion
Estado Por leer Pila
q0 ababab Z
q0 babab 1Z
q1 abab 11Z
Autómata a Pila de autoría
propia
Al aplicar el siguiente paso la
transición se queda en q1 con la
entrada “a”, y este me quita un 1
y no me agrega nada.

Tabla de transicion
Estado Por leer Pila
q0 ababab Z
q0 babab 1Z
q1 abab 11Z
q1 bab 1Z
Autómata a Pila de autoría
propia
Al aplicar la entrada “b” la
transición me lleva a q3, no me
quita nada, pero si me agrega un
1.

Tabla de transicion
Estado Por leer Pila
q0 ababab Z
q0 babab 1Z
q1 abab 11Z
q1 bab 1Z
q3 ab 11Z
Autómata a Pila de autoría
propia
Se realiza el siguiente paso, la
transición va hasta el estado
final q2 cuando lee “a”, le
extrae un 1, pero no le agrega
nada mas a la pila.

Tabla de transicion
Estado Por leer Pila
q0 ababab Z
q0 babab 1Z
q1 abab 11Z
q1 bab 1Z
q3 ab 11Z
q2 b 1Z
Autómata a Pila de autoría
propia
Cuando se lee “b”, se extrae un
1 de la pila quedando la pila
vacía “Z” nuevamente y se
observa que el autómata es
aceptado.

Tabla de transicion
Estado Por leer Pila
q0 ababab Z
q0 babab 1Z
q1 abab 11Z
q1 bab 1Z
q3 ab 11Z
q2 b 1Z
q2 ʎ Z
Referencias Bibliográficas
 Viñueta PI, Martínez P, Millán DB. (2001), Lenguajes,
Gramáticas y autómatas un enfoque practico, Madrid España,
Addison Wesley.
https://books.google.com.co/books?id=sfzrzxMVVMUC&pg=PA
256&lpg=PA256&dq=automata+de+pila+por+vaciado&source=b
l&ots=W4x-Wlygx7&sig=WQVPbwa7epmNhJSG1Ks5-
aT54es&hl=es&sa=X&ved=0ahUKEwja8rXKsvLWAhVB2yYK
Ha7IDJA4ChDoAQhGMAY#v=onepage&q=automata%20de%2
0pila%20por%20vaciado&f=true
 Gaudioso H, García T. (2017), Introducción a la teoría de
autómatas, gramáticas y lenguajes, Madrid España . Editorial
universitaria Ramon Areces.
 https://books.google.com.co/books?id=MBw3DwAAQBAJ&pg=
PA110&dq=Aut%C3%B3mata+a+pila+por+estados+finales&hl=
es&sa=X&ved=0ahUKEwjQwK6wuPLWAhVGPiYKHVIaDAo
Q6AEIJDAA#v=onepage&q=Aut%C3%B3mata%20a%20pila%
20por%20estados%20finales&f=false

You might also like