Anda di halaman 1dari 24

Introduccin

El Algoritmo de Earley constituye un mtodo universal para la realizacin del Anlisis Sintctico, proceso consistente en determinar si una cadena constituida por una serie de componentes lxicos puede ser generada por una determinada gramtica. El proceso se realiza de acuerdo a una estrategia ascendente con filtrado descendente, en base a la cual se efecta el contraste entre las reglas de produccin definidas para la gramtica y la frase de entrada considerada, comenzando por la regla de produccin de nivel superior, es decir, aquella que describe al smbolo raz de la gramtica, y aplicando de manera recursiva aquellas reglas ms especficas. El anlisis sintctico finaliza con xito en caso de que resulte posible construir una representacin de la frase de entrada considerada. Las estrategias simples de anlisis sintctico se encuentran afectadas por tres tipos de ineficiencia computacional:

Recursividad por la izquierda

La utilizacin de una gramtica recursiva por la izquierda impide la realizacin de un proceso de anlisis sintctico descendente, por lo que se requiere la aplicacin de una transformacin previa para poder efectuar un procedimiento de estas caractersticas.

Ambigedad estructural

Una gramtica ambigua es aquella que genera ms de un rbol sintctico para una determinada frase de entrada. Algunos tipos de analizadores sintcticos utilizan preferentemente gramticas no ambiguas, con lo que la supresin de esta

caracterstica de la gramtica suele ser conveniente para eliminar la incertidumbre.

Anlisis repetido de subestructuras

Este inconveniente se genera como consecuencia de la aplicacin del procedimiento denominado retroceso o backtracking durante la realizacin del anlisis sintctico. La tcnica de backtracking consiste en efectuar, durante el desarrollo del anlisis sintctico, el regreso a un estado anterior, como consecuencia del cual se produce la prdida de determinadas estructuras generadas en la opcin rechazada. Una solucin a este problema radica en elaborar una tabla dinmica globalmente accesible, en la cual almacenar aquellas estructuras parciales obtenidas durante el proceso de anlisis sintctico. Esto permite que cada una de estas subestructuras sea analizada y generada solamente en una ocasin, siendo posible que el analizador sintctico efecte su reutilizacin en el momento en que resulte necesario volver a analizar un determinado elemento constituyente. Los algoritmos de anlisis sintctico que utilizan esta tcnica son tres: Algoritmo de Earley. Algoritmo de Cocke-Younger-Kasami (CYK). Algoritmo de Graham-Harrison-Ruzzo (GHR).

El Algoritmo de Earley se define como un mtodo universal de anlisis sintctico, que resulta aplicable a cualquier Gramtica de Contexto Libre. Se caracteriza por la utilizacin de tcnicas de programacin dinmica, mediante las cuales el problema original se descompone en una serie de subproblemas que son abordados de manera independiente; los resultados intermedios obtenidos para los diferentes subproblemas se almacenan en una tabla, con el objetivo de que puedan ser reutilizados en tantas ocasiones como resulte necesario sin necesidad de volverlos a calcular. Las

soluciones a dichos subproblemas individuales se combinan de forma adecuada para generar la solucin al problema propuesto inicialmente.

Algoritmo de Earley
El Algoritmo de Earley, desarrollado en el ao 1970 como resultado de la Tesis Doctoral elaborada por su autor, Jay Clark Earley, en la Universidad de Carnegie Mellon, realiza un Anlisis Sintctico Descendente que se caracteriza porque todos los anlisis parciales efectuados se almacenan en una tabla, con el fin de no repetir el proceso de estudio de dichos elementos constituyentes en fases posteriores de la derivacin. Una solucin parcial previamente analizada se puede localizar rpidamente en una tabla construida dinmicamente, lo cual permite la reutilizacin, evitando la reconstruccin de las diferentes soluciones parciales en el momento en que stas se necesitan de nuevo. Esto permite reducir el tiempo de ejecucin del algoritmo, incrementando considerablemente su velocidad y eficiencia. El Algoritmo de Earley reduce la complejidad exponencial del proceso de anlisis a una complejidad polinomial, dependiente de la longitud de la cadena de entrada. Para una longitud de oracin igual a n, su complejidad en el peor de los casos es cbica, O(n3), si bien en numerosas circunstancias es lineal, O(n). La reduccin de la complejidad exponencial caracterstica de los algoritmos basados en backtracking se obtiene eliminando la repeticin de los clculos, mediante la utilizacin de la tabla dinmica dedicada al almacenamiento de las estructuras parciales. Un analizador sintctico Earley construye, para una gramtica G y una cadena de entrada constituida por n palabras, representada por a1 an, una secuencia de n+1 conjuntos de elementos, denominados itemsets, los cuales se almacenan como entradas en una tabla dinmica que recibe el nombre de chart. Este array se completa de izquierda a derecha, avanzndose en el mismo a medida que se obtienen nuevos componentes de la frase de entrada. En cada una de las entradas de la tabla se registra

