Klauseln und und Hornklauseln

Ähnliche Dokumente
Modellierungsmethoden der Informatik Kapitel 2: Logikkalküle

Modellierungsmethoden der Informatik Kapitel 2: Logikkalküle

Logische und funktionale Programmierung

Normalformen der Prädikatenlogik

Logik-Grundlagen. Syntax der Prädikatenlogik

Ralf Möller, TUHH. Beim vorigen Mal: Heute: Prädikatenlogik: Algorithmus für Erfüllbarkeitsproblem. Lernziele: Beweisverfahren für Prädikatenlogik

Logikprogrammierung. Berechnung durch Resolution Die Programmiersprache Prolog

Logische und funktionale Programmierung

Logik für Informatiker

Terme. Dann ist auch f(t 1. Terme. Dann ist P (t 1

Wozu formale Logik? Programmiersprachen Logik im Fingerhut. Formeln. Logik im Fingerhut (24. Januar 2005) Belegung und Interpretation

Klauselmengen. Definition Sei

Beispiel. Bsp.: Betrachte Schlussweise in: (3) folgt aus (1) und (2), siehe z.b. Resolutionsregel. was ist mit folgender Schlußweise:

Aussagenlogik. Übersicht: 1 Teil 1: Syntax und Semantik. 2 Teil 2: Modellierung und Beweise. Aussagenlogik H. Kleine Büning 1/25

Konjunktive und disjunktive Normalformen

Deklarative Semantik

Kapitel L:III. III. Prädikatenlogik

Satz. Für jede Herbrand-Struktur A für F und alle t D(F ) gilt offensichtlich

Prädikatenlogik: Syntax

Programmiersprache Prolog

Klausur zur Vorlesung Logik für Informatiker Sommersemester 2017

Formale Grundlagen der Informatik 1 Kapitel 16 Normalformen und Hornformeln

Normalformen boolescher Funktionen

Logik Vorlesung 6: Resolution

5.1 Inferenz. Theorie der Informatik. Theorie der Informatik. 5.1 Inferenz. 5.2 Resolutionskalkül. 5.3 Zusammenfassung. Inferenz: Motivation

SLD-Ableitungsbäume. G = B 1... B m. G die Menge aller SLD-Resolventen von G und definiten. G einen Nachfolger, der mit G markiert ist.

Labor Compilerbau. Jan Hladik. Sommersemester DHBW Stuttgart. Jan Hladik (DHBW Stuttgart) Labor Compilerbau Sommersemester / 20

Unifikation. T eine Menge von Termen. σ(t) einelementig ist. Definition: Unifikator. Eine Substitution σ ist Unifikator von T, falls

Logik Vorlesung 4: Horn-Logik und Kompaktheit

Kapitel 6: Logik. Teil 2. (Dieser Foliensatz basiert auf Material von Mirjam Minor, Humboldt- Universität Berlin, WS 2000/01)

Informatik A. Prof. Dr. Norbert Fuhr auf Basis des Skripts von Prof. Dr. Wolfram Luther und der Folien von Peter Fankhauser

Deduktion. Semantische Folgerungsbeziehung. Syntaktische Folgerungsbeziehung. Zusammenhang zwischen semantischer und syntaktischer Folgerung

Wissensrepräsentation und -verarbeitung in Logiken. bereinigt Pränex Skolem ( -Eliminierung) Klausel (Menge von Klauseln, Notation ohne Quantoren)

Deduktion in der Aussagenlogik

Aussagenlogische Widerlegungsverfahren zum Nachweis logischer Eigenschaften und Beziehungen

Deduktion in der Aussagenlogik. Semantische Folgerungsbeziehung. Zusammenhang zwischen semantischer und syntaktischer Folgerung

Prof. Dr. sc. Hans-Dieter Burkhard Vorlesung Winter-Semester 2003/04. Wissensrepräsentation: Resolution (im PK1)

Formale Systeme, WS 2013/2014. Lösungen zu Übungsblatt 5

Aussagenlogik: Syntax von Aussagen

Formale Grundlagen der Informatik 1 Kapitel 21 Prädikatenlogische Resolution

Wissensbasierte Systeme 7. Prädikatenlogik

Formale Grundlagen der Informatik 1 Kapitel 15 Normalformen und Hornformeln

Herbrand-Universum. Vorlesung Logik Sommersemester 2012 Universität Duisburg-Essen. Herbrand-Universum. Herbrand-Universum

Logik für Informatiker

Beispiel. Bsp.: Betrachte Schlussweise in: (3) folgt aus (1) und (2), siehe z.b. Resolutionsregel. was ist mit folgender Schlußweise:

Deduktion in der Prädikatenlogik

Allgemeingültige Aussagen

Logik. Gabriele Kern-Isberner LS 1 Information Engineering. TU Dortmund Wintersemester 2014/15 WS 2014/15

Logik Vorlesung 5: Grundlagen Resolution

Aussagenlogik zu wenig ausdrucksstark für die meisten Anwendungen. notwendig: Existenz- und Allaussagen

Logisches und funktionales Programmieren

GDI Medieninformatik. 13. VL: Einführung in die mathematische Logik Prädikatenlogik (II)

Grundlagen der Theoretischen Informatik

Zusammenfassung Syntax: Formale Grundlagen der Informatik 1 Kapitel 15 Normalformen und Hornformeln. Zusammenfassung

4. Logik und ihre Bedeutung für WBS

Formale Grundlagen der Informatik 3 Kapitel 4 Prädikatenlogik Resolution

Klausur zur Vorlesung Logik für Informatiker Sommersemester 2015

Syntax. 1 Jedes A AS AL ist eine (atomare) Formel. 2 Ist F eine Formel, so ist auch F eine Formel. 3 Sind F und G Formeln, so sind auch

Übersicht. 9. Schließen in der Prädikatenlogik 1. Stufe

Logik für Informatiker

Logik Vorlesung 7: Grundlagen Prädikatenlogik

Grundlagen der Logik

Eigenschaften der Resolution für PL1 Formeln

Logik Vorlesung 10: Herbrand-Theorie

Ablauf. Formale Grundlagen der Informatik 1 Kapitel 21 Prädikatenlogische Resolution. Eine besondere Formel. Eine besondere Formel

Logik Vorlesung 8: Modelle und Äquivalenz

Logik für Informatiker

Eine besondere Formel. Formale Grundlagen der Informatik 3 Kapitel 4 Prädikatenlogik. Resolution. Eine besondere Formel. Merke

Substitution. Unifikation. Komposition der Substitution. Ausführung der Substitution

Kapitel 1.3. Normalformen aussagenlogischer Formeln. Mathematische Logik (WS 2010/11) Kapitel 1.3: Normalformen 1 / 1

Logik Vorlesung 9: Normalformen

Logik Vorlesung 10: Herbrand-Theorie

Logik für Informatiker

Formale Systeme, WS 2012/2013. Lösungen zu Übungsblatt 7

Formale Grundlagen der Informatik 1 Wiederholung zum Logik-Teil

Resolutionskalkül. wird t als eine Menge K t von Klauseln geschrieben, welche die einzelnen Maxterme repräsentieren:

HA-Lösung TA-Lösung Diskrete Strukturen Tutoraufgabenblatt 10. Besprechung in KW02/2019

Objekte in einer gewissen Beziehung zueinander stehen, eine Eigenschaft für alle Objekte gilt, es ein Objekt mit einer bestimmten Eigenschaft gibt.

Motivation. Formale Grundlagen der Informatik 1 Kapitel 19. Syntax & Semantik. Motivation - Beispiel. Motivation - Beispiel

Aussagenlogik Prädikatenlogik erster Stufe. Logik. Logik

Klausur Formale Systeme Fakultät für Informatik WS 2009/2010. Prof. Dr. Bernhard Beckert. 18. Februar 2010

das Konzept der Gleichung in der Algebra Robert Recorde Spielsemantik Semantik-Spiel FO mit oder ohne =? Abschnitt 2.5

Logik für Informatiker

Logik für Informatiker

Resolution für die Aussagenlogik

Aussagenlogik. Übersicht: 1 Teil 1: Syntax und Semantik. 2 Teil 2: Modellierung und Beweise. Aussagenlogik H. Kleine Büning 1/37

Logik I. Symbole, Terme, Formeln

Problem der Resolution: Kombinatorische Explosion Ziel: Einschränkung der Möglichkeiten

Logische Strukturen 7. Vorlesung

Logik für Informatiker

Normal Programs. Vervollständigung. Steffen Staab ISWeb Vorlesung Datenbanken II

Mütze und Handschuhe trägt er nie zusammen. Handschuhe und Schal trägt er immer zugleich. (h s) Modellierung als Klauselmenge

SWP Logische Programme Teil 2

Aussagenlogik. (MAF2) MAF(I, t) = t und MAF(I, f ) = f. Die Semantik aussagenlogischer Formeln ist durch die Funktion

Prädikatenlogik. Übersicht: 1 Teil 1: Syntax und Semantik. 2 Teil 2: Normalformen und Grenzen der Prädikatenlogik 1. Stufe

7. Prädikatenlogik. Aussagenlogik hat wünschenswerte Eigenschaften wie Korrektheit, Vollständigkeit, Entscheidbarkeit.

Prolog basiert auf Prädikatenlogik

23. Vorlesung: Logisches Schließen Markus Kr otzsch Professur f ur Wissensbasierte Systeme Normalformen

Logik für Informatiker

Transkript:

Klauseln und und Hornklauseln Durch Transformation in Klauselform entsteht eine sehr einfache Grundstruktur der resultierenden Formeln Eine Eine Disjunktion von von Literalen heißt heißt Klausel. Klausel. Spezialfälle: n = 1: "entartete" Disjunktion aus nur einem Literal ("Einheitsklausel") Einheitsklausel, die nur aus dem Literal false besteht, wird oft identifiziert mit "leerer" Klausel (n = 0) (vorteilhaft bei bestimmten Inferenzverfahren) wichtige Klasse von Klauseln, die Basis der logischen Programmierung bildet: "Hornklauseln" (Alfred Horn, österr. Logiker) Eine Eine Klausel Klausel mit mit maximal einem einempositiven Literal Literal heißt heißt Hornklausel. z.b.: p(x) p(x) q(x,y) q(x,2) q(x,2) p(z) p(z) kein positives Literal 1

Hornklauseln in in implikativer Form Form speziell für Hornklauseln: vier Varianten der implikativen Schreibweise, je nach Anzahl positiver Literale genau ein positives Literal, mindestens ein negatives Literal: "Regeln" der LP (umgekehrt) L 1 1 L 2 2........ L n n K genau ein positives Literal, kein negatives Literal: true true K keinpositives Literal, mindestens ein negatives Literal: L 1 1 L 2 2........ L n n false false keinpositives und kein negatives Literal: true true false false 2

noch noch ein ein kleine kleine Übung Übung im im "Verklausulieren" 1) 1) X [ [ angestellter(x) Y [ [ abteilung(y) gehört_zu(x,y) ] ]] ] 2) 2) Y [ [ abteilung(y) X [ [ angestellter(x) leitet(x,y) ] ]] ] 3) 3) X Y [ [ leitet(x,y) gehört_zu(x,y) ] ] 4) 4) X Y Z [ [ gehört_zu(x,y) leitet(z,y) X Z arbeitet_für(x,z) r(x,z) ] ] 5) 5) X X [ [ arbeitet_für(x,x) r(x,x) ] ] 6) 6) X [ [ angestellter(x) ] ] zugehörige (Horn-?) Klauseldarstellung? 3

