29.12.2012 Aufrufe

Teil I: Logik und Prädikatenlogik

Teil I: Logik und Prädikatenlogik

Teil I: Logik und Prädikatenlogik

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

Informatik A<br />

Prof. Dr. Norbert Fuhr<br />

fuhr@uni-duisburg.de<br />

auf Basis des Skripts von<br />

Prof. Dr. Wolfram Luther <strong>und</strong> der Folien von Peter<br />

Fankhauser<br />

1


<strong>Teil</strong> I<br />

<strong>Logik</strong><br />

2


Geschichte<br />

• R. Descartes (17. Jhdt): klassische Euklidische Geometrie mit algebraischen<br />

Methoden<br />

• G.W. Leibnitz (17. Jhdt): lingua characteristica, calculus rationator<br />

• Gottlob Frege (1879): Begriffsschrift <strong>Prädikatenlogik</strong> erster Stufe<br />

• Skolem (1920): Beweisverfahren<br />

• D. Hilbert, W. Ackermann (1928): Entscheidbarkeitsproblem<br />

• Herbrand (1930): Entscheidbarkeit für korrekten mathematischen<br />

Satz<br />

• Alan Turing, Alonzo Church (1936): Unentscheidbarkeit PL1<br />

• Robinson (1954): automatisches Beweisverfahren (Resolutionsprinzip)<br />

• Kowalski, Colmerauer (1972): Prolog<br />

3


<strong>Teil</strong> I.1<br />

Aussagenlogik<br />

4


Aussagenlogik<br />

Gr<strong>und</strong>lagen<br />

• Aussage (atomare Formel):<br />

Satz der entweder wahr oder falsch ist<br />

abgekürzt mit Großbuchstaben (A, B, ...)<br />

• Beispiel: Heute ist Sonntag<br />

• Interpretation: Zuordnung eines Wahrheitswertes (w oder f)<br />

• Operation: Verknüpfung von Aussagen<br />

• Beispiel: Heute ist Sonntag <strong>und</strong> es ist kalt.<br />

5


Verknüpfungen<br />

• Negation: einstellige Operation: ¬A oder A<br />

w f<br />

¬ f w<br />

• Konjunktion: zweistellige Operation: A ∧ B<br />

∧ w f<br />

w w f<br />

f f f<br />

• Disjunktion: zweistellige Operation: A ∨ B<br />

∨ w f<br />

w w w<br />

f w f<br />

6


Formeln<br />

Rekursive Konstruktion:<br />

Beispiel<br />

A . . . Heute ist Montag.<br />

B . . . Heute ist Feiertag.<br />

C . . . Heute ist Vorlesung.<br />

¬(A ∧ ¬B) ∨ C<br />

Literal L ::= A Aussage<br />

| ¬A Negierte Aussage<br />

Formel F ::= L Literal<br />

| ¬F Negation<br />

| F ∧ F Konjunktion<br />

| F ∨ F Disjunktion<br />

| (F ) Klammerung<br />

7


Weitere Verküpfungen<br />

• Subjunktion: A → B ≡ ¬A ∨ B<br />

→ w f<br />

w w f<br />

f w w<br />

• Bijunktion: A ←→ B ≡ (A ∧ B) ∨ (¬A ∧ ¬B)<br />

←→ w f<br />

w w f<br />

f f w<br />

• Antivalenz (xor): A ⊕ B ≡ (A ∧ ¬B) ∨ (¬A ∧ B)<br />

⊕ w f<br />

w f w<br />

f w f<br />

8


Klauseln<br />

Klausel K ::= L Literal<br />

| K ∨ K Disjunktion<br />

Konjunktive Form KF ::= (K) Klausel<br />

| (K) ∧ KF Konjunktion von Klauseln<br />

Konjunktion D ::= L Literal<br />

| D ∧ D Konjunktion<br />

Disjunktive Form DF ::= (D) Konjunktion<br />

| (D) ∨ DF Disjunktion von<br />

Konjunktionen<br />

