Wie zeigt man, dass eine Grammatik mehrdeutig ist?

Inhaltsverzeichnis:

Wie zeigt man, dass eine Grammatik mehrdeutig ist?
Wie zeigt man, dass eine Grammatik mehrdeutig ist?
Anonim

"Wenn eine Grammatik mindestens 2 unterschiedliche Parse-Bäume oder Ableitungen erzeugt, dann ist die Grammatik mehrdeutig." Eine weitere Regel: Alle CFG (ohne nutzlose Symbole) mit Linksrekursivität und Rechtsrekursivität für dasselbe Nichtterminal sind ebenfalls mehrdeutig.

Woher weißt du, ob eine Grammatik mehrdeutig ist?

Eine Grammatik wird als mehrdeutig bezeichnet, wenn es mehr als eine Ableitung ganz links oder mehr als eine Ableitung ganz rechts oder mehr als einen Analysebaum für die gegebene Eingabezeichenkette gibt. Wenn die Grammatik nicht mehrdeutig ist, dann heißt sie eindeutig. Wenn die Grammatik mehrdeutig ist, dann ist sie nicht gut für die Compiler-Konstruktion.

Was ist eine mehrdeutige Grammatik, geben Sie ein Beispiel?

In der Informatik ist eine mehrdeutige Grammatik eine kontextfreie Grammatik, für die es eine Zeichenfolge gibt, die mehr als eine Ableitung ganz links oder einen Analysebaum haben kann, während eine eindeutige Grammatik ist eine kontextfreie Grammatik, für die jeder gültige String eine eindeutige Ableitung ganz links oder einen Analysebaum hat.

Wie beweist man, dass eine kontextfreie Grammatik mehrdeutig ist?

3 Antworten

  1. Alle CFG ohne nutzlose Symbole und mit linker und rechter Rekursion für dasselbe Symbol, ist mehrdeutig. Allgemein: …
  2. Um die Mehrdeutigkeit zu untersuchen, müssen Sie 2 ganz linke Ableitungen für dieselbe Zeichenfolge finden (oder 2 ganz rechte Ableitungen oder 2 Ableitungsbäume).

Wie löst man mehrdeutige Grammatik?

Methoden zum Entfernen von Mehrdeutigkeiten-

  1. Indem die Grammatik korrigiert wird.
  2. Durch Hinzufügen von Gruppierungsregeln.
  3. Durch die Verwendung von Semantik und die Auswahl des Parsers, der am sinnvollsten ist.
  4. Durch Hinzufügen der Vorrangregeln oder anderer kontextsensitiver Parsing-Regeln.

Empfohlen:

Interessante Beiträge
Singularität eines dunklen Sterns?
Weiterlesen

Singularität eines dunklen Sterns?

Dark Star: Singularity ist ein temporärer Spielmodus, der erstmals vom 4. bis 15. Mai 2017 auftrat. Kommt die Dark Star-Singularität zurück? Nexus Siege und Dark Star-Spielmodus werden höchstwahrscheinlich nie wieder in League of Legends erscheinen, bestätigt Riot Games.

Hat der Mars eine Geosphäre?
Weiterlesen

Hat der Mars eine Geosphäre?

Anders als die Erde scheint die Mars-Geosphäre nicht gut durchmischt zu sein undSilikate weisen eine Reihe von Sauerstoffisotopenanomalien von 0,3 bis 0,6 0/00 auf. … Durch die Simulation der auf der Marsoberfläche ablaufenden chemischen Prozesse versuchen wir, die Wechselwirkungen zwischen Hydrosphäre, Atmosphäre und Geosphäre des Mars zu verstehen.

Wer ist Singularity Fortnite?
Weiterlesen

Wer ist Singularity Fortnite?

Singularity ist ein legendäres Outfit in Battle Royale das als Belohnung für das Sammeln von 90 Fortbytes aus den Battle Pass-Herausforderungen der Saison 9 hätte verdient werden können. Zusätzliche Stile hätten auch freigesch altet werden können, indem Helme auf der Karte gefunden wurden.