Übung Übung im im "Verklausulieren" (2) (2) true true angestellter(a) a: Skolemkonstante abt/chef: Skolemfunktionen angestellter(x) abteilung(abt(x)) abt(x)) angestellter(x) gehört_zu(x, abt(x abt(x)) abteilung(y) angestellter(chef(y)) (Y)) abteilung(y) leitet(chef(y), (Y), Y) Y) leitet(x,y) gehört_zu(x,y) gehört_zu(x,y) leitet(z,y) X Z arbeitet_für(x,z) r(x,z) arbeitet_für(x,x) r(x,x) false false 4

Klauselform statt statt voller voller Prädikatenlogik: Diskussion Vorteile der Klauselform: "minimalistische" Form der Einzelaussagen: nur absolut notwendige Junktoren (,) keine (expliziten) Quantoren keinerlei Verschachtelung von Formeln einheitliche Implikationsform der Darstellung: Alle Formeln haben Regel- oder Produktionscharakter! Nachteile der Klauselform: Natürlichkeit der Darstellung geht verloren (im Vergleich mit natürlichsprachlicher Darstellung). Entschachtelung (KNF) wird erkauft durch u.u. sehr viele Einzelklauseln. Unintuitiver Schritt Unintuitiver Schritt der Skolemisierung ist nötig, um Quantoren eliminieren zu können. 5