Beispiele:<br />

¬A ∨ B ∨ C . . . KF <strong>und</strong> DF<br />

(¬A ∨ B ∨ C) ∧ (¬B ∨ ¬C) . . . KF<br />

(¬A ∧ ¬B) ∨ (¬A ∧ ¬C) ∨ (B ∧ ¬C) ∨ (¬B ∧ C) . . . DF<br />

9


Beweisverfahren<br />

Begriffe<br />

• Modell: Interpretation unter der eine Formel F wahr ist.<br />

• Unerfüllbare Formel: Formel F , für die es kein Modell gibt.<br />

• Tautologie: Formel F , für die jede Interpretationen ein Modell ist.<br />

⊢ F<br />

Beweis über Wahrheitstafeln<br />

• Durchrechnen für alle Interpretationen<br />

Axiomatische Verfahren<br />

• Umformen bis zum Wahrheitswert w oder auf konjunktive Form<br />

mit mindestens einer Aussage P ∨ ¬P in jeder Klausel<br />

10


Wahrheitstafel<br />

Zu zeigen: ⊢ ((P → Q) ∧ P ) → Q<br />

P Q P → Q (P → Q) ∧ P ((P → Q) ∧ P ) → Q<br />

f f w f w<br />

f w w f w<br />

w f f f w<br />

w w w w w<br />

11


Syntaktische Umformung<br />

Äquivalent sind die folgenden Formeln:<br />

((P → Q) ∧ P ) → Q<br />

¬ ((¬P ∨ Q) ∧ P ) ∨ Q<br />

((P ∧ ¬Q) ∨ ¬P ) ∨ Q<br />

((P ∨ ¬P ) ∧ (¬Q ∨ ¬P )) ∨ Q<br />

(w ∧ (¬P ∨ ¬Q)) ∨ Q<br />

(¬P ∨ ¬Q) ∨ Q<br />

¬P ∨ w<br />

w<br />

12


Überführung in konjunktive Form<br />

((P → Q) ∧ P ) → Q<br />

¬ ((¬P ∨ Q) ∧ P ) ∨ Q<br />

((P ∧ ¬Q) ∨ ¬P ) ∨ Q<br />

((P ∨ ¬P ) ∧ (¬Q ∨ ¬P )) ∨ Q<br />

((P ∨ ¬P ∨ Q) ∧ (¬Q ∨ Q ∨ ¬P ))<br />

13


Äquivalenzregeln<br />

Zwei Formeln F, G sind äquivalent; F ≡ G, wenn gilt: ⊢ F ←→ G<br />

(F ∧ F ) ≡ F, (F ∨ F ) ≡ F Idempotenz<br />

(F ∧ G) ≡ (G ∧ F ) ,<br />

(F ∨ G) ≡ (G ∨ F ) Kommutativität<br />

((F ∧ G) ∧ H) ≡ (F ∧ (G ∧ H)) ,<br />

((F ∨ G) ∨ H) ≡ (F ∨ (G ∨ H)) Assoziativität<br />

(F ∧ (F ∨ G)) ≡ F, (F ∨ (F ∧ G)) ≡ F Absorption<br />

(F ∧ (G ∨ H)) ≡ ((F ∧ G) ∨ (F ∧ H)) ,<br />

(F ∨ (G ∧ H)) ≡ ((F ∨ G) ∧ (F ∨ H)) Distributivität<br />

¬¬F ≡ F Doppelnegation<br />

¬ (F ∨ G) ≡ (¬F ∧ ¬G) ,<br />

¬ (F ∧ G) ≡ (¬F ∨ ¬G) de Morgansche Regeln<br />

F → G ≡ ¬F ∨ G bedingte Eliminierung<br />

F ∧ G ≡ F, F ∨ G ≡ G, falls F unerfüllbar<br />

F ∧ G ≡ G, F ∨ G ≡ F, falls F Tautologie<br />

14


Logisches Schließen<br />