una lista de estados, los cuales representan las subestructuras derivadas hasta el momento actual del proceso de anlisis, es decir, los rboles de anlisis parcial que es posible construir hasta la correspondiente posicin de la frase de entrada. En el momento en que se produce la finalizacin de la frase de entrada, es decir, el proceso de derivacin, el chart codifica de manera compacta todos los posibles anlisis efectuados sobre la misma, as como los diferentes subrboles parciales generados. La informacin almacenada en cada uno de los estados recogidos en las diferentes entradas del chart constituye una hiptesis sobre una determinada subcadena particular existente en la cadena de entrada al proceso de anlisis sintctico. Esta hiptesis presenta la forma de una regla o produccin de la gramtica, incluyendo adems una anotacin que especifica el fragmento de dicha hiptesis que se encuentra confirmado hasta el momento. La estructura de estos estados registrados en la tabla dinmica se puede considerar, por tanto, como un par de la forma Regla Gramatical, Posicin.

El elemento Regla Gramatical est constituido a su vez por un

par constituido por los elementos LIG, LDG, los cuales representan un smbolo no terminal de la gramtica (LIG) y una secuencia de smbolos terminales y no terminales (LDG). Generalmente, el par LIG, LDG se escribe de la forma LIGLDG. La secuencia de categoras recogidas en el elemento LDG se encuentra dividida en dos fragmentos por medio de un punto (). Los elementos situados a la derecha de este smbolo representan la secuencia de smbolos que todava debe ser verificada en dicho estado, la cual se conoce con el nombre de resto. La utilizacin de esta categora de reglas permite representar el reconocimiento parcial de producciones mediante la utilizacin de reglas con punto, a diferencia de lo que ocurre en otros algoritmos, como por ejemplo

CYK, en los cuales nicamente est permitido representar reglas de produccin completas, y adems resulta necesario generar elementos a partir de otros elementos mediante la aplicacin de un solo paso deductivo predictivo. El elemento Posicin tambin representa un par de la forma Inicio, Fin, en el cual se registra la posicin inicial y final correspondiente al fragmento en que se encuentra cubierto dicho estado, en relacin con los elementos constituyentes de la cadena de entrada.

El significado asociado a un estado es el siguiente: la subcadena de la oracin de entrada que se encuentra abarcada por el par Posicin podra considerarse como equivalente a la produccin LIG, en el caso de que la secuencia de smbolos situada a continuacin del punto (el resto) se localizara a la derecha de la misma. La notacin utilizada en el Algoritmo de Earley para la representacin de cada uno de los diferentes estados individuales recogidos en el chart consiste en una tupla de la forma [A , i, j], donde: El elemento A representa la regla de produccin de la gramtica aplicada para realizar la derivacin de la subestructura.

Estas reglas de produccin se conocen con el nombre de dotted rules, reglas en las que aparece un punto () en la parte derecha indicando el fragmento reconocido hasta un determinado momento. La notacin utilizada indica que la parte de la regla de produccin A P ya ha sido reconocida durante el proceso de anlisis. Este componente del estado proporciona informacin relativa al subrbol asociado a una determinada regla de la gramtica, as como informacin sobre el progreso realizado en la construccin del mismo.

Los elementos i, j representan la posicin de inicio y la posicin de fin de la subestructura.

Estos ndices expresan en qu entradas de la tabla dinmica, o posiciones de la frase de entrada, comienza y termina el fragmento del subrbol construido hasta el momento. El elemento i representa un puntero de retroceso, o backpointer, que indica el itemset en el cual se inici el reconocimiento de la produccin A . El elemento j representa el ndice de terminacin, que indica que el tem considerado pertenece al itemset, es decir, a la entrada de la tabla dinmica, especificada por el valor correspondiente. Los estados siempre verifican la siguiente propiedad: ai+1aj y j i 0 .
*