Normalform für ffür r die die Semantik von von Formeln?? Bestimmung der (Un-)Erfüllbarkeit von Formeln ist besonders wichtig wegen ihrer Bedeutung für Inferenzverfahren (Folgerungsbegriff, Operationalisierung) daher: Suche nach Modellen einer Formel (Klauselmenge) ist sehr wichtig! Haupthindernis dabei: Es gibt zu viele Interpretationen, die man untersuchen müsste! Solange die Beziehung zur "realen Welt" im Vordergrund steht: Arbeiten mit der "richtigen" Interpretation unerlässlich! aber: Erfüllbarkeit ist eine prinzipielle Eigenschaft (Es gibt irgendeine Interpretation, in der die Formel wahr ist.) ==> Unter Umständen ist die Verwendung einer geeigneten "Referenzinterpretation" n" ausreichend, um Erfüllbarkeit nachzuweisen! Gleichzeitig von Logikern Jacques Herbrand, Kurt Gödel und Thoralf Skolem erkannt: Es gibt eine solche Referenzinterpretation! 6

Herbranduniversum: Idee Idee Zentrale Idee dieser "Referenzinterpretation": Terme Terme werden werden als als Objekte Objekte aufgefasst und und "interpretieren sich sich selber"!! Universum 1 Terme Universum 2 "Selbstreferenz" der Terme Universum 3 7