• Für S eine Menge von Formeln F1, . . . , F k <strong>und</strong> F eine Formel, ist<br />

F eine logische Konsequenz von S, in Zeichen S ⊢ F , wenn jede<br />

Interpretation von S, die ein Modell von S ist, auch ein Modell<br />

von F ist.<br />

• Regeln:<br />

F ⊢ F ∨ G<br />

F ⊢ G → F<br />

F ∧ G ⊢ F<br />

F ∧ G ⊢ G ↔ F<br />

(F → G) ∧ (G → H) ⊢ F → H Transitivität<br />

G ∧ (G → F ) ⊢ F Modus Ponens (Schlussregel)<br />

¬F ∧ (G → F ) ⊢ ¬G Modus Tollens<br />

15


Beispiel: Transitivität<br />

A: (a ist eine gerade Zahl <strong>und</strong> b ist eine gerade Zahl)<br />

B: (a + b ist eine gerade Zahl)<br />

B1: (a = 2n <strong>und</strong> b = 2m, n, m ganze Zahlen)<br />

B2: (a + b = 2k, k ganze Zahl)<br />

A a <strong>und</strong> b sind gerade Zahlen<br />

A → B1 Dann gibt es Zahlen n, m mit a = 2n <strong>und</strong> b = 2m<br />

B1 → B2 Aus a = 2n <strong>und</strong> b = 2m folgt a + b = 2(n + m) = 2k<br />

B2 → B Aus a + b = 2k folgt a + b ist eine gerade Zahl<br />

B Mit der Transitivität gilt B<br />

16


Axiomensysteme<br />

• Theorie: Menge von Axiomen + Menge von Formeln<br />

• Korrektheit: Jede Formel F , die aus einer Theorie T mit Hilfe von<br />

Axiomen AS abgeleitet wird (T ⊢ AS) ist eine logische Konsequenz<br />

aus T (T ⊢ F ).<br />

• Vollständigkeit: Jede Formel F , die eine logische Konsequenz aus<br />

T ist, ist auch tatschlich mit Hilfe von AS ableitbar.<br />

• Konsistenz: Es ist nicht sowohl F als auch ¬F ableitbar.<br />

• Unabhängigkeit: Kein Axiom ist die logische Konsequenz anderer<br />

Axiome.<br />

• Entscheidbarkeit: Für alle Formeln gilt T ⊢ AS F oder T ⊢ AS ¬F .<br />

• Aussagenlogik ist entscheidbar <strong>und</strong> besitzt konsistente, vollständige<br />

<strong>und</strong> unabhängige Axiomensysteme.<br />

17


Hilberts Axiomensystem der Aussagenlogik<br />

• AS1: A ∨ A → A<br />

• AS2: A → (A ∨ B)<br />

• AS3: (A ∨ B) → (B ∨ A)<br />

• AS4: (A → B) → ((C ∨ A) → (C ∨ B))<br />

• Definition: A → B ≡ ¬A ∨ B<br />

• Modus Ponens: A ∧ (A → B) ⊢ B<br />

• Ersetzungsregel: F [A/G] in der Formel F ersetze einige (alle) Vorkommen<br />

der Aussagenvariablen A durch die Formel G<br />

18


Beispiel<br />

Zeige: ⊢ (F ∨ F ) ←→ F<br />

Beweis:<br />

(F ∨ F ) → F AS1.<br />

F → (F ∨ G) AS2,<br />

F → (F ∨ F ) Ersetzungsregel ((F ∨ G)[G/F ]).<br />

19


Automatisches Beweisen<br />

Resolution<br />

• Modus Ponens:<br />

P<br />

P → B<br />

B<br />

• Verallgemeinerung: P → B ≡ ¬P ∨ B<br />

P ∨ A1 ∨ A2 ∨ . . . ∨ An<br />

¬P ∨ B1 ∨ B2 ∨ . . . ∨ Bm<br />

A1 ∨ A2 ∨ . . . ∨ An ∨ B1 ∨ B2 ∨ . . . ∨ Bm Resolvente<br />

