Generellen NEA bauen mit einer 1 an der n-ten letzen Position

Neue Frage »

un1x Auf diesen Beitrag antworten »
Generellen NEA bauen mit einer 1 an der n-ten letzen Position
Hi

Ich habe eine Aufgabe wo ich einen Nichtdeterministischen Endlichen Automaten definieren soll, so dass die akzeptierende Sprache akzeptiert wird. (An der n-ten letzen Stelle eine 1)

Wenn ich mir z.b anschaue, dann könnte der Automat wiefolgt aussehen

[attach]33452[/attach]

Und würde das Wort 101001 zulassen.

Ich habe grundsätzlich schon eine Idee wie ich es machen muss, habe aber Probleme dies korrekt zu definieren.

  • Es gibt 1+n Zustände
  • Der n-te Zustand ist der akzeptierende
  • Ich bleibe solange auf dem Startzustand, bis ich nur noch n-stellen zu verarbeiten habe
  • Wenn an der n-ten letzen Stelle eine 1 kommt
  • Können n-1 mal 0 oder 1 folgen


Mein Ansatz sieht sehr kompliziert aus.. Vielleicht gibts bessere Methoden um dies zu definieren

chrizke Auf diesen Beitrag antworten »
RE: Generellen NEA bauen mit einer 1 an der n-ten letzen Position
Dein Ansatz ist meiner Meinung nach fast richtig und alles andere als kompliziert.

Lediglich bei den Transitionen in der letzten Zeile solltest du formal etwas genauer sein. Da schreibst du



Dieses darf aber nicht jedes aus sein, denn ist die Menge aller Zustände und enthält auch den Startzustand und für den soll diese Regel ja eben nicht gelten.
Du solltest stattdessen eher sowas schreiben wie



Je nachdem wie ihr Transitionen definiert habt, musst du da nochmal aufpassen. Momentan sieht es so aus, als sei . Normalerweise hat man ja eher sowas wie , also eine Abbildung auf ein einzelnes Element und keine Menge, so wie es die geschwungenen Klammern bei dir suggerieren.
un1x Auf diesen Beitrag antworten »

Danke vielmals für deine Antwort.

Das ist richtig. Unsere Definition für NEA ist mit der Funktion zu einer Potenzmenge. Wäre anders für eine DEA.

Muss ich eigentlich noch den letzten Zustand auch definieren? Also von

Zudem muss ich bei deinem Lösungsansatz auch definieren, kass sein muss oder?
un1x Auf diesen Beitrag antworten »

Habe die Transitionen so definiert:

chrizke Auf diesen Beitrag antworten »

Hier musst du nun auch wieder mit den Details aufpassen.

Das in den Transitionen ist ja immer nur ein Buchstabe und kann somit nur Element von sein, nicht aber von

Dann würde ich, wenn man sich im letzten Zustand befindet und doch noch irgendwelche Buchstaben lesen will nicht in die leere Menge zeigen, sondern wieder nach . Das ist in diesem Fall hier auch möglich.

Als letztes würde ich, wenn ihr schon auf Mengen abbildet, diese auch nutzen – besonders für den nichtdeterministischen Übergang von aus. Dann ist es auch deutlicher, dass es sich hier um einen NEA handelt.

Ich würde sowas vorschlagen:

un1x Auf diesen Beitrag antworten »

Danke für den Tipp.

Jedoch könnte ja auch das leere Wort sein und das ist in nicht definiert?
 
 
chrizke Auf diesen Beitrag antworten »

Es ist zwar richtig, dass es bei NEAs auch einen s.g. Epsilon-Übergang (Zustandswechsel ohne einen Buchstaben zu lesen) geben kann, ich sehe bei diesem Automaten hier aber keine Notwendigkeit, davon auch Gebrauch zu machen.

Zudem ist ja (Kleenesche Hülle) definiert als alle endlichen Wörter über dem Alphabet sowie das leere Wort.

Somit ist dies nicht zu gebrauchen, wenn du ausdrücken willst: "Ein Element des Alphabets oder das leere Wort", da ja auch alle anderen Wörter über dem Alphabet in der Kleeneschen Hülle enthalten sind.
un1x Auf diesen Beitrag antworten »

das stimmt.

Danke dir.
Neue Frage »
Antworten »



Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »