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

0 Pluspunkte 1 Minuspunkt
38 Aufrufe

Ist die folgende Lösung auch nicht deterministisch bzw falsch?

 

(s0,1,k0)->(s0,1k0)

(s0,0,k0)->(s0,0k0)

 

(s0,0,0)->(s0,00)

(s0,1,1)->(s0,11)

 

(s0,1,0)->(s0,lambda)

(s0,0,1)->(s0,lambda)

 

(s0,lambda,ko)->(se,k0)

 

Wobei se einziger gültiger Endzustand ist.

Grüße, Patrick.

in AU-2-3 von uafjv uafjv Tutor(in) (168k Punkte)  

2 Antworten

0 Pluspunkte 0 Minuspunkte

Hallo Patrick,

der Kellerautomat ist leider auch nicht deterministisch.

Das liegt an folgenden Übergängen:

(s0,1,k0)->(s0,1k0)

(s0,0,k0)->(s0,0k0)

und

(s0,lambda,ko)->(se,k0)

Das Problem liegt darin, dass du dich in dem Fall "Zustand s0 und k0 oberstes Zeichen im Keller" zwischen mehreren Alternativen entscheiden kannst. Deshalb ist der Automat eben nicht deterministisch.

Allgemein kannst du einen Lambdaübergang nur dann bei einem deterministischen Automaten aufstellen, wenn sonst niemals die gleiche Kombination aus Zustand und obersten Symbol im Keller vorkommt.

Viele Grüße

Lukas (Tutor)

von uafjv uafjv Tutor(in) (168k Punkte)  
0 0
Hallo Lukas,

jetzt bin ich völlig verwirrt

(s0,1,k0)->(s0,1k0)

(s0,0,k0)->(s0,0k0)


ist also nicht deterministisch, weil s0,k0 zweimal vorkommt und er deswegen nicht sicher sagen kann wohin er geht.

[Hängt das nicht auch von der Eingabe 1 oder 0 ab?]


In der Musterlösung gibt es aber folgende Zeile:

(s0,1,k0)->(s1,1k0)

(s0,0,k0)->(s1,0k0)


warum ist diese denn deterministisch?
0 0
Der Automat in der Musterlösung ist detetministisch, weil er eben immer genau weiß, welchen Übergang er in Abhängigkeit von dem nächsten Symbol der Eingabe wählen muss. Hier gibt es keinen Lambda-Übergang, den er alternativ auswählen könnte.

Wenn du allerdings einen Lambda-Übergang dabei hast (bei der gleichen Kombination von Zustand und oberstem Zeichen im Keller!!!), kannst du dich entscheiden, ob du eben diesen Lambda-Übergang, oder einen der anderen Übergänge auswählst.

Viele Grüße

Lukas (Tutor)
0 Pluspunkte 0 Minuspunkte

Hallo,

nein, der Automat ist nichtdeterministisch, da neben diesen Übergängen noch ein Lambda-Übergang von s0, k0 existiert. Man kann sich das so vorstellen, dass der Automat nicht "weiß" , ob er direkt weitermacht (lambda), oder auf die Eingabe von 0 oder 1 wartet.

Viele Grüße

Philippe (Tutor)

 

von uafjv uafjv Tutor(in) (168k Punkte)  
...