Sie sind auf Seite 1von 87

1

2

3

4 Einfuhrung¨

5

6

Skript zur Vorlesung

Theoretische Informatik

in die Automatentheorie und formale

Sprachen

Alexander Asteroth

Melanie Ludwig

Jakob Meng

Max Schachtschabel

Sigrid Weil

Hochschule Bonn-Rhein-Sieg

University of Applied Sciences

Grantham-Allee 20

D-53757 Sankt Augustin

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

INHALTSVERZEICHNIS

Inhaltsverzeichnis

0

Mathematische Grundlagen

 

2

1

Formale Sprachen

 

5

1.1 Grundlegende Konzepte

 

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

5

1.2 Grammatiken

 

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

8

2

Regul¨are Sprachen und endliche Automaten

 

10

2.1 Regul¨are Grammatiken

 

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

10

2.2 Regul¨are Ausdrucke¨

 

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

12

2.3 Deterministische endliche Automaten

 

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

14

2.4 Nichtdeterministische endliche Automaten

 

.

.

.

.

.

.

.

.

.

.

.

.

.

18

 

¨

 

2.5 Aquivalenz von DEAs und NEAs

 

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

20

 

¨

 

2.6 NEAs mit ε-

Uberg¨angen

 

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

23

2.7 Konstruktion endlicher Automaten

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

25

 

¨

 

2.8 Aquivalenz von endlichen Automaten, regul¨aren Grammatiken und re-

 
 

gul¨aren Ausdrucken¨

 

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

29

 

2.9 Minimierung deterministischer endlicher Automaten

.

.

.

.

.

.

.

.

.

.

.

32

2.10 Ableitung von Automaten aus Sprachdefinitionen und Automatenkor-

 
 

rektheit

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

35

 

2.11

Das Pumping Lemma fur¨

regul¨are Sprachen

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

38

3

Kontextfreie Sprachen

 

42

3.1

Kontextfreie Grammatiken

 

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

42

 

3.1.1

Ableitungsb¨aume

 

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

43

3.1.2

Die Chomsky-Normalform

 

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

44

3.1.3

Das Wortproblem fur¨

kontextfreie Sprachen

.

.

.

.

.

.

.

.

.

.

.

.

51

3.1.4

Abschlusseigenschaften und nicht-kontextfreie Sprachen

.

.

.

.

.

52

 

3.2

Kellerautomaten

 

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

54

 

3.2.1

Deterministisch kontextfreie Sprachen

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

59

3.2.2

LR(k)-Grammatiken

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

61

4

Die Chomsky Hierarchie

 

76

4.1 Typ1 und Typ0 Sprachen

 

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

76

4.2 Chomsky Hierachie .

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

77

4.3 Automatenmodelle fur¨

TYP1

 

Σ

- und TYP0 -Sprachen .

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

78

5

4.3.1

Ausblick

Turingmaschinen

.

.

.

.

.

.

.

.

.

.

.

.

.

.

78

81

5.1 Berechenbarkeit .

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

81

5.2 Entscheidbarkeit

 

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

81

43 Kapitel 0

44 Mathematische Grundlagen

45 In diesem Kapitel werden mathematische Konzepte beschrieben, die in den folgenden

46 Kapiteln verwendet werden. Die Darstellung erfolgt in der Regel anhand von Beispie-

47 len und nicht formal. Die formale ausfuhrliche¨

48 mathematische Grundlagen und Algebra.

Darstellung erfolgt in den Vorlesungen

49 Vorsicht: Der Inhalt dieses Kapitels wird schrittweise erg¨anzt. Dies geschieht immer

50 dann, wenn in der VL Konzepte verwendet werden, die noch nicht in der betreffenden

51 Mathematik-Vorlesung eingefuhrt¨

werden konnten.

52 Aussagenlogik

53 Der grundlegende Begriff der Aussagenlogik ist die Aussage. Eine Aussage ist ein aus

54 W¨ortern und/oder mathematischen Zeichen aufgebauter Ausdruck, bei dem es sinnvoll

55 ist zu sagen, ob dieser Ausdruck wahr oder falsch ist. Aussagen sind damit Ausdrucke,¨

