Diferencia entre gramática ambigua e inequívoca

Requisito previo: gramáticas libres de contexto
1. Gramática ambigua :
una gramática libre de contexto se llama gramática ambigua si existe más de un árbol de derivación o árbol de análisis.

Ejemplo –

S -> S + S / S * S / S / a 

2. Gramática inequívoca:
una gramática libre de contexto se denomina gramática inequívoca si existe un único árbol de derivación o árbol de análisis sintáctico.

Ejemplo –

X -> AB
A -> Aa / a
B -> b 

Diferencia entre gramática ambigua e inequívoca:

S.NO gramática ambigua Gramática inequívoca
1. En la gramática ambigua, las derivaciones más a la izquierda y más a la derecha no son iguales. En gramática inequívoca, las derivaciones más a la izquierda y más a la derecha son las mismas.
2. La cantidad de no terminales en la gramática ambigua es menor que en la gramática no ambigua. La cantidad de no terminales en la gramática no ambigua es mayor que en la gramática ambigua.
3. La longitud del árbol de análisis en gramática ambigua es comparativamente corta. La longitud del árbol de análisis sintáctico en una gramática inequívoca es comparativamente grande.
4. La velocidad de derivación de un árbol en la gramática ambigua es más rápida que la de la gramática no ambigua. La velocidad de derivación de un árbol en la gramática no ambigua es más lenta que la de la gramática ambigua.
5. La gramática ambigua genera más de un árbol de análisis. La gramática inequívoca genera solo un árbol de análisis.
6. La gramática ambigua contiene ambigüedad. La gramática inequívoca no contiene ninguna ambigüedad.

Publicación traducida automáticamente

Artículo escrito por MKS075 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *