ah yes
This commit is contained in:
		
						commit
						413ed5cd20
					
				
							
								
								
									
										270
									
								
								README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										270
									
								
								README.md
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,270 @@ | ||||
| # Aussagenlogik | ||||
| 
 | ||||
| ## Aussagenlogische Formeln (Syntax) | ||||
| 
 | ||||
| - $A_1, A_2, \dots$ bzw. $A, B, C$ : atomare Formeln | ||||
| - $0$, $1$ : Boolesche Konstanten | ||||
| - $\lnot F$ : Negation von $F$ | ||||
| - $(F \land G)$ : Konjunktion | ||||
| - $(F \lor G)$ : Disjunktion | ||||
| - $(F \to G)$ : entspricht $(\lnot F \lor G)$ | ||||
| - $(F \leftrightarrow G)$ : entspricht $((F \land G) \lor (\lnot F \land \lnot G))$ | ||||
| - $(\bigvee_{i=1}^n F_i)$ : entspricht $((F_1 \lor F_2) \lor F_3) \dots$ | ||||
| - $(\bigwedge_{i=1}^n F_i)$ : entspricht $((F_1 \land F_2) \land F_3) \dots$ | ||||
| 
 | ||||
| Klammern weglassen: $\land$ bindet stärker als $\lor$, also $a \land b \lor c \iff (a \land b) \lor c$ | ||||
| 
 | ||||
| ## Belegung (Semantik) | ||||
| 
 | ||||
| Eine Belegung $\mathcal A$ legt für jede atomare Formel ($A_1, A_2, \dots, B, C, \dots$) einen Wahrheitswert, z.B. $\mathcal A(A_1) = 0$, fest. | ||||
| 
 | ||||
| Außerdem: $\mathcal A(F)$ ist der Wahrheitswert der Formel $F$ unter der Belegung $\mathcal A$, d.h. | ||||
| der Wahrheitswert der Formel $F$, wenn alle atomaren Formeln, z.B. $A_1, \dots, A_n$, als $\mathcal A(A_1), \dots, \mathcal A(A_n)$ gedeutet werden. | ||||
| 
 | ||||
| In diesen Definitionen wird dann die Semantik festgelegt: | ||||
| $\land$ ist das *Und*, $\lor$ ist das *Oder*, und $\lnot$ ist die *Negation*. | ||||
| 
 | ||||
| ## Definitionen | ||||
| 
 | ||||
| Falls eine Belegung $\mathcal A$ für alle in einer Formel $F$ vorkommenden | ||||
| atomaren Formeln definiert ist, so heißt $\mathcal A$ zu $F$ **passend** (d.h. einfach: man kann $\mathcal A$ auf $F$ anwenden). | ||||
| 
 | ||||
| Gilt $\mathcal A(F) = 1$, dann ist $\mathcal A$ ein **Modell** für $F$: $\mathcal A \; |= \; F$. | ||||
| 
 | ||||
| Eine *Menge von Formeln* heißt erfüllbar, falls es eine Belegung $\mathcal A$ gibt, die für *jede* der Formeln ein Modell ist. | ||||
| 
 | ||||
| Eine Formel $F$ heißt **gültig** oder **Tautologie** falls jede passende Belegung ein Modell für $F$ ist: $|= \; F$ | ||||
| 
 | ||||
| $F$ ist gültig genau dann, wenn $\lnot F$ unerfüllbar ist. | ||||
| 
 | ||||
| Folgt $G$ logisch aus $F$ (**logische Folgerung**), $F \; |= \; G$, gilt $|= \; F \to G$ | ||||
| 
 | ||||
| Wenn es mindestens ein Modell für $F$ gibt, heißt $F$ **erfüllbar**, sonst **unerfüllbar**. | ||||
| 
 | ||||
| ## Erfüllbarkeit und Gültigkeit Prüfen | ||||
| 
 | ||||
| Man könnte "einfach" alle $2^n$ Belegungen ausprobieren. | ||||
| 
 | ||||
| ## Semantische Äquivalenz (Syntaktisch unterschiedlicher Formeln) | ||||
| 
 | ||||
| Zwei Formeln $F$ und $G$ sind **semantisch äquivalent**, wenn sie unter | ||||
| jeder (passenden) Belegung denselben Wahrheitswert erhalten: $F \equiv G$ | ||||
| 
 | ||||
| Es gilt $F \equiv G$ genau dann, wenn $|= \; (F \leftrightarrow G)$ gilt. | ||||
| 
 | ||||
| Semantische Äquivalenzen: | ||||
| 
 | ||||
