05.11.2013 Aufrufe

Formale Methoden I - Universität Bielefeld

Formale Methoden I - Universität Bielefeld

Formale Methoden I - Universität Bielefeld

MEHR ANZEIGEN
WENIGER ANZEIGEN

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) ∗

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!