• Um die Aussage A zu beweisen füge die Negation der Aussage ¬A<br />

zu den Formeln der Theorie <strong>und</strong> versuche, durch Resolution die<br />

leere Klausel herzuleiten.<br />

20


Beispiel<br />

T = A ∨ B, A → ¬B, ¬A<br />

Um B herzuleiten, fügen wir ¬B zur Theorie dazu, <strong>und</strong> formen A → ¬B<br />

um.<br />

Das ergibt:<br />

T ′ = A ∨ B, ¬A ∨ ¬B, ¬A, ¬B<br />

In Klauselform:<br />

T ′ = (A, B), (¬A, ¬B), ¬A, ¬B<br />

B ist ein Resolvent von (A, B) <strong>und</strong> ¬A. Der Resolvent von B <strong>und</strong> ¬B<br />

ist die leere Menge, daher ist T ′ unerfüllbar, daher folgt aus T B.<br />

21


<strong>Teil</strong> I.2<br />

<strong>Prädikatenlogik</strong><br />

22


<strong>Prädikatenlogik</strong><br />

Erweiterung der Aussagenlogik<br />

• Konstante: a, b, c<br />

• Variablen: x, y, z<br />

• Funktionen: f(a1, . . . , a k)<br />

• Prädikate: P (a1, . . . , a k)<br />

• Quantoren: Allquantor (∀xF ), Existenzquantor (∃xF )<br />

23


Semantik<br />

Interpretation:<br />

Abbildung auf Domäne zur Zuordnung eines Wahrheitswertes<br />

Beispiel<br />

F : ∀xP (f(x, a), x).<br />

• Domäne: natürliche Zahlen IN := {1, 2, 3, . . .}<br />

• Konstante a ::= 1<br />

• f(x, a) ::= x ∗ a<br />

• P (x, y) ::= x = y<br />

• Interpretation: Für alle natürlichen Zahlen x ∈ IN gilt x · 1 = x.<br />

24


Weitere Schlussregeln <strong>und</strong> Äquivalenzen<br />

∀xF ⊢ ∃xF für eine nichtleere Domäne<br />

∀xF ∨ ∀xG ⊢ ∀x(F ∨ G)<br />

∃x(F ∧ G) ⊢ ∃xF ∧ ∃xG<br />

¬∀xF ≡ ∃x¬F<br />

¬∃xF ≡ ∀x¬F<br />

∀x∀yF ≡ ∀y∀xF<br />

∃x∃yF ≡ ∃y∃xF<br />

∀x(F ∧ G) ≡ ∀xF ∧ ∀xG<br />

∃x(F ∨ G) ≡ ∃xF ∨ ∃xG<br />

25


Entscheidbarkeit von PL1<br />

• Die Wahrheitstafelmethode ist nicht übertragbar<br />

• Erfüllbarkeit <strong>und</strong> Allgemeingültigkeit ist nicht entscheidbar<br />

• PL1 ist halbentscheidbar: Unerfüllbare Formeln werden nach endlicher<br />

Zeit erkannt.<br />

26


Beispiel: Peano-Axiome<br />

1. P (1)<br />

2. ∀x (P (x) → ∃y (P (y) ∧ Q(x, y))) .<br />

3. ¬∃x(P (x) ∧ Q(x, 1)<br />

4. ∀x1∀x2∀y1∀y2 (P (x1) ∧ P (x2) ∧ Q(x1, y1) ∧ Q(x2, y2)∧<br />

¬(x1 = x2) → ¬(y1 = y2)).<br />

5. ∀M (M(1) ∧ ∀x∀y (P (x) ∧ P (y) ∧ M(x) ∧ Q(x, y) → M(y)) → (M ≡ P )) .<br />

Interpretation<br />

• P (x) . . . x ist eine natürliche Zahl<br />

• Q(x, y) . . . y = x + 1; y ist Nachfolger von x<br />

• M . . . Prädikatenvariable (nicht möglich in PL1)<br />

27

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!