Un autómata pushdown integrado o EPDA es un modelo computacional para analizar lenguajes generados por gramáticas adyacentes a árboles (TAG). Es similar al autómata pushdown de análisis de gramática libre de contexto , pero en lugar de usar una pila simple para almacenar símbolos, tiene una pila de pilas iteradas que almacenan símbolos, lo que le da a los TAG una capacidad generativa entre las gramáticas libres de contexto y las gramáticas sensibles al contexto , o un subconjunto de gramáticas ligeramente sensibles al contexto . Los autómatas pushdown integrados no deben confundirse con los autómatas de pila anidada que tienen más poder computacional. [ cita requerida ]
Las EPDA fueron descritas por primera vez por K. Vijay-Shanker en su tesis doctoral de 1988. [1] Desde entonces se han aplicado a descripciones más completas de clases de gramáticas ligeramente sensibles al contexto y han tenido papeles importantes en el refinamiento de la jerarquía de Chomsky . De este modo, se pueden definir varias subgramáticas, como la gramática indexada lineal . [2]
Si bien los lenguajes naturales se han analizado tradicionalmente utilizando gramáticas independientes del contexto (ver gramática transformacional-generativa y lingüística computacional ), este modelo no funciona bien para lenguajes con dependencias cruzadas, como el holandés, situaciones para las cuales un EPDA es adecuado. Un análisis lingüístico detallado está disponible en Joshi, Schabes (1997). [3]
Una EPDA es una máquina de estados finitos con un conjunto de pilas a las que se puede acceder a través de la pila incorporada . Cada pila contiene elementos del alfabeto de pila , por lo que definimos un elemento de una pila como , donde la estrella es el cierre de Kleene del alfabeto.
Cada pila puede definirse en términos de sus elementos, por lo que denotamos la pila n. º en el autómata utilizando un símbolo de doble daga: , [ aclaración necesaria ] donde sería el siguiente símbolo accesible en la pila. La pila de pilas incrustada puede denotarse por . [ aclaración necesaria ]
Definimos una EPDA por el séptuplo (7-tupla)
Por lo tanto, la función de transición toma un estado, el siguiente símbolo de la cadena de entrada y el símbolo superior de la pila actual y genera el siguiente estado, las pilas que se insertarán y extraerán de la pila incorporada , la inserción y extracción de la pila actual y las pilas que se considerarán las pilas actuales en la siguiente transición. De manera más conceptual, la pila incorporada se inserta y extrae, la pila actual se inserta opcionalmente de nuevo en la pila incorporada y cualquier otra pila que se desee se inserta encima de esa, siendo la última pila la que se lea en la siguiente iteración. Por lo tanto, las pilas se pueden insertar tanto por encima como por debajo de la pila actual.
Una configuración dada se define por
donde es el estado actual, las s son las pilas en la pila incrustada , con la pila actual, y para una cadena de entrada , es la porción de la cadena ya procesada por la máquina y es la porción a procesar, siendo su cabeza el símbolo actual leído. Nótese que la cadena vacía se define implícitamente como un símbolo de terminación, donde si la máquina está en un estado final cuando se lee la cadena vacía, se acepta toda la cadena de entrada , y si no, se rechaza . Tales cadenas aceptadas son elementos del lenguaje
donde y define la función de transición aplicada tantas veces como sea necesario para analizar la cadena.
También se puede encontrar una descripción informal de EPDA en Joshi, Schabes (1997), [3] Sect.7, p. 23-25.
David J. Weir definió una jerarquía más precisa de lenguajes que corresponden a la clase ligeramente sensible al contexto. [4] Basado en el trabajo de Nabil A. Khabbaz, [5] [6] La jerarquía de lenguaje de control de Weir es una jerarquía de contención de un conjunto contable de clases de lenguaje [ aclarar ] donde el Nivel 1 se define como libre de contexto, y el Nivel 2 es la clase adyacente al árbol y las otras tres gramáticas.
A continuación se presentan algunas de las propiedades de los lenguajes de nivel k en la jerarquía:
Esas propiedades corresponden bien (al menos para k pequeños > 1) a las condiciones de los lenguajes ligeramente sensibles al contexto impuestas por Joshi, y a medida que k se hace más grande, la clase de lenguaje se vuelve, en cierto sentido, menos ligeramente sensible al contexto.