Herbranduniversum: Definition Bezeichnung für dieses spezielle Referenzuniversum aus "syntaktischen Objekten": Herbrand-Universum Herbrand-Universum einer geschlossenen Formel F in Skolem-Normalform: Menge aller Grundterme (variablenfrei), die aus Konstanten und Funktionssymbolen in F gebildet werden können wenn keine Konstante vorhanden: Wahl einer beliebigen "künstlichen" Konstanten Beispiel: F: X Y [ [ q(c, q(c,, f(x), f(x), h(y, h(y, b)) b)) ] ] zugehöriges Herbrand-Universum: b f(b) f(b) h(b,b) h(b,b) f(f(b)) f(f(b))........ c c f(c) f(c) h(b,c) h(b,c) f(f(c)) f(f(c)) h(c,b) h(c,b) f(h(b,b)) h(c,c) h(c,c).......... 8

Herbrand-Interpretation: Idee Idee Nachteil dieser Konstruktion: Sowie ein "echtes" Funktionssymbol vorliegt, ist das H.-Universum unendlich (jeder Term wird verschieden interpretiert). Vorteil der Konstruktion: Interpretation der Terme liegt fest ("Selbstreferenz") f(t f(t 1, 1,.....,., t n t) n ) f(t f(t 1, 1,.....,., t n t) n ) term term als als Term Term einer einer Sprache Sprache Interpretations- abbildung als als Objekt Objekt des des "Termuniversums" Damit sind in der "Referenzinterpretation" bereits zwei "Freiheitsgrade" fest vorgegeben: Universum, über dem Terme interpretiert werden Abbildungen, die Funktionssymbole interpretieren: Identität nur Bedeutung der Relationssymbole bleibt frei wählbar Bezeichnung für Interpretationen, bei denen Universum und Terminterpretation auf diese Weise fixiert sind: Herbrand-Interpretation 9

