Membre : Connexion |Inscription |Ajouter connaissances
Rechercher
Grammaire ambiguë [Modification ]
En informatique, une grammaire ambiguë est une grammaire sans contexte pour laquelle il existe une chaîne pouvant avoir plusieurs dérivations ou arbres d'analyse les plus à gauche, tandis qu'une grammaire sans ambiguïté est une grammaire sans contexte pour laquelle chaque chaîne valide a une extrême gauche. dérivation ou arbre d'analyse. De nombreuses langues admettent des grammaires ambiguës et non ambiguës, alors que certaines langues n'admettent que des grammaires ambiguës. Toute langue non vide admet une grammaire ambiguë en prenant une grammaire sans ambiguïté et en introduisant une règle ou un synonyme en double (la seule langue sans grammaire ambiguë est la langue vide). Un langage qui n'admet que des grammaires ambiguës est appelé un langage intrinsèquement ambigu, et il existe des langages dépourvus de contexte intrinsèquement ambigus. Les grammaires déterministes sans contexte sont toujours sans ambiguïté et constituent une sous-classe importante des grammaires non ambiguës; il existe cependant des grammaires non déterministes non ambiguës.
Pour les langages de programmation informatique, la grammaire de référence est souvent ambiguë, en raison de problèmes tels que le problème du suspens. Si elles sont présentes, ces ambiguïtés sont généralement résolues par l'ajout de règles de priorité ou d'autres règles d'analyse contextuelle, de sorte que la grammaire globale de la phrase est sans ambiguïté.
[L'informatique][Grammaire sans contexte][Langage de programmation][Grammaire contextuelle]
1.Exemples
1.1.Langue triviale
1.2.Corde unaire
1.3.Addition et soustraction
1.4.Dangling else
1.5.Contre-exemple
2.Reconnaître les grammaires ambiguës
3.Langues intrinsèquement ambiguës
[Télécharger Plus Contenu ]


Droit d'auteur @2018 Lxjkh