skip to main content

kiesler.at
PraedikatenLogik
Immutable Page | Raw Text | Print View | History

FrontPage > TuWienMitschriften > WissensbasierteSysteme > PraedikatenLogik

PrädikatenLogik

(Folien: Logik und Inferenz 2)

Prädikatenlogik PL1 - Signaturen

PL1: Prädikaten Logik, 1. Stufe

Die Grenzen der Aussagenlogik:

  • Hasen haben lange Ohren
  • Max ist ein Hase

___________________
Max hat lange Ohren

Abbildung ist in der Aussagen Logik nicht möglich! Eigentlich: ALLE Hasen haben lange Ohren. Reichert man diese Aussagen um eine "innere Struktur" an, landet man bei der PraedikatenLogik.

SIGMA=(Func, Pred)

  • Menge von Funktionssymbolen
  • Menge von Prädikatensymbolen
  • jedes Symbol hat Stelligkeit

Funktionssymbole

mit Stelligkeit 0: Konstanten
mit Stelligkeit 1 und höher: Zum Aufbau von Termen

In Prolog wird die Stelligkeit immer angegeben, h/2 != h/3 !

Das Unterscheidungsmerkmal Stelligkeit ist keine gute Idee. Zweimal der gleiche Funktionsname mit unterschiedlicher Stelligkeit und unterschiedlicher Funktion ist eine potentielle Fehlerquelle!

Beispiele

  • A, B, C, John
  • morning_star, evening_star
  • father_of(John), age(John)
  • father_of(father_of(John))
  • distance(morning_star, evening_star)

Konvention: Dinge mit Großbuchstaben sind Konstanten

PL1: Prädikatensymbole:

  • mit Stelligkeit 0, 1, 2, ...
  • zum Aufbau atomarer Formeln

Beispiele

  • prime(3), blue(sky)
  • mortal(Socrates), flight(RF75, Dortmund, Berlin)
  • grandfather(father_of(father_of(John)), John)

Prädikatenlogik: PL1-Signaturen

PL1 Prädikatensymbole:

  • mit Stelligkeit 0, 1, 2, ...
  • zum Aufbau atomarer Formeln.

Beispiele:

  • prime(3)
  • blue(sky)
  • mortal(Sokrates)
  • flight (RF75, Dortmund, Berlin)
  • grandfather(father_of(father_of(John)), John)

Interpretation

Interpretieren die Symbole SIGMA durch

  • Objekte
  • Eigenschaften
  • Funktionen
  • Relationen
  • Fakten

