Wie Sylvain Peyronnet bereits erwähnte, ist Logik ein wichtiger Bestandteil der theoretischen Informatik. Es reicht jedoch nicht aus, Logik aus Lehrbüchern zu lernen, die auf reine Mathematiker zugeschnitten sind. Mit anderen Worten, es ist auch wichtig, Logik aus einer "Informatik" -Perspektive zu lernen.
Finite-Modell-Theorie
Wir wollen Techniken lernen, die mit endlichen Strukturen umgehen. Es ist bekannt, dass viele traditionelle Werkzeuge aus der Modelltheorie, z. B. Kompaktheit und Löwenheim-Skolem-Theorem, nicht auf endliche Modelle anwendbar sind . Dies führt uns zum Studium der endlichen Modelltheorie . Für diesen Bereich empfehle ich die folgenden ausgezeichneten Bücher:
Ein Teilbereich der endlichen Modelltheorie ist die deskriptive Komplexität , bei der wir Komplexitätsklassen nach der Art der Logik charakterisieren möchten, die zur Definition der Sprachen erforderlich ist. Die endgültige Referenz für die beschreibende Komplexität lautet:
Komplexität beweisen
Ein weiteres wichtiges Gebiet der Logik in der Informatik ist Proof Complexity , eine Untersuchung der Drei-Wege-Beziehung zwischen Komplexitätsklassen, schwachen logischen Systemen und Aussagenbeweissystemen. Die folgenden zwei verwandten Aspekte werden betrachtet: (i) die Komplexität von Beweisen von Aussagenformeln und (ii) das Studium von schwachen Theorien der Arithmetik, die als gebundene Arithmetik bezeichnet werden .
Aspekt (i) hat mit der folgenden Frage zu tun: "Gibt es ein Satzbeweissystem, in dem jede Tautologie einen Beweis eines Größenpolynoms in der Größe der Tautologie hat?"
Aspekt (ii) untersucht logische Systeme, die eingeschränktes Denken auf der Grundlage von Konzepten aus der Komplexität von Berechnungen verwenden. Mit anderen Worten, wir ordnen jeder Komplexitätsklasse eine logische Theorie , wobei die nachweislich gesamten Funktionen in genau die Funktionen in der Komplexitätsklasse . Eine aktuelle Entwicklung ist ein neues Forschungsprogramm namens "Bounded Reverse Mathematic", das von Stephen Cook und Phuong Nguyen vorgeschlagen wurde. Ziel ist es, Theoreme (von Interesse für die Informatik) auf der Grundlage der (minimalen) rechnerischen Komplexität von Konzepten zu klassifizieren, die erforderlich sind, um sie zu beweisen .V C V C CCVCVCC
Aspekte (i) und (ii) sind eng mit dem Begriff der bezogenen Aussagen Übersetzung vorgeschlagen in Cook 1975 Papier , die die Gleichung Theorie eingeführt für polytime Funktionen und zeigte , wie Sätze in kann in übersetzt werden Familien von Tautologien, die im erweiterten Frege-Beweissystem polynomielle Längenbeweise haben.P VPVPV
Für exzellente Umfragen zur Beweiskomplexität empfehle ich die folgenden zwei Bücher:
Das Buch von Cook und Nguyen ist im Wesentlichen in sich abgeschlossen und der gesamte logische Hintergrund ist in den Kapiteln 2 und 3 enthalten. Kapitel 9 ist besonders interessant, da die Autoren eine äußerst einfache Methode eingeführt haben, um Ihre eigene Theorie für alle Komplexitätsklassen innerhalb von . Bei dieser Methode müssen wir nur ein zusätzliches Axiom zu einer hinzufügen , wobei das Axiom lediglich die Existenz einer Lösung für ein vollständiges Problem der Komplexitätsklasse angibt. Ziemlich erstaunlich!V 0PV0
Das Buch von Krajíček ist etwas herausfordernder, da er davon ausgeht, dass die Leser bereits mit mathematischer Logik und Modelltheorie vertraut sind (oder bereit sind, den notwendigen Hintergrund zu erlernen). Aber Sie werden viel lernen, wenn Sie dieses Buch lesen und verstehen.