Ich möchte beweisen, dass regulär ist, wenn regulär ist, aber ich komme anscheinend nicht weiter. Wenn möglich, hoffte ich auf einen Hinweis, um mich in die richtige Richtung zu bringen. Danke für deine Hilfe.
Meine Idee, um die Regelmäßigkeit der Quadratwurzelsprache zu demonstrieren, war es, zwei Maschinen zu betrachten, die zusammen laufen. Einer von ihnen akzeptiert die Originalspracheund der andere läuft die gleiche Maschine rückwärts (ich gehe davon aus, dass dies eine NFA sein wird). Ich wollte dann Wörter akzeptieren, die sich in der Mitte trafen (dh wo akzeptieren die Staaten des EDA ). Ich denke jedoch nicht, dass dies funktionieren wird.
Antworten:
So implementieren Sie Ihre Lösung. LassenA=⟨Q,q0,F,δ⟩ ein DFA für sein L . Wir werden eine NFA bauenA′=⟨Q′,q′0,F′,δ′⟩ wie folgt:
Wir überlassen dem Leser den formalen Beweis dafürL(A′)=L(A)−−−−√ .
Hier ist eine andere Lösung, die einen DFA erstellt. Wir rennen jetzt|Q| Kopien von A parallel, beginnend bei jedem Zustand von A ::
Was ist die Bedeutung der Bedingungf(f(q0))∈F ? Nach dem Lesen eines Wortesw , der Automat A′ ist in einem Zustand f gegeben durch f(q)=δ(q,w) . Somitf(f(q0))=δ(δ(q0,w),w)=δ(q0,w2) .
quelle