104 KiB
		
	
	
	
	
	
	
	
			
		
		
	
	Logik
Die Logik
- versucht, gültige Argumentationen von ungültigen zu unterscheiden,
- hat Anwendungen in der Informatik,
- formalisiert die zu untersuchenden Aussagen und
- beschränkt sich auf einen wohldefinierten Teil der möglichen Aussagen => es gibt verschiedene "Logiken", z.B. "Aussagen-" und "Prädikatenlogik"
- daneben:
- temporale Logiken (Mastervorlesung "Verifikation")
- modale Logiken
- epistemische Logiken
- ...
 
 
- daneben:
Syllogismen
Aristoteles (384-322 v.Chr.) untersuchte das Wesen der Argumentation und des logischen Schließens mit dem Ziel, korrekte von inkorrekten Argumenten zu unterscheiden. Verschiedene Werke, u.a. Analytica priora, Analytica posteriora.
Aristoteles nennt die logischen Schlußfolgerungen Syllogismen (griechisch: "Zusammenrechnung").
Ein Syllogismus ist eine Aussage, in der bestimmte Dinge [die Prämissen] behauptet werden und in der etwas anderes [die Konsequenz], unumgänglich aus dem Behaupteten folgt. Mit dem letzten Satz meine ich, dass die Prämissen die Konsequenz zum Resultat haben, und damit meine ich, dass keine weitere Prämisse erforderlich ist, um die Konsequenz unumgänglich zu machen.
Beispiele
Wenn alle Menschen sterblich sind und
Sokrates ein Mensch ist,
dann ist Sokrates sterblich.
Wenn eine Zahl gerade und größer als zwei ist,
dann ist sie keine Primzahl.
Wenn die Leitzinsen hoch sind,
dann sind die Börsianer unzufrieden.
Aristoteles identifizierte einige zulässige Syllogismen, die Scholastiker fügten weitere hinzu:
(Barbara)
Alle Dackel sind Hunde                  Alle P sind M
Alle Hunde sind Tiere                   Alle M sind S
Dann sind alle Dackel Tiere             Alle P sind S
(Cesare)
Keine Blume ist ein Tier                Kein P ist M
Alle Hunde sind Tiere                   Alle S sind M
Dann ist keine Blume ein Hund           Kein P ist S
(Darapti)
Alle Delfine leben im Meer              Alle M sind P
Alle Delfine sind Säugetiere            Alle M sind S
Dann leben einige Säugetiere im Meer    Einige S sind P
Kalküle
Gottfried Wilhelm Leibniz (1646-1716) wollte korrekte von inkorrekten Argumentationsketten unterscheiden. Hierzu sollte ein Kalkül entwickelt werden, in dem alle korrekten Argumentationsketten ermöglicht sind (und keine inkorrekten).
David Hilbert (1862-1943) entwickelte solche Kalküle. Diese "Hilbertkalküle" sind sehr verschieden von üblichen Argumentationsmustern.
Gerhard Gentzen (1909-1945) entwickelte Kalküle des "natürlichen Schließens", die übliche Argumentationsmuster formalisieren.
Die Aussagenlogik
George Boole (1815 - 1864) entwickelte einen Kalkül zum Rechnen mit atomare Aussagen, die entweder wahr oder falsch sein können.
Verknüpfung durch Operatoren(und, oder, nicht, wenn-dann... ).
Die Prädikatenlogik (Ende des 19. Jahrhunderts)
Gottlob Frege (1848-1925), Giuseppe Peano (1858-1932) und Bertrand Russell (1872-1970)entwickelten die Logik zur Grundlage der Mathematik, als formale Basis für die Vermeidung von Widersprüchen. Entwicklung der Prädikatenlogik, die erlaubt:
- Beziehungen zwischen "Objekten" zu beschreiben
- existentielle Aussagen zu treffen: "es gibt ein x, so dass... "
- universelle Aussage zu treffen: "für jedes x gilt, dass... "
Logik in der Informatik
Claude Shannon (1916 - 2001) benutzt die Aussagenlogik 1937, um elektromechanische Schaltkreise zu beschreiben und zu optimieren.
Allen Newell (1927-1992), Herbert Simon (1916-2001) und Alan Robinson (1930-2016) entwickelten 1950-1960 die ersten Systeme für die Automatisierung des logischen Schließens als Werkzeug der Künstlichen Intelligenz.
- Schaltkreisentwurf: Schaltkreise lassen sich durch logische Formeln darstellen -> Entwurf und Optimierung von Schaltungen
- Modellierung und Spezifikation: Eindeutige Beschreibung von komplexen Systemen
- Verifikation: Beweisen, dass ein Programm das gewünschte Verhalten zeigt
- Datenbanken: Formulierung von Anfragen an Datenbanken -> Abfragesprache SQL (Structured Query Language)
- (klassische) Künstliche Intelligenz:
- Planung
- Mensch-Maschine Kommunikation
- Theorembeweiser: Der Computer beweist mathematische Sätze -> automatischer Beweis von wichtigen Sätzen im Bereich der Booleschen Algebren
 
- Logische Programmiersprachen
Außerdem: Logik ist ein Paradebeispiel für Syntax und formale Semantik
Edsger W. Dijkstra (1920-2002): Informatik = VLSAL (Very large scale application of logics)
Die Logik
- versucht, gültige Argumentationen von ungültigen zu unterscheiden,
- hat Anwendungen in der Informatik,
- formalisiert die zu untersuchenden Aussagen
Probleme mit natürlicher Sprache
- Problem: Zuordnung von Wahrheitswerten zu natürlichsprachigen Aussagen ist problematisch.
- Beispiele:
- Ich habe nur ein bißchen getrunken.
- Sie hat sich in Rauch aufgelöst.
- Das gibt es doch nicht!
- Rache ist süß.
 
 
- Beispiele:
- Problem: Natürliche Sprache ist oft schwer verständlich.
- Beispiel: Auszug aus der "Analytica Priora" von Aristoteles
- Die Aussage: Wenn der Mittelbegriff sich universell auf Ober- oder Untersatz bezieht, muss ein bestimmter negativer Syllogismus resultieren, immer wenn der Mittelbegriff sich universell auf den Obersatz bezieht, sei es positiv oder negativ, und besonders wenn er sich auf den Untersatz bezieht und umgekehrt zur universellen Aussage.
- Der Beweis: Denn wenn M zu keinem N gehört, aber zu einem O, ist es notwendig, dass N zu einem O nicht gehört. Denn da die negative Aussage umsetzbar ist, wird N zu keinem M gehören: Aber es war erlaubt, dass M zu einem O gehört: Deshalb wird N zu einem O nicht gehören: Denn das Ergebnis wird durch die erste Figur erreicht. Noch einmal: Wenn M zu allen N gehört, aber nicht zu einem O, ist es notwendig, dass N nichtzu einem O gehört: Denn wenn N zu allen O gehört und M auch alle N-Eigenschaften zugeschrieben werden, muss M zu allen O gehören: Aber wir haben angenommen, dass M zu einem O nicht gehört. Und wenn M zu allen N gehört, aber nicht zu allen O, können wir folgern, dass N nicht zu allen O gehört: Der Beweis ist der gleiche wie der obige. Aber wenn M alle O-Eigenschaften zugeschrieben werden, aber nicht alle N-Eigenschaften, wird es keinen Syllogismus geben.
 