Los estados recogidos en la tabla dinmica se organizan en dos categoras: estados activos y estados inactivos.
Los estados inactivos se corresponden con reglas que se han aplicado hasta el final, generando una subestructura completa; por lo tanto, el elemento resto, situado a la derecha del punto (), se encuentra vaco. Los estados inactivos se conocen tambin con el nombre de hiptesis pasivas. Los estados activos se corresponden con reglas que se han aplicado slo de manera parcial. Aquel fragmento de la regla no aplicado, es decir, el resto, se representa precedido por un punto (). Los estados activos se conocen tambin con el nombre de hiptesis activas.

El proceso de anlisis sintctico comienza con la creacin del elemento [S , 0, 0] perteneciente al itemset 0, donde S P representa una regla de produccin perteneciente a la gramtica. Este estado se conoce con el nombre de

semilla. A partir de este momento, el Algoritmo de Earley realiza, bsicamente, las siguientes operaciones sobre el chart: Recorrido de izquierda a derecha de los n+1 estados del chart. Procesamiento en orden de los diferentes estados correspondientes a cada entrada.

El procesamiento de los estados registrados en el chart conlleva la agregacin de nuevos estados al final de la tabla dinmica construida. El procesamiento a realizar sobre los diferentes estados consiste en la aplicacin de alguno de los tres operadores definidos en el algoritmo, los cuales se denominan: Predecir (Predictor), Explorar (Scanner) y Completar (Completer). Estos operadores se encargan de incorporar nuevos estados a la entrada actual del chart, o bien a la entrada siguiente; su aplicacin se realiza de manera sucesiva hasta que ya no resulte posible generar ms tems. Las condiciones para la seleccin de estos operadores son mutuamente excluyentes, y por lo tanto, a un determinado estado solamente es posible aplicarle una de estas acciones. La funcin correspondiente a cada estado consiste en crear nuevas hiptesis a partir de la operacin aplicada. El resultado de la aplicacin de una determinada operacin puede derivar en la generacin de una o ms hiptesis nuevas agregadas al final de la lista de estados, con la condicin de que la hiptesis no exista ya en la tabla, a fin de evitar la repeticin de clculos. En caso de que alguno de los estados no sea agregado a la lista durante el proceso de derivacin, como consecuencia de su existencia previa, se dice que la derivacin ha sido bloqueada.

Los criterios utilizados para seleccionar la aplicacin de un determinado operador son los siguientes: Si en la regla de produccin asociada al estado no existe ningn smbolo a la derecha del punto (), se aplica el operador Completar.

Si en la regla de produccin asociada al estado existe un smbolo despus del punto (), y ste es terminal, se aplica el operador Explorar.

Si en la regla de produccin asociada al estado existe un smbolo despus del punto (), y ste es no terminal, se aplica el operador Predecir.

Durante la aplicacin del algoritmo es necesario tener en cuenta que en ningn momento debe realizarse un retroceso a una entrada anterior del chart, de la misma manera que en ningn caso se efecta la eliminacin de los estados previamente insertados. La finalizacin del proceso de anlisis descrito para el Algoritmo de Earley se produce en el momento en que no existan en la tabla dinmica ms estados a los que resulte posible aplicar algn operador. En este momento, se efecta la revisin de dicha lista de estados, para intentar localizar en la misma aquellos elementos que representen anlisis completos de la cadena de entrada. Un estado recogido en la lista de estados representa un estado de anlisis completo de la cadena de entrada si verifica las siguientes condiciones: El lado izquierdo de la regla de produccin asociada al estado se corresponde con el smbolo inicial de la gramtica.

El punto () se encuentra situado al final del lado derecho de la regla de produccin asociada al estado.

Los dos elementos de posicin presentes en el estado son 0 y n, donde n representa la longitud de la cadena de entrada.

Es decir, este estado presentar la forma general [S , 0, n], y se encontrar situado en la ltima entrada del chart. Su presencia indica que la cadena de entrada pertenece al lenguaje generado por la gramtica considerada.

La expresin en pseudocdigo del Algoritmo de Earley se proporciona a continuacin: para cada entrada x chart para cada estado chart[x] si estado es INACTIVO entonces COMPLETAR (estado) fin_si si estado es ACTIVO entonces cat Categora despus de

si cat es LXICA entonces EXPLORAR (estado) fin_si si cat no es LXICA entonces PREDECIR (estado) fin_si fin_si fin_para fin_para

2.1. Definicin de los operadores


Los tres operadores funcionales definidos en el Algoritmo de Earley, denominados Predecir, Explorar y Completar, se explican detalladamente a continuacin.

