kontextfreie grammatik / reguläre grammatik

Status
Nicht offen für weitere Antworten.

BlubBlub

Bekanntes Mitglied
also ich les grad ein paar sachen über xml in meinem skript.
und da steht, dass ein Data-Guide von einen Baum abgeleitet wird und selbst ein Baum ist.
Dieser Baum stellt eine kontextfreie grammatik dar.

nun steht weiter, dass die DTD zu diesem baum eine reguläre grammatik darstellt.
auf wikipedia steht, dass die reguläre grammatik eine spezialisierte form der kontextfreien grammatik ist.
die reguläre grammatik besteht aus vier tupeln (Nichtterminale, Terminale, Produktionen, Startsymbol) und die kontextfreie grammatik besteht ebenfalls aus diesen vier tuppeln.

der unterschied zwischen den beiden ist laut wikipedia, dass die reguläre grammatik entweder rechts oder linksregulär ist, dass heißt:

A = Aa bzw A =aA
B = Bb bzw B =bB

nicht erlaubt ist bei einer regulären Grammatik:

A = Aa
B = bB

man muss sich entscheiden ob man linksregulär alles aufbaut bzw. rechtsregulär

zudem ist verboten:

A = aAa

Bei der kontextfreiengrammatik legt man sich nicht fest auf links oder rechtsregularität,
da ist alles erlaubt also:

erlaubt:
A = Aa
B = bB
A = aAa


Das sind so die informationen die ich mir so zusammengesucht hab und so interpretiert hab.

meine frage: hab ich das alles richtig interpretiert? und vorallem besteht sowohl die reguläre als auch die kontextfreie grammatik aus den selben vier tuppeln?
unterscheiden sich diese beiden grammatiken tatsächlich NUR in den erlaubten produktionen (siehe meine beispiele)?
 
Zuletzt bearbeitet:

Ark

Top Contributor
Nun, ich würde mal behaupten, alle formalen Grammatiken bestehen aus den von dir genannten vier Teilen. Die Unterscheidungen werden wirklich nur anhand der erlaubten Produktionen getroffen.

Ganz grob und ohne Berücksichtigung einiger "Spezialfälle"/Details (Epsilon etc.), in Klammern steht bildlich(!) beschrieben, wie sich die Einschränkung gegenüber dem vorangegangenen Typ äußert:

  • Typ 0: Alles ist erlaubt; natürlich sollte aber links mindestens ein Nichtterminal stehen.
  • Typ 1: Linke Seite darf nicht länger sein als rechte. (Der Text wird beim Lesen nicht mehr länger.)
  • Typ 2: Linke Seite hat nur genau ein Nichtterminal. (Im Text gibt es kein Vorher und kein Nachher mehr.)
  • Typ 3: Rechte Seite hat nur höchstens ein Nichtterminal und dieses entweder immer ganz links oder immer ganz rechts. (Es gibt keine hierarchischen Abhängigkeiten zwischen Wörtern mehr.)
Ich denke schon, dass du das so weit richtig interpretiert hast. Deine Beispiele erscheinen mir jedoch etwas sehr eingeschränkt (verglichen mit dem, was ich gerade zur Chomsky-Hierarchie geschrieben habe. Keine Garantie auf Richtigkeit! Vollständig ist es sowieso nicht).

Ark
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Antlr Grammatik übersetzt ohne Fehler, dennoch wird Zahl nicht als Eingabe erkannt Allgemeine Java-Themen 4
P triviale JavaCC Grammatik inkorrekt Allgemeine Java-Themen 6
Ark Diagramm zur Java-Grammatik gesucht Allgemeine Java-Themen 2
J Namen von Methoden über Reguläre Ausdrücke bearbeiten Allgemeine Java-Themen 6
E Reguläre Ausdrücke: String-Ersetzung Allgemeine Java-Themen 0
G Reguläre Ausdrücke Allgemeine Java-Themen 11
G Reguläre Ausdrücke Allgemeine Java-Themen 2
S Reguläre Ausdrücke: Polynomterme Allgemeine Java-Themen 14
jstei001 Reguläre Ausdrücke bearbeiten/ändern Allgemeine Java-Themen 14
C reguläre Ausdrücke finden nicht was sie finden sollen Allgemeine Java-Themen 8
C Reguläre Ausrücke Punkte im Satz richtig erkennen Allgemeine Java-Themen 6
F Reguläre Ausdrücke und BBCode Allgemeine Java-Themen 10
E Reguläre Txt in Tree parsen Allgemeine Java-Themen 2
J Reguläre Ausrücke - Klammer nicht vorhanden Allgemeine Java-Themen 2
J String für reguläre Ausdrücke escapen Allgemeine Java-Themen 2
C Reguläre Ausdrücke - X{0}?.* Allgemeine Java-Themen 8
C Reguläre Ausdrücke, String rückwärts durchsuchen Allgemeine Java-Themen 6
I Reguläre Ausdrücke und das "~" Symbol Allgemeine Java-Themen 2
B Reguläre ausdrücke mit variablen? Allgemeine Java-Themen 12
H Regex - Reguläre Ausdrücke Allgemeine Java-Themen 3
A Reguläre Ausdrücke vereinfachen Allgemeine Java-Themen 19
J Reguläre Ausdrücke Allgemeine Java-Themen 14
P reguläre ausrücke und String.matches Allgemeine Java-Themen 4
A Zufallswerte für reguläre Ausdrücke Allgemeine Java-Themen 15
G Reguläre Ausdrücke Allgemeine Java-Themen 8
R reguläre Ausdrücke Allgemeine Java-Themen 2
L Reguläre Ausdrücke und Fehlerbehandlung Allgemeine Java-Themen 10
RaoulDuke Reguläre Ausdrücke - Daten extrahieren Allgemeine Java-Themen 3
S Reguläre Ausdruecke! Allgemeine Java-Themen 5
L reguläre Ausdrücke? Allgemeine Java-Themen 2
R Reguläre Ausdrücke (mehrzeilig) Allgemeine Java-Themen 2

Ähnliche Java Themen

Neue Themen


Oben