Anda di halaman 1dari 28

Autmatas de pila (PDAs)

Integrantes: Janet Viridiana Hernndez Garca Alan Hernndez Avils Yaxum Cervantes Galindo

Contenido

Definicin de un autmata de pila. Cmo representar un diagrama de transicin para un PDA.

Descripciones instantneas de un PDA.


Ejercicio 6.1.1 inciso a) . Ejercicio para resolver en clase: Ejercicio 6.1.1 inciso b).

Definicin de un autmata de pila.


Un autmata de pila es en esencia un autmata finito no determinista con transiciones vacas y con una capacidad adicional: una pila, en la que se puede almacenar una cadena de smbolos de pila.

La presencia de una pila significa que, a diferencia el autmata finito, el autmata de pila puede "recordar" una cantidad infinita de informacin. El autmata de pila slo puede acceder a la informacin de su pila de la forma LIFO (El ltimo en entrar es el primero en salir).

Definicin formal
Siete componentes:

P=<Q, , , , 0 , 0 , F>
Q: Conjunto finito de estados : Conjunto finitos de smbolos de entrada. : Alfabeto de pila finito. : Funcin de transicin. 0 : Smbolo inicial. F: Estados finales

Entrada

Unidad de Control

Aceptar/rechazar

Pila

Una "Unidad de control lee cada vez un smbolo de entrada .El autmata solo observa el smbolo que est en lo alto de la pila y basa su transicin en el estado actual, el smbolo de entrada y el smbolo de lo alto de la pila. Alternativamente, podra hacer una transicin "espontanea" usando como entrada en vez de leer un smbolo de entrada.

En un transicin de autmata de pila: 1.- Consume de la entrada el smbolo que usa en la transicin. Si se usa como entrada no se consume ningn smbolo. 2.- Pasa a un nuevo estado, que podra ser o no el mismo que el estado anterior.

3.-Reemplaza el smbolo que est en lo alto de la pila por cualquier cadena. Esta podra ser , que corresponde a un extraccin de pila. Podra ser el mismo smbolo que apareca en lo alto de la pila, o se podra reemplazar con cualquier otro smbolo. Pero no se elemento. quita ni se aade ningn

Finalmente, el smbolo de lo alto de la pila podra ser reemplazado por dos o ms smbolos.

Ejemplo 6.2
Diseemos un autmata de pila P que acepte el lenguaje siguiente:
= | ( + ) Utilizaremos el smbolo de pila Z0 para indicar el fondo de la pila. Necesitaremos tener este smbolo para despus de sacar w del fondo de la pila y darnos cuenta de que hemos visto en la entrada, an tengamos disponible algo en la pila para poder hacer la transicin al estado de aceptacin q2. As , el autmata de pila para puede describirse como: = ( 0 , 1 , 2 , 0,1 , 0,1, 0 , , 0 , 0 , 2 )

Dnde tiene las siguientes reglas:

1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.

0 , 0, 0 = { 0 , 00 } 0 , 1, 0 = { 0 , 10 } 0 , 0,0 = { 0 , 00 } 0 , 0,1 = 0 , 01 0 , 1,0 = 0 , 10 0 , 1,1 = { 0 , 11 } 0 , , 0 = 1 , 0 0 , , 0 = 1 , 0 0 , , 1 = 1 , 1 1 , 0,0 = 1 , 1 , 1,1 = 1 , 1 , , 0 = 2 , 0

Una de estas dos se aplica al inicio cuando estamos en q0, y vemos Z0 en la cima de la pila, leemos la entrada y dejamos Z0 en el fondo. Estas 4, dejan estar en el estado q0, leen entradas y apilan los datos en la pila.

La entrada permite a P pasar del estado q0 al estado q2, dejando intacto el estado de la pila

En el estado q1 podemos emparejar las entradas con datos de cima de la pila y eliminarlos. de la forma , pasamos al estado q2 y aceptamos.

Si aparece Z0 y estamos en q1, hemos encontrado una entrada

Ejemplo 6.3
Representar el autmata de pila del ejemplo 6.2

Ejemplo 6.3
Representar el autmata de pila del ejemplo 6.2