- Problem:Natürliche Sprache ist mehrdeutig.
- Beispiel: "Ich sah den Mann auf dem Berg mit dem Fernrohr."
- (((Ich sah den Mann) auf dem Berg) mit dem Fernrohr)
- ((Ich sah (den Mann auf dem Berg)) mit dem Fernrohr)
- ((Ich sah den Mann) (auf dem Berg mit dem Fernrohr))
- (Ich sah ((den Mann auf dem Berg) mit dem Fernrohr))
- (Ich sah (den Mann (auf dem Berg mit dem Fernrohr)))
 
 
- Beispiel: "Ich sah den Mann auf dem Berg mit dem Fernrohr."
- Problem:Natürliche Sprache hängt von Kontext ab.
Die Beatles sind Musiker
Paul McCartney ist ein Beatle
Paul McCartney ist ein Musiker
Die Beatles sind vier
Paul McCartney ist ein Beatle
Paul McCartney ist vier
Kapitel 1: Aussagenlogik
Beispiel
Ein Gerät besteht aus einem Bauteil A, einem Bauteil B und einem roten Licht. Folgendes ist bekannt:
- Bauteil A oder Bauteil B (oder beide) sind kaputt.
- Wenn Bauteil A kaputt ist, dann ist auch Bauteil B kaputt.
- Wenn Bauteil B kaputt ist und das rote Licht leuchtet, dann ist Bauteil A nicht kaputt.
- Das rote Licht leuchtet.
Zur Formalisierung verwenden wir folgende Abkürzungen:
- RL (rotes Licht leuchtet),
- AK (Bauteil A kaputt),
- BK (Bauteil B kaputt),
- \vee(oder),
- \rightarrow(wenn, dann),
- \wedge(und) und
- \lnot(nicht).
Damit können wir unser Wissen kompakter hinschreiben:
- AK \vee BK
- AK \rightarrow BK
- (BK \wedge RL)\rightarrow \lnot AK
- RL
Aus den vier Aussagen lassen sich weitere Aussagen neue Aussagen bilden
5. Falls AK gilt, so folgt aus AK\rightarrow BK, dass BK gilt.
6. Falls BK gilt, so gilt natürlich BK.
7. Da AK \vee BK gilt, folgt aus (5) und (6), dass BK in jedem Fall gilt.
8. Es gilt auch RL.
9. Also gilt BK\wedge RL (aus (7) und (8)).
10. Es gilt auch (BK \wedge RL)\rightarrow\lnot AK.
11. Also gilt \lnot AK (aus (9) und (10)).
Damit sind wir überzeugt, dass das Bauteil A heil ist.
Den Beweis, dass das Teil A heil ist, werden wir als "Beweisbaum" formalisieren:
In der Aussagenlogik gehen wir von "Aussagen" aus, denen wir (zumindest prinzipiell) Wahrheitswerte zuordnen können.
Beispiele
- Die Summe von 3 und 4 ist 7.
- Jana reagierte aggressiv auf Martins Behauptungen.
- Jede gerade natürliche Zahl>2 ist Summe zweier Primzahlen.
- Alle Marsmenschen mögen Pizza mit Pepperoni.
- Albert Camus était un écrivain français.
- In theory, practically everything is possible.
Für diese Aussagen verwenden wir dieatomaren Formeln p,q,r bzw. p_0,p_1,...
Die Aussagen werden durch "Operatoren" verbunden. Beispiele
- ... und...
- ... oder...
- nicht...
- wenn... dann...
- entweder... oder... , aber nicht beide.
- mehr als die Hälfte der Aussagen ... gilt.
Für solche zusammengesetzten Aussagen verwenden wir \varphi,\psi usw.
Durch die Wahl der erlaubten Operatoren erhält man unterschiedliche "Logiken".
Da der Wahrheitswert einer zusammengesetzten Aussage nur vom Wahrheitswert der Teilaussagen abhängen soll, sind Operatoren wie "weil" oder "obwohl" nicht zulässig.
Syntax der Aussagenlogik
Eine atomare Formel hat die Form p_i (wobei i\in\mathbb{N}=\{0,1,...\}).
Formeln werden durch folgenden induktiven Prozess definiert:
- Alle atomaren Formeln und \botsind Formeln.
- Falls \varphiund\psiFormeln sind, sind auch $(\varphi\wedge\psi),(\varphi\wedge\psi)$(\varphi \rightarrow\psi)und $\lnot\varphi$Formeln.
- Nichts ist Formel, was sich nicht mittels der obigen Regeln erzeugen läßt.
Beispielformel: \lnot((\lnot p_4 \vee p_1)\wedge\bot)
Bezeichnungen:
- Falsum: \bot
- Konjunktion: \wedge
- Disjunktion: \vee
- Implikation: \rightarrow
- Negation: \lnot
Abkürzungen
p,q,r... statt p_0,p_1,p_2...
(\bigvee_{i=1}^n \varphi_i statt (...((\varphi_1\vee\varphi_2)\vee\varphi_3)\vee...\vee\varphi_n)
(\bigwedge_{i=1}^n \varphi_i) statt (...((\varphi_1\wedge\varphi_2)\wedge\varphi_3)\wedge...\wedge\varphi_n)
(\varphi \leftrightarrow \psi) statt ((\varphi\rightarrow\psi)\wedge(\psi\rightarrow\varphi))
Präzedenz der Operatoren:
- \leftrightarrowbindet am schwächsten
- \rightarrow...
- \vee...
- \wedge...
- \lnotbindet am stärksten
Es gilt also z.B.: (\alpha\leftrightarrow\beta\vee\lnot\gamma\rightarrow\sigma\wedge\lnot\eta) = (\alpha\leftrightarrow ((\beta\vee\lnot\gamma)\rightarrow(\sigma\wedge\lnot\eta)))
Dennoch: Zu viele Klammern schaden i.A. nicht.
Natürliches Schließen
Ein (mathematischer) Beweis zeigt, wie die Behauptung aus den Voraussetzungen folgt.
Analog zeigt ein "Beweisbaum" (= "Herleitung" = "Deduktion"), wie eine Formel der Aussagenlogik aus Voraussetzungen (ebenfalls Formeln der Aussagenlogik) folgt.
Diese "Deduktionen" sind Bäume, deren Knoten mit Formeln beschriftet sind:
- an der Wurzel steht die Behauptung (= Konklusion \varphi)
- an den Blättern stehen Voraussetzungen (= Hypothesen oder Annahmen aus \Gamma)
- an den inneren Knoten stehen "Teilergebnisse" und "Begründungen"
Konstruktion von Deduktionen
Aus der Annahme der Aussage \varphi folgt \varphi unmittelbar: eine triviale Deduktion
\varphi mit Hypothesen \{\varphi\} und Konklusion \varphi.
Folgend werden wir
- überlegen, wie aus "einfachen mathematischen Beweisen" umfangreichere entstehen können und
- parallel dazudefinieren, wie aus einfachen Deduktionen umfangreichere konstruiert werden können.
Konjunktion
Konjunktionseinführung in math. Beweisen
Ein mathematischer Beweis einer Aussage "\varphi und $\psi$" sieht üblicherweise so aus:
- "Zunächst zeige ich \varphi: ... (hier steckt die eigentliche Arbeit)
- Jetzt zeige ich \psi: ... (nochmehr eigentliche Arbeit)
- Also haben wir "\varphiund $\psi$" gezeigt. qed"
Konjunktionseinführung (ausführlich)
Ist D eine Deduktion von \varphi mit Hypothesen aus \Gamma und ist E eine Deduktion von \psi mit Hypothesen aus \Gamma, so ergibt sich die folgende Deduktion von \varphi\wedge\psi mit Hypothesen aus \Gamma:
Kurzform: \frac{\varphi\quad\psi}{\varphi\wedge\psi} (\wedge I)
Konjunktionselimination (ausführlich)
Ist D eine Deduktion von \varphi\wedge\psi mit Hypothesen aus \Gamma, so ergeben sich die folgenden Deduktionen von \varphi bzw. von \psi mit Hypothesen aus \Gamma:
Kurzform: \frac{\varphi\wedge\psi}{\varphi} (\wedge E_1) \quad\quad \frac{\varphi\wedge\psi}{\psi} (\wedge E_2)
Beispiel
Wir zeigen \varphi\wedge\psi unter der Hypothese \psi\wedge\varphi:...
Dies ist eine Deduktion mit Konklusion \varphi\wedge\psi und Hypothese \psi\wedge\varphi (zweimal verwendet).
Implikation
Implikationseinführung in math. Beweisen
Ein mathematischer Beweis einer Aussage "Aus \varphi folgt $\psi$" sieht üblicherweise so aus:
- "Angenommen, \varphigilt.
- Dann ... (hier steckt die eigentliche Arbeit).
- Damit gilt \psi.
- Also haben wir gezeigt, dass \psiaus\varphifolgt. qed"
Die Aussage \varphi ist also eine "temporäre Hypothese".
Implikationseinführung (ausführlich)
Ist D eine Deduktion von \psi mit Hypothesen aus \Gamma\cup\{\varphi\}, so ergibt sich die folgende Deduktion von \varphi\rightarrow\psi mit Hypothesen aus \Gamma:
Kurzform
[\varphi]\vdots\frac{\psi}{\varphi\rightarrow\psi} (\rightarrow I)Beispiel: ... Dies ist eine Deduktion von \varphi\rightarrow\varphi ohne Hypothesen.
Implikationselimination in math. Beweisen
Ein mathematischer Beweis einer Aussage "\psi gilt" über eine Hilfsaussage sieht so aus:
- "Zunächst zeigen wir, dass \varphigilt: ...
- Dann beweisen wir, dass \psiaus\varphifolgt: ...
- Also haben wir \psigezeigt. qed"
Implikationselimination oder modus ponens (ausführlich)
Ist D eine Deduktion von \varphi mit Hypothesen aus \Gamma und ist E eine Deduktion von \varphi\rightarrow\psi mit Hypothesen aus \Gamma, so ergibt sich die folgende Deduktion von \psi mit Hypothesen aus \Gamma:
Kurzform: \frac{\varphi\quad \varphi\rightarrow\psi}{\psi} (\rightarrow E)
Beispiel
Bemerkung: die Indizes 1, 2 und 3 machen deutlich, welche Hypothese bei welcher Regelanwendung gestrichen wurde. Deduktionen können recht groß werden.
Diese Deduktion hat keine Hypothesen!
Disjunktion
Disjunktionselimination oder Fallunterscheidung in math. Beweisen
Ein mathematischer Beweis einer Aussage "\sigma gilt" mittels Fallunterscheidung sieht üblicherweise so aus:
- "Zunächst zeigen wir, dass \varphi\vee\psigilt: ...
- Gilt \varphi, so gilt\sigma, denn ...
- Gilt \psi, so gilt ebenfalls\sigma, denn ...
- Also haben wir gezeigt, dass \sigmagilt. qed"
Die Aussagen \varphi und \psi sind also wieder "temporäre Hypothesen".
Disjunktionselimination oder Fallunterscheidung (ausführlich)
Ist D eine Deduktion von \varphi\vee\psi mit Hypothesen aus \Gamma, ist E eine Deduktion von \sigma mit Hypothesen aus $\Gamma\cup{\varphi}$und ist F eine Deduktion von \sigma mit Hypothesen aus \Gamma\cup\{\psi\}, so ergibt sich die folgende Deduktion von \sigma mit Hypothesen aus \Gamma:
Disjunktionselimination Kurzform:
\quad [\psi] \quad[\varphi]\quad \vdots \quad\vdots\frac{\varphi\vee\psi \quad\sigma \quad\sigma}{\sigma} (\vee E)Disjunktionseinführung (Kurzform)
\frac{\varphi}{\varphi\vee\psi} (\vee I_1) \quad \frac{\psi}{\varphi\vee\psi} (\vee I_2)Negation
Negationseinführung in math. Beweisen
Ein mathematischer Beweis einer Aussage "\varphi gilt nicht" sieht so aus:
- "Angenommen,$\varphi$gilt.
- Dann folgt 0=1, denn .... Mit anderen Worten, dies führt zu einem Widerspruch.
- Also haben wir gezeigt, dass \varphinicht gilt. qed"
Die Aussage \varphi ist also wieder eine "temporäre Hypothese".
Negationseinführung (ausführlich)
Ist D eine Deduktion von \bot mit Hypothesen aus \Gamma\cup\{\varphi\}, so ergibt sich die folgende Deduktion von \lnot\varphi mit Hypothesen aus \Gamma:
Kurzform:
[\varphi]\vdots\frac{\bot}{\lnot\varphi} (\lnot I)Negationselimination (ausführlich)
Ist D eine Deduktion von \lnot\varphi mit Hypothesen aus \Gamma und ist E eine Deduktion von \varphi mit Hypothesen aus \gamma, so ergibt sich die folgende Deduktion von \bot mit Hypothesen aus \Gamma:
Kurzform: \frac{\lnot\varphi \quad \varphi}{\bot} (\lnot E)
Falsum
Hat man "$0=1$" bewiesen, so ist man bereit, alles zu glauben: ex falso sequitur quodlibet
ausführlich: Ist D eine Deduktion von \bot mit Hypothesen aus \Gamma, so ergibt sich die folgende Deduktion von \varphi mit Hypothesen aus \Gamma:
Kurzform: \frac{\bot}{\varphi} (\bot)
math. Widerspruchsbeweis
Ein indirekter Beweis einer Aussage "\varphi gilt" sieht üblicherweise so aus:
- "Angenommen, \varphigilt nicht, d.h.\lnot\varphigilt.
- Dann folgt 0=1, d.h. ein Widerspruch.
- Also haben wir gezeigt, dass \varphigilt. qed"
Die Aussage \lnot\varphi ist also wieder eine "temporäre Hypothese".
reductio ad absurdum (ausführlich)
Ist D eine Deduktion von \bot mit Hypothesen aus \Gamma\cup\{\lnot\varphi\}, so ergibt sich die folgende Deduktion von \varphi mit Hypothesen aus \Gamma:
Kurzform:
[\lnot\varphi]\vdots\frac{\bot}{\varphi} (raa)Regeln des natürlichen Schließens
Definition
Für eine Formelmenge
\Gammaund eine Formel\varphischreiben wir\Gamma\Vdash\varphiwenn es eine Deduktion gibt mit Hypothesen aus\Gammaund Konklusion\varphi. Wir sagen "\varphiist eine syntaktische Folgerung von $\Gamma$".Eine Formel
\varphiist ein Theorem, wenn\varnothing\Vdash\varphigilt.
Bemerkung
\Gamma\Vdash\varphi sagt (zunächst) nichts über den Inhalt der Formeln in \Gamma\cup\{\varphi\} aus, sondern nur über die Tatsache, dass \varphi mithilfe des natürlichen Schließens aus den Formeln aus \Gamma hergeleitet werden kann.
Ebenso sagt "\varphi ist Theorem" nur, dass \varphi abgeleitet werden kann, über "Wahrheit" sagt dieser Begriff (zunächst) nichts aus.
Satz
Für alle Formeln \varphi und \psi gilt \{\lnot(\varphi\vee\psi)\}\Vdash\lnot\varphi\wedge\lnot\psi.
Beweis: Wir geben eine Deduktion an...
- ${\lnot\varphi\wedge\lnot\psi}\Vdash\lnot(\varphi\vee\psi)$
 
- ${\lnot\varphi\vee\lnot\psi}\Vdash\lnot(\varphi\wedge\psi)$
 
- ${\varphi\vee\psi} \Vdash \psi\vee\varphi$
 
Satz
Für jede Formel \varphi ist \lnot\lnot\varphi\rightarrow\varphi ein Theorem.
Beweis: Wir geben eine Deduktion mit Konklusion \lnot\lnot\varphi\rightarrow\varphi ohne Hypothesen an...
Satz
Für jede Formel \varphi ist \varphi\vee\lnot\varphi ein Theorem.
Beweis: Wir geben eine Deduktion mit Konklusion \varphi\vee\lnot\varphi ohne Hypothesen an...
Bemerkung: Man kann beweisen, dass jede Deduktion der letzten beiden Theoreme die Regel (raa) verwendet, sie also nicht "intuitionistisch" gelten.
Satz
\{\lnot(\varphi\wedge\psi)\}\Vdash\lnot\varphi\vee\lnot\psi
Semantik
Formeln sollen Verknüpfungen von Aussagen widerspiegeln, wir haben dies zur Motivation der einzelnen Regeln des natürlichen Schließens genutzt. Aber die Begriffe „syntaktische Folgerung“ und „Theorem“ sind rein syntaktisch definiert.
Erst die jetzt zu definierende „Semantik“ gibt den Formeln „Bedeutung“.
Idee der Semantik: wenn man jeder atomaren Formel p_i einen Wahrheitswertzuordnet, so kann man den Wahrheitswert jeder Formel berechnen.
Es gibt verschiedene Möglichkeiten, Wahrheitswerte zu definieren:
- zweiwertige oder Boolesche Logik B=\{0,1\}: Wahrheitswerte „wahr“=1 und „falsch“= 0
- dreiwertige Kleene-Logik K_3=\{0,\frac{1}{2},1\}: zusätzlicher Wahrheitswert „unbekannt“=\frac{1}{2}
- Fuzzy-Logik F=[0,1]: Wahrheitswerte sind „Grad der Überzeugtheit“
- unendliche Boolesche Algebra $B_R$= Menge der Teilmengen von \mathbb{R};A\subseteq\mathbb{R}ist „Menge der Menschen, die Aussage für wahr halten“
- Heyting-Algebra $H_R$= Menge der offenen Teilmengen von \mathbb{R}- Erinnerung: A\subseteq\mathbb{R}offen, wenn\forall a\in A\exists\epsilon >0:(a-\epsilon,a+\epsilon)\subseteq A, d.h., wennAabzählbare Vereinigung von offenen Intervallen(x,y)ist.
 
- Erinnerung: 
Beispiele:
- offen: (0,1), \mathbb{R}_{>0}, \mathbb{R}\backslash\{0\}, \mathbb{R}\backslash\mathbb{N}
- nicht offen: [1,2), \mathbb{R}_{\geq 0}, \mathbb{Q}, \mathbb{N}, \{\frac{1}{n} | n\in\mathbb{N}\}, \mathbb{R}\backslash\mathbb{Q}
Sei W eine Menge von Wahrheitswerten.\
Eine W-Belegung ist eine Abbildung B:V\rightarrow W, wobei V\subseteq\{p_0 ,p_1 ,...\} eine Menge atomarer Formeln ist.
Die W-Belegung B:V\rightarrow W paßt zur Formel \phi, falls alle atomaren Formeln aus \phi zu V gehören.
Sei nun B eine W-Belegung. Was ist der Wahrheitswert der Formel p_0\vee p_1 unter der Belegung B?
Zur Beantwortung dieser Frage benötigen wir eine Funktion \vee_W :W\times W\rightarrow W (analog für \wedge,\rightarrow,\lnot).
Wahrheitswertebereiche
Definition: Sei W eine Menge und
R\subseteq W\times Weine binäre Relation.
- R ist reflexiv, wenn (a,a)\in Rfür allea\in Wgilt.
- R ist antisymmetrisch, wenn (a,b),(b,a)\in Rimpliziert, dassa=bgilt (für allea,b\in W).
- R ist transitive, wenn (a,b),(b,c)\in Rimpliziert, dass(a,c)\in Rgilt (für allea,b,c\in W).
- R ist eine Ordnungsrelation, wenn R reflexiv, antisymmetrisch und transitiv ist. In diesem Fall heißt das Paar (W,R)eine partiell geordnete Menge.
Beispiel
- Sei \leqübliche Ordnung auf $\mathbb{R}$undW\subseteq\mathbb{R}. Dann ist(W,\leq)partiell geordnete Menge.
- Sei Xeine Menge undW\subseteq P(X). Dann ist(W,\subseteq)partiell geordnete Menge.
- Sei W=P(\sum ∗)und\leq_pdie Relation „es gibt Polynomialzeitreduktion“ (vgl. „Automaten, Sprachen und Komplexität“). Diese Relation ist reflexiv, transitiv, aber nicht antisymmetrisch (denn3-SAT\leq_p HCundHC\leq_p_3-SAT).
Definition: Sei
(W,\leq)partiell geordnete Menge,M\subseteq Wunda\in W.
- a ist obere Schranke von M, wennm\leq afür allem\in Mgilt.
- a ist kleinste obere Schranke oder Supremum von M, wennaobere Schranke vonMist und wenna\leq bfür alle oberen SchrankenbvonMgilt. Wir schreiben in diesem Falla=sup \ M.
- a ist untere Schranke von M, wenna\leq mfür allem\in Mgilt.
- a ist größte untere Schranke oder Infimum von M, wenn a untere Schranke vonMist und wennb\leq afür alle unteren SchrankenbvonMgilt. Wir schreiben in diesem Falla=inf\ M.
Beispiel
- betrachte (W,\leq)mitW=\mathbb{R}und\leqübliche Ordnung auf\mathbb{R}.- Dann gelten sup[0,1] = sup(0,1) =1.
- sup\ Wexistiert nicht (denn- What keine obere Schranke).
 
- Dann gelten 
- betrachte (W,\subseteq)mitXMenge undW =P(X).- sup\ M=\bigcup_{A\in M} Afür alle- M\subseteq W
 
- betrachte (W,\subseteq)mitW=\{\{0\},\{1\},\{0,1,2\},\{0,1,3\}\}.- sup\{\{0\},\{0,1,2\}\}=\{0,1,2\}
- \{0,1,2\}und- \{0,1,3\}sind die oberen Schranken von- M=\{\{0\},\{1\}\}, aber- Mhat kein Supremum
 
Definition: Ein (vollständiger) Verband ist eine partiell geordnete Menge
(W,\leq), in der jede MengeM\subseteq Wein Supremumsup\ Mund ein Infimuminf\ Mhat. In einem Verband(W,\leq)definieren wir:
- 0_W = inf\ Wund- 1_W= sup\ W
- a\wedge_W b= inf\{a,b\}und- a\vee_W b= sup\{a,b\}für- a,b\in W
Bemerkung: In jedem Verband (W,\leq) gelten 0_W= sup\ \varnothing und 1_W= inf\ \varnothing (denn jedes Element von W ist obere und untere Schranke von \varnothing).
Definition: Ein Wahrheitswertebereich ist ein Tupel
(W,\leq,\rightarrow W,\lnot W), wobei(W,\leq)ein Verband und\rightarrow W:W^2 \rightarrow Wund\lnot W:W\rightarrow WFunktionen sind.
Beispiel
- Der Boolesche Wahrheitswertebereich B ist definiert durch die Grundmenge B=\{0,1\}, die natürliche Ordnung\leqund die Funktionen\lnot_B (a) = 1-a,\rightarrow_B(a,b) = max(b, 1 -a). Hier gelten:- 0_B=0,- 1_B= 1,
- a\wedge_B b= min(a,b),- a\vee_B b= max(a,b)
 
- Der Kleenesche Wahrheitswertebereich K_3ist definiert durch die GrundmengeK_3=\{0,\frac{1}{2},1\}mit der natürlichen Ordnung\leqund durch die Funktionen\lnot_{K_3} (a) = 1 -a,\rightarrow_{K_3} (a,b) = max(b, 1-a). Hier gelten:- \lnot_{K_3} = 0,- 1_{K_3} = 1
- a\wedge_{K_3} b= min(a,b),- a\vee_{K_3} b= max(a,b)
 
- Der Wahrheitswertebereich F der Fuzzy-Logik ist definiert durch die Grundmenge F=[0,1]\subseteq\mathbb{R}mit der natürlichen Ordnung\leqund durch die Funktionen\lnot_F (a) = 1-a,\rightarrow_F (a,b) = max(b, 1-a). Hier gelten:- 0_F= 0,- 1_F= 1
- a\wedge_F b= min(a,b),- a\vee_F b= max(a,b)
 
- Der Boolesche Wahrheitswertebereich B_Rist definiert durch die GrundmengeB_R=\{A|A\subseteq \mathbb{R}\}mit der Ordnung\subseteqund durch die Funktionen\lnot_{B_R} (A) =\mathbb{R}\backslash A,\rightarrow_{B_R} (A,B) = B\cup\mathbb{R}\backslash A. Hier gelten:- 0_{B_R}=\varnothing,- 1_{B_R}=\mathbb{R}
- A\wedge_{B_R} B=A\cap B,- A\vee_{B_R} B=A\cup B
 
- Der Heytingsche Wahrheitswertebereich H_Rist definiert durch die GrundmengeH_{mathbb{R}} =\{A\subseteq\mathbb{R} | \text{A ist offen}\}, die Ordnung\subseteqund durch die Funktionen\lnot_{H_R} (A) = Inneres(\mathbb{R}\backslash A),\rightarrow_{H_R} (A,B) =Inneres(B\cup \mathbb{R}\backslash A). Hier gelten:- 0_{H_R}=\varnothing,- 1_{H_R}=\mathbb{R}
- A\wedge_{H_R} B= A\cap B,- A\vee_{H_R} B=A\cup B
- Erinnerung: Inneres(A) =\{a\in A|\exists \epsilon > 0 : (a-\epsilon,a+\epsilon)\subseteq A\}
- Beispiele: Inneres((0,1))=(0,1)=Inneres([0,1]),Inneres(N)=\varnothing,Inneres(\mathbb{R}_{\geq 0}) = \mathbb{R}_{> 0}
 
Sei W ein Wahrheitswertebereich und B eine W-Belegung. Induktiv über den Formelaufbau definieren wir den Wahrheitswert \hat{B}(\phi)\in W jeder zu B passenden Formel \phi:
- \hat{B}(\bot) = 0_W
- \hat{B}(p) = B(p)falls- peine atomare Formel ist
- \hat{B}((\phi\wedge \psi )) = \hat{B}(\phi)\wedge_W \hat{B}(\psi )
- \hat{B}((\phi\vee \psi )) = \hat{B}(\phi)\vee_W \hat{B}(\psi )
- \hat{B}((\phi\rightarrow \psi )) = \rightarrow W(\hat{B}(\phi),\hat{B}(\psi ))
- \hat{B}(\lnot\phi) = \lnot W(\hat{B}(\phi))
Wir schreiben im folgenden B(\phi) anstatt \hat{B}(\phi).
Beispiel: Betrachte die Formel \phi= ((p\wedge q)\rightarrow (q\wedge p)).
- Für eine beliebige B-Belegung B:\{p,q\}\rightarrow BgiltB((p\wedge q)\rightarrow (q\wedge p)) = max(B(q\wedge p), 1 -B(p\wedge q)) = max(min(B(q),B(p)), 1 -min(B(p),B(q))) = 1 = 1_B
- Für die $K_3$-Belegung B:\{p,q\}\rightarrow K_3mit $B(p) =B(q) = \frac{1}{2}$} giltB((p\wedge q)\rightarrow (q\wedge p)) = max(B(q\wedge p), 1 -B(p\wedge q))= max(min(B(q),B(p)), 1 -min(B(p),B(q))) = \frac{1}{2} \not= 1_{K_3}
- analog gibt es eine F-Belegung B:\{p,q\}\rightarrow F, so dassB((p\wedge q)\rightarrow (q\wedge p)) \not = 1_Fgilt.
- Für eine beliebige $H_{mathbb{R}}$-Belegung B:\{p,q\}\rightarrow H_RgiltB((p\wedge q)\rightarrow (q\wedge p)) = Inneres(B(q\wedge p)\cup \mathbb{R}\backslash B(p\wedge q)) = Inneres((B(q)\cap B(p))\cup \mathbb{R}\backslash (B(p)\cap B(q))) = Inneres(\mathbb{R}) = \mathbb{R} = 1_{H_R}
Folgerung und Tautologie
Sei W ein Wahrheitswertebereich.
Eine Formel \phi heißt eine W-Folgerung der Formelmenge \Gamma, falls für jede W-Belegung B, die zu allen Formeln aus \Gamma \cup\{\phi\} paßt, gilt:
inf\{B(\gamma )|\gamma \in \Gamma \}\leq B(\phi)
Wir schreiben \Gamma \Vdash W\phi, falls \phi eine W-Folgerung von \Gamma ist.
Bemerkung: Im Gegensatz zur Beziehung \Gamma \vdash \phi, d.h. zur syntaktischen Folgerung, ist \Gamma \Vdash W \phi eine semantische Beziehung.
Eine W-Tautologie ist eine Formel \phi mit \varnothing \Vdash W\phi, d.h. B(\phi) = 1_W für alle passenden W-Belegungen B (denn inf\{\hat{B}(\gamma )|\gamma \in \varnothing \}= inf \varnothing = 1_W).
Wahrheitstafel für den Booleschen Wahrheitswertebereich B:
| RL | AK | BK | AK\vee BK | AK\rightarrow BK | (BK\wedge RL)\rightarrow\lnot AK | RL | \lnot AK | 
|---|---|---|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 1 | 1 | 0 | 1 | 
| 0 | 0 | 1 | 1 | 1 | 1 | 0 | 1 | 
| 0 | 1 | 0 | 1 | 0 | 1 | 0 | 0 | 
| 0 | 1 | 1 | 1 | 1 | 1 | 0 | 0 | 
| 1 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 
| 1 | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 
| 1 | 1 | 0 | 1 | 0 | 1 | 1 | 0 | 
| 1 | 1 | 1 | 1 | 1 | 0 | 1 | 0 | 
Wir erhalten also ${(AK\vee BK),(AK\rightarrow BK), ((BK\wedge RL)\rightarrow \lnot AK),RL} \Vdash_B \lnot AK$ und können damit sagen:
„Wenn die Aussagen „Bauteil A oder Bauteil B ist kaputt“ und „daraus, dass Bauteil A kaputt ist, folgt, dass Bauteil B kaputt ist“ und... wahr sind, ... dann kann man die Folgerung ziehen: die Aussage „das Bauteil A ist heil“ ist wahr.“
Erinnerung aus der ersten Vorlesung: \{(AK\vee BK),(AK\rightarrow BK), ((BK\wedge RL)\rightarrow \lnot AK),RL\} \vdash  \lnot AK
Beispiel
Sei \phi beliebige Formel mit atomaren Formeln in V.
- 
Sei B:V\rightarrow Beine B-Belegung. Dann giltB(\lnot\lnot\phi\rightarrow\phi) = \rightarrow B(\lnot B\lnot B(B(\phi)),B(\phi)) = max(B(\phi), 1 -( 1 -( 1 -B(\phi)))) = max(B(\phi), 1 -B(\phi)) = 1 = 1_B.Also ist \lnot\lnot\phi\rightarrow\phieine B-Tautologie (gilt ebenso für den WahrheitswertebereichB_R).
- 
Sei B:V\rightarrow H_Reine $H_R$-Belegung mitB(\phi) =R\backslash\{0\}. Dann gelten- B(\lnot\phi) = Inneres(\mathbb{R}\backslash B(\phi)) = Inneres(\{0\}) =\varnothing
- B(\lnot\lnot\phi) = Inneres(\mathbb{R}\backslash B(\lnot\phi)) = Inneres(\mathbb{R}) = \mathbb{R}
- B(\lnot\lnot\phi\rightarrow\phi) = \rightarrow_{H_R} (B(\lnot\lnot\phi),B(\phi)) = \rightarrow_{H_R} (\mathbb{R},\mathbb{R}\backslash \{0\}) = Inneres(\mathbb{R}\backslash\{0\}\cup\mathbb{R}\backslash\mathbb{R}) = \mathbb{R}\backslash\{0\}\not =\mathbb{R}= 1_{H_R}
 Also ist \lnot\lnot\phi\rightarrow\phikeine $H_R$-Tautologie (gilt ebenso für die WahrheitswertebereicheK_3undF).
