grundbegriffe der theoretischen informatik · ‚ lösungsstrings für fppm,xqq beginnen mit der...
TRANSCRIPT
Grundbegriffe der Theoretischen InformatikSommersemester 2016 - Thomas Schwentick
Teil C: Berechenbarkeit und Entscheidbarkeit
15: Unentscheidbare Probleme 2
Version von: 16. Juni 2016 (13:56)
Einleitung‚ In Teil A der Vorlesung haben wir gese-
hen, dass es möglich ist, automatisch zuüberprüfen, ob die Implementierung einerregulären Sprache (durch einen DFA) kor-rekt ist bezüglich der Spezifikation (durcheinen regulären Ausdruck)
‚ Es ist auch möglich,
– eine „optimale“ Implementierung auseiner Spezifikation zu konstruieren
– zu testen, ob zwei Spezifikationenäquivalent sind
– zu testen, ob zwei Implementierungenäquivalent sind
‚ Natürlich wäre es schön, wenn dies allesauch allgemeiner möglich wäre:
– für Programme/Algorithmen statt DFAsund
– für allgemeine semantische Spezifika-tionen statt reguläre Ausdrücke
‚ In diesem Kapitel werden wir sehen:
– Für allgemeine Programme und Spezifi-kationen ist nichts von dem möglich
– Semantische Eigenschaften von Pro-grammen sind nicht automatisch über-prüfbar∗ Das ist unterm Strich die Aussage
des Satzes von Rice
‚ Wir werden sogar zeigen, dass die Un-möglichkeit von Äquivalenztests schon fürkontextfreie Sprachen und ihre Beschrei-bungsformen gilt
GTI / Schwentick / SoSe 16 C: 15. Unentscheidbare Probleme 2 . ✁✄ Folie 1
Inhalt
✄ 15.1 Der Satz von Rice
15.2 Das Postsche Korrespondenzproblem
15.3 Unentscheidbare Grammatikprobleme
GTI / Schwentick / SoSe 16 C: 15. Unentscheidbare Probleme 2 . ✁✄ Folie 2
Satz von Rice (1/3)‚ Wir zeigen jetzt, dass jede nicht-triviale se-
mantische Eigenschaft von Algorithmen(Programmen, Turingmaschinen) unent-scheidbar ist
‚ Wir betrachten dazu zunächst Turingma-schinen, die Funktionen berechnen
‚ Semantische Eigenschaften formalisierenwir duch Mengen von Funktionen
‚ Für jede Menge S Ď R berechenbarerFunktionen definieren wir das folgendealgorithmische Problem
Definition: TM-FUNCpSq
Gegeben: Turingmaschine M
Frage: Ist fM P S?
Satz 15.1 [Rice 53]
‚ Sei S eine Menge berechenbarer partiellerFunktionen mit H “ S “ R
‚ Dann ist TM-FUNCpSq unentscheidbar
‚ Wählt man beispielsweise S als Mengealler totalen, berechenbaren Funktionen,so folgt mit dem Satz von Rice, dass esunentscheidbar ist, ob eine gegebene TMeine totale Funktion berechnet
– Das ist natürlich nicht sehr überra-schend, aber wir werden gleich nochweitere Anwendungen betrachten
GTI / Schwentick / SoSe 16 C: 15. Unentscheidbare Probleme 2 . ✁✄ Folie 3
Satz von Rice: Anwendungen‚ Aus dem Satz von Rice lassen sich viele Unent-
scheidbarkeitsresultate folgern, beispielsweise:
‚ Für jede feste berechenbare Funktion f ist esunentscheidbar, ob ein gegebenes Programm fberechnet:
– Wähle S “ tfu
‚ Für beliebige feste Strings u,w ist es unent-scheidbar, ob ein gegebenes Programm bei Einga-be u die Ausgabe w hat:
– Wähle S “ tf | fpuq “ wu
‚ Es ist unentscheidbar, ob zwei gegebene Program-me äquivalent sind:
– Das folgt direkt aus der Unentscheidbarkeit desersten Problems
– Dieses lässt sich nämlich auf die Äquivalenzzweier Programme reduzieren
‚ Auf ähnliche Weise folgt die Un-entscheidbarkeit der in der Einlei-tung genannten Probleme
‚ Dass wir hier „Programm“ statt„TM“ schreiben, ist durch die(empirische Gültigkeit der) Church-Turing-These gerechtfertigt
GTI / Schwentick / SoSe 16 C: 15. Unentscheidbare Probleme 2 . ✁✄ Folie 4
Satz von Rice (2/3)Beweisskizze
‚ Sei fKpwqdef“ K, für alle w P Σ˚
‚ 1. Fall: fK R S:
– Sei f P S beliebig, Mf TM für f
‚ Wir zeigen: TM-E-HALT ď TM-FUNCpSq
‚ Also: bilde M so auf M 1 ab, dass gilt:
– Mpǫq terminiert ñ M 1 berechnet f
– Mpǫq terminiert nicht ñM 1 berechnet fK
‚ Für jede TM M sei dazu M 1 die TM, die beiEingabe x
(1) zuerst M bei Eingabe ǫ simuliert (allerdings„hinter x“ und ohne x zu verändern)
(2) und falls diese Berechnung terminiert, dieTM Mf bei Eingabe x simuliert
✎ Ein solches M 1 kann auch mit Satz 13.3 auseiner geeigneten 2-TM gewonnen werden
Beweisskizze (Forts.)
‚ Wir zeigen, dass M ÞÑ M 1 ei-ne Reduktion von TM-E-HALT aufTM-FUNCpSq ist
‚ Sei M P TM-E-HALT
➨ Mpǫq terminiert
➨ Phase (1) von M 1 terminiert
➨ Phase (2) simuliert das Verhaltenvon Mf bei Eingabe x und gibt alsofpxq aus (falls das definiert ist)
➨ M 1 berechnet f
➨ M 1 P TM-FUNCpSq
‚ Sei nun M R TM-E-HALT
➨ Mpǫq terminiert nicht
➨ M 1 berechnet fK
➨ M 1 R TM-FUNCpSq
GTI / Schwentick / SoSe 16 C: 15. Unentscheidbare Probleme 2 . ✁✄ Folie 5
Satz von Rice (3/3)Beweisskizze (Forts.)
‚ Im zweiten Fall (fK P S) lässt sich analog zei-gen, dass TM-E-HALT auf das Komplement
TM-FUNCpSq reduzierbar ist
➨ TM-FUNCpSq ist unentscheidbar
➨ TM-FUNCpSq ist unentscheidbar
GTI / Schwentick / SoSe 16 C: 15. Unentscheidbare Probleme 2 . ✁✄ Folie 6
Inhalt
15.1 Der Satz von Rice
✄ 15.2 Das Postsche Korrespondenzproblem
15.3 Unentscheidbare Grammatikprobleme
GTI / Schwentick / SoSe 16 C: 15. Unentscheidbare Probleme 2 . ✁✄ Folie 7
PCP ist unentscheidbar (1/7)‚ Zur Erinnerung:
Def.: Postsches Korrespondenzproblem (PCP)
Gegeben: eine Folgepu1, v1q, . . . , puk, vkq von Paa-ren nicht-leerer Strings
Frage: Gibt es eine Indexfolge i1, . . . , inmit n ě 1, so dass
ui1ui2 ¨ ¨ ¨ uin “ vi1vi2 ¨ ¨ ¨ vin?
Satz 15.2
‚ PCP ist unentscheidbar
Beweisidee
‚ Wir definieren ein „Zwischen-Problem“SPCP und zeigen:
– TM-HALT ď SPCP und
– SPCP ď PCP
‚ Daraus folgt mit Lemma 14.3, dass SPCPund dann auch PCP unentscheidbar sind
Def.: PCP-Problem mit Startpaar (SPCP)
Gegeben: eine Folgepu1, v1q, . . . , puk, vkq von Paa-ren von Strings
Frage: Gibt es eine Indexfolge i1, . . . , inmit n ě 1, so dass
‚ ui1ui2 ¨ ¨ ¨ uin “ vi1vi2 ¨ ¨ ¨ vin‚ und i1 “ 1?
GTI / Schwentick / SoSe 16 C: 15. Unentscheidbare Probleme 2 . ✁✄ Folie 8
Die erste Beispiel-TM (leicht modifiziert)Beispiel
Turing-Maschine zum Test, ob Eingabe von der Form wwR ist
a: 0 und 1 überlesen, nach links — falls ✄ oder \ nach rechts in b
b: Falls 0 nach rechts in c — falls 1 nach rechts in d (0/1 durch \überschreiben) — falls \ akz.
c: 0 und 1 überlesen nach rechts bis \, dann nach links in e
d: 0 und 1 überlesen nach rechts bis \, dann nach links in f
e: Falls 0 durch \ ersetzen nach links in a — falls 1 oder \ ableh-nen
f: Falls 1 durch \ ersetzen nach links in a — falls 0 oder \ ableh-nen
✎ Die TM nutzt \ statt #, da wir # für die Konkatenation verwen-den wollen
Beispielberechnung:
✄ 1 1
bbd\
d\
fa\
b
GTI / Schwentick / SoSe 16 C: 15. Unentscheidbare Probleme 2 . ✁✄ Folie 9
Beispiel-TM als DiagrammBeispiel-Turingmaschine als Diagramm
ab
c
d
e
f`
´0 : 0, Ð1 : 1, Ð
\ : \, Ñ✄ : ✄, Ñ
0 : \, Ñ
1 : \, Ñ\ : \, Ó
0 : 0, Ñ1 : 1, Ñ
\ : \, Ð
0 : 0, Ñ1 : 1, Ñ
\ : \, Ð
0 : \, Ð
1 : \, Ó\ : \, Ó
1 : \, Ð
0 : \, Ó\ : \, Ó
GTI / Schwentick / SoSe 16 C: 15. Unentscheidbare Probleme 2 . ✁✄ Folie 10
Beispielberechnung als Präfix einer LösungBeispiel (Forts.)
‚ Terminierende Berechnung von M bei Eingabe 11 als Präfix einer SPCP-Lösung
‚ Präfix des Lösungsstrings:
#
#a ✄ 11#
a✄
✄b
1
1
1
1
#
#
✄
✄
b1
\d
1
1
#
#
✄
✄
\
\
d1
1d
#
#
✄
✄
\
\
1
1
1d#
f1 \ #
✄
✄
\f1
a \ \
\
\
#
#
✄
✄
a\
\b
\
\
\
\
#
#
✄
✄
\
\
b\
ja\
\
\
#
#
‚ Verwendete Steintypen:
#
#a ✄ 11#,
a✄
✄b,
1
1,#
#,✄
✄,
b1
\d,
\
\,
d1
1d,
1d#
f1 \ #,
\f1
a \ \,
a\
\b,
b\
ja\
GTI / Schwentick / SoSe 16 C: 15. Unentscheidbare Probleme 2 . ✁✄ Folie 11
PCP ist unentscheidbar (2/7)Beweisskizze (Forts.)
‚ Wir konstruieren eine Reduktionsfunktionf mit:pM,xq P TM-HALT ðñ
fppM,xqq P SPCP
‚ Lösungen von fppM,xqq entsprechenalso terminierenden Berechnungen Mpxq
‚ Wir kodieren dazu KonfigurationenK “ pq, py, σ, zqq von M durch
Strings Kdef“ ✄yqσz
‚ Idee der Reduktion:
‚ Sei Mpxq “ K0 $M ¨ ¨ ¨ $M Kt
(K0
def“ K0pxq)
‚ Lösungsstrings für fppM,xqq beginnenmit der Konkatenation der Konfigurationendieser Berechnung:
K0#K1# ¨ ¨ ¨ #Kt
☞ über das Ende reden wir später
Beweisskizze (Forts.)
‚ Für jedes ℓ ă t
– ist K0#K1# ¨ ¨ ¨ #Kℓ ein Präfixui1 ¨ ¨ ¨ uik des Lösungsstrings
– und vi1 ¨ ¨ ¨ vik ist
K0#K1# ¨ ¨ ¨ #Kℓ`1
‚ Also übereinander geschrieben:# K0# K1# ¨ ¨ ¨ Kℓ#
#K0# K1# K2# ¨ ¨ ¨ Kℓ`1#
‚ Es gilt dann für jedes i:wenn ui eine Position in einer Konfigurati-on Kj repräsentiert, dann repräsentiert vidieselbe Position in Kj`1
‚ Dieses „Übereinanderlegen“ aufeinander-folgender Konfigurationen ermöglicht es,die Konfigurationsfolge auf Korrektheit zutesten
GTI / Schwentick / SoSe 16 C: 15. Unentscheidbare Probleme 2 . ✁✄ Folie 12
PCP ist unentscheidbar (3/7)Beweisskizze (Forts.)
‚ Sei M “ pQ,Γ, δ, sq TM, x P Σ˚
– OBdA: # R Γ‚ Die zugehörige SPCP-Eingabe hat das
Alphabet QYΓY t#u und die folgendenRegeln:
(1) Start:#
#s ✄ x#
(2) Kopierregeln:σ
σ,
für jedes σ P Γ Y t#u(3) δ-Regeln: für alle q, q1 P Q
und alle σ, σ1, τ P Γ Y t#u:
– falls δpq, σq “ pq1, σ1, Óq:qσ
q1σ1,
– falls δpq, σq “ pq1, σ1, Ñq:qσ
σ1q1
– falls δpq, σq “ pq1, σ1, Ðq:τqσ
q1τσ1, für alle τ P Γ,
Beweisskizze (Forts.)
(4) δ-Regeln für den „rechten Rand“:
Für alle q, q1 P Q und alleσ1, τ P Γ Y t#u:
‚ falls δpq, \q “ pq1, σ1, Óq:q#
q1σ1#,
‚ falls δpq, \q “ pq1, σ1, Ñq:q#
σ1q1#
‚ falls δpq, \q “ pq1, σ1, Ðq:τq#
q1τσ1#, für alle τ P Γ,
GTI / Schwentick / SoSe 16 C: 15. Unentscheidbare Probleme 2 . ✁✄ Folie 13
PCP ist unentscheidbar (4/7)‚ Wie gesagt: der erste Teil des Lösungsstrings ist die Konkatenation der Kodierungen
aller Konfigurationen der terminierenden Berechnung:# K0# K1# ¨ ¨ ¨ Kt´1#
#K0# K1# K2# ¨ ¨ ¨ Kt#
‚ Dies ist aber noch kein Lösungsstring, da der „u-String“ nur ein Präfix des v-Stringsist
– Der v-String ist genau um Kt# länger
– Da die Konfiguration Kt (im Gegensatz zu K0) nicht bekannt ist, kann diese Lückenicht durch eine einzelne Regel der SPCP-Eingabe überbrückt werden
‚ Stattdessen verwenden wir zusätzliche Löschregeln der Artenσja
jaund
jaσ
ja, durch
deren Anwendung immer kürzere Teilstrings von Kt entstehen, bis der v-String nurnoch zwei Zeichen länger ist als der u-String
‚ Sei dazu C0
def“ Kt und entstehe Ci`1 aus Ci jeweils durch Löschen eines Nach-
barzeichen des Zustandssymboles (ja, nein, oder h), und sei Cc P tja, nein, hu
‚ Insgesamt ergibt sich dann folgende Korrespondenz:# K0# K1# ¨ ¨ ¨ Kt´1# Kt# C1# ¨ ¨ ¨ Cc´1# Cc## “
#K0# K1# K2# ¨ ¨ ¨ Kt# C1# C2# ¨ ¨ ¨ Cc# #
GTI / Schwentick / SoSe 16 C: 15. Unentscheidbare Probleme 2 . ✁✄ Folie 14
PCP-Lösungsstring für die BeispielberechnungBeispiel (Forts.)
‚ Terminierende Berechnung von M bei Eingabe 11 als SPCP-Lösung‚ Lösungsstring:
#
#a ✄ 11#
a✄
✄b
1
1
1
1
#
#
✄
✄
b1
\d
1
1
#
#
✄
✄
\
\
d1
1d
#
#
✄
✄
\
\
1
1
1d#
f1 \ #
✄
✄
\f1
a \ \
\
\
#
#
✄
✄
a\
\b
\
\
\
\
#
#
✄
✄
\
\
b\
ja\
\
\
#
#
✄
✄
\ja
ja
\
\
\
\
#
#
✄ja
ja
\
\
\
\
#
#
ja\
ja
\
\
#
#
ja\
ja
#
#
ja##
#
‚ Verwendete Steintypen:
#
#a ✄ 11#,
a✄
✄b,
1
1,#
#,✄
✄,
b1
\d,
\
\,
d1
1d,
1d#
f1 \ #,
\f1
a \ \,
a\
\b,
b\
ja\,
\ja
ja,
✄ja
ja,
ja\
ja,
ja##
#
GTI / Schwentick / SoSe 16 C: 15. Unentscheidbare Probleme 2 . ✁✄ Folie 15
PCP ist unentscheidbar (5/7)Beweisskizze (Forts.)
‚ Sei M “ pQ,Γ, δ, sq TM, x P Σ˚
– OBdA: # R Γ‚ Die zugehörige SPCP-Eingabe hat das
Alphabet QYΓY t#u und die folgendenRegeln:
(1) Start:#
#s ✄ x#
(2) Kopierregeln:σ
σ,
für jedes σ P Γ Y t#u(3) δ-Regeln: für alle q, q1 P Q
und alle σ, σ1, τ P Γ Y t#u:
– falls δpq, σq “ pq1, σ1, Óq:qσ
q1σ1,
– falls δpq, σq “ pq1, σ1, Ñq:qσ
σ1q1
– falls δpq, σq “ pq1, σ1, Ðq:τqσ
q1τσ1, für alle τ P Γ,
Beweisskizze (Forts.)
(4) δ-Regeln für den „rechten Rand“:
Für alle q, q1 P Q und alleσ1, τ P Γ Y t#u:
‚ falls δpq, \q “ pq1, σ1, Óq:q#
q1σ1#,
‚ falls δpq, \q “ pq1, σ1, Ñq:q#
σ1q1#
‚ falls δpq, \q “ pq1, σ1, Ðq:τq#
q1τσ1#, für alle τ P Γ,
(5) Löschregeln:σja
ja,
jaσ
ja,σnein
nein,
neinσ
nein,
σh
h,
hσ
h,
für alle σ P Γ Y t#u
(6) Abschlussregeln:
ja##
#,
nein##
#,
h##
#
GTI / Schwentick / SoSe 16 C: 15. Unentscheidbare Probleme 2 . ✁✄ Folie 16
PCP ist unentscheidbar (6/7)Beweisskizze (Forts.)
‚ Falls Mpxq anhält, gibt es
K0, . . . , Kt, C0, . . . , Cc,so dass für alle i gilt:
– K0 kodiertK0pxq “ ps, px, 0qq,
– Ki $M Ki`1,
– C0 “ Kt,
– Ci`1 entsteht aus Ci durchLöschen eines Nachbarzei-chens von ja, nein, h, und
– Cc “ ja (oder nein oder h)
‚ Lösungswort:#K0#K1# ¨ ¨ ¨ Kt#C1# ¨ ¨ ¨
¨ ¨ ¨ Cc´1#Cc##
Beweisskizze (Forts.)
‚ Umgekehrt gibt es eine Lösung (mit i1 “ 1) nur,falls Mpxq anhält
‚ Denn:
– Die Regeln der Typen (2), (3) und (4) erzwingen,dass der Anfang des Lösungsstrings das An-fangsstück einer Berechnung von Mpxq kodiert
– Die Regeln (1)-(4) bewirken, dass der v-Stringzunächst immer länger als der u-String ist
– Ein Längenausgleich zwischen dem v-Stringund dem u-String ist nur durch Anwendung derRegeln aus (5) und (6) möglich
– Diese können jedoch nur angewendet werden,wenn die Berechnungsfolge eine Konfigurationmit einem Endzustand erreicht
➨ Mpxq terminiert
‚ Insgesamt haben wir also: TM-HALT ď SPCP
✎ Der vollständige, formale Beweis, dass f eine Re-duktion ist, ist natürlich etwas komplizierter
GTI / Schwentick / SoSe 16 C: 15. Unentscheidbare Probleme 2 . ✁✄ Folie 17
SPCP ď PCP: BeispielBeispiel
‚ Die PCP-Eingabe0
01,
1
11,
10
0
‚ z hat die PCP-Lösungsstrings
–0
01
10
0mit Indexfolge 1, 3 und
–1
11
10
0mit Indexfolge 2, 3
‚ Wir bilden diese PCP-Eingabe ab auf
fpzq “ @0@
@0@1,
0@
@0@1,
1@
@1@1,
1@0@
@0,
$
@$
‚ Die Indexfolge 2, 3 führt dann nicht mehr zu einer Lösung
‚ Die Indexfolge 1, 3 führt jetzt zur Lösung 1, 4, 5 mit dem Lösungs-string
@0@
@0@1
1@0@
@0
$
@$
‚ Allgemein gilt: fpzq hat genau dann eine Lösung, wenn z eineLösung mit i1 “ 1 hat
GTI / Schwentick / SoSe 16 C: 15. Unentscheidbare Probleme 2 . ✁✄ Folie 18
PCP ist unentscheidbar (7/7)Beweisskizze (Forts.)
‚ Es bleibt zu zeigen: SPCP ď PCP
‚ Wir nehmen dazu an, dass die Zeichen $ und@ nicht in den Eingaben für SPCP vorkom-men
‚ Für jeden String w “ a1 ¨ ¨ ¨ am,mit ai P Σ sei w der Stringa1@a2@ ¨ ¨ ¨ @am
‚ Wir definieren die Reduktion f wie folgt:
– Eine SPCP-Eingabeu1
v1
,u2
v2
, . . .uk
vk
wird abgebildet auf@u1@
@v1
,u1@
@v1
, . . . ,uk@
@vk
,$
@$
Beweisskizze (Forts.)
‚ Zu zeigen: f ist total und berechenbarund es gilt für alle SPCP-Eingaben z:
– z hat genau dann eine Lösung miti1 “ 1, wenn fpzq überhaupt eineLösung hat
‚ Denn:
‚ Sei p1, i2, . . . , inq eine Lösung für z
➨ p1, i2 ` 1, . . . , in ` 1, k ` 2q isteine Lösung für fpzq
‚ Sei umgekehrt pi1, . . . , inq eineLösung minimaler Länge für fpzq
➨ – i1 “ 1
– in “ k ` 2 sowie
– ij P t2, . . . , k ` 1u, fürj P t2, . . . , n ´ 1u
➨ p1, i2 ´ 1, . . . , in´1 ´ 1q ist Lösungfür z
GTI / Schwentick / SoSe 16 C: 15. Unentscheidbare Probleme 2 . ✁✄ Folie 19
Inhalt
15.1 Der Satz von Rice
15.2 Das Postsche Korrespondenzproblem
✄ 15.3 Unentscheidbare Grammatikprobleme
GTI / Schwentick / SoSe 16 C: 15. Unentscheidbare Probleme 2 . ✁✄ Folie 20
Unentscheidbare Grammatik-Probleme (1/3)Satz 15.3
‚ CFG-SCHNITT ist unentscheidbar
Beweis
‚ Dies folgt sofort aus der Unentscheidbar-keit von PCP und PCP ď CFG-SCHNITT
☞ Satz 14.2, Lemma 14.3
Definition: CFG-UNAMB
Gegeben: Kontextfreie Grammatik G
Frage: Ist G eindeutig?
‚ Eindeutige Grammatiken heißen auf Eng-lisch unambiguous
Definition: CFGEQUI
Gegeben: Kontextfreie Grammatiken G1, G2
Frage: Ist LpG1q “ LpG2q?
Definition: CFGREGEQUI
Gegeben: Kontextfreie Grammatik G, RE α
Frage: Ist LpGq “ Lpαq?
Definition: CFGALL
Gegeben: Kontextfreie Grammatik G
Frage: Ist LpGq “ Σ˚?
Definition: CFGCONT
Gegeben: Kontextfreie Grammatiken G1, G2
Frage: Ist LpG1q Ď LpG2q?
Satz 15.4
‚ Die folgenden Entscheidungsproblemesind unentscheidbar:
– CFG-UNAMB
– CFGEQUI
– CFGREGEQUI
– CFGALL
– CFGCONTGTI / Schwentick / SoSe 16 C: 15. Unentscheidbare Probleme 2 . ✁✄ Folie 21
Weitere unentscheidbare Grammatik-Probleme (2/3)Beweisskizze: CFG-UNAMB
‚ Beweis durch Reduktion:PCP ď CFG-UNAMB
‚ Sei z “ pu1, v1q, . . . , puk, vkq eineEingabe für PCP
‚ Wir definieren wieder:
– G1: S1 Ñ u1S11 | ¨ ¨ ¨ | ukS1k |u1$1 | ¨ ¨ ¨ | uk$k
– G2: S2 Ñ v1S21 | ¨ ¨ ¨ | vkS2k |v1$1 | ¨ ¨ ¨ | vk$k
‚ Klar: G1 und G2 sind jeweils eindeutig
– Die Zahlenfolge am Ende des Stringsbestimmt eindeutig den Ableitungs-baum ☞ sogar die Ableitung
‚ Sei G nun die durch Vereinigung derRegeln aus G1 und G2 entstehendeGrammatik, ergänzt um S Ñ S1 | S2
Beweisskizze (Forts.)
‚ Es gilt:
– Ist~i eine Lösung für z mit Lösungswort
w, so hat der String w$ÐÝi zwei Ablei-
tungsbäume
∗ Dabei stehtÐÝi für die umgekehrte
Konkatenation der Zahlen aus~i
– Also: z hat Lösung ñG ist nicht eindeutig
‚ Andererseits:
– Hat ein Wort w$ÐÝi zwei Ableitungsbäu-
me, so verwendet einer S1, der andereS2, also:
w$ÐÝi P LpG1q X LpG2q
➨ ~i ist Lösung von z
– Also: G ist nicht eindeutig ñz hat Lösung
‚ Insgesamt:z P PCP ðñ G nicht eindeutig
GTI / Schwentick / SoSe 16 C: 15. Unentscheidbare Probleme 2 . ✁✄ Folie 22
Weitere unentscheidbare Grammatik-Probleme (3/3)Beweisskizze (Forts.)
‚ Die Unentscheidbarkeit von CFGALL folgt aus dem Beweis derUnentscheidbarkeit von CFG-SCHNITT
‚ Zu den Grammatiken G1, G2 aus diesem Beweis lassen sichkontextfreie Grammatiken H1,H2 für die Komplemente vonLpG1q und LpG2q finden
– Denn: LpG1qR und LpG2qR sind deterministisch kontextfrei
➨ Die Komplemente von LpG1q und LpG2q sind kontextfrei!
➨ LpG1q X LpG2q “ H ðñ LpH1q Y LpH2q “ Σ˚
‚ Sei nun H die durch Vereinigung der Regeln von H1 und H2
und Hinzufügung einer neuen Startvariablen S und zusätzlichenRegeln S Ñ S1 | S2 entstehende Grammatik
➨ LpG1q X LpG2q “ H ðñ LpHq “ Σ˚
‚ Wir erhalten insgesamt: PCP ď CFGALL
‚ Daraus folgt die Unentscheidbarkeit von CFGALL
‚ Die Unentscheidbarkeit der anderen Probleme folgt leicht durchReduktion von CFGALL und damit auch von CFGALL
GTI / Schwentick / SoSe 16 C: 15. Unentscheidbare Probleme 2 . ✁✄ Folie 23
Zusammenfassung
‚ Der Satz von Rice sagt aus, dass semantische Aus-sagen über Programme nicht algorithmisch getestetwerden können
‚ Das Postsche Korrespondenzproblem ist unent-scheidbar
‚ Aus diesem Resultat lässt sich die Unentscheidbar-keit einiger Probleme nachweisen, die mit kontext-freien Sprachen zu tun haben
GTI / Schwentick / SoSe 16 C: 15. Unentscheidbare Probleme 2 . ✁✄ Folie 24