Theoretische und technische Informatik - ganz praktisch
Herzlich willkommen auf der Question/Answer-Plattform zu Grundlagen der Informatik II. Wir wünschen Ihnen viel Spaß beim Lernen und Diskutieren!
Loggen Sie sich mit Ihrem KIT-Account (u...) ein, um loszulegen!
Beachten Sie auch diese Informationen zum Schnelleinstieg.
(Nicht-KIT-Studierende beachten bitte diese Informationen.)

Beliebteste Tags

verständnis alternativlösung klausur kellerautomat endlicher-automat grammatik regulärer-ausdruck turingmaschine pumpinglemma tipp zahlendarstellung cmos bonusklausur klausurrelevant komplexität schaltwerk binary-decision-diagram deterministisch assembler schaltnetz minimierung sprachen nichtdeterministisch huffman chomsky-normalform fehler-in-aufgabe anwesenheitsübung rechtslinear heimübung flip-flop huffman-kodierung cocke-younger-kasami-algorithmus kontextsensitive-grammatik kontextfreie-grammatik fehlererkennbarkeit hauptklausur vorlesungsfolien polynomialzeitreduktion kontextfreie-sprache faq gleitkommazahl fehlerkorrigierbarkeit rechtslineare-grammatik dateiorganisation cache darstellung-klausur nachklausur xwizard adressierungsarten mealy lambda endliche-automaten konjunktive-normalform pipelining zustände saalübung leeres-wort moore ohne-lösungen betriebssystem speicherorganisation monotone-grammatik 2-komplement hammingzahl lösungsweg fehler pumping-lemma-für-kontextfreie-sprachen pumping-lemma reguläre-sprache monoton kodierung berechenbarkeit klausureinsicht disjunktive-normalform abzählbarkeit info-ii bussysteme rechnerarchitektur entscheidbarkeit komplexitätsklassen chomsky-klassen ableitungsbaum vorlesungsaufzeichnung round-robin aufzählbarkeit minimierung-endlicher-automaten von-neumann-rechner binärzahl entscheidbar programmiersprachen stern-symbol automaten schaltnetze-und-schaltwerke nukit-fragen bewertung zugriffsarten umformung adressierung mengen binär-subtrahieren

Kategorien

1 Pluspunkt 0 Minuspunkte
50 Aufrufe

Sind die auch richtig?

a=(aa*b+b(a+b)*)*

a=(aa*b)*(b(a+b)*)*

Danke!

 

in 2012-N-01 von uafjv uafjv Tutor(in) (168k Punkte)  

2 Antworten

0 Pluspunkte 0 Minuspunkte
 
Beste Antwort

Hallo,

diese Frage ist wohl unter den Tisch gefallen, deshalb eine späte Antwort:

(aa*b+b(a+b)*)* (Vorschlag weiter oben in diesem Post) ist tatsächlich falsch. Stattdessen könnte es bspw. folgendermaßen heißen:

(aa*b)*b(a+b)*+leereMenge* (diese Lösung ist auch als Musterlösung angegeben).

Auch der zweite Lösungsvorschlag

(aa*b)*(b(a+b)*)*

ist, wenn ich das gerade richtig überblicke, nicht korrekt. Der letzte Stern muss weg und entsprechend fehlt dann noch das leere Wort, wodurch wir wieder bei 

(aa*b)*b(a+b)*+leereMenge*

wären.

Viele Grüße

Lukas König

von uafjv uafjv Tutor(in) (168k Punkte)  
0 Pluspunkte 0 Minuspunkte

Ich denke, beide Vorschläge sind korrekt.

Tobias (Tutor)

 

von uafjv uafjv Tutor(in) (168k Punkte)  
0 0
Wieso ist denn hier der erste Vorschlag korrekt?

Klammer mit * heißt doch, dass der Ausdruck in den Klammern beliebig oft wiederholt werden kann, in dem Fall, dass beliebig oft die Entscheidung zwischen den mit "oder" verknüpften Termen getroffen werden kann.
Wenn ich mich aber einmal für die Variante b(a+b)* entschieden habe komme ich doch nicht mehr aus Zustand s4 heraus, sprich ich könnte mich nicht nochmals für aa*b entscheiden.
Mit erstem Vorschlag ist der obige Post mit a=(aa*b+b(a+b)*)* gemeint.
...