- 
Sei B:V\rightarrow Beine B-Belegung. Dann giltB(\phi\vee\lnot\phi) = max(B(\phi), 1 -B(\phi)) = 1 = 1_B.Also ist \phi\vee\lnot\phieine B-Tautologie (gilt ebenso für den WahrheitswertebereichB_R).
- 
Sei B:V\rightarrow H_Reine $H_R$-Belegung mitB(\phi)=\mathbb{R}\backslash\{0\}. Dann giltB(\phi\vee\lnot\phi) = B(\phi)\cup B(\lnot\phi) = \mathbb{R}\backslash\{0\}\cup \varnothing \not= 1_{H_R}.Also ist \phi\vee\lnot\phikeine $H_R$-Tautologie (gilt ebenso für die WahrheitswertebereicheK_3undF).
- 
Sei B:V\rightarrow Beine B-Belegung. Dann giltB(\lnot\phi\rightarrow\bot) = \rightarrow_B(B(\lnot\phi),B(\bot)) = max(0,1-B(\lnot \phi)) = 1 -( 1 -B(\phi)) =B(\phi)$.Also haben wir \{\lnot\phi\rightarrow\bot\}\Vdash B\phiund\{\phi\}\Vdash B\lnot \phi\rightarrow\bot.- Ebenso erhält man:
- \{\lnot\phi\rightarrow\bot\}\Vdash_{K_3} \phi
- \{\phi\}\Vdash_{K_3} \lnot\phi\rightarrow\bot
- \{\lnot\phi\rightarrow\bot\}\Vdash_F\phi
- \{\phi\}\Vdash F\lnot\phi\rightarrow\bot
 
 
- Ebenso erhält man:
- 
Sei B:D\rightarrow H_Reine $H_R$-Belegung mitB(\phi) =\mathbb{R}\backslash\{0\}. Dann giltB(\lnot\phi\rightarrow\bot) = Inneres(B(\bot )\cup \mathbb{R}\backslash B(\lnot\phi))= Inneres(\varnothing \cup \mathbb{R}\backslash\varnothing)= \mathbb{R} \not\supseteq B(\phi).also \{\lnot\phi\rightarrow\bot\}\not\Vdash_{H_R} \phi.Es gilt aber \{\phi\}\Vdash_{H_R}\lnot \phi\rightarrow\bot.
Zusammenfassung der Beispiele
| B | B_R | K_3 | F | H_R | ||
|---|---|---|---|---|---|---|
| \varnothing\Vdash_W\lnot\lnot\phi\rightarrow\phi | √ | √ | – | – | – | \varnothing\vdash \lnot\lnot\phi\rightarrow\phi | 
| \varnothing\Vdash_W\phi\vee\lnot\phi | √ | √ | – | – | – | \varnothing\vdash\phi\vee\lnot\phi | 
| \{\lnot\phi\rightarrow\bot\}\Vdash_W\phi | √ | √ | √ | √ | – | \{\lnot\phi\rightarrow\bot\}\vdash\phi | 
| \{\phi\}\Vdash_W\lnot\phi\rightarrow\bot | √ | √ | √ | √ | √ | \{\phi\}\vdash\lnot\phi\rightarrow\bot | 
- √in Spalte W:W-Folgerung gilt
- -in Spalte W:W-Folgerung gilt nicht
Überblick: Wir haben definiert
- \Gamma\vdash\phisyntaktische Folgerung- Theorem („hypothesenlos ableitbar“)
 
- \Gamma\Vdash_W \phi(semantische) W-Folgerung- W-Tautologie („wird immer zu 1_Wausgewertet“)
 
