Die Reduktion Hilberts 10. Problem

Ähnliche Dokumente
Mächtigkeit von WHILE-Programmen

Entscheidungsprobleme. Berechenbarkeit und Komplexität Entscheidbarkeit und Unentscheidbarkeit. Die Entscheidbarkeit von Problemen

NP-Vollständigkeit. Krautgartner Martin ( ) Markgraf Waldomir ( ) Rattensberger Martin ( ) Rieder Caroline ( )

Die Komplexitätsklassen P und NP

Universität Koblenz-Landau, Abteilung Koblenz FB 4 Informatik. Seminar Entscheidungsverfahren für logische Theorien. Endliche Modelle.

Zur Vereinfachung betrachten wir nun nur noch Funktionen f, die einen Funktionswert f nµberechnen. Sie werden alle in einer Tabelle dargestellt:

Theoretische Informatik 2

Wortproblem für kontextfreie Grammatiken

Theoretische Informatik

Theoretische Grundlagen der Informatik

Literatur. Dominating Set (DS) Dominating Sets in Sensornetzen. Problem Minimum Dominating Set (MDS)

Theoretische Informatik II

Formale Grundlagen der Informatik 1 Kapitel 12 Zusammenfassung

Numerische Verfahren und Grundlagen der Analysis

Lösungsblatt zur Vorlesung. Kryptanalyse WS 2009/2010. Blatt 6 / 23. Dezember 2009 / Abgabe bis spätestens 20. Januar 2010, 10 Uhr (vor der Übung)

11. Primfaktorzerlegungen

Grundlagen der Informatik II. Teil I: Formale Modelle der Informatik

9.2. DER SATZ ÜBER IMPLIZITE FUNKTIONEN 83

Zusammenfassung Grundzüge der Informatik 4

7 Rechnen mit Polynomen

Einführung in die Theoretische Informatik

Grundlagen der Theoretischen Informatik

Der Zwei-Quadrate-Satz von Fermat

Einführung. Vorlesungen zur Komplexitätstheorie: Reduktion und Vollständigkeit (3) Vorlesungen zur Komplexitätstheorie. K-Vollständigkeit (1/5)

Die Gleichung A x = a hat für A 0 die eindeutig bestimmte Lösung. Für A=0 und a 0 existiert keine Lösung.

Künstliche Intelligenz Maschinelles Lernen

IP=PSPACE. t Joachim Kneis t IP = PSPACE t 16. Dezember 2003 t

Grammatiken und die Chomsky-Hierarchie

Theoretische Informatik

Theoretische Informatik 1

Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester 2013

Gibt es verschiedene Arten unendlich? Dieter Wolke

Mathematischer Vorbereitungskurs für Ökonomen

Komplexität und Komplexitätsklassen

Bestimmung einer ersten

Teil II. Nichtlineare Optimierung

Institut für Informatik. Rheinische Friedrich-Wilhelms-Universität Bonn

Das Briefträgerproblem

Zusammenfassung. 1 Wir betrachten die folgende Signatur F = {+,,, 0, 1} sodass. 3 Wir betrachten die Gleichungen E. 4 Dann gilt E 1 + x 1

Deterministische Turing-Maschinen (DTM) F3 03/04 p.46/395

2. Universelle Algebra

Das P versus N P - Problem

Approximationsalgorithmen

Beispiel Wenn p ein Polynom vom Grad größer gleich 1 ist, ist q : C Ĉ definiert durch q (z) =

2.11 Kontextfreie Grammatiken und Parsebäume

Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I. Ulrich Furbach. Sommersemester 2014

Grundlagen der höheren Mathematik Einige Hinweise zum Lösen von Gleichungen

Algorithmen und Komplexität Teil 1: Grundlegende Algorithmen

Algorithmen und Berechnungskomplexität I

3.3 Eigenwerte und Eigenräume, Diagonalisierung

Nichtlineare Optimierung ohne Nebenbedingungen

Vorkurs Mathematik Übungen zu Polynomgleichungen

2: Zahlentheorie / Restklassen 2.1: Modulare Arithmetik

Ergänzungen zur Analysis I

b) Eine nd. k-band-turingmaschine M zur Erkennung einer m-stelligen Sprache L (Σ ) m ist ein 8-Tupel

Elemente der Analysis II

THEORETISCHE INFORMATIK

Rekursionen. Georg Anegg 25. November Methoden und Techniken an Beispielen erklärt

