15.09.2014 Aufrufe

2x2 - Theoretische Informatik - Universität Duisburg-Essen

2x2 - Theoretische Informatik - Universität Duisburg-Essen

2x2 - Theoretische Informatik - Universität Duisburg-Essen

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Kontextsensitive und Typ-0-Sprachen<br />

Berechenbarkeitstheorie<br />

Komplexitätstheorie<br />

Berechnungsmodelle<br />

Unentscheidbarkeit<br />

Unentscheidbare Probleme<br />

Kontextsensitive und Typ-0-Sprachen<br />

Berechenbarkeitstheorie<br />

Komplexitätstheorie<br />

Berechnungsmodelle<br />

Unentscheidbarkeit<br />

Unentscheidbare Probleme<br />

Entscheidbarkeit<br />

Entscheidbarkeit<br />

Rekursive Aufzählbarkeit → Semi-Entscheidbarkeit:<br />

Gegeben: rekursiv aufzählbare Sprache L ⊆ Σ ∗ , beschrieben<br />

durch eine Funktion f .<br />

Zu zeigen: es gibt eine Turingmaschine, die bestimmt, ob ein<br />

Wort w ∈ Σ ∗ in L liegt (und nicht terminiert, falls w nicht in<br />

L liegt).<br />

Lösung: Berechne f (0), f (1), f (2), . . . , solange bis w = f (i)<br />

für ein i gilt. In diesem Fall gibt die Turingmaschine 1 aus,<br />

ansonsten terminiert sie nicht.<br />

Semi-Entscheidbarkeit → Rekursive Aufzählbarkeit:<br />

Gegeben: semi-entscheidbare Sprache L ⊆ Σ ∗ , beschrieben<br />

durch eine Turingmaschine M, die die “halbe”<br />

charakteristische Funktion berechnet.<br />

Zu zeigen: es gibt eine weitere Turingmaschine, die eine<br />

Funktion f berechnet, wie sie in der Definition der rekursiven<br />

Aufzählbarkeit beschrieben ist.<br />

Entscheidbarkeit<br />

Kontextsensitive und Typ-0-Sprachen<br />

Berechenbarkeitstheorie<br />

Komplexitätstheorie<br />

Barbara König BeKo/TI 145<br />

Berechnungsmodelle<br />

Unentscheidbarkeit<br />

Unentscheidbare Probleme<br />

Lösung: Berechnung des Funktionswertes f (i).<br />

Verwende zwei Zähler, j und l, die zu Beginn beide auf 0<br />

gesetzt sind. Der Zähler l wird sukzessive erhöht und für<br />

jeden Wert von l wird folgendes durchgeführt:<br />

Simuliere die Maschine M l Schritte lang auf allen<br />

Wörtern der Länge kleiner gleich l.<br />

(Reihenfolge: zunächst Wörter der Länge 0, dann<br />

Länge 1, . . . , dann Länge l. Innerhalb von Wörtern<br />

der gleichen Länge wird die alphabetische Ordnung<br />

gewählt.)<br />

Für jedes Wort, bei dem der Wert 1 ausgegeben wird, wird der<br />

Zähler j um eins erhöht. Sobald i = j gilt, wird das nächste<br />

akzeptierte Wort als Funktionswert f (i) zurückgegeben.<br />

Barbara König BeKo/TI 147<br />

Entscheidbarkeit<br />

Begründung:<br />

Kontextsensitive und Typ-0-Sprachen<br />

Berechenbarkeitstheorie<br />

Komplexitätstheorie<br />

Barbara König BeKo/TI 146<br />

Berechnungsmodelle<br />

Unentscheidbarkeit<br />

Unentscheidbare Probleme<br />

Sei w ein Wort der Sprache L. Wir nehmen an, dass w die<br />

Länge n hat (|w| = n) und von M innerhalb von k Schritten<br />

akzeptiert wird.<br />

Dann wird w akzeptiert, wenn der Zähler l irgendwann<br />

max{n, k} erreicht. Daher gibt es einen Index i, bei dem w<br />

zurückgegeben wird.<br />

Bemerkung: es kann passieren, dass bestimmte Wörter mehrfach<br />

ausgegeben werden. Das ist nach Definition der rekursiven<br />

Aufzählbarkeit erlaubt.<br />

Barbara König BeKo/TI 148

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!