56 denen man sinnvoll einen Wahrheitswert zuordnen kann.

57 Aussagen kann man nun zusammensetzen. Wenn wir also Aussagen A und B zusam-

58 mensetzen, erhalten wir wieder eine Aussage. Dafur¨

wird definiert:

59 Negation (Verneinung): ¬

60 Disjunktion (oder):

61 Konjunktion (und zugleich):

62 Subjunktion (impliziert):

63 Achtung: Die Bedeutung von A B ist, dass wenn bereits die Aussage A gilt, auch

64 die Aussage B gelten muss. Dabei muss aber kein kausaler Zusammenhang zwischen A

65 und B vorhanden sein!

66 Um den Wahrheitswert solcher verknupfter¨ Aussagen zu ermitteln, kann man bei-

67 spielsweise eine Wahrheitstafel aufstellen, wie in der Vorlesung zu den mathematischen

68 Grundlagen geschehen.

69 Mengenlehre

70 Etwas, was in einer Menge M enthalten ist, bezeichnen wir allgemein mit Element. Ist

71 x Element der Menge M , so schreiben wir x M . Ist x kein Element der Menge M ,

72 so schreiben wir x / M .

73 Zwei Mengen sind genau dann gleich, wenn sie die selben Elemente enthalten.

74 Eine Menge, die keine Elemente enth¨alt, heißt leere Menge und wird i.A. mit

75 oder {} bezeichnet.

 

76

77

78

79

80

81

82

83

84

85

86

Mengenrelationen

87

88

89

90

91

92

93

94

Aufz¨ahlende und

95

beschreibende

96

Darstellung von

97

Mengen

charakteristische

Funktion χ M

 

98

99

100

101

Kreuzprodukt

 

102

103

104

105

106

107

Funktion, Relation 108

Fur¨

zwei Mengen A und B gilt, dass A eine Teilmenge von B ist (A B), wenn

jedes Element von A auch zugleich Element von B ist. Gilt auch die Umkehrung

(d.h. B A), so sind die Mengen gleich (A = B).

zwei Mengen A und B ist folgendes definiert:

Vereinigung: A B = {x | x A x B}

Fur¨

Durchschnitt: A B = {x | x A x B}

Kreuzprodukt

Komplement von A: A = {x | x / A}

1 : A × B = {(x, y) | x A y B}

Man kann sich leicht uberlegen,¨

dass gilt:

A B A B = B

Im Kontext von Sprachen ist ein Alphabet eine (endliche) Menge, deren Elemente all-

gemein als Symbole bezeichnet werden. Andere Sprechweisen lernen wir im Laufe der

nachfolgenden Kapitel kennen.

Beispiel 0.1:

Seien A = {x | x = 2i, i N} und B = {x | x N, 0 x 10} Mengen.

Dann ist:

A B = {x | (x = 2i, i N) (x N, 0 x 10)},

A B = {x | (x = 2i, i N) (x N, 0 x 10)},

A = {x | ¬(x = 2i, i N)} = {x | x

= 2i, i N}.

Fur¨ Mengen nutzen wir zwei verschiedene Notationen: die aufz¨ahlende und die beschrei-

bende Form. Bei der aufz¨ahlenden Schreibweise werden alle Elemente der Menge auf-

gez¨ahlt, w¨ahrend die beschreibende Darstellung eine “formalere Definition” darstellt.

Beispiel 0.2: Sei A (informell) die Menge der Quadratzahlen zwischen 1 und 20.

Aufz¨ahlende Darstellung: A = {1, 4, 9, 16}

Beschreibende Darstellung: A = {x | 1 x 20 x = n

2 , n N}

Definition 0.3:

Fur¨

jede Menge M ist die charakteristische Funktion wie folgt defi-

niert:

χ

M (x) =

1

0

falls x M sonst

Kreuzprodukt

Das Kreuzprodukt zweier Mengen A, B ist die Menge aller geordneten Paare, deren

erstes Element aus der ersten Menge, und deren zweites Element aus der zweiten Menge