Wintersemester 2005/2006 Gedächtnisprotokoll der mündlichen Prüfung

Motivation. Formale Grundlagen der Informatik 1 Kapitel 10. Motivation. Motivation. Bisher haben wir mit TMs. Probleme gelöst/entschieden/berechnet.

Seminararbeit für das SE Reine Mathematik- Graphentheorie

Wissensbasierte Systeme

Oft kommt es darauf an, Potenzen a n mod m zu berechnen. Dabei kann n eine sehr groÿe Zahl sein.

GF(2 2 ) Beispiel eines Erweiterungskörpers (1)

Konfiguration einer TM als String schreiben: Bandinschrift zwischen den Blank-Zeichen Links von der Kopfposition Zustand einfügen.

3. Ziel der Vorlesung

Elemente der Analysis I Kapitel 2: Einführung II, Gleichungen

Approximationsalgorithmen

Gleichungen - Aufgabenstellung und Lösungsstrategien

Wie viele Nullstellen hat ein Polynom?

Division Für diesen Abschnitt setzen wir voraus, dass der Koeffizientenring ein Körper ist. Betrachte das Schema

Umgekehrte Kurvendiskussion

JOHANNES BONNEKOH. Analysis. Allgemeine Hochschulreife und Fachabitur

Komplexitätstheorie Einführung und Überblick (Wiederholung)

DIFFERENTIALGLEICHUNGEN

effektives Verfahren ~ Algorithmus (Al Chwarismi) Regelsystem, Methode, Rezept, Gebrauchsanleitung Programm (griech. προγραφω, vor-schreiben)

3 Sicherheit von Kryptosystemen

Beispiel. Bsp.: Betrachte Schlussweise in: (3) folgt aus (1) und (2), siehe z.b. Resolutionsregel. was ist mit folgender Schlußweise:

Rekursion und Iteration - Folgen und Web-Diagramme

Grammatiken. Einführung

Grundlagen der Theoretischen Informatik, SoSe 2008

4.9 Deterministische Kellerautomaten Wir haben bereits definiert: Ein PDA heißt deterministisch (DPDA), falls

Automaten und formale Sprachen: Vorlesungsskript G. Brewka, A. Nittka

Steinerbäume. Seminarausarbeitung Hochschule Aalen Fakultät für Elektronik und Informatik Studiengang Informatik Schwerpunkt Software Engineering

Optimalitätskriterien

Codierungstheorie Rudolf Scharlau, SoSe

Zusammenfassung. Satz. 1 Seien F, G Boolesche Ausdrücke (in den Variablen x 1,..., x n ) 2 Seien f : B n B, g : B n B ihre Booleschen Funktionen

Codierung, Codes (variabler Länge)

Theoretische Grundlagen des Software Engineering

TEIL III: FORMALE SPRACHEN

Literatur zu geometrischen Konstruktionen

Grundbegriffe der Informatik

Zusammenstellung von Fragen der Vordiplomsprüfung Theoretische Informatik (Kurse 1653/54)

Mathematikaufgaben zur Vorbereitung auf das Studium

Automaten, Formale Sprachen und Berechenbarkeit I. Skript zur Vorlesung im WS 2001/02 an der TU München

Theoretische Grundlagen der Informatik

Kapitel 4. Euklidische Ringe und die Jordansche Normalform. 4.1 Euklidische Ringe

Übungsaufgaben und Lösungen. zur Vorlesung. Theoretische Grundlagen der Informatik

Sprachen/Grammatiken eine Wiederholung

Die Cantor-Funktion. Stephan Welz

Transkript:

Die Reduktion Hilberts 10. Problem Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität RWTH Aachen 8. November 2010 Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und Komplexität 8. November 2010 1 / 28

Wdh: Semi-Entscheidbarkeit Eine Sprache L wird von einer TM M entschieden, wenn M auf jeder Eingabe hält, und M genau die Wörter aus L akzeptiert. Eine Sprache L, für die eine TM existiert, die L entscheidet, wird als rekursiv oder auch als entscheidbar bezeichnet. Eine Sprache L wird von einer TM M erkannt, wenn M jedes Wort aus L akzeptiert, und M kein Wort akzeptiert, das nicht in L enthalten ist. Def: Eine Sprache L, für die eine TM existiert, die L erkennt, wird als semi-entscheidbar bezeichnet. Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und Komplexität 8. November 2010 2 / 28

