2x2

Werbung
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
Unentscheidbare Probleme
Vorlesung “Berechenbarkeit und Komplexität”
alias
“Theoretische Informatik: Komplexitätstheorie und
effiziente Algorithmen”
Wir verwenden nun die Reduktions-Beweistechnik und zeigen die
Unentscheidbarkeit folgender Probleme:
Unentscheidbarkeit des Adventure-Problems (Level 4)
Es ist unentscheidbar, ob ein gegebenes Adventure des
Levels 4 eine Lösung besitzt.
Wintersemester 2011/12
Postsches Korrespondenzproblem PCP
PCP: ein kombinatorisches Problem auf Wörtern, wichtiges
(Hilfs-)Problem, um damit die Unentscheidbarkeit anderer
Probleme zu zeigen
Prof. Barbara König
Übungsleitung: Henning Kerstan & Jan Stückrath
Schnittproblem für kontextfreie Grammatiken
Barbara König
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
BeKo/TI
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
Barbara König
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
1
BeKo/TI
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
181
Adventure-Problem (Level 4)
10
Adventures bestehen aus Graphen bzw. Automaten, die mit
folgenden Symbolen markiert sind:
1
4
2
6
5
11
12
Torbogen:
Drachen:
7
Tür:
3
Schwert:
Schlüssel:
Fluss:
13
Schatz:
Barbara König
BeKo/TI
9
8
14
182
15
Barbara König
BeKo/TI
16
183
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
Adventure-Problem (Level 4)
Adventure-Problem (Level 4)
Regeln:
Drachen-Regel
Unmittelbar nach der Begegnung mit einem Drachen muss man in
einen Fluss springen, da uns der Drache in Brand stecken wird.
Dies gilt nicht mehr, sobald man ein Schwert besitzt, mit dem man
den Drachen vorher töten kann.
Die Schatz-Regel
Man muss mindestens zwei Schätze finden.
Tür-Regel
Die Schlüssel sind magisch und verschwinden sofort, nachdem eine
Tür mit ihnen geöffnet wurde. Sobald man eine Tür durchschritten
hat, schließt sie sich sofort wieder.
Barbara König
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
BeKo/TI
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
Schwerter werden jedoch durch das Drachenblut unbenutzbar,
sobald man einen Drachen damit getötet hat. Außerdem werden
Drachen sofort wieder “ersetzt”.
184
Adventure-Problem (Level 4)
Barbara König
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
BeKo/TI
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
185
Adventure-Problem (Level 4)
Gegeben ist ein Adventure durch eine Karte bzw. einen endlichen
Automaten M. Das Adventure-Problem (Level 4) lautet
folgendermaßen:
Schlüssel-Regel
Der magische Torbogen kann nur passiert werden, wenn man
keinen Schlüssel besitzt.
A4 = {M | es gibt einen Pfad von einem Anfangs- zu einem
Schwert-Regel
Ein Fluss kann nur passiert werden, wenn man kein Schwert besitzt
(weil man sonst ertrinkt!).
Barbara König
BeKo/TI
Endzustand von M, der alle Regeln erfüllt}.
Dabei sollen die Automaten M in entsprechender Kodierung als
Eingabe zur Verfügung gestellt werden.
186
Barbara König
BeKo/TI
187
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
Adventure-Problem (Level 4)
10
1
4
2
6
5
11
Wir zeigen die Unentscheidbarkeit von A4 durch Reduktion des
Halteproblems für Goto-Programme (mit zwei Variablen x1 , x2
und initialer Variablenbelegung 0) auf A4 .
12
Annahmen:
7
9
Um die Kodierung graphisch darstellen zu können,
repräsentieren wir Goto-Programme durch Flussdiagramme,
bei denen die Sprungmarken durch Pfeile ersetzt werden.
3
13
Wir betrachten nur Zuweisungen der Form xi := xi + 1 bzw.
xi := xi − 1 und Vergleiche mit 0 (alle anderen Zuweisungen
bzw. Vergleiche können simuliert werden)
8
14
15
Barbara König
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
16
BeKo/TI
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
188
Adventure-Problem (Level 4)
Barbara König
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
BeKo/TI
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
189
Adventure-Problem (Level 4)
Übersetzung: Goto-Programm → Adventure
Intuition:
x1 := x1 + 1
Tür- und Schlüssel-Regel: wird zur Simulation einer Variable
x1 benutzt (mit Inkrementierung und Nulltest).
Drachen- und Schwert-Regel: wird zur Simulation einer
Variable x2 benutzt
Barbara König
BeKo/TI
x1 := x1 − 1
190
Barbara König
BeKo/TI
191
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
Adventure-Problem (Level 4)
Adventure-Problem (Level 4)
Übersetzung: Goto-Programm → Adventure
yes
x1 = 0
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
Übersetzung: Goto-Programm → Adventure
x2 := x2 + 1
no
If . . . Then. . .
x2 := x2 − 1
Barbara König
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
BeKo/TI
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
191
Adventure-Problem (Level 4)
yes
BeKo/TI
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
191
Adventure-Problem (Level 4)
Übersetzung: Goto-Programm → Adventure
x2 = 0
Barbara König
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
Übersetzung: Goto-Programm → Adventure
Halt
no
If . . . Then. . .
Mit “Schatz” beschriftete Transitionen können auch zum Zusammenfügen der einzelnen Teilautomaten verwendet werden.
Barbara König
BeKo/TI
191
Barbara König
BeKo/TI
191
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
Adventure-Problem (Level 4)
Adventure-Problem (Level 4)
Beispiel:
Übersetze das folgende Goto-Programm in ein Adventure durch
Zusammensetzen der einzelnen Teil-Automaten:
Goto-Programm → Adventure
Ein Goto-Programm (bei dem alle Variablen am Anfang mit 0
belegt werden) hält genau dann, wenn das entsprechend übersetzte
Adventure eine Lösung hat.
M1
x1 := x1 + 1; x1 := x1 + 1;
M1 : If x1 = 0 Then Goto M2 ;
x1 := x1 − 1; x2 := x2 + 1;
Goto M1 ;
M2 : Halt
Barbara König
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
Wir können diese Kodierung daher als Reduktionsfunktion f
auffassen und es folgt:
M2
Unentscheidbarkeit des Adventure-Problems (Level 4)
Das Adventure-Problem A4 ist unentscheidbar.
BeKo/TI
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
192
Adventure-Problem (Level 4)
Barbara König
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
BeKo/TI
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
193
BeKo/TI
194
Adventure-Problem (Level 4)
Tag der offenen Tür 2011 an der TU München . . .
Barbara König
BeKo/TI
194
Barbara König
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
Postsches Korrespondenzproblem
Postsches Korrespondenzproblem
Beispiel 1: Löse das Postsche Korrespondenzproblem für
Wir betrachten nun ein wichtiges unentscheidbares Problem, das
dazu benutzt wird, die Unentscheidbarkeit vieler anderer Probleme
zu zeigen:
x1 = 0
y1 = 010
Postsches Korrespondenzproblem (PCP)
x3 = 0101
y3 = 01
01 01 | 010 1 | 0 | 1
(Dabei ist Σ ein beliebiges Alphabet.)
01 | 01 | 010 | 1
Ausgabe: Gibt es eine Folge von Indizes
i1 , . . . , in ∈ {1, . . . , k}, n ≥ 1 mit xi1 . . . xin = yi1 . . . yin ?
BeKo/TI
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
x2 = 1
y2 = 101
Eine mögliche Lösung: 3, 3, 1, 2:
Eingabe: Eine endliche Folge von Wortpaaren
(x1 , y1 ), . . . , (xk , yk ) mit xi , yi ∈ Σ+ .
Barbara König
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
0 1
Eine weitere (kürzere) Lösung ist: 3, 1
195
Postsches Korrespondenzproblem
Barbara König
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
BeKo/TI
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
196
Postsches Korrespondenzproblem
Beispiel 2: Löse das Postsche Korrespondenzproblem für
x1 = 001
y1 = 0
x2 = 01
y2 = 011
x3 = 01
y3 = 101
Semi-Entscheidbarkeit des PCP (Satz)
x4 = 10
y4 = 001
Das Postsche Korrespondenzproblem ist semi-entscheidbar.
Beweisidee:
Probiere erst alle Indexfolgen der Länge 1 aus, dann alle
Indexfolgen der Länge 2, . . .
Eine kürzeste Lösung besteht bereits aus 66 Indizes:
2, 4, 3, 4, 4, 2, 1, 2, 4, 3, 4, 3, 4, 4, 3, 4, 4, 2, 1, 4, 4, 2, 1, 3, 4, 1, 1, 3,
4, 4, 4, 2, 1, 2, 1, 1, 1, 3, 4, 3, 4, 1, 2, 1, 4, 4, 2, 1, 4, 1, 1, 3, 4, 1, 1, 3,
1, 1, 3, 1, 2, 1, 4, 1, 1, 3.
Falls irgendwann eine passende Indexfolge gefunden wird, so gib 1
aus.
An der Komplexität dieser Lösung kann man bereits die
Schwierigkeit des Problems ablesen.
Barbara König
BeKo/TI
197
Barbara König
BeKo/TI
198
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
Postsches Korrespondenzproblem
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
Postsches Korrespondenzproblem
Wir beweisen nun zwei Reduktions-Lemmata, aus denen die
Unentscheidbarkeit des Postschen Korrespondenzproblems folgt:
MPCP auf PCP reduzierbar (Lemma)
Der erste Schritt des Unentscheidbarkeitsbeweises ist es, das
folgende modifizierte Problem zu betrachten.
MPCP ≤ PCP
Modifiziertes PCP (MPCP)
Eingabe: wie beim PCP.
Ausgabe: Gibt es eine Lösung i1 , . . . , in des PCP mit i1 = 1?
Barbara König
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
BeKo/TI
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
199
Postsches Korrespondenzproblem
Barbara König
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
BeKo/TI
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
200
Postsches Korrespondenzproblem (Lemma)
Halteproblem auf MPCP reduzierbar (Lemma)
H ≤ MPCP
PCP unentscheidbar
Das Postsche Korrespondenzproblem ist unentscheidbar.
Beweis: Die Behauptung folgt direkt aus den beiden vorherigen
Lemmata. Aus
H ≤ MPCP ≤ PCP
folgt H ≤ PCP (durch Komposition der Reduktionsabbildungen).
Und da außerdem bekannt ist, dass H (das allgemeine
Halteproblem) nicht entscheidbar ist, folgt daraus, dass das PCP
nicht entscheidbar ist.
Barbara König
BeKo/TI
201
Barbara König
BeKo/TI
202
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
Postsches Korrespondenzproblem
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
Schnittproblem für kontextfreie Grammatiken
Bemerkungen:
Das Postsche Korrespondenzproblem ist bereits
unentscheidbar, wenn man sich auf das Alphabet Σ = {0, 1}
einschränkt.
Zuletzt betrachten wir noch das Schnittproblem für kontextfreie
Grammatiken
Schnittproblem für kontextfreie Grammatiken
Eingabe: zwei kontextfreie Grammatiken G1 , G2 .
Für unäres (einelementiges) Alphabet ist das PCP jedoch
entscheidbar. Hier entspricht die Konkatenation von Wörtern
der Addition von Zahlen.
Ausgabe: Gilt L(G1 ) ∩ L(G2 ) = ∅? (D.h., es gibt kein Wort,
das sowohl von G1 als auch von G2 erzeugt wird.)
Wir werden nun das PCP dazu nutzen, um die
Unentscheidbarkeit des Schnittproblems für kontextfreie
Grammatiken zu zeigen.
Barbara König
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
BeKo/TI
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
203
Schnittproblem für kontextfreie Grammatiken
Barbara König
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
BeKo/TI
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
204
Schnittproblem für kontextfreie Grammatiken
Beweis (alternativ zum Beweis im Buch von Schöning):
Gegeben sei ein Postsches Korrespondenzproblem
K = {(x1 , y1 ), . . . , (xk , yk )}
über dem Alphabet {0, 1}.
Betrachte zunächst folgende Grammatik G1 :
PCP auf Schnittproblem reduzierbar (Lemma)
Das Postsche Korrespondenzproblem ist auf das Komplement des
Schnittproblems für kontextfreie Grammatiken reduzierbar.
S → xi SyiR | xi $yiR
i = 1, . . . , k
Dabei steht yiR für yi rückwärts.
L(G1 ) = {xi1 . . . xin $yiRn . . . yiR1 | i1 , . . . , in ∈ {1, . . . , k}}
Betrachte jetzt folgende Grammatik G2 :
S → 0S0 | 1S1 | $
L(G2 ) = {w $w R | w ∈ {0, 1}∗ }
Barbara König
BeKo/TI
205
Barbara König
BeKo/TI
206
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
Schnittproblem für kontextfreie Grammatiken
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
Schnittproblem für kontextfreie Grammatiken
Zusammen:
L(G1 ) ∩ L(G2 ) = {xi1 . . . xin $yiRn . . . yiR1 |
Schnittproblem unentscheidbar
Das Schnittproblem für kontextfreie Grammatiken ist
unentscheidbar.
i1 , . . . , in ∈ {1, . . . , k},
xi1 . . . xin = yi1 . . . yin }
Das heißt, der Schnitt der Sprachen ist nicht-leer, genau dann,
wenn das PCP eine Lösung hat.
Barbara König
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
BeKo/TI
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
207
Schnittproblem für kontextfreie Grammatiken
Barbara König
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
BeKo/TI
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
208
Spezielles Wortproblem
Bemerkungen:
Wir haben nun von mehreren semi-entscheidbaren Problemen
(Halteproblem, PCP, etc.) gezeigt, dass sie unentscheidbar sind.
Das Komplement des Schnittproblems ist semi-entscheidbar:
man leitet mit beiden Grammatiken parallel Wörter ab und
bricht ab, sobald ein Wort von beiden Grammatiken abgeleitet
wurde.
Damit haben wir Typ-0-Sprachen identifiziert, deren Wortproblem
unentscheidbar ist. (Unentscheidbarkeit des speziellen
Wortproblems.)
Daraus folgt auch, dass das Schnittproblem selbst nicht
semi-entscheidbar sein kann. Ansonsten wäre es nämlich
entscheidbar.
Es gibt natürlich auch Typ-0-Sprachen mit einem entscheidbaren
Wortproblem. Beispielsweise, wenn es sich um Typ-1-, Typ-2- oder
Typ-3-Sprachen handelt.
Außer dem Schnittproblem sind noch einige andere verwandte
Probleme für kontextfreie Sprachen unentscheidbar: Inklusion,
Gleichheit, Mehrdeutigkeit, Regularität, . . . (siehe Schöning).
Barbara König
BeKo/TI
209
Barbara König
BeKo/TI
210
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
Typ-1-Sprachen und Entscheidbarkeit
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
Typ-1-Sprachen und Entscheidbarkeit
Konstruktion einer entscheidbaren Sprache, die nicht vom Typ 1 ist
(mittels Diagonalisierung):
Betrachte ein Alphabet Σ, in dem sich Grammatiken kodieren
lassen. Wir bezeichnen die Kodierung einer Grammatik G mit
cod(G ).
Sei E die Menge der Kodierungen aller Grammatiken G , die
folgende Eigenschaften erfüllen:
Typ-1-Sprachen und Entscheidbarkeit (Zusammenfassung)
Jede Typ-1-Sprache ist entscheidbar.
(Aufgrund der Bedingung |linke Seite| ≤ |rechte Seite| kann
man die Wörter, die von der Grammatik erzeugt werden, in
aufsteigender Länge aufzählen. Stopp, sobald die Wörter
länger als das gesuchte werden.)
G erzeugt Wörter über dem Alphabet Σ
G ist vom Typ 1 (kontextsensitiv)
cod(G ) 6∈ L(G )
Es gibt entscheidbare Sprachen, die nicht vom Typ 1 sind.
Die Sprache E ist entscheidbar. Die letzte Bedingung ist
überprüfbar, da das Wortproblem für Typ-1-Sprachen
entscheidbar ist.
Barbara König
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
BeKo/TI
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
211
Typ-1-Sprachen und Entscheidbarkeit
212
Bemerkungen:
Die Frage ist jetzt, ob die Kodierung von G 0 in E liegt. Da die
ersten beiden Bedingungen auf jeden Fall erfüllt sind, hängt
dies nur noch von der letzten Bedingung ab.
Bei diesem Resultat gibt es eine Analogie zu der Tatsache,
dass es totale und berechenbare Funktionen gibt, die nicht
Loop-berechenbar sind.
Jeder andere Versuch, syntaktisch eine Klasse von
Grammatiken zu definieren, die genau die entscheidbaren
Sprachen erzeugen, muss scheitern. In diesem Fall wäre ein
analoger Diagonalisierungsbeweis möglich.
cod(G 0 ) ∈ E ⇐⇒ cod(G 0 ) 6∈ L(G 0 ) ⇐⇒ cod(G 0 ) 6∈ E .
Die letzte Äquivalenz gilt wegen L(G 0 ) = E .
Damit ergibt sich ein Widerspruch und E kann nicht vom
Typ 1 sein.
BeKo/TI
BeKo/TI
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
Typ-1-Sprachen und Entscheidbarkeit
Angenommen, E ist vom Typ 1. Dann gibt es eine
Typ-1-Grammatik G 0 mit L(G 0 ) = E .
Barbara König
Barbara König
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
213
Barbara König
BeKo/TI
214
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
Typ-1-Sprachen und Entscheidbarkeit
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
Äquivalenzproblem für Turingmaschinen
Damit ergibt sich folgende Hierarchie in Bezug auf
semi-entscheidbare Sprachen (= Typ 0), Typ-1-Sprachen und
entscheidbare Sprachen:
Menge aller Sprachen
Wir haben bereits ein Problem kennengelernt, das nicht
semi-entscheidbar ist: das Schnittproblem für kontextfreie
Sprachen. Allerdings ist das Komplement dieses Problems
semi-entscheidbar.
Typ-0-Sprachen
semi-entscheidbare Sprachen
Es gibt allerdings sogar noch schwerere Probleme, die nicht
semi-entscheidbar sind und deren Komplement auch nicht
semi-entscheidbar ist. Beispielsweise folgendes Problem:
Entscheidbare Sprachen
Äquivalenzproblem für Turingmaschinen
Eingabe: Zwei Turingmaschinen M1 , M2
Typ-1-Sprachen
kontextsensitive Sprachen
Ausgabe: Berechnen M1 , M2 dieselbe Funktion?
Beweis: Reduktion vom Satz von Rice.
Barbara König
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
BeKo/TI
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
215
Weitere Unentscheidbarkeitsresultate
Barbara König
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
BeKo/TI
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
216
Logik-Probleme
Unerfüllbarkeit für Formeln der Prädikatenlogik 1. Stufe
Das Problem, zu entscheiden, ob eine gegebene Formel F der
Prädikatenlogik 1. Stufe unerfüllbar ist, ist unentscheidbar. Es ist
jedoch noch semi-entscheidbar (z.B. mit Hilfe des
Resolutionskalküls).
Das gleiche gilt für das Gültigkeitsproblem.
Wir betrachten nun noch einige weitere interessante
(unentscheidbare) Probleme aus der Logik und Mathematik:
Unerfüllbarkeit für Formeln der Prädikatenlogik 1. Stufe und
2. Stufe
Diophantische Gleichungen
Prädikatenlogik 1. Stufe: die einfachste Form der Prädikatenlogik;
man darf über Elemente quantifizieren (∀x, ∃x), nicht jedoch über
Mengen oder Relationen.
Barbara König
BeKo/TI
217
Barbara König
BeKo/TI
218
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
Logik-Probleme
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
Logik-Probleme
Daraus folgt auch, dass solche Logiken höherer Stufe keinen Kalkül
haben können. Denn aus einem Kalkül, der es ermöglicht, alle
wahren Formeln abzuleiten, kann man immer ein
Semi-Entscheidungsverfahren gewinnen.
Das Unerfüllbarkeits- bzw. Gültigkeitsproblem für Logiken höherer
Stufe (beispielsweise für die Prädikatenlogik 2. Stufe, bei der
Quantifikation über Relationen erlaubt ist), ist nicht mehr
semi-entscheidbar.
Die Nicht-Existenz eines solchen (vollständigen) Kalküls für die
Arithmetik ist die Aussage des (Ersten) Gödelschen
Unvollständigkeitssatzes (1931). Für die Mathematik bedeutet das:
“Es gibt wahre Aussagen, die nicht beweisbar sind.”
Der Beweis benutzt die Tatsache, dass man mit Hilfe dieser
Logiken die natürlichen Zahlen axiomatisieren und damit Aussagen
über arithmetische Ausdrücken formulieren kann, etwas, das mit
Hilfe der Prädikatenlogik 1. Stufe nicht ohne weiteres möglich ist
(da man darin das Induktionsaxiom nicht ausdrücken kann).
Unterhaltsame Lektüre zu diesem Thema:
Douglas R. Hofstadter: Gödel, Escher, Bach: An Eternal
Golden Braid
In deutscher Übersetzung: Douglas R. Hofstadter: Gödel,
Escher, Bach: Ein endloses geflochtenes Band
Barbara König
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
BeKo/TI
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
219
Diophantische Gleichungen
BeKo/TI
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
220
Diophantische Gleichungen
Wir beschäftigen uns nun mit dem Lösen diophantischer
Gleichungen (auch bekannt als Hilberts 10. Problem).
Problem: Lösen diophantischer Gleichungen
Eingabe: Eine diophantische Gleichung
Diophantische Gleichung
Eine diophantische Gleichung ist eine Gleichung der Form
Ausgabe: Hat diese Gleichung eine Lösung in den ganzen
Zahlen?
Alternative Fragestellung: Hat diese Gleichung eine Lösung in den
natürlichen Zahlen?
p(x1 , . . . , xn ) = 0
Wobei p(x1 , . . . , xn ) ein Polynom in den Variablen x1 , . . . , xn mit
ganzzahligen Koeffizienten ist.
Unentscheidbarkeit des Lösens diophantischer Gleichungen
Es gibt kein allgemeines Verfahren, um diophantische Gleichungen
zu lösen. D.h., das entsprechende Problem ist unentscheidbar.
(Matiyasevich, 1970)
Beispiele:
3x − 4y − 1 = 0
xy − 2y 2 − 2 = 0
2x − 4y − 1 = 0
x2 + y2 − z2 = 0
x2 − 1 = 0
x3 + y3 − z3 = 0
Barbara König
Barbara König
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
BeKo/TI
(Ohne Beweis)
221
Barbara König
BeKo/TI
222
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
Diophantische Gleichungen
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
Abschlusseigenschaften
Bemerkungen:
Eine der berühmtesten Klassen von diophantischen
Gleichungen ist x n + y n = z n . Nach einem Result von Wiles
von 1995 hat keine solche Gleichung für n > 2 eine Lösung in
den natürlichen Zahlen (ohne die Null).
(Beweis des letzten Satzes von Fermat)
Für bestimmte Klassen von diophantischen Gleichungen gibt
es Lösungsverfahren:
Für eine Gleichung vom Typ x n + y n = z n mit n > 2 ist
die Ausgabe der Algorithmus immer “nein” (= keine
Lösung).
Lineare diophantische Gleichungen der Form
a1 x1 + · · · + an xn = b haben ein Lösungsverfahren
( erweiterter euklidischer Algorithmus).
Barbara König
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
BeKo/TI
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
Abgeschlossenheit (Definition)
Gegeben sei eine Menge M und ein binärer Operator
⊗ : M × M → M.
Man sagt, eine Menge M 0 ⊆ M ist unter ⊗ abgeschlossen, wenn
für zwei beliebige Elemente m1 , m2 ∈ M 0 gilt: m1 ⊗ m2 ∈ M 0 .
Uns interessieren hier vor allem folgende Operatoren: Komplement,
Schnitt, Vereinigung
223
Abschlusseigenschaften
Barbara König
Kontextsensitive und Typ-0-Sprachen
Berechenbarkeitstheorie
Komplexitätstheorie
BeKo/TI
Berechnungsmodelle
Unentscheidbarkeit
Unentscheidbare Probleme
224
Abschlusseigenschaften
(Semi-)entscheidbare Sprachen: Abschluss unter Schnitt
Entscheidbare Sprachen: Abschluss unter Komplement
Die entscheidbaren Sprachen sind unter Komplement
abgeschlossen. D.h., wenn L entscheidbar ist, dann ist auch Σ∗ \L
entscheidbar. (Dabei ist Σ das Alphabet, über dem L definiert ist.)
Die entscheidbaren Sprachen sind unter Schnitt abgeschlossen.
D.h., wenn L1 , L2 entscheidbar sind, dann ist auch L1 ∩ L2
entscheidbar.
Das gleiche gilt für die semi-entscheidbaren Sprachen.
Semi-entscheidbare Sprachen: kein Abschluss unter Komplement
Die semi-entscheidbaren Sprachen sind nicht unter Komplement
abgeschlossen.
(Semi-)entscheidbare Sprachen: Abschluss unter Vereinigung
Barbara König
BeKo/TI
Die entscheidbaren Sprachen sind unter Vereinigung abgeschlossen.
D.h., wenn L1 , L2 entscheidbar sind, dann ist auch L1 ∪ L2
entscheidbar.
Das gleiche gilt für die semi-entscheidbaren Sprachen.
225
Barbara König
BeKo/TI
226
Herunterladen