Das Postsche Korrespondenzproblem

Ähnliche Dokumente
Kapitel: Die Chomsky Hierarchie. Die Chomsky Hierarchie 1 / 14

Rekursiv aufzählbare Sprachen

Falls H die Eingabe verwirft, so wissen wir, dass M bei Eingabe w nicht hält. M hält im verwerfenden Haltezustand. Beweis:

Reduzierbarkeit und das Post'sche Korrespondenzproblem

Ausgewählte unentscheidbare Sprachen

Übungsblatt 6. Vorlesung Theoretische Grundlagen der Informatik im WS 17/18

Grammatiken. Eine Grammatik G mit Alphabet Σ besteht aus: Variablen V. Startsymbol S V. Kurzschreibweise G = (V, Σ, P, S)

Theoretische Grundlagen der Informatik

Grundlagen der Theoretischen Informatik

Umformung NTM DTM. Charakterisierung rek. aufz. Spr. Chomsky-3-Grammatiken (T5.3) Chomsky-0-Grammatik Rek. Aufz.

Dank. Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I. Beispiel einer nicht berechenbaren Funktion: Busy Beaver

1. Klausur zur Vorlesung Informatik III Wintersemester 2003/2004. Mit Lösung!

Turing Maschine. Thorsten Timmer. SS 2005 Proseminar Beschreibungskomplexität bei Prof. D. Wotschke. Turing Maschine SS 2005 p.

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik Musterlösungen zu ausgewählten Übungsaufgaben

Lösung zur Klausur. Grundlagen der Theoretischen Informatik im WiSe 2003/2004

Theorie der Informatik

Theoretische Grundlagen der Informatik

Einführung in die Theoretische Informatik

5.2 Endliche Automaten

Informatik IV Theoretische Informatik: Formale Sprachen und Automaten, Berechenbarkeit und NP-Vollständigkeit. Zugangsnummer: 9201

Theoretische Informatik 2

11.1 Kontextsensitive und allgemeine Grammatiken

