Ist es möglich, DFA für Wörter mit ungerader Länge mit 1 in der Mitte zu erstellen?

8

die Länge vonist ungerade1 ist in der Mitte vonL:={w{0,1}|w }ww}

Das Alphabet ist also . Mein Problem ist, dass ich die Gleichheit der Zeichen vor und nach 1 nicht verfolgen kann . Ein begrenzter DFA für eine Länge von weniger als 6:{0,1}1Geben Sie hier die Bildbeschreibung ein

Wie kann ich es so erweitern, dass es beliebig lange Wörter akzeptiert? Ist es möglich?

Ich habe versucht, Zyklen einzufügen, aber wie ich bereits sagte, kann ich die Anzahl der Zeichen nach nicht verfolgen, um der vorherigen zu entsprechen. Mit anderen Worten 1 immer in der Mitte sein.1

user8
quelle

Antworten:

13

Nein, du kannst nicht. Beweis durch Pumpen von Lemma: Angenommen, ist regulär und n ist die Pumplänge. Betrachten Sie das Wort w = 0 n 10 n . Somit gibt es x , y , z { 0 , 1 } mit | x y | < n und | y | > 0 wie x y z = w . Dann ist i N 0 : xLnw=0n10nx,y,z{0,1}|xy|<n|y|>0xyz=w .iN0:xyizL

Aber aufgrund seiner Länge constraint und y aus 0 nur , und alle sind vor dem 1 . Somit ist x y 2 z = 0 n + | y | 10 nL .xy01xy2z=0n+|y|10nL

Somit ist nicht regulär und kann von keinem DFA ausgedrückt werden.L

Martin Glauer
quelle