www.kr.tuwien.ac.at Institut für Informationssysteme Arbeitsbereich Wissensbasierte Systeme Hans Tompits WS 2008/09 VO Logik für Wissensrepräsentation 2.3 Elemente der Prädikatenlogik 1/29 ☞ 0-stellige Prädikatenkonstanten werden mit propositionalen Konstanten identifiziert. ➤ Das Alphabet der Prädikatenlogik besteht aus folgenden Bestandteilen: • den Objektvariablen x, y , z, . . .; • den Objektkonstanten a, b, c, . . .; • den primitiven logischen Konnektiven ¬ und ⊃ ; • dem Allquantor ∀; • den Prädikatenkonstanten P, Q, R, . . . – jede Prädikatenkonstante hat eine bestimmte Stelligkeit (gegeben durch eine natürliche Zahl); • dem Gleichheitssymbol =; • der logischen Konstanten ⊤; und • den Hilfssymbolen (, ). Syntax 2/29 A1 : ⊤ und alle propositionalen Konstanten sind Atomformeln. A2 : Sind α1 , . . . , αn Terme und P eine n-stellige Prädikatenkonstante (n > 0), dann ist auch P(α1 , . . . , αn ) eine Atomformel. A3 : Sind α1 und α2 Terme, dann ist (α1 = α2 ) eine Atomformel. A4 : Atomformeln werden nur durch A1 bis A3 konstruiert. ➤ Eine Atomformel ist folgendermaßen bestimmt: ➤ Ein Term ist entweder eine Objektvariable oder eine Objektkonstante. Syntax (Forts.) 3/29 • ∨ , ∧ , ≡ , ⊥ sind wie in der Aussagenlogik definiert. • (∃xA) = (¬(∀x(¬A))) ist der Existenzquantor. ➤ Abkürzungen: F1 : Jede Atomformel ist eine Formel. F2 : Sind A, B Formeln und x eine Objektvariable, dann sind auch (¬A), (A ⊃ B) und (∀xA) Formeln. F3 : Formeln werden nur durch F1 und F2 konstruiert. ➤ Eine Formel ist folgendermaßen bestimmt: Syntax (Forts.) 4/29 ➤ Beispiele: • ∀x∃yP(x, y ) ist eine geschlossene Formel; • (∀x∃yP(x, y )) ∨ Q(x) ist eine offene Formel. • Für eine Formel QxA ist A der Bereich von Qx. • Jedes Vorkommen von x in A ist in QxA gebunden. • Ein Vorkommen einer Variablen x in A ist frei wenn sie nicht gebunden ist. • Eine Formel in der alle Variablen gebunden sind, heißt geschlossen, sonst offen. ➤ Sei Q ∈ {∀, ∃}. Einige Begriffe und Notationen 5/29 ➤ A[x1 /α1 , . . . , xn /αn ] bezeichnet die Formel die aus A(x1 , . . . , xn ) resultiert indem alle freien Vorkommen von xi uniform durch αi ersetzt werden, für 1 ≤ i ≤ n. ➤ Beispiel: Betrachte A(x) = (∀x∃yP(x, y )) ∨ Q(x). =⇒ A[x/a] = (∀x∃yP(x, y )) ∨ Q(a). Sei A(x1 , . . . , xn ) eine Formel mit freien Variablen x1 , . . . , xn und seien α1 , . . . , αn Terme. Einige Begriffe und Notationen (Forts.) 6/29 • dem Symbol ‘=’ die übliche Gleichheitsrelation über D zuordnet. • jeder Objektkonstanten ein Element von D zuordnet; • jeder n-stelligen Prädikatenkonstante P (n ≥ 1) eine n-stellige Relation auf D zuordnet, d.h. m(P) ⊆ D n ; ➤ m ist eine Funktion die • jeder 0-stelligen Prädikatenkonstante (=propositionale Konstante) einen Wahrheitswert 0 oder 1 zuordnet; ➤ D ist eine nichtleere Menge, genannt Domäne; Ein Frame ist ein Paar M = hD, mi, wo: Semantik 7/29 a′ | a′ ∈ As(M) und a′ (y ) = a(y ) f ür alle y 6= x . • vaM (α) = m(c), falls α = c, für eine Objektkonstante c. • vaM (α) = a(x), falls α = x, für eine Variable x; ➤ Der Wert, vaM (α), eines Terms α in M bezüglich a ∈ As(M) ist folgendermaßen definiert: ➤ [a]x := 8/29 • As(M) bezeichnet die Menge aller Variablenbelegungen über M. ➤ Eine Variablenbelegung über M ist eine Funktion die jeder Variable ein Element aus D zuordnet. Sei M = hD, mi. Semantik (Forts.) lassen sich daraus berechnen. ➥ Die Wahrheitswerte für (A ∨ B), (A ∧ B), (A ≡ B), ∃x A und ⊥ VaM (∀x A) = 0. • VaM (∀x A) = 1, falls VaM′ (A) = 1 für alle a′ ∈ [a]x , sonst • VaM (A ⊃ B) = 1, falls VaM (A) ≤ VaM (B), sonst VaM (A ⊃ B) = 0; • VaM (¬A) = 1 − VaM (A); sonst. • VaM (α1 = α2 ) = 1, falls vaM (α1 ) = vaM (α2 ), und VaM (α1 = α2 ) = 0 VaM (P(α1 , . . . , αn )) = 0 sonst, falls P eine n-stellige Prädikatenkonstante (n > 0); • VaM (P(α1 , . . . , αn )) = 1, falls (vaM (α1 ), . . . , vaM (αn )) ∈ m(P), und • VaM (p) = m(p), falls p eine propositionale Konstante; • VaM (⊤) = 1; ➤ Der Wahrheitswert, VaM (·), einer Formel unter M bezüglich a ∈ As(M) ist wie folgt definiert: Semantik (Forts.) 9/29 ➤ Begriffe wie “Modell einer Theorie”, “logische Äquivalenz”, “semantische Konsequenz”, etc. sind analog zur Aussagenlogik definiert. ➤ Eine Theorie (in der Prädikatenlogik) ist eine beliebige Menge von geschlossenen Formeln. 10/29 • A ist erfüllt in M durch a ∈ As(M) : ⇐⇒ VaM (A) = 1. • A ist erfüllbar : ⇐⇒ es gibt einen Frame M und ein a ∈ As(M) s.d. VaM (A) = 1. • A ist wahr in M : ⇐⇒ VaM (A) = 1, für alle a ∈ As(M). • M ist ein Modell von A : ⇐⇒ A ist wahr in M. • A ist gültig (symb. |= A) : ⇐⇒ A ist wahr in jedem Frame M. ➤ Einige Begriffe: Semantik (Forts.) |= (A ⊃ ∀xB(x)) ≡ ∀x (A ⊃ B(x)) |= (A ⊃ ∃xB(x)) ≡ ∃x (A ⊃ B(x)) |= ((∀x A(x)) ⊃ B) ≡ ∃x (A(x) ⊃ B) |= ((∃x A(x)) ⊃ B) ≡ ∀x (A(x) ⊃ B) 2. 3. 4. 5. 11/29 (B enthält x nicht frei) |= ∀xA(x) ⊃ ∃x A(x) |= ∃x∀y A(x, y ) ⊃ ∀y ∃x A(x, y ) |= (∀x A(x)) ∧ (∀x B(x)) ≡ ∀x (A(x) ∧ B(x)) |= (∃x A(x)) ∨ (∃x B(x)) ≡ ∃x (A(x) ∨ B(x)) (A enthält x nicht frei) |= ∀x∀y A(x, y ) ≡ ∀y ∀x A(x, y ) |= ∃x∃y A(x, y ) ≡ ∃y ∃x A(x, y ) 1. Beispiele gültiger Formeln A ∀x A ➤ ∀x (A ⊃ B) ⊃ (A ⊃ (∀x B)), vorausgesetzt x ist nicht frei in A. ➤ Gleichheitsaxiome: • ∀x (x = x); • ∀x∀y ((x = y ) ⊃ (y = x)); • ∀x∀y ∀z ((x = y ) ∧ (y = z)) ⊃ (x = z) ; Vn • ∀x1 · · · ∀xn ∀y1 · · · ∀yn ( i=1 (xi = yi ) ∧ P(x1 , . . . , xn )) ⊃ P(y1 , . . . , yn ) , für jede n-stellige Prädikatenkonstante P, n > 1. ➤ Generalisierungsregel GEN: (d.h. keine Variable von α wird in A[x/α] gebunden) 12/29 Postulate des Hilbertkalküls für Aussagenlogik, plus folgende Axiome und folgende Regel: ➤ (∀x A(x)) ⊃ A[x/α], wo α frei für x in A(x) ist Ein Hilbertkalkül für Prädikatenlogik ➤ Deduktiver Abschluß einer Theorie T : • Th(T ) = {A | T ⊢ A und A geschlossen}. ➤ Es gilt Korrektheit und Vollständigkeit. ➤ “Beweis” und “Herleitung” sind analog wie in der Aussagenlogik definiert (wobei man hier die zusätzlichen Axiome und GEN verwenden kann). Ein Hilbertkalkül für Prädikatenlogik (Forts.) 13/29 • Falls T , A[x/c] ⊢ C , dann T , ∃x A(x) ⊢ C , – für eine Objektkonstante c die in T und C nicht vorkommt. ➤ ∃-Beseitigung: • A[x/c] ⊢ ∃x A(x), – für eine Objektkonstante c. ➤ ∃-Einführung: • ∀x A(x) ⊢ A[x/α], – vorausgesetzt α ist frei für x in A. ➤ ∀-Beseitigung: • Falls T ⊢ A(x), dann T ⊢ ∀x A(x), ➤ ∀-Einführung: Es gelten folgende Einführungs- und Beseitigungsregeln: Abgeleitete Regeln der Herleitungsrelation 14/29 % ∃-Einführung, aus (1), % da c frei für x in A(x, y ) % ∀-Einführung, aus (2) % ∃-Beseitigung, aus (3), % da c nicht in % ∀y ∃x A(x, y ) vorkommt (2) ∀y A(c, y ) ⊢ ∃x A(x, y ) (3) ∀y A(c, y ) ⊢ ∀y ∃x A(x, y ) (4) ∃x ∀y A(x, y ) ⊢ ∀y ∃x A(x, y ) 15/29 (5) ⊢ ∃x ∀y A(x, y ) ⊃ ∀y ∃x A(x, y ) % ⊃ -Einführung, aus (4) % ∀-Beseitigung, da y frei % für y in A(c, y ) (1) ∀y A(c, y ) ⊢ A(c, y ) Wir zeigen ⊢ ∃x∀y A(x, y ) ⊃ ∀y ∃x A(x, y ). Beispiel 2.4 Prädikatenlogik und Umgangssprache 16/29 ➤ Beispiel: • Alle Menschen sind sterblich. • Sokrates ist ein Mensch. • Also, Sokrates ist sterblich. Eine Formalisierung dieses Argumentes mittels Aussagenlogik wäre von der Form A, B .˙. C , für Atomformeln A, B, C . =⇒ Dieses aussagenlogische Argument ist allerdings ungültig! 17/29 ➤ Die Prädikatenlogik ist ein wesentlich mächtigeres Werkzeug als die Aussagenlogik und erlaubt die Modellierung von Argumenten die mittels Aussagenlogik nicht behandelt werden können. Allgemeine Betrachtungen 1. Wahl einer geeigneten nichtleeren Menge D s.d. die zu untersuchenden Sätze Aussagen über die Elemente von D machen. 2. Nach der Übersetzung, zur Überprüfung der Gültigkeit des Argumentes, wird auf die konkrete Form von D nicht mehr weiter eingegangen. ➤ Der Prozess der Modellierung umgangssprachlicher Fakten mittels Prädikatenlogik beinhaltet zwei Schritte: Allgemeine Betrachtungen (Forts.) 18/29 ➤ Im obigen Argument über Sokrates wäre ein geeignetes D z.B. die Menge aller Lebewesen. ➤ Würde man als D etwa nur die Menge aller Menschen wählen, die im speziellen Sokrates enthalten würde, wäre die zweite Prämisse überflüssig. ➤ Wäre andererseits D als die Menge aller sterblichen Objekte festgelegt, wäre das ganze Argument redundant. Beispiel 19/29 Klarerweise gilt ∀x(M(x) ⊃ S(x)), M(s) ⊢ S(s). ∀x(M(x) ⊃ S(x)), M(s) .˙. S(s) =⇒ Symbolisiert lautet das Argument dann: M(x): x ist ein Mensch S(x): x ist sterblich s: Sokrates ➤ Im Beispiel über Sokrates wären dies etwa: ➤ Nachdem ein D festgelegt wurde, müssen geeignete Prädikate gewählt werden, die als elementare, unabhängige Prädikate die Sätze reflektieren. Allgemeine Betrachtungen (Forts.) 20/29 ∃x A(x) Für alle x, A(x). Für beliebiges x, A(x). Für ein x, A(x). Es gibt ein x s.d. A(x). Es existiert ein x s.d. A(x). Es existiert mindestens ein x s.d. A(x). Für passendes x, A(x). ∀x A(x) Die Quantoren ∀ und ∃ können zur Übersetzung folgender umgangssprachlicher Ausdrücke verwendet werden: Übersetzungen in Quantoren 21/29 O E Manche A sind nicht-B. Manche A sind B. ∃x (A(x) ∧ B(x)) ∃x (A(x) ∧ ¬B(x)) I Alle A sind B. Nur B sind A. Keine A sind B. Alle A sind nicht-B. ∀x (A(x) ⊃ B(x)) ¬∃x (A(x) ∧ B(x)) A 22/29 Eine wichtige Klasse von Aussagen, die lange Zeit dominierend in der Logik waren, sind die sogenannten kategorischen Urteile nach Aristoteles (bezeichnet mit A, E, I, O, nach lat. “affirmo” und “nego”): Kategorische Urteile ➤ Man könnte z.B. eine Theorie über Engel in der Prädikatenlogik entwerfen, ohne sicher zu sein, daß Engel tatsächlich existieren. • und zwar mittels Aussagen der Form ∀x(P(x) ⊃ . . .) und ∃x(P(x) ∧ . . .). ➤ Obwohl die Domäne als nicht-leer angenommen wird, kann man mittels Kombination von Quantoren und den Konnektiven ⊃ und ∧ über eine möglicherweise leere Teilmenge von D sprechen: Bemerkungen 23/29 • In der Umgangssprache würde man normalerweise nicht sagen “alle A sind B” wenn man schon weiß, daß A leer ist. • In der Tat würden Leute eventuell widersprechen “alle A sind B” als wahr anzuerkennen, wenn A leer ist. • Vielmehr würde “alle A sind B” als ∃xA(x) ∧ ∀x(A(x) ⊃ B(x)) angesehen werden anstatt als ∀x(A(x) ⊃ B(x)). (Auch Aristoteles vertrat diese Auffassung.) ➤ Letztes Beispiel steht auch im Zusammenhang mit einer Zweideutigkeit der Umgangssprache bezüglich Aussagen der Form “alle A sind B”: Bemerkungen (Forts.) 24/29 ➤ Der Artikel “ein” hat manchmal unterschiedliche Bedeutungen: • “Ein Kind braucht Zuneigung.” =⇒ ∀x(K (x) ⊃ Z (x)) • “Ein Mensch bestieg den Mount Everest.” =⇒ ∃x(M(x) ∧ E (x)) ➤ Auch in der Prädikatenlogik ist es empfehlenswert, die Gruppierung von Sätzen von außen nach innen festzustellen. 25/29 ➤ Manchmal ist “alle A sind nicht-B” als “nicht alle A sind B” zu verstehen. • Beispiele: – “All that glisters is not gold” (Shakespeare, Der Kaufmann von Venedig) – “All women are not gold diggers” ➥ Übersetzungen wären von der Form ¬∀x(A(x) ⊃ B(x)) und nicht von der Form ∀x(A(x) ⊃ ¬B(x)). Bemerkungen (Forts.) Konklusion: Manche von Fiorecchio’s Männer waren Angehörige der Firma. ➤ Betrachte folgendes Argument (nach Quine, 1950): Prämissen: Der Wachmann durchsuchte alle die in das Gebäude gingen außer jene die durch Angehörige der Firma begleitet wurden. Einige von Fiorecchio’s Männern betraten das Gebäude ohne von irgendjemand sonst begleitet zu werden. Der Wachmann durchsuchte keinen von Fiorecchio’s Männern. Beispiel 26/29 ➤ Als nächstes betrachten wir das Konsequens der Implikation: ∀x (x ging in das Gebäude ⊃ (x wurde vom Wachmann durchsucht ∨ x wurde durch einen Angehörigen der Firma begleitet)). ➤ Die äußerste Struktur dieses Satzes ist daher wie folgt: ∀x (x ging in das Gebäude ⊃ (x wurde vom Wachmann durchsucht außer x wurde durch einen Angehörigen der Firma begleitet)). ➤ Die erste Prämisse kann folgendermaßen aufgefaßt werden: Für jede Person x gilt, wenn x in das Gebäude ging, dann wurde x vom Wachmann durchsucht außer x wurde durch einen Angehörigen der Firma begleitet. Beispiel (Forts.) 27/29 ∃x (F (x) ∧ G (x) ∧ x wird von niemand sonst begleitet). kann folgendermaßen übersetzt werden (mit F (x) für “x ist einer von Fiorecchio’s Männer”): ➤ Die zweite Prämisse “einige von Fiorecchio’s Männern betraten das Gebäude ohne von irgendjemand sonst begleitet zu werden” ➤ Symbolisch: ∀x G (x) ⊃ D(x) ∨ ∃y (B(x, y ) ∧ A(y )) ➤ Für den letzten Teil im Konsequens ergibt sich: ∀x [x ging in das Gebäude ⊃ (x wurde vom Wachmann durchsucht ∨ ∃y (x wurde begleitet von y ∧ y ist Angehöriger der Firma))]. Beispiel (Forts.) 28/29 ➤ Man kann zeigen: ∀x G (x) ⊃ D(x) ∨ ∃y (B(x, y ) ∧ A(y )) , ∃x(F (x) ∧ G (x) ∧ ∀y (B(x, y ) ⊃ F (y )), ¬∃x(F (x) ∧ D(x)) ⊢ ∃x(F (x) ∧ A(x)). ¬∃x(F (x) ∧ D(x)) bzw. ∃x(F (x) ∧ A(x)). ➤ Für die letzte Prämisse (“der Wachmann durchsuchte keinen von Fiorecchio’s Männern”) und die Konklusion (“manche von Fiorecchio’s Männer waren Angehörige der Firma”) erhalten wir: =⇒ ∀y (B(x, y ) ⊃ F (y )). ➤ Der Satz “x wird von niemand sonst begleitet” kann interpretiert werden als “jeder der x begleitet war einer von Fiorecchio’s Männer.” Beispiel (Forts.) 29/29