Es ist entscheidbar , ob ein PDA erkennt , die Menge aller Strings über das Eingabealphabet.Σ∗
Hinzugefügt. Es ist unentscheidbare das überprüfen als Folge der Tatsache , dass „non-valid“ Berechnungen eines TM können als Saite einer CFG codiert werden. Dies ist Lemma 8.7 der Einführung in die Automatentheorie von Hopcroft und Ullman. Die Autoren verweisen für dieses Ergebnis auf Hartmanis (1967), Context-free languages und Turing machine computations.L ( G ) = Σ∗
Eine bequeme Codierung der Berechnungen einer Turingmaschine ist wie folgt. Eine Konfiguration von TM M ist eine Zeichenfolge der Form x p y, wobei u v der Inhalt des Bandes ist und der Zustand p an der Stelle angegeben ist, an der sich der Kopf befindet. Es ist wichtig zu beachten, dass Rechenschritte eines TMs lokale Änderungen sind: u c p a v ⊢ u q c b v für den Befehl ( p , a , q , b , LMMx p yu vpu c p a v ⊢ u qc b v , Wo der Kopf bewegt sichlinks, und u c p eine v ⊢ u c b q v für die Instruktion ( p , a , q , B , R ) , in der der Kopf bewegt sichrechts.( p , a , q, b , L )u c p a v ⊢ u c b qv( p , a , q, b , R )
Eine gültige Berechnung kann als Zeichenfolge codiert werden, wobei w 0 = q 0 x die Anfangskonfiguration für Zeichenfolge x codiert , und wir haben geeignete Schritte w i i w i + 1 . Die letzte Konfiguration in der Zeichenfolge sollte final sein, dh einen Halte- / Endzustand haben.w0# wR1# w2# wR3# …w0= q0xxwich⊢ wi + 1
Es ist nun eine Übung, um zu überprüfen, ob die Zeichenfolgen, die keine gültigen Berechnungen sind, von einem CFG generiert (oder von einem PDA akzeptiert) werden können. Die Zeichenfolgen, die nicht aus Konfigurationssequenzen bestehen, sind sogar regelmäßig. Andernfalls errät man nicht deterministisch eine Position, an der nicht w i ⊢ w i + 1 ist . Dieser Teil der Zeichenfolge wird von einer Grammatik generiert, die derjenigen für { x # y R ∣ x , y ∈ { a , b } ∗ , x ≠ y } ähnlich ist .GM wich⊢ wi + 1{ x # yR∣ x , y∈ { a , b }∗, x ≠ y}
MGM