| - Idempotenz | ||||
|   + $F \land F \equiv F$ | ||||
|   + $F \lor F \equiv F$ | ||||
| - Kommutativität | ||||
|   + $F \land G \equiv G \land F$ | ||||
|   + $F \lor G \equiv G \lor F$ | ||||
| - Assoziativität | ||||
|   + $F \land (G \land H) \equiv (F \land G) \land H$ | ||||
|   + $F \lor (G \lor H) \equiv (F \lor G) \lor H$ | ||||
| - Distributivgesetz | ||||
|   + $F \land (G \lor H) \equiv (F \land G) \lor (F \land H)$ | ||||
|   + $F \lor (G \land H) \equiv (F \lor G) \land (F \lor H)$ | ||||
| - Absorptionsgesetze | ||||
|   + $F \land (F \lor G) \equiv F$ | ||||
|   + $F \lor (F \land G) \equiv F$ | ||||
| - deMorgan | ||||
|   + $\lnot (F \lor G) = \lnot F \land \lnot G$ | ||||
|   + $\lnot (F \land G) = \lnot F \lor \lnot G$ | ||||
| - Doppelnegation | ||||
|   + $\lnot \lnot F \equiv F$ | ||||
| - Tautologie- und Unerfüllbarkeitsregeln | ||||
|   + $1 \lor G \equiv 1$ | ||||
|   + $0 \lor G \equiv G$ | ||||
|   + $1 \land G \equiv G$ | ||||
|   + $0 \land G \equiv 0$ | ||||
|   + statt 0 oder 1 auch tautologien oder unerfüllbare Formeln möglich | ||||
| 
 | ||||
| ## Konjunktive und Disjunktive Normalformen (KNF/DNF) | ||||
| 
 | ||||
| Beispiels-KNF: \ | ||||
| $F = (A \lor \lnot B) \land (\lnot C \lor \lnot A \lor D) \land (\lnot A \lor \lnot B) \land D \land \lnot E$ | ||||
| 
 | ||||
| Beispiels-DNF: \ | ||||
| $F = (A \land \lnot B) \lor (\lnot C \land \lnot A \land D) \lor (\lnot A \land \lnot B) \lor D \lor \lnot E$ | ||||
| 
 | ||||
| Für jede Formel $F$ gibt es (mind.) eine äquivalente ($\equiv$) Formel in KNF und (mind.) eine in DNF. | ||||
| 
 | ||||
| ## Hornformeln | ||||
| 
 | ||||
| Erfüllbarkeit mit beliebigen Formeln oder KNFs zu prüfen ist schwierig (NP), | ||||
| mit DNFs ist es aber einfach - DNFs herzustellen ist aber schwierig. | ||||
| 
 | ||||
| Hornformeln sind eingeschränkte aussagenlogische Formeln, | ||||
| deren Erfüllbarkeit dafür aber leicht zu testen ist. | ||||
| 
 | ||||
| Hornformeln sind Formeln $F$ in KNF, wobei jede Klausel in $F$ | ||||
| höchstens ein positives Literal enthält: | ||||
| 
 | ||||
| Hornklauseln: $A$, $\lnot A$, $\lnot A \lor B$, $\lnot A \lor B \lor \lnot C$, aber **nicht** $A \lor B$, $\lnot A \lor B \lor C$ | ||||
| 
 | ||||
| Hornformel: $A \land (\lnot A \lor B) \land \lnot C$ | ||||
| 
 | ||||
| (TODO?) Erfüllbarkeitstest für Hornformeln (Aussagenlogik2:21) | ||||
| 
 | ||||
| ## Resolution | ||||
| 
 | ||||
| Mit Resolution kann eine Formel auf Unerfüllbarkeit getestet werden. | ||||
| 
 | ||||
| Basierend nur auf Syntax wissen wir u.A.: | ||||
| 
 | ||||
| - $F \lor \lnot F \equiv 1$ und $F \land \lnot F \equiv 0$ | ||||
| - Wenn $F$ und $F \to G$, dann auch $G$ | ||||
| 
 | ||||
| **Anwendung:** | ||||
| 
 | ||||
| Sei $F$ eine Formel in KNF, also | ||||
| 
 | ||||
| $F = (L{1,1} \lor \dots \lor L_{1,n_1}) \land \dots \land (L_{k,1} \lor \dots \lor L_{k,n_k})$ | ||||
| 
 | ||||
| Wir stellen die Formel als Mengen von Klauseln dar: | ||||
| 
 | ||||
| $F = \{ \{ L_{1,1}, \dots, L_{1,n_1} \}, \dots, \{ L_{k,1}, \dots, L_{k,n_k} \} \}$ | ||||
| 
 | ||||
