FB18 - Das Forum für Informatik

fb18.de / Diplom Informatik / Unterbereich Grundstudium / Formale Informatik

F2 Blatt11 Aufgabe 11.1

F2 Blatt11 Aufgabe 11.1 2004-06-26 16:54
Anonymer User
Hi Leute,

versuche gerade F2 Aufgaben zu bearbeiten und hab ein paar Probleme mit der Anwendung des Pumping-Lemmas der kontextfreien Sprachen.

Mein Wissenstand:
Also gegeben ist ja immer eine Sprache.
Mit dem Pumping Lemma kann man nur beweisen, dass eine Sprache nicht kontextfrei ist. Das natürlich nicht ausschliesst, dass es auch nicht kontextfreie Sprachen gibt, die die Pumping-Lemma Eigenschaften erfüllen.

Das Pumping-Lemma:

Für jede kontextfreie Sprache L aus Cf gibt es eine Zahl n aus N, so dass jedes Wort z aus L mit |z| >= n eine Zerlegung z = uvwxy besitzt, für die golgendes gilt:

(i): |vx|>=1
(ii): |vwx|<= n (n:= 2^k, k=|Vn|)
(iii): für alle i>=0 u v^i w x^i y aus L

(|z| ist genau die Anzahl der Knoten mit genau einem Nachfolger und u, v, w, x, y sind doch Teilwörter von z, oder?)


Nun die gegebene Sprache in 11.1 ist:

L11.1:={a^r b^s c^t| r,s,t aus N : (r+s = 2*t) und (s =< r)}


L11.1 lexikalisch geordnet:

L11.1={ lambda, aac, abc,aaaacc, aaabcc, aabbcc, aaaaaaccc, aaaaabccc, aaaabbccc, aaabbbccc, aaaaaaaacccc, aaaaaaabcccc, aaaaaabbcccc……..}

In diesem Fall handelt es sich doch um eine unendliche Menge, net wahr?

So, nun sollte man ein passendes Wort aus dieser Menge nehmen und die Pumping Kriterien durchgehen:


Im Skript steht ja 2^k =< |z| =< 2^q und das k ist gleich der Kardinalität der Nonterminale, heisst es dann in diesem Fall(wegen lambda), dass es keine Nonterminale in der Grammatik gibt, oder bezieht sich dann die Kardinalität nur auf die Nonterminale, die zur Bildung eines bestimmten Wortes benutzt werden?


So, ich nehme mal das Wort z = aaabbbccc = uvwxy und es muss gelten:

1. |vx|= |aaabbb|>=1

2. |vwx|=|aaabbb|=6 =< n

(n=2^k und woher weiss man, wie gross k ist? Muss man die Grammatik Syntax dazu herstellen?)

3. für alle i >= 0, u v^i w x^i y aus L, aber in diesem Fall geht das nicht, da für i=0 das Wort ccc entsteht und dieses Wort ist nicht aus der gegebenen Sprache.

Ich bin sicher, dass das absolut falsch ist, was ich gemacht habe, aber vielleicht kann jemand meinen Denkfehler erkennen und mir behilflich sein.

Bis denn

Re: F2 Blatt11 Aufgabe 11.1 2004-06-26 20:56
Anonymer User
(ii): |vwx|<= n (n:= 2^k, k=|Vn|)

Du schreibst vorher richtig "Für jede kontextfreie Sprache L aus Cf gibt es eine Zahl n aus N, so dass …". Diese Zahl n muss aber nicht 2^k sein (mit k = |V_N|). Dies wird lediglich im Beweis so gewählt.

Du fängst einen Beweis dieser Art immer mit Formulierung der Art "Sei n die Zahl aus dem Pumping Lemma" o.ae. an, dann suchst du dir ein Wort (länger n) und zeigst, dass *JEDE* Zerlegung dieses Wortes in uvwxy im Widerspruch zu einer der Bedingungen ist (das läuft darauf hinaus, dass man bei jeder Zerlegung durch "Pumpen" (Bedingung (iii)) Wörter erzeugen kann, die nicht mehr in L sind). Dann hast du letztlich einen Widerspruch zu der Annahme L sei kontextfrei und bist damit fertig. (Sofern sich denn wirklich zeigen lässt, dass L nicht kontextfrei ist - und dies zusätzlich noch mit Hilfe des Pumping Lemma überhaupt geht.)