- W-Tautologie („wird immer zu 
Frage: Was ist die Beziehung zwischen diesen Begriffen, insbes. zwischen „Theorem“ und „W-Tautologie“? Da z.B. B-Folgerung $\not =K_3$-Folgerung, hängt die Anwort von W ab.
Korrektheit
Können wir durch mathematische Beweise zu falschen Aussagenkommen?
Können wir durch das natürliche Schließen zu falschen Aussagen kommen?
Existiert eine Menge \Gamma von Formeln und eine Formel \varphi mit \Gamma\vdash\varphi und \Gamma\not\Vdash_W \varphi? Für welche Wahrheitswertebereiche W?
Frage für diese Vorlesung: Für welche Wahrheitswertebereiche W gilt
\Gamma\vdash\varphi\Rightarrow\Gamma\vdash_W \varphibzw.
\varphi ist Theorem \Rightarrow\varphi ist W-Tautologie?
Beispiel: Betrachte den Kleeneschen Wahrheitswertebereich K_3.
- Sei patomare Formel. $\frac{[p]^4}{p\rightarrow p}$ Also gilt\varnothing\vdash p\rightarrow p, d.h.p\rightarrow pist Theorem.
- Sei B$K_3$-Belegung mitB(p)=\frac{1}{2}. Dann giltB(p\rightarrow p) = max(B(p), 1-B(p)) =\frac{1}{2}, alsoinf\{B(\gamma)|\gamma\in\varnothing\}= 1 >\frac{1}{2} = B(p\rightarrow p). Damit haben wir gezeigt\varnothing\not\Vdash_{K_3} p\rightarrow p.
Die Implikation \Gamma\vdash\varphi\Rightarrow\Gamma\vdash_W \varphi gilt also NICHT für den Kleeneschen Wahrheitswertebereich W=K_3 und damit auch NICHT für den Wahrheitswertebereich der Fuzzy-Logik F.
Korrektheitslemma für nat. Schließen & Wahrheitswertebereich B
Sei
Deine Deduktion mit Hypothesen in der Menge\Gammaund Konklusion\varphi. Dann gilt\Gamma\vdash_B \varphi, d.h.inf\{B(\gamma)|\gamma\in\Gamma\}\leq B(\varphi)für alle passenden B-BelegungenB.
Beweis: Induktion über die Größe der Deduktion D (d.h. Anzahl der Regelanwendungen).
- I.A.: die kleinste Deduktion Dhat die Form\varphimit Hypothese\varphiund Konklusion\varphi. SeiBpassendeB-Belegung. Hypothesen vonDin\Gamma\Rightarrow\varphi\in\Gamma\Rightarrow inf\{B(\gamma)|\gamma\in\Gamma\}\leq B(\varphi)\Rightarrow\Gamma\vdash_B \varphi
- I.V.: Behauptung gelte für alle Deduktionen, die kleiner sind als D.
- I.S.: Wir unterscheiden verschiedene Fälle, je nachdem, welche Regel als letzte angewandt wurde.
- (\wedge I)Die Deduktion hat die Form $\frac{\alpha\quad\beta}{\alpha\wedge\beta}$ mit- \varphi=\alpha\wedge\beta. Sei- Bpassende B-Belegung. Nach IV gelten- inf\{B(\gamma)|\gamma\in\Gamma\}\leq B(\alpha)und $inf{B(\gamma)|\gamma\in\Gamma}\leq B(\beta)$ und damit- inf\{B(\gamma)|\gamma\in\Gamma\}\leq B(\alpha)\wedge_B B(\beta)=B(\alpha\wedge\beta) =B(\varphi). Da- Bbeliebig war, haben wir- \Gamma\vdash_B \varphigezeigt.
- (\vee E)Die Deduktion- Dhat die Form $\frac{\alpha\vee\beta\quad\phi\quad\phi}{\phi}$ Also gibt es Deduktion- Emit Hypothesen in- \Gammaund Konklusion- \alpha\vee\betaund Deduktionen- Fund- Gmit Hypothesen in- \Gamma\cup\{\alpha\}bzw.- \Gamma\cup\{\beta\}und Konklusion- \varphi. Sei- Bpassende B-Belegung. Nach IV gelten- inf\{B(\gamma)|\gamma\in\Gamma\}\leq B(\alpha\vee\beta)(1)- inf\{B(\gamma)|\gamma\in\Gamma\cup\{\alpha\}\}\leq B(\varphi)(2)- inf\{B(\gamma)|\gamma\in\Gamma\cup\{\beta\}\}\leq B(\varphi)(3) Wir unterscheiden zwei Fälle:- B(\alpha)\leq B(\beta):- inf\{B(\gamma)|\gamma\in\Gamma\}\leq B(\alpha\vee\beta) =B(\alpha)\vee_B B(\beta) =B(\beta)impliziert- inf\{B(\gamma)|\gamma\in\Gamma\}= inf\{B(\gamma)|\gamma\in\Gamma\cup\{\beta\}\}\leq B(\varphi)
- B(\alpha)>B(\beta): analog Da- Bbeliebig war, haben wir- \Gamma\vdash_B \varphigezeigt.
 
- (\rightarrow I)Die DeduktionDhat die Form $\frac{\beta}{\alpha\rightarrow\beta}$ mit- \varphi=\alpha\rightarrow\beta. Sei- Beine passende B-Belegung. Nach IV gilt $inf{B(\gamma)|\gamma\in\Gamma\cup{\alpha}}\leq B(\beta)$ Wir unterscheiden wieder zwei Fälle:- B(\alpha)=0:inf\{B(\gamma)|\gamma\in\Gamma\}\leq 1 =\rightarrow_B(B(\alpha),B(\beta)) = B(\alpha\rightarrow\beta) =B(\varphi)
- $B(\alpha)=1:inf{B(\gamma)|\gamma\in\Gamma}=inf{B(\gamma)|\gamma\in\Gamma\cup{\alpha}}\leq B(\beta) =\rightarrow_B (B(\alpha),B(\beta)) = B(\alpha\rightarrow\beta) =B(\varphi)$
Da Bbeliebig war, habe wir\Gamma\vdash_B \varphigezeigt.
 
- (raa)Die DeduktionDhat die Form $\frac{\bot}{\phi}$ Sei- Beine passende B-Belegung. Nach IV gilt- inf\{B(\gamma)|\gamma\in\Gamma\cup\{\lnot\varphi\}\}\leq B(\bot) = 0. Wir unterscheiden wieder zwei Fälle:- inf\{B(\gamma)|\gamma\in\Gamma\}=0: dann gilt- inf\{B(\gamma)|\gamma\in\Gamma\}\leq B(\varphi).
- inf\{B(\gamma)|\gamma\in\Gamma\}=1: Wegen- inf\{B(\gamma)|\gamma\in\Gamma\cup\{\lnot\varphi\}\}=0folgt- 0 =B(\lnot\varphi)=\lnot_B (B(\varphi))und daher- B(\varphi)=1\geq inf\{B(\gamma)|\gamma\in\Gamma\}. Da- Bbeliebig war, haben wir- \Gamma\vdash_B \varphigezeigt.
 
 
Ist die letzte Schlußregel in der Deduktion D von der Form (\wedge I), (\vee E), (\rightarrow I) oder (raa), so haben wir die Behauptung des Lemmas gezeigt. Analog kann dies für die verbleibenden Regeln getan werden.
Korrektheitssatz für natürliches Schließen & Wahrheitswertebereich
BFür jede Menge von Formeln
\Gammaund jede Formel\varphigilt\Gamma\vdash\varphi\Rightarrow\Gamma\vdash_B\varphi.
Beweis: Wegen \Gamma\vdash\varphi existiert eine Deduktion D mit Hypothesen in \Gamma und Konklusion \varphi. Nach dem Korrektheitslemma folgt \Gamma\vdash_B \varphi.
Korollar: Jedes Theorem ist eine B-Tautologie.
Korrektheitssatz für natürliches Schließen & Wahrheitswertebereich
BFür jede Menge von Formeln
\Gammaund jede Formel\varphigilt\Gamma\vdash\varphi\Rightarrow\Gamma\vdash_{B_\mathbb{R}}\varphi.
Beweis:
- Variante: verallgemeinere den Beweis von Korrektheitslemma und Korrektheitssatz für BaufB_\mathbb{R}(Problem: wir haben mehrfach ausgenutzt, dassB=\{0,1\}mit0<1)
- Variante: Folgerung aus Korrektheitssatz für B.
Korollar: Jedes Theorem ist eine $B_\mathbb{R}$-Tautologie.
Korrektheitslemma für nat. Schließen & Wahrheitswertebereich
H_{mathbb{R}}Sei
Deine Deduktion mit Hypothesen in der Menge\Gammaund Konklusion\varphi, die die Regel(raa)nicht verwendet. Dann gilt\Gamma\vdash_{H_\mathbb{R}}\varphi.
Beweis: ähnlich zum Beweis des Korrektheitslemmas für den Wahrheitswertebereich B. Nur die Behandlung der Regel (raa) kann nicht übertragen werden.
Beispiel: Sei p eine atomare Formel.
 Also gilt
Also gilt \{\lnot\lnot p\}\vdash p, d.h. p ist syntaktische Folgerung von \lnot\lnot p.
- Sei B$H_{mathbb{R}}$-Belegung mitB(p)=\mathbb{R}\backslash\{0\}.
- \Rightarrow B(\lnot\lnot p) =\mathbb{R}\not\subseteq \mathbb{R}\backslash\{0\}=B(p)
- \Rightarrow\lnot\lnot p\not\Vdash_{H_{mathbb{R}}} p, d.h.- pist keine- H_{mathbb{R}}-Folgerung von- \lnot\lnot p.
Korrektheitssatz für nat. Schließen & Wahrheitswertebereich
H_{mathbb{R}}Für jede Menge von Formeln
\Gammaund jede Formel\varphigilt\Gamma\vdash\varphiohne(raa)\Rightarrow\Gamma\vdash_{H_{mathbb{R}}}\varphi.
Korollar: Jedes $(raa)$-frei herleitbare Theorem ist eine $H_{mathbb{R}}$-Tautologie.
Folgerung: Jede Deduktion der Theoreme \lnot\lnot\varphi\rightarrow\varphi und \varphi\vee\lnot\varphi ohne Hypothesen verwendet (raa).
Vollständigkeit
Können wir durch mathematische Beweise zu allen korrekten Aussagen kommen?
Können wir durch das natürliche Schließen zu allen korrekten Aussagen kommen?
Existiert eine Menge \Gamma von Formeln und eine Formel \varphi mit \Gamma\vdash_W\varphi und \Gamma\not\vdash\varphi? Für welche Wahrheitswertebereiche W?
Frage für diese Vorlesung: Für welche Wahrheitswertebereiche W gilt \Gamma\vdash_W \varphi\Rightarrow\Gamma\vdash\varphi bzw. \varphi ist $W$-Tautologie \Rightarrow\varphi ist Theorem?
Plan
- Sei Weiner der WahrheitswertebereicheB,K_3 ,F ,B_\mathbb{R}, H_{mathbb{R}}.
- z.z. ist \Gamma\vdash_W\varphi\Rightarrow\Gamma\vdash\varphi.
- dies ist äquivalent zu \Gamma\not\vdash\varphi\Rightarrow\Gamma\not\Vdash_W \varphi.
- hierzu gehen wir folgendermaßen vor:
- \Gamma \not\Vdash_W\varphi
- \Leftrightarrow- \Gamma\cup\{\lnot\varphi\}konsistent
- \Rightarrow- \exists\Delta\subseteq\Gamma\cup\{\lnot\varphi\}maximal konsistent
- \Rightarrow- \Deltaerfüllbar
- \Rightarrow- \Gamma\cup\{\lnot\varphi\}erfüllbar
- \Leftrightarrow- \Gamma\not\Vdash_B \varphi
- \Rightarrow- \Gamma\not\Vdash\varphi
 
Konsistente Mengen
Definition
Sei
\Gammaeine Menge von Formeln.\Gammaheißt inkonsistent, wenn\Gamma\vdash\botgilt. Sonst heißt\Gammakonsistent.
Lemma
Sei
\Gammaeine Menge von Formeln und\varphieine Formel. Dann gilt\Gamma\not\vdash\varphi \Leftrightarrow \Gamma\cup\{\lnot\varphi\}konsistent.
Beweis: Wir zeigen „\Gamma\vdash\varphi\Leftrightarrow \Gamma\cup\{\lnot\varphi\} inkonsistent“:
- Richtung „$\Rightarrow$“, gelte also \Gamma \vdash \varphi.- \Rightarrowes gibt Deduktion- Dmit Hypothesen in- \Gammaund Konklusion- \varphi
- \RightarrowWir erhalten die folgende Deduktion mit Hypothesen in- \Gamma\cup\{\lnot\varphi\}und Konklusion- \bot:- \frac{\lnot\varphi\quad\varphi}{\bot}
- \Rightarrow\Gamma\cup\{\lnot\varphi\}\vdash\bot, d.h.$\Gamma\cup{\lnot\varphi}$ ist inkonsistent.
 
- Richtung „$\Leftarrow$“, sei also \Gamma\cup\{\lnot\varphi\}inkonsistent.- \RightarrowEs gibt Deduktion- Dmit Hypothesen in- \Gamma\cup\{\lnot\varphi\}und Konklusion- \bot.
- \RightarrowWir erhalten die folgende Deduktion mit Hypothesen in- \Gammaund Konklusion- \varphi:- \frac{\bot}{\varphi}
- \Gamma\vdash\varphi
 
Maximal konsistente Mengen
Definition
Eine Formelmenge
\Deltaist maximal konsistent, wenn sie konsistent ist und wenn gilt „\sum\supseteq\Deltakonsistent $\Rightarrow\sum = \Delta$“.
Satz
Jede konsistente Formelmenge
\Gammaist in einer maximal konsistenten Formelmenge\Deltaenthalten.
Beweis: Sei \varphi_1,\varphi_2,... eine Liste aller Formeln (da wir abzählbar viele atomare
Formeln haben, gibt es nur abzählbar viele Formeln)
Wir definieren induktiv konsistente Mengen \Gamma_n:
- Setze \Gamma_1 = \Gamma
- Setze \Gamma_{n+1}= \begin{cases} \Gamma_n\cup\{\varphi_n\}\quad\text{ falls diese Menge konsistent} \\ \Gamma_n \quad\text{sonst}\end{cases}
Setze nun \Delta =\bigcup_{n\geq 1} \Gamma_n.
- Wir zeigen indirekt, dass \Deltakonsistent ist: Angenommen,\Delta\vdash\bot.- \RightarrowEs gibt Deduktion- Dmit Konklusion- \botund endlicher Menge von Hypothesen- \Delta'\subseteq\Delta.
- \RightarrowEs gibt- n\geq 1mit- \Delta'\subseteq\Gamma_n
- \Rightarrow \Gamma_n\vdash\bot, zu- \Gamma_nkonsistent. Also ist- \Deltakonsistent.
 
- Wir zeigen indirekt, dass \Deltamaximal konsistent ist. Sei also\sum\supseteq\Deltakonsistent. Angenommen,\sum\not=\Delta.- \Rightarrowes gibt- n\in Nmit- \varphi_n\in\sum\backslash\Delta
- \Rightarrow \Gamma_n\cup\{\varphi_n\}\subseteq\Delta\cup\sum= \sumkonsistent.
- \Rightarrow \varphi_n \in\Gamma_{n+1}\subseteq \Delta, ein Widerspruch, d.h.- \Deltaist max. konsistent.
 
Lemma 1
Sei
\Deltamaximal konsistent und gelte\Delta\vdash\varphi. Dann gilt\varphi\in\Delta.
Beweis:
- 
Zunächst zeigen wir indirekt, dass \Delta\cup\{\varphi\}konsistent ist:- Angenommen, \Delta\cup\{\varphi\}\vdash\bot.
- \Rightarrow- \existsDeduktion- Dmit Hypothesen in- \Delta\cup\{\varphi\}und Konklusion- \bot.
- \Delta\vdash \varphi \Rightarrow \existsDeduktion- Emit Hypothesen in- \Deltaund Konklusion- \varphi.
- \RightarrowWir erhalten die folgende Deduktion:- \frac{\Delta \frac{\Delta}{\varphi}}{\bot}
 Also \Delta\vdash\bot, ein Widerspruch zur Konsistenz von\Delta. Also ist\Delta\cup\{\varphi\}konsistent.
- Angenommen, 
- 
Da \Delta\cup\{\varphi\}\supseteq\Deltakonsistent und\Deltamaximal konsistent ist, folgt\Delta=\Delta\cup\{\varphi\}, d.h.\varphi\in\Delta.
Lemma 2
Sei
\Deltamaximal konsistent und\varphiFormel. Dann gilt\varphi\not\in\Delta\Leftrightarrow\lnot\varphi\in\Delta.
Beweis:
- Zunächst gelte \lnot\varphi\in\Delta. Angenommen,\varphi\in\Delta. Dann haben wir die Deduktion\frac{\lnot\varphi\quad\varphi}{\bot}und damit\Delta\vdash\bot, was der Konsistenz von\Deltawiderspricht.
- Gelte nun \varphi\not\in\Delta.- \Rightarrow- \Delta(\Delta\cup\{\varphi\}\Rightarrow\Delta\cup\{\varphi\}inkonsistent (da- \Deltamax. konsistent)
- \RightarrowEs gibt Deduktion- Dmit Hypothesen in- \Delta\cup\{\varphi\}&Konklusion- \bot.
- \RightarrowWir erhalten die folgende Deduktion:- \frac{\bot}{\lnot\varphi}
- \Rightarrow- \Delta\vdash\lnot\varphi\Rightarrow\lnot\varphi\in\Delta(nach Lemma 1)
 
Erfüllbare Mengen
Definition
Sei
\Gammaeine Menge von Formeln.\Gammaheißt erfüllbar, wenn es eine passende B-BelegungBgibt mitB(\gamma) = 1_Bfür alle\gamma\in\Gamma.
Bemerkung
- Die Erfüllbarkeit einer endlichen Menge \Gammaist entscheidbar:- Berechne Menge Vvon in\Gammavorkommenden atomaren Formeln
- Probiere alle B-Belegungen B:V\rightarrow Bdurch
 
- Berechne Menge 
- Die Erfüllbarkeit einer endlichen Menge \Gammaist NP-vollständig (Satz von Cook)
Satz Sei
\Deltaeine maximal konsistente Menge von Formeln. Dann ist\Deltaerfüllbar.
Beweis: Definiere eine B-Belegung B mittels $B(p_i) = \begin{cases} 1_B \quad\text{ falls } p_i\in\Delta \ 0_B \quad\text{ sonst. } \end{cases}$
Wir zeigen für alle Formeln \varphi: B(\varphi) = 1_B \Leftarrow\Rightarrow\varphi\in\Delta (*)
Der Beweis erfolgt per Induktion über die Länge von \varphi.
- 
I.A.: hat \varphidie Länge 1, so ist\varphiatomare Formel. Hier gilt (*) nach Konstruktion vonB.
- 
I.V.: Gelte (*) für alle Formeln der Länge <n.
- 
I.S.: Sei \varphiFormel der Längen$>1$.\RightarrowEs gibt Formeln\alphaund\betader Länge$<n$ mit\varphi\in\{\lnot\alpha,\alpha\wedge\beta,\alpha\vee\beta,\alpha\rightarrow\beta\}.- Wir zeigen (*) für diese vier Fälle einzeln auf den folgenden Folien.
- Zur Erinnerung: \Deltamax. konsistent,\varphiFormel- Lemma 1: \Delta\vdash\varphi\Rightarrow\varphi\in\Delta
- Lemma 2: \varphi\not\in\Delta\Leftarrow\Rightarrow\lnot\varphi\in\Delta
 
- Lemma 1: 
 
- 
\varphi =\lnot\alpha.B(\varphi) = 1_B \Leftarrow\Rightarrow B(\alpha) = 0_B \Leftarrow\Rightarrow \alpha\not\in\Delta\Leftarrow\Rightarrow \Delta \owns\lnot\alpha =\varphi
- 
\varphi =\alpha\wedge\beta.
- B(\varphi) = 1_B \Rightarrow B(\alpha) =B(\beta) = 1_B \Rightarrow\alpha,\beta\in\Delta\Rightarrow\Delta\vdash\varphidenn- \frac{\alpha\quad\beta}{\alpha\wedge\beta}ist Deduktion- \Rightarrow\varphi\in\Delta.
- \varphi- \in- \Delta- \Rightarrow\Delta\vdash\alphaund- \Delta\vdash\betadenn- \frac{\varphi}{\alpha}und- \frac{\varphi}{\beta}sind Deduktionen.- \Rightarrow\alpha,\beta\in\Delta\Rightarrow B(\alpha),B(\beta) = 1_B=\Rightarrow B(\varphi) = 1_B
- \varphi =\alpha\vee\beta.
- B(\varphi) = 1_B \Rightarrow B(\alpha) = 1_Boder- B(\beta) = 1_B- angenommen, B(\alpha) = 1_B \Rightarrow\alpha\in\Delta\Rightarrow\Delta\vdash\varphidenn\frac{\alpha}{\varphi}ist Deduktion\Rightarrow\varphi\in\Delta
- angenommen, B(\alpha) = 0_B \Rightarrow B(\beta) = 1_B. weiter analog.
 
- angenommen, 
- \varphi\in\Delta. Dann gilt- \Delta\cup\{\lnot\alpha ,\lnot\beta\}\vdash \botaufgrund der Deduktion Da Da- \Deltakonsistent ist, folgt- \Delta\not=\Delta\cup\{\lnot\alpha,\lnot\beta\}und damit- \lnot\alpha\in\Deltaoder- \lnot\beta\in\Delta.- \Rightarrow\alpha\in\Deltaoder- \beta\in\Deltanach Lemma 2- \Rightarrow B(\alpha) = 1_Boder $B(\beta) =1_B$- \Rightarrow B(\varphi) = 1_B.
- \varphi = \alpha\rightarrow\beta.
- B(\varphi) = 1_B \Rightarrow B(\alpha) = 0_Boder- B(\beta) = 1_B \Rightarrow\lnot\alpha\in\Deltaoder $\beta\in\Delta$ Aufgrund nebenstehender Deduktionen gilt in beiden Fällen $\Delta\vdash\alpha\rightarrow\beta\Rightarrow\varphi\in\Delta$ 
- \varphi\in\Delta. Angenommen,- B(\varphi) = 0_B = \Rightarrow B(\alpha) = 1_B, B(\beta) = 0_B$\Rightarrow\alpha\in\Delta, \beta\not\in\Delta \Rightarrow \lnot\beta\in\Delta$ Aufgrund der nebenstehenden Deduktion gilt- \Delta\vdash\bot, d.h.- \Deltaist inkonsistent, im Widerspruch zur Annahme. $\Rightarrow B(\varphi) = 1_B$ 
Lemma
Sei
\Gammaeine Menge von Formeln und\varphieine Formel. Dann gilt\Gamma\not\Vdash_B\varphi\Leftarrow\Rightarrow\Gamma\cup\{\lnot \varphi\}erfüllbar.
Beweis: \Gamma\not\Vdash_B\varphi
\Leftarrow\Rightarrow es gibt passende B-Belegung B mit $inf{B(\gamma)|\gamma\in\Gamma} \not\leq_B B(\varphi)$
\Leftarrow\Rightarrow es gibt passende B-Belegung B mit inf\{B(\gamma)|\gamma\in\Gamma\}= 1_B und $B(\varphi)=0_B$
\Leftarrow\Rightarrow es gibt passende B-Belegung B mit B(\gamma) = 1_B für alle \gamma\in\Gamma und $B(\lnot\varphi) = 1_B$
\Leftarrow\Rightarrow \Gamma\cup\{\lnot\varphi\} erfüllbar
Beobachtung: Sei
Weiner der WahrheitswertebereicheB, K_3, F, H_RundB_R,\Gammaeine Menge von Formeln und\varphieine Formel. Dann gilt\Gamma\Vdash W\varphi\Rightarrow\Gamma\Vdash B\varphi.
Beweis: Sei B beliebige B-Belegung, die zu jeder Formel in \Gamma\cup\{\varphi\} paßt. definiere W-Belegung B_W durch B_W(pi) = \begin{cases} 1_W \quad\text{ falls } B(p_i) = 1_B \\ 0_W \quad\text{ sonst} \end{cases}.
per Induktion über die Formelgröße kann man für alle Formeln \psi, zu denen B paßt, zeigen:
B_W(\psi) = \begin{cases} 1_W \quad\text{ falls } B(\psi) = 1_B \\ 0_W \quad\text{ sonst.} \end{cases} (*)
Wir unterscheiden zwei Fälle:
- inf\{B(\gamma)|\gamma\in\Gamma\}= 1_B \Rightarrow inf\{B_W(\gamma)|\gamma\in\Gamma\} = 1_W(wegen ())- \Rightarrow 1_W = B_W(\varphi)(wegen- \Gamma\Vdash_W\varphi)- \Rightarrow 1_B = B(\varphi)(wegen ())- \Rightarrow inf\{B(\gamma)|\gamma\in\Gamma\} = 1_B \leq B(\varphi)und
- $inf{B(\gamma)|\gamma\in\Gamma} \not= 1_B \Rightarrow inf{B(\gamma)|\gamma\in\Gamma}= 0_B$
\Rightarrow inf\{B(\gamma)|\gamma\in\Gamma\}= 0_B \leq B(\varphi).
Da B beliebig war, gilt \Gamma\Vdash_B \varphi.
Satz (Vollständigkeitssatz)
Sei
\Gammaeine Menge von Formeln,\varphieine Formel undWeiner der WahrheitswertebereicheB,K_3 , F, B_RundH_R. Dann gilt\Gamma\Vdash_W\varphi \Rightarrow \Gamma\vdash\varphi. Insbesondere ist jede W-Tautologie ein Theorem.
Beweis: indirekt
- \Gamma\not\Vdash
- \Gamma\cup\{\lnot\varphi\}konsistent
- \exists\Delta\supseteq\Gamma\cup\{\lnot\varphi\}maximal konsistent
- \Rightarrow\Deltaerfüllbar
- \Gamma\cup\{\lnot\varphi\}erfüllbar
- \Gamma\not\Vdash_B \varphi
- \Gamma\not\Vdash_W \varphi
Vollständigkeit und Korrektheit
Satz
Seien
\Gammaeine Menge von Formeln und\varphieine Formel. Dann gilt\Gamma\vdash\varphi\Leftarrow\Rightarrow\Gamma\Vdash_B \varphi. Insbesondere ist eine Formel genau dann eine B-Tautologie, wenn sie ein Theorem ist.
Beweis: Folgt unmittelbar aus Korrektheitssatz und Vollständigkeitssatz.
Bemerkung:
- gilt für jede „Boolesche Algebra“, z.B.
B_R
\Gamma\vdash\varphiohne (raa)\Leftarrow\Rightarrow\Gamma\Vdash_{H_R} \varphi(Tarksi 1938)
Folgerung 1: Entscheidbarkeit
Satz: die Menge der Theoreme ist entscheidbar.
Beweis: Sei \varphi Formel und V die Menge der vorkommenden atomaren Formeln. Dann gilt \varphi Theorem
- \Leftarrow\Rightarrow\varphiB-Tautologie
- \Leftarrow\Rightarrowfür alle Abbildungen- B:V\rightarrow\{0_B, 1_B\}gilt- B(\varphi) = 1_B
Da es nur endlich viele solche Abbildungen gibt und B(\varphi) berechnet werden kann, ist dies eine entscheidbare Aussage.
Folgerung 2: Äquivalenzen und Theoreme
Definition
Zwei Formeln
\alphaund\betaheißen äquivalent(\alpha\equiv\beta), wenn für alle passenden B-BelegungenBgilt:B(\alpha) =B(\beta).
Satz: Es gelten die folgenden Äquivalenzen:
p_1 \vee p_2 \equiv p_2 \vee p_1
(p_1 \vee p_2 )\vee p_3 \equiv p_1 \vee (p_2 \vee p_3 )
p_1 \vee (p_2 \wedge p_3 )\equiv (p_1 \vee p_2 )\wedge (p_1 \vee p_3 )
\lnot(p_1 \vee p_2 )\equiv\lnot p_1 \wedge\lnot p_2
p_1 \vee p_1 \equiv p_1
(p_1 \wedge \lnot p_1 )\vee p_2 \equiv p_2
\lnot\lnot p_1\equiv p_1
p_1 \wedge\lnot p_1 \equiv\bot
p_1 \vee\lnot p_1 \equiv\lnot\bot
p_1 \rightarrow p_2 \equiv \lnot p_1 \vee p_2
Beweis: Wir zeigen nur die Äquivalenz (3):
Sei B beliebige B-Belegung, die wenigstens auf \{p_1, p_2, p_3\} definiert ist.
Dazu betrachten wir die Wertetabelle:
| B(p_1) | B(p_2) | B(p_3) | B(p_1\vee(p_2\wedge p_3)) | B((p_1\vee p_2)\wedge(p_1 \vee p_3 )) | 
|---|---|---|---|---|
| 0_B | 0_B | 0_B | 0_B | 0_B | 
| 0_B | 0_B | 1_B | 0_B | 0_B | 
| 0_B | 1_B | 0_B | 0_B | 0_B | 
| 0_B | 1_B | 1_B | 1_B | 1_B | 
| 1_B | 0_B | 0_B | 1_B | 1_B | 
| 1_B | 0_B | 1_B | 1_B | 1_B | 
| 1_B | 1_B | 0_B | 1_B | 1_B | 
| 1_B | 1_B | 1_B | 1_B | 1_B | 
Die anderen Äquivalenzen werden analog bewiesen.
Aus dieser Liste von Äquivalenzen können weitere hergeleitet werden:
Beispiel: Für alle Formeln \alpha und \beta gilt \lnot(\alpha\wedge\beta)\equiv\lnot\alpha\vee\lnot\beta.
Beweis: \lnot(\alpha\wedge\beta) \equiv \lnot(\lnot\lnot\alpha\wedge\lnot\lnot\beta) \equiv \lnot\lnot(\lnot\alpha\vee\lnot\beta) \equiv \lnot\alpha\vee\lnot\beta
Bemerkung Mit den üblichen Rechenregeln für Gleichungen können aus dieser Liste alle gültigen Äquivalenzen hergeleitet werden.
Zusammenhang zw. Theoremen und Äquivalenzen
Satz
Seien
\alphaund\betazwei Formeln. Dann gilt\alpha\equiv\beta\Leftarrow\Rightarrow(\alpha\leftrightarrow\beta)ist Theorem.
Beweis: \alpha\equiv\beta
- \Leftarrow\Rightarrowfür alle passenden B-Belegungen- Bgilt- B(\alpha)=B(\beta)
- \Leftarrow\Rightarrow \{\alpha\}\Vdash_B\betaund- \{\beta\}\Vdash_B \alpha
- \Leftarrow\Rightarrow \{\alpha\}\vdash\betaund- \{\beta\}\vdash\alpha(nach Korrektheits- und Vollständigkeitssatz)
es bleibt z.z., dass dies äquivalent zu \varnothing\vdash(\alpha\leftrightarrow\beta) ist.
- \Rightarrow: Wir haben also Deduktionen mit Hypothesen in- \{\alpha\}bzw. in- \{\beta\}und Konklusionen- \betabzw.$\alpha$. Es ergibt sich eine hypothesenlose Deduktion von- \alpha\leftrightarrow\beta: 
- \Leftarrow: Wir haben also eine hypothesenlose Deduktion von- \alpha\leftrightarrow\beta. Es ergeben sich die folgenden Deduktionen mit Hypothesen- \betabzw.- \alphaund Konklusionen- \alphabzw.- \beta: 
Satz
Sei
\alphaeine Formel. Dann gilt\alphaist Theorem\Leftarrow\Rightarrow\alpha\equiv\lnot\bot.
Beweis: \alpha ist Theorem
- \Leftarrow\Rightarrow\alphaist B-Tautologie (Korrektheits- und Vollständigkeitssatz)
- \Leftarrow\Rightarrowfür alle passenden B-Belegungen- Bgilt- B(\alpha) = 1_B
- \Leftarrow\Rightarrowfür alle passenden B-Belegungen- Bgilt- B(\alpha) =B(\lnot\bot)
- \Leftarrow\Rightarrow\alpha\equiv\lnot\bot
Folgerung 3: Kompaktheit
Satz
Sei
\Gammaeine u.U. unendliche Menge von Formeln und\varphieine Formel mit\Gamma\Vdash_B\varphi. Dann existiert\Gamma′\subseteq\Gammaendlich mit\Gamma′\Vdash_B \varphi.
Beweis: \Gamma\Vdash_B\varphi
- \Rightarrow\Gamma\vdash\varphi(nach dem Vollständigkeitssatz)
- \Rightarrowes gibt Deduktion von- \varphimit Hypothesen- \gamma_1,...,\gamma_n\in\Gamma
- \Rightarrow\Gamma′=\{\gamma_1,...,\gamma_n\}\subseteq\Gammaendlich mit- \Gamma′\vdash\varphi
- \Rightarrow\Gamma′\Vdash_B\varphi(nach dem Korrektheitssatz).
Folgerung (Kompaktheits- oder Endlichkeitssatz)
Sei
\Gammaeine u.U. unendliche Menge von Formeln. Dann gilt\Gammaunerfüllbar\Leftarrow\Rightarrow\exists\Gamma′\subseteq\Gammaendlich:\Gamma′unerfüllbar
Beweis: \Gamma unerfüllbar
- \Leftarrow\Rightarrow\Gamma\cup\{\lnot\bot\}unerfüllbar
- \Leftarrow\Rightarrow\Gamma\Vdash_B\bot
- \Leftarrow\Rightarrowes gibt- \Gamma′\subseteq\Gammaendlich:- \Gamma′\Vdash_B\bot
- \Leftarrow\Rightarrowes gibt- \Gamma′\subseteq\Gammaendlich:- \Gamma′\cup\{\lnot\bot\}unerfüllbar
- \Leftarrow\Rightarrowes gibt- \Gamma′\subseteq\Gammaendlich:- \Gamma′unerfüllbar
1. Anwendung des Kompaktheitsatzes: Färbbarkeit
Definition
Ein Graph ist ein Paar
G=(V,E)mit einer MengeVund $E\subseteq\binom{V}{2} ={X\subseteq V:|V$\Vdash$ 2 }$. FürW\subseteq VseiG\upharpoonright_W= (W,E\cap\binom{W}{2})der vonWinduzierte Teilgraph. Der Graph G ist 3-färbbar, wenn es eine Abbildungf:V\rightarrow\{1,2,3\}mitf(v)\not=f(w)für alle\{v,w\}\in E.
Bemerkung: Die 3-Färbbarkeit eines endlichen Graphen ist NP-vollständig
Satz Sei
G= (N,E)ein Graph. Dann sind äquivalent
Gist 3-färbbar.- Für jede endliche Menge
W\subseteq NistG\upharpoonright_W3-färbbar.
Beweis:
- 1.\Rightarrow 2.trivial
- 2.\Rightarrow 1.Sei nun, für alle endlichen Menge- W\subseteq N, der induzierte Teilgraph- G\upharpoonright_W3-färbbar.
Wir beschreiben zunächst mit einer unendlichen Menge \Gamma von Formeln, dass eine 3-Färbung existiert:
- atomare Formeln p_{n,c}fürn\in Nundc\in\{1,2,3\}(Idee: der Knoten n hat die Farbe c)
- \Gammaenthält die folgenden Formeln:- für alle n\in N:p_{n, 1} \vee p_{n, 2} \vee p_{n, 3}(der Knoten n ist gefärbt)
- für alle n\in N:\bigwedge_{1\leq c< d \leq 3} \lnot(p_{n,c} \wedge p_{n,d})(der Knoten n ist nur mit einer Farbe gefärbt)
- für alle \{m,n\}\in E: \bigwedge_{1\leq c\leq 3} \lnot(p_{m,c} \wedge p_{n,c})(verbundene Knoten m und n sind verschieden gefärbt)
 
- für alle 
Behauptung: Jede endliche Menge \Delta\subseteq\Gamma ist erfüllbar.
Begründung:
- Da \Deltaendlich ist, existiert endliche MengeW\subseteq N, so dass jede atomare Formel in\Deltadie Formp_{n,c}für einn\in Wund einc\in\{1,2,3\}hat.
- Nach Annahme existiert f_W:W\rightarrow\{1,2,3\}mitf_W(m) \not=f(n)f.a.\{m,n\}\in E\cap\binom{W}{2}.
- Definiere B:\{p_{n,c}|n\in W, 1 \leq c\leq 3\}\rightarrow\{0,1\}durchB(p_{n,c}) = \begin{cases} 1 \quad\text{ falls } f_W(n) = c \\ 0 \quad\text{ sonst.} \end{cases}
- Diese Belegung erfüllt \Delta, d.h.\Deltaist erfüllbar, womit die Behauptung gezeigt ist.
Nach dem Kompaktheitssatz ist also \Gamma erfüllbar.
Sei B erfüllende Belegung. Für n\in N existiert genau ein c\in\{1,2,3\} mit B(p_{n,c}) =1. Setze f(n) =c. Dann ist f eine gültige Färbung des Graphen G.
2. Anwendung des Kompaktheitsatzes: Parkettierungen
Idee: Gegeben ist eine Menge von quadratischen Kacheln mit gefärbten Kanten. Ist es möglich, mit diesen Kacheln die gesamte Ebene zu füllen,so dass aneinanderstoßende Kanten gleichfarbig sind?
Berühmtes Beispiel: Mit diesen 11 Kacheln kann die Ebene gefüllt werden, aber dies ist nicht periodisch möglich.

Definition
Ein Kachelsystem besteht aus einer endlichen Menge C von „Farben“ und einer Menge K von Abbildungen
\{N,O,S,W\}\rightarrow Cvon „Kacheln“. Eine Kachelung vonG\subseteq Z\times Zist eine Abbildungf:G\rightarrow Kmit
f(i,j)(N) =f(i,j+ 1 )(S)für alle(i,j),(i,j+ 1 )\in G
f(i,j)(O) =f(i+ 1 ,j)(W)für alle(i,j),(i+ 1 ,j)\in G
Satz
Sei
Kein Kachelsystem. Es existiert genau dann eine Kachelung vonZ\times Z, wenn für jedesn\in Neine Kachelung von\{(i,j) :|i|,|j| \leq n\}existiert.
Beweis:
- \Rightarrow: trivial
- \Leftarrow: Wir beschreiben zunächst mit einer unendlichen Menge- \Gammavon Formeln, dass eine Kachelung existiert: atomare Formeln- p_{k,i,j}für- k\in Kund- i,j\in Z(Idee: an der Stelle- (i,j)liegt die Kachel- k, d.h.- f(i,j) =k) Für alle- (i,j)\in Zenthält- \Gammadie folgenden Formeln:- eine der Kacheln aus Kliegt an der Stelle(i,j):\bigvee_{k\in K} p_{k,i,j}
- es liegen nicht zwei verschiedene Kacheln an der Stelle (i,j): \bigwedge_{k,k′\in K,k\not=k′} \lnot(p_{k,i,j}\wedge p_{k′,i,j})
- Kacheln an Stellen (i,j)und(i,j+1)„passen übereinander“:\bigvee_{k,k′\in K,k(N)=k′(S)} (p_{k,i,j}\wedge p_{k′,i,j+1})
- Kacheln an Stellen (i,j)und(i+1,j)„passen nebeneinander“:\bigvee_{k,k′\in K,k(W)=k′(O)} (p_{k,i,j}\wedge p_{k′,i+1,j})
 
- eine der Kacheln aus 
Sei nun \Delta\subseteq\Gamma endlich.
- \Rightarrowes gibt- n\in N, so dass- \Deltanur atomare Formeln der Form- p_{k,i,j}mit- |i|,|j|\leq nenthält.
- Voraussetzung \Rightarrowes gibt Kachelungg:\{(i,j) :|i|,|j| \leq n\}\rightarrow Kfürk\in Kund|i|,|j|\leq ndefiniereB(p_{k,i,j}) = \begin{cases} 1_B \quad\text{ falls } g(i,j) =k \\ 0_B \quad\text{ sonst} \end{cases}
- \Rightarrow B(\sigma) = 1_Bfür alle- \sigma\in\Delta(da- gKachelung)
- Also haben wir gezeigt, dass jede endliche Teilmenge von \Gammaerfüllbar ist.
- Kompaktheitssatz \Rightarrowes gibt B-BelegungBmitB(\gamma) = 1_Bfür alle\gamma\in\Gamma
- \Rightarrowes gibt Abbildung- f:Z\times Z\rightarrow Kmit- f(i,j) =k \Leftarrow\Rightarrow B(p_{k,i,j}) = 1_B.
- Wegen B\Vdash\Gammaist dies eine Kachelung.
Weitere Anwendungen des Kompaktheitsatzes
- abz. partielle Ordnungen sind linearisierbar
- abz. Gleichungssystem über \mathbb{Z}_2lösbar\Leftarrow\Rightarrowjedes endliche Teilsystem lösbar
- Heiratsproblem
- Kőnigs Lemma (Übung)
- ...
Bemerkung: Der Kompaktheitssatz gilt auch, wenn die Menge der atomaren Formeln nicht abzählbar ist. Damit gelten die obigen Aussagen allgemeiner:
- 3-Färbbarkeit: beliebige Graphen
- Linearisierbarkeit: beliebige partielle Ordnungen
- Lösbarkeit: beliebig große Gleichungssysteme über \mathbb{Z}_2
- ...
Erfüllbarkeit
Erfüllbarkeitsproblem
Eingabe: Formel
\GammaFrage: existiert eine B-Belegung
BmitB(\Gamma) = 1_B.
- offensichtlicher Algorithmus: probiere alle Belegungen durch (d.h. stelle Wahrheitswertetabelle auf)\rightarrowexponentielle Zeit
- „Automaten, Sprachen und Komplexität“: das Problem ist NP-vollständig
- nächstes Ziel:spezielle Algorithmen für syntaktisch eingeschränkte Formeln \Gamma
- Spätere Verallgemeinerung dieser Algorithmen (letzte Vorlesung des Logik-Teils von „Logik und Logikprogrammierung“) bildet Grundlage der logischen Programmierung.
Hornformeln (Alfred Horn, 1918–2001)
Definition
Eine Hornklausel hat die Form
(\lnot\bot\wedge p_1\wedge p_2\wedge ... \wedge p_n)\rightarrow qfürn\geq 0, atomare Formelnp_1 ,p_2 ,... ,p_nundqatomare Formel oderq=\bot. Eine Hornformel ist eine Konjunktion von Hornklauseln.
Schreib- und Sprechweise
- \{p_1,p_2 ,... ,p_n\}\rightarrow qfür Hornklausel $(\lnot\bot\wedge p_1 \wedge p_2 \wedge ...\wedge p_n)\rightarrow q$ insbes.- \varnothing\rightarrow qfür- \lnot\bot\rightarrow q
- \{(M_i\rightarrow q_i)| 1 \leq i\leq n\}für Hornformel- \bigwedge_{1 \leq i \leq n} (M_i\rightarrow q_i)
Bemerkung, in der Literatur auch:
- \{\lnot p_1,\lnot p_2 ,... ,\lnot p_n,q\}für- \{p_1 ,... ,p_n\}\rightarrow qmit- qatomare Formel
- \{\lnot p_1,\lnot p_2 ,... ,\lnot p_n\}für- \{p_1 ,... ,p_n\}\rightarrow\bot
- \Boxfür- \varnothing\rightarrow\bot, die „leere Hornklausel“
Markierungsalgorithmus
- Eingabe: eine endliche Menge \Gammavon Hornklauseln.
- while es gibt in \Gammaeine HornklauselM\rightarrow q, so dass allep\in Mmarkiert sind undqunmarkierte atomare Formel ist: do markiereq(in allen Hornklauseln in\Gamma)
- if \Gammaenthält eine Hornklausel der FormM\rightarrow\bot, in der allep\in Mmarkiert sind then return „unerfüllbar“ else return „erfüllbar“
Beweis einer Folgerung: Beispiel
- Ziel ist es, die folgende Folgerung zu zeigen: \{(AK\vee BK),(AK\rightarrow BK),(BK\wedge RL\rightarrow\lnot AK),RL\}\Vdash\lnot AK
- Lemma: man muß Unerfüllbarkeit der folgenden Menge zeigen: \{(AK\vee BK),(AK\rightarrow BK),(BK\wedge RL\rightarrow \lnot AK),RL,\lnot\lnot AK\}
- Dies ist keine Menge von Hornklauseln!
- Idee: ersetze BKdurch\lnot BHin allen Formeln.
- Ergebnis:
- Aus AK\vee BKwird\lnot BH\vee AK\equiv BH\rightarrow AK\equiv\{BH\}\rightarrow AK.
- Aus AK\rightarrow BKwirdAK\rightarrow\lnot BH\equiv\lnot AK\vee\lnot BH\equiv AK\wedge BH\rightarrow\bot\equiv\{AK,BH\} \rightarrow\bot.
- Aus BK\wedge RL\rightarrow\lnot AKwird\lnot BH\wedge RL\rightarrow\lnot AK\equiv BH\vee\lnot RL\vee\lnot AK\equiv RL\wedge AK\rightarrow BH\equiv\{RL,AK\}\rightarrow BH
- RL\equiv (\varnothing\rightarrow RL)
- \lnot\lnot AK\equiv (\varnothing\rightarrow AK)
 
- Aus 
- Wir müssen also zeigen, dass die folgende Menge von Hornklauseln unerfüllbar ist:
\{\{BH\}\rightarrow AK,\{AK,BH\}\rightarrow\bot,\{RL,AK\}\rightarrow BH,\varnothing\rightarrow RL,\varnothing\rightarrow AK\}
Der Markierungsalgorithmus geht wie folgt vor:
- Runde: markiere RLaufgrund der Hornklausel\varnothing\rightarrow RL
- Runde: markiere AKaufgrund der Hornklausel\varnothing\rightarrow AK
- Runde: markiere BHaufgrund der Hornklausel\{RL,AK\}\rightarrow BH
dann sind keine weiteren Markierungen möglich.
In der Hornklausel \{AK,BH\}\rightarrow\bot sind alle atomaren Formeln aus \{AK,BH\} markiert. Also gibt der Algorithmus aus, dass die Menge von Hornklauseln nicht erfüllbar ist.
Nach unserer Herleitung folgern wir, dass das Teil A heil ist.
- Der Algorithmus terminiert: in jedem Durchlauf der while-Schleife wird wenigstens eine atomare Formel markiert. Nach endlich vielen Schritten terminiert die Schleife also.
- Wenn der Algorithmus eine atomare Formelqmarkiert und wenn Beine B-Belegung ist, die\Gammaerfüllt, dann giltB(q) = 1_B. Beweis: wir zeigen induktiv übern: Wennqin einem der erstennSchleifendurchläufe markiert wird, dann giltB(q) = 1_B.
- I.A. Die Aussage gilt offensichtlich für n=0.
- I.S. werde die atomare Formel qin einem der erstennSchleifendurchläufe markiert. Dann gibt es eine Hornklausel\{p_1,p_2 ,... ,p_k\}\rightarrow q, so dassp_1 ,... ,p_kin den erstenn-1Schleifendurchläufen markiert wurden. Also giltB(p_1)=...=B(p_k) = 1_Bnach IV. DaBalle Hornformeln aus\Gammaerfüllt, gilt insbesondereB(\{p_1 ,p_2 ,... ,p_k\}\rightarrow q) = 1_Bund damitB(q) = 1_B.
- Wenn der Algorithmus „unerfüllbar“ ausgibt, dann ist \Gammaunerfüllbar. Beweis: indirekt, wir nehmen also an, dass der Algorithmus „unerfüllbar“ ausgibt,Baber eine B-Belegung ist, die\Gammaerfüllt. Sei\{p_1 ,... ,p_k\}\rightarrow\botdie Hornklausel aus\Gamma, die die Ausgabe „unerfüllbar“ verursacht (d.h. die atomaren Formelnp_1 ,... ,p_ksind markiert). Nach 2. giltB(p_1) =...=B(p_k) = 1_B, alsoB(\{p_1 ,p_2 ,... ,p_k\}\rightarrow\bot) = 0_Bim Widerspruch zur Annahme, dassBalle Hornklauseln aus\Gammaerfüllt. Also kann es keine erfüllende B-Belegung von\Gammageben.
- Wenn der Algorithmus „erfüllbar“ ausgibt, dann erfüllt die folgende B-Belegung alle Formeln aus \Gamma: $B(p_i)=\begin{cases} 1_B \quad\text{ der Algorithmus markiert } p_i \ 0_B \quad\text{ sonst} \end{cases}$ Beweis:- Sei M\rightarrow qeine beliebige Hornklausel aus\Gamma.
- Ist ein p\in Mnicht markiert, so giltB(\bigwedge_{p\in M} p) = 0_Bund damitB(M\rightarrow q) = 1_B.
- Sind alle p\in Mmarkiert, so wird auchqmarkiert, alsoB(q) = 1_Bund damitB(M\rightarrow q) = 1_B.
- Gilt q=\bot, so existiert unmarkiertesp\in M(da der Algorithmus sonst „unerfüllbar“ ausgegeben hätte), alsoB(M\rightarrow\bot) = 1_Bwie im ersten Fall. Also giltB(M\rightarrow q) = 1_Bfür alle Hornklauseln aus\Gamma, d.h.\Gammaist erfüllbar.
 
- Sei 
Satz
Sei
\Gammaendliche Menge von Hornklauseln. Dann terminiert der Markierungsalgorithmus mit dem korrekten Ergebnis.
Beweis: Die Aussagen 1.-4. beweisen diesen Satz.
Bemerkungen:
- Mit einer geeigneten Implementierung läuft der Algorithmusin linearer Zeit.
- Wir haben sogar gezeigt, dass bei Ausgabe von „erfüllbar“ eine erfüllende B-Belegung berechnet werden kann.
SLD-Resolution
Definition
Sei
\Gammaeine Menge von Hornklauseln. Eine SLD-Resolution aus\Gammaist eine Folge(M_0\rightarrow\bot,M_1\rightarrow\bot,... ,M_m\rightarrow\bot)von Hornklauseln mit
(M_0\rightarrow\bot)\in\Gamma- für alle
0\leq n<mexistiert(N\rightarrow q)\in\Gammamitq\in M_nundM_{n+1} = M_n\backslash\{q\}\cup N
Beispiel:
- \Gamma =\{\{BH\}\rightarrow AK,\{AK,BH\}\rightarrow\bot,\{RL,AK\}\rightarrow BH,\varnothing\rightarrow RL,\varnothing\rightarrow AK\}
- M_0 =\{AK,BH\}
- M_1 =M_0 \backslash\{BH\}\cup\{RL,AK\}=\{RL,AK\}
- M_2 =M_1 \backslash\{RL\}\cup\varnothing =\{AK\}
- M_3 =M_2 \backslash\{AK\}\cup\varnothing =\varnothing
Lemma A
Sei
\Gammaeine (u.U. unendliche) Menge von Hornklauseln und(M_0\rightarrow\bot, M_1\rightarrow\bot,... , M_m\rightarrow\bot)eine SLD-Resolution aus\GammamitM_m=\varnothing. Dann ist\Gammanicht erfüllbar.
Beweis:
- indirekt: angenommen, es gibt B-Belegung BmitB(N\rightarrow q) = 1_Bfür alle(N\rightarrow q)\in\Gamma.
- Wir zeigen für alle 0\leq n\leq mper Induktion über n: es gibtp\in M_nmitB(p) = 0_B(4)
- I.A.: n=0:(M_0 \rightarrow\bot,...)SLD-Resolution\Rightarrow(M_0\rightarrow\bot)\in\Gamma- \Rightarrow B(M_0\rightarrow\bot) = 1_B
- \Rightarrowes gibt- p\in M_0mit- B(p) = 0_B
 
- I.V.: sei n<mundp\in M_nmitB(p) = 0_B
- I.S.: (... ,M_n\rightarrow\bot,M_{n+ 1}\rightarrow\bot,...)SLD-Resolution\Rightarrowes gibt(N\rightarrow q)\in\GammamitM_{n+1} =M_n\backslash\{q\}\cup Nundq\in M_n. Zwei Fälle werden unterschieden:- p\not=q: dann gilt- p\in M_{n+1}mit- B(p) = 0_B
- p=q:(N\rightarrow q)\in\Gamma\Rightarrow B(N\rightarrow q) = 1_Bes gibt- p′\in N\subseteq M_{n+1}mit $B(p′)=0_B$ in jedem der zwei Fälle gilt also (4) für- n+1.
 
- Damit ist der induktive Beweis von (4) abgeschlossen.
- Mit m=nhaben wir insbesondere "es gibtp\in M_mmit $B(p) = 0_B$" im Widerspruch zuM_m=\varnothing. Damit ist der indirekte Beweis abgeschlossen.
Lemma B
Sei
\Gammaeine (u.U. unendliche) unerfüllbare Menge von Hornklauseln. Dann existiert eine SLD-Resolution(M_0\rightarrow\bot,...,M_m\rightarrow\bot)aus\GammamitM_m=\varnothing.
Beweis: Endlichkeitssatz: es gibt \Delta\subseteq\Gamma endlich und unerfüllbar. Bei Eingabe von$\Delta$ terminiert Markierungsalgorithmus mit „unerfüllbar“
- r\geq 0...Anzahl der Runden
- q_i...Atomformel, die in- iRunde markiert wird- (1\leq i\leq r)
Behauptung: Es gibt m\leq r und SLD-Resolution (M_0\rightarrow\bot,...,M_m\rightarrow\bot) aus \Delta mit M_m=\varnothing und M_n\subseteq\{q_1,q_2,... ,q_{r-n}\} f.a. 0\leq n\leq m. (5)
Beweis der Behauptung: Wir konstruieren die Hornklauseln M_i\rightarrow\bot induktiv:
- I.A.: Da der Markierungsalgorithmus mit „unerfüllbar“ terminiert, existiert eine Hornklausel (M_0\rightarrow\bot)\in\GammamitM_0\subseteq\{q_1,... ,q_{r- 0}\}.(M_0\rightarrow\bot)ist SLD-Resolution aus\Delta, die (5) erfüllt.
- I.V.: Sei n\leq rund(M_0\rightarrow\bot,... ,M_n\rightarrow\bot)SLD-Resolution, so dass (5) gilt.
- I.S.: wir betrachten drei Fälle:
- Fall M_n=\varnothing: mitm:=nist Beweis der Beh. abgeschlossen.
- Fall n=r: Nach (5) giltM_n\subseteq\{q_1,...,q_{r-n}\}=\varnothing. Mitm:=nist der Beweis der Beh. abgeschlossen.
- Fall n<rundM_n \not=\varnothing. Seikmaximal mitq_k\in M_n\subseteq\{q_1,q_2,... ,q_{r-n}\}. Also existiert(N\rightarrow q_k)\in\Delta, so dassN\subseteq\{q_1,... ,q_{k-1}\}. SetzeM_{n+1}=M_n\backslash\{q_k\}\cup N\subseteq\{q_1,... ,q_{k-1}\}\subseteq\{q_1,...,q_{r-(n+1)}\}.
 
- Fall 
Damit ist der induktive Beweis der Beh. abgeschlossen, woraus das Lemma unmittelbar folgt.
Satz
Sei
\Gammaeine (u.U. unendliche) Menge von Hornklauseln. Dann sind äquivalent:
\Gammaist nicht erfüllbar.- Es gibt eine SLD-Resolution
(M_0\rightarrow\bot,M_1\rightarrow\bot,... ,M_m\rightarrow\bot)aus\GammamitM_m=\varnothing.
Beweis: Folgt unmittelbar aus Lemmata A und B.
Beispiel: \Gamma=\{\{a,b\}\rightarrow\bot,\{a\}\rightarrow c, \{b\}\rightarrow c,\{c\}\rightarrow a,\varnothing\rightarrow b; alle SLD-Resolutionen aus$\Gamma$ kann man durch einen Baum beschreiben:

Die Suche nach einer SLD-Resolution mit M_m=\varnothing kann grundsätzlich auf zwei Arten erfolgen:
- Breitensuche:
- findet SLD-Resolution mit M_m=\varnothing(falls sie existiert), da Baum endlich verzweigend ist (d.h. die Niveaus sind endlich)
- hoher Platzbedarf, da ganze Niveaus abgespeichert werden müssen (in einem Binärbaum der Tiefe nkann es Niveaus der Größe2^ngeben)
 
- findet SLD-Resolution mit 
- Tiefensuche:
- geringerer Platzbedarf (in einem Binärbaum der Tiefe nhat jeder Ast die Länge\leq n)
- findet existierende SLD-Resolution mit M_m=\varnothingnicht immer (siehe Beispiel)
 
- geringerer Platzbedarf (in einem Binärbaum der Tiefe 
Zusammenfassung Aussagenlogik
- Das natürliche Schließen formalisiert die „üblichen“ Argumente in mathematischen Beweisen.
- Unterschiedliche Wahrheitswertebereiche formalisieren unterschiedliche Vorstellungen von „Wahrheit“.
- Das natürliche Schließen ist vollständig und korrekt für den Booleschen Wahrheitswertebereich.
- Der Markierungsalgorithmus und die SLD-Resolution sind praktikable Verfahren, um die Erfüllbarkeit von Hornformeln zu bestimmen.
Kapitel 2: Prädikatenlogik
Beispiel: Graphen
 Um über diesen Graphen Aussagen in der Aussagenlogik zu machen, verwenden wir Formeln
Um über diesen Graphen Aussagen in der Aussagenlogik zu machen, verwenden wir Formeln \varphi_{i,j} für 1\leq i,j\leq 9 mit \varphi_{i,j}=\begin{cases} \lnot\bot\quad\text{ falls} (v_i,v_j) Kante\\ \bot\quad\text{ sonst}\end{cases}
- Die aussagenlogische Formel \bigvee_{1\leq i,j\leq 9} \varphi_{i,j}sagt aus, dass der Graph eine Kante enthält.
- Die aussagenlogische Formel \bigwedge_{1\leq i\leq 9} \bigvee_{1\leq j\leq 9} \varphi_{i,j}sagt aus, dass jeder Knoten einen Nachbarn hat
- Die aussagenlogische Formel \bigvee_{1\leq i,j,k\leq 9 verschieden} \varphi_{i,j}\wedge\varphi_{j,k}\wedge\varphi_{k,i}sagt aus, dass der Graph ein Dreieck enthält. Man kann so vorgehen, wenn der Graph bekannt und endlich ist. Sollen analoge Aussagen für einen anderen Graphen gemacht werden, so ist die Kodierungsarbeit zu wiederholen.
Beispiel: Datenbanken
- Im folgenden reden wir über die Studenten und die Lehrenden in Veranstaltungen zur Theoretischen Informatik in diesem Semester. Betrachte die folgenden Aussagen:
- Jeder ist Student oder wissenschaftlicher Mitarbeiter oder Professor.
- Dietrich Kuske ist Professor.
- Kein Student ist Professor.
- Jeder Student ist jünger als jeder Professor.
- Es gibt eine Person, die an den Veranstaltungen „Logik und Logikprogrammierung“ und „Algorithmen und Datenstrukturen“ teilnimmt.
- Es gibt eine Person, die kein wissenschaftlicher Mitarbeiter ist und nicht an beiden Veranstaltungen teilnimmt.
- Jeder Student ist jünger als die Person, mit der er am besten über Informatik reden kann.
 
- Um sie in der Aussagenlogik machen zu können, müssen wir atomare Aussagen für „Hans ist Student“, „Otto ist jünger als Ottilie“ usw. einführen. Dies ist nur möglich, wenn
- alle involvierten Personen bekannt sind und fest stehen und
- es nur endlich viele involvierte Personen gibt.
 
- Sollen analoge Aussagen für das vorige oder das kommende Jahr gemacht werden, so ist die gesamte Kodierungsarbeit neu zu machen.
Kodierung in einer „Struktur“
- Grundmenge: Die Studenten und die Lehrenden in Veranstaltungen zur Theoretischen Informatik in diesem Sommersemester
- Teilmengen:
- S(x)„x ist Student“
- LuLP(x)„x nimmt an der Veranstaltung LuLP teil“
- AuD(x)„x nimmt an der Veranstaltung AuD teil“
- Pr(x)„x ist Professor“
- WM(x)„x ist wissenschaftlicher Mitarbeiter“
 
- Relationen:
- J(x,y)„x ist jünger als y“
 
- Funktion:
- f(x)ist diejenige Person (aus dem genannten Kreis), mit der x am besten über Informatik reden kann.
 
- Konstante:
- dkDietrich Kuske
 
Die in der Aussagenlogik nur schwer formulierbaren Aussagen werden nun
- Für alle xgiltS(x)\vee WM(x)\vee Pr(x)
- Pr(dk)
- Für alle xgiltS(x)\rightarrow\lnot Pr(x)
- Für alle xundygilt(S(x)\wedge Pr(y))\rightarrow J(x,y)
- Es gibt ein xmitLuLP(x)\wedge AuD(x)
- Es gibt ein xmit((\lnot LuLP(x)\vee\lnot AuD(x))\wedge\lnot WM(x))
- Für alle xgiltS(x)\rightarrow J(x,f(x))
Bemerkung: Diese Formulierungen sind auch brauchbar, wenn die Grundmenge unendlich ist. Sie sind auch unabhängig vom Jahr (im nächsten Jahr können diese Folien wieder verwendet werden).
Ziel
- Wir wollen in der Lage sein, über Sachverhalte in „Strukturen“ (Graphen, Datenbanken, relle Zahlen, Gruppen... ) zu reden.
- Dabei soll es „Relationen“ geben, durch die das Enthaltensein in einer Teilmenge oder Beziehungen zwischen Objekten ausgedrückt werden können (z.B. S(x),J(x,y),...)
- Weiter soll es „Funktionen“ geben, durch die Objekte (oder Tupel von Objekten) auf andere Objekte abgebildet werden (z.B. f)
- Nullstellige Funktionen (ohne Argumente): Konstante (z.B. dk)
Fragen
- Nach welchen Regeln bildet man korrekte Formeln?
- Was ist eine Struktur?
- Wann hat eine Aussage in einer Struktur eine Bedeutung (ist „sinnvoll“)?
- Wann „gilt“ eine Aussage in einer Struktur?
- Gibt es Formeln, die in allen Strukturen gelten?
- Kann man solche Formeln algorithmisch identifizieren? Gibt es einen Beweiskalkül wie das natürliche Schließen oder die SLD-Resolution?
- .........
Syntax der Prädikatenlogik
Formeln machen Aussagen über Strukturen. Dabei hat es keinen Sinn zu fragen, ob eine Formel, die über Studenten etc. redet, im Graphen G gilt.
Definition
Eine Signatur ist ein Tripel
\sum=(\Omega, Rel,ar), wobei\OmegaundReldisjunkte Mengen von Funktions- und Relationsnamen sind undar:\Omega\cup Rel\rightarrow\mathbb{N}eine Abbildung ist.
Beispiel: \Omega=\{f,dk\} mit ar(f) =1,ar(dk)=0 und Rel=\{S,LuLP,AuD,Pr,WM,J\} mit ar(S) =ar(LuLP) =ar(AuD) =ar(Pr) =ar(WM) =1 undar(J) = 2 bilden die Signatur der Datenbank von vorhin.
- typische Funktionsnamen: f, g, a, b...mitar(f),ar(g) > 0undar(a) =ar(b) = 0
- typische Relationsnamen: R,S,...
Definition
Die Menge der Variablen ist
Var=\{x_0,x_1 ,...\}.
Definition
Sei
\sumeine Signatur. Die MengeT_{\sum}der $\sum$-Terme ist induktiv definiert:
- Jede Variable ist ein Term, d.h.
Var\subseteq T_{\sum}- ist
f\in\Omegamitar(f)=kund sindt_1,...,t_k\in T_{\sum}, so giltf(t_1,...,t_k)\in T_{\sum}- Nichts ist $\sum$-Term, was sich nicht mittels der obigen Regeln erzeugen läßt.
Beispiel:In der Signatur der Datenbank von vorhin haben wir u.a. die folgenden Terme:
- x_1und- x_8
- f(x_0)und- f(f(x_3))
- dk()und- f(dk())- hierfür schreiben wir kürzer- dkbzw.- f(dk)
Definition
Sei
\sumSignatur. Die atomaren $\sum$-Formeln sind die Zeichenketten der Form
R(t_1,t_2,...,t_k)fallst_1,t_2,...,t_k\in T_{\sum}undR\in Relmitar(R)=koder
t_1=t_2fallst_1,t_2\in T_{\sum}oder
\bot.
Beispiel: In der Signatur der Datenbank von vorhin haben wir u.a. die folgenden atomaren Formeln:
- S(x_1)und- LuLP(f(x4))
- S(dk)und- AuD(f(dk))
Definition
Sei
\sumSignatur. $\sum$-Formeln werden durch folgenden induktiven Prozeß definiert:
- Alle atomaren $\sum$-Formeln sind $\sum$-Formeln.
- Falls
\varphiund\Psi$\sum$-Formeln sind, sind auch(\varphi\wedge\Psi),$(\varphi\vee\Psi)$ und(\varphi\rightarrow\Psi)$\sum$-Formeln.- Falls
\varphieine $\sum$-Formel ist, ist auch\lnot\varphieine $\sum$-Formel.- Falls
\varphieine $\sum$-Formel undx\in Var, so sind auch\forall x\varphiund\exists x\varphi$\sum$-Formeln.- Nichts ist $\sum$-Formel, was sich nicht mittels der obigen Regeln erzeugen läßt.
Ist die Signatur \sum aus dem Kontext klar, so sprechen wir einfach von Termen, atomaren Formeln bzw.Formeln.
Beispiel:In der Signatur der Datenbank von vorhin haben wir u.a. die folgenden Formeln:
- \forall x_0 (S(x_0)\vee WM(x_0)\vee Pr(x_0))
- Pr(dk)
- \forall x_3 (S(x_3)\rightarrow\lnot Pr(x_3))
- \forall x_0 \forall x_2 ((S(x_0)\wedge Pr(x_2))\rightarrow J(x_0,x_2))
- \exists x_1 (LuLP(x_1)\wedge AuD(x_1))
- \exists x_2 ((\lnot LuLP(x_2)\vee\lnot AuD(x_2))\wedge\lnot WM(x_2))
- \forall x_1 (S(x_1)\rightarrow J(x_1,f(x_1)))
Wir verwenden die aus der Aussagenlogik bekannten Abkürzungen, z.B. steht \varphi\leftrightarrow\Psi für (\varphi\rightarrow\Psi)\wedge(\Psi\rightarrow\varphi).
Zur verbesserten Lesbarkeit fügen wir mitunter hinter quantifizierten Variablen einen Doppelpunkt ein, z.B. steht \exists x\forall y:\varphi für \exists x\forall y\varphi
Ebenso verwenden wir Variablennamen x,$y$,$z$ u.ä.
Präzedenzen: \lnot,\forall x,\exists x binden am stärksten
Beispiel: (\lnot\forall x:R(x,y)\wedge\exists z:R(x,z))\rightarrow P(x,y,z) steht für ((\lnot(\forall x:R(x,y))\wedge\exists z:R(x,z))\rightarrow P(x,y,z))
Aufgabe
Im folgenden seien
- Pein-stelliges,- Qund- Rzwei-stellige Relationssymbole,
- anull-stelliges und- fein-stelliges Funktionssymbol und
- x,yund- zVariable.
Welche der folgenden Zeichenketten sind Formeln?
| \forall x P(a) | |
| \forall x\exists y(Q(x,y)\vee R(x)) | |
| \forall x Q(x,x)\rightarrow\exists x Q(x,y) | |
| \forall x P(f(x))\vee\forallx Q(x,x)$ | |
| \forall x(P(y)\wedge\forall y P(x)) | |
| P(x) \rightarrow\exists x Q(x,P(x)) | |
| \forall f\exists x P(f(x)) | 
Definition
Sei
\sumeine Signatur. Die MengeFV(\varphi)der freien Variablen einer $\sum$-Formel\varphiist induktiv definiert:
- Ist
\varphiatomare $\sum$-Formel, so istFV(\varphi)die Menge der in\varphivorkommenden Variablen.
FV(\varphi\Box\Psi) =FV(\varphi)\cup FV(\Psi)für\Box\in\{\wedge,\vee,\rightarrow\}
FV(\lnot\varphi) =FV(\varphi)
FV(\exists x\varphi) =FV(\forall x\varphi) =FV(\varphi)\backslash\{x\}. Eine $\sum$-Formel\varphiist geschlossen oder ein $\sum$-Satz, wennFV(\varphi)=\varnothinggilt.
Was sind die freien Variablen der folgenden Formeln? Welche Formeln sind Sätze?
| Formel? | Satz? | |
|---|---|---|
| \forall x P(a) | ||
| \forall x Q(x,x)\rightarrow\exists x Q(x,y) | ||
| \forall x P(x)\vee\forall x Q(x,x) | ||
| \forall x(P(y)\wedge\forall y P(x)) | ||
| \forall x(\lnot\forall y Q(x,y)\wedge R(x,y)) | ||
| \exists z(Q(z,x)\vee R(y,z))\rightarrow\exists y(R(x,y)\wedge Q(x,z)) | ||
| \exists x(\lnot P(x)\vee P(f(a))) | ||
| P(x)\rightarrow\exists x P(x) | ||
| \exists x\forall y((P(y)\rightarrow Q(x,y))\vee\lnot P(x)) | ||
| \exists x\forall x Q(x,x) | 
Semantik der Prädikatenlogik
- Erinnerung: Die Frage „Ist die aussagenlogische Formel \varphiwahr oder falsch?“ war sinnlos, denn wir wissen i.a. nicht, ob die atomaren Aussagen wahr oder falsch sind.
- Analog: Die Frage „Ist die prädikatenlogische Formel \varphiwahr oder falsch?“ ist sinnlos, denn wir wissen bisher nicht, über welche Objekte, über welche „Struktur“\varphispricht.
Definition
Sei
\sumeine Signatur. Eine $\sum$-Struktur ist ein TupelA=(U_A,(f^A)_{f\in\Omega},(R^A)_{R\in Rel}), wobei
U_Aeine nichtleere Menge, das Universum,
R^A\supseteq U_A^{ar(R)}eine Relation der Stelligkeitar(R)fürR\in Relund
f^A:U_A^{ar(f)}\rightarrow U_Aeine Funktion der Stelligkeitar(f)fürf\in\Omegaist.
Bemerkung: U_A^0=\{()\}.
- Also ist a^A:U_A^0\rightarrow U_Afüra\in\Omegamitar(a)=0vollständig gegeben durcha^A(())\in U_A. Wir behandeln 0-stellige Funktionen daher als Konstanten.
- Weiterhin gilt R^A=\varnothingoderR^A=\{()\}fürR\in Relmitar(R)=0.
Beispiel: Graph
- Sei \sum=(\Omega ,Rel,ar)mit\Omega=\varnothing ,Rel=\{E\}undar(E)=2die Signatur der Graphen.
- Um den Graphen als $\sum$-Struktur A=(UA,EA)zu betrachten, setzen wir- UA=\{v_1,v_2,...,v_9\}und
- EA=\{(v_i,v_j)|(v_i,v_j) ist Kante\}
 
Im folgenden sei \sum eine Signatur, A eine $\sum$-Struktur und ρ:Var\rightarrow U_A eine Abbildung (eine Variableninterpretation).
Wir definieren eine Abbildung ρ′:T\sum\rightarrow U_A induktiv für t\in T_{\sum}:
- ist t\in Var, so setzeρ′(t) =ρ(t)
- ansonsten existieren f\in\Omegamitar(f)=kundt_1,...,t_k\in T_{\sum}mitt=f(t_1,...,t_k). Dann setzeρ′(t) =f^A(ρ′(t_1),...,ρ′(t_k)). Die Abbildungρ′ist die übliche „Auswertungsabbildung“. Zur Vereinfachung schreiben wir auchρ(t)an Stelle vonρ′(t).
Beispiel:
- Seien A=(R,f^A,a^A)mitf^Adie Subtraktion undanullstelliges Funktionssymbol mita^A=10. Seien weiterx,y\in Varmitρ(x)=7undρ(y)=-2. Dann giltρ(f(a,f(x,y))) =ρ(a)-(ρ(x)-ρ(y)) =a^A-(ρ(x)-ρ(y)) = 1
- Seien A= (Z,f^A,a^A)mitf^Adie Maximumbildung,anullstelliges Funktionssymbol mita^A=10. Seien weiterx,y\in Varmitρ(x)=7undρ(y)=-2. In diesem Fall giltρ(f(a,f(x,y))) = max(ρ(a),max(ρ(x),ρ(y)) = max(a^A,max(ρ(x),ρ(y))) = 10
Bemerkung: Wir müssten also eigentlich noch vermerken, in welcher Struktur ρ(t) gebildet wird – dies wird aber aus dem Kontext immer klar sein.
Für eine $\sum$-Formel \varphi definieren wir die Gültigkeit in einer $\sum$-Struktur A unter der Variableninterpretation ρ (in Zeichen: A\Vdash_ρ\varphi) induktiv:
- A\Vdash_ρ\botgilt nicht.
- A\Vdash_ρ R(t_1,...,t_k)falls- (ρ(t_1),...,ρ(t_k))\in R^Afür- R\in Relmit- ar(R)=kund- t_1,...,t_k\in T_{\sum}.
- A\Vdash_ρ t_1 =t_2falls- ρ(t_1) =ρ(t_2)für- t_1,t_2\in T_{\sum}.
Für $\sum$-Formeln \varphi und \Psi und x\in Var:
- A\Vdash_p \varphi\wedge\Psifalls- A\Vdash_p\varphiund- A\Vdash_p \Psi.
- A\Vdash_p \varphi\vee\Psifalls- A\Vdash_p\varphioder- A\Vdash_p\Psi.
- A\Vdash_p \varphi\rightarrow\Psifalls nicht- A\Vdash_p\varphioder- A\Vdash_p\Psi.
- A\Vdash_p \lnot\varphifalls- A\Vdash_p \varphinicht gilt.
- A\Vdash_p \exists x\varphifalls ???
- A\Vdash_p \forall x\varphifalls ???
Für x\in Var und a\in U_A sei ρ[x\rightarrow a]:Var\rightarrow U_A die Variableninterpretation, für die gilt (ρ[x\rightarrow a])(y) = \begin{cases} ρ(y) \quad\text{ falls } x\not=y \\ a \quad\text{ sonst } \end{cases}
- A\Vdash_p \exists x\varphifalls es- a\in U_Agibt mit- A\Vdash_{p[x\rightarrow a]}\varphi.
- A\Vdash_p \forall x\varphifalls- A\Vdash_{p[x\rightarrow a]}\varphifür alle- a\in U_A.
Definition
Sei
\sumeine Signatur,\varphieine $\sum$-Formel,\Deltaeine Menge von $\sum$-Formeln undAeine $\sum$-Struktur.
A\Vdash\varphi(Aist Modell von\varphi) fallsA\Vdash_p\varphifür alle Variableninterpretationenρgilt.
A\Vdash\DeltafallsA\Vdash\Psifür alle\Psi\in\Delta.
Aufgaben
- Sei Adie Struktur, die dem vorherigen Graphen entspricht
- Welche der folgenden Formeln \varphigelten inA, d.h. für welche Formeln giltA\Vdash_p\varphifür alle Variableninterpretationenρ?- \exists x\exists y:E(x,y)
- \forall x\exists y:E(x,y)
- \exists x\forall y:(x\not=y\rightarrow E(x,y))
- \forall x\forall y:(x\not=y\rightarrow E(x,y))
- \exists x\exists y\exists z:(E(x,y)\wedge E(y,z)\wedge E(z,x))
 
- In der Prädikatenlogik ist es also möglich, die Eigenschaften vom Anfang des Kapitels auszudrücken, ohne den Graphen direkt in die Formel zu kodieren.
Definition
Sei
\sumeine Signatur,\varphieine $\sum$-Formel,\Deltaeine Menge von $\sum$-Formeln undAeine $\sum$-Struktur.
\Deltaist erfüllbar, wenn es $\sum$-StrukturBund Variableninterpretationρ:Var\rightarrow U_Bgibt mitB\Vdash_ρ\Psifür alle\Psi\in\Delta.
\varphiist semantische Folgerung von\Delta(\Delta\Vdash\varphi)falls für alle $\sum$-StrukturenBund alle Variableninterpretationenρ:Var\rightarrow U_Bgilt: GiltB\Vdash_ρ\Psifür alle\Psi\in\Delta, so gilt auchB\Vdash_ρ \varphi.
\varphiist allgemeingültig, fallsB\Vdash ρ\varphifür alle $\sum$-StrukturenBund alle Variableninterpretationenρgilt.
Bemerkung: \varphi allgemeingültig gdw. \varnothing\Vdash\varphi gdw. \{\lnot\varphi\} nicht erfüllbar. Hierfür schreiben wir auch \Vdash\varphi.
Beispiel: Der Satz \varphi=(\forall x:R(x)\rightarrow\forall x:R(f(x))) ist allgemeingültig.
Beweis: Sei \sum Signatur, so dass \varphi  $\sum$-Satz ist. Sei A $\sum$-Struktur und ρ Variableninterpretation. Wir betrachten zwei Fälle:
- Falls A\not\Vdash_ρ\forall x R(x), so giltA\Vdash_p\varphi.
- Wir nehmen nun A\Vdash_p\forall x R(x)an. Seia\in U_Abeliebig undb=f^A(a).A\Vdash_p\forall x R(x) \Rightarrow A\Vdash_{p[x\rightarrow b]} R(x) \Rightarrow RA\owns (p[x\rightarrow b])(x) = b = f^A(a) = (ρ[x\rightarrow a])(f(x)) \Rightarrow A\Vdash_{p[x\rightarrow a]}R(f(x)). Daa\in U_Abeliebig war, haben wir alsoA\Vdash_p\forall x:R(f(x)). Also gilt auch in diesem FallA\Vdash_p\varphi. DaAundρbeliebig waren, ist\varphisomit allgemeingültig.
Beispiel:
- Der Satz \varphi =\exists x(R(x)\rightarrow R(f(x)))ist allgemeingültig.
- Beweis: Sei \sumSignatur, so dass\varphi$\sum$-Satz ist. SeiA$\sum$-Struktur undρVariableninterpretation. Wir betrachten wieder zwei Fälle:- Angenommen, R^A=U_A. Seia\in U_Abeliebig.- \Rightarrow f^A(a)\in R^A
- \Rightarrow A\Vdash_{p[x\rightarrow a]} R(f(x))
- \Rightarrow A\Vdash_{p[x\rightarrow a]} R(x)\rightarrow R(f(x))
- \Rightarrow A\Vdash_p\varphi.
 
- Ansonsten existiert a\in U_A\backslash R^A.- \Rightarrow A\not\Vdash_{p[x\rightarrow a]} R(x)
- \Rightarrow A\Vdash_{p[x\rightarrow a]} R(x)\rightarrow R(f(x))
- \Rightarrow A\Vdash_p \varphi. Da- Aund- ρbeliebig waren, ist- \varphisomit allgemeingültig.
 
 
- Angenommen, 
Aufgabe
| a: allgemeingültig | e: erfüllbar | u: unerfüllbar | |
|---|---|---|---|
| P(a) | |||
| \exists x:(\lnot P(x)\vee P(a)) | |||
| P(a)\rightarrow\exists x:P(x) | |||
| P(x)\rightarrow\exists x:P(x) | |||
| \forall x:P(x)\rightarrow\exists x:P(x) | |||
| \forall x:P(x)\wedge\lnot\forall y:P(y) | |||
| \forall x:(P(x,x)\rightarrow\exists x\forall y:P(x,y)) | |||
| \forall x\forall y:(x=y\rightarrow f(x) =f(y)) | |||
| \forall x\forall y:(f(x) =f(y)\rightarrow x=y) | |||
| \exists x\exists y\exists z:(f(x) =y\wedge f(x) =z\wedge y \not=z) | |||
| \exists x\forall x:Q(x,x) | 
Substitutionen
Definition
Eine Substitution besteht aus einer Variable
x\in Varund einem Termt\in T_{\sum}, geschrieben[x:=t].
Die Formel \varphi[x:=t] ist die Anwendung der Substitution [x:=t] auf die Formel \varphi. Sie entsteht aus \varphi, indem alle freien Vorkommen von x durch t ersetzt werden. Sie soll das über t aussagen, was \varphi über x ausgesagt hat.
Dazu definieren wir zunächst induktiv, was es heißt, die freien Vorkommen von x im Term s\in T_{\sum} zu ersetzen:
- x[x:=t] =t
- y[x:=t] =yfür- y\in Var\backslash\{x\}
- (f(t_1 ,...,t_k))[x:=t] =f(t_1 [x:=t],...t_k[x:=t])für- f\in\Omegamit- ar(f) =kund- t_1,...,t_k\in T_{\sum}
Lemma
Seien
\sumSignatur,A$\sum$-Struktur,ρ:Var\rightarrow U_AVariableninterpretation,x\in Varunds,t\in T_{\sum}. Dann giltρ(s[x:=t])=ρ[x\rightarrow ρ(t)](s).
Beweis: Induktion über den Aufbau des Terms s (mit ρ′=ρ[x\rightarrow ρ(t)] ):
- s=x:ρ(s[x:=t])=ρ(t) =ρ′(x) =ρ′(s)
- s\in Var\backslash\{x\}:ρ(s[x:=t])=ρ(s) =ρ′(s)
- s=f(t_1 ,...,t_k):ρ((f(t_1 ,...,t_k))[x:=t])= ρ(f(t_1[x:=t],...,t_k[x:=t]))= f^A(ρ(t_1[x:=t]),...,ρ(t_k[x:=t])) = f^A(ρ′(t_1),...,ρ′(t_k))= ρ′(f(t_1 ,...,t_k))=ρ′(s)
Die Definition von s[x:=t] kann induktiv auf $\sum$-Formeln fortgesetzt werden:
- (t_1 =t_2 )[x:=t] = (t_1 [x:=t] =t_2 [x:=t])für- t_1 ,t_2 \in T_{\sum}
- (R(t_1 ,...,t_k))[x:=t] =R(t_1 [x:=t],...,t_k[x:=t])für- R\in Relmit- ar(R) =kund- t_1 ,...,t_k\in T_{\sum}
- \bot[x:=t] =\bot
Für \sum -Formeln \varphi und \Psi und y\in Var:
- (\varphi\Box\Psi)[x:=t]=\varphi [x:=t]\Box\Psi[x:=t]für- \Box\in\{\wedge,\vee,\rightarrow\}
- (\lnot\varphi)[x:=t] = \lnot(\varphi[x:=t])
- (Qy\varphi)[x:=t] = \begin{cases} Qy\varphi[x:=t] \quad\text{ falls } x\not=y \\ Qy\varphi \quad\text{ falls } x=y \end{cases} \text{ für } Q\in\{\exists,\forall\}.
Beispiel: (\exists x P(x,f(y))\vee\lnot\forall yQ(y,g(a,h(z))))[y:=f(u)] = (\exists x P(x,f(f(u)))\vee\lnot\forall yQ(y,g(a,h(z))))
\varphi [x:=t] „soll das über t aussagen, was \varphi über x ausgesagt hat.“
Gegenbeispiel: Aus \exists y Mutter(x) =y mit Substitution [x:=Mutter(y)] wird \exists y Mutter$(Mutter(y)) =y$.
Definition
Sei
[x:=t]Substitution und\varphi$\sum$-Formel. Die Substitution[x:=t]heißt für\varphizulässig, wenn für alley\in Vargilt:yVariable int\Rightarrow\varphienthält weder\exists ynoch\forall y
Lemma
Sei
\sumSignatur, A $\sum$-Struktur,ρ:Var\rightarrow U_AVariableninterpretation,x\in Varundt\in T_{\sum}. Ist die Substitution[x:=t]für die $\sum$-Formel\varphizulässig, so giltA\Vdash_p\varphi [x:=t]\Leftrightarrow A\Vdash_{p[x\rightarrow ρ(t)]}\varphi.
Beweis: Induktion über den Aufbau der Formel \varphi (mit ρ'=ρ[x\rightarrow ρ(t)]):
- \varphi = (s_1 =s_2):- A\Vdash_p(s_1 =s_2)[x:=t] \Leftrightarrow A\Vdash_p s_1[x:=t] =s_2[x:=t]
- \Leftrightarrow ρ(s_1[x:=t]) =ρ(s_2[x:=t])\Leftrightarrow ρ'(s_1) =ρ'(s_2)
- \Leftrightarrow A\Vdash_{p′} s_1 =s_2
- andere atomare Formeln analog
 
- \varphi =\varphi_1\wedge\varphi_2:- A\Vdash_p(\varphi_1\wedge\varphi_2)[x:=t] \Leftrightarrow A\Vdash_p\varphi_1 [x:=t]\wedge\varphi_2[x:=t]
- \Leftrightarrow A\Vdash_p\varphi_1[x:=t]und- A\Vdash_p\varphi_2[x:=t]
- \Leftrightarrow A\Vdash_{p′}\varphi_1und- A\Vdash_{p′}\varphi_2
- \Leftrightarrow A\Vdash_{p′}\varphi_1\wedge\varphi_2
- \varphi=\varphi_1\vee\varphi_2,\varphi =\varphi_1\rightarrow\varphi_2und- \varphi=\lnot\psianalog
 
- \varphi=\forall y\psi:- Wir betrachten zunächst den Fall x=y:- A\Vdash_p(\forall x\psi)[x:=t]\Leftrightarrow A\Vdash_p\forall x\psi \Leftrightarrow A\Vdash_{p′}\forall x\psi(denn- x\not\in FV(\forall x\psi))
 
- Jetzt der Fall x\not=y:- Für a\in U_Asetzeρ_a=ρ[y\rightarrow a]. Da[x:=t]für\varphizulässig ist, kommtyintnicht vor. Zunächst erhalten wir
- ρ_a[x\rightarrow ρ_a(t)] = ρ_a[x\rightarrow ρ(t)]da- ynicht in- tvorkommt
- =ρ[y\rightarrow a][x\rightarrow ρ(t)] = ρ[x\rightarrow ρ(t)][y\rightarrow a]da- x\not=y
- Es ergibt sich A\Vdash_p(\forall y\psi)[x:=t]\Leftrightarrow A\Vdash_p\forall y(\psi[x:=t])(wegenx\not=y)
- \Leftrightarrow A\Vdash_{pa}\psi[x:=t]für alle- a\in U_A
- \Leftrightarrow A\Vdash_{pa[x\rightarrow ρ_a(t)]}\psifür alle- a\in U_A
- \Leftrightarrow A\Vdash_{p[x\rightarrow ρ(t)][y\rightarrow a]}\psifür alle- a\in U_A
- \Leftrightarrow A\Vdash_{p[x\rightarrow ρ(t)]}\forall y\psi
 
- Für 
 
- Wir betrachten zunächst den Fall 
- \varphi=\exists y\psi: analog
Natürliches Schließen
Wir haben Regeln des natürlichen Schließens für aussagenlogische Formeln untersucht und für gut befunden. Man kann sie natürlich auch für prädikatenlogische Formeln anwenden.
Beispiel: Für alle $\sum$-Formel \varphi und \psi gibt es eine Deduktion mit Hypothesen in \{\lnot\varphi\wedge\lnot\psi\} und Konklusion \lnot(\varphi\vee\psi): 
Korrektheit
Können wir durch mathematische Beweise zu falschen Aussagen kommen? Können wir durch das natürliche Schließen zu falschen Aussagen kommen? Existiert eine Menge \Gamma von $\sum$-Formeln und eine $\sum$-Formel \varphi mit \Gamma\vdash\varphi und
\Gamma\not\Vdash\varphi?
Frage: Gilt \Gamma\vdash\varphi\Rightarrow \Gamma\Vdash\varphi bzw. \varphi ist Theorem \Rightarrow\varphi ist allgemeingültig?
Der Beweis des Korrektheitslemmas für das natürliche Schließen kann ohne große Schwierigkeiten erweitert werden. Man erhält
Lemma V0
Sei
\sumeine Signatur,\Gammaeine Menge von $\sum$-Formeln und\varphieine $\sum$-Formel. Sei weiterDeine Deduktion mit Hypothesen in\Gammaund Konklusion\varphi, die die Regeln des natürlichen Schließens der Aussagenlogik verwendet. Dann gilt\Gamma\Vdash\varphi.
Umgekehrt ist nicht zu erwarten, dass aus \Gamma\Vdash\varphi folgt, dass es eine Deduktion mit Hypothesen in \Gamma und Konklusion \varphi gibt, denn die bisher untersuchten Regeln erlauben keine Behandlung von =,\forall bzw. \exists. Solche Regeln werden wir jetzt einführen.
Zunächst kümmern wir uns um Atomformeln der Form t_1 =t_2. Hierfür gibt es die zwei Regeln (R) und (GfG):
Reflexivität (ausführlich)
Für jeden Termt ist
\frac{}{t=t}eine hypothesenlose Deduktion mit Konklusiont=t.
Gleiches-für-Gleiches in mathematischen Beweisen
,,Zunächst zeige ich, dass
sdie Eigenschaft\varphihat:... Jetzt zeige ichs=t:... Also haben wir gezeigt, dasstdie Eigenschaft\varphihat. qed''Gleiches-für-Gleiches (ausführlich) Seien
sundtTerme und\varphiFormel, so dass die Substitutionen[x:=s]und[x:=t]für\varphizulässig sind. SindDundEDeduktionen mit Hypothesen in\Gammaund Konklusionen\varphi[x:=s]bzw.s=t, so ist das folgende eine Deduktion mit Hypothesen in\Gammaund Konklusion\varphi[x:=t]:Gleiches-für-Gleiches (Kurzform)
Bedingung: über keine Variable aus
sodertwird in\varphiquantifiziert
Die folgenden Beispiele zeigen, dass wir bereits jetzt die üblichen Eigenschaften der Gleichheit (Symmetrie, Transitivität, Einsetzen) folgern können.
Beispiel: Seien x Variable, s Term ohne x und \varphi=(x=s).
- Da \varphiquantorenfrei ist, sind die Substitutionen[x:=s]und[x:=t]für\varphizulässig.
- Außerdem gelten \varphi[x:=s] = (s=s)und\varphi[x:=t] = (t=s).
- Also ist das folgende eine Deduktion:  
- Für alle Termesundthaben wir also \{s=t\}\vdash t=s.
Beispiel: Seien x Variable, r,s und t Terme ohne x und \varphi=(r=x).
- Da \varphiquantorenfrei ist, sind die Substitutionen[x:=s]und[x:=t]für\varphizulässig.
- Außerdem gelten \varphi[x:=s]=(r=s)und\varphi[x:=t]=(r=t).
- Also ist das folgende eine Deduktion:  
- Für alle Terme r,sundthaben wir also\{r=s,s=t\}\vdash r=t.
Beispiel: Seien x Variable, s und t Terme ohne x,$f$ einstelliges Funktionssymbol und \varphi=(f(s)=f(x)).
- Da \varphiquatorenfrei ist, sind die Substitutionen[x:=s]und[x:=t]für\varphizulässig.
- Außerdem gelten \varphi[x:=s]=(f(s)=f(s))und\varphi[x:=t]=(f(s)=f(t)).
- Also ist das folgende eine Deduktion:  
Lemma V1
Sei
\sumeine Signatur,\Gammaeine Menge von $\sum$-Formeln und\varphieine $\sum$-Formel. Sei weiterDeine Deduktion mit Hypothesen in\Gammaund Konklusion\varphi, die die Regeln des natürlichen Schließens der Aussagenlogik,(R)und(GfG)verwendet. Dann gilt\Gamma\Vdash\varphi.
Beweis: Wir erweitern den Beweis des Korrektheitslemmas bzw. des Lemmas V0, der Induktion über die Größe der Deduktion D verwendete.
- Wir betrachten nur den Fall, dass Ddie folgende Form hat: 
- Da dies Deduktion ist, sind die Substitutionen [x:=s]und[x:=t]für\varphizulässig, d.h. in\varphiwird über keine Variable aussodertquantifiziert.
- Eund- Fkleinere Deduktionen- \Rightarrow\Gamma\Vdash\varphi[x:=s]und- \Gamma\Vdash s=t
- Seien A $\sum$-Struktur und ρVariableninterpretation mitA\Vdash_p\gammafür alle\gamma\in\Gamma.- \Rightarrow A\Vdash_p\varphi[x:=s]und- A\Vdash_p s=t
- \Rightarrow A\Vdash_{p[x\rightarrow ρ(s)]}\varphiund- ρ(s) =ρ(t)
- \Rightarrow A\Vdash_{p[x\rightarrow ρ(t)]}\varphi
- \Rightarrow A\Vdash_p \varphi[x:=t]
 
- Da Aundρbeliebig waren mitA\Vdash_p\gammafür alle\gamma\in\Gammahaben wir\Gamma\Vdash\varphi[x:=t]gezeigt.

