| Wenn es zwei Klauseln gibt, wovon eine ein Literal positiv und die andere dasselbe Literal negativ beinhaltet, | ||||
| wird $R$ aus den beiden Klauseln nach dem Literal resolviert: | ||||
| 
 | ||||
| $K_1 = \{ A, \lnot B, C, D \}$ \ | ||||
| $K_2 = \{ A, \lnot B, \lnot C \}$ \ | ||||
| $\to \{ A, \lnot B, D \} = R$ | ||||
| 
 | ||||
| Also $R = K_1$ ohne $C \; \cup \; K_2$ ohne $\lnot C$ | ||||
| 
 | ||||
| Wenn man irgendwie auf einen Resolvent $R = \{ \}$ kommt, | ||||
| ist die Formel widerlegt (Resolutionssatz der Aussagenlogik). | ||||
| 
 | ||||
| # Prädikatenlogik | ||||
| 
 | ||||
| Erweitert die Aussagenlogik mit | ||||
| 
 | ||||
| - Quantoren $\exists, \forall$ | ||||
| - Variablen $x_1, x_2, \dots$ oder $u, v, w, x, y, z$ | ||||
| - Funktions- und Prädikatssymbole $f_1, f_2, \dots$ oder $f, g, h$ | ||||
| - Konstanten (Funktionssymbole der Stelligkeit 0): $a_1, a_2, \dots$ oder $a, b, c$ | ||||
| - Prädikatsybole: $P_1, P_2, \dots$ oder $P, Q, R$ | ||||
| 
 | ||||
| ## Signatur | ||||
| 
 | ||||
| $\Sigma = \{ a/0, f/3, P/2 \}$ | ||||
| 
 | ||||
| <small>Beinhaltet nicht die Variablen</small> | ||||
| 
 | ||||
| $PL(\Sigma)$ ist die Menge aller prädikatenlogischen *Aussagen* über der Signatur $\Sigma$. | ||||
| 
 | ||||
| ## Prädikatenlogische Formeln | ||||
| 
 | ||||
| ### Terme | ||||
| 
 | ||||
| - Variablen $x_1$ | ||||
| - Funktionen $f(t_1, \dots, t_k)$ mit *Termen* $t_1, \dots, t_k$ | ||||
| 
 | ||||
| Terme, die keine Variablen enthalten, sind **Grundterme**. | ||||
| 
 | ||||
| ### Formeln | ||||
| 
 | ||||
| - $P(t_1, \dots, t_k)$ mit *Termen* $t_1, \dots, t_k$ und Prädikatsymbol $P$ (Atomare Formeln) | ||||
| - Sonst wie bei Aussagenlogik mit $\lnot$, $\land$, $\lor$ | ||||
| - $\exists x F$ und $\forall x F$ mit Variable $x$ und Formel $F$ | ||||
| 
 | ||||
| --- | ||||
| 
 | ||||
| Variablen sind *gebunden*, wenn sie mit $\exists$ oder $\forall$ verwendet werden, sonst *frei*. | ||||
| 
 | ||||
| Eine Formel ohne Vorkommen einer freien Variable heißt *geschlossen* oder eine *Aussage*. | ||||
| 
 | ||||
| ## Matrix | ||||
| 
 | ||||
| Die Matrix von $F$, also $F$ ohne $\exists$ und $\forall$, ist $F^*$: | ||||
| 
 | ||||
| $F = \exists x \dots \land \lnot \forall y \dots$ \ | ||||
| $F^* = \dots \land \lnot \dots$ | ||||
| 
 | ||||
| ## Bereinigt | ||||
| 
 | ||||
| Eine Formel ist bereinigt, wenn verschiedene Quantoren nicht dieselbe Variable binden: | ||||
| 
 | ||||
| $\exists x \dots \land \forall x \dots \; \to \; \exists x \dots \land \forall y \dots$ | ||||
| 
 | ||||
| ## Struktur $\mathcal A$ | ||||
| 
 | ||||
| Eine Struktur $\mathcal A$ zu einer Signatur $\Sigma$ ist ein Paar $(U_{\mathcal A}, I_{\mathcal A})$. | ||||
| 
 | ||||
| $U_{\mathcal A}$ ist das Universum, $I_{\mathcal A}$ ordnet jedem Funktions-/Prädikatssymbol eine Funktion bzw. Relation (Menge) auf $U_{\mathcal A}$ zu. | ||||
| 
 | ||||
| Wir schreiben $f^{\mathcal A}$ für $I_{\mathcal A}(f)$ bzw $P^{\mathcal A}$ für $I_{\mathcal A}(P)$. | ||||
| 
 | ||||
