Los autómatas de pila, en forma similar a como se usan los autómatas finitos, también se pueden utilizar para aceptar cadenas de un lenguaje definido sobre un alfabeto A. Los autómatas de pila pueden aceptar lenguajes que no pueden aceptar los autómatas finitos.
Un autómata de pila cuenta con una cinta 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 estado inicial, y además algunos estados se llaman de aceptación o finales. A diferencia de los autómatas finitos, los autómatas de pila cuentan con una memoria auxiliar llamada pila. Los símbolos (llamados símbolos de pila) pueden ser insertados o extraídos de la pila, de acuerdo con el manejo last-in-first-out (LIFO).
Las transiciones entre los estados que ejecutan los autómatas de pila dependen de los símbolos de entrada y de los símbolos de la pila. El autómata acepta una cadena x si la secuencia de transiciones, comenzando en estado inicial y con pila vacía, conduce a un estado final, después de leer toda la cadena x.
La función de transición de estados de un AP puede ser representada por un diagrama donde los nodos representan los estados y los arcos transiciones. Si existe transición tipo (1), el arco queda rotulado de la siguiente manera:
Si el estado actual es ei y la cabeza lectora apunta un símbolo a, y el tope de la pila es X, entonces cambiar al nuevo estado ej, avanzar la cabeza lectora, y sustituir el símbolo del tope X en la pila por la cadena α.
Si α = ZYX deja X , apila Y, y apila Z (nuevo tope Z). donde X, Y, Z ∈ P
Si α =XX deja X y apila X (nuevo tope X).Si α =X deja X como el mismo tope (no altera la pila)
Si α =ε elimina X, y el nuevo tope es el símbolo por debajo (desapila)
No hay comentarios:
Publicar un comentario