Ein "gutes" Wort zufinden ist allerdings manchmal eine Herausforderung.

Hilft dir das schon?

Cheers.

Re: F2 Blatt11 Aufgabe 11.1 2004-06-27 15:59
Anonymer User
Hi,

ist denn das n nun frei wählbar oder gibt es irgendwelche Beschränkungen?

Soweit ich das nun verstanden habe, kann man z.B. n=4 setzen, dann nehme ich das Wort z = aaaabbccc = uvwxy mit |z|= 9 und unterteile das Wort, so wie ich will:
u=aaa, v=a, w=b, x=b, y=ccc

1. |vx| = |ab| >= 1, ok, stimmt auch
2. |vwx| = |abb| =< 4, ok, stimmt auch
3. für alle i>=0 uv^iwx^iy aus L11.1
Diese dritte Bedingung ist nicht erfüllt, da für i=0 das Wort z = uwy = aaabccc entsteht und das Wort ist kein Element aus L11.1.

Also ist L11.1 ist nicht kontextfrei.

Re: F2 Blatt11 Aufgabe 11.1 2004-06-27 18:13
Joker
Wie der Beitrag vor deinem schon relativ ausführlich erklärt, musst du JEDE mögliche Zerlegung des gewählten Wortes betrachten, nicht nur eine. Außerdem würde ich beim gewählten Wort immer erst eines der einfachsten wählen, dass die Bedingungen der Sprache erfüllt.

Re: F2 Blatt11 Aufgabe 11.1 2004-06-27 18:53
Anonymer User
kann man z.B. n=4 setzen

Nein, nein, nein [img]http://www.fb18.de/gfx/23.gif[/img]

Die Aussage des Pumping Lemmas (für Kontextfreie Sprachen) ist: WENN L eine Kontextfreie Sprache ist, DANN gibt es eine Zahl n mit ….. [bestimmten Eigenschaften, für alle Wörter deren Länge >= n ist]

Man nimmt also an (!!) L wäre kontextfrei und darf daher schliessen, dass das Pumping Lemma gilt und also ein n mit den Eigenschaften (i), (ii) und (iii) [siehe Skript] existiert. Wie diese n aussieht weiss man nicht, brauch man auch nicht wissen! Man weiss es gibt so ein n (unter der Annahme L sei kontextfrei) und damit kann man dann arbeiten. Man sucht sie nun ein Wort, dass irgendwie von n abhängt (sinnvollerweise) und dessen Länge >= n ist und dann zeigt man, dass für alle Zerlegungen dieses Worter in uvwxy ein Widerspruch entsteht (zu (iii) im Pumping Lemma).

So. Ist das jetzt vielleicht klarer? Nochmal will ich das jetzt nämlich eigentlich nicht schreiben [img]http://www.fb18.de/gfx/28.gif[/img]

Tipp: Guckt euch das Pumping Lemma auch (neben Skript) in Büchern an und lest vor allem auch die Beispiele, die es eigentlich immer gleich dazu gibt, durch und macht sie auf einem Blatt Papier daneben insb. auch selbst!

Cheers.

Re: F2 Blatt11 Aufgabe 11.1 2004-06-27 18:56
Anonymer User
und dann zeigt man, dass für alle Zerlegungen dieses Worter in uvwxy ein Widerspruch entsteht (zu (iii) im Pumping Lemma).

Noch eine Ergänzung: Diese Zerlegungen wählt man so, dass (i) und (ii) des Pumping Lemmas erfüllt sind (sonst hat man bereits einen Widerspruch für diese Zerlegung) und zeigt dann, dass nun aber (iii) nicht gilt!

Und das soll oben im Zitat nicht "dieses Worter" sondern "dieses Wortes" heissen. Ausserdem:

Wie diese n aussieht weiss man nicht

Soll "dieses n aussieht" heissen - nicht das jemand irrtümlich meint, man hätte mehrere [img]http://www.fb18.de/gfx/25.gif[/img]

So, genug an mir rumgemäkelt [img]http://www.fb18.de/gfx/22.gif[/img]

Cheers.

Re: F2 Blatt11 Aufgabe 11.1 2004-06-29 13:18
Anonymer User
Hi Leute,

hab das Prinzip und die Anwendung des Pumping Lemma nun Dank eurer Mithilfe verstanden.

Bis denn