Theoretische Informatik II

Transcription

Theoretische Informatik II
Theoretische Informatik II
Einheit 7.3
Beweistechniken für unlösbare Probleme
1. Diagonalisierung
2. Monotonieargumente
3. Problemreduktion
4. Der Satz von Rice
Grenzen der Berechenbarkeit
Wie beweist man die Unlösbarkeit eines Problems?
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
1
Beweistechniken für unlösbare Probeme
Grenzen der Berechenbarkeit
Wie beweist man die Unlösbarkeit eines Problems?
• Diagonalisierung
– Zeige, daß eine Funktion von jeder berechenbaren Funktion an mindestens
einer Stelle abweicht, also selbst nicht berechenbar sein kann
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
1
Beweistechniken für unlösbare Probeme
Grenzen der Berechenbarkeit
Wie beweist man die Unlösbarkeit eines Problems?
• Diagonalisierung
– Zeige, daß eine Funktion von jeder berechenbaren Funktion an mindestens
einer Stelle abweicht, also selbst nicht berechenbar sein kann
• Wachstums- und Monotonieargumente
– Zeige, daß eine Funktion stärker wächst als jede berechenbare Funktion
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
1
Beweistechniken für unlösbare Probeme
Grenzen der Berechenbarkeit
Wie beweist man die Unlösbarkeit eines Problems?
• Diagonalisierung
– Zeige, daß eine Funktion von jeder berechenbaren Funktion an mindestens
einer Stelle abweicht, also selbst nicht berechenbar sein kann
• Wachstums- und Monotonieargumente
– Zeige, daß eine Funktion stärker wächst als jede berechenbare Funktion
• Reduktionsmethode und Abschlußeigenschaften
– Zeige, daß Lösung des Problems zu einer Lösung eines bekanntermaßen
unlösbaren Problems führen würde
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
1
Beweistechniken für unlösbare Probeme
Grenzen der Berechenbarkeit
Wie beweist man die Unlösbarkeit eines Problems?
• Diagonalisierung
– Zeige, daß eine Funktion von jeder berechenbaren Funktion an mindestens
einer Stelle abweicht, also selbst nicht berechenbar sein kann
• Wachstums- und Monotonieargumente
– Zeige, daß eine Funktion stärker wächst als jede berechenbare Funktion
• Reduktionsmethode und Abschlußeigenschaften
– Zeige, daß Lösung des Problems zu einer Lösung eines bekanntermaßen
unlösbaren Problems führen würde
• Anwendung allgemeiner theoretischer Resultate
– Unlösbarkeit folgt direkt aus bekannten Sätzen
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
1
Beweistechniken für unlösbare Probeme
Diagonalisierung
• Ziel
– Zeige, daß eine unendliche Menge M eine Eigenschaft P nicht besitzt
– z.B. Entscheidbarkeit, Aufzählbarkeit, Abzählbarkeit
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
2
Beweistechniken für unlösbare Probeme
Diagonalisierung
• Ziel
– Zeige, daß eine unendliche Menge M eine Eigenschaft P nicht besitzt
– z.B. Entscheidbarkeit, Aufzählbarkeit, Abzählbarkeit
• Methodik
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
2
Beweistechniken für unlösbare Probeme
Diagonalisierung
• Ziel
– Zeige, daß eine unendliche Menge M eine Eigenschaft P nicht besitzt
– z.B. Entscheidbarkeit, Aufzählbarkeit, Abzählbarkeit
• Methodik
– Wir nehmen an, M habe die Eigenschaft P
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
2
Beweistechniken für unlösbare Probeme
Diagonalisierung
• Ziel
– Zeige, daß eine unendliche Menge M eine Eigenschaft P nicht besitzt
– z.B. Entscheidbarkeit, Aufzählbarkeit, Abzählbarkeit
• Methodik
– Wir nehmen an, M habe die Eigenschaft P
– Konstruiere ein Element x, das von allen Elementen von M verschieden ist
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
2
Beweistechniken für unlösbare Probeme
Diagonalisierung
• Ziel
– Zeige, daß eine unendliche Menge M eine Eigenschaft P nicht besitzt
– z.B. Entscheidbarkeit, Aufzählbarkeit, Abzählbarkeit
• Methodik
– Wir nehmen an, M habe die Eigenschaft P
– Konstruiere ein Element x, das von allen Elementen von M verschieden ist
– Zeige, daß x ∈ M aufgrund der Annahme gelten muß
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
2
Beweistechniken für unlösbare Probeme
Diagonalisierung
• Ziel
– Zeige, daß eine unendliche Menge M eine Eigenschaft P nicht besitzt
– z.B. Entscheidbarkeit, Aufzählbarkeit, Abzählbarkeit
• Methodik
– Wir nehmen an, M habe die Eigenschaft P
– Konstruiere ein Element x, das von allen Elementen von M verschieden ist
– Zeige, daß x ∈ M aufgrund der Annahme gelten muß
– Aus dem Widerspruch folgt, daß die Annahme nicht gelten kann
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
2
Beweistechniken für unlösbare Probeme
Diagonalisierung
• Ziel
– Zeige, daß eine unendliche Menge M eine Eigenschaft P nicht besitzt
– z.B. Entscheidbarkeit, Aufzählbarkeit, Abzählbarkeit
• Methodik
– Wir nehmen an, M habe die Eigenschaft P
– Konstruiere ein Element x, das von allen Elementen von M verschieden ist
– Zeige, daß x ∈ M aufgrund der Annahme gelten muß
– Aus dem Widerspruch folgt, daß die Annahme nicht gelten kann
• Konstruktion des neuen Elementes
Cantor’sches Diagonalverfahren:
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
2
Beweistechniken für unlösbare Probeme
Diagonalisierung
• Ziel
– Zeige, daß eine unendliche Menge M eine Eigenschaft P nicht besitzt
– z.B. Entscheidbarkeit, Aufzählbarkeit, Abzählbarkeit
• Methodik
– Wir nehmen an, M habe die Eigenschaft P
– Konstruiere ein Element x, das von allen Elementen von M verschieden ist
– Zeige, daß x ∈ M aufgrund der Annahme gelten muß
– Aus dem Widerspruch folgt, daß die Annahme nicht gelten kann
• Konstruktion des neuen Elementes
Cantor’sches Diagonalverfahren:
– Trage alle Elemente von M als Zeilen einer Tabelle auf
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
2
Beweistechniken für unlösbare Probeme
Diagonalisierung
• Ziel
– Zeige, daß eine unendliche Menge M eine Eigenschaft P nicht besitzt
– z.B. Entscheidbarkeit, Aufzählbarkeit, Abzählbarkeit
• Methodik
– Wir nehmen an, M habe die Eigenschaft P
– Konstruiere ein Element x, das von allen Elementen von M verschieden ist
– Zeige, daß x ∈ M aufgrund der Annahme gelten muß
– Aus dem Widerspruch folgt, daß die Annahme nicht gelten kann
• Konstruktion des neuen Elementes
Cantor’sches Diagonalverfahren:
– Trage alle Elemente von M als Zeilen einer Tabelle auf
– Konstruiere x auf Diagonale mit Abweichung an jedem Punkt
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
2
Beweistechniken für unlösbare Probeme
Diagonalisierung
• Ziel
– Zeige, daß eine unendliche Menge M eine Eigenschaft P nicht besitzt
– z.B. Entscheidbarkeit, Aufzählbarkeit, Abzählbarkeit
• Methodik
– Wir nehmen an, M habe die Eigenschaft P
– Konstruiere ein Element x, das von allen Elementen von M verschieden ist
– Zeige, daß x ∈ M aufgrund der Annahme gelten muß
– Aus dem Widerspruch folgt, daß die Annahme nicht gelten kann
• Konstruktion des neuen Elementes
Cantor’sches Diagonalverfahren:
– Trage alle Elemente von M als Zeilen einer Tabelle auf
– Konstruiere x auf Diagonale mit Abweichung an jedem Punkt
– Also kann x nicht als Zeile vorkommen
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
2
Beweistechniken für unlösbare Probeme
Diagonalbeweise I: Überabzählbarkeit von N→N
• Die Menge N→N “überabzählbar” unendlich
– Die Menge aller Funktionen über N kann nicht durchnumeriert werden
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
3
Beweistechniken für unlösbare Probeme
Diagonalbeweise I: Überabzählbarkeit von N→N
• Die Menge N→N “überabzählbar” unendlich
– Die Menge aller Funktionen über N kann nicht durchnumeriert werden
· Annahme: N→N ist abzählbar
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
3
Beweistechniken für unlösbare Probeme
Diagonalbeweise I: Überabzählbarkeit von N→N
• Die Menge N→N “überabzählbar” unendlich
– Die Menge aller Funktionen über N kann nicht durchnumeriert werden
· Annahme: N→N ist abzählbar
· Dann können alle Funktionen über N in eine Tabelle eingetragen werden
0
1
2
3
4
...
f0
f0(0)
f0(1)
f0(2)
f0(3)
f0(4)
...
f1
f1(0)
f1 (1)
f1(2)
f1(3)
f1(4)
...
f2
f2(0)
f2(1)
f2 (2)
f2(3)
f2(4)
...
f3
...
f3(0)
...
f3(1)
...
f3(2)
...
f3(3)
...
f3(4)
...
...
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
3
...
Beweistechniken für unlösbare Probeme
Diagonalbeweise I: Überabzählbarkeit von N→N
• Die Menge N→N “überabzählbar” unendlich
– Die Menge aller Funktionen über N kann nicht durchnumeriert werden
· Annahme: N→N ist abzählbar
· Dann können alle Funktionen über N in eine Tabelle eingetragen werden
0
1
2
3
4
...
f0
f0 (0)+1
f0(1)
f0(2)
f0(3)
f0(4)
...
f1
f1(0)
f1 (1)
f1(2)
f1(3)
f1(4)
...
f2
f2(0)
f2(1)
f2 (2)
f2(3)
f2(4)
...
f3
...
f3(0)
...
f3(1)
...
f3(2)
...
f3(3)
...
f3(4)
...
...
...
· Definiere eine neue Funktion f :N→N durch f (x) = fx(x)+1
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
3
Beweistechniken für unlösbare Probeme
Diagonalbeweise I: Überabzählbarkeit von N→N
• Die Menge N→N “überabzählbar” unendlich
– Die Menge aller Funktionen über N kann nicht durchnumeriert werden
· Annahme: N→N ist abzählbar
· Dann können alle Funktionen über N in eine Tabelle eingetragen werden
0
1
2
3
4
...
f0
f0 (0)+1
f0(1)
f0(2)
f0(3)
f0(4)
...
f1
f1(0)
f1(1)+1
f1(2)
f1(3)
f1(4)
...
f2
f2(0)
f2(1)
f2 (2)
f2(3)
f2(4)
...
f3
...
f3(0)
...
f3(1)
...
f3(2)
...
f3(3)
...
f3(4)
...
...
...
· Definiere eine neue Funktion f :N→N durch f (x) = fx(x)+1
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
3
Beweistechniken für unlösbare Probeme
Diagonalbeweise I: Überabzählbarkeit von N→N
• Die Menge N→N “überabzählbar” unendlich
– Die Menge aller Funktionen über N kann nicht durchnumeriert werden
· Annahme: N→N ist abzählbar
· Dann können alle Funktionen über N in eine Tabelle eingetragen werden
0
1
2
3
4
...
f0
f0 (0)+1
f0(1)
f0(2)
f0(3)
f0(4)
...
f1
f1(0)
f1(1)+1
f1(2)
f1(3)
f1(4)
...
f2
f2(0)
f2(1)
f2(2)+1
f2(3)
f2(4)
...
f3
...
f3(0)
...
f3(1)
...
f3(2)
...
f3(3)
...
f3(4)
...
...
...
· Definiere eine neue Funktion f :N→N durch f (x) = fx(x)+1
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
3
Beweistechniken für unlösbare Probeme
Diagonalbeweise I: Überabzählbarkeit von N→N
• Die Menge N→N “überabzählbar” unendlich
– Die Menge aller Funktionen über N kann nicht durchnumeriert werden
· Annahme: N→N ist abzählbar
· Dann können alle Funktionen über N in eine Tabelle eingetragen werden
0
1
2
3
4
...
f0
f0 (0)+1
f0(1)
f0(2)
f0(3)
f0(4)
...
f1
f1(0)
f1(1)+1
f1(2)
f1(3)
f1(4)
...
f2
f2(0)
f2(1)
f2(2)+1
f2(3)
f2(4)
...
f3
...
f3(0)
...
f3(1)
...
f3(2)
...
f3(3)+1
...
f3(4)
...
...
...
· Definiere eine neue Funktion f :N→N durch f (x) = fx(x)+1
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
3
Beweistechniken für unlösbare Probeme
Diagonalbeweise I: Überabzählbarkeit von N→N
• Die Menge N→N “überabzählbar” unendlich
– Die Menge aller Funktionen über N kann nicht durchnumeriert werden
· Annahme: N→N ist abzählbar
· Dann können alle Funktionen über N in eine Tabelle eingetragen werden
0
1
2
3
4
...
f0
f0 (0)+1
f0(1)
f0(2)
f0(3)
f0(4)
...
f1
f1(0)
f1(1)+1
f1(2)
f1(3)
f1(4)
...
f2
f2(0)
f2(1)
f2(2)+1
f2(3)
f2(4)
...
f3
...
f3(0)
...
f3(1)
...
f3(2)
...
f3(3)+1
...
f3(4)
...
...
...
· Definiere eine neue Funktion f :N→N durch f (x) = fx(x)+1
· f ist offensichtlich total, kann aber in der Tabelle nicht vorkommen
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
3
Beweistechniken für unlösbare Probeme
Diagonalbeweise I: Überabzählbarkeit von N→N
• Die Menge N→N “überabzählbar” unendlich
– Die Menge aller Funktionen über N kann nicht durchnumeriert werden
· Annahme: N→N ist abzählbar
· Dann können alle Funktionen über N in eine Tabelle eingetragen werden
0
1
2
3
4
...
f0
f0 (0)+1
f0(1)
f0(2)
f0(3)
f0(4)
...
f1
f1(0)
f1(1)+1
f1(2)
f1(3)
f1(4)
...
f2
f2(0)
f2(1)
f2(2)+1
f2(3)
f2(4)
...
f3
...
f3(0)
...
f3(1)
...
f3(2)
...
f3(3)+1
...
f3(4)
...
...
...
· Definiere eine neue Funktion f :N→N durch f (x) = fx(x)+1
· f ist offensichtlich total, kann aber in der Tabelle nicht vorkommen
· Ansonsten wäre f =fi für ein i und fi(i) = f (i) = fi(i)+1
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
3
√
Beweistechniken für unlösbare Probeme
Existenz unberechenbarer Funktionen
• Abstraktes Argument: es gibt zu viele Funktionen
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
4
Beweistechniken für unlösbare Probeme
Existenz unberechenbarer Funktionen
• Abstraktes Argument: es gibt zu viele Funktionen
– Die Menge der berechenbaren Funktionen in N→N ist abzählbar
– Die Menge N→N is nicht abzählbar
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
4
Beweistechniken für unlösbare Probeme
Existenz unberechenbarer Funktionen
• Abstraktes Argument: es gibt zu viele Funktionen
– Die Menge der berechenbaren Funktionen in N→N ist abzählbar
– Die Menge N→N is nicht abzählbar
– Es gibt mehr Funktionen als es berechenbare Funktionen geben kann
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
4
Beweistechniken für unlösbare Probeme
Existenz unberechenbarer Funktionen
• Abstraktes Argument: es gibt zu viele Funktionen
– Die Menge der berechenbaren Funktionen in N→N ist abzählbar
– Die Menge N→N is nicht abzählbar
– Es gibt mehr Funktionen als es berechenbare Funktionen geben kann
– Es gibt nichtberechenbare Funktionen auf N→N
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
4
√
Beweistechniken für unlösbare Probeme
Existenz unberechenbarer Funktionen
• Abstraktes Argument: es gibt zu viele Funktionen
– Die Menge der berechenbaren Funktionen in N→N ist abzählbar
– Die Menge N→N is nicht abzählbar
– Es gibt mehr Funktionen als es berechenbare Funktionen geben kann
√
– Es gibt nichtberechenbare Funktionen auf N→N
• Konkretes Argument: Angabe eines Beispiels
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
4
Beweistechniken für unlösbare Probeme
Existenz unberechenbarer Funktionen
• Abstraktes Argument: es gibt zu viele Funktionen
– Die Menge der berechenbaren Funktionen in N→N ist abzählbar
– Die Menge N→N is nicht abzählbar
– Es gibt mehr Funktionen als es berechenbare Funktionen geben kann
√
– Es gibt nichtberechenbare Funktionen auf N→N
• Konkretes Argument: Angabe eines Beispiels
– Das Halteproblem H = {(i, n) | ϕi(n)6=⊥} ist unentscheidbar (Beweis folgt)
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
4
Beweistechniken für unlösbare Probeme
Existenz unberechenbarer Funktionen
• Abstraktes Argument: es gibt zu viele Funktionen
– Die Menge der berechenbaren Funktionen in N→N ist abzählbar
– Die Menge N→N is nicht abzählbar
– Es gibt mehr Funktionen als es berechenbare Funktionen geben kann
√
– Es gibt nichtberechenbare Funktionen auf N→N
• Konkretes Argument: Angabe eines Beispiels
– Das Halteproblem H = {(i, n) | ϕi(n)6=⊥} ist unentscheidbar (Beweis folgt)
– Die charakteristische Funktion χH :N→N ist nicht berechenbar
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
4
√
Beweistechniken für unlösbare Probeme
Existenz unberechenbarer Funktionen
• Abstraktes Argument: es gibt zu viele Funktionen
– Die Menge der berechenbaren Funktionen in N→N ist abzählbar
– Die Menge N→N is nicht abzählbar
– Es gibt mehr Funktionen als es berechenbare Funktionen geben kann
√
– Es gibt nichtberechenbare Funktionen auf N→N
• Konkretes Argument: Angabe eines Beispiels
– Das Halteproblem H = {(i, n) | ϕi(n)6=⊥} ist unentscheidbar (Beweis folgt)
– Die charakteristische Funktion χH :N→N ist nicht berechenbar
√
– Weitere konkrete Beispiele folgen
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
4
Beweistechniken für unlösbare Probeme
Diagonalbeweise II:
Unentscheidbarkeit des Halteproblems
Satz J.a
Annahme: H = {(i, n) | ϕi(n)6=⊥} ist entscheidbar
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
5
Beweistechniken für unlösbare Probeme
Diagonalbeweise II:
Unentscheidbarkeit des Halteproblems
Satz J.a
Annahme: H = {(i, n) | ϕi(n)6=⊥} ist( entscheidbar
– Dann ist χH :N→N berechenbar, wobei χH (i, n) =
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
5
1 wenn ϕi(n) hält
0 sonst
Beweistechniken für unlösbare Probeme
Diagonalbeweise II:
Unentscheidbarkeit des Halteproblems
Satz J.a
Annahme: H = {(i, n) | ϕi(n)6=⊥} ist( entscheidbar
– Dann ist χH :N→N berechenbar, wobei χH (i, n) =
1 wenn ϕi(n) hält
0 sonst
0
ϕ0 ×
ϕ1 ⊥
ϕ2 ×
ϕ3 ⊥
... ...
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
5
1
×
⊥
×
×
...
2
×
×
⊥
⊥
...
3
⊥
×
×
×
...
4
×
×
×
⊥
...
...
...
...
...
...
...
Beweistechniken für unlösbare Probeme
Diagonalbeweise II:
Unentscheidbarkeit des Halteproblems
Satz J.a
Annahme: H = {(i, n) | ϕi(n)6=⊥} ist( entscheidbar
– Dann ist χH :N→N berechenbar, wobei χH (i, n) =
0
ϕ0 ×
ϕ1 ⊥
ϕ2 ×
ϕ3 ⊥
... ...
– Definiere eine (
neue Funktion f :N→N durch
0 wenn ϕn(n) nicht hält
f (n) :=
⊥ sonst
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
1 wenn ϕi(n) hält
0 sonst
5
1
×
⊥
×
×
...
2
×
×
⊥
⊥
...
3
⊥
×
×
×
...
4
×
×
×
⊥
...
...
...
...
...
...
...
Beweistechniken für unlösbare Probeme
Diagonalbeweise II:
Unentscheidbarkeit des Halteproblems
Satz J.a
Annahme: H = {(i, n) | ϕi(n)6=⊥} ist( entscheidbar
– Dann ist χH :N→N berechenbar, wobei χH (i, n) =
0 1
ϕ0 ⊥ ×
ϕ1 ⊥ ⊥
ϕ2 × ×
ϕ3 ⊥ ×
... ...
...
– Definiere eine (
neue Funktion f :N→N durch
0 wenn ϕn(n) nicht hält
f (n) :=
⊥ sonst
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
1 wenn ϕi(n) hält
0 sonst
5
2
×
×
⊥
⊥
...
3
⊥
×
×
×
...
4
×
×
×
⊥
...
...
...
...
...
...
...
Beweistechniken für unlösbare Probeme
Diagonalbeweise II:
Unentscheidbarkeit des Halteproblems
Satz J.a
Annahme: H = {(i, n) | ϕi(n)6=⊥} ist( entscheidbar
– Dann ist χH :N→N berechenbar, wobei χH (i, n) =
0
ϕ0 ⊥
ϕ1 ⊥
ϕ2 ×
ϕ3 ⊥
... ...
– Definiere eine (
neue Funktion f :N→N durch
0 wenn ϕn(n) nicht hält
f (n) :=
⊥ sonst
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
1 wenn ϕi(n) hält
0 sonst
5
1 2
× ×
× ×
× ⊥
× ⊥
...
...
3
⊥
×
×
×
...
4
×
×
×
⊥
...
...
...
...
...
...
...
Beweistechniken für unlösbare Probeme
Diagonalbeweise II:
Unentscheidbarkeit des Halteproblems
Satz J.a
Annahme: H = {(i, n) | ϕi(n)6=⊥} ist( entscheidbar
– Dann ist χH :N→N berechenbar, wobei χH (i, n) =
0
ϕ0 ⊥
ϕ1 ⊥
ϕ2 ×
ϕ3 ⊥
... ...
– Definiere eine (
neue Funktion f :N→N durch
0 wenn ϕn(n) nicht hält
f (n) :=
⊥ sonst
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
1 wenn ϕi(n) hält
0 sonst
5
1
×
×
×
×
...
2 3
× ⊥
× ×
× ×
⊥ ×
...
...
4
×
×
×
⊥
...
...
...
...
...
...
...
Beweistechniken für unlösbare Probeme
Diagonalbeweise II:
Unentscheidbarkeit des Halteproblems
Satz J.a
Annahme: H = {(i, n) | ϕi(n)6=⊥} ist( entscheidbar
– Dann ist χH :N→N berechenbar, wobei χH (i, n) =
0
ϕ0 ⊥
ϕ1 ⊥
ϕ2 ×
ϕ3 ⊥
... ...
– Definiere eine (
neue Funktion f :N→N durch
0 wenn ϕn(n) nicht hält
f (n) :=
⊥ sonst
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
1 wenn ϕi(n) hält
0 sonst
5
1
×
×
×
×
...
2
×
×
×
⊥
...
3
⊥
×
×
⊥
...
4
×
×
×
⊥
...
...
...
...
...
...
...
Beweistechniken für unlösbare Probeme
Diagonalbeweise II:
Unentscheidbarkeit des Halteproblems
Satz J.a
Annahme: H = {(i, n) | ϕi(n)6=⊥} ist( entscheidbar
– Dann ist χH :N→N berechenbar, wobei χH (i, n) =
1 wenn ϕi(n) hält
0 sonst
0
ϕ0 ⊥
ϕ1 ⊥
ϕ2 ×
ϕ3 ⊥
... ...
– Definiere eine (
neue Funktion f :N→N durch
0 wenn ϕn(n) nicht hält
f (n) :=
⊥ sonst
1
×
×
×
×
...
2
×
×
×
⊥
...
3
⊥
×
×
⊥
...
4
×
×
×
⊥
...
...
...
...
...
...
...
– Dann ist f berechenbar, denn f (n) = µz [χH (n, n) = 0]
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
5
Beweistechniken für unlösbare Probeme
Diagonalbeweise II:
Unentscheidbarkeit des Halteproblems
Satz J.a
Annahme: H = {(i, n) | ϕi(n)6=⊥} ist( entscheidbar
– Dann ist χH :N→N berechenbar, wobei χH (i, n) =
1 wenn ϕi(n) hält
0 sonst
0
ϕ0 ⊥
ϕ1 ⊥
ϕ2 ×
ϕ3 ⊥
... ...
– Definiere eine (
neue Funktion f :N→N durch
0 wenn ϕn(n) nicht hält
f (n) :=
⊥ sonst
1
×
×
×
×
...
2
×
×
×
⊥
...
3
⊥
×
×
⊥
...
4
×
×
×
⊥
...
...
...
...
...
...
...
– Dann ist f berechenbar, denn f (n) = µz [χH (n, n) = 0]
– Also gibt es ein i mit f = ϕi
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
5
Beweistechniken für unlösbare Probeme
Diagonalbeweise II:
Unentscheidbarkeit des Halteproblems
Satz J.a
Annahme: H = {(i, n) | ϕi(n)6=⊥} ist( entscheidbar
– Dann ist χH :N→N berechenbar, wobei χH (i, n) =
1 wenn ϕi(n) hält
0 sonst
0
ϕ0 ⊥
ϕ1 ⊥
ϕ2 ×
ϕ3 ⊥
... ...
– Definiere eine (
neue Funktion f :N→N durch
0 wenn ϕn(n) nicht hält
f (n) :=
⊥ sonst
1
×
×
×
×
...
2
×
×
×
⊥
...
3
⊥
×
×
⊥
...
4
×
×
×
⊥
...
...
...
...
...
...
...
– Dann ist f berechenbar, denn f (n) = µz [χH (n, n) = 0]
– Also gibt es ein i mit f = ϕi
– Aber für dieses i gilt: ϕi(i) hält ⇔ f (i) hält ⇔ ϕi(i) hält nicht
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
5
Beweistechniken für unlösbare Probeme
Diagonalbeweise II:
Unentscheidbarkeit des Halteproblems
Satz J.a
Annahme: H = {(i, n) | ϕi(n)6=⊥} ist( entscheidbar
– Dann ist χH :N→N berechenbar, wobei χH (i, n) =
1 wenn ϕi(n) hält
0 sonst
0
ϕ0 ⊥
ϕ1 ⊥
ϕ2 ×
ϕ3 ⊥
... ...
– Definiere eine (
neue Funktion f :N→N durch
0 wenn ϕn(n) nicht hält
f (n) :=
⊥ sonst
1
×
×
×
×
...
2
×
×
×
⊥
...
3
⊥
×
×
⊥
...
4
×
×
×
⊥
...
...
...
...
...
...
...
– Dann ist f berechenbar, denn f (n) = µz [χH (n, n) = 0]
– Also gibt es ein i mit f = ϕi
– Aber für dieses i gilt: ϕi(i) hält ⇔ f (i) hält ⇔ ϕi(i) hält nicht
– Dies ist ein Widerspruch, also ist die Annahme “H entscheidbar” falsch
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
5
√
Beweistechniken für unlösbare Probeme
Diagonalbeweise II:
Unentscheidbarkeit des Halteproblems
Satz J.a
Annahme: H = {(i, n) | ϕi(n)6=⊥} ist( entscheidbar
– Dann ist χH :N→N berechenbar, wobei χH (i, n) =
1 wenn ϕi(n) hält
0 sonst
0
ϕ0 ⊥
ϕ1 ⊥
ϕ2 ×
ϕ3 ⊥
... ...
– Definiere eine (
neue Funktion f :N→N durch
0 wenn ϕn(n) nicht hält
f (n) :=
⊥ sonst
1
×
×
×
×
...
2
×
×
×
⊥
...
3
⊥
×
×
⊥
...
4
×
×
×
⊥
...
...
...
...
...
...
...
– Dann ist f berechenbar, denn f (n) = µz [χH (n, n) = 0]
– Also gibt es ein i mit f = ϕi
– Aber für dieses i gilt: ϕi(i) hält ⇔ f (i) hält ⇔ ϕi(i) hält nicht
– Dies ist ein Widerspruch, also ist die Annahme “H entscheidbar” falsch
√
Terminierung von Programmen ist nicht testbar
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
5
Beweistechniken für unlösbare Probeme
Diagonalbeweise III:
Total berechenbare Funktionen sind nicht aufzählbar
Annahme: Rϕ = {i | ϕi total} ist aufzählbar
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
6
Beweistechniken für unlösbare Probeme
Diagonalbeweise III:
Total berechenbare Funktionen sind nicht aufzählbar
Annahme: Rϕ = {i | ϕi total} ist aufzählbar
· Dann gibt es eine berechenbare totale Funktion f mit range(f ) = Rϕ
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
6
Beweistechniken für unlösbare Probeme
Diagonalbeweise III:
Total berechenbare Funktionen sind nicht aufzählbar
Annahme: Rϕ = {i | ϕi total} ist aufzählbar
· Dann gibt es eine berechenbare totale Funktion f mit range(f ) = Rϕ
· Dann lassen sich alle Funktionen aus R wie folgt in eine Tabelle eintragen
0
1
2
3
4
...
ϕf (0)
ϕf (0)(0)
ϕf (0)(1)
ϕf (0)(2)
ϕf (0)(3)
ϕf (0)(4)
...
ϕf (1)
ϕf (1)(0)
ϕf (1)(1)
ϕf (1)(2)
ϕf (1)(3)
ϕf (1)(4)
...
ϕf (2)
ϕf (2)(0)
ϕf (2)(1)
ϕf (2)(2)
ϕf (2)(3)
ϕf (2)(4)
...
ϕf (3)
...
ϕf (3)(0)
...
ϕf (3)(1)
...
ϕf (3)(2)
...
ϕf (3)(3)
...
ϕf (3)(4)
...
...
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
6
...
Beweistechniken für unlösbare Probeme
Diagonalbeweise III:
Total berechenbare Funktionen sind nicht aufzählbar
Annahme: Rϕ = {i | ϕi total} ist aufzählbar
· Dann gibt es eine berechenbare totale Funktion f mit range(f ) = Rϕ
· Dann lassen sich alle Funktionen aus R wie folgt in eine Tabelle eintragen
0
1
2
3
4
...
ϕf (0)
ϕf (0)(0)+1
ϕf (0)(1)
ϕf (0)(2)
ϕf (0)(3)
ϕf (0)(4)
...
ϕf (1)
ϕf (1)(0)
ϕf (1)(1)
ϕf (1)(2)
ϕf (1)(3)
ϕf (1)(4)
...
ϕf (2)
ϕf (2)(0)
ϕf (2)(1)
ϕf (2)(2)
ϕf (2)(3)
ϕf (2)(4)
...
ϕf (3)
...
ϕf (3)(0)
...
ϕf (3)(1)
...
ϕf (3)(2)
...
ϕf (3)(3)
...
ϕf (3)(4)
...
...
...
· Definiere eine neue Funktion h:N→N durch h(n) = ϕf (n)(n)+1
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
6
Beweistechniken für unlösbare Probeme
Diagonalbeweise III:
Total berechenbare Funktionen sind nicht aufzählbar
Annahme: Rϕ = {i | ϕi total} ist aufzählbar
· Dann gibt es eine berechenbare totale Funktion f mit range(f ) = Rϕ
· Dann lassen sich alle Funktionen aus R wie folgt in eine Tabelle eintragen
0
1
2
3
4
...
ϕf (0)
ϕf (0)(0)+1
ϕf (0)(1)
ϕf (0)(2)
ϕf (0)(3)
ϕf (0)(4)
...
ϕf (1)
ϕf (1)(0)
ϕf (1)(1)+1
ϕf (1)(2)
ϕf (1)(3)
ϕf (1)(4)
...
ϕf (2)
ϕf (2)(0)
ϕf (2)(1)
ϕf (2)(2)
ϕf (2)(3)
ϕf (2)(4)
...
ϕf (3)
...
ϕf (3)(0)
...
ϕf (3)(1)
...
ϕf (3)(2)
...
ϕf (3)(3)
...
ϕf (3)(4)
...
...
...
· Definiere eine neue Funktion h:N→N durch h(n) = ϕf (n)(n)+1
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
6
Beweistechniken für unlösbare Probeme
Diagonalbeweise III:
Total berechenbare Funktionen sind nicht aufzählbar
Annahme: Rϕ = {i | ϕi total} ist aufzählbar
· Dann gibt es eine berechenbare totale Funktion f mit range(f ) = Rϕ
· Dann lassen sich alle Funktionen aus R wie folgt in eine Tabelle eintragen
0
1
2
3
4
...
ϕf (0)
ϕf (0)(0)+1
ϕf (0)(1)
ϕf (0)(2)
ϕf (0)(3)
ϕf (0)(4)
...
ϕf (1)
ϕf (1)(0)
ϕf (1)(1)+1
ϕf (1)(2)
ϕf (1)(3)
ϕf (1)(4)
...
ϕf (2)
ϕf (2)(0)
ϕf (2)(1)
ϕf (2)(2)+1
ϕf (2)(3)
ϕf (2)(4)
...
ϕf (3)
...
ϕf (3)(0)
...
ϕf (3)(1)
...
ϕf (3)(2)
...
ϕf (3)(3)
...
ϕf (3)(4)
...
...
...
· Definiere eine neue Funktion h:N→N durch h(n) = ϕf (n)(n)+1
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
6
Beweistechniken für unlösbare Probeme
Diagonalbeweise III:
Total berechenbare Funktionen sind nicht aufzählbar
Annahme: Rϕ = {i | ϕi total} ist aufzählbar
· Dann gibt es eine berechenbare totale Funktion f mit range(f ) = Rϕ
· Dann lassen sich alle Funktionen aus R wie folgt in eine Tabelle eintragen
0
1
2
3
4
...
ϕf (0)
ϕf (0)(0)+1
ϕf (0)(1)
ϕf (0)(2)
ϕf (0)(3)
ϕf (0)(4)
...
ϕf (1)
ϕf (1)(0)
ϕf (1)(1)+1
ϕf (1)(2)
ϕf (1)(3)
ϕf (1)(4)
...
ϕf (2)
ϕf (2)(0)
ϕf (2)(1)
ϕf (2)(2)+1
ϕf (2)(3)
ϕf (2)(4)
...
ϕf (3)
...
ϕf (3)(0)
...
ϕf (3)(1)
...
ϕf (3)(2)
...
ϕf (3)(3)+1
...
ϕf (3)(4)
...
...
...
· Definiere eine neue Funktion h:N→N durch h(n) = ϕf (n)(n)+1
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
6
Beweistechniken für unlösbare Probeme
Diagonalbeweise III:
Total berechenbare Funktionen sind nicht aufzählbar
Annahme: Rϕ = {i | ϕi total} ist aufzählbar
· Dann gibt es eine berechenbare totale Funktion f mit range(f ) = Rϕ
· Dann lassen sich alle Funktionen aus R wie folgt in eine Tabelle eintragen
0
1
2
3
4
...
ϕf (0)
ϕf (0)(0)+1
ϕf (0)(1)
ϕf (0)(2)
ϕf (0)(3)
ϕf (0)(4)
...
ϕf (1)
ϕf (1)(0)
ϕf (1)(1)+1
ϕf (1)(2)
ϕf (1)(3)
ϕf (1)(4)
...
ϕf (2)
ϕf (2)(0)
ϕf (2)(1)
ϕf (2)(2)+1
ϕf (2)(3)
ϕf (2)(4)
...
ϕf (3)
...
ϕf (3)(0)
...
ϕf (3)(1)
...
ϕf (3)(2)
...
ϕf (3)(3)+1
...
ϕf (3)(4)
...
...
...
· Definiere eine neue Funktion h:N→N durch h(n) = ϕf (n)(n)+1
· h ist offensichtlich total und berechenbar, denn h(n) = u(f (n), n)+1
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
6
Beweistechniken für unlösbare Probeme
Diagonalbeweise III:
Total berechenbare Funktionen sind nicht aufzählbar
Annahme: Rϕ = {i | ϕi total} ist aufzählbar
· Dann gibt es eine berechenbare totale Funktion f mit range(f ) = Rϕ
· Dann lassen sich alle Funktionen aus R wie folgt in eine Tabelle eintragen
0
1
2
3
4
...
ϕf (0)
ϕf (0)(0)+1
ϕf (0)(1)
ϕf (0)(2)
ϕf (0)(3)
ϕf (0)(4)
...
ϕf (1)
ϕf (1)(0)
ϕf (1)(1)+1
ϕf (1)(2)
ϕf (1)(3)
ϕf (1)(4)
...
ϕf (2)
ϕf (2)(0)
ϕf (2)(1)
ϕf (2)(2)+1
ϕf (2)(3)
ϕf (2)(4)
...
ϕf (3)
...
ϕf (3)(0)
...
ϕf (3)(1)
...
ϕf (3)(2)
...
ϕf (3)(3)+1
...
ϕf (3)(4)
...
...
...
· Definiere eine neue Funktion h:N→N durch h(n) = ϕf (n)(n)+1
· h ist offensichtlich total und berechenbar, denn h(n) = u(f (n), n)+1
· Also gibt es ein i ∈ Rϕ mit h = ϕi und damit ein j ∈ N mit i=f (j)
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
6
Beweistechniken für unlösbare Probeme
Diagonalbeweise III:
Total berechenbare Funktionen sind nicht aufzählbar
Annahme: Rϕ = {i | ϕi total} ist aufzählbar
· Dann gibt es eine berechenbare totale Funktion f mit range(f ) = Rϕ
· Dann lassen sich alle Funktionen aus R wie folgt in eine Tabelle eintragen
0
1
2
3
4
...
ϕf (0)
ϕf (0)(0)+1
ϕf (0)(1)
ϕf (0)(2)
ϕf (0)(3)
ϕf (0)(4)
...
ϕf (1)
ϕf (1)(0)
ϕf (1)(1)+1
ϕf (1)(2)
ϕf (1)(3)
ϕf (1)(4)
...
ϕf (2)
ϕf (2)(0)
ϕf (2)(1)
ϕf (2)(2)+1
ϕf (2)(3)
ϕf (2)(4)
...
ϕf (3)
...
ϕf (3)(0)
...
ϕf (3)(1)
...
ϕf (3)(2)
...
ϕf (3)(3)+1
...
ϕf (3)(4)
...
...
...
· Definiere eine neue Funktion h:N→N durch h(n) = ϕf (n)(n)+1
· h ist offensichtlich total und berechenbar, denn h(n) = u(f (n), n)+1
· Also gibt es ein i ∈ Rϕ mit h = ϕi und damit ein j ∈ N mit i=f (j)
· Für dieses j gilt ϕf (j)(j) = h(j) = ϕf (j)(j)+1
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
6
√
Beweistechniken für unlösbare Probeme
Andere unlösbare Probleme mit Diagonalbeweisen
• Selbstanwendbarkeitsproblem:
– S = {i | ϕi(i)6=⊥}
unentscheidbar, aber aufzählbar
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
7
Beweistechniken für unlösbare Probeme
Andere unlösbare Probleme mit Diagonalbeweisen
• Selbstanwendbarkeitsproblem:
– S = {i | ϕi(i)6=⊥}
• Entscheidungsproblem:
– E = {(i, j) | ϕi(j) = 1}
unentscheidbar, aber aufzählbar
unentscheidbar, aber aufzählbar
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
7
Beweistechniken für unlösbare Probeme
Andere unlösbare Probleme mit Diagonalbeweisen
• Selbstanwendbarkeitsproblem:
– S = {i | ϕi(i)6=⊥}
• Entscheidungsproblem:
– E = {(i, j) | ϕi(j) = 1}
unentscheidbar, aber aufzählbar
unentscheidbar, aber aufzählbar
• Monotone Funktionen:
– M ON = {i | ∀k. ϕi(k) < ϕi(k+1)}
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
7
nicht aufzählbar
Beweistechniken für unlösbare Probeme
Andere unlösbare Probleme mit Diagonalbeweisen
• Selbstanwendbarkeitsproblem:
– S = {i | ϕi(i)6=⊥}
• Entscheidungsproblem:
– E = {(i, j) | ϕi(j) = 1}
unentscheidbar, aber aufzählbar
unentscheidbar, aber aufzählbar
• Monotone Funktionen:
– M ON = {i | ∀k. ϕi(k) < ϕi(k+1)}
• Entscheidungsfunktionen:
– EF = {i | ∀j. ϕi(j) ∈ {0, 1}}
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
nicht aufzählbar
nicht aufzählbar
7
Beweistechniken für unlösbare Probeme
Monotonieargumente
• Ziel
– Zeige, daß eine Funktion f eine Eigenschaft P nicht besitzt
– z.B. primitiv rekursiv, berechenbar, maximale Komplexität (Rechenzeit)
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
8
Beweistechniken für unlösbare Probeme
Monotonieargumente
• Ziel
– Zeige, daß eine Funktion f eine Eigenschaft P nicht besitzt
– z.B. primitiv rekursiv, berechenbar, maximale Komplexität (Rechenzeit)
• Methodik
– Zeige daß f stärker wächst als jede Funktion mit Eigenschaft P
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
8
Beweistechniken für unlösbare Probeme
Monotonieargumente
• Ziel
– Zeige, daß eine Funktion f eine Eigenschaft P nicht besitzt
– z.B. primitiv rekursiv, berechenbar, maximale Komplexität (Rechenzeit)
• Methodik
– Zeige daß f stärker wächst als jede Funktion mit Eigenschaft P
· Induktive Analyse des Wachstumsverhaltens von f
· Analyse des maximalen Wachstums von Funktionen mit Eigenschaft P
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
8
Beweistechniken für unlösbare Probeme
Monotonieargumente
• Ziel
– Zeige, daß eine Funktion f eine Eigenschaft P nicht besitzt
– z.B. primitiv rekursiv, berechenbar, maximale Komplexität (Rechenzeit)
• Methodik
– Zeige daß f stärker wächst als jede Funktion mit Eigenschaft P
· Induktive Analyse des Wachstumsverhaltens von f
· Analyse des maximalen Wachstums von Funktionen mit Eigenschaft P
– f kann also nicht selbst Eigenschaft P besitzen
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
8
Beweistechniken für unlösbare Probeme
Monotonieargumente
• Ziel
– Zeige, daß eine Funktion f eine Eigenschaft P nicht besitzt
– z.B. primitiv rekursiv, berechenbar, maximale Komplexität (Rechenzeit)
• Methodik
– Zeige daß f stärker wächst als jede Funktion mit Eigenschaft P
· Induktive Analyse des Wachstumsverhaltens von f
· Analyse des maximalen Wachstums von Funktionen mit Eigenschaft P
– f kann also nicht selbst Eigenschaft P besitzen
• Beispiele
– Die Ackermann Funktion ist nicht primitiv-rekursiv
– Die Busy-Beaver Funktion ist nicht berechenbar
folgt
– Komplexitätsanalysen
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
8
Beweistechniken für unlösbare Probeme
Das Busy-Beaver Problem
Biber stauen Bäche, indem sie Holzstücke in den Bach tragen. Fleißige Biber tragen
mehr Holzstücke zusammen als faule. Größere Biber können mehr leisten als kleine.
Die Busy-Beaver Funktion liefert die Länge der längsten ununterbrochenen Staumauer,
die ein Biber zusammentragen kann, ohne daß schon eine Teilmauer vorhanden war.
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
9
Beweistechniken für unlösbare Probeme
Das Busy-Beaver Problem
Biber stauen Bäche, indem sie Holzstücke in den Bach tragen. Fleißige Biber tragen
mehr Holzstücke zusammen als faule. Größere Biber können mehr leisten als kleine.
Die Busy-Beaver Funktion liefert die Länge der längsten ununterbrochenen Staumauer,
die ein Biber zusammentragen kann, ohne daß schon eine Teilmauer vorhanden war.
• Beschreibe Biber durch Turingmaschinen
– Holzstücke werden durch das Symbol | beschrieben
– τ = ({1..n}, {|}, {|, b}, δ, 1, b) heißt Busy-Beaver TM der Größe n
– BBT(n) sei die Menge aller Busy-Beaver Turingmaschinen der Größe n
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
9
Beweistechniken für unlösbare Probeme
Das Busy-Beaver Problem
Biber stauen Bäche, indem sie Holzstücke in den Bach tragen. Fleißige Biber tragen
mehr Holzstücke zusammen als faule. Größere Biber können mehr leisten als kleine.
Die Busy-Beaver Funktion liefert die Länge der längsten ununterbrochenen Staumauer,
die ein Biber zusammentragen kann, ohne daß schon eine Teilmauer vorhanden war.
• Beschreibe Biber durch Turingmaschinen
– Holzstücke werden durch das Symbol | beschrieben
– τ = ({1..n}, {|}, {|, b}, δ, 1, b) heißt Busy-Beaver TM der Größe n
– BBT(n) sei die Menge aller Busy-Beaver Turingmaschinen der Größe n
• Beschreibe Produktivität
von Bibern
(
– Produktivität(τ ) =
n wenn hτ () = |n
0 wenn τ bei Eingabe nicht hält
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
9
Beweistechniken für unlösbare Probeme
Das Busy-Beaver Problem
Biber stauen Bäche, indem sie Holzstücke in den Bach tragen. Fleißige Biber tragen
mehr Holzstücke zusammen als faule. Größere Biber können mehr leisten als kleine.
Die Busy-Beaver Funktion liefert die Länge der längsten ununterbrochenen Staumauer,
die ein Biber zusammentragen kann, ohne daß schon eine Teilmauer vorhanden war.
• Beschreibe Biber durch Turingmaschinen
– Holzstücke werden durch das Symbol | beschrieben
– τ = ({1..n}, {|}, {|, b}, δ, 1, b) heißt Busy-Beaver TM der Größe n
– BBT(n) sei die Menge aller Busy-Beaver Turingmaschinen der Größe n
• Beschreibe Produktivität
von Bibern
(
– Produktivität(τ ) =
n wenn hτ () = |n
0 wenn τ bei Eingabe nicht hält
• Beschreibe maximal mögliche Leistung von Bibern
– BB(n) = max {Produktivität(τ ) | τ ∈ BBT(n)}
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
9
Beweistechniken für unlösbare Probeme
Das Busy-Beaver Problem
Biber stauen Bäche, indem sie Holzstücke in den Bach tragen. Fleißige Biber tragen
mehr Holzstücke zusammen als faule. Größere Biber können mehr leisten als kleine.
Die Busy-Beaver Funktion liefert die Länge der längsten ununterbrochenen Staumauer,
die ein Biber zusammentragen kann, ohne daß schon eine Teilmauer vorhanden war.
• Beschreibe Biber durch Turingmaschinen
– Holzstücke werden durch das Symbol | beschrieben
– τ = ({1..n}, {|}, {|, b}, δ, 1, b) heißt Busy-Beaver TM der Größe n
– BBT(n) sei die Menge aller Busy-Beaver Turingmaschinen der Größe n
• Beschreibe Produktivität
von Bibern
(
– Produktivität(τ ) =
n wenn hτ () = |n
0 wenn τ bei Eingabe nicht hält
• Beschreibe maximal mögliche Leistung von Bibern
– BB(n) = max {Produktivität(τ ) | τ ∈ BBT(n)}
Ist die Busy-Beaver Funktion berechenbar?
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
9
Beweistechniken für unlösbare Probeme
Busy-Beaver Problem: Intuitive Analyse
• Beispiel einer BBT(2) Maschine
δ= s
1
1
2
2
a
|
b
|
b
s 0 a0
2 |
2 |
2 |
1 |
P
r
l
h
l
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
10
Beweistechniken für unlösbare Probeme
Busy-Beaver Problem: Intuitive Analyse
• Beispiel einer BBT(2) Maschine
δ= s
1
1
2
2
a
|
b
|
b
s 0 a0
2 |
2 |
2 |
1 |
P
r
l
h
l
Arbeitsweise:
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
10
Beweistechniken für unlösbare Probeme
Busy-Beaver Problem: Intuitive Analyse
• Beispiel einer BBT(2) Maschine
δ= s
1
1
2
2
a
|
b
|
b
s 0 a0
2 |
2 |
2 |
1 |
P
r
l
h
l
Arbeitsweise:
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
10
b1b
Beweistechniken für unlösbare Probeme
Busy-Beaver Problem: Intuitive Analyse
• Beispiel einer BBT(2) Maschine
δ= s
1
1
2
2
a
|
b
|
b
s 0 a0
2 |
2 |
2 |
1 |
P
r
l
h
l
Arbeitsweise:
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
b1b
7 |2b
→
10
Beweistechniken für unlösbare Probeme
Busy-Beaver Problem: Intuitive Analyse
• Beispiel einer BBT(2) Maschine
δ= s
1
1
2
2
a
|
b
|
b
s 0 a0
2 |
2 |
2 |
1 |
P
r
l
h
l
Arbeitsweise:
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
b1b
7→ |2b
7→ b1||
10
Beweistechniken für unlösbare Probeme
Busy-Beaver Problem: Intuitive Analyse
• Beispiel einer BBT(2) Maschine
δ= s
1
1
2
2
a
|
b
|
b
s 0 a0
2 |
2 |
2 |
1 |
P
r
l
h
l
Arbeitsweise:
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
b1b
7→ |2b
7→ b1||
7→ b2b||
10
Beweistechniken für unlösbare Probeme
Busy-Beaver Problem: Intuitive Analyse
• Beispiel einer BBT(2) Maschine
δ= s
1
1
2
2
a
|
b
|
b
s 0 a0
2 |
2 |
2 |
1 |
P
r
l
h
l
Arbeitsweise:
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
b1b
7→ |2b
7→ b1||
7→ b2b||
7→ b1b|||
10
Beweistechniken für unlösbare Probeme
Busy-Beaver Problem: Intuitive Analyse
• Beispiel einer BBT(2) Maschine
δ= s
1
1
2
2
a
|
b
|
b
s 0 a0
2 |
2 |
2 |
1 |
P
r
l
h
l
Arbeitsweise:
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
b1b
7→ |2b
7→ b1||
7→ b2b||
7→ b1b|||
7→ |2|||
10
Beweistechniken für unlösbare Probeme
Busy-Beaver Problem: Intuitive Analyse
• Beispiel einer BBT(2) Maschine
δ= s
1
1
2
2
a
|
b
|
b
s 0 a0
2 |
2 |
2 |
1 |
P
r
l
h
l
Arbeitsweise:
b1b
7→ |2b
7→ b1||
7→ b2b||
7→ b1b|||
7→ |2|||
stop
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
10
Beweistechniken für unlösbare Probeme
Busy-Beaver Problem: Intuitive Analyse
• Beispiel einer BBT(2) Maschine
δ= s
1
1
2
2
a
|
b
|
b
s 0 a0
2 |
2 |
2 |
1 |
P
r
l
h
l
Arbeitsweise:
b1b
7→ |2b
7→ b1||
7→ b2b||
7→ b1b|||
7→ |2|||
stop
– Produktivität ist 3 (4, wenn man alle Holzstücke zählt)
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
10
Beweistechniken für unlösbare Probeme
Busy-Beaver Problem: Intuitive Analyse
• Beispiel einer BBT(2) Maschine
δ= s
1
1
2
2
a
|
b
|
b
s 0 a0
2 |
2 |
2 |
1 |
P
r
l
h
l
Arbeitsweise:
b1b
7→ |2b
7→ b1||
7→ b2b||
7→ b1b|||
7→ |2|||
stop
– Produktivität ist 3 (4, wenn man alle Holzstücke zählt)
• BB(n) bekannt für kleine n:
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
n 1 2 3
4
5
6 ...
1 4 6 13 ≥4098 ≥6.4*10462
10
Beweistechniken für unlösbare Probeme
Busy-Beaver Problem: Intuitive Analyse
• Beispiel einer BBT(2) Maschine
δ= s
1
1
2
2
a
|
b
|
b
s 0 a0
2 |
2 |
2 |
1 |
P
r
l
h
l
Arbeitsweise:
b1b
7→ |2b
7→ b1||
7→ b2b||
7→ b1b|||
7→ |2|||
stop
– Produktivität ist 3 (4, wenn man alle Holzstücke zählt)
• BB(n) bekannt für kleine n:
n 1 2 3
4
5
6 ...
1 4 6 13 ≥4098 ≥6.4*10462
• Vollständige Analyse nicht möglich
– |BBT(n)| ist (|S|∗|Γ|∗|{r, l}|)(|S|∗|Γ|−1) ∗ (|S|∗|Γ|∗|{h}|) ∗ (|S|∗|Γ|) = (4n)2n
|BBT(1)|=16, |BBT(2)|=4096, |BBT(3)|=2985984, . . .
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
10
Beweistechniken für unlösbare Probeme
Busy-Beaver Problem: Intuitive Analyse
• Beispiel einer BBT(2) Maschine
δ= s
1
1
2
2
a
|
b
|
b
s 0 a0
2 |
2 |
2 |
1 |
P
r
l
h
l
Arbeitsweise:
b1b
7→ |2b
7→ b1||
7→ b2b||
7→ b1b|||
7→ |2|||
stop
– Produktivität ist 3 (4, wenn man alle Holzstücke zählt)
• BB(n) bekannt für kleine n:
n 1 2 3
4
5
6 ...
1 4 6 13 ≥4098 ≥6.4*10462
• Vollständige Analyse nicht möglich
– |BBT(n)| ist (|S|∗|Γ|∗|{r, l}|)(|S|∗|Γ|−1) ∗ (|S|∗|Γ|∗|{h}|) ∗ (|S|∗|Γ|) = (4n)2n
|BBT(1)|=16, |BBT(2)|=4096, |BBT(3)|=2985984, . . .
– Anzahl möglicher Bandkonfigurationen einer TM ist unbegrenzt
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
10
Beweistechniken für unlösbare Probeme
Das Busy-Beaver Problem ist unlösbar
Satz L
• BB ist streng monoton: i>j ⇔ BB(i)>BB(j)
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
11
Beweistechniken für unlösbare Probeme
Das Busy-Beaver Problem ist unlösbar
Satz L
• BB ist streng monoton: i>j ⇔ BB(i)>BB(j)
– Für alle n gilt BB(n+1)>BB(n)
· Schreibe in Zustand 1 ein | und beginne mit der BB(n)-Maschine
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
11
Beweistechniken für unlösbare Probeme
Das Busy-Beaver Problem ist unlösbar
Satz L
• BB ist streng monoton: i>j ⇔ BB(i)>BB(j)
– Für alle n gilt BB(n+1)>BB(n)
· Schreibe in Zustand 1 ein | und beginne mit der BB(n)-Maschine
– i>j ⇔ BB(i)>BB(j) folgt nun durch Induktion über i − j
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
11
Beweistechniken für unlösbare Probeme
Das Busy-Beaver Problem ist unlösbar
Satz L
• BB ist streng monoton: i>j ⇔ BB(i)>BB(j)
– Für alle n gilt BB(n+1)>BB(n)
· Schreibe in Zustand 1 ein | und beginne mit der BB(n)-Maschine
– i>j ⇔ BB(i)>BB(j) folgt nun durch Induktion über i − j
• Für alle n gilt:
BB(n+8)≥2n
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
11
Beweistechniken für unlösbare Probeme
Das Busy-Beaver Problem ist unlösbar
Satz L
• BB ist streng monoton: i>j ⇔ BB(i)>BB(j)
– Für alle n gilt BB(n+1)>BB(n)
· Schreibe in Zustand 1 ein | und beginne mit der BB(n)-Maschine
– i>j ⇔ BB(i)>BB(j) folgt nun durch Induktion über i − j
• Für alle n gilt:
BB(n+8)≥2n
– Mit n Zuständen kann man n Striche generieren
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
11
Beweistechniken für unlösbare Probeme
Das Busy-Beaver Problem ist unlösbar
Satz L
• BB ist streng monoton: i>j ⇔ BB(i)>BB(j)
– Für alle n gilt BB(n+1)>BB(n)
· Schreibe in Zustand 1 ein | und beginne mit der BB(n)-Maschine
– i>j ⇔ BB(i)>BB(j) folgt nun durch Induktion über i − j
• Für alle n gilt:
BB(n+8)≥2n
– Mit n Zuständen kann man n Striche generieren
– Mit 8 Zuständen kann man Striche verdoppeln (vgl τ4 aus Kapitel 6.1)
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
11
Beweistechniken für unlösbare Probeme
Das Busy-Beaver Problem ist unlösbar
Satz L
• BB ist streng monoton: i>j ⇔ BB(i)>BB(j)
– Für alle n gilt BB(n+1)>BB(n)
· Schreibe in Zustand 1 ein | und beginne mit der BB(n)-Maschine
– i>j ⇔ BB(i)>BB(j) folgt nun durch Induktion über i − j
• Für alle n gilt:
BB(n+8)≥2n
– Mit n Zuständen kann man n Striche generieren
– Mit 8 Zuständen kann man Striche verdoppeln (vgl τ4 aus Kapitel 6.1)
• BB berechenbar ⇒ BB(n+2k)≥ BB(BB(n)) für ein k
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
11
Beweistechniken für unlösbare Probeme
Das Busy-Beaver Problem ist unlösbar
Satz L
• BB ist streng monoton: i>j ⇔ BB(i)>BB(j)
– Für alle n gilt BB(n+1)>BB(n)
· Schreibe in Zustand 1 ein | und beginne mit der BB(n)-Maschine
– i>j ⇔ BB(i)>BB(j) folgt nun durch Induktion über i − j
• Für alle n gilt:
BB(n+8)≥2n
– Mit n Zuständen kann man n Striche generieren
– Mit 8 Zuständen kann man Striche verdoppeln (vgl τ4 aus Kapitel 6.1)
• BB berechenbar ⇒ BB(n+2k)≥ BB(BB(n)) für ein k
– Wähle k := Anzahl der Zustände der TM über Γ={|, b}, die BB berechnet
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
11
Beweistechniken für unlösbare Probeme
Das Busy-Beaver Problem ist unlösbar
Satz L
• BB ist streng monoton: i>j ⇔ BB(i)>BB(j)
– Für alle n gilt BB(n+1)>BB(n)
· Schreibe in Zustand 1 ein | und beginne mit der BB(n)-Maschine
– i>j ⇔ BB(i)>BB(j) folgt nun durch Induktion über i − j
• Für alle n gilt:
BB(n+8)≥2n
– Mit n Zuständen kann man n Striche generieren
– Mit 8 Zuständen kann man Striche verdoppeln (vgl τ4 aus Kapitel 6.1)
• BB berechenbar ⇒ BB(n+2k)≥ BB(BB(n)) für ein k
–
–
–
–
Wähle k := Anzahl der Zustände der TM über Γ={|, b}, die BB berechnet
Mit n Zuständen generiere n Striche
Mit k Zuständen berechne jetzt BB(n)
Mit witeren k Zuständen berechne BB(BB(n))
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
11
Beweistechniken für unlösbare Probeme
Das Busy-Beaver Problem ist unlösbar
Satz L
• BB ist streng monoton: i>j ⇔ BB(i)>BB(j)
– Für alle n gilt BB(n+1)>BB(n)
· Schreibe in Zustand 1 ein | und beginne mit der BB(n)-Maschine
– i>j ⇔ BB(i)>BB(j) folgt nun durch Induktion über i − j
• Für alle n gilt:
BB(n+8)≥2n
– Mit n Zuständen kann man n Striche generieren
– Mit 8 Zuständen kann man Striche verdoppeln (vgl τ4 aus Kapitel 6.1)
• BB berechenbar ⇒ BB(n+2k)≥ BB(BB(n)) für ein k
–
–
–
–
Wähle k := Anzahl der Zustände der TM über Γ={|, b}, die BB berechnet
Mit n Zuständen generiere n Striche
Mit k Zuständen berechne jetzt BB(n)
Mit witeren k Zuständen berechne BB(BB(n))
• BB kann nicht berechenbar sein
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
11
Beweistechniken für unlösbare Probeme
Das Busy-Beaver Problem ist unlösbar
Satz L
• BB ist streng monoton: i>j ⇔ BB(i)>BB(j)
– Für alle n gilt BB(n+1)>BB(n)
· Schreibe in Zustand 1 ein | und beginne mit der BB(n)-Maschine
– i>j ⇔ BB(i)>BB(j) folgt nun durch Induktion über i − j
• Für alle n gilt:
BB(n+8)≥2n
– Mit n Zuständen kann man n Striche generieren
– Mit 8 Zuständen kann man Striche verdoppeln (vgl τ4 aus Kapitel 6.1)
• BB berechenbar ⇒ BB(n+2k)≥ BB(BB(n)) für ein k
–
–
–
–
Wähle k := Anzahl der Zustände der TM über Γ={|, b}, die BB berechnet
Mit n Zuständen generiere n Striche
Mit k Zuständen berechne jetzt BB(n)
Mit witeren k Zuständen berechne BB(BB(n))
• BB kann nicht berechenbar sein
– Sonst gibt es ein k, so daß für alle n: BB(n+8+2k) ≥ BB(BB(n+8)) ≥ BB(2n)
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
11
Beweistechniken für unlösbare Probeme
Das Busy-Beaver Problem ist unlösbar
Satz L
• BB ist streng monoton: i>j ⇔ BB(i)>BB(j)
– Für alle n gilt BB(n+1)>BB(n)
· Schreibe in Zustand 1 ein | und beginne mit der BB(n)-Maschine
– i>j ⇔ BB(i)>BB(j) folgt nun durch Induktion über i − j
• Für alle n gilt:
BB(n+8)≥2n
– Mit n Zuständen kann man n Striche generieren
– Mit 8 Zuständen kann man Striche verdoppeln (vgl τ4 aus Kapitel 6.1)
• BB berechenbar ⇒ BB(n+2k)≥ BB(BB(n)) für ein k
–
–
–
–
Wähle k := Anzahl der Zustände der TM über Γ={|, b}, die BB berechnet
Mit n Zuständen generiere n Striche
Mit k Zuständen berechne jetzt BB(n)
Mit witeren k Zuständen berechne BB(BB(n))
• BB kann nicht berechenbar sein
– Sonst gibt es ein k, so daß für alle n: BB(n+8+2k) ≥ BB(BB(n+8)) ≥ BB(2n)
√
– Für n=2k+9 widerspräche BB(4k+17) ≥ BB(4k+18) der Monotonie
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
11
Beweistechniken für unlösbare Probeme
Problemreduktion
• Ziel: Wiederverwendung bekannter Ergebnisse
– Zur Lösung eines Problems P bzw. zum Nachweis seiner Unlösbarkeit
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
12
Beweistechniken für unlösbare Probeme
Problemreduktion
• Ziel: Wiederverwendung bekannter Ergebnisse
– Zur Lösung eines Problems P bzw. zum Nachweis seiner Unlösbarkeit
– Unlösbar =
ˆ unentscheidbar, nicht aufzählbar, nicht in Zeit t lösbar, . . .
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
12
Beweistechniken für unlösbare Probeme
Problemreduktion
• Ziel: Wiederverwendung bekannter Ergebnisse
– Zur Lösung eines Problems P bzw. zum Nachweis seiner Unlösbarkeit
– Unlösbar =
ˆ unentscheidbar, nicht aufzählbar, nicht in Zeit t lösbar, . . .
• Methodik zum Nachweis der Unlösbarkeit
– Transformiere P in ein anderes Problem P 0, das als unlösbar bekannt ist
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
12
Beweistechniken für unlösbare Probeme
Problemreduktion
• Ziel: Wiederverwendung bekannter Ergebnisse
– Zur Lösung eines Problems P bzw. zum Nachweis seiner Unlösbarkeit
– Unlösbar =
ˆ unentscheidbar, nicht aufzählbar, nicht in Zeit t lösbar, . . .
• Methodik zum Nachweis der Unlösbarkeit
– Transformiere P in ein anderes Problem P 0, das als unlösbar bekannt ist
– Zeige, daß jede Lösung für P in eine Lösung für P 0 transformiert würde
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
12
Beweistechniken für unlösbare Probeme
Problemreduktion
• Ziel: Wiederverwendung bekannter Ergebnisse
– Zur Lösung eines Problems P bzw. zum Nachweis seiner Unlösbarkeit
– Unlösbar =
ˆ unentscheidbar, nicht aufzählbar, nicht in Zeit t lösbar, . . .
• Methodik zum Nachweis der Unlösbarkeit
– Transformiere P in ein anderes Problem P 0, das als unlösbar bekannt ist
– Zeige, daß jede Lösung für P in eine Lösung für P 0 transformiert würde
– P kann also nicht lösbar sein
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
12
Beweistechniken für unlösbare Probeme
Problemreduktion
• Ziel: Wiederverwendung bekannter Ergebnisse
– Zur Lösung eines Problems P bzw. zum Nachweis seiner Unlösbarkeit
– Unlösbar =
ˆ unentscheidbar, nicht aufzählbar, nicht in Zeit t lösbar, . . .
• Methodik zum Nachweis der Unlösbarkeit
– Transformiere P in ein anderes Problem P 0, das als unlösbar bekannt ist
– Zeige, daß jede Lösung für P in eine Lösung für P 0 transformiert würde
– P kann also nicht lösbar sein
• Methodik zur Konstruktion einer Lösung
– Transformiere ein anderes Problem P 0, das als lösbar bekannt ist, in P
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
12
Beweistechniken für unlösbare Probeme
Problemreduktion
• Ziel: Wiederverwendung bekannter Ergebnisse
– Zur Lösung eines Problems P bzw. zum Nachweis seiner Unlösbarkeit
– Unlösbar =
ˆ unentscheidbar, nicht aufzählbar, nicht in Zeit t lösbar, . . .
• Methodik zum Nachweis der Unlösbarkeit
– Transformiere P in ein anderes Problem P 0, das als unlösbar bekannt ist
– Zeige, daß jede Lösung für P in eine Lösung für P 0 transformiert würde
– P kann also nicht lösbar sein
• Methodik zur Konstruktion einer Lösung
– Transformiere ein anderes Problem P 0, das als lösbar bekannt ist, in P
– Zeige, wie eine Lösung für P 0 in eine Lösung für P transformiert wird
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
12
Beweistechniken für unlösbare Probeme
Problemreduktion
• Ziel: Wiederverwendung bekannter Ergebnisse
– Zur Lösung eines Problems P bzw. zum Nachweis seiner Unlösbarkeit
– Unlösbar =
ˆ unentscheidbar, nicht aufzählbar, nicht in Zeit t lösbar, . . .
• Methodik zum Nachweis der Unlösbarkeit
– Transformiere P in ein anderes Problem P 0, das als unlösbar bekannt ist
– Zeige, daß jede Lösung für P in eine Lösung für P 0 transformiert würde
– P kann also nicht lösbar sein
• Methodik zur Konstruktion einer Lösung
– Transformiere ein anderes Problem P 0, das als lösbar bekannt ist, in P
– Zeige, wie eine Lösung für P 0 in eine Lösung für P transformiert wird
• Hilfsmittel: Reduzierbarkeit P 0≤P
Definition M
– P 0≤P , falls P 0=f −1(P )={x | f (x) ∈ P } für ein total-berechenbares f
– “P 0 ist reduzierbar auf P ”
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
12
Beweistechniken für unlösbare Probeme
Problemreduktion
• Ziel: Wiederverwendung bekannter Ergebnisse
– Zur Lösung eines Problems P bzw. zum Nachweis seiner Unlösbarkeit
– Unlösbar =
ˆ unentscheidbar, nicht aufzählbar, nicht in Zeit t lösbar, . . .
• Methodik zum Nachweis der Unlösbarkeit
– Transformiere P in ein anderes Problem P 0, das als unlösbar bekannt ist
– Zeige, daß jede Lösung für P in eine Lösung für P 0 transformiert würde
– P kann also nicht lösbar sein
• Methodik zur Konstruktion einer Lösung
– Transformiere ein anderes Problem P 0, das als lösbar bekannt ist, in P
– Zeige, wie eine Lösung für P 0 in eine Lösung für P transformiert wird
• Hilfsmittel: Reduzierbarkeit P 0≤P
Definition M
– P 0≤P , falls P 0=f −1(P )={x | f (x) ∈ P } für ein total-berechenbares f
– “P 0 ist reduzierbar auf P ”
(Begriff gilt für Teilmengen von Zahlen, Worten, . . . )
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
12
Beweistechniken für unlösbare Probeme
Beweisführung durch Reduktion
• P 0≤P bedeutet “P 0 ist leichter als P ”
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
13
Beweistechniken für unlösbare Probeme
Beweisführung durch Reduktion
• P 0≤P bedeutet “P 0 ist leichter als P ”
– Ist P lösbar, dann kann P 0 wie folgt gelöst werden
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
13
Beweistechniken für unlösbare Probeme
Beweisführung durch Reduktion
• P 0≤P bedeutet “P 0 ist leichter als P ”
– Ist P lösbar, dann kann P 0 wie folgt gelöst werden
· Bei Eingabe x bestimme f (x) (f ist die Reduktionsfunktion)
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
13
Beweistechniken für unlösbare Probeme
Beweisführung durch Reduktion
• P 0≤P bedeutet “P 0 ist leichter als P ”
– Ist P lösbar, dann kann P 0 wie folgt gelöst werden
· Bei Eingabe x bestimme f (x) (f ist die Reduktionsfunktion)
· Löse f (x) mit der Lösungsmethode für P
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
13
Beweistechniken für unlösbare Probeme
Beweisführung durch Reduktion
• P 0≤P bedeutet “P 0 ist leichter als P ”
– Ist P lösbar, dann kann P 0 wie folgt gelöst werden
· Bei Eingabe x bestimme f (x) (f ist die Reduktionsfunktion)
· Löse f (x) mit der Lösungsmethode für P
· Es gilt x ∈ P 0 ⇔ f (x) ∈ P , also überträgt sich das Ergebnis
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
13
Beweistechniken für unlösbare Probeme
Beweisführung durch Reduktion
• P 0≤P bedeutet “P 0 ist leichter als P ”
– Ist P lösbar, dann kann P 0 wie folgt gelöst werden
· Bei Eingabe x bestimme f (x) (f ist die Reduktionsfunktion)
· Löse f (x) mit der Lösungsmethode für P
· Es gilt x ∈ P 0 ⇔ f (x) ∈ P , also überträgt sich das Ergebnis
• Aus P 0≤P und P entscheidbar folgt P 0 entscheidbar
– Übertragung von Entscheidbarkeit: χP 0 (x) = χf −1(P ) (x) = χP (f (x))
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
13
Beweistechniken für unlösbare Probeme
Beweisführung durch Reduktion
• P 0≤P bedeutet “P 0 ist leichter als P ”
– Ist P lösbar, dann kann P 0 wie folgt gelöst werden
· Bei Eingabe x bestimme f (x) (f ist die Reduktionsfunktion)
· Löse f (x) mit der Lösungsmethode für P
· Es gilt x ∈ P 0 ⇔ f (x) ∈ P , also überträgt sich das Ergebnis
• Aus P 0≤P und P entscheidbar folgt P 0 entscheidbar
– Übertragung von Entscheidbarkeit: χP 0 (x) = χf −1(P ) (x) = χP (f (x))
• Aus P 0≤P und P aufzählbar folgt P 0 aufzählbar
– Übertragung von Aufzählbarkeit:
ψP 0 (x) = ψf −1(P ) (x) = ψP (f (x))
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
13
Beweistechniken für unlösbare Probeme
Beispiele von Problemreduktion
• S = {i | ϕi(i)6=⊥} ≤ H = {(i, n) | ϕi(n)6=⊥}
“Das Selbstanwendbarkeitsproblem ist leichter als das Halteproblem”
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
14
Beweistechniken für unlösbare Probeme
Beispiele von Problemreduktion
• S = {i | ϕi(i)6=⊥} ≤ H = {(i, n) | ϕi(n)6=⊥}
“Das Selbstanwendbarkeitsproblem ist leichter als das Halteproblem”
– Es gilt i ∈ S ⇔ (i, i) ∈ H.
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
14
Beweistechniken für unlösbare Probeme
Beispiele von Problemreduktion
• S = {i | ϕi(i)6=⊥} ≤ H = {(i, n) | ϕi(n)6=⊥}
“Das Selbstanwendbarkeitsproblem ist leichter als das Halteproblem”
– Es gilt i ∈ S ⇔ (i, i) ∈ H.
– Wähle f (i) := (i, i). Dann ist f total-berechenbar und S = f −1(H)
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
14
Beweistechniken für unlösbare Probeme
Beispiele von Problemreduktion
• S = {i | ϕi(i)6=⊥} ≤ H = {(i, n) | ϕi(n)6=⊥}
“Das Selbstanwendbarkeitsproblem ist leichter als das Halteproblem”
– Es gilt i ∈ S ⇔ (i, i) ∈ H.
– Wähle f (i) := (i, i). Dann ist f total-berechenbar und S = f −1(H)
– Man kann auch H auf S reduzieren (aufwendig)
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
14
Beweistechniken für unlösbare Probeme
Beispiele von Problemreduktion
• S = {i | ϕi(i)6=⊥} ≤ H = {(i, n) | ϕi(n)6=⊥}
“Das Selbstanwendbarkeitsproblem ist leichter als das Halteproblem”
– Es gilt i ∈ S ⇔ (i, i) ∈ H.
– Wähle f (i) := (i, i). Dann ist f total-berechenbar und S = f −1(H)
– Man kann auch H auf S reduzieren (aufwendig)
• H = {(i, n) | ϕi(n)=⊥} ≤ P ROGz = {i | ϕi = z}
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
14
Beweistechniken für unlösbare Probeme
Beispiele von Problemreduktion
• S = {i | ϕi(i)6=⊥} ≤ H = {(i, n) | ϕi(n)6=⊥}
“Das Selbstanwendbarkeitsproblem ist leichter als das Halteproblem”
– Es gilt i ∈ S ⇔ (i, i) ∈ H.
– Wähle f (i) := (i, i). Dann ist f total-berechenbar und S = f −1(H)
– Man kann auch H auf S reduzieren (aufwendig)
• H = {(i, n) | ϕi(n)=⊥} ≤ P ROGz = {i | ϕi = z}
– Es gilt (i, n) ∈ H ⇔ ∀t ∈ N.Φi(n)6=t.
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
14
Beweistechniken für unlösbare Probeme
Beispiele von Problemreduktion
• S = {i | ϕi(i)6=⊥} ≤ H = {(i, n) | ϕi(n)6=⊥}
“Das Selbstanwendbarkeitsproblem ist leichter als das Halteproblem”
– Es gilt i ∈ S ⇔ (i, i) ∈ H.
– Wähle f (i) := (i, i). Dann ist f total-berechenbar und S = f −1(H)
– Man kann auch H auf S reduzieren (aufwendig)
• H = {(i, n) | ϕi(n)=⊥} ≤ P ROGz = {i | ϕi = z}
– Es gilt (i, n) ∈ H ⇔ ∀t ∈ N.Φi(n)6=t.
ist, gibt es ein j mit
– Da Φ = {(i, n, t) | Φi(n) = t} entscheidbar
1 falls (i, n, t) ∈ Φ
ϕj (i, n, t) = χΦ (i, n, t) =
0 sonst
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
14
Beweistechniken für unlösbare Probeme
Beispiele von Problemreduktion
• S = {i | ϕi(i)6=⊥} ≤ H = {(i, n) | ϕi(n)6=⊥}
“Das Selbstanwendbarkeitsproblem ist leichter als das Halteproblem”
– Es gilt i ∈ S ⇔ (i, i) ∈ H.
– Wähle f (i) := (i, i). Dann ist f total-berechenbar und S = f −1(H)
– Man kann auch H auf S reduzieren (aufwendig)
• H = {(i, n) | ϕi(n)=⊥} ≤ P ROGz = {i | ϕi = z}
– Es gilt (i, n) ∈ H ⇔ ∀t ∈ N.Φi(n)6=t.
ist, gibt es ein j mit
– Da Φ = {(i, n, t) | Φi(n) = t} entscheidbar
1 falls (i, n, t) ∈ Φ
ϕj (i, n, t) = χΦ (i, n, t) =
0 sonst
– Nach dem SMN Theorem gibt es eine total-berechenbare Funktion f
mit ϕf (i,n)(t) = ϕj (i, n, t)
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
14
Beweistechniken für unlösbare Probeme
Beispiele von Problemreduktion
• S = {i | ϕi(i)6=⊥} ≤ H = {(i, n) | ϕi(n)6=⊥}
“Das Selbstanwendbarkeitsproblem ist leichter als das Halteproblem”
– Es gilt i ∈ S ⇔ (i, i) ∈ H.
– Wähle f (i) := (i, i). Dann ist f total-berechenbar und S = f −1(H)
– Man kann auch H auf S reduzieren (aufwendig)
• H = {(i, n) | ϕi(n)=⊥} ≤ P ROGz = {i | ϕi = z}
– Es gilt (i, n) ∈ H ⇔ ∀t ∈ N.Φi(n)6=t.
ist, gibt es ein j mit
– Da Φ = {(i, n, t) | Φi(n) = t} entscheidbar
1 falls (i, n, t) ∈ Φ
ϕj (i, n, t) = χΦ (i, n, t) =
0 sonst
– Nach dem SMN Theorem gibt es eine total-berechenbare Funktion f
mit ϕf (i,n)(t) = ϕj (i, n, t)
– Es folgt (i, n) ∈ H ⇔ ∀t ∈ N.Φi(n)6=t ⇔ ∀t ∈ N.ϕf (i,n)(t)=0 ⇔ ϕf (i,n)=z
⇔ f (i, n) ∈ P ROGz
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
14
Beweistechniken für unlösbare Probeme
Beispiele von Problemreduktion
• S = {i | ϕi(i)6=⊥} ≤ H = {(i, n) | ϕi(n)6=⊥}
“Das Selbstanwendbarkeitsproblem ist leichter als das Halteproblem”
– Es gilt i ∈ S ⇔ (i, i) ∈ H.
– Wähle f (i) := (i, i). Dann ist f total-berechenbar und S = f −1(H)
– Man kann auch H auf S reduzieren (aufwendig)
• H = {(i, n) | ϕi(n)=⊥} ≤ P ROGz = {i | ϕi = z}
– Es gilt (i, n) ∈ H ⇔ ∀t ∈ N.Φi(n)6=t.
ist, gibt es ein j mit
– Da Φ = {(i, n, t) | Φi(n) = t} entscheidbar
1 falls (i, n, t) ∈ Φ
ϕj (i, n, t) = χΦ (i, n, t) =
0 sonst
– Nach dem SMN Theorem gibt es eine total-berechenbare Funktion f
mit ϕf (i,n)(t) = ϕj (i, n, t)
– Es folgt (i, n) ∈ H ⇔ ∀t ∈ N.Φi(n)6=t ⇔ ∀t ∈ N.ϕf (i,n)(t)=0 ⇔ ϕf (i,n)=z
⇔ f (i, n) ∈ P ROGz
also H = f −1(P ROGz )
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
14
Beweistechniken für unlösbare Probeme
Das Post’sche Korrespondenzproblem
• Gegeben:
– Alphabet X, Menge von Wortpaaren {(u1, v1), .., (uk , vk )} in X +
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
15
Beweistechniken für unlösbare Probeme
Das Post’sche Korrespondenzproblem
• Gegeben:
– Alphabet X, Menge von Wortpaaren {(u1, v1), .., (uk , vk )} in X +
– Eine Korrespondenz ist eine Indexfolge i1, .., in mit ui1 ..uin = vi1 ..vin
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
15
Beweistechniken für unlösbare Probeme
Das Post’sche Korrespondenzproblem
• Gegeben:
– Alphabet X, Menge von Wortpaaren {(u1, v1), .., (uk , vk )} in X +
– Eine Korrespondenz ist eine Indexfolge i1, .., in mit ui1 ..uin = vi1 ..vin
– {(u1, v1), .., (uk , vk )} heißt lösbar, wenn es eine Korrespondenz gibt
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
15
Beweistechniken für unlösbare Probeme
Das Post’sche Korrespondenzproblem
• Gegeben:
– Alphabet X, Menge von Wortpaaren {(u1, v1), .., (uk , vk )} in X +
– Eine Korrespondenz ist eine Indexfolge i1, .., in mit ui1 ..uin = vi1 ..vin
– {(u1, v1), .., (uk , vk )} heißt lösbar, wenn es eine Korrespondenz gibt
• Post’sches Korrespondenzproblem, präzisiert
– P KP = {(u1, v1), .., (uk , vk ) | ui, vi ∈ X + ∧ ∃i1, .., in. ui1 ..uin = vi1 ..vin }
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
15
Beweistechniken für unlösbare Probeme
Das Post’sche Korrespondenzproblem
• Gegeben:
– Alphabet X, Menge von Wortpaaren {(u1, v1), .., (uk , vk )} in X +
– Eine Korrespondenz ist eine Indexfolge i1, .., in mit ui1 ..uin = vi1 ..vin
– {(u1, v1), .., (uk , vk )} heißt lösbar, wenn es eine Korrespondenz gibt
• Post’sches Korrespondenzproblem, präzisiert
– P KP = {(u1, v1), .., (uk , vk ) | ui, vi ∈ X + ∧ ∃i1, .., in. ui1 ..uin = vi1 ..vin }
– Technisches Problem ohne direkte praktische Relevanz
– Ausgangspunkt für Beweise von Unentscheidbarkeiten auf Grammatiken
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
15
Beweistechniken für unlösbare Probeme
Das Post’sche Korrespondenzproblem
• Gegeben:
– Alphabet X, Menge von Wortpaaren {(u1, v1), .., (uk , vk )} in X +
– Eine Korrespondenz ist eine Indexfolge i1, .., in mit ui1 ..uin = vi1 ..vin
– {(u1, v1), .., (uk , vk )} heißt lösbar, wenn es eine Korrespondenz gibt
• Post’sches Korrespondenzproblem, präzisiert
– P KP = {(u1, v1), .., (uk , vk ) | ui, vi ∈ X + ∧ ∃i1, .., in. ui1 ..uin = vi1 ..vin }
– Technisches Problem ohne direkte praktische Relevanz
– Ausgangspunkt für Beweise von Unentscheidbarkeiten auf Grammatiken
• Beispiele
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
15
Beweistechniken für unlösbare Probeme
Das Post’sche Korrespondenzproblem
• Gegeben:
– Alphabet X, Menge von Wortpaaren {(u1, v1), .., (uk , vk )} in X +
– Eine Korrespondenz ist eine Indexfolge i1, .., in mit ui1 ..uin = vi1 ..vin
– {(u1, v1), .., (uk , vk )} heißt lösbar, wenn es eine Korrespondenz gibt
• Post’sches Korrespondenzproblem, präzisiert
– P KP = {(u1, v1), .., (uk , vk ) | ui, vi ∈ X + ∧ ∃i1, .., in. ui1 ..uin = vi1 ..vin }
– Technisches Problem ohne direkte praktische Relevanz
– Ausgangspunkt für Beweise von Unentscheidbarkeiten auf Grammatiken
• Beispiele
– K1 = {(1, 101), (10, 00), (011, 11)}
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
15
Beweistechniken für unlösbare Probeme
Das Post’sche Korrespondenzproblem
• Gegeben:
– Alphabet X, Menge von Wortpaaren {(u1, v1), .., (uk , vk )} in X +
– Eine Korrespondenz ist eine Indexfolge i1, .., in mit ui1 ..uin = vi1 ..vin
– {(u1, v1), .., (uk , vk )} heißt lösbar, wenn es eine Korrespondenz gibt
• Post’sches Korrespondenzproblem, präzisiert
– P KP = {(u1, v1), .., (uk , vk ) | ui, vi ∈ X + ∧ ∃i1, .., in. ui1 ..uin = vi1 ..vin }
– Technisches Problem ohne direkte praktische Relevanz
– Ausgangspunkt für Beweise von Unentscheidbarkeiten auf Grammatiken
• Beispiele
– K1 = {(1, 101), (10, 00), (011, 11)}
Lösbar mit Korrespondenz 1323, denn u1u3u2u3 = v1v3v2v3 = 101110011
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
15
Beweistechniken für unlösbare Probeme
Das Post’sche Korrespondenzproblem
• Gegeben:
– Alphabet X, Menge von Wortpaaren {(u1, v1), .., (uk , vk )} in X +
– Eine Korrespondenz ist eine Indexfolge i1, .., in mit ui1 ..uin = vi1 ..vin
– {(u1, v1), .., (uk , vk )} heißt lösbar, wenn es eine Korrespondenz gibt
• Post’sches Korrespondenzproblem, präzisiert
– P KP = {(u1, v1), .., (uk , vk ) | ui, vi ∈ X + ∧ ∃i1, .., in. ui1 ..uin = vi1 ..vin }
– Technisches Problem ohne direkte praktische Relevanz
– Ausgangspunkt für Beweise von Unentscheidbarkeiten auf Grammatiken
• Beispiele
– K1 = {(1, 101), (10, 00), (011, 11)}
Lösbar mit Korrespondenz 1323, denn u1u3u2u3 = v1v3v2v3 = 101110011
– K2 = {(1, 10), (101, 01)}
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
15
Beweistechniken für unlösbare Probeme
Das Post’sche Korrespondenzproblem
• Gegeben:
– Alphabet X, Menge von Wortpaaren {(u1, v1), .., (uk , vk )} in X +
– Eine Korrespondenz ist eine Indexfolge i1, .., in mit ui1 ..uin = vi1 ..vin
– {(u1, v1), .., (uk , vk )} heißt lösbar, wenn es eine Korrespondenz gibt
• Post’sches Korrespondenzproblem, präzisiert
– P KP = {(u1, v1), .., (uk , vk ) | ui, vi ∈ X + ∧ ∃i1, .., in. ui1 ..uin = vi1 ..vin }
– Technisches Problem ohne direkte praktische Relevanz
– Ausgangspunkt für Beweise von Unentscheidbarkeiten auf Grammatiken
• Beispiele
– K1 = {(1, 101), (10, 00), (011, 11)}
Lösbar mit Korrespondenz 1323, denn u1u3u2u3 = v1v3v2v3 = 101110011
– K2 = {(1, 10), (101, 01)}
Unlösbar: alle ui haben mehr Einsen als Nullen, die vi sind ausgewogen
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
15
Beweistechniken für unlösbare Probeme
Das Post’sche Korrespondenzproblem
• Gegeben:
– Alphabet X, Menge von Wortpaaren {(u1, v1), .., (uk , vk )} in X +
– Eine Korrespondenz ist eine Indexfolge i1, .., in mit ui1 ..uin = vi1 ..vin
– {(u1, v1), .., (uk , vk )} heißt lösbar, wenn es eine Korrespondenz gibt
• Post’sches Korrespondenzproblem, präzisiert
– P KP = {(u1, v1), .., (uk , vk ) | ui, vi ∈ X + ∧ ∃i1, .., in. ui1 ..uin = vi1 ..vin }
– Technisches Problem ohne direkte praktische Relevanz
– Ausgangspunkt für Beweise von Unentscheidbarkeiten auf Grammatiken
• Beispiele
– K1 = {(1, 101), (10, 00), (011, 11)}
Lösbar mit Korrespondenz 1323, denn u1u3u2u3 = v1v3v2v3 = 101110011
– K2 = {(1, 10), (101, 01)}
Unlösbar: alle ui haben mehr Einsen als Nullen, die vi sind ausgewogen
– K3 = {(001, 0), (01, 011), (01, 101), (10, 001)}
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
15
Beweistechniken für unlösbare Probeme
Das Post’sche Korrespondenzproblem
• Gegeben:
– Alphabet X, Menge von Wortpaaren {(u1, v1), .., (uk , vk )} in X +
– Eine Korrespondenz ist eine Indexfolge i1, .., in mit ui1 ..uin = vi1 ..vin
– {(u1, v1), .., (uk , vk )} heißt lösbar, wenn es eine Korrespondenz gibt
• Post’sches Korrespondenzproblem, präzisiert
– P KP = {(u1, v1), .., (uk , vk ) | ui, vi ∈ X + ∧ ∃i1, .., in. ui1 ..uin = vi1 ..vin }
– Technisches Problem ohne direkte praktische Relevanz
– Ausgangspunkt für Beweise von Unentscheidbarkeiten auf Grammatiken
• Beispiele
– K1 = {(1, 101), (10, 00), (011, 11)}
Lösbar mit Korrespondenz 1323, denn u1u3u2u3 = v1v3v2v3 = 101110011
– K2 = {(1, 10), (101, 01)}
Unlösbar: alle ui haben mehr Einsen als Nullen, die vi sind ausgewogen
– K3 = {(001, 0), (01, 011), (01, 101), (10, 001)}
Lösbar mit 243442124343443442144213411344421211134341214421411341131131214113
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
15
Beweistechniken für unlösbare Probeme
Post’sches Korrespondenzproblem: Aufzählbarkeit
• Aufzählungsalgorithmus:
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
16
Beweistechniken für unlösbare Probeme
Post’sches Korrespondenzproblem: Aufzählbarkeit
• Aufzählungsalgorithmus:
– Eingabe: Wort w = {(u1, v1), .., (uk , vk )}
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
16
∈
(X ∪ {"(", ")", ","})∗
Beweistechniken für unlösbare Probeme
Post’sches Korrespondenzproblem: Aufzählbarkeit
• Aufzählungsalgorithmus:
– Eingabe: Wort w = {(u1, v1), .., (uk , vk )}
∈
(X ∪ {"(", ")", ","})∗
– Durch Klammerzählung bestimme alle ui und vi und die Anzahl k
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
16
Beweistechniken für unlösbare Probeme
Post’sches Korrespondenzproblem: Aufzählbarkeit
• Aufzählungsalgorithmus:
– Eingabe: Wort w = {(u1, v1), .., (uk , vk )}
∈
(X ∪ {"(", ")", ","})∗
– Durch Klammerzählung bestimme alle ui und vi und die Anzahl k
– Zähle alle möglichen Indexfolgen i1, .., in mit ij ≤k auf
(Verwende Umkehrung der Standardtupelfunktion für Listen hi 1, .., ini∗)
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
16
Beweistechniken für unlösbare Probeme
Post’sches Korrespondenzproblem: Aufzählbarkeit
• Aufzählungsalgorithmus:
– Eingabe: Wort w = {(u1, v1), .., (uk , vk )}
∈
(X ∪ {"(", ")", ","})∗
– Durch Klammerzählung bestimme alle ui und vi und die Anzahl k
– Zähle alle möglichen Indexfolgen i1, .., in mit ij ≤k auf
(Verwende Umkehrung der Standardtupelfunktion für Listen hi 1, .., ini∗)
· Falls ui1 ..uin = vi1 ..vin , so akzeptiere w (Ausgabe 1)
· Ansonsten generiere die nächste Indexfolge
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
16
Beweistechniken für unlösbare Probeme
Post’sches Korrespondenzproblem: Aufzählbarkeit
• Aufzählungsalgorithmus:
– Eingabe: Wort w = {(u1, v1), .., (uk , vk )}
∈
(X ∪ {"(", ")", ","})∗
– Durch Klammerzählung bestimme alle ui und vi und die Anzahl k
– Zähle alle möglichen Indexfolgen i1, .., in mit ij ≤k auf
(Verwende Umkehrung der Standardtupelfunktion für Listen hi 1, .., ini∗)
· Falls ui1 ..uin = vi1 ..vin , so akzeptiere w (Ausgabe 1)
· Ansonsten generiere die nächste Indexfolge
• Algorithmus berechnet ψP KP
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
16
Beweistechniken für unlösbare Probeme
Post’sches Korrespondenzproblem: Aufzählbarkeit
• Aufzählungsalgorithmus:
– Eingabe: Wort w = {(u1, v1), .., (uk , vk )}
∈
(X ∪ {"(", ")", ","})∗
– Durch Klammerzählung bestimme alle ui und vi und die Anzahl k
– Zähle alle möglichen Indexfolgen i1, .., in mit ij ≤k auf
(Verwende Umkehrung der Standardtupelfunktion für Listen hi 1, .., ini∗)
· Falls ui1 ..uin = vi1 ..vin , so akzeptiere w (Ausgabe 1)
· Ansonsten generiere die nächste Indexfolge
• Algorithmus berechnet ψP KP
– w ∈ P KP ⇒ Es gibt i1, .., in mit ui1 ..uin = vi1 ..vin
⇒ Aufzählung endet bei hi1, .., ini∗ mit Ausgabe 1
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
16
Beweistechniken für unlösbare Probeme
Post’sches Korrespondenzproblem: Aufzählbarkeit
• Aufzählungsalgorithmus:
– Eingabe: Wort w = {(u1, v1), .., (uk , vk )}
∈
(X ∪ {"(", ")", ","})∗
– Durch Klammerzählung bestimme alle ui und vi und die Anzahl k
– Zähle alle möglichen Indexfolgen i1, .., in mit ij ≤k auf
(Verwende Umkehrung der Standardtupelfunktion für Listen hi 1, .., ini∗)
· Falls ui1 ..uin = vi1 ..vin , so akzeptiere w (Ausgabe 1)
· Ansonsten generiere die nächste Indexfolge
• Algorithmus berechnet ψP KP
– w ∈ P KP ⇒ Es gibt i1, .., in mit ui1 ..uin = vi1 ..vin
⇒ Aufzählung endet bei hi1, .., ini∗ mit Ausgabe 1
– w 6∈ P KP ⇒ Es gibt keine Korrespondenz
⇒ Aufzählung terminiert nicht, da Test niemals erfolgreich
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
16
Beweistechniken für unlösbare Probeme
Unentscheidbarkeit von P KP
Satz Q
Beweis durch doppelte Reduktion
• Verwende eingeschränkte Version M P KP
– M P KP = {(u1, v1), .., (uk , vk ) | ui, vi ∈ X +
∧ ∃i2, .., in. u1 ui2 ..uin = v1vi2 ..vin }
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
17
Beweistechniken für unlösbare Probeme
Unentscheidbarkeit von P KP
Satz Q
Beweis durch doppelte Reduktion
• Verwende eingeschränkte Version M P KP
– M P KP = {(u1, v1), .., (uk , vk ) | ui, vi ∈ X +
∧ ∃i2, .., in. u1 ui2 ..uin = v1vi2 ..vin }
– Zeige: M P KP ≤P KP
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
17
Beweistechniken für unlösbare Probeme
Unentscheidbarkeit von P KP
Satz Q
Beweis durch doppelte Reduktion
• Verwende eingeschränkte Version M P KP
– M P KP = {(u1, v1), .., (uk , vk ) | ui, vi ∈ X +
∧ ∃i2, .., in. u1 ui2 ..uin = v1vi2 ..vin }
– Zeige: M P KP ≤P KP
– Zeige: M P KP ist trotz der Einschränkung unentscheidbar
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
17
Beweistechniken für unlösbare Probeme
Unentscheidbarkeit von P KP
Satz Q
Beweis durch doppelte Reduktion
• Verwende eingeschränkte Version M P KP
– M P KP = {(u1, v1), .., (uk , vk ) | ui, vi ∈ X +
∧ ∃i2, .., in. u1 ui2 ..uin = v1vi2 ..vin }
– Zeige: M P KP ≤P KP
– Zeige: M P KP ist trotz der Einschränkung unentscheidbar
• Zeige: H≤M P KP
– Zeige, daß jede Turingmaschine τ als MPKP beschrieben werden kann
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
17
Beweistechniken für unlösbare Probeme
Unentscheidbarkeit von P KP
Satz Q
Beweis durch doppelte Reduktion
• Verwende eingeschränkte Version M P KP
– M P KP = {(u1, v1), .., (uk , vk ) | ui, vi ∈ X +
∧ ∃i2, .., in. u1 ui2 ..uin = v1vi2 ..vin }
– Zeige: M P KP ≤P KP
– Zeige: M P KP ist trotz der Einschränkung unentscheidbar
• Zeige: H≤M P KP
– Zeige, daß jede Turingmaschine τ als MPKP beschrieben werden kann
· (u1, v1) beschreibt die Erzeugung der Anfangskonfiguration
· Weitere Wortpaare entsprechen Konfigurationsübergängen
(vgl Simulation von TM durch Typ-0 Grammatiken)
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
17
Beweistechniken für unlösbare Probeme
Unentscheidbarkeit von P KP
Satz Q
Beweis durch doppelte Reduktion
• Verwende eingeschränkte Version M P KP
– M P KP = {(u1, v1), .., (uk , vk ) | ui, vi ∈ X +
∧ ∃i2, .., in. u1 ui2 ..uin = v1vi2 ..vin }
– Zeige: M P KP ≤P KP
– Zeige: M P KP ist trotz der Einschränkung unentscheidbar
• Zeige: H≤M P KP
– Zeige, daß jede Turingmaschine τ als MPKP beschrieben werden kann
· (u1, v1) beschreibt die Erzeugung der Anfangskonfiguration
· Weitere Wortpaare entsprechen Konfigurationsübergängen
(vgl Simulation von TM durch Typ-0 Grammatiken)
– τ hält, wenn das MPKP eine terminierende Berechnung beschreiben kann
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
17
Beweistechniken für unlösbare Probeme
Unentscheidbarkeit von P KP
Satz Q
Beweis durch doppelte Reduktion
• Verwende eingeschränkte Version M P KP
– M P KP = {(u1, v1), .., (uk , vk ) | ui, vi ∈ X +
∧ ∃i2, .., in. u1 ui2 ..uin = v1vi2 ..vin }
– Zeige: M P KP ≤P KP
– Zeige: M P KP ist trotz der Einschränkung unentscheidbar
• Zeige: H≤M P KP
– Zeige, daß jede Turingmaschine τ als MPKP beschrieben werden kann
· (u1, v1) beschreibt die Erzeugung der Anfangskonfiguration
· Weitere Wortpaare entsprechen Konfigurationsübergängen
(vgl Simulation von TM durch Typ-0 Grammatiken)
– τ hält, wenn das MPKP eine terminierende Berechnung beschreiben kann
– Korrespondenz bedeutet, daß jedes Ergebnis eines Konfigurationsübergangs
Anfangspunkt des nächsten Übergangs ist
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
17
Beweistechniken für unlösbare Probeme
M P KP ≤P KP
• Abbildung f erzwingt erstes Wortpaar als Anfang
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
18
Beweistechniken für unlösbare Probeme
M P KP ≤P KP
• Abbildung f erzwingt erstes Wortpaar als Anfang
– Erweitere Alphabet X zu X 0 = X ∪ {#, $}
– Modifiziere Worte w = a1...an zu ŵ = a1#a2#...#an
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
18
Beweistechniken für unlösbare Probeme
M P KP ≤P KP
• Abbildung f erzwingt erstes Wortpaar als Anfang
– Erweitere Alphabet X zu X 0 = X ∪ {#, $}
– Modifiziere Worte w = a1...an zu ŵ = a1#a2#...#an
– Definiere Abbildung f durch
f {(u1, v1), .., (uk , vk )} = {(#uˆ1#, #vˆ1), (uˆ1#, #vˆ1), .. (uˆk #, #vˆk ), ($, #$) }
{z
} | {z } | {z } | {z }
|
(u02,v20 )
(u01,v10 )
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
18
0
(u0k+1 ,vk+1
)
0
(u0k+2 ,vk+2
)
Beweistechniken für unlösbare Probeme
M P KP ≤P KP
• Abbildung f erzwingt erstes Wortpaar als Anfang
– Erweitere Alphabet X zu X 0 = X ∪ {#, $}
– Modifiziere Worte w = a1...an zu ŵ = a1#a2#...#an
– Definiere Abbildung f durch
f {(u1, v1), .., (uk , vk )} = {(#uˆ1#, #vˆ1), (uˆ1#, #vˆ1), .. (uˆk #, #vˆk ), ($, #$) }
{z
} | {z } | {z } | {z }
|
(u02,v20 )
(u01,v10 )
0
(u0k+1 ,vk+1
)
0
(u0k+2 ,vk+2
)
• Zeige K ∈ M P KP ⇔ f (K) ∈ P KP
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
18
Beweistechniken für unlösbare Probeme
M P KP ≤P KP
• Abbildung f erzwingt erstes Wortpaar als Anfang
– Erweitere Alphabet X zu X 0 = X ∪ {#, $}
– Modifiziere Worte w = a1...an zu ŵ = a1#a2#...#an
– Definiere Abbildung f durch
f {(u1, v1), .., (uk , vk )} = {(#uˆ1#, #vˆ1), (uˆ1#, #vˆ1), .. (uˆk #, #vˆk ), ($, #$) }
{z
} | {z } | {z } | {z }
|
(u02,v20 )
(u01,v10 )
0
(u0k+1 ,vk+1
)
0
(u0k+2 ,vk+2
)
• Zeige K ∈ M P KP ⇔ f (K) ∈ P KP
– K ∈ M P KP
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
18
Beweistechniken für unlösbare Probeme
M P KP ≤P KP
• Abbildung f erzwingt erstes Wortpaar als Anfang
– Erweitere Alphabet X zu X 0 = X ∪ {#, $}
– Modifiziere Worte w = a1...an zu ŵ = a1#a2#...#an
– Definiere Abbildung f durch
f {(u1, v1), .., (uk , vk )} = {(#uˆ1#, #vˆ1), (uˆ1#, #vˆ1), .. (uˆk #, #vˆk ), ($, #$) }
{z
} | {z } | {z } | {z }
|
(u02,v20 )
(u01,v10 )
0
(u0k+1 ,vk+1
)
0
(u0k+2 ,vk+2
)
• Zeige K ∈ M P KP ⇔ f (K) ∈ P KP
– K ∈ M P KP ⇒ Es gibt i2, .., in mit u1ui2 ..uin = v1vi2 ..vin
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
18
Beweistechniken für unlösbare Probeme
M P KP ≤P KP
• Abbildung f erzwingt erstes Wortpaar als Anfang
– Erweitere Alphabet X zu X 0 = X ∪ {#, $}
– Modifiziere Worte w = a1...an zu ŵ = a1#a2#...#an
– Definiere Abbildung f durch
f {(u1, v1), .., (uk , vk )} = {(#uˆ1#, #vˆ1), (uˆ1#, #vˆ1), .. (uˆk #, #vˆk ), ($, #$) }
{z
} | {z } | {z } | {z }
|
(u02,v20 )
(u01,v10 )
0
(u0k+1 ,vk+1
)
0
(u0k+2 ,vk+2
)
• Zeige K ∈ M P KP ⇔ f (K) ∈ P KP
– K ∈ M P KP ⇒ Es gibt i2, .., in mit u1ui2 ..uin = v1vi2 ..vin
⇒ #
ˆ1#} uˆi2 # ..# uˆin # |{z}
$ = |{z}
#vˆ1 #vˆi2 #.. #vˆin |{z}
#$
{z
|u
|{z}
|{z} 0
|{z}
|{z}
u01
u0i +1
2
v10
u0in +1 uk+2
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
18
vi0 +1
2
0
vi0n +1 vk+2
Beweistechniken für unlösbare Probeme
M P KP ≤P KP
• Abbildung f erzwingt erstes Wortpaar als Anfang
– Erweitere Alphabet X zu X 0 = X ∪ {#, $}
– Modifiziere Worte w = a1...an zu ŵ = a1#a2#...#an
– Definiere Abbildung f durch
f {(u1, v1), .., (uk , vk )} = {(#uˆ1#, #vˆ1), (uˆ1#, #vˆ1), .. (uˆk #, #vˆk ), ($, #$) }
{z
} | {z } | {z } | {z }
|
(u02,v20 )
(u01,v10 )
0
(u0k+1 ,vk+1
)
0
(u0k+2 ,vk+2
)
• Zeige K ∈ M P KP ⇔ f (K) ∈ P KP
– K ∈ M P KP ⇒ Es gibt i2, .., in mit u1ui2 ..uin = v1vi2 ..vin
⇒ #
ˆ1#} uˆi2 # ..# uˆin # |{z}
$ = |{z}
#vˆ1 #vˆi2 #.. #vˆin |{z}
#$
{z
|u
|{z}
|{z} 0
|{z}
|{z}
u01
u0i +1
2
v10
u0in +1 uk+2
vi0 +1
2
0
vi0n +1 vk+2
⇒ 1, i2+1, .., in+1, k+2 löst f (K) also f (K) ∈ P KP
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
18
Beweistechniken für unlösbare Probeme
M P KP ≤P KP
• Abbildung f erzwingt erstes Wortpaar als Anfang
– Erweitere Alphabet X zu X 0 = X ∪ {#, $}
– Modifiziere Worte w = a1...an zu ŵ = a1#a2#...#an
– Definiere Abbildung f durch
f {(u1, v1), .., (uk , vk )} = {(#uˆ1#, #vˆ1), (uˆ1#, #vˆ1), .. (uˆk #, #vˆk ), ($, #$) }
{z
} | {z } | {z } | {z }
|
(u02,v20 )
(u01,v10 )
0
(u0k+1 ,vk+1
)
0
(u0k+2 ,vk+2
)
• Zeige K ∈ M P KP ⇔ f (K) ∈ P KP
– K ∈ M P KP ⇒ Es gibt i2, .., in mit u1ui2 ..uin = v1vi2 ..vin
⇒ #
ˆ1#} uˆi2 # ..# uˆin # |{z}
$ = |{z}
#vˆ1 #vˆi2 #.. #vˆin |{z}
#$
{z
|u
|{z}
|{z} 0
|{z}
|{z}
u01
u0i +1
2
v10
u0in +1 uk+2
vi0 +1
2
0
vi0n +1 vk+2
⇒ 1, i2+1, .., in+1, k+2 löst f (K) also f (K) ∈ P KP
– f (K) ∈ P KP
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
18
Beweistechniken für unlösbare Probeme
M P KP ≤P KP
• Abbildung f erzwingt erstes Wortpaar als Anfang
– Erweitere Alphabet X zu X 0 = X ∪ {#, $}
– Modifiziere Worte w = a1...an zu ŵ = a1#a2#...#an
– Definiere Abbildung f durch
f {(u1, v1), .., (uk , vk )} = {(#uˆ1#, #vˆ1), (uˆ1#, #vˆ1), .. (uˆk #, #vˆk ), ($, #$) }
{z
} | {z } | {z } | {z }
|
(u02,v20 )
(u01,v10 )
0
(u0k+1 ,vk+1
)
0
(u0k+2 ,vk+2
)
• Zeige K ∈ M P KP ⇔ f (K) ∈ P KP
– K ∈ M P KP ⇒ Es gibt i2, .., in mit u1ui2 ..uin = v1vi2 ..vin
⇒ #
ˆ1#} uˆi2 # ..# uˆin # |{z}
$ = |{z}
#vˆ1 #vˆi2 #.. #vˆin |{z}
#$
{z
|u
|{z}
|{z} 0
|{z}
|{z}
u01
u0i +1
2
v10
u0in +1 uk+2
vi0 +1
2
0
vi0n +1 vk+2
⇒ 1, i2+1, .., in+1, k+2 löst f (K) also f (K) ∈ P KP
– f (K) ∈ P KP ⇒ Es gibt i1, .., in mit u0i1 ..u0in = vi01 ..vi0n
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
18
Beweistechniken für unlösbare Probeme
M P KP ≤P KP
• Abbildung f erzwingt erstes Wortpaar als Anfang
– Erweitere Alphabet X zu X 0 = X ∪ {#, $}
– Modifiziere Worte w = a1...an zu ŵ = a1#a2#...#an
– Definiere Abbildung f durch
f {(u1, v1), .., (uk , vk )} = {(#uˆ1#, #vˆ1), (uˆ1#, #vˆ1), .. (uˆk #, #vˆk ), ($, #$) }
{z
} | {z } | {z } | {z }
|
(u02,v20 )
(u01,v10 )
0
(u0k+1 ,vk+1
)
0
(u0k+2 ,vk+2
)
• Zeige K ∈ M P KP ⇔ f (K) ∈ P KP
– K ∈ M P KP ⇒ Es gibt i2, .., in mit u1ui2 ..uin = v1vi2 ..vin
⇒ #
ˆ1#} uˆi2 # ..# uˆin # |{z}
$ = |{z}
#vˆ1 #vˆi2 #.. #vˆin |{z}
#$
{z
|u
|{z}
|{z} 0
|{z}
|{z}
u01
u0i +1
2
v10
u0in +1 uk+2
vi0 +1
2
0
vi0n +1 vk+2
⇒ 1, i2+1, .., in+1, k+2 löst f (K) also f (K) ∈ P KP
– f (K) ∈ P KP ⇒ Es gibt i1, .., in mit u0i1 ..u0in = vi01 ..vi0n
⇒ i1=1, da nur u01, v10 dasselbe Anfangssymbol haben
0
in=k+2, da nur u0k+2, vk+2
dasselbe Endsymbol haben
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
18
Beweistechniken für unlösbare Probeme
M P KP ≤P KP
• Abbildung f erzwingt erstes Wortpaar als Anfang
– Erweitere Alphabet X zu X 0 = X ∪ {#, $}
– Modifiziere Worte w = a1...an zu ŵ = a1#a2#...#an
– Definiere Abbildung f durch
f {(u1, v1), .., (uk , vk )} = {(#uˆ1#, #vˆ1), (uˆ1#, #vˆ1), .. (uˆk #, #vˆk ), ($, #$) }
{z
} | {z } | {z } | {z }
|
(u02,v20 )
(u01,v10 )
0
(u0k+1 ,vk+1
)
0
(u0k+2 ,vk+2
)
• Zeige K ∈ M P KP ⇔ f (K) ∈ P KP
– K ∈ M P KP ⇒ Es gibt i2, .., in mit u1ui2 ..uin = v1vi2 ..vin
⇒ #
ˆ1#} uˆi2 # ..# uˆin # |{z}
$ = |{z}
#vˆ1 #vˆi2 #.. #vˆin |{z}
#$
{z
|u
|{z}
|{z} 0
|{z}
|{z}
u01
u0i +1
2
v10
u0in +1 uk+2
vi0 +1
2
0
vi0n +1 vk+2
⇒ 1, i2+1, .., in+1, k+2 löst f (K) also f (K) ∈ P KP
– f (K) ∈ P KP ⇒ Es gibt i1, .., in mit u0i1 ..u0in = vi01 ..vi0n
⇒ i1=1, da nur u01, v10 dasselbe Anfangssymbol haben
0
in=k+2, da nur u0k+2, vk+2
dasselbe Endsymbol haben
⇒ 1, i2−1, .., in−1−1 löst K also K ∈ M P KP
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
18
√
Beweistechniken für unlösbare Probeme
H≤M P KP : Transformation
Transformiere ein Halteproblem τ ,w in ein MPKP K
Sei τ = (S, X, Γ, δ, s0, b), w ∈ X ∗. Bestimme K := f (τ, w) wie folgt
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
19
Beweistechniken für unlösbare Probeme
H≤M P KP : Transformation
Transformiere ein Halteproblem τ ,w in ein MPKP K
Sei τ = (S, X, Γ, δ, s0, b), w ∈ X ∗. Bestimme K := f (τ, w) wie folgt
– Wähle Alphabet Y := Γ∪S∪{#} für das MPKP
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
19
Beweistechniken für unlösbare Probeme
H≤M P KP : Transformation
Transformiere ein Halteproblem τ ,w in ein MPKP K
Sei τ = (S, X, Γ, δ, s0, b), w ∈ X ∗. Bestimme K := f (τ, w) wie folgt
– Wähle Alphabet Y := Γ∪S∪{#} für das MPKP
– Erzeuge Anfangskonfiguration in (u1, v1) := (#, #s0w#)
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
19
Beweistechniken für unlösbare Probeme
H≤M P KP : Transformation
Transformiere ein Halteproblem τ ,w in ein MPKP K
Sei τ = (S, X, Γ, δ, s0, b), w ∈ X ∗. Bestimme K := f (τ, w) wie folgt
– Wähle Alphabet Y := Γ∪S∪{#} für das MPKP
– Erzeuge Anfangskonfiguration in (u1, v1) := (#, #s0w#)
– Beschreibe Konfigurationsübergänge durch Wortpaare
· (s a, a0 s0)
für δ(s, a) = (s0, a0, r)
· (s #, a0 s0#)
für δ(s, b) = (s0, a0, r)
für d ∈ Γ und δ(s, a) = (s0, a0, l)
· (d s a, s0 d a0)
· (# s a, # s0 b a0)
für δ(s, a) = (s0, a0, l)
für d ∈ Γ und δ(s, b) = (s0, a0, r)
· (d s #, s0 d a0 #)
· (s a, qf a0)
für δ(s, a) = (s0, a0, h)
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
19
Beweistechniken für unlösbare Probeme
H≤M P KP : Transformation
Transformiere ein Halteproblem τ ,w in ein MPKP K
Sei τ = (S, X, Γ, δ, s0, b), w ∈ X ∗. Bestimme K := f (τ, w) wie folgt
– Wähle Alphabet Y := Γ∪S∪{#} für das MPKP
– Erzeuge Anfangskonfiguration in (u1, v1) := (#, #s0w#)
– Beschreibe Konfigurationsübergänge durch Wortpaare
· (s a, a0 s0)
für δ(s, a) = (s0, a0, r)
· (s #, a0 s0#)
für δ(s, b) = (s0, a0, r)
für d ∈ Γ und δ(s, a) = (s0, a0, l)
· (d s a, s0 d a0)
· (# s a, # s0 b a0)
für δ(s, a) = (s0, a0, l)
für d ∈ Γ und δ(s, b) = (s0, a0, r)
· (d s #, s0 d a0 #)
· (s a, qf a0)
für δ(s, a) = (s0, a0, h)
– Ergänze “Kopierregeln” (a, a) für alle a ∈ Γ∪{#}
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
19
Beweistechniken für unlösbare Probeme
H≤M P KP : Transformation
Transformiere ein Halteproblem τ ,w in ein MPKP K
Sei τ = (S, X, Γ, δ, s0, b), w ∈ X ∗. Bestimme K := f (τ, w) wie folgt
– Wähle Alphabet Y := Γ∪S∪{#} für das MPKP
– Erzeuge Anfangskonfiguration in (u1, v1) := (#, #s0w#)
– Beschreibe Konfigurationsübergänge durch Wortpaare
· (s a, a0 s0)
für δ(s, a) = (s0, a0, r)
· (s #, a0 s0#)
für δ(s, b) = (s0, a0, r)
für d ∈ Γ und δ(s, a) = (s0, a0, l)
· (d s a, s0 d a0)
· (# s a, # s0 b a0)
für δ(s, a) = (s0, a0, l)
für d ∈ Γ und δ(s, b) = (s0, a0, r)
· (d s #, s0 d a0 #)
· (s a, qf a0)
für δ(s, a) = (s0, a0, h)
– Ergänze “Kopierregeln” (a, a) für alle a ∈ Γ∪{#}
– Ergänze “Löschregeln” (a qf , qf ) und (qf a, qf ) für alle a ∈ Γ
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
19
Beweistechniken für unlösbare Probeme
H≤M P KP : Transformation
Transformiere ein Halteproblem τ ,w in ein MPKP K
Sei τ = (S, X, Γ, δ, s0, b), w ∈ X ∗. Bestimme K := f (τ, w) wie folgt
– Wähle Alphabet Y := Γ∪S∪{#} für das MPKP
– Erzeuge Anfangskonfiguration in (u1, v1) := (#, #s0w#)
– Beschreibe Konfigurationsübergänge durch Wortpaare
· (s a, a0 s0)
für δ(s, a) = (s0, a0, r)
· (s #, a0 s0#)
für δ(s, b) = (s0, a0, r)
für d ∈ Γ und δ(s, a) = (s0, a0, l)
· (d s a, s0 d a0)
· (# s a, # s0 b a0)
für δ(s, a) = (s0, a0, l)
für d ∈ Γ und δ(s, b) = (s0, a0, r)
· (d s #, s0 d a0 #)
· (s a, qf a0)
für δ(s, a) = (s0, a0, h)
– Ergänze “Kopierregeln” (a, a) für alle a ∈ Γ∪{#}
– Ergänze “Löschregeln” (a qf , qf ) und (qf a, qf ) für alle a ∈ Γ
– Ergänze “Abschlußregel” (qf # #, #)
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
19
Beweistechniken für unlösbare Probeme
H≤M P KP : Korrektheit der Transformation f
Zeige hτ (w)6=⊥ ⇒ f (τ, w) ∈ M P KP
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
20
Beweistechniken für unlösbare Probeme
H≤M P KP : Korrektheit der Transformation f
Zeige hτ (w)6=⊥ ⇒ f (τ, w) ∈ M P KP
– Wegen hτ (w)6=⊥ gibt es eine Konfigurationsfolge
κ0=s0w → κ1 . . . → κt=xm..x0 s y0..yn mit δ( , ) = (s, y0, h)
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
20
Beweistechniken für unlösbare Probeme
H≤M P KP : Korrektheit der Transformation f
Zeige hτ (w)6=⊥ ⇒ f (τ, w) ∈ M P KP
– Wegen hτ (w)6=⊥ gibt es eine Konfigurationsfolge
κ0=s0w → κ1 . . . → κt=xm..x0 s y0..yn mit δ( , ) = (s, y0, h)
– Mit Überführungs- und Kopierregeln bauen wir folgendes Wortpaar auf
· u = #s0w#κ1# . . . #κt#xm..x1
· v = #s0w#κ1# . . . #κt#xm..x1x0, qf y0..yn#xm..x1
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
20
Beweistechniken für unlösbare Probeme
H≤M P KP : Korrektheit der Transformation f
Zeige hτ (w)6=⊥ ⇒ f (τ, w) ∈ M P KP
– Wegen hτ (w)6=⊥ gibt es eine Konfigurationsfolge
κ0=s0w → κ1 . . . → κt=xm..x0 s y0..yn mit δ( , ) = (s, y0, h)
– Mit Überführungs- und Kopierregeln bauen wir folgendes Wortpaar auf
· u = #s0w#κ1# . . . #κt#xm..x1
· v = #s0w#κ1# . . . #κt#xm..x1x0, qf y0..yn#xm..x1
– Mit der Löschregel (x0 qf , qf ) erzeugen wir daraus
· #s0w#κ1# . . . #κt#xm..x1x0 qf
· #s0w#κ1# . . . #κt#xm..x1x0 qf y0..yn#xm..x1qf
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
20
Beweistechniken für unlösbare Probeme
H≤M P KP : Korrektheit der Transformation f
Zeige hτ (w)6=⊥ ⇒ f (τ, w) ∈ M P KP
– Wegen hτ (w)6=⊥ gibt es eine Konfigurationsfolge
κ0=s0w → κ1 . . . → κt=xm..x0 s y0..yn mit δ( , ) = (s, y0, h)
– Mit Überführungs- und Kopierregeln bauen wir folgendes Wortpaar auf
· u = #s0w#κ1# . . . #κt#xm..x1
· v = #s0w#κ1# . . . #κt#xm..x1x0, qf y0..yn#xm..x1
– Mit der Löschregel (x0 qf , qf ) erzeugen wir daraus
· #s0w#κ1# . . . #κt#xm..x1x0 qf
· #s0w#κ1# . . . #κt#xm..x1x0 qf y0..yn#xm..x1qf
– Mit den Kopierregeln bekommen wir
· #s0w#κ1# . . . #κt#xm..x1x0 qf y0..yn#
· #s0w#κ1# . . . #κt#xm..x1x0 qf y0..yn#xm..x1qf y0..yn#
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
20
Beweistechniken für unlösbare Probeme
H≤M P KP : Korrektheit der Transformation f
Zeige hτ (w)6=⊥ ⇒ f (τ, w) ∈ M P KP
– Wegen hτ (w)6=⊥ gibt es eine Konfigurationsfolge
κ0=s0w → κ1 . . . → κt=xm..x0 s y0..yn mit δ( , ) = (s, y0, h)
– Mit Überführungs- und Kopierregeln bauen wir folgendes Wortpaar auf
· u = #s0w#κ1# . . . #κt#xm..x1
· v = #s0w#κ1# . . . #κt#xm..x1x0, qf y0..yn#xm..x1
– Mit der Löschregel (x0 qf , qf ) erzeugen wir daraus
· #s0w#κ1# . . . #κt#xm..x1x0 qf
· #s0w#κ1# . . . #κt#xm..x1x0 qf y0..yn#xm..x1qf
– Mit den Kopierregeln bekommen wir
· #s0w#κ1# . . . #κt#xm..x1x0 qf y0..yn#
· #s0w#κ1# . . . #κt#xm..x1x0 qf y0..yn#xm..x1qf y0..yn#
– Mit den Lösch- und Kopierregeln ergibt sich
· #s0w# . . . . . . #xm..x1qf y0..yn#xm..x2qf y0..yn# . . . #qf yn#
· #s0w# . . . . . . #xm..x1qf y0..yn#xm..x2qf y0..yn# . . . #qf yn#qf #
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
20
Beweistechniken für unlösbare Probeme
H≤M P KP : Korrektheit der Transformation f
Zeige hτ (w)6=⊥ ⇒ f (τ, w) ∈ M P KP
– Wegen hτ (w)6=⊥ gibt es eine Konfigurationsfolge
κ0=s0w → κ1 . . . → κt=xm..x0 s y0..yn mit δ( , ) = (s, y0, h)
– Mit Überführungs- und Kopierregeln bauen wir folgendes Wortpaar auf
· u = #s0w#κ1# . . . #κt#xm..x1
· v = #s0w#κ1# . . . #κt#xm..x1x0, qf y0..yn#xm..x1
– Mit der Löschregel (x0 qf , qf ) erzeugen wir daraus
· #s0w#κ1# . . . #κt#xm..x1x0 qf
· #s0w#κ1# . . . #κt#xm..x1x0 qf y0..yn#xm..x1qf
– Mit den Kopierregeln bekommen wir
· #s0w#κ1# . . . #κt#xm..x1x0 qf y0..yn#
· #s0w#κ1# . . . #κt#xm..x1x0 qf y0..yn#xm..x1qf y0..yn#
– Mit den Lösch- und Kopierregeln ergibt sich
· #s0w# . . . . . . #xm..x1qf y0..yn#xm..x2qf y0..yn# . . . #qf yn#
· #s0w# . . . . . . #xm..x1qf y0..yn#xm..x2qf y0..yn# . . . #qf yn#qf #
– Mit der Abschlußregel ergibt sich schließlich
· #s0w# . . . . . . #xm..x1qf y0..yn#xm..x2qf y0..yn# . . . #qf yn#qf ##
· #s0w# . . . . . . #xm..x1qf y0..yn#xm..x2qf y0..yn# . . . #qf yn#qf ##
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
20
√
Beweistechniken für unlösbare Probeme
H≤M P KP : Korrektheit der Transformation f (II)
Zeige hτ (w)6=⊥ ⇐ f (τ, w) ∈ M P KP
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
21
Beweistechniken für unlösbare Probeme
H≤M P KP : Korrektheit der Transformation f (II)
Zeige hτ (w)6=⊥ ⇐ f (τ, w) ∈ M P KP
– Es gelte f (τ, w) ∈ M P KP
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
21
Beweistechniken für unlösbare Probeme
H≤M P KP : Korrektheit der Transformation f (II)
Zeige hτ (w)6=⊥ ⇐ f (τ, w) ∈ M P KP
– Es gelte f (τ, w) ∈ M P KP
– Also gibt es i2, .., in mit u1ui2 ..uin = v1vi2 ..vin
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
21
Beweistechniken für unlösbare Probeme
H≤M P KP : Korrektheit der Transformation f (II)
Zeige hτ (w)6=⊥ ⇐ f (τ, w) ∈ M P KP
– Es gelte f (τ, w) ∈ M P KP
– Also gibt es i2, .., in mit u1ui2 ..uin = v1vi2 ..vin
– u1ui2 ..uin muß mit #s0w# beginnen und mit qf # # enden
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
21
Beweistechniken für unlösbare Probeme
H≤M P KP : Korrektheit der Transformation f (II)
Zeige hτ (w)6=⊥ ⇐ f (τ, w) ∈ M P KP
– Es gelte f (τ, w) ∈ M P KP
– Also gibt es i2, .., in mit u1ui2 ..uin = v1vi2 ..vin
– u1ui2 ..uin muß mit #s0w# beginnen und mit qf # # enden
ˆ 1, #ui3 =v
ˆ i2 , . . .
– Wegen der Überführungsregeln gilt #ui2 =v
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
21
Beweistechniken für unlösbare Probeme
H≤M P KP : Korrektheit der Transformation f (II)
Zeige hτ (w)6=⊥ ⇐ f (τ, w) ∈ M P KP
– Es gelte f (τ, w) ∈ M P KP
– Also gibt es i2, .., in mit u1ui2 ..uin = v1vi2 ..vin
– u1ui2 ..uin muß mit #s0w# beginnen und mit qf # # enden
ˆ 1, #ui3 =v
ˆ i2 , . . .
– Wegen der Überführungsregeln gilt #ui2 =v
– Aus der Korrespondenz können wir daher eine Konfigurationsfolge
κ0=s0w → . . . → κt=xm..x0 s y0..yn konstruieren mit δ( , ) = (s, y0, h)
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
21
Beweistechniken für unlösbare Probeme
H≤M P KP : Korrektheit der Transformation f (II)
Zeige hτ (w)6=⊥ ⇐ f (τ, w) ∈ M P KP
– Es gelte f (τ, w) ∈ M P KP
– Also gibt es i2, .., in mit u1ui2 ..uin = v1vi2 ..vin
– u1ui2 ..uin muß mit #s0w# beginnen und mit qf # # enden
ˆ 1, #ui3 =v
ˆ i2 , . . .
– Wegen der Überführungsregeln gilt #ui2 =v
– Aus der Korrespondenz können wir daher eine Konfigurationsfolge
κ0=s0w → . . . → κt=xm..x0 s y0..yn konstruieren mit δ( , ) = (s, y0, h)
√
– Also hält τ bei Eingabe w
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
21
Beweistechniken für unlösbare Probeme
H≤M P KP : Korrektheit der Transformation f (II)
Zeige hτ (w)6=⊥ ⇐ f (τ, w) ∈ M P KP
– Es gelte f (τ, w) ∈ M P KP
– Also gibt es i2, .., in mit u1ui2 ..uin = v1vi2 ..vin
– u1ui2 ..uin muß mit #s0w# beginnen und mit qf # # enden
ˆ 1, #ui3 =v
ˆ i2 , . . .
– Wegen der Überführungsregeln gilt #ui2 =v
– Aus der Korrespondenz können wir daher eine Konfigurationsfolge
κ0=s0w → . . . → κt=xm..x0 s y0..yn konstruieren mit δ( , ) = (s, y0, h)
√
– Also hält τ bei Eingabe w
Es folgt H≤M P KP , also ist M P KP unentscheidbar
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
21
Beweistechniken für unlösbare Probeme
Unentscheidbarkeiten auf Grammatiken
Sätze S / T
Für kontextfreie Grammatiken G, G0 sind
die folgende Probleme unentscheidbar
1. L(G) ∩ L(G0) = ∅
2. L(G) ∩ L(G0) unendlich
3. L(G) ∩ L(G0) kontextfrei
4. L(G)
⊆
L(G0)
5. L(G) = L(G0)
6. L(G) = X ∗
7. G mehrdeutig
8. L(G) kontextfrei
9. L(G) regulär
10. L(G)
∈
DPDA
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
22
Beweistechniken für unlösbare Probeme
Beweis von Unentscheidbarkeiten
Reduktion auf das Post’sche Korrespondenzproblem
• Transformiere ein PKP in Grammatiken G und G0
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
23
Beweistechniken für unlösbare Probeme
Beweis von Unentscheidbarkeiten
Reduktion auf das Post’sche Korrespondenzproblem
• Transformiere ein PKP in Grammatiken G und G0
– Gegeben K = {(u1, v1), .., (uk , vk )} über X = {0, 1}
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
23
Beweistechniken für unlösbare Probeme
Beweis von Unentscheidbarkeiten
Reduktion auf das Post’sche Korrespondenzproblem
• Transformiere ein PKP in Grammatiken G und G0
– Gegeben K = {(u1, v1), .., (uk , vk )} über X = {0, 1}
– Wähle Terminalalphabet := {0, 1, $, a1, .., ak }
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
23
Beweistechniken für unlösbare Probeme
Beweis von Unentscheidbarkeiten
Reduktion auf das Post’sche Korrespondenzproblem
• Transformiere ein PKP in Grammatiken G und G0
– Gegeben K = {(u1, v1), .., (uk , vk )} über X = {0, 1}
– Wähle Terminalalphabet := {0, 1, $, a1, .., ak }
– Konstruiere G := S→A$B,
A→a1Au1, . . . A→ak Auk , A→a1u1, . . . A→ak uk
B→v1Ba1, . . . B→vk Bak , B→v1a1, . . . B→vk ak
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
23
Beweistechniken für unlösbare Probeme
Beweis von Unentscheidbarkeiten
Reduktion auf das Post’sche Korrespondenzproblem
• Transformiere ein PKP in Grammatiken G und G0
– Gegeben K = {(u1, v1), .., (uk , vk )} über X = {0, 1}
– Wähle Terminalalphabet := {0, 1, $, a1, .., ak }
– Konstruiere G := S→A$B,
A→a1Au1, . . . A→ak Auk , A→a1u1, . . . A→ak uk
B→v1Ba1, . . . B→vk Bak , B→v1a1, . . . B→vk ak
– Dann gilt L(G) = {ain ..ai1 ui1 ..uin $ vjm ..vj1 aj1 ..ajm | iν , jµ≤k}
– Konstruiere G0 := S→a1Sa1, .., S→ak Sak , S→T ,
T →0T 0, T →1T 1, T →$,
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
23
Beweistechniken für unlösbare Probeme
Beweis von Unentscheidbarkeiten
Reduktion auf das Post’sche Korrespondenzproblem
• Transformiere ein PKP in Grammatiken G und G0
– Gegeben K = {(u1, v1), .., (uk , vk )} über X = {0, 1}
– Wähle Terminalalphabet := {0, 1, $, a1, .., ak }
– Konstruiere G := S→A$B,
A→a1Au1, . . . A→ak Auk , A→a1u1, . . . A→ak uk
B→v1Ba1, . . . B→vk Bak , B→v1a1, . . . B→vk ak
– Dann gilt L(G) = {ain ..ai1 ui1 ..uin $ vjm ..vj1 aj1 ..ajm | iν , jµ≤k}
– Konstruiere G0 := S→a1Sa1, .., S→ak Sak , S→T ,
T →0T 0, T →1T 1, T →$,
– Dann gilt L(G)0 = {uv $ uv | u ∈ {a1, .., ak }∗, v ∈ {0, 1}∗}
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
23
Beweistechniken für unlösbare Probeme
Beweis von Unentscheidbarkeiten
Reduktion auf das Post’sche Korrespondenzproblem
• Transformiere ein PKP in Grammatiken G und G0
– Gegeben K = {(u1, v1), .., (uk , vk )} über X = {0, 1}
– Wähle Terminalalphabet := {0, 1, $, a1, .., ak }
– Konstruiere G := S→A$B,
A→a1Au1, . . . A→ak Auk , A→a1u1, . . . A→ak uk
B→v1Ba1, . . . B→vk Bak , B→v1a1, . . . B→vk ak
– Dann gilt L(G) = {ain ..ai1 ui1 ..uin $ vjm ..vj1 aj1 ..ajm | iν , jµ≤k}
– Konstruiere G0 := S→a1Sa1, .., S→ak Sak , S→T ,
T →0T 0, T →1T 1, T →$,
– Dann gilt L(G)0 = {uv $ uv | u ∈ {a1, .., ak }∗, v ∈ {0, 1}∗}
• L(G)∩L(G0)=∅ ist unentscheidbar
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
23
Beweistechniken für unlösbare Probeme
Beweis von Unentscheidbarkeiten
Reduktion auf das Post’sche Korrespondenzproblem
• Transformiere ein PKP in Grammatiken G und G0
– Gegeben K = {(u1, v1), .., (uk , vk )} über X = {0, 1}
– Wähle Terminalalphabet := {0, 1, $, a1, .., ak }
– Konstruiere G := S→A$B,
A→a1Au1, . . . A→ak Auk , A→a1u1, . . . A→ak uk
B→v1Ba1, . . . B→vk Bak , B→v1a1, . . . B→vk ak
– Dann gilt L(G) = {ain ..ai1 ui1 ..uin $ vjm ..vj1 aj1 ..ajm | iν , jµ≤k}
– Konstruiere G0 := S→a1Sa1, .., S→ak Sak , S→T ,
T →0T 0, T →1T 1, T →$,
– Dann gilt L(G)0 = {uv $ uv | u ∈ {a1, .., ak }∗, v ∈ {0, 1}∗}
• L(G)∩L(G0)=∅ ist unentscheidbar
– Folgt direkt aus K ∈ P KP ⇔ L(G)∩L(G0)6=∅
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
23
√
Beweistechniken für unlösbare Probeme
Beweis von Unentscheidbarkeiten
Reduktion auf das Post’sche Korrespondenzproblem
• Transformiere ein PKP in Grammatiken G und G0
– Gegeben K = {(u1, v1), .., (uk , vk )} über X = {0, 1}
– Wähle Terminalalphabet := {0, 1, $, a1, .., ak }
– Konstruiere G := S→A$B,
A→a1Au1, . . . A→ak Auk , A→a1u1, . . . A→ak uk
B→v1Ba1, . . . B→vk Bak , B→v1a1, . . . B→vk ak
– Dann gilt L(G) = {ain ..ai1 ui1 ..uin $ vjm ..vj1 aj1 ..ajm | iν , jµ≤k}
– Konstruiere G0 := S→a1Sa1, .., S→ak Sak , S→T ,
T →0T 0, T →1T 1, T →$,
– Dann gilt L(G)0 = {uv $ uv | u ∈ {a1, .., ak }∗, v ∈ {0, 1}∗}
• L(G)∩L(G0)=∅ ist unentscheidbar
– Folgt direkt aus K ∈ P KP ⇔ L(G)∩L(G0)6=∅
• L(G)∩L(G0) unendlich ist unentscheidbar
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
23
√
Beweistechniken für unlösbare Probeme
Beweis von Unentscheidbarkeiten
Reduktion auf das Post’sche Korrespondenzproblem
• Transformiere ein PKP in Grammatiken G und G0
– Gegeben K = {(u1, v1), .., (uk , vk )} über X = {0, 1}
– Wähle Terminalalphabet := {0, 1, $, a1, .., ak }
– Konstruiere G := S→A$B,
A→a1Au1, . . . A→ak Auk , A→a1u1, . . . A→ak uk
B→v1Ba1, . . . B→vk Bak , B→v1a1, . . . B→vk ak
– Dann gilt L(G) = {ain ..ai1 ui1 ..uin $ vjm ..vj1 aj1 ..ajm | iν , jµ≤k}
– Konstruiere G0 := S→a1Sa1, .., S→ak Sak , S→T ,
T →0T 0, T →1T 1, T →$,
– Dann gilt L(G)0 = {uv $ uv | u ∈ {a1, .., ak }∗, v ∈ {0, 1}∗}
• L(G)∩L(G0)=∅ ist unentscheidbar
– Folgt direkt aus K ∈ P KP ⇔ L(G)∩L(G0)6=∅
• L(G)∩L(G0) unendlich ist unentscheidbar
√
– Es gilt ui1 ..uin = vi1 ..vin ⇒ ui1 ..uin ui1 ..uin = vi1 ..vin vi1 ..vin ⇒ . . .
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
23
Beweistechniken für unlösbare Probeme
Beweis von Unentscheidbarkeiten
Reduktion auf das Post’sche Korrespondenzproblem
• Transformiere ein PKP in Grammatiken G und G0
– Gegeben K = {(u1, v1), .., (uk , vk )} über X = {0, 1}
– Wähle Terminalalphabet := {0, 1, $, a1, .., ak }
– Konstruiere G := S→A$B,
A→a1Au1, . . . A→ak Auk , A→a1u1, . . . A→ak uk
B→v1Ba1, . . . B→vk Bak , B→v1a1, . . . B→vk ak
– Dann gilt L(G) = {ain ..ai1 ui1 ..uin $ vjm ..vj1 aj1 ..ajm | iν , jµ≤k}
– Konstruiere G0 := S→a1Sa1, .., S→ak Sak , S→T ,
T →0T 0, T →1T 1, T →$,
– Dann gilt L(G)0 = {uv $ uv | u ∈ {a1, .., ak }∗, v ∈ {0, 1}∗}
• L(G)∩L(G0)=∅ ist unentscheidbar
– Folgt direkt aus K ∈ P KP ⇔ L(G)∩L(G0)6=∅
• L(G)∩L(G0) unendlich ist unentscheidbar
– Es gilt ui1 ..uin = vi1 ..vin ⇒ ui1 ..uin ui1 ..uin = vi1 ..vin vi1 ..vin ⇒ . . .
– Es folgt K ∈ P KP ⇔ L(G)∩L(G0) unendlich
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
23
√
√
Beweistechniken für unlösbare Probeme
Problemreduktion mit Abschlußeigenschaften
• Ziel: Wiederverwendung bekannter Ergebnisse
– Zur Lösung eines Problems P bzw. zum Nachweis seiner Unlösbarkeit
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
24
Beweistechniken für unlösbare Probeme
Problemreduktion mit Abschlußeigenschaften
• Ziel: Wiederverwendung bekannter Ergebnisse
– Zur Lösung eines Problems P bzw. zum Nachweis seiner Unlösbarkeit
• Methodik
– Zeige, daß Lösung für P ein unlösbares Problem P 0 lösen würde
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
24
Beweistechniken für unlösbare Probeme
Problemreduktion mit Abschlußeigenschaften
• Ziel: Wiederverwendung bekannter Ergebnisse
– Zur Lösung eines Problems P bzw. zum Nachweis seiner Unlösbarkeit
• Methodik
– Zeige, daß Lösung für P ein unlösbares Problem P 0 lösen würde
– Zeige, wie Lösung eines bekannten Problems P 0 zur Lösung von P 0 führt
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
24
Beweistechniken für unlösbare Probeme
Problemreduktion mit Abschlußeigenschaften
• Ziel: Wiederverwendung bekannter Ergebnisse
– Zur Lösung eines Problems P bzw. zum Nachweis seiner Unlösbarkeit
• Methodik
– Zeige, daß Lösung für P ein unlösbares Problem P 0 lösen würde
– Zeige, wie Lösung eines bekannten Problems P 0 zur Lösung von P 0 führt
• Hilfsmittel: Abschlußeigenschaften
–
–
–
–
M , M 0 entscheidbar, dann auch M ∪M 0, M ∩M 0, M \M 0, M , f −1(M )
M , M 0 aufzählbar, dann auch M ∪M 0, M ∩M 0, g(M ), g −1(M )
M entscheidbar ⇔ M und M aufzählbar
Reduzierbarkeit ist ein besonders mächtiger Spezialfall
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
24
Beweistechniken für unlösbare Probeme
Problemreduktion mit Abschlußeigenschaften
• Ziel: Wiederverwendung bekannter Ergebnisse
– Zur Lösung eines Problems P bzw. zum Nachweis seiner Unlösbarkeit
• Methodik
– Zeige, daß Lösung für P ein unlösbares Problem P 0 lösen würde
– Zeige, wie Lösung eines bekannten Problems P 0 zur Lösung von P 0 führt
• Hilfsmittel: Abschlußeigenschaften
–
–
–
–
M , M 0 entscheidbar, dann auch M ∪M 0, M ∩M 0, M \M 0, M , f −1(M )
M , M 0 aufzählbar, dann auch M ∪M 0, M ∩M 0, g(M ), g −1(M )
M entscheidbar ⇔ M und M aufzählbar
Reduzierbarkeit ist ein besonders mächtiger Spezialfall
• Umkehrung der Abschlußeigenschaften
–
–
–
–
M
M
M
M
nicht entscheidbar ⇒ M nicht entscheidbar
aufzählbar, nicht entscheidbar ⇒ M weder aufzählbar noch entscheidbar
entscheidbar, M ∪M 0 nicht entscheidbar ⇒ M 0 nicht entscheidbar
entscheidbar, M \M 0 nicht entscheidbar ⇒ M 0 nicht entscheidbar
..
..
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
24
Beweistechniken für unlösbare Probeme
Resultate aus Abschlußeigenschaften
• {(i, n) | ϕi(n)=⊥} ist nicht aufzählbar
Satz J.b
– {(i, n) | ϕi(n)=⊥} ist das Komplement von H = {(i, n) | ϕi(n)6=⊥}
– H ist aufzählbar aber unentscheidbar, also kann H nicht aufzählbar sein
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
25
Beweistechniken für unlösbare Probeme
Resultate aus Abschlußeigenschaften
• {(i, n) | ϕi(n)=⊥} ist nicht aufzählbar
Satz J.b
– {(i, n) | ϕi(n)=⊥} ist das Komplement von H = {(i, n) | ϕi(n)6=⊥}
– H ist aufzählbar aber unentscheidbar, also kann H nicht aufzählbar sein
• {i | ϕi(i)=⊥} ist nicht aufzählbar
– {i | ϕi(i)=⊥} ist das Komplement von S = {i | ϕi(i)6=⊥}
– S ist aufzählbar aber unentscheidbar, also kann S nicht aufzählbar sein
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
25
Beweistechniken für unlösbare Probeme
Resultate aus Abschlußeigenschaften
• {(i, n) | ϕi(n)=⊥} ist nicht aufzählbar
Satz J.b
– {(i, n) | ϕi(n)=⊥} ist das Komplement von H = {(i, n) | ϕi(n)6=⊥}
– H ist aufzählbar aber unentscheidbar, also kann H nicht aufzählbar sein
• {i | ϕi(i)=⊥} ist nicht aufzählbar
– {i | ϕi(i)=⊥} ist das Komplement von S = {i | ϕi(i)6=⊥}
– S ist aufzählbar aber unentscheidbar, also kann S nicht aufzählbar sein
• P ROGz = {i | ϕi = z} ist nicht aufzählbar
– Es gilt H≤P ROGz und H ist nicht aufzählbar
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
25
Beweistechniken für unlösbare Probeme
Resultate aus Abschlußeigenschaften
• {(i, n) | ϕi(n)=⊥} ist nicht aufzählbar
Satz J.b
– {(i, n) | ϕi(n)=⊥} ist das Komplement von H = {(i, n) | ϕi(n)6=⊥}
– H ist aufzählbar aber unentscheidbar, also kann H nicht aufzählbar sein
• {i | ϕi(i)=⊥} ist nicht aufzählbar
– {i | ϕi(i)=⊥} ist das Komplement von S = {i | ϕi(i)6=⊥}
– S ist aufzählbar aber unentscheidbar, also kann S nicht aufzählbar sein
• P ROGz = {i | ϕi = z} ist nicht aufzählbar
– Es gilt H≤P ROGz und H ist nicht aufzählbar
• P Fϕ = {i | ϕi partiell} ist unentscheidbar
– P Fϕ ist das Komplement von Rϕ = {i | ϕi total}
– Rϕ ist nicht aufzählbar, also kann P Fϕ = Rϕ nicht entscheidbar sein
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
25
Beweistechniken für unlösbare Probeme
Welche Verifikationsprobleme sind entscheidbar?
• Halteproblem
– Kann man von einem beliebigen Programm entscheiden,
ob es bei bestimmten Eingaben hält oder nicht?
– Bereits als unentscheidbar nachgewiesen
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
26
Beweistechniken für unlösbare Probeme
Welche Verifikationsprobleme sind entscheidbar?
• Halteproblem
– Kann man von einem beliebigen Programm entscheiden,
ob es bei bestimmten Eingaben hält oder nicht?
– Bereits als unentscheidbar nachgewiesen
• Korrektheitsproblem
– Kann man von einem beliebigen Programm entscheiden,
ob es eine bestimmte Funktion berechnet oder nicht?
– Für die Nullfunktion bereits als unentscheidbar nachgewiesen
– Gilt ähnliches für andere Funktionen?
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
26
Beweistechniken für unlösbare Probeme
Welche Verifikationsprobleme sind entscheidbar?
• Halteproblem
– Kann man von einem beliebigen Programm entscheiden,
ob es bei bestimmten Eingaben hält oder nicht?
– Bereits als unentscheidbar nachgewiesen
• Korrektheitsproblem
– Kann man von einem beliebigen Programm entscheiden,
ob es eine bestimmte Funktion berechnet oder nicht?
– Für die Nullfunktion bereits als unentscheidbar nachgewiesen
– Gilt ähnliches für andere Funktionen?
• Spezifikationsproblem
– Kann man von einem beliebigen Programm entscheiden,
ob es eine gegebene Spezfikation erfüllt oder nicht?
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
26
Beweistechniken für unlösbare Probeme
Welche Verifikationsprobleme sind entscheidbar?
• Halteproblem
– Kann man von einem beliebigen Programm entscheiden,
ob es bei bestimmten Eingaben hält oder nicht?
– Bereits als unentscheidbar nachgewiesen
• Korrektheitsproblem
– Kann man von einem beliebigen Programm entscheiden,
ob es eine bestimmte Funktion berechnet oder nicht?
– Für die Nullfunktion bereits als unentscheidbar nachgewiesen
– Gilt ähnliches für andere Funktionen?
• Spezifikationsproblem
– Kann man von einem beliebigen Programm entscheiden,
ob es eine gegebene Spezfikation erfüllt oder nicht?
• Äquivalenzproblem
– Kann man entscheiden, ob zwei beliebige Programme die gleiche
Funktion berechnen oder nicht?
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
26
Beweistechniken für unlösbare Probeme
Welche Verifikationsprobleme sind entscheidbar?
• Halteproblem
– Kann man von einem beliebigen Programm entscheiden,
ob es bei bestimmten Eingaben hält oder nicht?
– Bereits als unentscheidbar nachgewiesen
• Korrektheitsproblem
– Kann man von einem beliebigen Programm entscheiden,
ob es eine bestimmte Funktion berechnet oder nicht?
– Für die Nullfunktion bereits als unentscheidbar nachgewiesen
– Gilt ähnliches für andere Funktionen?
• Spezifikationsproblem
– Kann man von einem beliebigen Programm entscheiden,
ob es eine gegebene Spezfikation erfüllt oder nicht?
• Äquivalenzproblem
– Kann man entscheiden, ob zwei beliebige Programme die gleiche
Funktion berechnen oder nicht?
Gibt es eine allgemeine Antwort?
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
26
Beweistechniken für unlösbare Probeme
Der Satz von Rice
Satz O
Keine nichttriviale extensionale Eigenschaft
berechenbarer Funktionen ist entscheidbar
Für ∅6=P ⊂Tµ ist LP = {i | ϕi ∈ P } nicht entscheidbar
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
27
Beweistechniken für unlösbare Probeme
Der Satz von Rice
Satz O
Keine nichttriviale extensionale Eigenschaft
berechenbarer Funktionen ist entscheidbar
Für ∅6=P ⊂Tµ ist LP = {i | ϕi ∈ P } nicht entscheidbar
Beweis durch Reduktion auf S = {i | ϕi(i)6=⊥}
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
27
Beweistechniken für unlösbare Probeme
Der Satz von Rice
Satz O
Keine nichttriviale extensionale Eigenschaft
berechenbarer Funktionen ist entscheidbar
Für ∅6=P ⊂Tµ ist LP = {i | ϕi ∈ P } nicht entscheidbar
Beweis durch Reduktion auf S = {i | ϕi(i)6=⊥}
– Betrachte g ≡ λx.⊥
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
27
Beweistechniken für unlösbare Probeme
Der Satz von Rice
Satz O
Keine nichttriviale extensionale Eigenschaft
berechenbarer Funktionen ist entscheidbar
Für ∅6=P ⊂Tµ ist LP = {i | ϕi ∈ P } nicht entscheidbar
Beweis durch Reduktion auf S = {i | ϕi(i)6=⊥}
– Betrachte g ≡ λx.⊥
– Falls g 6∈ P , so wähle h ∈ P beliebig und definiere
h(x) falls ϕi(i)6=⊥
h0(i, x) =
⊥
sonst
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
27
Beweistechniken für unlösbare Probeme
Der Satz von Rice
Satz O
Keine nichttriviale extensionale Eigenschaft
berechenbarer Funktionen ist entscheidbar
Für ∅6=P ⊂Tµ ist LP = {i | ϕi ∈ P } nicht entscheidbar
Beweis durch Reduktion auf S = {i | ϕi(i)6=⊥}
– Betrachte g ≡ λx.⊥
– Falls g 6∈ P , so wähle h ∈ P beliebig und definiere
h(x) falls ϕi(i)6=⊥
h0(i, x) =
⊥
sonst
– Dann ist h0 berechenbar und nach dem SMN Theorem gibt es ein
total-berechenbares f mit h0(i, x) = ϕf (i)(x)
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
27
Beweistechniken für unlösbare Probeme
Der Satz von Rice
Satz O
Keine nichttriviale extensionale Eigenschaft
berechenbarer Funktionen ist entscheidbar
Für ∅6=P ⊂Tµ ist LP = {i | ϕi ∈ P } nicht entscheidbar
Beweis durch Reduktion auf S = {i | ϕi(i)6=⊥}
– Betrachte g ≡ λx.⊥
– Falls g 6∈ P , so wähle h ∈ P beliebig und definiere
h(x) falls ϕi(i)6=⊥
h0(i, x) =
⊥
sonst
– Dann ist h0 berechenbar und nach dem SMN Theorem gibt es ein
total-berechenbares f mit h0(i, x) = ϕf (i)(x)
– Es folgt: i ∈ S
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
27
Beweistechniken für unlösbare Probeme
Der Satz von Rice
Satz O
Keine nichttriviale extensionale Eigenschaft
berechenbarer Funktionen ist entscheidbar
Für ∅6=P ⊂Tµ ist LP = {i | ϕi ∈ P } nicht entscheidbar
Beweis durch Reduktion auf S = {i | ϕi(i)6=⊥}
– Betrachte g ≡ λx.⊥
– Falls g 6∈ P , so wähle h ∈ P beliebig und definiere
h(x) falls ϕi(i)6=⊥
h0(i, x) =
⊥
sonst
– Dann ist h0 berechenbar und nach dem SMN Theorem gibt es ein
total-berechenbares f mit h0(i, x) = ϕf (i)(x)
– Es folgt: i ∈ S ⇒ ∀x. ϕf (i)(x) = h(x)
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
27
Beweistechniken für unlösbare Probeme
Der Satz von Rice
Satz O
Keine nichttriviale extensionale Eigenschaft
berechenbarer Funktionen ist entscheidbar
Für ∅6=P ⊂Tµ ist LP = {i | ϕi ∈ P } nicht entscheidbar
Beweis durch Reduktion auf S = {i | ϕi(i)6=⊥}
– Betrachte g ≡ λx.⊥
– Falls g 6∈ P , so wähle h ∈ P beliebig und definiere
h(x) falls ϕi(i)6=⊥
h0(i, x) =
⊥
sonst
– Dann ist h0 berechenbar und nach dem SMN Theorem gibt es ein
total-berechenbares f mit h0(i, x) = ϕf (i)(x)
– Es folgt: i ∈ S ⇒ ∀x. ϕf (i)(x) = h(x) ⇒ ϕf (i) = h ∈ P
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
27
Beweistechniken für unlösbare Probeme
Der Satz von Rice
Satz O
Keine nichttriviale extensionale Eigenschaft
berechenbarer Funktionen ist entscheidbar
Für ∅6=P ⊂Tµ ist LP = {i | ϕi ∈ P } nicht entscheidbar
Beweis durch Reduktion auf S = {i | ϕi(i)6=⊥}
– Betrachte g ≡ λx.⊥
– Falls g 6∈ P , so wähle h ∈ P beliebig und definiere
h(x) falls ϕi(i)6=⊥
h0(i, x) =
⊥
sonst
– Dann ist h0 berechenbar und nach dem SMN Theorem gibt es ein
total-berechenbares f mit h0(i, x) = ϕf (i)(x)
– Es folgt: i ∈ S ⇒ ∀x. ϕf (i)(x) = h(x) ⇒ ϕf (i) = h ∈ P ⇒ f (i) ∈ LP
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
27
Beweistechniken für unlösbare Probeme
Der Satz von Rice
Satz O
Keine nichttriviale extensionale Eigenschaft
berechenbarer Funktionen ist entscheidbar
Für ∅6=P ⊂Tµ ist LP = {i | ϕi ∈ P } nicht entscheidbar
Beweis durch Reduktion auf S = {i | ϕi(i)6=⊥}
– Betrachte g ≡ λx.⊥
– Falls g 6∈ P , so wähle h ∈ P beliebig und definiere
h(x) falls ϕi(i)6=⊥
h0(i, x) =
⊥
sonst
– Dann ist h0 berechenbar und nach dem SMN Theorem gibt es ein
total-berechenbares f mit h0(i, x) = ϕf (i)(x)
– Es folgt: i ∈ S ⇒ ∀x. ϕf (i)(x) = h(x) ⇒ ϕf (i) = h ∈ P ⇒ f (i) ∈ LP
i 6∈ S
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
27
Beweistechniken für unlösbare Probeme
Der Satz von Rice
Satz O
Keine nichttriviale extensionale Eigenschaft
berechenbarer Funktionen ist entscheidbar
Für ∅6=P ⊂Tµ ist LP = {i | ϕi ∈ P } nicht entscheidbar
Beweis durch Reduktion auf S = {i | ϕi(i)6=⊥}
– Betrachte g ≡ λx.⊥
– Falls g 6∈ P , so wähle h ∈ P beliebig und definiere
h(x) falls ϕi(i)6=⊥
h0(i, x) =
⊥
sonst
– Dann ist h0 berechenbar und nach dem SMN Theorem gibt es ein
total-berechenbares f mit h0(i, x) = ϕf (i)(x)
– Es folgt: i ∈ S ⇒ ∀x. ϕf (i)(x) = h(x) ⇒ ϕf (i) = h ∈ P ⇒ f (i) ∈ LP
i 6∈ S ⇒ ∀x. ϕf (i)(x)=⊥
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
27
Beweistechniken für unlösbare Probeme
Der Satz von Rice
Satz O
Keine nichttriviale extensionale Eigenschaft
berechenbarer Funktionen ist entscheidbar
Für ∅6=P ⊂Tµ ist LP = {i | ϕi ∈ P } nicht entscheidbar
Beweis durch Reduktion auf S = {i | ϕi(i)6=⊥}
– Betrachte g ≡ λx.⊥
– Falls g 6∈ P , so wähle h ∈ P beliebig und definiere
h(x) falls ϕi(i)6=⊥
h0(i, x) =
⊥
sonst
– Dann ist h0 berechenbar und nach dem SMN Theorem gibt es ein
total-berechenbares f mit h0(i, x) = ϕf (i)(x)
– Es folgt: i ∈ S ⇒ ∀x. ϕf (i)(x) = h(x) ⇒ ϕf (i) = h ∈ P ⇒ f (i) ∈ LP
i 6∈ S ⇒ ∀x. ϕf (i)(x)=⊥
⇒ ϕf (i) = g 6∈ P
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
27
Beweistechniken für unlösbare Probeme
Der Satz von Rice
Satz O
Keine nichttriviale extensionale Eigenschaft
berechenbarer Funktionen ist entscheidbar
Für ∅6=P ⊂Tµ ist LP = {i | ϕi ∈ P } nicht entscheidbar
Beweis durch Reduktion auf S = {i | ϕi(i)6=⊥}
– Betrachte g ≡ λx.⊥
– Falls g 6∈ P , so wähle h ∈ P beliebig und definiere
h(x) falls ϕi(i)6=⊥
h0(i, x) =
⊥
sonst
– Dann ist h0 berechenbar und nach dem SMN Theorem gibt es ein
total-berechenbares f mit h0(i, x) = ϕf (i)(x)
– Es folgt: i ∈ S ⇒ ∀x. ϕf (i)(x) = h(x) ⇒ ϕf (i) = h ∈ P ⇒ f (i) ∈ LP
i 6∈ S ⇒ ∀x. ϕf (i)(x)=⊥
⇒ ϕf (i) = g 6∈ P ⇒ f (i) 6∈ LP
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
27
Beweistechniken für unlösbare Probeme
Der Satz von Rice
Satz O
Keine nichttriviale extensionale Eigenschaft
berechenbarer Funktionen ist entscheidbar
Für ∅6=P ⊂Tµ ist LP = {i | ϕi ∈ P } nicht entscheidbar
Beweis durch Reduktion auf S = {i | ϕi(i)6=⊥}
– Betrachte g ≡ λx.⊥
– Falls g 6∈ P , so wähle h ∈ P beliebig und definiere
h(x) falls ϕi(i)6=⊥
h0(i, x) =
⊥
sonst
– Dann ist h0 berechenbar und nach dem SMN Theorem gibt es ein
total-berechenbares f mit h0(i, x) = ϕf (i)(x)
– Es folgt: i ∈ S ⇒ ∀x. ϕf (i)(x) = h(x) ⇒ ϕf (i) = h ∈ P ⇒ f (i) ∈ LP
i 6∈ S ⇒ ∀x. ϕf (i)(x)=⊥
⇒ ϕf (i) = g 6∈ P ⇒ f (i) 6∈ LP
– Insgesamt i ∈ S ⇔ f (i) ∈ LP , also S≤P
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
27
Beweistechniken für unlösbare Probeme
Der Satz von Rice
Satz O
Keine nichttriviale extensionale Eigenschaft
berechenbarer Funktionen ist entscheidbar
Für ∅6=P ⊂Tµ ist LP = {i | ϕi ∈ P } nicht entscheidbar
Beweis durch Reduktion auf S = {i | ϕi(i)6=⊥}
– Betrachte g ≡ λx.⊥
– Falls g 6∈ P , so wähle h ∈ P beliebig und definiere
h(x) falls ϕi(i)6=⊥
h0(i, x) =
⊥
sonst
– Dann ist h0 berechenbar und nach dem SMN Theorem gibt es ein
total-berechenbares f mit h0(i, x) = ϕf (i)(x)
– Es folgt: i ∈ S ⇒ ∀x. ϕf (i)(x) = h(x) ⇒ ϕf (i) = h ∈ P ⇒ f (i) ∈ LP
i 6∈ S ⇒ ∀x. ϕf (i)(x)=⊥
⇒ ϕf (i) = g 6∈ P ⇒ f (i) 6∈ LP
– Insgesamt i ∈ S ⇔ f (i) ∈ LP , also S≤P
– Da S unentscheidbar ist, muß dies auch für P gelten
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
27
√
Beweistechniken für unlösbare Probeme
Der Satz von Rice
Satz O
Keine nichttriviale extensionale Eigenschaft
berechenbarer Funktionen ist entscheidbar
Für ∅6=P ⊂Tµ ist LP = {i | ϕi ∈ P } nicht entscheidbar
Beweis durch Reduktion auf S = {i | ϕi(i)6=⊥}
– Betrachte g ≡ λx.⊥
– Falls g 6∈ P , so wähle h ∈ P beliebig und definiere
h(x) falls ϕi(i)6=⊥
h0(i, x) =
⊥
sonst
– Dann ist h0 berechenbar und nach dem SMN Theorem gibt es ein
total-berechenbares f mit h0(i, x) = ϕf (i)(x)
– Es folgt: i ∈ S ⇒ ∀x. ϕf (i)(x) = h(x) ⇒ ϕf (i) = h ∈ P ⇒ f (i) ∈ LP
i 6∈ S ⇒ ∀x. ϕf (i)(x)=⊥
⇒ ϕf (i) = g 6∈ P ⇒ f (i) 6∈ LP
– Insgesamt i ∈ S ⇔ f (i) ∈ LP , also S≤P
– Da S unentscheidbar ist, muß dies auch für P gelten
√
– Falls g ∈ S wähle ein beliebiges h 6∈ S und zeige so S≤P
√
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
27
Beweistechniken für unlösbare Probeme
Anwendungen des Satzes von Rice
• M ON = {i | ∀k. ϕi(k) < ϕi(k+1)}
– Monotone Funktionen sind unentscheidbar
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
28
Beweistechniken für unlösbare Probeme
Anwendungen des Satzes von Rice
• M ON = {i | ∀k. ϕi(k) < ϕi(k+1)}
– Monotone Funktionen sind unentscheidbar
• EF = {i | ∀j. ϕi(j) ∈ {0, 1}}
– Entscheidungsfunktionen sind unentscheidbar
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
28
Beweistechniken für unlösbare Probeme
Anwendungen des Satzes von Rice
• M ON = {i | ∀k. ϕi(k) < ϕi(k+1)}
– Monotone Funktionen sind unentscheidbar
• EF = {i | ∀j. ϕi(j) ∈ {0, 1}}
– Entscheidungsfunktionen sind unentscheidbar
• P ROGspec = {i | ϕi erfüllt Spezifikation spec}
– Allgemeines Spezifikationsproblem ist unentscheidbar
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
28
Beweistechniken für unlösbare Probeme
Anwendungen des Satzes von Rice
• M ON = {i | ∀k. ϕi(k) < ϕi(k+1)}
– Monotone Funktionen sind unentscheidbar
• EF = {i | ∀j. ϕi(j) ∈ {0, 1}}
– Entscheidungsfunktionen sind unentscheidbar
• P ROGspec = {i | ϕi erfüllt Spezifikation spec}
– Allgemeines Spezifikationsproblem ist unentscheidbar
• P ROGf = {i | ϕi = f }
– Korrektheitsproblem ist unentscheidbar
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
28
Beweistechniken für unlösbare Probeme
Anwendungen des Satzes von Rice
• M ON = {i | ∀k. ϕi(k) < ϕi(k+1)}
– Monotone Funktionen sind unentscheidbar
• EF = {i | ∀j. ϕi(j) ∈ {0, 1}}
– Entscheidungsfunktionen sind unentscheidbar
• P ROGspec = {i | ϕi erfüllt Spezifikation spec}
– Allgemeines Spezifikationsproblem ist unentscheidbar
• P ROGf = {i | ϕi = f }
– Korrektheitsproblem ist unentscheidbar
• EQ = {(i, j) | ϕi = ϕj }
– Äquivalenzproblem ist unentscheidbar
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
28
Beweistechniken für unlösbare Probeme
Anwendungen des Satzes von Rice
• M ON = {i | ∀k. ϕi(k) < ϕi(k+1)}
– Monotone Funktionen sind unentscheidbar
• EF = {i | ∀j. ϕi(j) ∈ {0, 1}}
– Entscheidungsfunktionen sind unentscheidbar
• P ROGspec = {i | ϕi erfüllt Spezifikation spec}
– Allgemeines Spezifikationsproblem ist unentscheidbar
• P ROGf = {i | ϕi = f }
– Korrektheitsproblem ist unentscheidbar
• EQ = {(i, j) | ϕi = ϕj }
– Äquivalenzproblem ist unentscheidbar
• RG = {(i, j) | j ∈ range(ϕi)}
– Bildbereiche sind unentscheidbar
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
28
Beweistechniken für unlösbare Probeme
Anwendungen des Satzes von Rice
• M ON = {i | ∀k. ϕi(k) < ϕi(k+1)}
– Monotone Funktionen sind unentscheidbar
• EF = {i | ∀j. ϕi(j) ∈ {0, 1}}
– Entscheidungsfunktionen sind unentscheidbar
• P ROGspec = {i | ϕi erfüllt Spezifikation spec}
– Allgemeines Spezifikationsproblem ist unentscheidbar
• P ROGf = {i | ϕi = f }
– Korrektheitsproblem ist unentscheidbar
• EQ = {(i, j) | ϕi = ϕj }
– Äquivalenzproblem ist unentscheidbar
• RG = {(i, j) | j ∈ range(ϕi)}
– Bildbereiche sind unentscheidbar
Keine Programmeigenschaft kann getestet werden
Beweise müssen von Hand geführt werden
Rechnerunterstützung nur in Spezialfällen möglich
Theoretische Informatik II §7: Elementare Berechenbarkeitstheorie
28
Beweistechniken für unlösbare Probeme