Herbrand-Interpretationen und und Herbrand-Modelle Herbrand-Interpretation, die Modell einer Formel F ist: zentrales Resultat der "Herbrand-Theorie": Herbrand-Modell Eine Eine geschlossene Formel Formel in in Skolem-Normalform ist ist genau genau dann dann erfüllbar,, wenn wenn sie sie ein ein Herbrand-Modell besitzt. besitzt. (Beweis siehe z.b. Logik-Buch von Schöning) praktische Bedeutung: Man kann bei der Untersuchung der (Un-)Erfüllbarkeit von Formeln völlig von der "realen Welt" abstrahieren und sich auf die "Welt der Syntax" zurückziehen (und dort "idealistisch" argumentieren). Die meisten Terme in logischen Programmen sind damit als Herbrand-Terme identifiziert, denn sie werden nicht ausgewertet und repräsentieren damit sich selbst : Grundlage der Idee, geschachtelte Terme nur als Datenstruktur zu verwenden. 10

Herbrand-Modelle: Beispiel Beispiel Festlegung der Bedeutung von Relationssymbolen kann dann auch rein syntaktisch erfolgen: Menge der unter der jeweiligen Interpretation wahren Fakten Beispiel: geschlossene Formel mit zugehörigem Herbrand-Universum und zwei möglichen Herbrand-Interpretationen (dargestellt als "Faktenmengen") F: X [ [ q(c, q(c, f(x)) f(x)) p(x, p(x, b)) b)) ] ] Herbrand-Universum zu F: b f(b) f(b) f(f(b)) f(f(b))... c c f(c) f(c) f(f(c)) f(f(c))... R 1 : q(c,f(c)) q(c,f(c)) p(c,b) p(c,b) q(c,b) q(c,b) p(b,c) p(b,c) q(c,f(f(b))) p(f(b),b) Herbrand-Modell von F R 2 : q(c,c) q(c,c) p(c,f(c)) p(c,f(c)) q(b,b) q(b,b) p(c,f(b)) q(c,f(b)) kein Herbrand-Modell von F 11

Herbrand-Interpretationen: Diskussion Vorteile des Arbeitens mit Herbrand-Interpretationen und -Modellen: geringe Vielfalt der Konzepte geringerer Aufwand bei der Semantikfestlegung Abstraktion von der Vielzahl "möglicher Welten": nur ein "repräsentatives" Universum Erfüllbarkeitsfragen rein syntaktisch untersuchbar Auch Folgerungsprobleme lassen sich so systematisch lösen! Nachteile: nicht geeignet für Untersuchung von Bezügen der Formeln zur "Realität" entscheidend: Idee der Selbstreferenz von Termen bedeutet Verzicht auf auf auswertbare Funktionen trotzdem: wichtiges Konzept für automatisches Beweisen und LP! 12

Funktionen in in LP LP grundsätzliche Entscheidung in der logischen Programmierung: Resolution als einziges Inferenzprinzip damit: Verzicht auf auswertbare Terme/definierbare Funktionen trotzdem: Funktionssymbole sind zum Bilden von geschachtelten Strukturen erlaubt. Alle AlleTerme in in logischen Programmen sind sind Herbrandterme! Motivation für Beibehalten von Termen (aus uninterpretierten Funktionssymbolen): Terme dienen als Datenstrukturen (Bäume, Listen etc.) insbesondere: Formeln und Regeln können selbst als Terme auf Parameterposition auftreten "Meta-Programmierung" (Parser, Compiler, Interpreter) Preis für diesen Verzicht auf "echte" Funktionen: Selbst einfachste arithmetische Grundoperationen fehlen und müssen als "built-ins" ins" außerhalb der eigentlichen LP-Sprache zur Verfügung gestellt werden (z.b.: X is 2+3 in PROLOG) 13

Übersicht: zur zur Erinnerung Die logische Programmierung verwendet nur einen kleinen Teil der syntaktischen Ausdrucksmöglichkeiten der Prädikatenlogik ( Fakten und Regeln ): Wie Wie ausdrucksstark ist ist diese diese reduzierte Syntax? Syntax? Zudem werden auswertbare Terme nur quasi außerhalb der LP (rechte Seite von is- Literalen in Prolog) verwendet, die normalen Terme in Prolog sind nicht auswertbar: Welche Welche Semantik haben haben solche solche komischen Terme Terme in in der der Logik? Logik? Der Motor der Operationalisierung logischer Programme ist das Resolutionsverfahren: Ist Ist Resolution eine eine Inferenzregel oder oder gar gar ein ein Kalkül? l? Prolog verwendet als spezielle Resolutionsstrategie das Abarbeiten von Regelmengen von oben nach unten und von Regelrümpfen von links nach rechts : Ist Ist diese diese Strategie korrekt korrekt und/oder vollständig? 14

