Automatentheorie und Formale Sprachen - Mitschrift - Katoen/05.04.2007
Aus Infostudium Wiki
Inhaltsverzeichnis |
Formale Sprachen, Automaten, Prozesse vom 05. April 2007
Grammatiktypen
Definition
Grammatiken G1 und G2 (beide über demselben Alphabet Σ) heißen äquivalent falls L(G1) = L(G2)
Definition
Sei G = (V,Σ,P,S) eine Grammatik. G heißt:
- Kontextsensitiv (Typ 1) wenn für alle Regeln
gilt:
- Dies ist eine vereinfachte Definition. Verwenden sollte man jedoch die endgültige Definition.
- Kontextfrei (Typ 2) wenn
- Regulär (Typ 3) wenn
KFG: jede Regel hat die Form
Reguläre Grammatik: jede Regel hat die Form
Beispiele
Sei Σ = {a,b,c} V = {S,A,B}
1. Beispiel
![]()
![]()
![]()
nicht von Typ 1, da z.B.
nicht von Typ 2,
nicht von Typ 3, aus selbigem Grund
2. Beispiel
![]()
![]()
vom Typ 1, da
weder Typ 2, noch Typ 3, da
![]()
3. Beispiel
![]()
![]()
Typ 1, da
Typ 2, da jede linke Seite von
ist in V. nicht Typ 3, da z.B.
nicht das richtige Format hat
4. Beispiel
![]()
ist vom Typ 0,2,3 nicht von Typ 1, da
aber | A | = 1 und | ε | = 0
Typische Kontextsensitive Regeln
Kontextfreie Grammatiken
wird häufig als
Backus-Naur-Form (BNF) bezeichnet
Definition
Eine Sprache L ist von Typ i, falls es eine Grammatik G von Typ i gibt, sodass L(G) = L ist.
Diese Grammatik ist vom Typ1, jedoch nicht vom Typ 2 oder Typ 3.
Behauptung
L(G) = {anbncn}
Beweis
"
" Wörter von der Form anbncn sind ableitbar aus S
Wir zeigen mit Hilfe der Induktion, dass
für i > 0 ist.
Dann gilt auch, wegen
, dass
Basis
Induktionsschritt
Finde eine Ableitung für ai + 1Bbi + 2ci + 2.
"
": nur Wörter von der Form anbncn ableitbar aus S.
Zeige, dass
impliziert w = anbncn für ein
.
Fallunterscheidung
-
ok
-
Beobachtung:
oder:
Wieder beweisen,A loswerden.
(Bem.: alle Ableitungsschritte sind eindeutig)
Jede Typ 3 Sprache ist auch Typ 2. Ist dann auch jede Typ 2 Sprache vom Typ 1? Jede Typ 1 Sprache ist auch Typ 0.
Kleine Anpassung für die Definition von Typ 1 Sprachen:
ist nicht ableitbar.
Definition
G = (V,Σ,P,S) mit
heißt Kontextsensitiv (Typ 1), falls
-
-
gilt
und S kommt nicht in V vor.
Satz
Jede Typ 2 Grammatik ist von Typ 1
Beweis
- Transformation einer KFG wandelt in eine ε -freie KFG um (d.h.
, dann A = S . Falls
, dann gibt es keine
, sodass
).
- jede ε -freie KFG ist von Typ 1 (jede Regel
in einer ε -freien KFG erfüllt
für
)
nicht von Typ 1, da z.B.
nicht von Typ 2,
nicht von Typ 3, aus selbigem Grund
vom Typ 1, da
weder Typ 2, noch Typ 3, da
Typ 1, da
nicht das richtige Format hat
ist vom Typ 0,2,3
nicht von Typ 1, da
aber
wird häufig als