stammt. Hierbei bildet man jede m¨ogliche Kombination dieser Paare.

Beispiel 0.4: Seien A, B Mengen mit A = {1, 2, 3} und B = {a, b, c}. Dann ist das

Kreuzprodukt gegeben durch

A × B = {(1, a), (1, b), (1, c), (2, a), (2, b), (2, c), (3, a), (3, b), (3, c)}

Relationen und Funktionen

W¨ahrend eine Funktion f : A B eine eindeutige Zuweisung eines Elementes der

Menge A zu einem Element der Menge B darstellt, k¨onnen einem Element aus A bei

Relationen auch mehere Elemente der Menge B zugewiesen werden. Funktionen und

Relationen sind Teilmengen des Kreuzproduktes. Außerdem ist jede Funktion zugleich

auch Relation (die Umkehrung gilt naturlich¨ nicht).

Beispiel 0.5:

Seien A, B Mengen wie eben mit A = {1, 2, 3} und B = {a, b, c}.

109 Die Menge {(a, 1), (b, 2), (c, 3)} ⊆ B × A ist eine Funktion.

110 Die Menge {(a, 1), (b, 1), (c, 3)} ⊆ B × A ist eine Relation.

1 oder auch: Kartesisches Produkt, Mengenprodukt

111 Abz¨ahlbarkeit

abz¨ahlbare Menge Definition 0.6: Eine Menge M heißt abz¨ahlbar, wenn man jedem Element einein- deutig eine naturliche¨ Zahl zuordnen kann, wenn es also eine bijektive (total, injektiv, surjektiv) Abbildung

112 gibt.

f : M N,

N N 0

Bemerkung 0.7: Durch die Abbildung f wird jedem Element m von M eine eindeu- tige Nummer f (m) = i zugeordnen, d.h. der Menge M wird eine Ordnung auferlegt. Wir schreiben m = m i falls f (m) = i. M kann somit als Folge

m i 0 , m i 1 ,

,

mit i k < i k + 1

113 notiert werden.

114 Es gilt:

Lemma 0.8:

115 1. Jede Teilmenge abz¨ahlbarer Mengen ist abz¨ahlbar und

116 2. Jede Obermenge uberabz¨

117 Als Beispiele betrachten wir die Beispiele 8.1 a)-d) aus [VW11, S.252-

118 254].

¨ahlbarer Mengen ist uberabz¨

¨ahlbar.

Beispiel 0.9:

119 Kapitel 1

120 Formale Sprachen

121 1.1

Grundlegende Konzepte

122 W¨ahrend bei einer naturlichen¨ Sprache aus den W¨ortern S¨atze gebildet werden und

123 damit Satzbau, Grammatik, und vieles mehr bedeutsam ist, besteht eine formale Spra-

124 che nur aus W¨ortern, die aus den Buchstaben eines Alphabets gebildet werden. Zur

125 Bezeichnung von Sprachen verwendet man ublicherweise¨ den Buchschaben L (engl.

126 language) und das Alphabet wird mit dem griechischen Buchstaben Σ (großes Sigma)

127 bezeichnet.

Sei Σ ein Alphabet, d.h. eine endliche Menge von Zeichen“ oder

Alphabet, Wort, Σ, 128

Σ , Σ +

129

Definition 1.1:

Symbolen“

1 . Die Elemente eines Alphabetes nennen wir auch Buchstaben.

von

131 Buchstaben a

r ist die Zahl seiner Buchstaben, also r. Sie

133 wird auch mit |w| bezeichnet.

134 Das leere Wort entspricht einer leeren Folge von Buchstaben. Es hat die L¨ange

135 0 und wird immer mit dem griechischen Zeichen ε (kleines Epsilon) bezeichnet.

136 Beachten Sie, dass es sich bei ε nie um einen Buchstaben der Menge Σ handelt.

130

132

Unter einem Wort uber¨

i Σ.

Σ verstehen wir eine endliche Folge w = a

a

1

a

2

.

a

r

Die L¨ange eines Worts w = a 1 a 2 .

137

138

bezeichnet die Menge aller W¨orter uber¨

Σ