Kalküle le für ffür r Klauselform? besonders interessant im Zusammenhang mit logischer Programmierung: Inferenzregeln (bzw. ganze Kalküle) für Formeln in Klauselform im folgenden stets verwendet: implikative Notation für Klauseln L 1 1 L 2 2...... L n n K 1 1 K 2 2...... K m m Ursprung der wesentlichen Inferenzregeln für solche implikativen Klauseln: "Modus ponens"-regel dazu erforderlich: erste Voraussetzung (Prämisse der Implikation) muss ebenfalls implikativ notiert werden ( true F ) ( F G) ( true G ) 15

Schnittregel (1) (1) in dieser Darstellung: "Modus ponens" wird zu spezieller Transitivitätsregel tsregel ( true F ) ( F G) ( true G ) im Klauselkontext: zunächst nur anwendbar für einelementige linke und rechte Seiten (da links Konjunktionen, aber rechts Disjunktionen stehen), z.b.: (true (true p(x) p(x) )) (( p(x) p(x) ( ( q(x) q(x) s(x) s(x) ))) )) (true (true ( ( q(x) q(x) s(x) s(x) ))) )) aber: Beschränkung auf true als linke Seite einer der Voraussetzungen ist nicht nötig! Transitivitätsregel tsregel ( H F ) ( F G) ( H G ) 16

Schnittregel (2) (2) entscheidende Verallgemeinerung der "Modus ponens"-regel: Eine transitive Verknüpfung zweier Implikationen kann auch über "eingebettete" Teilformeln erfolgen! ( H F ) ( ( F K ) G) ( ( H K ) G ) ( H ( F K ) ) ( F G) ( H ( G K ) ) Zusammenfassung ( H ( F K 1 ) ) ( ( F K 2 ) G ) ( ( H K 2 ) ( G K 1 ) ) 17

Schnittregel (3) (3) allgemeines Prinzip dieser verallgemeinerten Inferenzregel für Klauselpaare: L L 1. Finde identische Literale auf komplementären Seiten von implikativen Klauseln! 2. Streiche diese beiden Literale aus den beiden Klauseln! 3. Verschmelze "Klauselreste" zu einer Klausel! 18

Schnittregel (4) (4) allgemeines Prinzip für Klauselnotation noch einmal in Form einer Inferenzregel: (( L K 1 1 K 2 2...... F...... K n ) n ) ( ( L 1 1 L 2 2....... F....... L n n K )) (( L L 1 1 L 2 2...... L n n K 1 1 K 2 2...... K n n K )) Bezeichnung wegen des "Herausschneidens" der beiden Vorkommen des gemeinsamen Literals F: Schnittregel 19

Kombination von von Schnitt Schnitt und und Spezialisierung Oft lassen sich keine völlig identischen, komplementären Literale finden, aber Literalpaare, die sich mittels Spezialisierung identisch machen lassen, z.b.: p(x) q(f(x),1) q(f(2),y) false Wegen impliziter Allquantoren für alle Variablen in einer Klausel stellen beliebige Instanzen der beiden Klauseln Folgerungen dar, insbesondere: p(x) p(x) q(f(x),1) q(f(2),y) false false p(2) p(2) q(f(2),1) q(f(2),1) false false p(2) p(2) false false Spezialisierungsregel mit identischer Konstante Schnittregel 20

Resolutionsregel und und Unifizierbarkeit Entscheidender Fortschritt im automatischen Beweisen durch Einführung einer neuen Inferenzregel, die Schnittregel und Spezialisierungsregel kombiniert, im Jahr 1965 durch J.A. Robinson: Resolutionsregel Resolution hat dasselbe generelle Format wie die Schnittregel, aber die "herauszuschneidenden Literale brauchen nicht identisch zu sein, sondern nur unifizierbar: Zwei Zwei Literale Literale L 1 und 1 und L 2 heißen 2 heißen en unifizierbar gdw. gdw. es es ein ein Literal Literal L 3 gibt, 3 gibt, dass dass sowohl sowohl eine eine Instanz Instanz von von L 1 1 als als auch auch eine eine Instanz Instanz von von L 2 ist. 2 ist. Bezeichnung "unifizierbar" motiviert durch: "können durch geeignete Variablensubstitutionen identisch gemacht werden" Bezeichnung "Resolutionsregel" ist kompatibel mit Begriff "Resolution" aus Kap. 2: Resolution in der logischen Programmierung ist Spezialfall der Resolutionsregel 21

