Académique Documents
Professionnel Documents
Culture Documents
Universidad de Cantabria
Esquema
Introduccin
Los autmatas son abstracciones de maquinas de calcular, como hemos visto. Los ms sencillos no tienen acceso a memoria y por ello tienen sus limitaciones.
Introduccin
Si aadimos acceso a una cantidad nita de memoria, no hay ninguna ganancia, ya que se puede utilizar los autmatas nitos tambin para simular estos procesos.
Introduccin
Por lo tanto autmatas ms generales tienen que tener memoria innita, pero las diferencias estn en como se accede a los contenidos de esa memoria. Esta leccin estar dedicada a los autmatas que tienen una memoria que funciona como un stack o una pila.
Stacks
Podemos identicar las pilas con ciertos lenguajes y ciertas funciones sobre un alfabeto del modo siguiente. Comenzaremos aadiendo un nuevo smbolo Z0 que no est en . Las pilas (stacks) son elementos del lenguaje: Z0 . El smbolo Z0 se identicar con el signicado Fondo de la Pila.
Stacks
El fondo de la pila es un elemento que se puede leer, se puede sacar pero no se puede volver a introducir. Los elementos de la pila se colocaran de izquierda a la derecha, esto es los elementos del fondo son los los que estn ms a la izquierda. Como anticipo diremos que los elementos se irn introduciendo uno a uno, colocandolos a la izquierda.
empty: Denimos la aplicacin empty : Z0 {0, 1}, dada mediante: empty ( ) := 1, si = 0, en otro caso
top: Denimos la aplicacin top : Z0 {}, mediante la regla siguiente: Dada una pila Z0 Z0 (con = w1 wn ), top(Z0 w ) := wn , si = w1 wn , Z0 = , en caso contrario
push: Apilar (empujar) una pila encima de otra. Denimos la aplicacin push : Z0 Z0 , mediante la regla siguiente: Dada una pila Z0 Z0 (con = w1 wn ), y una palabra a , dada mediante: a := a1 ar , denimos push(Z0 , a) := Z0 w1 wn a1 ar Z0 .
Propiedad Bsica
Una de las propiedades bsicas de las operaciones es, obviamente, la siguiente: push(pop(Z0 ), top(Z0 )) = Z0 .
Denicin
Denicin (NonDeterministic Pushdown Automata) Un autmata con pila (o pushdown autmata) indeterminista es una lista A := (Q , , , Q0 , F , Z0 , ) donde: Q es el conjunto de estados y que suele denominarse espacio de estados, y Q0 es el estado inicial, y son conjuntos nitos donde Z0 y es llamado el fondo de la pila, F es el subconjunto de Q de estados nales aceptadores, es una correspondencia: : Q ( {}) () P (Q ), que se denomina funcin de transicin.
Autmatas con Pila
Propiedad Adicional
La funcin de transicin debe vericar la propiedad siguiente para cada lista (q , x , A) Q ( {}) ( {Z0 }): {(p, ) Q : (p, ) (q , x , A)} < . Es decir, slo un nmero nito de elementos de Q estarn relacionados con cada elemento (q , x , A) mediante la funcin de transicin.
Propiedad Adicional
Ntese que hemos supuesto que la funcin de transicin tiene su rango (el conjunto hacia el que va a parar) en Q . Esta condicin nos dir (ms adelante) que no podemos escribir en la pila el smbolo de fondo de pila nada ms que cuando se escriba en la conguracin inicial. Podremos, sin embargo, leerlo. No estar, en ningn caso, en medio de la pila.
Determinismo
El determinismo en autmatas con pila diere del caso de autmatas nitos. No vamos a exigir que sea aplicacin sino algo ms delicado.
Determinismo
Determinismo
La imagen de cualquier lectura contiene a lo sumo 1 elemento. Es decir, para cualesquiera (q , x , A) Q ( {}) ( {Z0 }), el conjunto de los elementos relacionados con l a travs de tiene, a lo sumo, 1 elemento: ({(p, ) Q : (p, ) (q , x , A) = (p, )}) 1.
Determinismo
Si dados q Q y A , existieran (p, ) Q tales que (q , , A) = (q , ), entonces, ninguno de los elementos de Q ( {Z0 }) tiene imagen por . Es decir, si {(p, ) Q : (p, ) (q , , A)} = 1, entonces {(p, ) Q : (p, ) (q , x , A)} = 0.
x
Determinismo
No es cierto, en el caso de autmatas con pila, que todo autmata con pila indeterminista sea equivalente a un autmata con pila determinista. As, el siguiente lenguaje es aceptado por un autmata con pila indeterminista, pero no puede ser aceptado por un autmata con pila determinista: L := {an bm c n : n, m 1} {an bm c m : n, m 1} {a, b, c } .
Determinismo
No todos los autmatas deterministas acaban en un tiempo nito. Son mucho ms complejos que los nitos, ya que estos pueden entrar en ciclos.