Autómatas de Pila
-
Upload
vikkyyesenia5590 -
Category
Documents
-
view
699 -
download
14
Transcript of Autómatas de Pila
![Page 1: Autómatas de Pila](https://reader035.fdocument.pub/reader035/viewer/2022081506/5571f80c49795991698c83f5/html5/thumbnails/1.jpg)
AUTÓMATAS DE PILA…Añadiendo memoria a la máquina conceptual.
![Page 2: Autómatas de Pila](https://reader035.fdocument.pub/reader035/viewer/2022081506/5571f80c49795991698c83f5/html5/thumbnails/2.jpg)
DEFINICIÓN DE LOS AUTÓMATAS DE PILAAl igual que un autómata finito cuenta con un flujo de entrada y un mecanismo de control que puede encontrarse en uno de entre un número finito de estados. Uno de estos estados se designa como el inicial y por lo menos un estado se designa como estado de aceptación.
![Page 3: Autómatas de Pila](https://reader035.fdocument.pub/reader035/viewer/2022081506/5571f80c49795991698c83f5/html5/thumbnails/3.jpg)
DIFERENCIA
![Page 4: Autómatas de Pila](https://reader035.fdocument.pub/reader035/viewer/2022081506/5571f80c49795991698c83f5/html5/thumbnails/4.jpg)
Símbolos de pila de la máquina: Símbolos que pueden almacenarse en la pila que constituyen un conjunto finito que puede incluir algunos o todos los símbolos del alfabeto de la máquina y quizá algunos símbolos adicionales que la máquina utiliza como marcas internas.
Indicador de pila vacía: Símbolo especial en la pila antes de efectuar algún otro cálculo posterior. Ejemplo: #.
![Page 5: Autómatas de Pila](https://reader035.fdocument.pub/reader035/viewer/2022081506/5571f80c49795991698c83f5/html5/thumbnails/5.jpg)
TRANSICIONES DE UN AUTÓMATA DE PILA
Deben ser variantes de la secuencia básica: Leer un símbolo de entrada,Extraer un símbolo de la pila,Insertar un símbolo de la pila yPasar a un nuevo estado.
![Page 6: Autómatas de Pila](https://reader035.fdocument.pub/reader035/viewer/2022081506/5571f80c49795991698c83f5/html5/thumbnails/6.jpg)
Este proceso se representa con la notación
(p, x, s; q, y)Dondep es el estado actual,x es el símbolo de alfabeto que se lee
de la entrada,s es el símbolo que se extrae de la
pila,q es el nuevo estado yy es el símbolo que se inserta en la
pila.
![Page 7: Autómatas de Pila](https://reader035.fdocument.pub/reader035/viewer/2022081506/5571f80c49795991698c83f5/html5/thumbnails/7.jpg)
NOTACIÓN
Autómata de Pila
(p, x, s; q, y)
Estado Actual
Símbolo del alfabeto que se lee
Símbolo que se extrae de la pila
Nuevo Estado
Símbolo que se inserta en la pila
![Page 8: Autómatas de Pila](https://reader035.fdocument.pub/reader035/viewer/2022081506/5571f80c49795991698c83f5/html5/thumbnails/8.jpg)
EJEMPLO:
(1, λ, λ, 2, #) (3, λ, #, 4, λ)(2, x, λ, 2, x)(2, y, x, 3, λ)(3, y, x, 3, λ)
![Page 9: Autómatas de Pila](https://reader035.fdocument.pub/reader035/viewer/2022081506/5571f80c49795991698c83f5/html5/thumbnails/9.jpg)
EJEMPLO:
(0, λ, λ; 1, #)
0 λ, λ; # 1
![Page 10: Autómatas de Pila](https://reader035.fdocument.pub/reader035/viewer/2022081506/5571f80c49795991698c83f5/html5/thumbnails/10.jpg)
UN AUTÓMATA DE PILA ES UNA SÉXTUPLA(s,∑,г,T,і,F), donde:
S es una colección finita de estados.
∑ es el alfabeto de la máquina.
Г es la colección finita de símbolos de pila.
T es una colección finita de transiciones.i (un elemento de S) es el estado inicial.F (Un subconjunto de S) es la colección de
estados de aceptación.
![Page 11: Autómatas de Pila](https://reader035.fdocument.pub/reader035/viewer/2022081506/5571f80c49795991698c83f5/html5/thumbnails/11.jpg)
APLICACIÓN DE LOS AUTÓMATAS DE PILA
Se pueden utilizar para analizar cadenas, en forma similar a como se usan los autómatas finitos.
![Page 12: Autómatas de Pila](https://reader035.fdocument.pub/reader035/viewer/2022081506/5571f80c49795991698c83f5/html5/thumbnails/12.jpg)
La terminología común no hace énfasis en la naturaleza no determinista de los autómatas de pila. Técnicamente, deberían llamarseAutómatas de pila no deterministas.
Los lenguajes aceptados por los autómatas de pila incluyen los lenguajes regulares.
![Page 13: Autómatas de Pila](https://reader035.fdocument.pub/reader035/viewer/2022081506/5571f80c49795991698c83f5/html5/thumbnails/13.jpg)
LOS AUTÓMATAS DE PILA ACEPTAN LENGUAJES QUE NO PUEDEN ACEPTAR LOS AUTÓMATAS FINITOS.
Inserción del símbolo de pila vacía. Luego, la máquina extrae una X por cada Y que se lee. Al final extrae absolutamente todos los símbolos.
![Page 14: Autómatas de Pila](https://reader035.fdocument.pub/reader035/viewer/2022081506/5571f80c49795991698c83f5/html5/thumbnails/14.jpg)
TEOREMA 2.1
Para cada autómata de pila que acepte cadenas sin vaciar su pila, existe un autómata que acepta el mismo lenguaje pero que vacía su pila antes de llegar a un estado de aceptación.
Demostración:Suponga que M=(s,∑,г,T,і,F) es un autómata de pila que acepta cadenas sin tener que vaciar necesariamente su pila. Podemos modificar M de la manera siguiente:
![Page 15: Autómatas de Pila](https://reader035.fdocument.pub/reader035/viewer/2022081506/5571f80c49795991698c83f5/html5/thumbnails/15.jpg)
1. Elimine la designación “inicial” del estado inicial de M. Luego añada un nuevo estado inicial y una transición que permita a M pasar del nuevo estado inicial al anterior a la vez que inserta en la pila un símbolo especial # (que no se encontraba anteriormente en г).
1 2
X, λ; X
Y, X; λ
Y, X; λ
![Page 16: Autómatas de Pila](https://reader035.fdocument.pub/reader035/viewer/2022081506/5571f80c49795991698c83f5/html5/thumbnails/16.jpg)
2. Elimine la característica de aceptación de cada estado de aceptación de M. Luego, añada un estado p junto con las transiciones que permiten a la máquina pasar de cada uno de los antiguos estados de aceptación a p sin leer, extraer o insertar un símbolo.
1 2
X, λ; X
Y, X; λ
Y, X; λ
iλ, λ; #
pλ, λ; λ
![Page 17: Autómatas de Pila](https://reader035.fdocument.pub/reader035/viewer/2022081506/5571f80c49795991698c83f5/html5/thumbnails/17.jpg)
3. Para cada x en г (sin incluir #), introduzca la transición (p,λ,x;p, λ).
4. Añada un nuevo estado de aceptación q y la transición (p,λ,#;q, λ).
1 2
X, λ; X
Y, X; λ
Y, X; λ
iλ, λ; #
pλ, λ; λ
λ, X; λ
qλ, #; λ
q
![Page 18: Autómatas de Pila](https://reader035.fdocument.pub/reader035/viewer/2022081506/5571f80c49795991698c83f5/html5/thumbnails/18.jpg)
DIFERENCIA
1 2
X, λ; X
Y, X; λ
Y, X; λ
1 2
X, λ; X
Y, X; λ
Y, X; λ
iλ, λ; #
pλ, λ; λ
λ, X; λ
qλ, #; λ
q
![Page 19: Autómatas de Pila](https://reader035.fdocument.pub/reader035/viewer/2022081506/5571f80c49795991698c83f5/html5/thumbnails/19.jpg)
EJERCICIO:
Diseñe un autómata de pila M tal que L(M)={XnYmXn:m,nЄN}
1 2
X, λ; X
Y, X; Y
Y, X; Y
iλ, λ; # p
λ, λ; λ
λ, Y; λ
λ, #; λq3X, Y;
λ
X,Y; λ
q
![Page 20: Autómatas de Pila](https://reader035.fdocument.pub/reader035/viewer/2022081506/5571f80c49795991698c83f5/html5/thumbnails/20.jpg)
GRAMÁTICAS INDEPENDIENTES DEL CONTEXTO
![Page 21: Autómatas de Pila](https://reader035.fdocument.pub/reader035/viewer/2022081506/5571f80c49795991698c83f5/html5/thumbnails/21.jpg)
![Page 22: Autómatas de Pila](https://reader035.fdocument.pub/reader035/viewer/2022081506/5571f80c49795991698c83f5/html5/thumbnails/22.jpg)
![Page 23: Autómatas de Pila](https://reader035.fdocument.pub/reader035/viewer/2022081506/5571f80c49795991698c83f5/html5/thumbnails/23.jpg)
![Page 24: Autómatas de Pila](https://reader035.fdocument.pub/reader035/viewer/2022081506/5571f80c49795991698c83f5/html5/thumbnails/24.jpg)
![Page 25: Autómatas de Pila](https://reader035.fdocument.pub/reader035/viewer/2022081506/5571f80c49795991698c83f5/html5/thumbnails/25.jpg)
![Page 26: Autómatas de Pila](https://reader035.fdocument.pub/reader035/viewer/2022081506/5571f80c49795991698c83f5/html5/thumbnails/26.jpg)
![Page 27: Autómatas de Pila](https://reader035.fdocument.pub/reader035/viewer/2022081506/5571f80c49795991698c83f5/html5/thumbnails/27.jpg)
![Page 28: Autómatas de Pila](https://reader035.fdocument.pub/reader035/viewer/2022081506/5571f80c49795991698c83f5/html5/thumbnails/28.jpg)
![Page 29: Autómatas de Pila](https://reader035.fdocument.pub/reader035/viewer/2022081506/5571f80c49795991698c83f5/html5/thumbnails/29.jpg)
![Page 30: Autómatas de Pila](https://reader035.fdocument.pub/reader035/viewer/2022081506/5571f80c49795991698c83f5/html5/thumbnails/30.jpg)
FUENTES
http://fcqi.tij.uabc.mx/docentes/omendoza/tc/index.php?opcion=Lenguajes+Libres+de+Contexto