FB18 - Das Forum für Informatik

fb18.de / Bachelorstudieng / PM Formale Informatik

FGI-2_Klausur G-Prot

FGI-2_Klausur G-Prot 2009-02-22 04:24
Anonymer User
Aufgabe 1
Gegeben ist ein Transitionssystem TS1, welches aus unendlich vielen Zuständen und den Transitionen {a,b} besteht.Jeder Zustand ist ein Endzustand. "So" ist der einzige Startzustand.
die akzeptierte Sprache L(TS1)= a*|(ba*)* ,oder?

Wäre "So" KEIN ENDZUSTAND, dann wäre L(TS1')=a*b(a*b)* ,oder?

RE: FGI-2_Klausur G-Prot 2009-02-22 04:27
Anonymer User
Ergänzung….Jeder Zustand hat eine Schleife über "a" und die Übergänge zwischen Zuständen führen über "b".

RE: FGI-2_Klausur G-Prot 2009-02-22 07:04
rothose86
Aufgabe 1
Gegeben ist ein Transitionssystem TS1, welches aus unendlich vielen Zuständen und den Transitionen {a,b} besteht.Jeder Zustand ist ein Endzustand. "So" ist der einzige Startzustand.
die akzeptierte Sprache L(TS1)= a*|(ba*)* ,oder?
Nein, warum die | - Alternative ? In deinem regulären Ausdruck kommt z.B. nicht das Wort aba vor, was aber auch akzeptiert wird.
(a*(b))* ist der reg. Ausdruck für die akzeptierte Sprache. Kürzer: (a+b)*

Wäre "So" KEIN ENDZUSTAND, dann wäre L(TS1')=a*b(a*b)* ,oder?

Ja.

RE: FGI-2_Klausur G-Prot 2009-02-22 15:11
georg
(a*(b))* ist der reg. Ausdruck für die akzeptierte Sprache. Kürzer: (a+b)*

Die sind nicht äquivalent, mindestens einer von beiden stimmt also nicht.

RE: FGI-2_Klausur G-Prot 2009-02-22 15:37
rothose86
(a*(b))* ist der reg. Ausdruck für die akzeptierte Sprache. Kürzer: (a+b)*

Die sind nicht äquivalent, mindestens einer von beiden stimmt also nicht.

Jap stimmt, es muss letzterer sein.

RE: FGI-2_Klausur G-Prot 2009-02-22 18:57
Anonymer User
Wenn (a+b)* richtig ist, wie willst du denn "aba" darin unterbringen?
* - es kommt kein einziges Mal oder unendlich oft vor
+ - mindestens einmal
Kann man sich diesen Stern nicht wie eine Potenz vorstellen,ohne dass man die kombinierten Elemente a la 2ab bei *=2 mit berücksichtigt.
Wenn (a+b)* auch aba enthält, dann verstehe ich die Schreibweise nicht. Kann mich jemand aufklären.

RE: FGI-2_Klausur G-Prot 2009-02-22 19:02
UncleOwen
+ - mindestens einmal

Das wäre ein hochgestelltes +. Das normale steht für "oder".

RE: FGI-2_Klausur G-Prot 2009-02-22 19:04
Anonymer User
Das wäre ein hochgestelltes +. Das normale steht für "oder".
So habe ich es auch gemeint. Ich wusste nur nicht, wie ich hier ^+ hinkriegen soll.

RE: FGI-2_Klausur G-Prot 2009-02-22 19:05
Anonymer User
Wenn das normale "+" für oder steht, dann könnte man's auch als (a|b)* schreiben???

RE: FGI-2_Klausur G-Prot 2009-02-22 19:09
Anonymer User
@rothose
Ich verstehe nach wie vor nicht, wieso (a+b)* resp. (a|b)* den Ausdruck "aba" enthalten sollten……

RE: FGI-2_Klausur G-Prot 2009-02-22 19:35
Fred
Wenn (a+b)* richtig ist, wie willst du denn "aba" darin unterbringen?
(a+b)* => (a+b)(a+b)(a+b) => aba

Das Sternchen kommt sozusagen zuerst.

RE: FGI-2_Klausur G-Prot 2009-02-22 19:42
Anonymer User
@Fred
leuchtet jetzt ein.
Wie würde dann der Automat aussehen, der a*|(ba*)* akzeptiert????

RE: FGI-2_Klausur G-Prot 2009-02-22 20:07
Fred
(a*(b))*
(a+b)*
Die sind nicht äquivalent
Wären folgende äquivalent?

((a*)b)*
((a+b)*)b | epsilon

RE: FGI-2_Klausur G-Prot 2009-02-22 20:45
Anonymer User
Ich verstehe jetzt, wieso ich die Aufgabe in der Klausur nicht lösen konnte. Eine ähnliche Aufgabe hatte es in der Übung gegegebn, die war aber deutlich einfacher gewesen.
Ich sehe, keiner kann hier die RegEx oder Automaten dazu aus den Ärmeln schütteln.
Es muss irgendwelche Verfahren geben, mit hilfe derer die Ausdrücke bei Äquivalenz ineinander überführt werden können. Hoffentlich wird Prof Jantzen hier reinschauen und uns auf die Sprünge helfen.

RE: FGI-2_Klausur G-Prot 2009-02-22 20:55
rothose86
Soweit ich weiß gibt es einen Verfahren zum bestimmen des eindeutigen minimalen Automaten.
Man könnte also zu zwei regulären Ausdrücken leicht den Automaten aufzeichnen, und beide Automaten minimieren. Sind die minimierten Äquivalent(bis auf Bezeichnung der Zustände), so dürften die ursprünglichen regulären Ausdrücke auch äquivalent sein.
Weiß nur leider aus dem Stegreif nicht mehr wie das Verfahren zum minimieren funktioniert :P

RE: FGI-2_Klausur G-Prot 2009-02-22 21:31
Anonymer User
Das Sternchen kommt sozusagen zuerst.

Die Prioritäten für RegEx-Operatoren:
1.Hüllenbildung (*)
2.Verkettung (ab)
3.Oder/Vereinigung (a|b) resp. (a+b)

RE: FGI-2_Klausur G-Prot 2009-02-22 22:45
georg
Wären folgende äquivalent?

((a*)b)*
((a+b)*)b | epsilon

Ja, die sind äquivalent.

RE: FGI-2_Klausur G-Prot 2009-02-22 23:16
Anonymer User
Ich habe hier: JFLAP ein Java-Programm(jar) gefunden, welches RegEx in epsilon-NFAs überführt. Damit kann man sich für 2 unterschiedlich formulierte Ausdrücke die entsprechenden NFAs ausgeben lassen.Dann kann man eher feststellen, ob die Ausdrücke äquivalent sind. Die Visualisierungsengine des Programms ist nicht die tollste.

Und hier ist noch einiges zum Überführungsalgo (RegEx–>NFA). Laut diesem Algo würde der Automat zu (a+b)* ein wenig anders aussehen, als der aus der Klausur, müsste aber zwangslaüfig äquivalent sein, weil sonst könnte er nicht die gleiche Sprache akzeptieren.

RE: FGI-2_Klausur G-Prot 2009-02-22 23:26
Anonymer User
…und zwar
Es gibt einen Startzustand So (zugleich Endzustand). Von hier aus gelangt man über a zu So' und über b zu So''. Von So' oder So'' gelangt man jeweils über epsilon zu S1. Hier fängt das Spiel von vorne an……..Das müsste doch ein äquivalenter Automat zu dem aus der Klausur sein, oder?

RE: FGI-2_Klausur G-Prot 2009-02-23 02:24
georg
Ich habe hier: JFLAP ein Java-Programm(jar) gefunden, welches RegEx in epsilon-NFAs überführt. Damit kann man sich für 2 unterschiedlich formulierte Ausdrücke die entsprechenden NFAs ausgeben lassen.Dann kann man eher feststellen, ob die Ausdrücke äquivalent sind. Die Visualisierungsengine des Programms ist nicht die tollste.

Oh, Vorsicht! Ein Programm, das NFAs erzeugt, kann nicht zum Äquivalenztest von regulären
Ausdrücken verwendet werden. Das geht nur dann, wenn das Programm garantiert: "Wenn die
Ausdrücke äquivalent sind, dann sind die Automaten isomorph". Es kann nämlich sein, dass das
Programm zu äquivalenten Ausdrücken verschiedene Automaten liefert.

RE: FGI-2_Klausur G-Prot 2009-02-23 07:03
rothose86
Ja daher musst beide Automaten minimieren. Denn der minimierte Automat muss eindeutig sein.

RE: FGI-2_Klausur G-Prot 2009-02-23 08:28
Anonymer User
Das geht nur dann, wenn das Programm garantiert: "Wenn die
Ausdrücke äquivalent sind, dann sind die Automaten isomorph".
Davon bin ich ausgegangen.

RE: FGI-2_Klausur G-Prot 2009-03-24 09:41
Anonymer User
Und wo findet man jetzt das Gedächtnisprotokoll?
Auf der Fachschaftsseite habe ich auch nichts gefunden..

RE: FGI-2_Klausur G-Prot 2009-03-24 11:26
rothose86
http://www.informatik.uni-hamburg.de/Fachschaft/wiki/index.php/Ged%C3%A4chtnisprotokoll_FGI209-1

RE: FGI-2_Klausur G-Prot 2009-04-01 16:47
TieKei
Aufgabe 9 im Gprot:
2. Ist [latex]t_1 \underline{\leftrightarrow} t_2[/latex]  entscheidbar?
3. Ist [latex]\neg (t_1 \underline{\leftrightarrow} t_2)[/latex] entscheidbar?

also rein intuitiv sage ich zu beiden "ja" … aber gibt es da eine tolle Begründung / Beweisführung die ich kennen sollte?

RE: FGI-2_Klausur G-Prot 2009-04-01 23:32
Anonymer User
Was wäre die Omega-Sprache in 1.4 ????