Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hi leute,

schönes Forum habt ihr hier :)

Kennt sich hier jemand mit DEAs aus?

Ich hab mal einen Ablauf gestaltet in dem geprüft werden soll, ob zwischen einem w und einem y ein bzw. zwischen einem y und einem w ein x vorkommt.

Kann mir einer sagen ob dieser Algorithmus so richtig ist?

Bsp: wwwxy,wxxxyy sind möglich, wwyybw hingegen nicht.

Würde mich sehr freuen, wenn mir jemand helfen könnte.

mfg Rainer

post-65816-14430448509415_thumb.jpg

Geschrieben

Hi,

vielen Dank für die schnelle Antwort.

Aber der Automat darf doch auch jede (der zulässigen Eingaben w,x,y) Eingabe akzeptieren, oder?

bzw. es ist nicht Pflicht, dass er unbeingt auch mit w anfangen muss. es könnte auch xxyxw heißen

mfg Rainer

Geschrieben

Versuche doch einen regulären Ausdruck zu finden, den Du dann ganz einfach in einen ea übersetzt. Da reguläre Ausdrücke ebenso wie der ea eine Typ-3-Grammatik / reguläre Grammatik der Chomsky-Hierarchie sind, musst Du nur den regulären Ausdruck als Automaten darstellen.

Folgender regulärer Ausdruck akzeptiert Deine genannten Wörter:

((w+)(x+)(y+))|((y+)(x+)(w+))

wobei Du vielleicht auch einmal definieren solltest, wie oft ein Buchstabe vorkommen sollte, denn nach Deinem Post ist keine Aussage über w und y getroffen. Außerdem hast Du noch den Buchstaben "b" genannt.

Formuliere Dein Problem einmal mit den korrekten Bezeichnungen (Sigma, leeres Wort, etc), dann kann man auch besser helfen.

Geschrieben (bearbeitet)

Von jedem Deiner Knoten müssen, wenn b,x,y und w als Eingaben zulässig sind, vier Kanten abgehen, sonst ist der DEA nicht ausreichend definiert.

Beispielsweise ist bisher in Zustand "w" nicht definiert, was passiert, wenn ein y eingegeben wird. Da musst Du einfach nur anbauen.

Bearbeitet von Ezra
Geschrieben
@anubis

wie kann der automat wy aktzeptieren?

Da der Automat für jede eingabe ausser dem leeren Wort in der Menge der Endzustände landet und dort auch nicht mehr heraus kommen kann aktzeptiert er {w,x,y}^+ und damit auch wy

Geschrieben

Ähm nein wenn kein Übergang geben ist macht der Automat einfach nichts folglich bleibt er im Endzustand und akzeptiert. ;) Diese Aussage ist jetzt Formal nicht ganz korrekt da per Definition für jede mögliche Eingabe einen Übergang geben muss. Das macht hier allerdings keinen Unterschied denn selbst wenn man einen übergang für y hinzufügen würde er noch aktzeptieren, da er garnicht anderst kann.

Begründung:

Sei L(M) die vom DEA M aktzeptierte Sprache, dann erhalten wir den Komplementärautomaten M' in dem wir alle Nichtendzustände zu Endzuständen machen und alle Endzustände zu Nichtendzuständen machen. Die von M' aktzeptierte Sprache ist dann L(M')=Sigma^*\L(M).

Wenden wir das nun auf unseren Fall hier an stellen wir fest L(M')=leereswort

=> L(M)=Sigma^+={w,x,y}^+

Geschrieben

Hmm dann ist das wohl Definitionsfrage. Aber wenn man das so interpretiert das alle nicht angegeben Übergänge in einen Müllzustand und zu nicht akzeptanz führen stimmt der Automat vielleicht doch so ja was den nun :confused:

Geschrieben

ööhm, seid ihr mir böse, wenn ich gerade total verwirrt bin xD

was ist denn denn nun mit dem teil? Rein nach der Logik sollte er doch funktionieren. Ich frage mich nur ob meine Endzustände auch wirklich endzustände sind.

mfg Rainer

Geschrieben (bearbeitet)
ööhm, seid ihr mir böse, wenn ich gerade total verwirrt bin xD

was ist denn denn nun mit dem teil? Rein nach der Logik sollte er doch funktionieren. Ich frage mich nur ob meine Endzustände auch wirklich endzustände sind.

mfg Rainer

Das hängt ganz davon ab was er den nun wirklich alles akzeptieren soll. Interpretiert man den Automaten so wie in meinem Post davor erwähnt akzeptiert er (((w)+)|x|(w)+x(x|(w)+x)*|(w)+)|((x|(w)+x(x|(w)+x)*y)|y(y|x(x|(w)+x)*y)*|x(x|(w)+x)*|(w)+) :hells:

Oder als Typ 3 Grammatik ausgedrückt G = (N,T,P,s)

G = ({q0,q1,q2,q3},{w,x,y},P,q0)

P = {

q0 -> w q1 | w | y q3 | y | x q2 | x

q1 -> x q2 | x | w q1 | w

q2 -> y q3 | y | w q1 | w | x q2 | x

q3 -> x q2 | x | y q3 | y

}

Bearbeitet von Anubisx
Geschrieben

alles klar, ich hab meinen Automaten dementsprechend umgewandelt.

Eine Frage hab ich noch zu den Endzuständen.

Was ist das eigentlich genau. Sind das die Zustände, wo es passieren kann das sie keine ebene mehr weiter kommen bzw sich in einer endlosschleife verharren?

mfg rainer

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...