Ejemplo 6.3
Representar el autmata de pila del ejemplo 6.2
0, Z0 / 0Z0 1, Z0 / 1Z0 0, 0 / 00 0, 1 / 01 1, 0 / 10 1, 1 / 11 Representacin en diagrama

0 , 0, 0 0 , 1, 0 0 , 0,0 0 , 0,1 0 , 1,0 0 , 1,1 Reglas para

= 0 , 00 = { 0 , 10 } = { 0 , 00 } = 0 , 01 = 0 , 10 = { 0 , 11 } el estado cero

Ejemplo 6.3
Representar el autmata de pila del ejemplo 6.2

0 , , 0 = 1 , 0 0 , , 0 = 1 , 0 0 , , 1 = 1 , 1 Reglas para transicin a estado 1

, Z0 / Z0 ,0/0 ,1/1 Representacin en diagrama

Ejemplo 6.3
Representar el autmata de pila del ejemplo 6.2

1 , 0,0 = 1 , 1 , 1,1 = 1 , Reglas para estado 1

0, 0 / 1, 1 / Representacin en diagrama

Ejemplo 6.3
Representar el autmata de pila del ejemplo 6.2

1 , , 0 = 2 , 0 Reglas para transicin a estado 2

, Z0 / Z0 Representacin en diagrama

Ejemplo 6.3
Representar el autmata de pila del ejemplo 6.2

Descripciones instantneas

A diferencia de los autmatas finitos, necesitamos saber el estado de la pila Usamos esta notacin para definir la configuracin del autmata
el estado actual la entrada restante contenido de la pila (mostrada de izquierda a derecha)

Descripciones instantneas

Sea transicin al estado siguiente

un autmata de pila se define

como la

*Ntese que solo afecta el alto de la pila, lo dems solo esta para futuras acciones del autmata

Ejemplo 6.4

Considerando el autmata del ejemplo anterior con


Entrada 1111 Simbolo inicial de la pila Z0 y estado unicial q0

Ejemplo 6.4

Ejemplo 6.4

*configuracin para estado meta

Convenciones de notacin

Smbolos del alfabeto de entrada se representan con las minsculas del principio del alfabeto (a,b,c) Estados con q y p u otras letras cercanas en orden alfabtico Cadenas de entrada con letras minsculas del final del alfabeto Smbolos de la pila con letras maysculas del final del alfabeto (X o Y) cadenas de smbolos de la pila con letras griegas ( o )

(x, y, w)

Ejercicio 6.1.5
Suponer que el autmata de pila:
= ( , , 0,1 , 0 , , , , 0 , )

Con las siguiente funcin de transicin:


1. 2. 3. 4. 5. 6. 7.
, 0, 0 , 0, , 1, , , , , , 1, , 1, 0 = = = = = = = , 0 , , , , , ,

A partir de la configuracin inicial (q,w,Z0) mostrar las configuraciones alcanzables, cuando w es: a) 01 b) 0011

Ejercicio 6.1.5
= ( , , 0,1 , 0 , , , , 0 , )
1. 2. 3. 4. 5. 6. 7.
, 0, 0 , 0, , 1, , , , , , 1, , 1, 0 = = = = = = = , 0 , , , , , , 0, Z0 / XZ0 0,X / XX 1, X / X , X / 1, X / XX 1, Z0 /

a)

01

, X /

Ejercicio 6.1.5
= ( , , 0,1 , 0 , , , , 0 , )

1. 2. 3. 4. 5. 6. 7.

, 0, 0 , 0, , 1, , , , , , 1, , 1, 0

= = = = = = =

, 0 , , , , , ,

(q, 01 , Z0 )

(q, 1 , XZ0 )

(P, 01 , Z0 )

(q, , XZ0)

(q, , XZ0 )

(p, , Z0) Configuraciones alcanzables por el autmata de pila.

(q, 01 , Z0) (q, 1 , XZ0 ) (q, , XZ0) (p, , Z0)

Ejercicio 6.1.5
= ( , , 0,1 , 0 , , , , 0 , )

1. 2. 3. 4. 5. 6. 7.

, 0, 0 , 0, , 1, , , , , , 1, , 1, 0

= = = = = = =

, 0 , , , , , ,

b)

0011

Anda mungkin juga menyukai