Documentos de Académico
Documentos de Profesional
Documentos de Cultura
RESUMEN
Se ha sabido desde 1962 que el problema de la ambigedad de las gramticas libres de contexto
es indecidible. La ambigedad en las gramticas libres de contexto es un problema recurrente en
diseo de lenguajes y en el generador de analizadores sintticos, as como en aplicaciones donde
se utilizan gramticas como modelos de las estructuras fsicas del mundo real.
Se observa que existe una caracterizacin lingstica simple del problema de la ambigedad en la
gramtica , y nos muestran cmo explotar esta presentando un marco de anlisis de la
ambigedad basado en aproximaciones de lenguaje conservador. Como ejemplo concreto, se
propone un tcnica basada en aproximaciones regulares locales y en desdoblamiento de
gramtica . Evaluamos el anlisis utilizando las gramticas que se producen en el anlisis de ARN
en la bioinformtica, y demostrar que es suficientemente precisa y eficiente para ser til.
1. Introduccin
Al utilizar las gramticas libres de contexto para describir lenguajes formales, uno tiene que ser
consciente del potencial de la ambigedad en las gramticas, es decir, la situacin en la que una
cadena puede ser analizado de mltiples maneras, dando lugar a diferentes rboles de anlisis.
Proponemos una tcnica para detectar ambigedades en una gramtica dada. A medida que el
problema es indecidible en general, que fue mostrado por Cantor [6], Floyd [14], y Chomsky y
Schtzenberger [8], que recurren a la aproximacin conservadora. Esto significa que
nuestro anlisis para algunas gramticas es capaz de garantizar que no son ambiguas, mientras
que para otros no puede dar ciertas respuestas. En la bioinformtica, las gramticas libres de
contexto en diversas formas tienen aplicaciones importantes, por ejemplo en la secuencia
comparacin, motivo de bsqueda, y la estructura secundaria del ARN anlisis [12,18].
Recientemente, la ambigedad ha ganado la atencin en este campo, como han demostrado
varios algoritmos importantes (como el algoritmo de Viterbi en CFGs estocsticos) para entregar
incorrecta resultados en la presencia de ambigedad [16,11].
El problema de la ambigedad surge en el anlisis biosecuencia de la necesidad de
comprobar una propiedad esttica de los algoritmos de programacin dinmicos empleados? la
cuestin de si o no un elemento de la espacio de bsqueda se puede evaluar ms de una vez. Si es
as, los sistemas de puntuacin probabilsticos producen resultados incorrectos, y enumeracin
de soluciones casi ptimas ahoga en la redundancia. Puede parecer sorprendente que el anlisis
esttico de esta propiedad del programa puede ser abordado como una cuestin de la
ambigedad de idioma en el nivel del lenguaje formal. Vamos a explicar esta situacin en algunos
detalle en la Seccin 8.
Antes de empezar la presentacin de nuestro mtodo, declaramos dos requisitos en un prctico
comprobador de ambigedad que se derivan de la biosecuencia anlisis del dominio y debe
tenerse en cuenta en lo que sigue: En primer lugar, las gramticas que deben controlarse son en
realidad abstracciones de los conceptos de programacin ms ricos. Pueden parecer extrao
desde un punto de diseo de lenguajes de vista formal ? por ejemplo, pueden contener `` ''
smbolos no terminales redundantes que generan el mismo idioma. Sin embargo, diferente no
terminales diferentes estructuras fsicas modelo con diferentes semntica que son esenciales para
la posterior procesamiento algortmico. Por lo tanto, la gramtica debe ser revisado como es y no
puede ser simplificado mediante, por ejemplo, de coalescencia tal no terminal smbolos. Por
supuesto, es posible (y lo har) aplicar transformaciones ambigedad de preservacin de la
gramtica. En segundo lugar, el dominio expertos suelen ser los bilogos moleculares con poca
experiencia en programacin y ninguna formacin en la teora del lenguaje formal.
Por lo tanto, cuando se descubre la ambigedad, se debe informar de una manera que sea
significativa para esta categora de usuarios. Adems de las aplicaciones al anlisis biosecuencia,
nuestra motivacin detrs de la obra que presentamos aqu ha estado analizando reversibilidad de
transformaciones entre datos XML y no XML, que se puede reducir a la ambigedad gramtica
problema [4]. Ese trabajo implica el anlisis scannerless, es decir, donde las descripciones lxicas
no se separan de las gramticas. obra relacionada Nuestro enfoque est relacionado con la
construccin de una tabla LR (k) de anlisis sintctico para la gramtica dada y la comprobacin de
los conflictos. La LR (k) condicin tiene desde su descubrimiento por Knuth en 1965 se conoce
como una prueba de gran alcance para la ambigedad [21]. un ejemplo de una clase an ms
grande de las gramticas no ambiguas es LR-Regular [10]. Sin embargo, ni siquiera LR-regular es
suficiente para una clase considerable de gramticas que involucran estructuras palindrmicas,
que a menudo se producen en la bioinformtica. Otra importante limitacin con herramientas de
deteccin de ambigedad sobre la base de LR (k) o tcnicas afines es la mala calidad de los
mensajes de error que produce. Cualquier usuario de Yacc o una herramienta similar reconocern
la dificultad de encontrar la verdadera causa de un conflicto reportado. Un creciente nmero de
generadores de analizadores sintcticos, por ejemplo, Bison [33], SDF [35], y Elkhound [24], el
apoyo libre de contexto gramticas generales en lugar de subclases inequvocos, como LL (k), LR
(k), o LALR (k). Estas herramientas normalmente manejan ambigedades de forma dinmica (es
decir, durante el anlisis) desambiguar o la fusin de los rboles de anlisis resultantes [34,5]. En
contraste, nuestro enfoque es para analizar estticamente las gramticas para ambigedades
potenciales. Adems, nuestro objetivo para un algoritmo conservador, a diferencia de muchos
existente tcnicas de deteccin de ambigedad, por ejemplo los de Gorn [19] y Cheung y Uzgalis
[7].
En el enfoque por Schmitz [31], una gramtica G se convierte en una estructura potencialmente
infinito llama un grfico posicin, G,que luego es buscado por mltiples derivaciones de la misma
forma oracional. Por factoring G con una equivalencia finitista relacin, el problema de bsqueda
grfica resulta en un anlisis de terminacin. Como ejemplos, las condiciones de la LR (k) y LRRegular pueden adaptarse tanto a la equivalencia relaciones en este marco. El enfoque por Kuich
[23] construye sistemas de finito autmatas de pila de gramticas. Si estos autmatas (o
transformaciones de ambigedad de preservacin de los mismos) pueden ser mostrados
a ser cuasi-determinista, entonces la gramtica se garantiza que sea inequvoca. Este mtodo est
estrechamente relacionada con la LR (0) variante de Schmitz. Como nuestro enfoque, los anlisis
de Schmitz y Kuich son slidos, pero incompleta. Sus anlisis funcionan buscar estructuras finitas
para mltiples derivaciones. Nuestro enfoque es conceptualmente diferente, ya que transforma el
estructural problema de la ambigedad de una coleccin finita de problemas lingsticos. Nuestros
experimentos (seccin 9) demuestran el incomparable expresividad de nuestro enfoque en
comparacin con la de Schmitz.
Aportes
A pesar de dcadas de trabajo sobre tcnicas de anlisis sintctico, que en muchos casos implican
el problema de la ambigedad gramtica, nos han sido incapaces de encontrar herramientas que
son aplicables a gramticas en las reas mencionadas anteriormente. Este trabajo contribuye con
los siguientes resultados: ? Se observa que existe una caracterizacin lingstica sencilla de
ambigedad gramtica. Esto nos permite pasar de razonamiento acerca de las derivaciones de
gramtica a razonar acerca de las propiedades puramente lingsticas, tales como, la inclusin y el
lenguaje aproximaciones. Esto se traduce en un marco, llamado ACLA (Ambigedad Comprobacin
con Idioma Aproximaciones). ? Mostramos cmo Mohri y tcnica de aproximacin normal de
Nederhof para gramticas libres de contexto [25] se pueden adaptar en de manera local usando el
marco ACLA para detectar muchas fuentes comunes de ambigedad, incluyendo los que implican
estructuras palindrmicas. Adems, una gramtica sencilla despliegue de transformacin se puede
utilizar para mejorar la precisin de la aproximacin. La flexibilidad del marco se fundamenta,
adems, mediante la presentacin de otra aproximacin tcnicas que se pueden combinar con la
aproximacin regular para mejorar el rendimiento de anlisis. ? Demostramos que ACLA puede
manejar gramticas del mundo real de complejidad variable tomado de la bioinformtica
literatura sobre anlisis de ARN, absolviendo las gramticas no ambiguas y la localizacin de las
fuentes de ambigedad? con ms cortos posibles ejemplos como testigos? en las gramticas que
son de hecho ambigua. Adems, investigamos el anlisis precisin y rendimiento en una gama de
otras gramticas encontrados en la literatura. La aplicacin est disponible desde
nuestro sitio web Aqu los que trabajamos, las gramticas libres de contexto de civil. La
modificacin de nuestro enfoque para trabajar con las tcnicas de anlisis que involucran
la interoperabilidad con un analizador lxico, las declaraciones de precedencia / asociatividad, u
otros mecanismos de desambiguacin se deja para el trabajo futuro. (Algunos progresos en esta
direccin se analiza en el contexto de nuestra aplicacin en la Seccin 7.) visin de conjunto
Comenzamos en la Seccin 2, dando una caracterizacin de la ambigedad gramatical que nos
permite razonar sobre el idioma de los no terminales en la gramtica en lugar de la estructura de
la gramtica. En particular, reformulamos la ambigedad problema en trminos de las operaciones
de interseccin y superposicin idioma. Basndose en esta caracterizacin, entonces en la Seccin
3 formular un marco general para la aproximacin conservadora el problema de ambigedad. En
la seccin 4 se muestra cmo regulares aproximaciones se pueden utilizar para obtener una
aproximacin decidible particular, la Seccin 5 muestra cmo se puede mejorar la precisin visin
de conjunto . Comenzamos en la Seccin 2, dando una caracterizacin de la ambigedad
gramatical que nos permite razonar sobre el idioma de los no terminales en la gramtica en lugar
de la estructura de la gramtica. En particular, reformulamos la ambigedad
Para ilustrar la flexibilidad del marco ACLA, se presentan tres ejemplos de otras tcnicas de
aproximacin que
conducir a mejoras sustanciales de rendimiento sin perder precisin. Las estrategias de
aproximacin presentados en este
seccin todos tienen la propiedad de que implican conjuntos de no terminales o terminales que se
pueden calcular de manera eficiente para un determinado
gramtica, y, a partir de estos conjuntos, que definen aproximaciones lingsticas que permiten a
muchos ambigedad vertical y horizontal
controles que deben realizarse de manera eficiente. Utilizamos la tcnica de la Proposicin 10 para
combinar toda la coleccin de estrategias.
10. Conclusin
Hemos presentado una tcnica, ACLA (Ambigedad Comprobacin con Idioma Aproximaciones),
para analizar de forma esttica la ambigedad de las gramticas libres de contexto. Sobre la base
de una caracterizacin lingstica, la tcnica permite el uso de la gramtica transformaciones, en
particular aproximacin regular y despliegue, sin sacrificar la solidez. Adems, el anlisis a menudo
es capaz de identificar las fuentes de ambigedad a travs de ejemplos concretos que se generan
automticamente. El anlisis puede se utilizar cuando LR (k) y tcnicas relacionadas son
inadecuados, por ejemplo en el anlisis biosecuencia, ya que nuestros ejemplos muestran.
Nuestros experimentos indican que la precisin, la velocidad y la calidad de los informes de
ambigedad son suficientes para ser prcticamente
til.