Wdh: Rekursive Aufzählbarkeit S T E U E R U N G (Zustand & Kopfpos.)...... hihihi blubblubblub blablabla D R U C K E R.. A r b e i t s b a n d... A r b e i t s b a n d... A r b e i t s b a n d... A r b e i t s b a Def: Eine Sprache für die es einen Aufzähler gibt, heißt rekursiv aufzählbar. Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und Komplexität 8. November 2010 3 / 28

Wdh: rekursiv aufzählbar = semi-entscheidbar Satz Eine Sprache L ist genau dann semi-entscheidbar, wenn sie rekursiv aufzählbar ist. Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und Komplexität 8. November 2010 4 / 28

Wdh: Aufteilung der Sprachen nach ihrer Berechenbarkeit Korollar Für jede Sprache L gilt eine der vier folgenden Eigenschaften. 1 L ist rekursiv und sowohl L als auch L sind rekursiv aufzählbar. 2 L ist rekursiv aufzählbar, aber L ist nicht rekursiv aufzählbar 3 L ist rekursiv aufzählbar, aber L ist nicht rekursiv aufzählbar 4 sowohl L als auch L sind nicht rekursiv aufzählbar Beispiele: Kategorie 1: Graphzusammenhang, Hamiltonkreis Kategorie 2: H, H ɛ, D Kategorie 3: D, H, H ɛ Kategorie 4: H all = { M M hält auf jeder Eingabe} Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und Komplexität 8. November 2010 5 / 28

Wdh: Berechenbarkeitslandschaft rek. aufz. Probleme z.b. H rekursive Probleme Probleme mit rek. aufz. Komplement z.b. D nicht rek. aufz. Probleme, deren Komplement ebenfalls nicht rek. aufz. ist z.b. H all Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und Komplexität 8. November 2010 6 / 28

Allgemeines Halteproblem Das allgemeine Halteproblem ist definiert als H all = { M M hält auf jede Eingabe} Wie kann man nachweisen, dass sowohl H all als auch H all nicht rekursiv aufzählbar sind? Wir verwenden eine spezielle Variante der Unterprgrammtechnik, die Redukion. Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und Komplexität 8. November 2010 7 / 28

Die Reduktion Definition Es seien L 1 und L 2 Sprachen über einem Alphabet Σ. Dann heißt L 1 auf L 2 reduzierbar, Notation L 1 L 2, wenn es eine berechenbare Funktion f : Σ Σ gibt, so dass für alle x Σ gilt x L 1 f (x) L 2. Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und Komplexität 8. November 2010 8 / 28

Die Reduktion Lemma Falls L 1 L 2 und L 2 rekursiv aufzählbar ist, so ist L 1 rekursiv aufzählbar. Beweis: Wir konstruieren eine TM M 1, die L 1 erkennt, durch Unterprogrammaufruf einer TM M 2, die L 2 erkennt: Die TM M 1 berechnet f (x) aus ihrer Eingabe x. Dann simuliert M 1 die TM M 2 mit der Eingabe f (x) und übernimmt das Akzeptanzverhalten. Korrektheit: M 1 akz x M 2 akz f (x) f (x) L 2 x L 1. Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und Komplexität 8. November 2010 9 / 28

Die Reduktion x M 1 f(x) M 2 accept reject Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und Komplexität 8. November 2010 10 / 28

Die Reduktion Es gilt übrigens auch Lemma Falls L 1 L 2 und L 2 rekursiv ist, so ist L 1 rekursiv. Dieses Lemma folgt direkt daraus, dass die Reduktion eine spezialisierte Variante der Unterprogrammtechnik ist. Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und Komplexität 8. November 2010 11 / 28

Anwendung der Reduktion H ɛ ist nicht rekursiv, aber rekursiv aufzählbar. Folglich ist H ɛ nicht rekursiv aufzählbar. Wir zeigen nun Behauptung A H ɛ H all Behauptung B H ɛ H all Wäre also H all oder H all rekursiv aufzählbar, so wäre auch H ɛ rekursiv aufzählbar. Somit folgt Satz Sowohl H all als auch H all sind nicht rekursiv aufzählbar. Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und Komplexität 8. November 2010 12 / 28

Beweis von Behauptung A: H ɛ H all Zur Durchführung der Reduktion gehen wir in zwei Schritten vor: 1) Wir beschreiben eine berechenbare Funktion f, die Ja-Instanzen von H ɛ auf Ja-Instanzen von H all abbildet, und Nein-Instanzen von H ɛ auf Nein-Instanzen von H all abbildet. 2) Für die Korrektheit zeigen wir: a) w H ɛ f (w) H all b) w H ɛ f (w) H all Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und Komplexität 8. November 2010 13 / 28