Funcin Predecir

La funcin Predecir representa la fase descendente predictiva del algoritmo. Su objetivo consiste en la generacin de hiptesis a partir de una determinada prediccin realizada anteriormente, mediante la bsqueda de reglas de produccin definidas en la gramtica, en las cuales el smbolo no terminal situado en la parte izquierda coincida con el smbolo no terminal situado despus del punto en el estado. Para cada una de las reglas localizadas de acuerdo a este criterio, se inserta un nuevo estado en la tabla dinmica. El funcionamiento de este operador puede representarse de la manera siguiente:

Esta funcin resulta aplicable a un determinado estado cuando existe un smbolo no terminal inmediatamente a la derecha del punto (). La aplicacin de este operador provoca la incorporacin de un nuevo estado a la entrada actual, por cada una de las reglas de produccin de la gramtica en las que aparezca como parte izquierda dicho smbolo no terminal. Para un estado [A B, i, j], y para cada regla B P, se construye un nuevo estado [Bi , j, j] con las siguientes caractersticas:
La

regla de produccin tiene como parte izquierda el smbolo no terminal B que se est considerando.

El

punto () aparece al comienzo de la parte derecha de la produccin.


El

puntero de retroceso, es decir, el primer ndice del estado, apuntar a la entrada actual del chart, que ser adems aquella a la que se incorpore el nuevo estado, con lo que el segundo ndice del estado presentar el mismo valor que el primero. La aplicacin de esta funcin equivale a predecir todas las producciones que potencialmente pueden resultar tiles en el reconocimiento de la cadena de entrada. Es decir, los nuevos estados incorporados a la entrada actual del chart como consecuencia de la aplicacin de esta regla representan predicciones de futuros pasos de anlisis.

Funcin Explorar

La funcin Explorar se encarga de realizar la creacin de nuevos estados que representan el anlisis posterior al reconocimiento del smbolo de entrada actual. Es decir, el operador efecta una comparacin de un determinado smbolo terminal con la siguiente palabra recogida en la cadena de entrada. Si ambos elementos son iguales, se construye un nuevo estado desplazando el punto a la derecha, e incrementando el valor del ndice j para representar el hecho de que la palabra recogida de la entrada ha sido procesada con xito. El funcionamiento de este operador puede representarse de la manera siguiente:

Esta funcin se aplica sobre aquellos estados que presentan smbolos

terminales (categoras lxicas) situados a la derecha del punto (). En particular, se considera la categora lxica correspondiente a la palabra de entrada actual; es decir, el siguiente smbolo de la cadena de entrada se compara con el elemento terminal situado a la derecha del punto, y para cada uno de los estados en los que se detecte coincidencia, se inserta un nuevo estado en la siguiente entrada del chart, con el punto () desplazado un lugar a la derecha, y el puntero de retroceso indicando la entrada actual. De esta manera, para un estado [A a, i, j] se obtiene [A a , i, j+1]. Por lo tanto, se ha reconocido el smbolo terminal situado en la posicin exactamente a la derecha del punto (). Este operador permite realizar un filtrado, aunque no demasiado eficiente, de las ambigedades lxicas, puesto que solamente avanza en el reconocimiento de la frase de entrada si alguna de las posibles categoras lxicas de la palabra se encuentra inmediatamente a la derecha del punto en alguno de los estados considerados.

Funcin Completar

La funcin Completar permite crear nuevos estados que representan el proceso de anlisis posterior al reconocimiento de un smbolo no terminal de la gramtica. Este operador se encarga de completar una prediccin previa que ha sido soportada totalmente por determinados anlisis subsecuentes representados en el estado actual. Para ello, se realiza una bsqueda en la lista de estados, para encontrar hiptesis que se encuentren en espera de un elemento constituyente que presente el mismo tipo que aquel que acaba de ser completado, en la posicin en que ste fue encontrado. El funcionamiento de este operador puede representarse de la manera siguiente:

Esta funcin se aplica a aquellos estados en los cuales aparece un smbolo no terminal a la derecha del punto (). Se consideran todos aquellos estados previamente generados en los cuales dicho smbolo no terminal se encuentra situado en la parte izquierda de la regla de produccin, y la parte derecha de dicha regla se encuentra reconocida por completo, con lo que el punto () aparece al final de la misma. Para cada uno de ellos se inserta un nuevo estado, en la misma entrada del chart, en el cual el punto () se ha desplazado una posicin a la derecha, lo que implica el reconocimiento del correspondiente smbolo no terminal. De esta manera, para una pareja de estados de la forma [A B, i, k] y [B , k, j], se genera un nuevo estado representado por [A B , i, j].

