Automaten umkehren/spiegeln



  • Hi Leute!

    Ich soll einen Automaten für diese Sprachen zeichnen:

    L={wΣBool Zahlwert(wR)>2}L = \{w \in \Sigma_{\text{Bool}}^{\star} | \text{ Zahlwert(}w^R\text{)} > 2\}

    Das R steht dabei für reverse = spiegeln.

    Ich hab nun in meinem Lehrbuch (Hopcroft) diese Anleitung gefunden:

    1. Kehre alle Pfeil um Übergangsdiagramm von A um.
    2. Setze den Startzustad von A als einzigen akzeptierenden Zustand des neuen Automaten ein.
    3. Erstelle einen neuen Startzustand p0p_0 mit Übergängen für ϵ\epsilon zu allen akzeptierenden Zuständen von A.

    Ich hab mir nun gedacht, ich baue erst einen Automaten A für die Zahlwert(w) und kehre diesen dann mit obiger Anleitung um.

    Kann das so funktionieren?



  • vip@r schrieb:

    Kann das so funktionieren?

    Mach es doch einfach und rechne nach ob es funktioniert? 😕



  • Ja, das ist nicht so einfach. Ich scheitere nämlich grad schon daran einen Automaten für Zahlwert(w) > 2 zu zeichnen...

    Ich versuche mal meinen Graphenals Bild hochzuladen:

    http://img5.fotos-hochladen.net/uploads/unbenannt5gh3sizkjo.jpg

    Ich hab ein paar Wörter mit "Schwierigkeiten" durchlaufen lassen und er hat sowas alles korrekt gemacht. Kann das von euch jemand "verifizieren"?

    Edit: Wenn ich in diesem Automaten nun die Transitionen umdrehen soll, was passiert dann mit den Eigen-Schleifen?

    Edit2: Was ich von Vorgehensweise aus meinem Lehrbuch auch noch nicht ganz verstehe, ist, dass man zu den ehemaligen akzept. Zuständen vom neuen Startzustand aus Epsilon-Transitionen machen soll. Ich kenne Epsilon-Transitionen aber nur in Verbindung mit einem NEA! Bleibt das dann dennoch ein DEA?



  • Der Automat stimmt nicht.
    Zum Beispiel Eingabe 101 hat "Zahlwert" 5, führt aber nicht in einen akzeptierenden Zustand.

    (Die letzten beiden Zustände sind auch sinnlos. Warum zwei davon?)



  • Hm, shit. Hab ich grad auch bemerkt. Wie gehe ich dann an die Sache ran?



  • vip@r schrieb:

    Wie gehe ich dann an die Sache ran?

    Ausprobieren. Verschiedene Automaten zeichnen. Prüfen, ob der Automat das richtige macht. Nicht darauf warten, dass dir hier jemand den Automaten nennt.

    Hinweis: Überleg dir, welche Wörter "Zahlwert(w) > 2" nicht erfüllen. Alle anderen willst du akzeptieren.

    edit: Willst du uns eigentlich veralbern? Du hast doch vor einer Woche schonmal exakt die gleiche Frage gestellt? http://www.c-plusplus.net/forum/304542



  • Deine Frage habe ich schon beantwortet. Aber du koenntest mal Feedback geben, zu allen Hausaufgaben die du so von uns erhaelts. Obs richtig war, was zu verbessern ist, ob es dir hilft. Also nicht nur fuer die Punkte, sondern auch vom Verstaendnis. ...



  • Hey Leute,

    dass ich diese Aufgabe schon gestellt habe, war mir gestern Abend nicht mehr bewusst. Da hab ich wohl nachdem ich gedacht habe, dass ich sie fertig und voll verstanden habe, dann gleich wieder ein Problem damit gehabt als ich wieder drüber gestolpert bin.

    Aber, eure Hilfe und die daraus resultierende Lösung war jedenfalls richtig. Hab das heute überprüfen können.

    Ich bedanke mich jedenfalls nochmal für eure Hilfe!



  • vip@r schrieb:

    Aber, eure Hilfe und die daraus resultierende Lösung war jedenfalls richtig. Hab das heute überprüfen können.

    Es wurde ja schließlich auch die vollständige Lösung gepostet. Aber schön, dass du die Hausaufgabenpunkte bekommen hast. 🙂


Anmelden zum Antworten