Logik für Informatik Sommersemester 2003 Mathias Kegelmann Technische Universität Darmstadt Fachbereich Mathematik 13. Mai 2003 IV. Kompaktheitssatz A Letzte Woche haben wir die Korrektheit und Vollständigkeit des Kalküls des Natürlichen Schließens bezüglich der Wahrheitswerte-Semantik diskutiert. Dabei haben wir gesehen, dass syntaktische (formal beweisbare) Konsequenz und semantische Konsequenz zusammenfallen, was man manchmal knapp wie folgt schreibt: `= Etwas genauer ausgedrückt ist der Zusammenhang der, dass für Γ ⊆ PROP und A ∈ PROP genau dann Γ ` A herleitbar ist, wenn Γ A gilt. Der Ausdruck Γ ` A macht aber nur für endliche Mengen Γ Sinn, da Sequenzen mit unendlichen Prämissenmengen nicht definiert sind; die semantische Konsequenz Γ A ist dagegen für beliebige Teilmengen Γ ⊆ PROP definiert. Wie wir heute sehen werden, ist das aber kein wirkliches Problem. 1 Erfüllbarkeit Beim so genannten Kompaktheitssatz, den wir gleich zeigen wollen, geht es um die Erfüllbarkeit unendlicher Mengen. Wie sich zeigen wird, entscheidet sich diese allein daran, ob alle endlichen Teilmengen erfüllbar sind. Die Definition der Erfüllbarkeit ist ganz ähnlich wie die der semantischen Konsequenz (Definition 1.6): Definition 4.1. Eine Menge Γ ⊆ PROP von Propositionen heißt erfüllbar, wenn es eine Variablenbelegung gibt, die alle Aussagen in Γ wahr macht, d.h. wenn man also eine Belegung ρ : ATOM → {w, f} so finden kann, dass JGKρ = w für alle G ∈ Γ gilt. Bemerkung. Wie man durch Aufdröseln der Definition leicht nachprüft, ist Γ genau dann erfüllbar, wenn Γ 2 ⊥ gilt. Somit handelt es sich bei Erfüllbarkeit um das semantische Analogon der syntaktischen Konsistenz Γ 0 ⊥, die besagt, dass man aus Γ keinen Widerspruch herleiten kann. Satz 4.2 (Kompaktheitssatz). Sei Γ ⊆ PROP eine Menge von Propositionen. Dann ist Γ genau dann erfüllbar, wenn jede endliche Teilmenge Γ0 ⊆ Γ erfüllbar ist.1 Beweis. Die eine Richtung ist trivial: Ist Γ eine erfüllbare Menge, dann ist auch jede Teilmenge Γ0 ⊆ Γ erfüllbar, nämlich mit genau der gleichen Belegung wie Γ. Das gilt insbesondere für endliche Teilmengen. Sei nun umgekehrt jede endliche Teilmenge Γ0 ⊆ Γ erfüllbar. Wir wollen nun zeigen, dass auch Γ erfüllbar ist und werden dazu sukzessive eine Belegung ρ : ATOM = {p0 , p1 , p2 , . . .} → {w, f} konstruieren, die alle Aussagen in Γ wahr macht. Das tun wir in mehreren Schritten. Zunächst zerlegen wir Γ in Mengen Γ0 ⊆ Γ1 ⊆ Γ2 ⊆ · · · , wobei Γn die Menge der Elemente aus Γ bezeichnen soll, die als atomare Aussagen nur p0 , p1 , . . . , pn enthalten. Schreiben wir wie zuvor TΣ (X) für die Aussagen, die nur Atome aus X benutzen, so können wir die Γn als Γn := Γ ∩ TΣ ({p0 , . . . , pn }) 0 ausdrücken. Es ist klar, dass für n ≤ n0 immer Γn ⊆ Γn gilt, und da in jeder Aussage A ∈ Γ nur endliche viele Atome vorkommen, gibt es ein n, sodass A ∈ Γn . Also gilt [ Γ= Γn . n∈N 1 Man sagt dazu auch, dass Γ endlich erfüllbar ist. Wir behaupten nun, dass alle Γn erfüllbar sind. Das ist nicht unmittelbar klar, da diese Mengen durchaus unendlich sein können. Die Aussagen in Γn enthalten aber nur die atomaren Aussagen p0 , . . . , pn . Sind deshalb ρ, ρ0 : ATOM → {w, f} zwei Belegungen, die sich erst ab frühestens pn+1 unterscheiden, die also auf p0 , . . . , pn übereinstimmen, so stimmen J·Kρ und J·Kρ0 auf Γn überein. Es gibt also höchstens 2n+1 Bewertungen ρ, sodass die induzierten Abbildungen J·Kρ auf Γn verschieden sind. Wäre Γn unerfüllbar, so könnte man für jede dieser Bewertungen ρi , (i = 1, . . . , 2n+1 ), ein Ai ∈ Γn mit JAi Kρi = f finden. Dann wäre aber auch die endliche Teilmenge {A1 , . . . , A2n+1 } ⊆ Γn ⊆ Γ unerfüllbar, was nach Voraussetzung nicht sein kann. Also ist Γn erfüllbar. Die Erfüllbarkeit der Γn verwenden wir nun dazu, eine Belegung ρ : ATOM → {w, f} zu konstruieren, indem wir nacheinander ρ(p0 ), dann ρ(p1 ), usw. angeben. Dazu beginnen wir wie folgt. Wir suchen einen Wert a0 ∈ {w, f} für ρ(p0 ) und wir behaupten, dass wir a0 so finden können, dass es für jedes n ∈ N eine Belegung ρ gibt, die ρ(p0 ) = a0 und erfüllt und die alle Aussagen in Γn wahr macht. Könnten wir nämlich weder a0 = w noch a0 = f wählen, dann gäbe es ein n ∈ N, für das alle Belegungen ρ mit ρ(p0 ) = w eine Aussage in Γn nicht wahr machen würde. Genauso gäbe es dann aber ein n0 ∈ N, für das alle Belegungen 0 0 ρ mit ρ(p0 ) = f eine Aussage in Γn nicht wahr machten. Eine der beiden Mengen Γn und Γn enthält die andere, und da jede Belegung ρ entweder ρ(p0 ) = w oder ρ(p0 ) = f erfüllen muss, wäre die größere Menge somit unerfüllbar, was aber nach Voraussetzung nicht sein kann. Also kann man a0 mit der gewünschten Eigenschaft wählen. Seien nun a0 , . . . , ak so gewählt, dass es für jedes n ≥ k eine Belegung ρ mit ρ(pi ) = ai , für i = 0, . . . , k, gibt, die alle Aussagen in Γn wahr macht. Wir zeigen nun mit dem gleichen Argument wie bei der Konstruktion von a0 , dass wir auch ak+1 mit dieser Eigenschaft wählen können. Wäre nämlich sowohl ak+1 = w als auch ak+1 = f unmöglich, so gäbe es n, n0 ∈ N, sodass für alle Belegungen ρ mit ρ(pi ) = ai , für i = 0, . . . , k, im Fall ρ(pk+1 ) = w eine Aussage in Γn unter ρ nicht wahr wäre und für den Fall 0 0 ρ(pk+1 ) = f eine Aussage in Γn unter ρ nicht gelten würde. Eine der beiden Mengen Γn und Γn enthält wieder die andere, und wir könnten wie zuvor schließen dass keine Belegung ρ mit ρ(pi ) = ai , für i = 0, . . . , k alle Aussagen dieser größeren Menge wahr machen könnte, was aber nach Voraussetzung nicht sein kann. Somit erhalten wir induktiv eine Folge (ai )i∈N und wir setzen nun ρ(pi ) := ai . Wir müssen noch zeigen, dass diese Belegung ρ alle Aussagen aus Γ wahr macht und somit die Erfüllbarkeit von Γ zeigt. Für jedes A ∈ Γ gibt es ein n ∈ N mit A ∈ Γn . Der Wahrheitswert JAKρ hängt aber nur von den Werten ρ(p0 ) = a0 , . . . , ρ(pn ) = an ab, aber diese ai waren ja gerade so gewählt, dass JAKρ = w. 2 Vollständigkeit für unendliche Prämissenmengen Mit Hilfe des Kompaktheitssatzes können wir nun zeigen, dass auch die semantische Konsequenzen immer aufgrund endlicher Prämissenmengen zustande kommen. Korollar 4.3. Sei Γ ⊆ PROP eine Menge von Propositionen und A ∈ PROP. Dann gilt genau dann Γ A, wenn es eine Teilmenge2 Γ0 ⊆ Γ mit Γ0 ` A gibt. Beweis. Gilt Γ0 ` A für eine Teilmenge Γ0 ⊆ Γ, dann gilt nach dem Korrektheitssatz (Satz 3.1) Γ0 A und somit auch Γ A. Gelte nun umgekehrt Γ A. Dann ist Γ ∪ {¬A} unerfüllbar und aufgrund des Kompaktheitssatzes muss es deshalb eine endliche Teilmenge Γ0 ⊆ Γ ∪ {¬A} geben, die bereits unerfüllbar ist. Damit ist Γ0 ∪ {¬A} auch unerfüllbar und somit gilt Γ0 A. Wegen des Vollständigkeitssatzes (Satz 3.8) impliziert das Γ0 ` A. Wir können das auch sofort wie folgt umformulieren: Korollar 4.4. Sei Γ ⊆ PROP eine Menge von Propositionen und A ∈ PROP. Dann gilt genau dann Γ A, wenn es eine endliche Teilmenge Γ0 ⊆ Γ mit Γ0 A gibt. 2 Die Menge Γ0 ist dann notwendigerweise endlich. 3 Anwendung Der Kompaktheitssatz hat viele Anwendungen auch außerhalb der Logik. Wir betrachten ein typisches Beispiel, in dem man ein mathematisches Problem aussagenlogisch kodiert, um das Problem so auf den Kompaktheitssatz zu reduzieren. 3.1 Beispiel: Heiratsproblem Seien A und B Mengen sowie R ⊆ A × B eine Relation. Man kann zur Veranschaulichung z.B. A als Menge von Frauen und B eine Menge von Männern auffassen, wobei a R b bedeutet, dass a bereit ist, b zu heiraten. Man versucht nun ein Matching zu finden, sodass jede Frau einen Mann heiratet, den sie auch heiraten möchte, aber natürlich so, dass jeder Mann nur von einer Frau geheiratet wird. Wir können das wie folgt mathematisch formalisieren: Wir suchen eine injektive Funktion f : A → B, sodass für alle a ∈ A stets a R f (a) gilt. Eine solche Funktion nennen wir dann ein Matching. 3.2 Unendliche Hochzeiten Jetzt betrachten wir die Situation, wo A und B abzählbar unendliche Mengen sind. Wir können sie zur Vereinfachung beide als N annehmen. Desweiteren sei R ⊆ N × N eine Relation mit der zusätzlichen Eigenschaft, dass es für jedes a ∈ N nur endlich viele b ∈ N mit a R b gibt. Wir wollen nun zeigen, dass dieses Matching-Problem genau dann lösbar ist, wenn es für jede endliche Teilmenge A ⊆ N ein Matching gibt. Um dies zu beweisen, kodieren wir es als aussagenlogisches Erfüllbarkeitsproblem. Wir verwenden dazu atomare Aussagen Pab , mit a, b ∈ N, die besagen sollen, dass a und b “heiraten”, oder formaler, dass die gesuchte Funktion f das Element a auf b abbildet. Hier haben wir ein kleines Notationsproblem, da unsere atomaren Aussagen ja eigentlich p0 , p1 , p2 , . . . sind, also insbesondere nur einen Index haben. Da man aber Paare von natürlichen Zahlen leicht durch natürliche Zahlen kodieren kann, z.B. durch die Zuordnung (a, b) 7→ 2a · 3b , ist das aber kein Problem. Wie können wir aber nun die Pab benutzen, um das Matching-Problem zu lösen? Sei {b1 , b2 , . . . , bna } die Menge der Elemente zu denen ein festes a in R-Relation steht. Dann können wir durch die Formel Ha := Pab1 ∨ Pab2 ∨ · · · ∨ Pabna ausdrücken, dass a (mindestens) einem dieser bi zugeordnet wird. Dass a nicht zwei Partner zugeordnet werden, ist äquivalent dazu, dass eine Belegung ρ : {Pab | a, b ∈ N} → {w, f} alle Formeln in der Menge ¬(Pab ∧ Pab0 ) b, b0 ∈ N, b 6= b0 wahr macht. Für b kann man das analog durch ¬(Pab ∧ Pa0 b ) a, a0 ∈ N, a 6= a0 ausdrücken. Insgesamt setzen wir Γ := {Ha | a ∈ N} ∪ ¬(Pab ∧ Pab0 ) a, b, b0 ∈ N, b 6= b0 ∪ ¬(Pab ∧ Pa0 b ) a, a0 , b ∈ N, a 6= a0 . Jede Belegung ρ, die zeigt, dass Γ erfüllbar ist, entspricht aufgrund unserer Kodierung genau einer injektiven Funktion f : N → N mit n R f (n) für alle n ∈ N, wobei JPab Kρ = w gerade f (a) = b bedeutet. Ferner entsprechen die Matching-Probleme für endliche Teilmengen A ⊆ N gerade endlichen Teilmengen von Γ: Es ist klar, dass man für jedes solche A das Problem durch eine endliche Teilmenge von Γ ausdrücken kann, da man nur die a ∈ A und diejenigen b ∈ N berücksichtigen muss, die zu einem der a ∈ A in R-Relation stehen. Umgekehrt kann man für jede endliche Teilmenge Γ0 ⊆ Γ alle a bestimmen für die ein Atom der Form Pab in Γ0 vorkommt und dann das zugehörige endliche Matching-Problem betrachten. Nach diesen Vorüberlegungen können wir die eigentliche Behauptung beweisen. Es ist klar, dass mit dem unendliche Matching-Problem auch alle endlichen lösbar sind. Nehmen wir deshalb nun umgekehrt an, dass für jede endliche Teilmenge A ⊆ N das Matching-Problem lösbar ist. Das bedeutet aber, dass alle endlichen Teilmengen Γ0 ⊆ Γ erfüllbar sind: Zu jeder solchen Menge Γ0 konstruieren wir die zugehörige Teilmenge A ⊆ N, wie im vorigen Absatz skizziert, und drücken das Matching-Problem für A wieder durch eine endliche Teilmenge Γ00 ⊆ Γ. Es gilt Γ0 ⊆ Γ00 , und da das Problem für A nach Voraussetzung lösbar ist, ist Γ00 und somit auch die Teilmenge Γ0 erfüllbar. Aus dem Kompaktheitssatz erhalten wir damit unmittelbar, dass Γ erfüllbar ist und somit dass das unendliche Matching-Problem lösbar ist.