Das Universum U besteht aus:

  • F (- Func | (F): U x .... x U -> U
  • P (- Prod | (P) teilmenge_von U x .... x U

Domain (=Universum) ist nie leer!

Funktionssymbol mit Stelligkeit 0:

Element in U

Funktionssymbol mit Stelligkeit >= 1:

Funktion über U

Prädikatensymbol mit Stelligkeit 0:

Wahrheitswert

Prädikatensymbol mit Stelligkeit 1

Teilmenge von U

Beispiel

[blue] [Menge aller blauen Elemente in U]

Prädikatensymbol mit Stelligkeit >1

Relation über U

Beispiel

[brother] { ( Charles, Edward), ( Charles, Andrew) , (Edward, Andrew) } teilmenge_von U x U

Terme

V = Menge von Variablen

Terme: rekursiv / induktiv definiert

(1) x, falls x (- V

  • jede Variable ist ein Term

(2) c, falls c (- Func und c hat Stelligkeit 0

  • jede Konstante ist kein Term

(3) f(t1, ..., tn) falls f (- Func mit Stelligkeit n>0 und t1, ..., tn Terme

  • Induktionsschritt.

Variablenbelegung

alpha: V -> U

2 Parameter:

  • Signatur
  • Variablenmenge (Wert aus Domain, Interpretationsfrage)

Termausweitung

Termauswertung eines Terms t in einer Interpretation I unter einer Variablenbelegung:

|[t]|_{ I,alpha } (- U

ist definiert durch

|[x]|_{ I, alpha } = alpha(x)

|[f(t1, ..., tn) ]|_{ I, alpha } = f_I(|[t_1]|_t{I, alpha}, ..., |[t_n]|_{ I, alpha }

Interpretation stark von Termdefinition abhängig!

Für die Terme, Interpretation udn endlichen Term terminiert diese Auswertung (später mehr)!

Gilt für allgemeine Formeln nicht (im Wesentlichen wegen alpha).

I und alpha richtig wählen ist Herausforderung, der Rest ist sehr einfach.

  • atomare Formeln P(t1, ..., tn)
  • komplexere Forlemn mit Junkoren (NOT, AND, OR, =>, <=>)
  • quantifizierte Formeln mit Quantoren und Variablen.

FORALL xF "Für alle x gilt F" (Allquantor)
EXISTS xF "Es gibt ein x, sodass F gilt" (Existenz-Quantor)

  • FORALL x Mensch (x) => sterblich (x)
  • NOT NOT sterblich (Sokrates) .... Doppelnegationselimination
  • EXISTS x Großvater (x, Sokrates)
  • FORALL x Großvater(Vater_von((Mutter_von(x)), x)
  • NOT prim (3)
  • FORALL x EXISTS y prim(y) AND x < y .... Für jede Zahl x gibt es eine größere Primzahl.

Somit gibt es unendlich viele Primzahlen. Prim ist hier als intendierte Semantik über natürliche Zahlen definiert.

Erfüllungsrelation

|[ P(t1, ..., tn ) ]| _ { I, alpha } = true gdw.
( |[t_1]|_{ I, alpha } .... |[ t_n ]| _ { I, alpha } ) (- P_I

|[ FORALL x F ]| _ { I, alpha } = true gdw |[ F ]| _ {I, alpha}_{ x / alpha } = true für jedes alpha (- U

|[ EXISTS x F ]| _ { I, alpha } = true gdw |[ F ]| _ {I, alpha}_{x / alpha } = true für mindestens ein alpha (- U

Terminiert bei unentscheidlicher Domain möglicherweise nicht! (Unentscheidbarkeit der Prädikatenlogik).

Semantische Äquivalenzen

"DeMorgan für Quantoren"

1.1 NOT FORALL x F equiv EXISTS x NOT F
1.2 NOT EXISTS x F equiv FORALL x NOT F

2.1 ( FORALL x F) AND ( FORALL x G ) equiv FORALL x ( F AND G )
2.2 ( EXISTS x F) OR ( EXISTS x G ) equiv EXISTS x ( F OR G)

Vertauschen gleicher Quantoren

3.1 FORALL x FORALL y F equiv FORALL y FORALL x F
3.2 EXISTS x EXISTS y F equiv EXISTS y EXISTS x F

Semantische Nicht-Äquivalenzen

(hier war Prof. Egly zu schnell für mich...)

Delphin im Karpfenteich

Delphin / Fisch / Teichbaden, usw. Dieses Beispiel haben wir ausgelassen.

Inferenz Beispiele

Hasen haben lange Ohren
Max ist ein Hase
_________________
? Max hat lange Ohren

FORALL x Hase(x) => hat_lange_Ohren(x)
Hase (Max)
_________________

_________________
hat_lange_Ohren(Max)

Inferenzregeln

Modus ponems / tollens

Siehe Aussagenlogik

AND Einführung

F, G
____
F AND G

AND Elimination

F AND G
______
F

FORALL Instantiierung

wichtig!

FORALL x F
________
F [ x / t ]

EXISTS Instantiierung

EXISTS x F (für min. ein x bewiesen)
_______
F [ x / C neu ]

(C neu muss neu rein!, siehe Sequentialkalkül: Eigenvariable. Sollte eigentlich Eigenkonstante heißen, jedoch bezeichnet selbst die englische Fachliteratur das Ding als Eigenvariable.)

Beispiele

FORALL Instantiierung

FORALL x grandfrather(father_of(mother_of(x)), x)
________________________
grandfather(((father_of(mother_of(John)), John)

EXISTS Instantiierung

(zu schnell!)

Kalkül

Ein Kalkül k:

  • ist eine Menge von Axiomen und Inferenzregeln F1, ..., Fn |- G
  • liefert syntaktisches Gegenstück zur semantischen Folgerungsrelation |=
  • ist korrekt gdw F |- G impliziert F |= G
  • ist vollständig gdw F |= G impliziert F |- G

Korrekt und Vollständig (unser Ziel):
** |= equiv |-

Axiome sequentielles Kalkül: Aus Formel folgt Formel

Alles semantisch Beweisbare müßte auch syntaktisch beweisbar sein (und umgekehrt)

Normalformeln

Sollten wir mal gehört haben (184/2), sind aber nicht Teil des Stoffs. Umkehrfunktion / Resolution.

DescriptionLogics


Last modified 2005-03-12 22:36 by rck