Σ + = Σ

Σ,

\ {ε} die Menge aller nicht leeren W¨orter.

139

∗ \ { ε } die Menge aller nicht leeren W¨orter. 139 140 Beispiel 1.2: Sei

140 Beispiel 1.2: Sei Σ = {a, b, c} und w

= {ε, a, b, c, aa, ab, ac, ba, bb, bc, ca, cb, cc,

142 W¨orter der L¨ange 2, 27 W¨orter der L¨ange 3 usw.

141 Σ

1 = aab, w 2 = ε. Dann ist |w 1 | = 3, |w 2 | = 0 und

}, d.h. es gibt 3 W¨orter der L¨ange 1, 9

143

144

Konkatenation, Pr¨afixe, Suffixe, Teilworte, Inverses 147 Wort, Palindrom

148

146

145

149

150

Fur¨ L

die mit a beginnen) gilt: L

Definition 1.3:

k , das sich durch Hintereinanderh¨angen der

W¨orter w und x ergibt. Man bezeichnet w x als die Konkatenation von w und x. Man

beachte, dass εw = = w. Ist x Σ

x n =

} (alle W¨orter,

1

= {ε, a, b, c} (W¨orter der L¨ange max. 1) und L

1 Σ und L 2 Σ .

Sind w = a 1 .

1

.

a r und x = b 1

a r b 1

b

b

2

= {a, ab, ac, aa,

k W¨orter uber¨ Σ, dann steht w x

n =

xx

x

bzw.

oder kurz wx fur¨ das Wort a

und n N, so ist x

nmal

x x

Fur¨

n1

mit n > 0 und x

0

= ε.

n = 0 und n = 1 gilt: x 0 = ε und x

1 = x. Ein Wort x heißt

151 Pr¨afix eines Wortes y, falls es ein Wort w gibt, so dass y = xw.

152 Suffix eines Wortes y, falls es ein Wort w gibt, so dass y = wx.

1 Dabei ist ein Symbol ist eine abstrakte Einheit, die nicht n¨aher definiert wird, so wie Punkt oder Gerade in der Geometrie (vgl. [HU80]).

1.1. GRUNDLEGENDE KONZEPTE

153 Teilwort bzw. Infix eines Wortes y, falls es W¨orter w

1 , w 2 gibt, so dass y = w 1 xw 2 .

154 Das inverse Wort eines Wortes w = a

1 a 2 .

155 Jedes Wort w mit w R = w wird auch Palindrom genannt.

156 Man beachte, dass die W¨orter ε und y stets sowohl Pr¨afix, Infix als auch Suffix von y

157 sind. x heißt echtes Pr¨afix von y, wenn x ein Pr¨afix von y ist und x

158 Bedeutung haben die Begriffe echtes Suffix und echtes Teilwort.

159 Beispiel 1.4:

160 Beispiel die Pr¨afixe “Informatik”, “Informati”, “Inf”, “I”,

161 dium”, “ium”,

162 Das kurzeste¨

163 und hinter jedem Buchstaben.

Pr¨afix, Suffix und Infix ist ε - dies steht (beliebig oft) vor und zwischen

, sowie die Suffixe “stu-

Sei w = “Informatikstudium”. Dann gibt es neben vielen anderen zum

= y. Entsprechende

a r1 a r ist das Wort w R = a r a r1 .

a 2 a 1

.

das Wort w R = a r a r − 1 . a 2 a 1

, und die Infixe “atikst”,

Wortfunktionen

Notation 1.5:

Auf den W¨ortern uber¨

einem Alphabet Σ definieren wir folgende

Funktionen zur

.

.

.

.

.

der L¨ange von W¨ortern

l : Σ N 0

l(ε) = 0

l(wa) = l(w) + 1

fur¨

w Σ , a Σ

der Anzahl eines Buchstabens in einem Wort

anzahl : Σ × Σ N 0

anzahl (ε, a) = 0

a Σ

anzahl (wa, b) = anzahl (w, b) + 1

anzahl (w,

b)

der Pr¨afixeigenschaft

falls a = b sonst

fur¨

a, b Σ, w Σ

isPrefix : Σ × Σ → {0 , 1 }

isPrefix (w, ε) = 1, isPrefix (ε, x) = 0,

isPrefix (aw, bx) =

der Suffixeigenschaft

isSuffix : Σ

isSuffix (w, ε) = 1, isSuffix (ε, x) = 0,

isSuffix (wa, xb) =

der Teilworteigenschaft

w Σ x Σ +

isPrefix (w, x)

0

×

Σ

{0 , 1 }

w Σ x Σ +

falls a = b sonst

isSuffix (w, x)

0 sonst

falls a = b

, a, b, Σ, w, x Σ

, a, b, Σ, w, x Σ

isInfix : Σ × Σ → {0 , 1 }

isInfix (w, ε) = 1,

w Σ

isInfix (ε, x) = 0,

x Σ +

isInfix (aw, bx) =

1

isInfix (w, bx)

falls a = b und isPrefix (w, x) sonst

(1.1)

(1.2)

(1.3)

(1.4)

(1.5)

1.1. GRUNDLEGENDE KONZEPTE

zum Tausch von Buchstaben

tausche : Σ × Σ × Σ Σ

tausche(ε, a, b) = ε

fur¨

a, b Σ

tausche(vc, a, b) = tausche(v, a, b) b tausche(v, a, b) c

Bemerkung 1.6:

Es gilt

anzahl (w, a) = |w| a

l (w) = |w| = l¨ange(w)

falls a = c sonst

fur¨

(1.6)

a, b, c Σ, w, v Σ +

rekursive

Beispiel 1.7:

Als Beispiel betrachten wir die Anwendung der rekursiven Funkttionen

Funktionen

isInfix , l, anzahl und tausche auf das Wort hallo. Fur¨

die Infix-Funktion l¨asst sich leicht

nachvollziehen, dass:

isInfix (hallo, l) = ja

isInfix (hallo, lla) = nein

isInfix (hallo R , lla) = ja

Mit Hife der L¨angen-Funktion kann die Anzahl der Buchstaben in hallo ermittelt wer-

den:

l (hallo) = l(hall) + 1 = l(hal) + 1 + 1 = l(ha) + 1 + 1 + 1

= l(h) + 1 + 1 + 1 + 1 = l(ε) + 1 + 1 + 1 + 1 + 1 = 0 + 1 + 1 + 1 + 1 + 1

= 5

Mit anzahl das Vorkommen von l in hallo gez¨ahlt werden:

anzahl (hallo, l) = anzahl (hall, l) = anzahl (hal, l) + 1 = anzahl (ha, l) + 1 + 1

= anzahl (h, l) + 1 + 1 = anzahl (ε, l) + 1 + 1 = 0 + 1 + 1

= 2

Und mit der tausche das l in ein x getauscht werden:

tausche(hallo, l, x) = tausche(hall, l, x) o = tausche(hal, l, x) xo

Formale Sprache,

164

Operationen auf

165

Sprachen

 

166

167

168

169

170

= tausche(ha, l, x) xxo = tausche(h, l, x) axxo

= tausche(ε, l, x) haxxo = ε haxxo

= haxxo

Definition 1.8:

eine Menge von W¨ortern uber¨

Eine Sprache uber¨

dem Alphabet Σ ist eine Teilmenge von Σ , also

1 , L 2

dem Alphabet Σ. Seien L, L

Sprachen uber¨

Σ.

L bezeichnet das Komplement von L in Σ

L 1 L 2 (oder kurz L 1 L 2 ) ist die Konkatenation von L 1 und L 2 , d.h. die Menge

, also die Sprache Σ

\ L.

aller W¨orter w = w

1 w 2 , wobei w 1 L 1 und w 2 L 2 .

Es gilt

L n = LL

L

n-mal

,

bzw.

L n = L L n1

Dabei ist L 1 = L und L 0 = {ε}. Der Kleeneabschluß von L ist die Sprache

L +

= n1

n 1.

L n steht fur¨

L

=

n0

L n .

die Menge aller W¨orter w 1

w n

mit w i

L und

1.2. GRAMMATIKEN

Beispiel 1.9:

Als Beispiel betrachten wir Σ = {a, b, 0, 1} sowie:

L

L 4 = {bb, ε}

1

=

{a, b}

Es gilt:

L 2 =

L 5 = {ε}

{0, 1}

L 3 = {ε, aa} L 6 = beliebig

L 1 L 2 = {a0, a1, b0, b1}

L 3 L 4 = {ε, bb, εε, aabb, aaε} = {ε, aa, bb, aabb}

L 5 L 6 = L 6

L 3 = L 1 L 2 = L 1 L 1 L 1 1 = L 1 L 1 L 1 L 0

1

1

1

= L 1 L 1 L 1 ◦ {ε} = L 1 L 1 L 1 = {aa, ab, ba, bb} ◦ L 1

= {aaa, aba, baa, bba, aab, abb, bab, bbb}

171 1.2

Grammatiken

172 Eine Grammatik gibt Regeln an, nach denen W¨orter einer Sprache generiert werden.

173 Dies geschieht in der Art eines Termersetzungsprozesses, bei dem Teile eines Worts

174 schrittweitse ge¨andert werden.

Grammatik

175

Definition 1.10: Eine Grammatik ist ein Tupel G = (Σ, V, P , S) bestehend aus

176

einem Alphabet Σ (dessen Elemente im Kontext von Grammatiken Terminalsym-

177 bole genannt werden),

178

einer endlichen Menge V von Variablen (auch Nichtterminale genannt), mit V

179 Σ = ,

einer Relation

P

(V Σ) + \ Σ + × (V Σ)

180 die Produktionssystem genannt wird; Die Elemente von P heißen Produktionen

181 oder Regeln,

182

einem Startsymbol S V .

Beispiel 1.11:

Ein Beispiel fur¨

eine Grammatik ist

G

= ({0, 1,

, 9}, {S, A}, P, S}

P

= {(S, 0), (S, 1A), (S, 2A),

, (S, 9A), (A, 1A), (A, 2A),

, (A, 9A), (A, ε)}

Ein anderes Beispiel ist

G

= ({a}, {S}, P, S}

P

= {S a, S aS} = {(S, a), (S, aS)}

Eine Beispielableitung fur¨

diese Grammatik ist:

S aS aaS aaa

Bemerkung 1.12:

Die Schreibweise u G v oder kurz u v anstelle von (u, v) P

und u

G v oder kurz u

v, falls (u, v) / P ist ublich.¨

Die Schreibweise

u v 1

v 2

.

.

.

v n

183 ist eine Kurzschreibweise fur¨ die Regeln u v 1 , u v 2 ,

184 Bemerkung 1.13: Meist wird auf die explizite Angabe von V , Σ und S bei einer

185 Grammatik verzichtet und nur das zugeh¨orige Produktionssystem angegeben.

Terminale sind

187 Kleinbuchstaben a, b,

, u v n .

sind 187 Kleinbuchstaben a, b, , u → v n . 186 Fur¨ Nichtterminale sind außerdem

186

Fur¨

Nichtterminale sind außerdem Großbuchstaben S, A, B,

ublich.¨

S wird ublicherweise¨

fur¨

und fur¨

das Startsymbol verwendet.

1.2. GRAMMATIKEN

G und G

Erzeugte Sprache,

¨

Aquivalenz von

Grammatiken

Definition 1.14:

Sei G = (Σ, V, P , S) eine Grammatik. Die Relation G (kurz ) ist wie folgt definiert:

Seien x und y zwei W¨orter uber¨ dem Alphabet V Σ. Dann gilt x y genau dann, wenn es W¨orter u, v, w, z (V Σ) gibt, so dass

188 Die Relation

G

Beispiel 1.15:

x

=

wuz,

y

= wvz,

u v.

oder kurz

bezeichnet die reflexive, transitive Hulle¨

47A 471A

47 A ε

w

u z

47 1A ε

z

A 1A P

w

v

von .

w u z ⇒ 47 1 A ε z A → 1 A ∈ P w

Beispiel 1.16:

S 4711

S

S

S

S