2.2. Representacin grfica


El funcionamiento del Algoritmo de Earley puede representarse grficamente para facilitar su comprensin. Para ello, se considerar una gramtica constituida por dos reglas de produccin, de la forma en que se indica a continuacin: P={ A B B abc } Se considerar la existencia en la tabla dinmica de un elemento de la forma [A B , i, k], generado como consecuencia de la aplicacin de una serie de pasos del algoritmo. Este elemento indica que el componente perteneciente a la regla de produccin ya ha sido reconocido en la cadena de entrada, representando el contenido de la subcadena ai ak-1, como puede observarse a partir del puntero de retroceso y del ndice correspondiente al itemset al cual pertenece el estado considerado. Esta situacin se encuentra representada en la Figura 1 por la lnea fina de trazo continuo situada por encima del smbolo , abarcando las posiciones comprendidas entre i y k. A partir de este tem ser necesario continuar el reconocimiento de la cadena de entrada, para lo cual se utilizarn las reglas de produccin asociadas al smbolo no terminal B, como se indica en la representacin grfica mediante un arco de lnea discontinua. En este caso, existe nicamente una lnea de produccin asociada a B, con lo cual se generar automticamente el tem [B abc, k, k]. La aplicacin sucesiva de tres operaciones de tipo Explorar orientadas al reconocimiento de los smbolos terminales a, b y c generar los siguientes elementos: [B a bc, k, k+1], [B ab c, k, k+2] y [B abc , k, j], los cuales se corresponden con los tres arcos de lnea continua representados a la derecha de la imagen. La combinacin del ltimo

de los tems generados con el elemento [A B , i, k] previamente existente, mediante la aplicacin de una operacin Completar, generar el elemento [A B , i, j], presente en la representacin grfica en forma de lnea continua de trazo grueso. La representacin grfica correspondiente al Algoritmo de Earley se proporciona a continuacin. Como puede observarse, cada uno de los arcos dibujados en la Figura 1 representa el fragmento de la cadena de entrada abarcado por un determinado tem.

Figura 1. Representacin grfica del Algoritmo de Earley

2.3. Representacin formal


El Algoritmo de Earley se puede especificar por medio de un esquema de anlisis sintctico, estructura desarrollada por Klaas Sikkel para realizar descripciones de alto nivel de algoritmos de anlisis. Un sistema de anlisis sintctico para una determinada Gramtica de Contexto Libre G y una cadena de entrada a0 an-1, es una tripleta de la forma P=<I,H,D>,cuyos elementos presentan, para el Algoritmo de Earley, los siguientes valores: I representa el conjunto de elementos que constituyen resultados intermedios dentro del proceso de anlisis.

representa el conjunto de elementos iniciales, denominados hiptesis, los cuales constituyen la cadena que va a ser analizada. No es necesario que se verifique la propiedad HcI. Lo habitual es que ambos conjuntos sean disjuntos.
H

representa un conjunto1 de reglas de inferencia, denominadas pasos deductivos, mediante las cuales se realiza la derivacin de nuevos elementos a partir de los ya existentes. Estos pasos deductivos presentan la forma <n1,n2,,nk> y su significado es el siguiente: si todos los antecedentes de un paso deductivo ya existen, entonces el consecuente deber ser generado por el analizador sintctico.

Los pasos deductivos se suponen cuantificados universalmente para todas las posibles variables que aparezcan en los elementos, a menos que se indique explcitamente lo contrario.

Un conjunto de elementos finales, cuya presencia en el proceso de anlisis indica el reconocimiento de la cadena de entrada.

2.4. Caractersticas adicionales


El Algoritmo de Earley presenta numerosas ventajas que justifican su utilizacin en el anlisis sintctico. Las principales caractersticas que resulta conveniente destacar se enumeran a continuacin:

El Algoritmo de Earley presenta una eficiencia razonablemente buena.

El Algoritmo de Earley se puede aplicar para el reconocimiento de oraciones por medio de una Gramtica de Contexto Libre sin restricciones de formato o eliminacin de la cadena vaca. En el caso de que la gramtica utilizada resulte ambigua, el tiempo de reconocimiento ser proporcional al cubo de la longitud de la cadena de entrada, si bien para ciertas gramticas resulta posible reducir el tiempo medio a una expresin cuadrtica o incluso lineal.
1Un

