Sie sind auf Seite 1von 3

Das Pumping Lemma:

Nachweis von Nichtregularitt einer Sprache


Dominic Scheurer, 23. Mai 2013
Grundlagen Das Pumping Lemma beschreibt eine Eigenschaft von regulren
Sprachen; das heit, falls eine Sprache regulr ist, hat sie die Eigenschaft PL:
L

regulr = PL(L)
Damit gilt auch die Kontraposition
PL(L) = L nicht regulr,
d.h. falls das Pumping Lemma fr eine Sprache nicht gilt, ist die Sprache nicht
regulr. Nicht jedoch gilt die Umkehrung PL(L) = L regulr, man kann also
nichtregulre Sprachen nden, welche das Pumping Lemma erfllen (bspw. L =
{a
m
b
n
c
n
: m, n 1} {b
m
c
n
: m, n 0}).
Intuition Das PL basiert darauf, dass jede regulre Sprache als DFA dar-
stellbar ist (Satz von Kleene). Da ein DFA denitionsgem aus endlich vielen
Zustnden besteht, mssen Wrter ab einer bestimmten Lnge beim Einlesen
in den DFA eine Schleife passieren. Diese Schleife kann dann beliebig oft wie-
derholt (gepumpt) werden, wobei das daraus resultierende Wort immer noch
in der Sprache liegen muss.
Betrachten wir examplarisch die Sprache L(a

bc

) mit dem DFA


Jedes Wort ab einer Lnge von n 3 durchluft beim Einlesen mindestens
eine Schleife von Zustand 1 zu 1 oder von Zustand 3 zu 3, das Wort x = aaabcc
durchluft zwei solcher Schleifen. Durch pumpen der ersten Schleife erhalten
wir bspw. das Wort x

= aaaaabcc, welches auch vom Automaten akzeptiert


wird.
1
Das Lemma Das Pumping Lemma formalisiert diese Beobachtung. Sei also
L

regulr. Dann muss eine Zahl n N existieren, sodass sich jedes Wort
x L mit mindestens der Lnge n, also |x| n, zerlegen lsst in x = uvw mit
|uv| n und v = , und es gilt fr alle m N dass u v
m
w L.
Im obigen Beispiel wre n = 3 (bzw. irgendeine Zahl 3). Das Wort v
+
steht fr die Schleife. Da es immer schon nach dem Einlesen von drei Zeichen
zu einer Schleife kommen muss, gilt stets |uv| n.
Formalisiert lautet das Lemma fr eine regulre Sprache L
PL(L) n Nx L

|x| n u, v, w

(x = uvw |uv| n v = m N(uv


m
w L))

Anwendung Zum Nachweis der Nichtregularitt einer Sprache L ist entspre-


chend der obigen Erluterung zu den Grundlagen die Negation PL(L) zu zei-
gen (Kontraposition des Lemmas: Falls PL fr L nicht gilt, ist L nicht regulr).
Diese lautet
PL(L) n Nx L

|x| n u, v, w

((x = uvw |uv| n v = ) m N(uv


m
w / L))

Die Formel PL(L) enthlt zwei Existenzquantoren ; hier mssen wir bei der
Anwendung konkrete Werte liefern. Die allquantizierten Variablen () werden
als Konstanten behandelt. Auf diese Weise, ohne die Zuweisung konkreter Wer-
te, kann die Aussage fr alle mglichen Werte der allquantizierten Variablen
bewiesen werden.
Der folgende Algorithmus kann als Hilfestellung zum Einsatz des Pumping
Lemmas beim Nachweis der Nichtregularitt einer Sprache L

dienen.
Algorithmus 1 Nachweis von Nichtregularitt mittels Pumping Lemma
Vorbedingung: L

Ergebnis: L ist nicht regulr.


Sei n N.
Whle x L, sodass |x| n Erster Kreativschritt
Seien u, v, w