Beispiel: NTM. M = ({q 0,q 1,q 2 }, {0, 1}, {0, 1, #},δ, q 0, #, {q 2 }) q 2

Was bisher geschah Chomsky-Hierarchie für Sprachen: L 0 Menge aller durch (beliebige) Grammatiken beschriebenen Sprachen L 1 Menge aller monotonen

Theoretische Grundlagen der Informatik

Klammersprache Definiere

Wir haben eine Beziehung zwischen entscheidbar und rekursiv aufzählbar hergeleitet.

Algorithmen mit konstantem Platzbedarf: Die Klasse REG

Turingmaschinen Vorlesung Berechenbarkeit und Komplexität alias Theoretische Informatik: Komplexitätstheorie und effiziente Algorithmen

Entscheidungsprobleme

Unentscheidbarkeitssätze der Logik

Entscheidungsprobleme

Übungsblatt 7. Vorlesung Theoretische Grundlagen der Informatik im WS 16/17

Grundlagen der Theoretischen Informatik

2.5 Halteproblem und Unentscheidbarkeit

1 Σ endliches Terminalalphabet, 2 V endliche Menge von Variablen (mit V Σ = ), 3 P (V (Σ ΣV )) {(S, ε)} endliche Menge von Regeln,

Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I

Informatik III. Christian Schindelhauer Wintersemester 2006/07 5. Vorlesung

Die mathematische Seite

Unentscheidbare Grammatik-Probleme

Theoretische Informatik II

1 Σ endliches Terminalalphabet, 2 V endliche Menge von Variablen (mit V Σ = ), 3 P (V (Σ ΣV )) {(S, ε)} endliche Menge von Regeln,

Übungsaufgaben zu Formalen Sprachen und Automaten

Automaten und formale Sprachen Klausurvorbereitung

1 Einführung. 2 Typ-0- und Typ-1-Sprachen. 3 Berechnungsmodelle. 4 Unentscheidbarkeit. 5 Unentscheidbare Probleme. 6 Komplexitätstheorie

8. Turingmaschinen und kontextsensitive Sprachen

Klausur: Berechenbarkeit und Komplexität (Niedermeier/Chen/Froese/Sorge, Sommersemester 2016)

1 Einführung. 2 Typ-0- und Typ-1-Sprachen. 3 Berechnungsmodelle. 4 Unentscheidbarkeit. 5 Unentscheidbare Probleme. 6 Komplexitätstheorie

Einführung in die theoretische Informatik Sommersemester 2017 Übungsblatt Lösungsskizze 7

Einführung in die Theoretische Informatik

Einführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie

Einführung in die Logik

Grundlagen der Theoretischen Informatik

Ist eine algorithmische Problemstellung lösbar und wenn ja, mit welchen Mitteln? was ist eine algorithmische Problemstellung?

Universelle Turingmaschinen

Theorie der Informatik. Theorie der Informatik. 6.1 Einführung. 6.2 Alphabete und formale Sprachen. 6.3 Grammatiken. 6.4 Chomsky-Hierarchie

Lösungen zur 3. Projektaufgabe TheGI1

Theorie der Informatik

Theoretische Informatik I

2 2 Reguläre Sprachen. 2.2 Endliche Automaten. Übersicht

Kontextfreie Sprachen Kontextfreie Sprachen und Grammatiken. Satzformen sind die Wörter aus (N T ). Notation: Wir verwenden oft

Grundlagen der theoretischen Informatik

Klausur zur Vorlesung Informatik III Wintersemester 2007/2008

Einführung in die Theoretische Informatik

Formalismen für REG. Formale Grundlagen der Informatik 1 Kapitel 7 Kontextfreie Sprachen. Das Pumping Lemma. Abschlusseigenschaften

Kontextsensitive und Typ 0 Sprachen Slide 2. Die Turingmaschine

Einführung in die Theoretische Informatik

Grundlagen Theoretischer Informatik 2 WiSe 2011/12 in Trier. Henning Fernau Universität Trier

Theoretische Informatik für Medieninformatiker

2.1 Grundlagen: Kontextfreie Grammatiken

Turing: prinzipielle Berechenbarkeit Abschnitt 4.2. Turingmaschinen: DTM Abschnitt 4.2. DTM: Akzeptieren und Entscheiden Abschnitt 4.

Theoretische Grundlagen der Informatik

Sei Σ ein endliches Alphabet. Eine Sprache L Σ ist genau dann regulär, wenn sie von einem regulären Ausdruck beschrieben werden kann.

Einführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie

Grundlagen der Theoretischen Informatik

Kurz-Skript zur Theoretischen Informatik I

Musterlösung Informatik-III-Klausur

Theoretische Informatik I

Abschluss gegen Substitution. Wiederholung. Beispiel. Abschluss gegen Substitution

2. Übungsblatt 6.0 VU Theoretische Informatik und Logik

Automatentheorie und formale Sprachen

Deterministischer Kellerautomat (DPDA)

Einführung in die Theoretische Informatik

Zusammenfassung. Endliche Sprachen. Fazit zu endlichen Automaten. Teil 4: Grammatiken und Syntaxanalyse

Typ-1-Sprachen. Satz 1 (Kuroda ( ) 1964)

Grundlagen der Theoretischen Informatik

Grundlagen Theoretischer Informatik 2 WiSe 2011/12 in Trier. Henning Fernau Universität Trier

Einführung in Berechenbarkeit, Komplexität und Formale Sprachen

2.4 Kontextsensitive und Typ 0-Sprachen

Theoretische Grundlagen der Informatik

Kontextfreie Grammatiken

Grundlagen der Theoretischen Informatik

Frank Heitmann 2/47. 1 Ein PDA beginnt im Startzustand z 0 und mit im Keller. 2 Ist der Automat

Einführung in die Theoretische Informatik

Übungsblatt Nr. 3. Lösungsvorschlag

Lemma Für jede monotone Grammatik G gibt es eine kontextsensitive

1 Einführung. 2 Typ-0- und Typ-1-Sprachen. 3 Berechnungsmodelle. 4 Unentscheidbarkeit. 5 Unentscheidbare Probleme. 6 Komplexitätstheorie

Wortproblem für kontextfreie Grammatiken

Beweis: Nach dem Pumping-Lemma für kontextfreie Sprachen ist

Transkript:

Das Postsche Korrespondenzproblem Eine Instanz des PKP ist eine Liste von Paaren aus Σ Σ : (v 1, w 1 ),..., (v n, w n ) Eine Lösung ist eine Folge i 1,..., i k von Indizes 1 i j n mit v i1... v ik = w i1... w ik Das Postsche Korrespondenzproblem PKP: Gegeben: Frage: Eine Instanz des PKP. Gibt es eine Lösung? Dieses Problem PKP ist unentscheidbar! 116 / 160 In diesem Kapitel werden wir praxisnähere unentscheidbare Probleme kennenlernen, die kontextfreie Grammatiken betreffen. Als Zwischenschritt betrachten wir das Postsche Korrespondenzproblem, dass von dem deutschen Logiker Emil Post eingeführt wurde. Erstes Beispiel : i v i w i 1 1 111 2 10111 10 3 10 0 Diese Instanz des PKP hat die Lösung 2, 1, 1, 3, da v 2 v 1 v 1 v 3 = 101111110 = w 2 w 1 w 1 w 3 Zweites Beispiel : i v i w i 1 10 101 2 011 11 3 101 011 Diese Instanz des PKP hat keine Lösung, wie man leicht einsieht, wenn man eine Lösung zu konstruieren versucht. Jede Lösung müsste mit 1 beginnen, danach kann nur 3 kommen, weil der rechte String um genau eine 1 länger ist als der linke. Danach ist man aber in genau derselben Situation, es kann also keine endliche Lösung geben.

Beweis der Unentscheidbarkeit Das modifizierte Postsche Korrespondenzproblem MPKP: Gegeben: Eine Instanz des PKP. Frage: Gibt es eine Lösung i 1,..., i k mit i 1 = 1? Lemma H MPKP Lemma MPKP PKP 117 / 160 Das zweite Beispiel oben hat keine Lösung als MPKP, da es schon als PKP unlösbar ist. Das erste Beispiel hat ebenfalls keine Lösung als MPKP, obwohl es eine Lösung hat, da jede Lösung mit 2 beginnen muss. Aus dem erstem Lemma folgt, dass MPKP unentscheidbar ist, deshalb folgt aus dem zweiten Lemma, dass auch das ursprüngliche PKP unentscheidbar ist.

Reduktion von MPKP auf PKP Sei (v 1, w 1 ),..., (v n, w n ) eine Instanz I des PKP mit Alphabet Σ. Konstruiere daraus eine neue Instanz I (v 0, w 0 ), (v 1, w 1 ),..., (v n, w n), (v n+1, w mit Alphabet Σ {, $}. n+1 ) Ist v i = a 1 a 2... a m und w i = b 1 b 2... b l, dann ist v i w i = a 1 a 2... a m für i = 1,..., n. = b 1 b 2... b l Ferner ist v 0 = v 1 und w 0 = w 1, sowie v n+1 = $ und w n+1 = $. Dann gilt: I hat eine Lösung gdw. I hat eine Lösung mit i 1 = 1. 118 / 160 Auf das erste Beispiel oben angewendet ergibt die Reduktion: i v i w i 0 1 1 1 1 1 1 1 1 1 2 1 0 1 1 1 1 0 3 1 0 0 4 $ $ Jede Lösung dieser Instanz müsste mit 0 beginnen, weil nur die Strings v 0 und w 0 einen gemeinsamen Anfang haben. Dies würde dann aber zu einer Lösung der Ausgangsinstanz führen, die mit 1 beginnt.

Reduktion des Halteproblems auf MPKP Sei M = (Q, Σ, Γ,, δ, q 0, F ) eine DTM und w Σ. Annahmen über M: δ(q, a) ist undefiniert gdw. q F M schreibt kein Leerzeichen Wir konstruieren eine Instanz I (M, w) des MPKP mit Alphabet Γ Q {#}, so dass: I (M, w) hat eine Lösung gdw. M hält bei Eingabe w 119 / 160 Die Annahmen über die Maschine stellen keine Einschränkung dar, wenn man nur daran interessiert ist, ob sie hält oder nicht. Zu jeder DTM M kann man M konstruieren, die den Einschränkungen genügt, und die bei jeder Eingabe w hält genau dann wenn M bei Eingabe w hält: füge einen neuen Haltezustand q f hinzu und setze F = {q f }. Ist δ(q, a) undefiniert, so ändere dies ab zu δ(q, a) = (q f, a, R). Für q f werden keine Übergänge definiert. Füge ein neues Zeichen B zu Γ hinzu. In jedem Übergang, wo M ein schreibt, ersetze dies durch B. Schließlich setze für jeden Zustand δ(q, B) = δ(q, ), so dass sich M beim Lesen von B genauso verhält wie M beim Lesen von. Die Idee der Reduktion ist, dass jede Lösung von I (M, w) aus der Folge der Konfigurationen von M bei Eingabe w besteht, jeweils durch # getrennt. Ist also die Berechnung von M bei Eingabe w q 0 w = α 1 M α 2 M... M α t dann erzeugt eine Lösung von I (M, w) den String #α 1 #α 2 #... #α t #

Reduktion des Halteproblems auf MPKP Die Instanz I (M, w) enthält die folgenden Paare: v i w i Erklärung # #q 0 w# das erste Paar a a für a Γ # # qa bp für δ(q, a) = (p, b, R) qa# bp # cqa pcb für δ(q, a) = (p, b, L) und c Γ #qa #p b für δ(q, a) = (p, b, L) qa q für q F und a Γ aq q q## # für q F 120 / 160 Das erste Paar, mit der eine Lösung beginnen muss, schreibt zuerst die Startkonfiguration von M in die rechte Seite. Die weiteren Paare sind so gestaltet, dass beim Kopieren dieser Konfiguration auf die linke Seite in der rechten Seite die nächste Folgekonfiguration erzeugt wird. Mit den Paaren in der 2.-3. Zeile werden die Bandsymbole und Trennzeichen kopiert, die sich zur nächsten Konfiguration hin nicht ändern. Die Paare in der 4.-7. Zeile sorgen dafür, dass beim Kopieren des Bandstücks um den Zustand in der rechten Seite der Übergang von M nachgebildet wird. Dabei ist die 4.-5. Zeile für Übergänge mit Kopfbewegung nach rechts, davon wiederum Zeile 5 für den Spezialfall, wo der Kopf ganz rechts steht. Analog sind Zeilen 6-7 für Übergänge, wo sich der Kopf nach links bewegt. Die Paare in Zeilen 8-9 bewirken, dass im Haltezustand die Bandsymbole links und rechts vom Kopf verschwinden, so dass ganz am Schluss der Lösung nur noch der Endzustand dasteht. Dann kann das letzte Paar in Zeile 10 die Lösung abschließen. Es ist nun klar, dass jede haltende Berechnung von M so zu einer Lösung führt, und umgekehrt jede Lösung einer haltenden Berechnung von M entsprechen muss. Daher ist die Konstruktion eine Reduktion von H auf MPKP.

Disjunktheit kontextfreier Sprachen Das Disjunktheitsproblem DISJ: Gegeben: Zwei kfg G 1 und G 2 Frage: Ist L(G 1 ) L(G 2 ) =? Satz Das Disjunktheitsproblem für kfg ist unentscheidbar. Beweis: Durch Reduktion PKP DISJ 121 / 160 Dies ist nur ein erstes Beispiel eines Problems, dass in der Informatik vorkommende Konzepte betrifft und unentscheidbar ist. Im weiteren werden wir noch mehr solche unentscheidbaren Probleme über kontextfreie Grammatiken sehen. Unentscheidbare Probleme treten aber überall in der Informatik auf, wo man mit ausdrucksstarken Konzepten umgehen muss.

Reduktion von PKP auf DISJ Sei (v 1, w 1 ),..., (v n, w n ) eine Instanz I des PKP mit Alphabet Σ. Definiere zwei kfg mit Alphabet Σ = Σ {1,..., n}, G 1 (I ) = ({A}, Σ, P 1, A) und L 1 (I ) = L(G 1 (I )) G 2 (I ) = ({B}, Σ, P 2, B) und L 2 (I ) = L(G 2 (I )) P 1 enthält Produktionen: A v i A i und A v i i für 1 i n P 2 enthält Produktionen: B w i B i und B w i i für 1 i n Dann gilt: L 1 (I ) L 2 (I ) genau dann, wenn I eine Lösung hat. 122 / 160 Die Idee der Reduktion ist: die Grammatik G 1 (I ) erzeugt die Wörter, die aus der linken Seite der PKP-Instanz erzeugt werden, zusammen mit der entsprechenden Indexfolge, also die Wörter der Form v i1 v i2... v ik i k... i 2 i 1, und G 2 (I ) entsprechend für die rechte Seite. Ein Wort wird also dann und nur dann von beiden Grammatiken erzeugt, wenn für die darin stehende Indexfolge die linken und rechten Seiten den gleichen String erzeugen, wenn also I eine Lösung hat. Daher reduziert die Konstruktion das PKP auf das Disjunktheitsproblem.

Mehrdeutigkeit Definition: Eine kfg G ist eindeutig, wenn es für jedes Wort w L(G) genau einen Ableitungsbaum gibt. Sonst heißt G mehrdeutig. Satz Das folgende Probem ist unentscheidbar: Gegeben: Eine kfg G Frage: Ist G mehrdeutig? 123 / 160 In den Grammatiken G 1 (I ) und G 2 (I ) gibt es für jedes Wort höchstens eine Ableitung, sie sind also eindeutig. Nun betrachtet man die Grammatik, die entsteht, wenn G 1 (I ) und G 2 (I ) vereinigt werden, und ein neues Startsymbol S hinzugefügt wird, mit den Produktionen S A und S B. Dann gilt: I hat eine Lösung gdw. es gibt ein Wort w, dass aus G 1 (I ) und aus G 2 (I ) hergeleitet werden kann. Dieses Wort w hat dann zwei Ableitungen in der vereinigten Grammatik. Andernfalls hat jedes Wort höchstens eine Ableitung. Die Konstruktion reduziert also das PKP auf das Mehrdeutigkeitsproblem. Ein bekannter Fall, bei dem die Mehrdeutigkeit von Grammatiken problematisch ist, tritt beim if-then-else Konstrukt auf. Angenommen, in einer Sprache soll diese Konstrukt mit optionalem else verwendet werden. Dann wäre es natürlich, dafür 2 Produktionen einzuführen: A if B then A else A A if B then A Dann hätte aber der folgende String zwei wesentlich verschieden Ableitungen, die auch zu unterschiedlicher Semantik führen, weil nicht klar ist, zu welchem der if das else gehört: if B then if B then A else A

Weitere Probleme Lemma Auch die Sprachen L 1 (I ) und L 2 (I ) sind kontextfrei. Seien G 1 und G 2 kfg, und R ein regulärer Ausdruck. Folgende Probleme sind unentscheidbar: Ist L(G 1 ) = L(G 2 )? Ist L(G 1 ) = L(R)? Ist L(G 1 ) L(G 2 )? Ist L(R) L(G 1 )? 124 / 160 Wir beweisen hier nicht, dass die Sprachen L 1 (I ) und L 2 (I ) kontextfrei sind,, am einfachsten sieht man dies durch Konstruktion von PDA für diese Sprachen. Sei G 1 (I ) eine Grammatik für die Sprache L 1 (I ) L 2 (I ) = L 1 (I ) L 2 (I ), und G 2 eine Grammatik mit L(G 2 ) = (Σ ). Da der Durchschnitt L 1 (I ) L 2 (I ) nicht 2 ) genau dann, leer ist genau dann, wenn I eine Lösung hat, ist L(G 1 (I )) L(G wenn I eine Lösung hat. Die Konstruktion reduziert also PKP auf das Gleichheitsproblem. Da (Σ ) eine reguläre Sprache ist, kann G 2 auch durch einen regulären Ausdruck dafür ersetzt werden, was die zweite Aussage zeigt. Da ferner für jede Sprache L über Σ gilt (Σ ) = L genau dann wenn (Σ ) L, gelten sogar die dritte und vierte Aussage.