Está en la página 1de 3

Gramtica Ambigua

Una GLC es ambigua si existe una cadena w L(G) que tiene ms de


una derivacin por la izquierda o ms de una derivacin por la
derecha o si tiene dos o ms rboles de derivacin. En caso de que
toda cadena w L(G) tenga un nico rbol de derivacin, la
gramtica no es ambigua.

Ejemplo: La gramtica
porque

S aS| Sa |

a es ambigua

aa tiene dos derivaciones por la izquierda

S aS aa S Sa aa

ELIMINACIN DE
LA AMBIGEDAD.

No existe un algoritmo que nos indique si una GIC es ambigua


Existen LIC que slo tienen GIC ambiguas: inherentemente
ambiguos
Para las construcciones de los lenguajes de programacin
comunes existen tcnicas para la eliminacin de la ambigedad

Ejemplo: causas de ambigedad en la siguiente gramtica


No se respeta la precedencia de operadores
una secuencia de operadores idnticos puede agruparse desde
la izquierda y desde la derecha. Lo convencional es agrupar
desde la izquierda.

Eliminando la ambigedad:

También podría gustarte