| Eine Struktur ist **passend** zu einer Aussage, falls die Signatur passt (d.h. die in $F$ vorkommenden Funktions-/Prädikatssymbole Elemente von $\Sigma$ sind). | ||||
| 
 | ||||
| ### Auswertung mit Variablen | ||||
| 
 | ||||
| $\mathcal A [x/m]$ bedeutet, dass die Variable $x$ den Wert $m$ annimmt. | ||||
| 
 | ||||
| ## Modell, Erfüllbarkeit, Äquivalenz, \dots | ||||
| 
 | ||||
| Eine Struktur $\mathcal A$ ist ein Modell für $F$ ($\mathcal A |= F$) wenn wahr (wie bei AL). | ||||
| 
 | ||||
| Auch wie bei AL: Erfüllbarkeit, (allgemeine) Gültigkeit, Äquivalenz, Logische Folgerung. \ | ||||
| Äquivalenzen aus der AL gelten auch in der PL. | ||||
| 
 | ||||
| ## Pränexform | ||||
| 
 | ||||
| Alle Quantoren am Anfang, also z.B. | ||||
| $\exists x \forall y \exists z H$. | ||||
| 
 | ||||
| Für jede Formel gibt es eine äquivalente (und bereinigte) Formel in Pränexform. | ||||
| 
 | ||||
| Dazu: Formel bereinigen, dann Quantoren einfach rausziehen, sodass innere Quantoren nach äußeren stehen. | ||||
| 
 | ||||
| ## Skolemform | ||||
| 
 | ||||
| Sei $F$ eine Formel in bereinigter Pränexform. | ||||
| Man erhält nun die Skolemform von $F$, indem man | ||||
| $\forall x_1 \dots \forall x_n \exists x_{n+1} G$ in $\forall x_1 \dots \forall x_n G [x_{n+1}/f(x_1,\dots,x_n)]$ | ||||
| umwandelt, d.h. man je den **ersten** Existenzquantor $\exists$ entfernt und dessen Variable als Funktion der äußeren Variablen (aus davor stehenden $\forall$) schreibt. | ||||
| Diese Funktion $f$ kann auch nullstellig sein, also eine Konstante, z.B. $a$. | ||||
| 
 | ||||
| Ist $F$ geschlossen, so gilt: $F$ ist genau dann erfüllbar, wenn die Skolemform von $F$ erfüllbar ist. | ||||
| 
 | ||||
| $\to$ **Matrix der Skolemform in KNF als Klauselmenge, dann Resolution** | ||||
| 
 | ||||
| ## Herbrand-Universum | ||||
| 
 | ||||
| Das Herbrand-Universum $D(F)$ einer geschlossenen Formel $F$ in Skolemform | ||||
| ist die Menge aller variablenfreien Terme, die aus den Bestandteilen von $F$ | ||||
| gebildet werden können: | ||||
| 
 | ||||
| - Alle Konstanten aus $F$ sind in $D(F)$ | ||||
| - $f(t_1, \dots, t_n)$ ist in $D(F)$, mit $f \in F$ und $t_1, \dots, t_n$ \in $D(F)$ | ||||
| 
 | ||||
| ## Herbrand-Struktur | ||||
| 
 | ||||
| $(D(F), f^{\mathcal A} \mapsto f)$ | ||||
| 
 | ||||
| Wahl für $P$ etc ist noch offen. | ||||
| 
 | ||||
| Mit Limitierung auf Herbrand-Strukturen immernoch **erfüllbarkeitsäquivalent**. | ||||
| 
 | ||||
| ## Satz von Löwenheim-Skolem | ||||
| 
 | ||||
| Jede erfüllbare Formel der Prädikatenlogik besitzt bereits ein abzählbares Modell. | ||||
| 
 | ||||
| Da $\mathbb R$ überabzählbar, kann es in PL nicht formuliert werden. | ||||
| 
 | ||||
| ## Herbrand-Expansion | ||||
| 
 | ||||
| Die Herbrand-Expansion $E(F)$ einer Formel $F = \forall \dots F^*$ in Skolemform | ||||
| ist die Menge aller möglichen Formeln $F^*[\dots][\dots]\dots[\dots]$ mit $\dots \in D(F)$. | ||||
| 
 | ||||
| $F$ unerfüllbar genau dann wenn eine endliche Teilmenge von $E(F)$ unerfüllbar ist. | ||||
| 
 | ||||
| $\to$ Unerfüllbarkeit ist semi-entscheidbar (Entscheidbarkeit damit co-semi-entscheidbar). | ||||
| 
 | ||||
| ## Grundresolution | ||||
| 
 | ||||
| Resolution wie bei AL, basierend auf Herbrand-Expansion | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 mark
							mark