Beweis von Behauptung A: H ɛ H all Beschreibung der Funktion f : Sei w die Eingabe für H ɛ. Wenn w keine gültige Gödelnummer ist, so sei f (w) = w. Falls w = M für eine TM M, so sei f (w) die Gödelnummer einer TM M ɛ mit der folgenden Eigenschaft: M ɛ ignoriert die Eingabe und simuliert M mit der Eingabe ɛ. Die Funktion f ist offensichtlich berechenbar. Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und Komplexität 8. November 2010 14 / 28

Beweis von Behauptung A: H ɛ H all Korrektheit Korrektheit: Falls w keine Gödelnummer ist, so ist die Korrektheit klar, denn in diesem Fall gilt w H ɛ und f (w) H all. Sei nun w = M für eine TM M, so dass f (w) = M ɛ. Es gilt w H ɛ M hält auf der Eingabe ɛ M ɛ hält auf jeder Eingabe Mɛ H all f (w) H all. Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und Komplexität 8. November 2010 15 / 28

Beweis von Behauptung A: H ɛ H all Korrektheit w H ɛ M hält nicht auf Eingabe ɛ Mɛ hält auf keiner Eingabe Mɛ H all f (w) H all. Also gilt w H ɛ f (w) H all und somit ist die Funktion f korrekt konstruiert. Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und Komplexität 8. November 2010 16 / 28

Beweis von Behauptung B: H ɛ H all Wir gehen wiederum in zwei Schritten vor: 1) Wir beschreiben eine berechenbare Funktion f, die Ja-Instanzen von H ɛ auf Ja-Instanzen von H all abbildet, und Nein-Instanzen von H ɛ auf Nein-Instanzen von H all abbildet. 2) Für die Korrektheit zeigen wir: a) w H ɛ f (w) H all b) w H ɛ f (w) H all Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und Komplexität 8. November 2010 17 / 28

Beweis von Behauptung B: H ɛ H all Beschreibung der Funktion f : Sei w die Eingabe für H ɛ. Sei w irgendein Wort aus H all. Wenn w keine gültige Gödelnummer ist, so sei f (w) = w. Falls w = M für eine TM M, so sei f (w) die Gödelnummer einer TM M M, die sich auf Eingaben der Länge i wie folgt verhält: M M simuliert die ersten i Schritte von M auf der Eingabe ɛ. Wenn M innerhalb dieser i Schritte hält, dann geht M M in eine Endlosschleife, ansonsten hält M M. Die Funktion f ist offensichtlich berechenbar. Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und Komplexität 8. November 2010 18 / 28

Beweis von Behauptung B: H ɛ H all Korrektheit Falls w keine Gödelnummer ist die Korrektheit klar, denn in diesem Fall gilt w H ɛ und f (w) = w H all. Sei nun w = M für eine TM M, so dass f (w) = M M. Es gilt w H ɛ M hält auf der Eingabe ɛ i: M hält innerhalb von i Schritten auf ɛ i: M M hält nicht auf Eingaben der Länge i hält nicht auf jeder Eingabe M M f (w) = M M H all. Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und Komplexität 8. November 2010 19 / 28

Beweis von Behauptung B: H ɛ H all w H ɛ M hält nicht auf der Eingabe ɛ i: M hält innerhalb von i Schritten auf ɛ i: M M hält auf Eingaben der Länge i hält auf jeder Eingabe M M f (w) = M M H all. Also gilt w H ɛ f (w) H all und somit ist die Funktion f korrekt konstruiert. Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und Komplexität 8. November 2010 20 / 28

Hilberts zehntes Problem Im Jahr 1900 präsentierte der Mathematiker David Hilbert 23 mathematische Probleme auf einem Kongress in Paris. Hilberts zehntes Problem (im Originalwortlaut) Eine diophantische Gleichung mit irgendwelchen Unbekannten und mit ganzen rationalen Zahlenkoeffizienten sei vorgelegt: Man soll ein Verfahren angeben, nach welchem sich mittels einer endlichen Anzahl von Operationen entscheiden läßt, ob die Gleichung in den ganzen rationalen Zahlen lösbar ist. Die ganzen rationalen Zahlen, von denen in diesem Problem die Rede ist, sind die ganzen Zahlen aus Z, wie wir sie kennen. Diophantische Gleichungen bezeichnen Gleichungen über Polynomen in mehreren Variablen. Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und Komplexität 8. November 2010 21 / 28