Unifikation und und Unifikatoren wichtige Operation beim Konstruieren von Resolutionsschritten: Gezielte Suche nach Literalpaaren, die sich unifizieren lassen! dazu erforderlich: Variablensubstitution, die beide Literale identisch macht Beispiel für verschiedene Unifikatoren zweier Literale: Unifikator L 1 p(x, p(x, f(x,y), f(x,y), 2) 2) p(g(c), p(g(c), f(a,b), f(a,b), B) B) L 2 { X/g(C), Y/2, A/g(C), B/2} sogar: p(g(z), f(g(z), 2), 2) p(g(c), p(g(c), f(g(c), f(g(c), 2), 2), 2) 2) p(g(3), f(g(3), f(g(3), 2), 2), 2) 2) L {....., C/3} L ' 22

Unifikation (2) (2) offensichtlich: qualitativer Unterschied zwischen gemeinsamen Instanzen L 3 und L 3 ' bzw. zwischen Unifikatoren U und U' L p(x, p(x, f(x,y), f(x,y), 2) 1 2) p(g(c), p(g(c), f(a,b), f(a,b), B) B) L 2 gemeinsame Instanzen von L 1 und L 2 L 3 p(g(c), p(g(c), f(g(c), f(g(c), 2), 2), 2) 2) C/3 { X/g(C), Y/2, A/g(C), B/2} U L 3 ' p(g(3), f(g(3), f(g(3), 2), 2), 2) 2) {....., C/3} Unifikatoren U' U enthält enthält nur nur Substitutionen, die die notwendig sind, sind, um um L 1 und 1 und L 2 zu 2 zu unifizieren. U' U' dagegen dagegen führt führt einen einen zusätzlichen, aber aber nicht nicht notwendigen Ersetzungsschritt durch! durch! L3' L3' ist ist folglich folglich seinerseits Instanz Instanz von von L3. L3. 23

Unifikation (3) (3) für Resolution: Nur solche Unifikatoren sind nützlich, die keine "unnötigen" Ersetzungen durchführen, um weitere Resolutionsschritte nicht zu "gefährden" allgemeinster Unifikator engl.: most general unifier (mgu) zugehöriger Begriff: "allgemeinste gemeinsame Instanz" zweier Literale L 3 ist 3 ist allgemeinste gemeinsame Instanz Instanzvon von L 1 und 1 und L 2 gdw. 2 gdw. jede jede (andere) (andere) gemeinsame Instanz Instanz L 3 ' 3 ' von von L 1 und 1 und L 2 ihrerseits 2 Instanz Instanz von von L 3 ist. 3 ist. U ist ist allgemeinster Unifikator von von L 1 und 1 und L 2 gdw. 2 gdw. U die die Literale Literale L 1 und 1 und L 2 in 2 in eine eine allgemeinste gemeinsame Instanz Instanz überf überführt. Bis auf (konsistente) Variablenumbenennung sind allgemeinster Unifikator und allgemeinste gemeinsame Instanz eindeutig bestimmt. z.b.: p(g(z), f(g(z), 2), 2) p(g(c), p(g(c), f(g(c), f(g(c), 2), 2), 2) 2) 24

Resolution damit: generelles Format für Resolutionsregel (( L K 1 1 K 2 2...... F...... K n ) n ) F und und F' F' unifizierbar mit mit allg. allg. Unifikator U ( ( L 1 1 L 2 2....... F' F'....... L n n K )) (( (( L L 1 1 L 2 2...... L n n K 1 1 K 2 2...... K n n K )) )) U Resolvente Anwendung von U auf die ganze Klausel (Postfixnotation) 25