, sodass x = uvw |uv| n v =


Analysiere die Beschaenheit von u, v, w anhand der
gegebenen Informationen Es ist nicht erlaubt, u, v, w fest zu whlen!
Whle m N Zweiter Kreativschritt
Zeige, dass uv
m
w / L
Ein Beweis mit Pumping Lemma erfordert also zwei kreative Schritte: Die
Wahl eines (konkreten) Wortes x L (Gegenbeispiel zur Pumpbarkeit) und ei-
nes (konkreten) Pumpfaktors m M. Die restlichen Schritte sind analytischer
Art: Es drfen auf keinen Fall konkrete Zerlegungen uvw gewhlt werden, also
bspw. sei u := a
n
(verboten!) stattdessen wird mit diesen Variablen symbo-
lisch umgegangen. Die Wahl von x erfolgt dabei blicherweise in Abhngigkeit
von n (zustzlich zur sowieso einzuhaltenden Einschrnkung |x| n).
2
Beispiel. Betrachte die Sprache L = {a
m
: m ist eine Quadratzahl}. Wir wol-
len zeigen, dass L nicht regulr ist. Sei also n N. Wir mssen also ein gengend
langes Wort x L, das nicht pumpbar ist. Hier liegt die Wahl von x := a
n
2
nahe: Es gilt |x| n sowie x L, und auerdem wurde x in Abhngigkeit
von n gewhlt (das ist nicht verpichtend, aber sinnvoll; bspw. wre ein Beweis
mit x := a
q
, q eine beliebige Quadratzahl sodass |a
q
| n weniger zielfhrend).
Damit wre der erste der beiden Kreativschritte erledigt. Sei uvw nun eine belie-
bige Zerlegung von x, also x = uvw, welche die Einschrnkungen |uv| n sowie
v = erfllt. Jetzt whlen wir m := 2 (zweiter Kreativschritt). Wir betrachten
nun, was beim pumpen mit m geschieht:

uv
2
w

= |u| +2 |v| +|w|. Da |v| 1,


ist |uvw| = n
2
< |u| + 2 |v| + |w|. Da weiterhin |uv| n, ist |u| + 2 |v| 2n,
damit ist |u| + 2 |v| + |w| 2n + |w|. |w| hat hchstens die Lnge n
2
1, da
v = . Damit ist 2n + |w| 2n + n
2
1 = (n + 1)
2
2 und damit eindeutig
2n +|w| < (n + 1)
2
. Wir haben also insgesamt herausgefunden, dass
n
2
<

uv
2
w

< (n + 1)
2
Die Lnge des gepumpten Worts liegt also echt zwischen zwei benachbarten
Quadratzahlen, kann also nicht selbst eine Quadratzahl sein. Damit gilt uv
2
w /
L, also ist L nicht regulr.
'
&
$
%
Wichtig
Folgende Werte beim Beweis mit dem Pumping Lemma mssen konkret gewhlt
werden:
Gegenbeispiel x L
Pumpfaktor m N
Folgende Werte mssen dagegen symbolisch behandelt und analytisch bezglich
der gegebenen Einschrnkungen betrachtet werden:
Pumping Lemma-Konstante n N
Elemente der Zerlegung u, v, w

Best Practices bei der Wahl von x und m Oft ist es sinnvoll, das
Wort x von einer Lnge wesentlich grer als n zu whlen, bspw. x = a
n
b
n
(|x| = 2n > n), da dann die Struktur des Prxes uv klarer ist; im Beispiel a
n
b
n
knnten u und v hchstens aus as bestehen, da |uv| n. Weiterhin benden sich
sinnvolle Gegenbeispiele x hug im Grenzbereich der Sprache, bspw. a
n+1
b
n
bei einer Sprache mit echt mehr as als bs. Wenn Unklarheit bei der Wahl von
des Pumpfaktors m besteht, lohnt sich hug ein Versuch mit m = 0.
3