Diophantische Gleichungen Ein Term ist ein Produkt aus Variablen mit einem konstanten Koeffizienten, z.b. ist 6 x x x y z z bzw. 6x 3 yz 2 ein Term über den Variablen x, y, z mit dem Koeffizienten 6. Ein Polynom ist eine Summe von Termen, z.b. 6x 3 yz 2 + 3xy 2 x 3 10. Eine diophantische Gleichung setzt ein Polynom gleich Null. Die Lösungen der Gleichung entsprechen also den Nullstellen des Polynoms. Obiges Polynom hat beispielsweise die Nullstelle (x, y, z) = (5, 3, 0). Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und Komplexität 8. November 2010 22 / 28

Formulierung als Entscheidungsproblem Hilberts zehntes Problem (in unseren Worten) Beschreibe einen Algorithmus, der entscheidet, ob ein gegebenes Polynom mit ganzzahligen Koeffizienten eine ganzzahlige Nullstelle hat. Die diesem Entscheidungsproblem zugrundeliegende Sprache ist N = { p p ist ein Polynom mit einer ganzzahligen Nullstelle}. Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und Komplexität 8. November 2010 23 / 28

Rekursive Aufzählbarkeit von N Gegeben sei ein Polynom p mit l Variablen. Der Wertebereich von p entspricht der abzählbar unendlichen Menge Z l. Der folgende Algorithmus erkennt N: Zähle die l-tupel aus Z l in kanonischer Reihenfolge auf und werte p für jedes dieser Tupel aus. Akzeptiere sobald eine der Auswertungen den Wert Null ergibt. Fazit: N ist rekursiv aufzählbar. Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und Komplexität 8. November 2010 24 / 28

Ist N entscheidbar? Diskussion Falls wir eine obere Schranke für die Absolutwerte der Nullstellen hätten, so bräuchten wir nur eine endliche Menge von l-tupeln aufzählen, und N wäre somit entscheidbar. Für Polynome über nur einer Variable gibt es tatsächlich eine derartige obere Schranke: Für ein Polynom der Form p(x) = a k x k + a k 1 x k 1 + + a 1 x + a 0 mit ganzzahligen Koeffizienten gilt p(x) = 0, x Z x teilt a 0. (Warum?) Also gibt es keine Nullstelle mit Absolutwert größer als a 0. Eingeschränkt auf Polynome mit nur einer Variable ist das Nullstellenproblem damit entscheidbar. Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und Komplexität 8. November 2010 25 / 28

Ist N entscheidbar? Diskussion Für Polynome mit mehreren Variablen gibt es leider keine obere Schranke für die Absolutwerte der Nullstellen. Um das einzusehen, betrachte beispielsweise das Polynom x + y. Aber vielleicht gibt es ja immer eine Nullstelle mit kleinen Absolutwerten und somit eine obere Schranke für die Nullstelle mit den kleinsten Absolutwerten? Oder vielleicht gibt es ganz andere Möglichkeiten einem Polynom anzusehen, ob es eine ganzzahlige Nullstelle hat? Erst knapp siebzig Jahre nachdem Hilbert sein Problem präsentiert hat, konnte Yuri Matijasevič all diese Fragen beantworten, und zwar negativ! Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und Komplexität 8. November 2010 26 / 28

Unentscheidbarkeit des Nullstellenproblems Hilbert hat die folgende Antwort nicht erwartet. Satz von Matijasevič (1970) Das Problem, ob ein ganzzahliges Polynom eine ganzzahlige Nullstelle hat, ist unentscheidbar. Damit ist Hilberts Aufgabenstellung unlösbar. Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und Komplexität 8. November 2010 27 / 28

Unentscheidbarkeit des Nullstellenproblems Der Beweis des Satzes von Matijasevič beruht auf einer Kette von Reduktionen durch die letztendlich das Halteproblem H auf das Nullstellenproblem N reduziert wird. Yuri Matijasevič hat lediglich das letzte Glied dieser Kette geschlossen. Andere wichtige Beiträge zu diesem Ergebnis wurden zuvor von Martin Davis, Julia Robinson und Hilary Putnan erbracht. Leider ist der Beweis zu komplex, um ihn im Rahmen dieser Vorlesung präsentieren zu können. Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und Komplexität 8. November 2010 28 / 28