Formale Methoden I - Universität Bielefeld
Formale Methoden I - Universität Bielefeld
Formale Methoden I - Universität Bielefeld
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
61<br />
an, X n = L n·M. Dann ist X n+1 = L·X n ∪M=L·Ln·M∪M=Ln+1·M∪M=Ln+1·M,<br />
weil M⊆L n+1·Mist, dennε∈ L n+1 . Zu guter Letzt folgt jetzt leicht, dass<br />
(128) X ∗ = L ∗·M<br />
Ich weise noch auf Folgendes hin. Ist L={ε}, so ist, wie man leicht sieht, X 1 = X 2 .<br />
Denn L n ={ε}, und so ist X n = L n· K. Die Bedingung X= L· X∪M reduziert sich<br />
auf X=X∪M, was nichts anderes bedeutet, als dass X⊇M. Ist L{ε}, so enthält<br />
L wenigstens ein Wort der Länge> 0, und so ist eine Lösung von X=L·X∪M<br />
stets unendlich.<br />
Wir kommen nun zu den regulären Sprachen.<br />
Definition 10.5 (Regulärer Ausdruck) Ein regulärer Ausdruck über A hat die<br />
folgende Form.<br />
➀ 0,εoder a, wo a∈A;<br />
➁ s ∗ , wo s ein regulärer Ausdruck ist;<br />
➂ s∪t, s·t, wo s und t reguläre Ausdrücke sind.<br />
Eine andere Notation zu∪ist auch|. Außerdem wird der Punkt·gerne weggelassen.<br />
Terme werden sparsam geklammert. Der Punkt und die Vereinigung sind<br />
assoziativ. So schreibt man dann ((M·a)·u)·s unter Weglassen von Klammern<br />
schlichtM·a·u·s, und schließlich lässt man auch noch die Punkte weg und bekommtMaus.<br />
Dies suggeriert natürlich, dass wir die Zeichenkette/Maus/ definiert<br />
haben, und das ist in der Tat auch richtig, wenn wir von der Tatsache absehen, dass<br />
es nicht die Zeichenkette definiert, sondern die Sprache{Maus}, die als einziges<br />
ebendiese Zeichenkette enthält.<br />
Doch zunächst muss ich sagen, welche Sprache ein regulärer Term eigentlich<br />
bezeichnet. Die von dem regulären Ausdruck r bezeichnete Sprache S (r) ist wie<br />
folgt definiert.<br />
(129)<br />
S (0) :=∅<br />
S (ε) :={ε}<br />
S (a) :={a}<br />
S (s∪t) :=S (s)∪S (t)<br />
S (s·t) :=S (s)·S (t)<br />
S (s ∗ ) :=S (s) ∗