conjunto es una coleccin definida y distinguible de objetos de percepcin o pensamiento concebido como un todo, de acuerdo a la definicin de George Cantor, fundador de la teora de conjuntos. El smbolo P significa powerset, y representa un conjunto de elementos en el que no existen duplicados. El smbolo Pfin introduce adems el requisito de que el conjunto sea finito.

El Algoritmo de Earley proporciona una gran flexibilidad y facilidad para la incorporacin nuevas caractersticas, entre las que destacan las siguientes:
Modificacin

de la orientacin del proceso de anlisis sintctico, para desarrollar un proceso ascendente o bidireccional.

Posibilidad

de incorporar soporte para probabilidades aplicadas a las reglas de produccin.


Definicin

de extensiones para la construccin de representaciones

semnticas. El Algoritmo de Earley puede ser utilizado como punto de partida para el desarrollo de nuevos procedimientos de anlisis sintctico. En particular, resulta posible la obtencin de un analizador LR generalizado aplicable a Gramticas de Contexto Libre sin restricciones.

2.5. Ejemplo de aplicacin


En este apartado se proporcionar un sencillo ejemplo mediante el cual se explicar de manera prctica el funcionamiento del Algoritmo de Earley, para la realizacin del proceso de anlisis sintctico sobre una determinada cadena de entrada. El conjunto de producciones de la gramtica considerada es el siguiente: P={ S NP NP VP VP NP VP DET N PROP V SN VA Juan

PROP V A } es

alto

La aplicacin del Algoritmo de Earley sobre la frase de entrada Juan es alto comenzara con la inicializacin del chart, constituido por cuatro entradas, es decir, el nmero de palabras de la frase a analizar incrementado en una unidad. La entrada chart[0] se inicializara con el estado ( S, 0, 0), mediante la aplicacin de una pseudoregla para la insercin del smbolo raz de la gramtica, representado por S. La evolucin de la tabla dinmica como consecuencia de la aplicacin de los diferentes operadores que resultan necesarios durante el proceso de anlisis, se producira de la manera en que se expresa a continuacin:

ENTRADA

CONTENIDO

FUNCIN APLICADA

0 S NP NP

S, 0, 0 NP VP, 0, 0 DET N, 0, 0 PROP, 0, 0 Juan , 0, 1 PROP , 0, 1 NP VP, 0, 1 V SN, 1, 1 V A, 1, 1 es , 1, 2 V SN, 1, 2 Predecir Predecir Predecir Explorar Completar Completar Predecir Predecir Explorar Completar

PROP 1 NP S VP VP V 2 VP

VP V A, 1, 2 Completar --------------------------------------------------------------------------------------------------------A 3 VP alto , 2, 3 V A , 1, 3 Explorar Completar

S NP VP , 0, 3 Completar La finalizacin del proceso de anlisis sintctico se detecta por la aparicin de un estado que abarca el primer ndice y el ltimo ndice del chart, en el ejemplo representados mediante los valores 0 y 3, respectivamente. La aparicin del smbolo inicial de la gramtica S como categora permite concluir que el anlisis ha producido una derivacin completa.

Conclusin
El procedimiento descrito para el Algoritmo de Earley acta simplemente como reconocedor, es decir, permite comprobar que un determinado texto de entrada es sintcticamente correcto. Sin embargo, es posible introducir ciertas modificaciones para transformarlo en un analizador, capaz de explicitar las relaciones sintcticas o estructuras que aparecen en el texto. Para ello, resulta necesario almacenar informacin adicional en los estados recogidos en la tabla dinmica, a fin de mantener punteros a los estados anteriores durante el proceso de anlisis.
La realizacin de una operacin de tipo Explorar incorporara el almacenamiento en el nuevo estado de los punteros almacenados en aquellos estados antiguos sobre los cuales se aplic la funcin para la obtencin del estado generado.

La realizacin de una operacin de tipo Completar conllevara el almacenamiento en el nuevo estado de un puntero al estado final sobre el cual se aplic la funcin.

Bibliografa
http://www.trad.uji.es/asignatura/obtener.php? letra=H&codigo=70&fichero=1049101443H70 http://ccia.ei.uvigo.es/docencia/LN/ http://coleweb.dc.fi.udc.es/cole/library/ps/Alo2000a.pdf

Anda mungkin juga menyukai