Inferenzmethoden Wintersemester 1995/96 Christoph Kreitz FG Intellektik, Gebäude 23, Raum 117, Telephon 16-2863 Stephan Schmitt FG Intellektik, Gebäude 23, Raum 114, Telephon 16-6632 {kreitz,steph}@intellektik.informatik.th-darmstadt.de 1. Einführung: Wissensbasierte Systeme und Inferenz 2. Geplanter Aufbau der Vorlesung – Lehrziele 3. Organisatorisches 4. Lektion 1: Formale Kalküle Hauptgebiete der Intellektik hh h hh h` ( (( ( (( Kognitive Modellierung D E EE EE Natürliche EE EE E Kommuni- Wissensbasierte kation Systeme D Robotik Maschinerie `h hh hh h Inferenzmethoden ( (( ( (( 1 Einführung Hauptkomponenten eines wissensbasierten Systems Benutzer 6 ? Mensch-System-Schnittstelle 7 o K / w Wissensakquisition Erklärung Y 6 ? j Wissensbasis Inferenzmethoden - 2 U ? Problemlösung (Inferenz) Einführung Schlußfolgerungen Alle Säugetiere sind behaart. Alle Affen sind behaart. Alle Affen sind Säugetiere. Zufällig richtig Alle Säugetiere sind behaart. Alle Teddybären sind behaart. Alle Teddybären sind Säugetiere. Falsch Welche Schlußfolgerungen sind immer akzeptabel? Inferenzmethoden 3 Einführung Gültige Schlüsse Alle Affen sind Säugetiere. Alle Säugetiere sind behaart. Alle Affen sind behaart. Präzisere Formulierung Alle x [wenn Affe(x) dann Säugetier(x)]. Alle x [wenn Säugetier(x) dann behaart(x)]. Alle x [wenn Affe(x) dann behaart(x)]. Abstrahiert von konkreten Inhalten ∀x[A(x) ⇒ S(x)] ∀x[S(x) ⇒ H(x)] ∀x[A(x) ⇒ H(x)] Inferenzmethoden 4 Einführung Geplanter Aufbau der Vorlesung 1. Logik und Gültigkeit – Formale Kalküle – Die klassische Prädikatenlogik erster Stufe – Maschinennahe Charakterisierung logischer Gültigkeit (31.10 – 7.11.) 2. Deduktionsverfahren (8.11. – 5.12.) – Aussagenlogische Verfahren (Konnektionsmethode, Resolution, . . . ) – Strategien, Reduktionstechniken und Optimierungen – Erweiterung auf die Prädikatenlogik erster Stufe 3. Verdichtungen und Strategien (6.12.. – 23.1.) – Gentzen-Kalküle, Tableaux-Kalküle und Nichtnormalformbeweise – Konnektionsreduktionen – Gleichheitsbehandlung – Termersetzung und Unifikationstheorie 4. Erweiterungen und aktuelle Forschungsgebiete – Höhere Logik, Induktion, Modallogiken – Steuerung konstruktiver Beweise – Anwendungen und Implementierungsprobleme Inferenzmethoden 5 (24.1. – 15.2.) Übersicht Inferenzmethoden Lektion 2 Formale Kalküle 1. Formalisierung 2. Syntax und Semantik formaler Sprachen 3. Inferenzsysteme und formale Beweisführung 4. Problemreduktion Kalküle Simulation semantischer Argumentation durch Regeln zur Symbolmanipulation • Anwendung formaler Vorschriften ohne Nachdenken – umgeht Mehrdeutigkeiten der natürlichen Sprache – schematische Lösung mathematischer Probleme • Kernbestandteile: – Formale Sprache (Syntax + Semantik) – Ableitungssystem (Regeln + Axiome) • Wichtige Eigenschaften: – korrekt + vollständig bzgl. Semantik – leicht zu verarbeiten (automatisierbar) Inferenzmethoden 6 Kalküle Formale Sprachen • Syntax – Formale Struktur der Sprache – Notation, textliche Erscheinungsform – Beschreibbar durch mathematische Definitionsgleichungen • Semantik – Zuordnung von Bedeutung an syntaktisch korrekte Ausdrücke Abbildung von formaler Quellsprache in informale Zielsprache – Beschreibbar durch Interpretationsfunktion Inferenzmethoden 7 Kalküle Syntax der Prädikatenlogik (informal) • Vordefiniert: Alphabete – Variablen-, Funktions- und Prädikatensymbole • Terme: Formalisierung mathematischer Objekte – Variablen x – Funktionsanwendung: f (t1, . . . , tn) • Formeln: Formalisierung mathematischer Aussagen – atomare Formel: P (t1, . . . , tn) – zusammengesetzte Formel: ¬ A, A ∧ B, A ∨ B , A ⇒ B , ∀ x A, ∃ x A, (A) • Prioritäten + Konventionen zur Abkürzung Inferenzmethoden 8 Kalküle Semantik der Prädikatenlogik (informal) • Interpretationsfunktion weist Variablen-, Funktions- und Prädikatensymbolen ein mengentheoretisches Objekt zu – Funktions- und Prädikatssymbole haben keine feste Bedeutung • Fortsetzung auf Terme und atomare Formeln – Zusammensetzung der Einzelinterpretationen zu Objekten / Aussagen • Fortsetzung auf zusammengesetzte Formeln: Negation ¬ A wahr, wenn A falsch Konjunktion A Disjunktion A ∧ ∨ B wahr, wenn A und B wahr B wahr, wenn A oder B wahr Implikation A ⇒ B wahr, wenn B wahr ist, wann immer A wahr ist Universelle Quantifizierung ∀ x A wahr, wenn A für jedes x wahr Existentielle Quantifizierung ∃ x A wahr, wenn A für ein x wahr Inferenzmethoden 9 Kalküle Objekt- und Metasprache • Objektsprache: – Sprache des Kalküls, in dem formalisiert wird – formale Sprache • Metasprache: – Sprache, um Aussagen über den Kalkül zu machen – natürliche Sprache + Objektsprache + syntaktische Metavariablen Inferenzmethoden 10 Kalküle Inferenz-kalküle • Regelschemata: A1 , . . . , A n C C ” “aus A . . und An} folgt |{z} | 1 und .{z Konklusion Prämissen Axiom: Regel ohne Prämissen • Γ `rs C : Konkrete Anwendung der Regel rs • Theorem: Ausdruck, der sich durch Anwendung von endlich vielen Regeln ableiten läßt • Korrektheit: alle Theoreme sind gültig – Korrekte Regeln: Gültigkeit der Konklusion folgt aus Gültigkeit der Prämissen • Vollständigkeit: alle gültigen Aussagen sind Theoreme Inferenzmethoden 11 Kalküle Kalkülarten synthetisch/bottom-up: Schlüsse von den Axiomen zur Aussage analytisch/top-down: von der Zielaussage zu den Voraussetzungen • Frege–Hilbert–Kalküle: – viele Axiome, kaum echte Regeln; sehr mächtig; – synthetisch, Beweissuche aufwendig • Gentzens natürliches Schließen (NK / NJ) – synthetisch, nahe am natürlichen mathematischen Schließen, – kaum Axiome, 2 Regeln für jedes logische Zeichen, Verwaltung von Annahmen nötig • Sequenzenkalküle (LK / LJ) – Modifikation von NK/NJ: Schließen über Urteile statt Aussagen – lokale Sicht, keine Verwaltung von Annahmen, gut für interaktive Beweiser – synthetisch oder analytisch formulierbar • Resolutions- und Konnektionskalküle – analytisch, maschinennah, gut für automatisches Beweisen, kaum lesbar Inferenzmethoden 12 Kalküle Problemreduktion I Alle Affen sind Säugetiere. Alle Säugetiere sind behaart. Alle Affen sind behaart. 1. Formalisiere durch Prädikatszeichen und Logiksymbole ∀x[A(x) ⇒ S(x)] ∀x[S(x) ⇒ H(x)] ∀x[A(x) ⇒ H(x)] 2. Lineare Schreibweise: ∀ x [A(x) ⇒ S(x)] & ∀ x [S(x) ⇒ H(x)] ` ∀ x [A(x) ⇒ H(x)] 3. Ersetze Metasymbole durch logische Konnektive: ∀ x [A(x) ⇒ S(x)] Inferenzmethoden ∧ ∀ x [S(x) ⇒ H(x)] ⇒ 13 ∀ x [A(x) ⇒ H(x)] Kalküle Problemreduktion II Alle Affen sind Säugetiere. Alle Säugetiere sind behaart. Alle Affen sind behaart. 4. Eliminiere Quantoren: [A(c) ⇒ S(c)] ∧ [S(c) ⇒ H(c)] ⇒ [A(c) ⇒ H(c)] [A ⇒ S] 5. Aussagenlogik als Kern: 6. Ersetze ⇒ : ¬([¬A 7. Normalform: [A ∨ ∧ S] ∧ ∧ ¬S] ∨ [S ⇒ H] ⇒ [A ⇒ H] [¬S [S H]) ∨ [¬A ∨ H] ¬H] ∨ ¬A ∨ H ∨ ∧ { {A,¬S}, {S,¬H}, {¬A}, {H} } 8. Repräsentiere durch Matrizen: 8a. Graphische Darstellung A S ¬A ¬S ¬H Inferenzmethoden 14 H Kalküle Inferenzmethoden Lektion 3 Prädikatenlogik 1. Syntax prädikatenlogischer Formeln 2. Darstellung prädikatenlogischer Formeln 3. Semantik prädikatenlogischer Formeln 4. Substitution 5. Normalformtransformationen – Negationsnormalform, pränexe Normalform – Skolemisierung – Disjunktive Normalform (Standardverfahren) – Definitorisches Transformationsverfahren Prädikatenlogik erster Stufe – Syntax V : Alphabet von Variablen(-symbolen) x , y , z ,. . . F i : Alphabet von i-stelligen Funktionssymbolen f , g , h ,. . . P i : Alphabet von i-stelligen Prädikatssymbolen i F = ∪∞ i=0 F P , Q , R ,. . . i P = ∪∞ i=0 P Terme •x (x ∈ V ) • f (Konstante) (f ∈ F0) • f (t1 ,. . .,tn ) ( t1, .., tn Terme, f a , b , c ,. . . ∈ Fn) Formeln • P (atomare Formel / Aussagenvariable) P (t1 ,. . .,tn ) (atomare Formel) • ¬ A, A ∧ B , A ∨ B , A ⇒ B , (P ∈ P0 ) ( t1, .., tn Terme, P ∀ x A, ∃x A ∈ Pn ) ( A , B Formeln, x Literal: atomare Formel oder negierte atomare Formel Prioritäten: ∀ = ∃ = ¬ > Inferenzmethoden ∧ > 15 ∨ > ⇒ Prädikatenlogik ∈ V) Formeldarstellung: Formelbaum ∀abc∃xyz[P xc ∧ P (f zb, b) ∨ ¬P (f ay, y)] abc Normalisierung (Skolemisierung) xyz ∨ Aussagenlogik (Beweissuche) ¬ ∧ P Termvergleich (Unifikation) x P c f b 16 y f b z Inferenzmethoden P y a Prädikatenlogik Formeldarstellung: gerichteter azyklischer Graph ∀abc∃xyz[P xc ∧ P (f zb, b) ∨ ¬P (f ay, y)] abc xyz ∨ ¬ ∧ P x P c f z Inferenzmethoden P f b 17 a y Prädikatenlogik Prädikatenlogik erster Stufe – Semantik • Interpretation: Universum U + Interpretationsfunktion ι – ι(x) Objekt aus U (x ∈ V) – ι(f ) n-stellige Funktion φ : U n →U – ι(P ) Funktion Π : U n →{>, ⊥} (f (P ∈ ∈ Fn) Pn ) • ι( f (t1 ,. . .,tn )) = ι(f )( ι(t1), . . . , ι(tn) ). • ι( P (t1 ,. . .,tn )) = ι(P )( ι(t1), . . . , ι(tn) ). • ι(¬A) = >, falls ι(A) = ⊥ ⊥ sonst ι(A ∧ B) = >, falls ι(A) = > und ι(B) = > ⊥ sonst ι(A ∨ B) = >, falls ι(A) = > oder ι(B) = > ⊥ sonst ι(A ⇒ B) = >, falls aus ι(A) = > immer ι(B) = > folgt ⊥ sonst ι(∀x A) ι(∃x A) = >, falls ιux(A) = > für alle u ∈ U ⊥ sonst = >, falls ιux(A) = > für ein u ∈ U ⊥ sonst (ιux (x) = u, sonst ιux = ι) Inferenzmethoden 18 Prädikatenlogik Modelle und Gültigkeit • Modell M von A (M |= A): Interpretation M = (U ,ι) mit ι(A) = > • A erfüllbar: es gibt ein Modell für A • A widerlegbar: es gibt ein Modell für ¬ A • A widersprüchlich: es gibt kein Modell für A • A gültig (|= A, A Tautologie): jede Interpretation ist Modell für A • Gültiger Schluß (E |= F , F folgt logisch aus E ): – aus M |= E für alle E ∈ E folgt M |= F ( E Formelmenge, E, F Formeln, M Interpretation) • Theorie: – erfüllbare Formelmenge zusammen mit allen Formeln, die daraus logisch folgen E ∪ {E} |= F gilt genau dann, wenn E |= E ⇒ F gilt Inferenzmethoden 19 Prädikatenlogik Freies und gebundenes Vorkommen von Variablen • x: die Variable x kommt frei vor; y 6= x kommt nicht vor. • f (t1, ..., tn ): freie Vorkommen von x in ti bleiben frei, gebundene Vorkommen von x bleiben gebunden. • P (t1, ..., tn ) freie Vorkommen von x in ti bleiben frei, gebundene Vorkommen von x bleiben gebunden. • ¬ A, A ∧ B, A ∨ B , A ⇒ B : freie Vorkommen von x in A, B bleiben frei, gebundene Vorkommen von x bleiben gebunden. • ∀ x A, ∃ x A: freie und gebundene Vorkommen von x in A werden gebunden; freie Vorkommen von y 6= x in A bleiben frei, gebundene Vorkommen von y bleiben gebunden. Inferenzmethoden 20 Prädikatenlogik Substitution Endliche Abbildung σ von Variablen in Terme • σ = {x1 \t1, . . . , xn \tn} = ˆ σ (x1 )=t1 , . . . , σ (xn )=tn : leere (identische) Substitution • A σ : Anwendung von σ auf Ausdruck A x{x\t} =t x{y\t} =x (y 6= x) f (t1, .., tn){x\t} = f (t1{x\t}, .., tn{x\t}) P (t1, .., tn){x\t} = P (t1{x\t}, .., tn{x\t}) ¬A{x\t} = ¬A{x\t}, A ∧ B{x\t} = A{x\t} ∧ B{x\t} A ∨ B{x\t} = A{x\t} ∨ B{x\t} A ⇒ B{x\t} = A{x\t} ⇒ B{x\t} ∀x A{x\t} = ∀x A ∃x A{x\t} = ∃x A ∀x A{y\t} ∀x A{y\t} = (∀z A[z/x]){y\t} ∃x A{y\t} = (∃z A{x\z}){y\t} y 6= x, y frei in A, x frei in t, z neue Variable. = ∀x A{y\t} ∃x A{y\t} y 6= x, y nicht frei in A oder x nicht frei in t = ∃x A{y\t}, • τ σ : Komposition der Substitutionen τ und σ σ idempotent: σ σ = σ Inferenzmethoden 21 Prädikatenlogik Normalformtransformationen I Affen sind Säugetiere. Säugetiere sind behaart. Affen sind behaart. 1. Binde freie Variablen der Formel durch All-Quantoren. ∀ x [A(x) ⇒ S(x)] ∀ x [S(x) ⇒ H(x)] ⇒ ∧ 2. Ersetze Vorkommen von ⇒ und ⇔ : – A ⇒ B 7→ ¬ A ¬( ∀ x [¬A(x) ∨ ∨ B, S(x)] ∧ A ⇔ B 7→ A ∀ x [¬S(x) ∨ ∧ ∀ x [A(x) ⇒ H(x)] B H(x)]) ∨ ∨ ¬A ∧ ¬B ∀ x [¬A(x) ∨ H(x)] 3. Bilde Negationsnormalform durch De Morgan’sche Gesetze und ¬∀xF 7→ ∃ x [A(x) ∧ ∃x¬F , ¬S(x)] Inferenzmethoden ∨ ¬∃xF ∃ x [S(x) 7→ ∧ ∀x¬F ¬H(x)] 22 ∨ ∀ x [¬A(x) Prädikatenlogik ∨ H(x)] Normalformtransformationen II 4. Erzeuge pränexe Normalform (∀xF ) ∧ G 7→ ∀x(F ∧ G) x nicht frei in G (∀xF ) ∨ G 7→ ∀x(F ∨ G) x nicht frei in G (∃xF ) ∧ G 7→ ∃x(F ∧ G) x nicht frei in G (∃xF ) ∨ G 7→ ∃x(F ∨ G) x nicht frei in G ∀z ∃ x∃y [A(x) ∧ ¬S(x)] ∨ [S(y) ∧ ¬H(y)] ∨ [¬A(z) ∨ H(z)] 5. Eliminiere Allquantoren durch Skolemisierung: ∃x1, . . . , xn ∀zF gültig genau dann, wenn ∃x1, . . . , xnF {z \f (x1, . . . , xn)} gültig ∃ x∃y [A(x) ∧ ¬S(x)] Inferenzmethoden ∨ [S(y) ∧ 23 (f neues Funktionssymbol) ¬H(y)] ∨ [¬A(f) ∨ H(f)] Prädikatenlogik Normalformtransformationen III 6. Erzeuge quantorenfreie Formel (streiche Existenzquantoren) Es reicht, die quantorenfreie Teilformel zu betrachten. Jede freie Variable darin ist durch einen Existenzquantor gebunden. [A(x) ∧ ¬S(x)] ∨ [S(y) ∧ ¬H(y)] ∨ [¬A(f) ∨ H(f)] 7. Bringe auf disjunktive Normalform (Standardverfahren) [A(x) ∧ ¬S(x)] ∨ [S(y) ∧ ¬H(y)] ∨ ¬A(f) ∨ H(f)] 8. Generiere Matrix { {A(x),¬S(x)}, {S(y),¬H(y)}, {¬A(f)}, {H(f)} } Graphische Darstellung (ohne Klammern) ¬Hy ¬Sx ¬Af Hf Inferenzmethoden Sy Ax 24 Prädikatenlogik Definitorische Normalformtransformationen A ∧ B ∧ C ∧ D ∧ E ∧ F ⇒ (A ∨ ¬B) ∧ (B ∨ ¬C) ∧ (C ∨ ¬D) ∧ (D ∨ ¬E) ∧ (E ∨ ¬F) ∧ F 1. Kürze längere Teilformeln durch neue Prädikate ab F1 ≡ A ∨ ¬B F2 ≡ B ∨ ¬C F3 ≡ C ∨ ¬D F5 ≡ E ∨ ¬F F 6 ≡ F1 ∧ F2 ∧ F3 ∧ F4 ∧ F5 ∧ F F4 ≡ D ∨ ¬E F 8 ≡ F7 ⇒ F 6 F7 ≡ A ∧ B ∧ C ∧ D ∧ E ∧ F 2. Äquivalenz ggf. ersetzbar durch Implikation – Teilformel SUB kommt positiv vor: “SUB ⇒ F i ” – Teilformel SUB kommt negativ vor: “F i ⇒ SUB ” – Teilformel SUB kommt positiv und negativ vor: “F i ⇔ SUB ” 3. Ersetze und ergänze definierende Formeln ∧ B ∨ ¬C ⇒ F2 ∧ C ∨ ¬D ⇒ F3 ( A ∨ ¬B ⇒ F1 ∧ D ∨ ¬E ⇒ F4 ∧ E ∨ ¬F ⇒ F5 ∧ F1 ∧ F2 ∧ F3 ∧ F4 ∧ F5 ∧ F ⇒ F6 ∧ F7 ⇒ A ∧ B ∧ C ∧ D ∧ E ∧ F ∧ (F7 ⇒ F6 ) ⇒ F8 ) ⇒ F8 4. Normalisiere mit Standardverfahren 7→ 18 Disjunktionen statt 38 bei gewöhnlicher Normalisierung Definitorische Normalformtransformationen lohnt erst bei großen Formeln Inferenzmethoden 25 Prädikatenlogik Inferenzmethoden Lektion 4 Maschinennahe Charakterisierung logischer Gültigkeit 1. Matrixrepräsentation aussagenlogischer Formeln – Literale, Klauseln und Matrizen – positive und negative Repräsentation – Semantik aussagenlogischer Matrizen 2. Gültigkeit aussagenlogischer Formeln – Pfade, Konnektionen und aufspannende Paarungen – Charakterisierungstheorem für aussagenlogische Gültigkeit 3. Gültigkeit prädikatenlogischer Formeln – Matrixrepräsentation, Klauselkopien, indizierte Paarungen – Charakterisierungstheorem für prädikatenlogische Gültigkeit Aussagenlogische Matrizen – Syntax • P 0 : Alphabet (Aussagenvariablen / Atome) • Literal: Atom P (positives Literal) oder negiertes Atom ¬P (negatives Literal) • Klausel: endliche Mengen von Literalen Horn-Klausel: höchstens ein negiertes Atom • Matrix: endliche Menge von Klauseln Horn-Matrix: endliche Menge von Horn-Klauseln • Lc : Vorkommen des Literals L in Klausel c Inferenzmethoden 26 Matrizen und Gültigkeit Matrizen – repräsentierte Formel • Positive Repräsentation: – ein Literal repräsentiert sich selbst, – eine Klausel repräsentiert die Konjunktion ihrer Literale und – eine Matrix repräsentiert die Disjunktion ihrer Klauseln. Gut für direkte Beweisführung • Negative Repräsentation: – ein Literal repräsentiert seine negierte Form, – eine Klausel repräsentiert die Disjunktion ihrer Literale und – eine Matrix repräsentiert die Konjunktion ihrer Klauseln. Gut für indirekte Beweisführung Inferenzmethoden 27 Matrizen und Gültigkeit Positive und negative Repräsentation Matrix als Menge von Mengen repräsentiert positiv Disjunktion von repräsentiert negativ Negation Konjunktionen Klauseln als Spalten der Matrix Inferenzmethoden Konjunktion von Disjunktionen (Vorzeichentausch) 90 o Drehung Vorzeichentausch 28 Klauseln als Zeilen der Matrix Matrizen und Gültigkeit Matrizen und Formeln {{¬P, Q, R}, {¬Q, ¬R}, {P, Q}} repräsentiert positiv ¬P ∧ Q ∧ R ∨ ¬Q ∧ ¬R ¬P Q R ¬Q ¬R ∨ repräsentiert negativ P P Q Inferenzmethoden ∧ Q Negation o 90 Drehung Vorzeichentausch 29 (P ∨ ¬Q ∨ ¬R) ∧ (Q ∨ R) ∧ (¬P ¬P ¬Q P ¬Q Q R Matrizen und Gültigkeit ¬R ∨ ¬Q Horn-Matrizen • Mengenschreibweise: {{P }, {¬P, Q}, {¬Q, R}, {¬R}} • Matrixform (positiv): P ¬P ¬Q ¬R Q • Negative Repräsentation: Prolog Programm: R Q P R R. ¬R Q :- R. ¬P :- P ? ¬Q Inferenzmethoden P :- Q. 30 Matrizen und Gültigkeit Semantik aussagenlogischer Matrizen • Interpretation: endliche Teilmenge von P 0 – (Vereinfachung einer Funktion Π : U 0 →{>, ⊥}) • Wert unter Interpretation M (positive Repräsentation): Atom P >, falls P ∈ M ⊥, sonst Literal ¬P >, falls P 6∈ M Klausel c Matrix F >, falls alle Literale den Wert > haben >, falls eine Klausel den Wert > hat ⊥, sonst ⊥, sonst ⊥, sonst (Negative Repräsentation: tausche ⊥ und >) • M |= F (M Modell für F ): Wert von F unter M ist > • F erfüllbar: es gibt ein Modell für F • F gültig: jede Interpretation ist Modell für F Inferenzmethoden 31 Matrizen und Gültigkeit Gültigkeit aussagenlogischer Matrizen ¬P P gültig ¬P ¬Q Q P gültig ¬Q ¬P Q P Inferenzmethoden 32 nicht gültig Matrizen und Gültigkeit Komplementarität aussagenlogischer Matrizen • Pfad durch Matrix {c1, . . . , cn}: – Menge {Lc11 , . . . , Lcnn } (je ein Literal aus jeder Klausel) • Konnektion: Teilmenge eines Pfades mit der Form {P, ¬P } • Paarung: Menge von Konnektionen in einer Matrix • aufspannende Paarung in einer Matrix F : – jeder Pfad durch F enthält mindestens eine ihrer Konnektionen • Komplementär – Literale L und L0 : L und L0 bilden Konnektion – Pfad p={Lc11 , . . . , Lcnn }: p enthält Konnektion – Matrix F : jeder Pfad durch F ist komplementär Inferenzmethoden 33 Matrizen und Gültigkeit Charakterisierung aussagenlogischer Gültigkeit P ¬P Q ¬Q R ¬R Pfade: {P, ¬P, ¬Q, ¬R}, {P, ¬P, R, ¬R}, {P, Q, ¬Q, ¬R}, {P, Q, R, ¬R} Aufspannende Paarung: Menge der Pfade P ¬P Q ¬Q R ¬R = ˆ konjunktive Normalform der Matrix Aufspannende Paarung = ˆ jede Zeile der KNF enthält L ∨ ¬L ≡ > ⇓ Eine Formel ist genau dann gültig, wenn sie eine aufspannende Paarung aufweist Inferenzmethoden 34 Matrizen und Gültigkeit Dreidimensionale prädikatenlogische Matrizen ∀abc∃xyz[P xc ∧ P (f zb, b) ∨ ¬P (f ay, y)] ¬P P P x c f f a z y b Definition analog zu aussagenlogischen Matrizen (erweiterter Begiff “Atom”) Inferenzmethoden 35 Matrizen und Gültigkeit Gültigkeit — prädikatenlogisch ¬Hy ¬Sx Sy Ax Hc ¬Ac Gültig: Termfüße identisch mit σ = {x\c , y \c} P xc ¬P (f ay, y) P (f zb, b) ¬P (f ay1, y1) ¬P (f ay2, y2) P xc P (f zb, b) σ = {x\f ac , y1 \c , z \a , y2 \b} Klauselkopie erforderlich für Beweis: 1 ¬P (f ay, y) P xc Kurzform: Indizierte Paarung 2 P (f zb, b) Inferenzmethoden 36 Matrizen und Gültigkeit Charakterisierung prädikatenlogischer Gültigkeit • indizierte Paarung: Konnektion mit Index für Klauselkopie • indizierte Matrix: Matrix mit indizierter Paarung expandierte Form einer indizierten Matrix: – erweiterte Form mit expliziten Kopien von Klauseln • Pfad durch indizierte Matrix: Pfad durch ihre expandierte Form • aufspannende (indizierte) Paarung: – Jeder Pfad durch die indizierte Matrix enthält mindestens eine Konnektion. Eine prädikatenlogische Formel (in Matrixform) ist gültig, wenn sie eine aufspannende indizierte Paarung aufweist und es eine Substitution σ gibt, deren Anwendung die durch die Paarung konnektierten Termfüße identisch macht. Inferenzmethoden 37 Matrizen und Gültigkeit Inferenzmethoden Lektion 5 Das Extensionsverfahren für Horn-Logik 1. Extensionsschritt 2. Bereinigungsschritt 3. Rücksetzungsschritt 4. Separation 5. Vollständigkeit für die Hornlogik Matrixbasierte Deduktion (ca. 2 n für F = {c1, . . . , cn}) • Ziel: Überprüfung aller Pfade • Beobachtung: Pfade, bei denen Konnektion gefunden wurde sind komplementär und brauchen nicht weiter untersucht zu werden. ⇒ Orientiere Überprüfung an Konnektionen (ca. m2 bei m Literalen) Eliminiere Pfade (durch Literal L), die eine Konnektion (mit L) enthalten. Untersuche systematisch die restlichen Pfade (durch L) • Grundidee: (Tiefensuche) – Kennzeichne abgeschlossene (komplementäre) Teilpfade – Verfolge den nächsten noch offenen Teilpfad – (Konnektionenorientiert = Extension des Pfades) – Markiere Teilpfade, die später noch zu betrachten sind Inferenzmethoden 38 Das Extensionsverfahren Extensionsschritt “ ` ” P % Q ↑ ¬P ¬Q ¬R Q R R ↑ markiert aktuelle Klausel P markiert Literale des aktuellen Pfades ` P Q % ¬P. ¬Q ¬R Q R % R ↑ . markiert abgeschlossene (komplement äre) Teilpfade % markiert Startliterale der noch offenen Teilpfade 1. Wähle ein mit % markiertes Literal P der aktuellen Klausel. 2. Ersetze % durch Box P ; wähle von P ausgehende Konnektion – falls es weitere Konnektionen gibt, vermerke diese in Alternativenmenge 3. Markiere konnektiertes Literal mit . 4. Markiere andere Literale der konnektierten Klausel mit % 5. Verschiebe ↑ auf die konnektierte Klausel Inferenzmethoden 39 Das Extensionsverfahren Bereinigungsschritt “ ∼ ” P Q % ¬P. ¬Q. ¬R. Q R R % ∼ ↑ P Q % ¬P. ¬Q. ¬R Q R % R. ↑ • Keine Extension mehr möglich • Keine Literale der aktuellen Klausel mit % markiert ⇒ Alle Alternativen des aktuellen Pfades sind überprüft 1. Entferne Punktmarkierungen der aktuellen Klausel 2. Setze ↑ zurück auf letze Klausel des aktuellen Pfades 3. Ersetze Boxmarkierung durch Punktmarkierung Nach Bereinigung sind weitere Extensionen von der nun aktuellen Klausel möglich Inferenzmethoden 40 Das Extensionsverfahren Ableitung für ¬P P Q Q R % ↑ ¬Q ¬R R Q Q R % P. Q Q R ↑ ¬P ↑ P Q Q R ∼ 2x ↑ % ¬P P % R ¬Q ¬R R Q ¬P ∨ ∧ Q % R Q∧R ` ↑ P Q. Q R R ` Q Q R P R ↑ ` ∨ Q R % R P Q. Q R R Q Q R ↑ R R 41 ∼ 2x ¬P ¬Q. ¬R. P. ` ↑ ¬Q ¬R Inferenzmethoden ¬R ¬P. ¬Q ¬R. % ¬P ¬Q. ¬R ¬Q ∧ R ¬P. ¬Q. ¬R % ↑ P. ∨ Q R ¬P. ¬Q ¬R % ` ∧ ¬P. ¬Q ¬R Q ¬P. ¬Q. ¬R. P ` P Das Extensionsverfahren ∼ 3x ↑ Rücksetzung (Backtracking) P Q % ¬P. ¬Q. ¬Q Q R % R % 7→ ↑ P Q % ¬P. ¬Q ¬Q Q % R R↑ • Keine Extension mehr möglich • Alternativenmenge nicht leer ⇒ Eine andere Alternative muß verfolgt werden 1. Gehe zurück auf Literal des aktuellen Pfades, von dem aus eine alternative Konnektion beginnt 2. Stelle die damalige Konfiguration wieder 3. Streiche die zuletzt betrachtete Konnektion aus der Alternativenmenge Inferenzmethoden 42 Das Extensionsverfahren Extensionsverfahren – (semi-)algorithmisch 1. Wähle Startklausel (positive Klausel) und markiere sie mit ↑ – Lemma: Jede gültige Matrix hat mindestens eine rein negative und eine rein positive Klausel. 2. Markiere alle Literale der aktuellen Klausel mit % 3. Führe Extensions- Bereinigungs- und Rücksetzungsschritte aus, solange dies möglich ist. 4. Die Formel ist gültig, wenn kein Literal der Startklausel mehr zu betrachten ist. Andernfalls ist die Formel nicht allgemeingültig sofern alle Klauseln betrachtet wurden Extensionskalkül – nicht Verfahren (Strategie) im eigentlichen Sinne Offene Steuerungsparameter: • Wahl der Startklausel – sollte Zielklausel (Behauptung) sein • Reihenfolge der Literale in einer Klausel • Wahl der Konnektion bei mehreren Alternativen Inferenzmethoden 43 Das Extensionsverfahren Separation ¬P. ¬R Q P Q % R ; % ↑ ¬R R ↑ • Keine Extension mehr möglich • Alternativenmenge leer • Noch unbetrachtete Klauseln vorhanden. ⇒ Gültigkeit hängt nur von verbleibenden Klauseln ab 1. Ignoriere Klauseln mit Literalen des aktuellen Pfades 2. Starte Extensionsverfahren erneut Inferenzmethoden 44 Das Extensionsverfahren Extensionsverfahren – Eigenschaften • `B F : F wird vom Beweisverfahren B als gültig bewiesen • Korrektheit eines Beweisverfahrens B : aus `B F folgt |= F – F beliebige Formel einer gegebenen Formelklasse • Vollständigkeit eines Beweisverfahrens B : aus |= F folgt `B F • Entscheidungsverfahren B : B entscheidet für jede Formel F nach endlich vielen Schritten ob `B F oder 6`B F gilt. Das Extensionsverfahren ist korrekt und (bei Start mit der Zielklausel !!) vollständig für die Klasse der Hornformeln Inferenzmethoden 45 Das Extensionsverfahren Inferenzmethoden Lektion 6 Das allgemeine Extensionsverfahren 1. Allgemeiner Extensionsschritt 2. Korrektheit und Vollständigkeit 3. Komplexitätsbetrachtungen 4. Strategische Hinweise 5. Verarbeitung von Nichtnormalformmatrizen Allgemeiner Extensionsschritt “ ` ” P Q % ¬P. ¬Q. ¬R Q R ¬Q R % ` ↑ P Q % ↑ markiert aktuelle Klausel ¬P. ¬Q. ¬R. Q R ¬Q. R % ↑ . markiert abgeschlossene (komplement äre) Teilpfade % markiert Startliterale der noch offenen Teilpfade P markiert Literale des aktuellen Pfades 1. Wähle ein mit % markiertes Literal P der aktuellen Klausel. 2. Ersetze % durch Box P ; wähle von P ausgehende Konnektion – falls es weitere Konnektionen gibt, vermerke diese in Alternativenmenge 3. Markiere alle Literale der konnektierten Klausel, die mit einem Literal des aktuellen Pfades konnektiert sind, mit . 4. Markiere andere Literale der konnektierten Klausel mit % 5. Verschiebe ↑ auf die konnektierte Klausel Inferenzmethoden 46 Das allgemeine Extensionsverfahren Das Extensionsverfahren CP 01 Falls {} ∈ F so ist F gültig und das Verfahren bricht ab Erfolg %-List ← [] ; p ← {} Wähle Klausel c ∈ F ; streiche c aus F Solange F 6= {} Wähle Literal L ∈ c ; streiche L aus c Extension mit L Falls c 6= {} erweitere %-List um die Markierung (c, p, F ) Erweitere p um L Falls es eine Klausel d ∈ F und ein Literal L0 ∈ d gibt, das mit einem K ∈ p konnektiert ist Dann streiche d aus F ; streiche alle mit einem K ∈ p konnektierten Literale aus d Falls d = {} Dann Falls %-List = [] so ist F gültig und das Verfahren bricht ab Erfolg Wähle (c, p, F ) als die letzte Markierung aus %-List; streiche diese Bereinigung Sonst c ← d Sonst %-List ← [] ; p ← {} ; Separation und Neustart Wähle Klausel c ∈ F ; streiche c aus F Ist F = {} so ist F ungültig und das Verfahren endet F : aktuelle Matrix; p :aktueller Pfad; Inferenzmethoden Mißerfolg %-List: Markierung der Startliterale von offenen Teilpfaden 47 Das allgemeine Extensionsverfahren Allgemeines Extensionsverfahren – Eigenschaften • CP 01 ist korrekt. • CP 01 ist vollständig für die Aussagenlogik. • CP 01 ist ein Entscheidungsverfahren. • CP 01 ist konfluent. – bei alternativen Extensionsmöglichkeiten spielt die Auswahl keine Rolle ⇒ kein Rücksetzschritt erforderlich! • Komplexität exponentiell. – Obergrenze m ∗ 2n Schritte bei m Literalen, n Klauseln (grobe Abschätzung) – Gültigkeitsproblem is co-NP-vollständig ⇒ Reduktion der Klauselmenge sehr wichtig – Mittelwerte deutlich besser (linear bei Hornklauseln oder ≤2 Literalen je Klausel) Inferenzmethoden 48 Das allgemeine Extensionsverfahren Beweisstrategien Steuerung der Regeln eines Kalküls/Verfahrens • Beweissuche = ˆ implizite Verabeitung eines Suchbaumes • Top-Down oder Bottom-up Beweisführung: Wahl der Startklausel – Zielklausel (Behauptung): analytische (Rückwärts) Beweisführung – sonst: synthetische (Aufwärts) Beweisführung • -Verzweigung: Wahl des nächsten betrachteten Teilpfades – keine echte Auswahl (beides muß verfolgt werden) – Tiefensuche: (verfolge aktuellen Pfad) zeigt Unerfüllbarkeit schneller – Breitensuche: (verfolge aktuelle Klausel) • -Verzweigung: Wahl der Konnektion – Breitensuche: verfolge alle Alternativen simultan vollständig, findet kürzeste Beweise, langsam – Tiefensuche: verfolge eine Alternative (Backtracking im Mißerfolgsfall) schnell, Vollständigkeit/Terminierung (Prädikatenlogik) kann verloren gehen ∧ ∨ Inferenzmethoden 49 Das allgemeine Extensionsverfahren Deduktionsverfahren für Nicht-Normalform • Ersetze Normalisierung durch Erweiterung des Verfahrens – Modifikation der Begriffe Matrix, Pfad, Konnektion – Modifikation von Extensions-, Bereinigungs- und Rücksetzungsschritt ⇒ Keine exponentielle Aufblähung der Klauselmenge ⇒ Faktorisierung von Literalen während Beweisführung möglich ⇒ Aufwendigeres Verfahren – schnellere Beweisführung (?) • Nicht-Normalform Matrizen – Matrix der Tiefe 0: Literal L – Matrix der Tiefe 1: Klausel c = {L1, . . . , Lk } – Matrix der Tiefe n+1: endliche Menge {M1, . . . , Mj } von Matrizen der Tiefe ≤n • Repräsentierte Formel (positiv) – Matrix der Tiefe 0: das entsprechende Literal L – Matrix der Tiefe 2n-1: Konjunktion der Teilmatrizen M1, . . . , Mj – Matrix der Tiefe 2n: Disjunktion der Teilmatrizen M1, . . . , Mj ⇒ Semantik eindeutig festgelegt Inferenzmethoden 50 Das allgemeine Extensionsverfahren Gültigkeit von Nicht-Normalform Matrizen P Q ¬P ¬Q Q R ¬R ¬S S • Pfade durch Matrix F – Literal L: ein Pfad {L} – Matrix {L1, . . . , Lk , {M1,1, . . . , M1,j1 }, . . . , {Mm,1 , . . . , Mm,jm }}: alle Pfade {L1, . . . , Lk }∪ ∪ i≤m{pi | pi Pfad durch ein Mi,l (l≤ji )} • Konnektion, (aufspannende/indizierte) Paarung, Komplementarität – Definition unverändert Eine prädikatenlogische Matrix ist gültig, wenn sie eine aufspannende indizierte Paarung aufweist und es eine Substitution gibt, deren Anwendung die konnektierten Termfüße identisch macht. Inferenzmethoden 51 Das allgemeine Extensionsverfahren Extensionsverfahren für Nicht-Normalform Matrizen P % Q ↑ P Q % P. Q %↑ P. Q ¬P ¬Q Q R ¬R ¬S S P Q % ¬P.¬Q. Q R ¬R. ¬S S ∼ P Q ↑ % ¬P ¬Q Q R % ¬R ¬S S ¬P ¬Q Q R S ` . ¬R.¬S. ↑ Inferenzmethoden ` ∼ ∼ P. Q ↑ P Q ¬P. ¬Q Q R %↑ ¬R ¬S S ` %↑ ¬P ¬Q Q R % . ¬R ¬S S ` %↑ ¬P ¬Q. Q R %↑ ¬R ¬S S S 52 P Q % %↑ ¬P ¬Q Q R P Q ¬R ¬S ` P. Q ¬P.¬Q. Q R ¬R ¬S %↑ S ` %↑ ¬P ¬Q Q R . ¬R ¬S. S ¬P ¬Q. Q R ↑ ¬R. ¬S S % ↑ ∼ ∼ ∼ ∼ ` Verfahren ähnlich wie zuvor Details trickreich ( → Bibel 87) Verallgemeinerungen möglich Das allgemeine Extensionsverfahren Inferenzmethoden Lektion 7 Varianten von Deduktionsverfahren 1. Tableaux-Verfahren 2. Modellelimination 3. Maslov-Verfahren (Inverse Methode) 4. Semantische Bäume 5. Konsolution Tableaux-Verfahren Gegeben: Matrix {c1, . . . , cn} mit ci = {Li1, . . . , Limi } Menge von Konnektionen {k1, . . . , km} mit kj = {P ci j , ¬P ci 0 j } Start: Ein Knoten markiert mit der gesamten Matrix. Regeln: Wähle Klausel ci = {Li1, . . . , Limi }. Generiere mi Nachfolger, markiert mit Li1, . . . , Limi . Ziel: Alle Äste abgeschlossen (enthalten Konnektion der Matrix) Rechtfertigung: Äste entsprechen Teilpfaden durch die Matrix. Die Äste des Baumes sind genau dann abgeschlossen, wenn jeder Pfad durch die Matrix komplement är ist. Originalverfahren arbeitet ohne Normalform Extensionsverfahren = ˆ kompaktifizierte, effizientere Version Inferenzmethoden 53 Varianten von Deduktionsverfahren Tableaux-Ableitung für P ∧ Q ∨ ¬P ∧ Q∧R ∨ ¬Q ∧ R ∨ ¬R {{P, Q}, {¬P, Q, R}, {¬Q, R}, {¬R}} Q P Q ¬P • ¬Q • ¬Q • R ¬R • R Inferenzmethoden ¬R • R 54 ¬R • Varianten von Deduktionsverfahren Modell-Elimination Untersuche Modelle, welche die Matrix falsifizieren könnten. Zeige, daß keines Bestand hat. P ∧ Q ∨ ¬P ∧ Q∧R ∨ ¬Q ∧ R ∨ ¬R 1. Um die erste Klausel falsch werden zu lassen, muß P oder Q falsch sein. F ür ein erstes Gegenmodell nehmen wir also an P sei falsch und betrachten die weiteren Klauseln 2. Unter der Annahme ist ¬P wahr. Klausel 2 wird trotzdem falsch, wenn zus ätzlich Q falsch ist oder R falsch ist. Wir nehmen an, Q sei falsch. 3. Unter den Annahmen ist ¬Q wahr. Klausel 3 wird trotzdem falsch, wenn zus ätzlich R falsch ist. 4. Unter den Annahmen ist ¬R wahr. Sie führen also nicht zu einem Gegenmodell und wir müssen weitere Alternativen betrachten. 5. Wenn R wahr wäre, würde Klausel 3 wahr, also müssen wir weitere Alternativen betrachten. 6. Klausel 2 wird wahr, wenn Q wahr ist – es sei den, R wäre falsch. Unter dieser Annahme wird aber Klausel 4 wahr und somit gibt es kein Gegenmodell, in dem P falsch ist. ... Extensionsverfahren = ˆ maschinennahe Modellelimination Inferenzmethoden 55 Varianten von Deduktionsverfahren Maslov-Verfahren (Inverse Methode) Gegeben: Matrix {c1, . . . , cn} mit ci = {Li1, . . . , Limi } Menge von Konnektionen {k1, . . . , km} mit kj = {P ci j Start: m Knoten markiert mit Konnektionen kj = {P , ¬P ci j ci 0 j , ¬P } ci 0 j }. Regel: Wähle Klausel ci = {Li1, . . . , Limi } und mi Knoten markiert mit K1 ∪ {Li1} . . . Kmi ∪ {Limi }. Leite ab K1 ∪ . . . ∪ Kmi . Ziel: Knoten, der mit {} markiert ist. Rechtfertigung: Die Regel entspricht dem Ableitungsschritt einer veränderten Abarbeitungsreihenfolge bei der Suche nach Komplementarität. Statt Tiefensuche werden ganze Klauseln verarbeitet und Teilpfade, welche alle Pfade mit Sicherheit komplement är machen, auf einen Stack gelegt. Kann dies mit dem leeren Pfad erreicht werden, so ist die gesamte Matrix komplementär. Inferenzmethoden 56 Varianten von Deduktionsverfahren Maslov-Ableitung für {P, ¬P } P ∧ {Q, ¬Q} ∨ ¬P {R, ¬R} ∧ Q∧R ∨ ¬Q ∧ R ∨ ¬R Klausel {P, Q} {¬P, ¬Q} {¬P, Q, R} {¬Q, ¬R} Inferenzmethoden Q {¬R} {¬Q, R} {} {¬R} 57 Varianten von Deduktionsverfahren Maslov-Ableitung als inverses Extensionsverfahren ¬P P Q Q R % ↑ ¬Q ¬R R Q Q % R ` ↑ ¬P. ¬Q. ¬R Q Q R Q Q R R % ↑ Inferenzmethoden ` R P ` Q R ` R %↑ ¬P. ¬Q. ¬R P Q Q R ¬P P Q ¬P. ¬Q ¬R Q R P P %↑ ¬P. ¬Q ¬R P ` ¬Q ¬R ¬P R % ↑ 58 ` % Q ¬Q ¬R R R ↑ ¬P. ¬Q ¬R P Q Q R % R ↑ ¬P. ¬Q. ¬R. P Q Q R R Varianten von Deduktionsverfahren ↑ Semantische Bäume Gegeben: Matrix {c1, . . . , cn} mit ci = {Li1, . . . , Limi } Menge von Konnektionen {k1, . . . , km} mit kj = {P ci j , ¬P ci 0 j } Start: Ein Knoten markiert mit der gesamten Matrix. Regel: Wähle eine Konnektion kj = {P ci j , ¬P ci 0 Generiere 2 Nachfolger, markiert mit P j }. ci j und ¬P ci 0 j . Ziel: Alle Äste abgeschlossen (enthalten eine Klausel der Matrix) Rechtfertigung: Jeder Ast beschreibt ein mögliches Modell welches durch eine der Klauseln erfüllt werden muß. Inferenzmethoden 59 Varianten von Deduktionsverfahren Semantischer Baum für P ∧ Q ∨ ¬P ∧ Q∧R ∨ ¬Q ∧ R ∨ ¬R {{P, Q} 1 , {¬P, Q, R} 2 , {¬Q, R} 3 {¬R} 4 } ¬P P ¬Q Q ¬Q Q 1 R ¬R R ¬R R ¬R 3 4 2 4 3 4 Inferenzmethoden 60 Varianten von Deduktionsverfahren Konsolution Gegeben: Matrix {c1, . . . , cn} mit ci = {Li1, . . . , Limi } Menge von Konnektionen {k1, . . . , km} mit kj = {P ci j , ¬P ci 0 j } Start: n Knoten markiert mit Mengen von einelementigen Pfaden {{Li1}, . . . , {Limi }} Regeln: Konsolution: Wähle zwei Knoten markiert mit Pfadmengen P und Q. Generiere Nachfolger markiert mit dem Produkt PQ = {p ∪ q | p ∈ P, q ∈ Q, p ∪ q nicht komplementär} Vereinfachung: Ersetze Markierung {r1, . . . , rm} eines 0 } wobei ri0 erzeugten Knotens durch {r10 , . . . , rm ⊆ ri Ziel: Ein Knoten, der mit {} markiert ist. Rechtfertigung: Knoten codieren Teilpfade, die noch nicht als komplement är nachgeweisen sind. Konsolution verkettet zwei Pfade und streicht dabei die komplementären. Die Vereinfachung gestattet die Betrachtung von beliebigen Teilpfaden. Das Verfahren endet, wenn kein Pfad übrigbleibt, der nicht komplementär ist. Inferenzmethoden 61 Varianten von Deduktionsverfahren Konsolutions-Ableitung für P {{P }, {Q}} ∧ Q ∨ ¬P ∧ Q∧R ∨ {{¬P }, {Q}, {R}} ¬Q ∧ R ∨ ¬R {{¬Q}, {R}} {{P, Q}, {P, R}, {Q, ¬P }, {Q}, {Q, R}} {{P, Q, R}, {P, ¬Q, R}, {P, R}, {Q, ¬P, R}, {Q, R}} {} Verallgemeinerung von Resolution und Extensionsverfahren Inferenzmethoden 62 Varianten von Deduktionsverfahren {{¬R Inferenzmethoden Lektion 8 Resolution 1. Die Resolutionsregel 2. Resolutionsstrategien und -varianten – Lineare Resolution, Eingaberesolution, – Unitresolution, Set-of-Support – SLD-Resolution / Prolog – Konnektionsgraphenresolution – Hyperresolution .. Resolution Gegeben: Matrix {c1, . . . , cn} mit ci = {Li1, . . . , Limi } Menge von Konnektionen {k1, . . . , km} mit kj = {P ci j , ¬P ci 0 j } Start: n Knoten markiert mit den Klauseln ci = {Li1, . . . , Limi } Regel: Wähle Konnektion kj = {P ci j , ¬P ci 0 j } und 2 Knoten markiert mit K1 ∪ {P ci Leite ab K1 ∪ K2 . j } und K2 ∪ {¬P Ziel: Ein Knoten, der mit {} markiert ist. Rechtfertigung: K1 ∧ K2 ist genau dann allgemeingültig, wenn (K1 ∧ P ci j ) ∨ (K2 ∧ Inferenzmethoden ¬P c i0 j ) allgemeingültig ist. 63 Resolution ci 0 j }. Resolutions-Ableitung für P ∧ Q {P, Q} ∨ ¬P ∧ Q∧R ∨ {¬P, Q, R} ¬Q ∧ R ∨ ¬R {¬Q, R} {¬R {Q, R} {R} {} Linear, Input, SLD, P1 und einfache Hyper-Resolution Inferenzmethoden 64 Resolution Resolutionsstrategien und -varianten Linear Resolution : Resolvente ist Elternklausel im nächsten Schritt. Input Resolution : Eine Elternklausel ist eine Eingabeklausel i.a. nicht vollst änd Linear Input Resolution vollständig für Hornklause Unit-Resolution : Eine Elternklausel enthält nur ein Literal. vollständig für Hornklause P1 /N1 -Resolution : Eine Elternklausel ist positiv (negativ). vollständ Set-of-support : Eine Elternklausel hat einen Vorfahren in einer Stützmenge. vollständig genau dann, wenn Restklauselmenge erfüllb SLD Resolution : Linear resolution with Selection function restricted to Definite clauses sehr effizient, da lineare Verkettu LUSH Resolution : Linear resolution with Unrestricted Selection function on Horn clau Konnektionsgraphen Resolution : Vermeide, daß über Konnektionen mehrfach aufwend resolviert wird (Markierung unbenutzter Konnektionen in Klauselgraphen) Hyperresolution : Wähle Klausel mit negiertem Atom und zu jedem negierten Atom eine vollst änd positive Klausel, die dieses enthält. Resolviere gleichzeitig mit allen Klauseln. Inferenzmethoden 65 Resolution Unit-Resolution {P, Q} {¬P, Q, R} {¬Q, R} {¬P, Q} {P } {¬R {¬Q} {¬P } {} Inferenzmethoden 66 Resolution Set-of-support Resolution {P, Q} {¬P, Q, R} {¬Q, R} {¬R} {Q, R} {R} {} • Stützmenge: Menge von Klauseln, die relevant ist für Beweis – Formel ohne diese Menge nicht beweisbar – Beweisziel sollte enthalten sein – im Beispiel: { {P, Q} } • Strategie: resolviere mit Nachkommen der Stützmenge – vollständig genau dann, wenn Restklauselmenge erfüllbar Inferenzmethoden 67 Resolution SLD-Resolution {P, Q} {¬P, Q, R} {¬Q, R} {¬R} {Q, R} {R} {} • Lineare Input Resolution + Wahl des Literals immer aus “neu” erzeugten Literalen + Wahl der Inputklausel aus “Definiten Klauseln” – Hornklauseln mit genau einem negativen Literal → Lineare Verkettung der Beweisschritte – sehr effizient • Grundlage von Prolog (negative Repräsentation) Inferenzmethoden 68 Resolution Konnektionsgraphen Resolution • • • ..1 ..2 • • • J K • • • L ` ¬L • • • ..1 ..2 ..1 • • • J K J • • • L ¬L K • Verhindere Mehrfachresolution über gleiche Konnektion • Markiere unbenutzte Konnektionen in Klauselgraphen Vererbe diese bei Resolutionschritt • Technisch sehr aufwendig Inferenzmethoden 69 Resolution .. 2 Hyper-Resolution Gegeben: Matrix {c1, . . . , cn} mit ci = {Li1, . . . , Limi } Start: n Knoten markiert mit Klauseln ci = {Li1, . . . , Limi } Regel: Wähle Knoten markiert mit Klausel cj , die mindestens ein negatives Literal enthält (Nukleus). Sei cj = K ∪ {¬P1, . . . , ¬Pk }, wobei K positive Teilklausel. Wähle positive Klauseln K1 ∪ {P1}, . . . Kk ∪ {Pk } (Elektronen) Bilde als Resolvente die (positive) Klausel K ∪ K1 . . . Kk . Ziel: Ein Knoten, der mit {} markiert ist. Rechtfertigung: Die Ableitungsregel entspricht mehreren P1 -Resolutionsschritten, die in einem Schritt ausgeführt werden. Es gibt auch eine negative Variante Inferenzmethoden 70 Resolution Hyper-Resolutions-Ableitung für P ∧ Q ∨ {P, Q} ¬P ∧ Q ∧ ¬R ∨ {¬P, Q, ¬R} ¬Q ∧ ¬R ∨ R {¬Q, ¬R} {Q} {} Inferenzmethoden 71 Resolution {R} Inferenzmethoden Lektion 9 Reduktionstechniken 1. Klauselreduktionen und Literalreduktionen 2. Lineares Reduktionsverfahren für Hornklauseln 3. Nichtnormalformtechniken Reduktionen Kriterien für einen sinnvollen Einsatz • Problem wird in ein echt “kleineres” Problem überführt; • Gültigkeitserhaltend – Gültigkeit des reduzierten Problems impliziert die des ursprünglichen Problems – Umkehrung erwünscht aber nicht notwendig • Anwendbarkeit kann “schnell” getestet werden • Ausführung kann “schnell” erfolgen Statisch oder dynamisch (im Beweisprozeß) verwendbar Inferenzmethoden 72 Optimierungstechniken Reduktionen I MULT : eliminiere mehrfaches Vorkommen eines Literals in einer Klausel. PURE : eliminiere Klauseln mit Literal, das in keiner Konnektion vorkommt. TAUT : eliminiere tautologische Klauseln (P und ¬P kommt vor). P ¬P K .. L 7→ M M SUBS : eliminiere Klauseln, die von anderen “subsumiert” werden. P .. Q K .. L P .. Q Inferenzmethoden M 7→ 73 P .. Q M Optimierungstechniken Reduktionen II UNIT : eliminiere Literale aus Klauseln, die ein komplementäres Literal in einer Einerklausel haben. P K .. L ¬P M 7→ K .. L ¬P M ISOL : ersetze die Elternklauseln einer isolierten Konnektion durch die Resolvente P K .. L ¬P K0 .. L0 M 7→ K .. L K0 .. L0 M ( ¬P und P kommen in M nicht vor) Inferenzmethoden 74 Optimierungstechniken Lineares Verfahren für Hornklauseln Jede gültige Matrix hat mindestens eine rein negative Klausel ⇓ Jede gültige Horn-Matrix hat mindestens eine negative Einerklausel ⇓ 1. Existiert keine negative Einerklausel, so ist die Matrix ungültig. 2. Wähle eine rein negative Klausel (Einerklausel) {¬L}. 3. Mit UNIT eliminiere jedes Vorkommen von L. Wenn dadurch eine leere Klausel entsteht, ist die Matrix gültig. 4. Mit SUBS eliminiere alle anderen Klauseln die ¬L enthalten. 5. Mit PURE eliminiere die Einerklausel. 6. Wenn noch Klauseln übrig sind, gehe zurück nach 1. Inferenzmethoden 75 Optimierungstechniken Reduktionen III FACTOR : Gleiche Literale in verschiedenen Klauseln können ausfaktorisiert werden P Q R ¬P Q R P ¬Q R ¬P ¬Q R ¬P Q ¬R P Q ¬R P ¬Q ¬R ¬P ¬Q ¬R ` M(2) M(2) R Erzeugt Nicht-Normalform-Matrizen MONOT : Eine Klauselmenge kann entfernt werden, wenn in der Restmatrix noch eine Untermenge von ihr enthalten bleibt. M1 M1 ,M2 P Q M ` M1 P M Q Besonders interessant für Nicht-Normalform-Beweise Inferenzmethoden 76 Optimierungstechniken ¬R Reduktionen MULT : eliminiere mehrfaches Vorkommen eines Literals in einer Klausel. PURE : eliminiere Klauseln mit Literal, das in keiner Konnektion vorkommt. TAUT : eliminiere tautologische Klauseln. SUBS : eliminiere Klauseln, die von anderen subsumiert werden. UNIT : eliminiere Literale aus Klauseln, die ein komplementäres Literal in einer Einerklausel haben. ISOL : ersetze die Elternklauseln einer isolierten Konnektion durch die Resolvente. FACTOR : faktorisiere gleiche Literale in verschiedenen Klauseln aus. MONOT : entferne eine Klauselmenge, wenn in der Restmatrix noch eine Untermenge von ihr enthalten bleibt. CIRC : eliminiere tautologische Zyklen (subtil). (POLYN : teste, ob andere bekannte polynomiale Deduktions-Verfahren anwendbar sind) Inferenzmethoden 77 Optimierungstechniken Inferenzmethoden Lektion 10 Alternative Deduktionstechniken 1. Matrix-Reduktion von Prawitz 2. Davis-Putnam Verfahren 3. Lemmata 4. Primimplikanten 5. Gegenbeispiele Prawitz - Matrixreduktionsverfahren M K1 .. L1 .. Km Ln P ¬P K1 .. M M Km 7→ L1 .. ¬P Ln P Regel: Wähle Klausel mit einem Literal P und eine zweite mit ¬P . Untersuche in separaten Teilmatrizen: – Pfade, die dieses Auftreten von P aber nicht von ¬P enthalten – Pfade, die dieses Auftreten von ¬P aber nicht von P enthalten Ziel: Leere Klausel in Matrix Rechtfertigung: Die Ursprungsmatrix ist komplementär, wenn alle obengenannten Pfade komplementär sind. Inferenzmethoden 78 Alternative Techniken Davis–Putnam–Verfahren Spaltung: Wähle Literal P , das auch in negierter Form auftritt. Ersetze die Menge der Klauseln durch die folgenden beiden reduzierten Klauselmengen: – Klauseln, die P nicht enthalten, reduziert um ¬P – Klauseln, die ¬P nicht enthalten, reduziert um P Reduktion: Entferne tautologische Klauseln (TAUT), Klauseln mit nichtkonnektierten Literalen (PURE), subsumierte Klauseln (SUBS) und Literale, die Komplemente in Einerklauseln haben (UNIT) Ziel: Leere Klausel in Matrix Schnellstes Verfahren für Aussagenlogik – nicht erweiterbar Inferenzmethoden 79 Alternative Techniken Varianten von Deduktionsverfahren • Extensionsverfahren: Folge Konnektionen und halte als aktuellen Pfad, was noch nicht als komplentär erkannt wurde. Halte unbetrachtete Literale der beteiligten Klauseln auf dem Stack. • Tableaux: andere Form, alle Pfade aufzuschreiben und zu stoppen, wenn sie komplement är sind. Historisch entstanden als Alternative zu Gentzen Kalkülen (viele Regeln!). • Modellelimination: Elimination von Modellen, welche die Matrix falsifizieren k önnten. Verfahren identisch mit Extensionsverfahren – Unterschiede in semantischer Rechtfertigung • Maslov-Verfahren (Inverse Methode): Verarbeite Klauseln und leite dabei – beginnend mit den Konnektionen – Teilpfade ab, die alle offenen Pfade garantiert komplement är machen. • Semantische Bäume: Beginne alle Modelle aufzuschreiben und stoppe, wenn ein Modell durch eine Klausel erfüllt (widerlegt) wird. Duale Form der Tableaux=Beweise. • Resolution: leite aus zwei Klauseln mit komplementären Literalen eine Resolvente ab, die gültig ist, genau dann wenn die Teilmatrix der Elternklauseln gültig ist. • Konsolution: Notiere alle Pfadmengen, die durch die Vorgängerklauseln gehen und noch nicht als komplementär nachgewiesen wurden. Verallgemeinerung von Resolution und Konnektionsmethode. • Prawitz-Matrixreduktion Zerlegung in unabhängige Teilmatrizen. • Davis Putnam: Iterative Anwendung von Reduktionstechniken und Spaltungsregel. • Wahrheitstafeln Inferenzmethoden 80 Alternative Techniken Lemmata Standardtechnik der Mathematik • (P ∨ Q ∨ ¬P ∧ ¬Q) ∧ R enthält Aussage P ∨ ∨ Q ∨ ¬P (S ∧ ∨ T ∨ ¬S ∧ ¬T ) ∧ ¬R ¬Q in 2 Varianten • Lemmata zur Strukturierung und Verkürzung von Beweisen – Separat beweisen und anwenden – Ausfaktorisieren: (P ∨ Q ∨ ¬P ∧ ¬Q) ∧ R ∨ ¬R ⇒ bis zu exponentieller Verkürzung der Beweislänge • Problem: automatisches Erkennen relevanter Lemmata Inferenzmethoden 81 Alternative Techniken Primimplikanten Minimale Voraussetzungen für Gültigkeit von F • C Implikant von F : C ⇒ F gültig • C Primimplikant von F : – C Implikant von F und kein anderer Implikant von F ist Implikant von C • Resolventen sind Implikanten ihrer Elternklauseln • Offene Teilpfade des Extensionsverfahrens sind Implikanten der Matrix ⇒ Extensionsverfahrens geeignet zur Primimplikantenberechnung ⇒ ungültige Formel kann zu gültiger “erweitert” werden. Inferenzmethoden 82 Alternative Techniken Gegenbeispiele ¬P. ¬Q. P Q Q R % % R ↑ • Scheiternder Extensionsbeweis liefert Gegenbeispiel für Gültigkeit der Matrix – Interpretiere P , Q und R mit ⊥ • Simple Grundtechnik, Details bei Prädikatenlogik subtiler Inferenzmethoden 83 Alternative Techniken Inferenzmethoden Lektion 11 Unifikation 1. Unifikatoren und prädikatenlogische Gültigkeit 2. Unifikationsalgorithmus von Robinson – Differenzenbehandlung – Occurs-Check – Effizienz 3. Martelli-Montanari Unifikation Unifikatoren Eine prädikatenlogische Formel ist gültig, wenn .... es eine Substitution σ gibt, deren Anwendung die konnektierten Termf üße identisch macht. • Unifikator einer Menge von Termen S = {t1, . . . , tn} – Substitution σ mit σ(t1) = . . . σ(tn) • allgemeinster Unifikator (mgu) von S – Unifikator σ mit: für jeden Unifikator τ von S gilt τ = στ . Wie Unifikatoren effizient bestimmen? Inferenzmethoden 84 Unifikation Berechnung von Unifikatoren Schrittweise Differenzen der Terme auflösen • Differenz DIFF(s, t) der Terme s und t: Menge ungeordneter Termpaare mit – DIFF(s, s) = ∅ – DIFF(f (s1, . . . , sn), f (t1, . . . , tn)) = DIFF(s1, t1) ∪ . . . ∪ DIFF(sn, tn) – DIFF(s, t) = {{s, t}} in allen anderen Fällen DIFF(s1 , . . . , sn, t1, . . . , tn) = DIFF(s1 , t1) ∪ . . . ∪ DIFF(sn, tn) • DIFF(s, t) verhandlungsfähig: – Elemente sind Paare {x, t0} mit x ∈ V , t0 enthält x nicht (7→ ‘occurs-check’) • Reduktion einer verhandlungsfähigen Differenz DIFF(s, t) – Substitution {x\t0} mit {x, t0} ∈ DIFF(s, t) ⇒ verhandlungsfähige Differenzen reduzieren Inferenzmethoden 85 Unifikation Unifikationsalgorithmus von Herbrand–Robinson Eingabe Terme s und t Initialisierung σ ← {} Reduktion Solange DIFF(sσ, tσ) verhandlungsfähig, wähle Reduktion ρ von DIFF(sσ, tσ) Ergebnis Falls dann sonst σ ← σρ DIFF(sσ, tσ) = ∅ σ allgemeinster Unifikator von {s, t} {s, t} ist nicht unifizierbar. • Exponentiell im schlimmsten Fall, konstant im Mittel – occurs-check sehr zeitaufwendig • Fortsetzung auf Systeme von Termpaaren = ˆ Unifikation von Termtupeln. Inferenzmethoden 86 Unifikation P (x, f gy, f x) und ¬P (h(y, z), f z, f h(u, v)) DIFF(sσ, tσ) 0 {{x, h(y, z)}, {z, gy}, {x, h(u, v)}} {} 1 {{x, h(y, gy)}, {x, h(u, v)}} {z\gy} 2 {{u, y}, {v, gy}} {z\gy , x\h(u, v)} 3 {{v, gu}} 4 {} DIFF(sσ, tσ) {z\gu , x\h(u, v) , y\u} {z\gu , x\h(u, gu) , y\u , v\gu} P (x, f c) und ¬P (f d, x)) σ 0 {{x, f d}, {x, f c}} {} 1 {{d, c}} {x\f d} 2 nicht verhandlungsfähig DIFF(sσ, tσ) P (x) und ¬P (f x)) σ 0 {{x, f x}} {} 1 nicht verhandlungsfähig (occurs-check!) Inferenzmethoden σ 87 Unifikation Unifikationsalgorithmus von Martelli-Montanari . Gegeben: Zu lösende Gleichung s=t Regeln: Termdekomposition . . . {f (s1, . . . , sn)=f (t1, . . . , tn)}∪E ; {s1=t1, . . . , sn=tn}∪E . Entfernung trivialer Gleichungen . {x=x} ∪ E ; E Umstellung . . {t=x} ∪ E ; {x=t} ∪ E , wenn t 6∈ V Variablenelimination . . {x=t} ∪ E ; {x=t} ∪ E{x\t}, wenn x 6∈ t und x ∈ E . . Ziel: (idempotente) Gleichungsmenge {x1=t1, . . . , xk =tk } (xi 6∈ ti ) Datenstruktur “Multigleichungen”: . . . . – {u, v, w}=hxy statt u=hxy, v =hxy, w =hxy ⇒ Komplexität fast linear Inferenzmethoden 88 Unifikation Martelli-Montanari Unifikation P (x, f gy, f x) und ¬P (h(y, z), f z, f h(u, v)) . . . {x=h(y, z), f gy =f z, f x=f h(u, v)} . . . Termdekomposition {x=h(y, z), gy =z, x=h(u, v)} . . . Variablenelimination {x=h(y, z), gy =z, h(y, z)=h(u, v)} . . . . Termdekomposition {x=h(y, z), gy =z, y =u, z =v} . . . . Umstellung {x=h(y, z), z =gy, y =u, z =v} . . . . Variablenelimination {x=h(y, gy), z =gy, y =u, gy =v} . . . Umstellung {x=h(y, gy), {z, v}=gy, y =u . . . Variablenelimination {x=h(u, gu), {z, v}=gu, y =u P (x, f c) und ¬P (f d, x)) . . {x=f d, x=f c} . . Variablenelimination {x=f d, f d=f c} . . Termdekomposition {x=f d, d=c} – keine Regel anwendbar P (x) und ¬P (f x)) . {x=f x} Zielsituation nicht erreicht Inferenzmethoden 89 Unifikation Inferenzmethoden Lektion 12 Extensionsverfahren für die Prädikatenlogik 1. Allgemeine Extension mit Unifikation 2. Klauselkopien 3. Allgemeine Rücksetzung 4. Das prädikatenlogische Extensionsverfahren CP 11 Prädikatenlogisches Extensionsverfahren Eine prädikatenlogische Formel ist gültig, wenn sie eine aufspannende indizierte Paarung aufweist und es eine Substitution σ gibt, deren Anwendung die durch die Paarung konnektierten Termfüße identisch macht. • Substitution σ parallel zur Matrix mitführen • (Implizite) Klauselkopien dynamisch erzeugen • Erweiterung des Extensionsschrittes “`” – Unifikation konnektierter Literale integrieren – Komplexere Alternativen • Bereinigungsschritt “∼” i.w. unverändert • Separationsschritt ersetzbar durch alternative Startklauseln • Erweiterung des Rücksetzungsschrittes – alternative konnektierte Klauseln – alternative Unifikatoren und dazu passende konnektierte Literale – alternative Startklauseln – zusätzliche Instanzen der Matrix Liften des aussagenlogischen Verfahrens Inferenzmethoden 90 prädikatenlogisches Extensionsverfahren Extensionsschritt “`”: prädikatenlogische Erweiterung ¬Hx ¬Sx ¬Ac Hc Sx Ax ↑ {} ` ↑ markiert aktuelle Klausel P markiert Literale des aktuellen Pfades Aktuelle Substitution σ wird mitgeführt. ¬Hx. ¬Sx ¬Ac Hc Sx Ax % ↑ {x\c} . markiert abgeschlossene (komplement äre) Teilpfade % markiert Startliterale der noch offenen Teilpfade 1. Wähle ein mit % markiertes Literal P der aktuellen Klausel. 2. Ersetze % durch Box P ; wähle von P ausgehende Konnektion – falls es weitere Konnektionen gibt, vermerke diese in Alternativenmenge 3. Unifiziere die konnektierten (mit σ modifizierten) Termfüße – ggf. erweitere σ um zusätzlich generiertem Unifikator ρ – Abbruch (des Extensionsschrittes), falls Termfüße nicht unifizierbar 4. Markiere alle Literale der konnektierten Klausel, die unter σ komplementär zu einem Literal des aktuellen Pfades sind, mit . 5. Markiere andere Literale der konnektierten Klausel mit % 6. Verschiebe ↑ auf die konnektierte Klausel Inferenzmethoden 91 prädikatenlogisches Extensionsverfahren Prädikatenlogischer Extensionsbeweis ¬Hx ¬Sx Sx Ax Hc ↑ ¬Ac ¬Hx. ¬Sx Hc Sx % ↑ ¬Ac Ax ¬Hx. ¬Sx. Hc Sx Ax % ↑ Sx Ax ¬Hx ¬Sx Sx Ax Hc Inferenzmethoden ` {x\c} ` {x\c} ` {x\c} ` ↑ ¬Hx. ¬Sx. Hc ¬Ac {} ¬Ac. ↑ ¬Ac 92 {x\c} prädikatenlogisches Extensionsverfahren Verallgemeinerung des Extensionsschrittes Hc ¬Hy. ¬Sx Sx ¬Hx % ↑ {y \c} ` Hc ¬Hy. ¬Sx. Sx ¬Hx? ↑ {y \c} • ¬Hx konnektiert mit Hc, aber nicht komplementär unter σ • ¬Hx unifizierbar mit Hc durch Erweiterung von σ auf {y \c, x\c} ⇒ Schritt 4 verallgemeinern auf unifizierbare konnektierte Literale “Markiere alle Literale der konnektierten Klausel, die unter einer Erweiterung von σ komplementär zu einem Literal des aktuellen Pfades sind, mit .” Inferenzmethoden 93 prädikatenlogisches Extensionsverfahren Verallgemeinerung des Extensionsschrittes ¬Hy.¬Sx. ¬Ax Hc Sx Ax ¬Hx % ¬Sd {y \c} ¬Hy.¬Sx.¬Ax. Hc Sx Ax ¬Hx. {y \c, x\c} ¬Sd ` ↑ % ↑ ` ¬Hy.¬Sx.¬Ax. Hc Sx Ax ¬Hx % ¬Sd. {y \c, x\d} ↑ • ¬Hx unifizierbar mit Hc durch Erweiterung von σ auf {y \c, x\c} • ¬Sd unifizierbar mit Sx durch Erweiterung von σ auf {y \c, x\d} • mehrere alternative Extensionen mit verschiedenen Unifikatoren ⇒ Schritte 3 und 4 verallgemeinern – Bilde Unifikatoren für alle Teilmengen konnektierter Literale – Verfolge eine Alternative und speichere die anderen – Verallgemeinere Rücksetzung entsprechend Inferenzmethoden 94 prädikatenlogisches Extensionsverfahren Allgemeiner prädikatenlogischer Extensionsschritt ` 1. Wähle ein mit % markiertes Literal P der aktuellen Klausel. 2. Ersetze % durch Box P ; wähle von P ausgehende Konnektion – falls es weitere Konnektionen gibt, vermerke diese in Alternativenmenge 3. Wähle Teilmenge der Literale der konnektierten Klausel, die mit dem aktuellen Pfad konnektiert sind, und eine Substitution ρ, welche die mit σ modifizierten Konnektionen komplementär macht – ggf. erweitere σ mit zusätzlich generiertem Unifikator – speichere weitere Teilmengen und Unifikatoren in einer Alternativenmenge – Abbruch (des Extensionsschrittes), falls es keine solche Teilmenge gibt. 4. Markiere alle gewählten Literale der konnektierten Klausel mit . 5. Markiere andere Literale der konnektierten Klausel mit % 6. Verschiebe ↑ auf die konnektierte Klausel Inferenzmethoden 95 prädikatenlogisches Extensionsverfahren Klauselkopie ¬P c ¬P f x P ff y Px {} ` ¬P c ¬P%f x P ff y P x. ↑ {x\c} ↑ • Extensionsschritt undurchführbar ({x\c} widerspricht {x\f y}) • Originalformel ∀x (P x ⇒ P f x) ∧ P c ⇒ ∃y P f f y gültig – Argument ∀x (P x ⇒ P f x) doppelt verwenden ⇒ Klauselkopie erforderlich für Extensionsbeweis • Offene Fragen: – Rücksetzung 7→ automatische Erzeugung von Kopien? – Tiefensuche: Kopien frühzeitig dynamisch erzeugen – Breitensuche: Kopien nach erfolgloser Beweisführung Prädikatenlogik unentscheidbar ⇒ unendliche Suche möglich Inferenzmethoden 96 prädikatenlogisches Extensionsverfahren Prädikatenlogischer Extensionsbeweis mit Klauselkopie ¬P c ¬P f x1 ¬P f x2 P ff y P x1 P x2 {} ` {x1 \c} ` {x1 \c, x2 \f c} ` ↑ ¬P c ¬P%f x1 ¬P f x2 P ff y P x1 . P x2 ↑ ¬P c ¬P f x1 ¬P%f x2 P ff y P x1 . P x2 . ↑ ¬P c ¬P f x1 ¬P f x2 P ff y. P x1 . P x2 . {x1 \c, x2 \f c, y \c} ↑ Klauselkopien und Konnektionen werden nur implizit verwaltet Inferenzmethoden 97 prädikatenlogisches Extensionsverfahren Allgemeine prädikatenlogische Rücksetzung Keine Extension mehr möglich • Alternativenmengen nicht leer? 1. Gehe zurück auf Literal des aktuellen Pfades, von dem aus (a) eine alternative Unifikation möglich war oder (b) eine alternative Konnektion beginnt 2. Stelle die damalige Konfiguration (und Substitution) wieder her 3. Streiche die neu betrachtete Unifikation (bzw. Konnektion) aus der entsprechenden Alternativenmenge • Alternativenmengen leer? (a) Wähle alternative Startklausel (falls vorhanden) und beginne neu (b) Erzeuge Kopie aller Klauseln und starte Verfahren erneut Inferenzmethoden 98 prädikatenlogisches Extensionsverfahren Prädikatenlogisches Extensionsverfahren CP 11 • 5 mögliche Alternativen sind zu verwalten 7→ ALTs – Startklausel (statt Separation) 7→ %-List – Literal von dem die Konnektion ausgeht – Klausel, die mit dem Literal konnektiert ist – Teilmenge der konnektierten Literale (in der Klausel) und ihr Unifikator – Offene Pfade, die ggf. eine Kopie der Matrix benötigen • Erlaube Extensionen von allen Literalen des aktuellen Pfades • Ersetze Rücksetzung und Separation durch Verwaltung von Alternativenmengen (ALTc , σ -List bzw. ALTs ) • Bearbeite Klauselkopien erst, wenn alle anderen Alternativen abgearbeitet sind (paths i ) • Speichere Matrix im Original für mögliche Kopien. • Vollständiges Verfahren – nicht auf Effizienz getrimmt Inferenzmethoden 99 prädikatenlogisches Extensionsverfahren 7→ ALTc 7→ σ -List 7→ paths i Das prädikatenlogische Extensionsverfahren CP 11 Falls F ohne Existenzquantor, wende Davis-Putnam an Aussagenlo %-List ← [] ; ALTs ← [] ; ALTc ← [] ; σ -List ← [] ; paths 1 ← [] ; paths 2 ← [] i ← 1 ; M ← F ; σ ← {} ; p ← {} Wähle Klausel c ∈ M ; streiche c aus M ; erweitere ALTs um alternative Klauseln aus M Solange kein Beweis gefunden Wähle Literal L ∈ c ; streiche L aus c Falls c 6= {} erweitere %-List um die Markierung (c, p, M ) Erweitere p um L ; Erweitere paths i+1 um die Markierung (L, M, σ, p, %-List) Falls es d ∈ M und L0 ∈ d gibt, das komplementär zu einem K ∈ p ist Dann Erweitere ALTc um Markierungen (L, d0 , M, σ, p, %-List) für alternative Klauseln d0 streiche d aus M Wähle e ⊆ d und mgu τ , so daß alle P ∈ e unter στ komplementär zu einem K ∈ p sind Erweitere σ -List um Markierungen (d, e0 , M, σ, τ 0 , p, %-List) für alternative e0 und τ 0 c ← d−e ; σ ← στ Falls c = {} Dann Falls %-List = [] so ist F gültig und das Verfahren bricht ab Wähle letzte Markierung (c, p, M ) aus %-List; streiche diese Initialisier Startkla → Pfaderweiter offene Pfade abl → Extensionskla → Extensionsme → Exten Er Bereinig Sonst Falls σ -List 6= [] Alternative Extensionsmenge/Unifik Dann Wähle und streiche (c, e, M, σ, τ, p, %-List) aus σ -List; Setze fort mit Ausf ührung der Extension Sonst Falls ALTc 6= [] Alternative Extensionskla Dann Wähle und streiche letztes (L, d, M, σ, p, %-List) aus ALTc Setze Extensionsschritt fort mit der Wahl einer neuen Extensionsmenge Alternative Startkla Sonst Falls ALTs 6= [] Dann Wähle und streiche letzte Klausel c aus ALTs ; M ← F −{c} ; σ ← {} ; p ← {} Wähle und streiche L ∈ c ; Erweitere p und ggf. %-List Sonst Falls paths i =[], so erhöhe i Alternativer Kopiens Wähle und streiche eine offene Pfadsituation (L, M, σ, p, %-List) aus paths i Erweitere M um Kopie von F ; Setze Extensionsschritt fort mit Wahl der Extensionsklausel Inferenzmethoden 100 prädikatenlogisches Extensionsverfahren Inferenzmethoden Lektion 13 Optimierungen und alternative Deduktionsverfahren 1. Erweiterung aussagenlogischer Reduktionstechniken 2. Erweiterung konnektionsorientierter Deduktionsverfahren – Prädikatenlogische Resolution und Prolog 3. CLIN Liften aussagenlogischer Reduktionstechniken • MULT, PURE, TAUT, SUBS, UNIT, ISOL übertragbar – Termfüße der entsprechenden Literale müssen unter σ gleich sein. • Verallgemeinerung möglich – Termfüße der entsprechenden Literale müssen unifizierbar sein ⇒ Substitution kann sich durch Reduktion ändern P cx P yc M {} `MULT M P cc {x\c, y \c} – Aus Gültigkeit der reduzierten Matrix folgt die der Originalmatrix – Umkehrung gilt nicht: (M = {{¬P cd}, {¬P dc}}) • Statische Anwendung (Preprocessing) wenig sinnvoll – Reduktion erzeugt ggf. weitere Alternative im Beweis (Rücksetzung!) ⇒ dynamische Anwendung + Integration in Gesamtprozedur • FACTOR, MONOT, CIRC erheblich aufwendiger Inferenzmethoden 101 Optimierungen und Alternativen Liften konnektionsorientierter Deduktionsverfahren • Analog zu der des Extensionsverfahrens – Tableaux, Maslov, Semantische Bäume, Konsolution, Resolution • Prädikatenlogische Resolution – Klauseln müssen paarweise verschiedene Variablen haben ⇒ Interne Umbenennung der Variablen von Elternklauseln nötig ⇒ Lokale Substitution/Unifikation möglich – zusätzliche Faktorisierungsregel erforderlich • Prolog: Prädikatenlogische Hornklausel-Resolution – Große Effizienzsteigerung durch SLD-Resolution – Programmiersprache – nicht Beweistechnik • Davis-Putnam Verfahren nicht direkt übertragbar Inferenzmethoden 102 Optimierungen und Alternativen CLIN: Clause-Linking • Idee: Unifikation und Klauselkopien vorwegnehmen – Reduktion auf Aussagenlogik im restlichen Beweis ⇒ Schnelle aussagenlogische Verfahren und Reduktionen einsetzbar (modifiziertes Davis-Putnam Verfahren mit Faktorisierung) – Bis zu exponentieller Geschwindigkeitsverbesserung – Aufwendig im Detail (viele Klauseln werden generiert) • Vorgehensweise: 1. Ergänze ausgewählte Klauselkopien zu bisheriger Klauselmenge – Alle (nichtredundanten) Hyper-Link Instanzen aller Klauseln 2. Überprüfe instantiierte Kopie der Klauselmenge auf Tautologie – Ground Set: ersetze jede Variable durch dieselbe neue Konstante – Test: aussagenlogisches Beweisverfahren 3. Im Erfolgsfall ist die Ausgangsformel gültig; andernfalls fahre fort bei Schritt 1. Inferenzmethoden 103 Optimierungen und Alternativen CLIN – Grundbegriffe • Hyper-Link einer Klausel c = {L1, . . . , Ln} ∈ M: – Menge von unifizierbaren Konnektionen {(L1, M1), . . . , (Ln, Mn)}, (Mi ∈ M beliebig, gemeinsame Variablen umbenannt) • Hyper-Link Instanz von c = {L1, . . . , Ln}: – Klausel {L1σ, . . . , Lnσ} wobei σ allgemeinster Unifikator des Hyperlinks {(L1, M1), . . . , (Ln, Mn)} • Ground-Set einer Matrix M: – Matrix M σ , wobei σ(x) = c für alle x ∈ M (c neue Konstante) Inferenzmethoden 104 Optimierungen und Alternativen Hyper-Links und Instanzen 1,2 1,3 ¬P f x P f 4a c1 : 3,4 ¬P a Px 2,4 Hyper-Link (Kandidat) σ Instanz {(P f 4a, ¬P f x)} {x\f 3a} {P f 4a} — — {x\f z, y\f 2z} {¬P f 2z, P f z}} c2(1): {(¬P f x, P f 4a), (P x, ¬P f y)} {x\f 3a, y\f 2a} {¬P f 4a, P f 3a}} c2(2): {(¬P f x, P f 4a), (P x, ¬P a)} c2(3): {(¬P f x, P y), (P x, ¬P f z)} c2(4): {(¬P f x, P y), (P x, ¬P a)} c3 : {(¬P a, P x)} Inferenzmethoden {x\a, y\f a} {x\a} 105 {¬P f a, P a}} {¬P a} Optimierungen und Alternativen CLIN – Ableitung • Startzustand: 1. 4 ¬P f x ¬P a Pf a 2. Px ¬P f c ¬P a 4 Pf a Nicht tautologisch Pc • Erste Iteration: ¬P f 4a ¬P f 2 z ¬P f x ¬P f a ¬P a 1. P f 4a P f 3a P fz Px Pa ¬P f 4a ¬P f 2 c ¬P f c ¬P f a ¬P a 2. P f 4a P f 3a P fc Pc Pa Nicht tautologisch • Zweite Iteration: ¬P f 4a ¬P f 3a ¬P f 3 y ¬P f 2z ¬P f x ¬P f 2 a ¬P f a ¬P a 1. P f 4a P f 3a P f 2a P f 2y P fz Px P fa Pa ¬P f 4a ¬P f 3a ¬P f 3c ¬P f 2c ¬P f c ¬P f 2 a ¬P f a ¬P a 2. P f 4a P f 3a P f 2a P f 2c Inferenzmethoden P fc 106 Pc P fa Pa Optimierungen und Alternativen Tautologisch Inferenzmethoden Lektion 14 Verdichtung des logischen Schließens I: Gentzen-Kalküle 1. Verdichtung als Entwicklungsprinzip 2. Der Kalkül des natürlichen Schließens 3. Sequenzenkalküle Verdichtung logischer Deduktion • Mathematisch-logisches Schließen – natürliche Sprache mit Platzhaltern – sehr redundant • Kalküle des natürlichen Schließens (NK, NJ, . . . ) – schematische Inferenzfiguren für logische Konnektive und Quantoren – Globale Verwaltung von Annahmen erforderlich • Sequenzenkalküle (LK, LJ, . . . ) – Lokale Sicht : Schließen über Urteile statt Aussagen – Synthetische Formulierung (später auch analytische Varianten) • Tableaux-Kalküle – Zusammenfassung der Sequenzenregeln in Klassen α, β , γ , δ – Analytische Formulierung : generiere P x und ¬P x in jedem Beweisast – Instantiierung von Quantoren erfordert Vorausschau außerhalb des Kalküls .. • Konnektionsmethode – Darstellungsverdichtung : kompaktere Beweisdarstellung – Unifikationsverdichtung : gezielte Instantiierung von Quantoren – Konnektionenorientierung : gezielte Auswahl beweisrelevanter Literale Inferenzmethoden 107 Gentzen-Kalküle Verdichtung als Entwicklungsprinzip Entferne Redundanzen aus deduktiven Verfahren • Wie kann man Beweisverfahren weiter verdichten? (7→ Reduktionen) • Welche weiteren Schlußfolgerungsarten lassen sich in den Verdichtungsprozeß integrieren? (7→ Gleichheit, Induktion, . . . ) • Wie kann man verdichtete Beweisverfahren übertragen? – als Beweismethode für weniger verdichtete Kalküle – als Beweisverfahren für andere Logiken • Wie kann man verdichtete Beweise zurückübersetzen? – in Sequenzenbeweise oder natürliche Deduktion – in natürliche Sprache Inferenzmethoden 108 Gentzen-Kalküle (7→ ILF) Natürliche Deduktion • Lesbare, kompaktifizierte Beweisdarstellung – Beweisbaum mit Formeln – Schematische Inferenzregeln als Übergang – Globale Verwaltung temporärer Annahmen • Schematische Inferenzfiguren für logische Symbole – Einführungsregel –I: unter welchen Voraussetzungen ist eine Formel gültig? – Eliminationsregel (–E): was folgt aus einer gegebenen Formel? – Nur ein Axiom A ∨ ¬A (Intuitionistisch kein Axiom erforderlich) • Synthetischer Aufbau – für Beweissuche schlecht geeignet Inferenzmethoden 109 Gentzen-Kalküle Regeln der natürlichen Deduktion (NK) ¬-I [A] ⊥ ¬A ⊥-E ⊥ A ¬-E ¬A A ⊥ A ∧B A ∨ -E A ∨ B [A] [B] C C C ⇒ -I [A] B A⇒B ⇒ -E A A⇒B B ∀-I∗ A{x\a} ∀x A ∀-E ∀x A A{x\t} ∃-E∗ ∃x A [A{x\a}] C C ∨ -I ∃-I A B A ∧B A ∧B B ∧ -E ∧ -I A A ∨B B A ∨B A{x\t} ∃x A ∗ : Eigenvariablenbedingung ( a Inferenzmethoden 110 ∈ V “unabhängig”) Gentzen-Kalküle ((A ⇒ B) ∧ (B ⇒ C)) ⇒ (A ⇒ C) : mathematischer Beweis 1. Wir nehmen an (A ⇒ B) ∧ (B ⇒ C) sei erfüllt 2. Wir nehmen weiter an, daß A gilt. 3. Aus der ersten Annahme folgt (A ⇒ B) 4. und mit der zweiten dann auch B. 5. Aus der ersten Annahme folgt auch, daß (B ⇒ C) gilt 6. und mit der vierten dann auch C. 7. Es ergibt sich, daß C unter der Annahme A gilt. Also folgt A ⇒ C 8. Insgesamt folgt A ⇒ C unter der Annahme (A ⇒ B) Damit gilt die Behauptung: ((A ⇒ B) Inferenzmethoden 111 ∧ ∧ (B ⇒ C). (B ⇒ C)) ⇒ (A ⇒ C) Gentzen-Kalküle NK-Beweis für ((A ⇒ B) ∧ (B ⇒ C)) ⇒ (A ⇒ C) (1) (A ⇒ B) ∧ (2) A (B ⇒ C) Annahme Annahme (3) (A ⇒ B) ∧ -E (5) (B ⇒ C) ∧ -E (7) (A ⇒ C) ⇒ -I mit (2) und (6) — (2) entfällt ⇒ -E mit (2) und (3) (4) B [A] (1) mit (1) ⇒ -E mit (4) und (5) (6) C (8) (A ⇒ B) mit (1) ∧ (B ⇒ C) ⇒ (A ⇒ C) [(A ⇒ B) ∧ (B ⇒ C)](1) (A ⇒ B) B ((A ⇒ B) Inferenzmethoden ∧ -E (3) ⇒ -E ∧ ⇒ -I mit (1) und (7) — (1) entf ällt (4) [(A ⇒ B) ∧ (B ⇒ C)](1) (B ⇒ C) (7) C ⇒ -I (8) (A ⇒ C) ⇒ -I (B ⇒ C)) ⇒ (A ⇒ C) 112 Gentzen-Kalküle ∧ -E (5) ⇒ -E (6) Sequenzenkalküle Inferenzmethoden 113 Gentzen-Kalküle • Modifikation von NK – Schließen über Urteile statt Aussagen – lokale Sicht, keine Verwaltung von Annahmen nötig – gut für interaktive Beweiser – analytische Formulierung möglich (nicht im Original) • Sequenz: A . . , An} ` B | 1, . {z | 1, . .{z. , Bm} Antezedent Sukzedent – Urteil: “Eine der Formeln Bi folgt aus den Annahmen A1 ,. . . ,An ” – Behandlung von Formelmengen (-listen) – Zielsequenz: ` C (Formel C gilt ohne Annahmen) • Regeln manipulieren Sequenzen statt Formeln – Einführungsregeln → Regeln für Sukzedent (–S) – Eliminationsregeln → Regeln für Antezedent (–A) A ∧ A B ∧ -E 7→ Inferenzmethoden Γ,A ` C Γ,A ∧ B ` C 114 ∧ –A Gentzen-Kalküle Sequenzenkalkül LK Axiom A ` A ¬-S Γ,A ` Φ Γ ` Φ,¬A ¬-A Γ ` Φ,A Γ,¬A ` Φ ∧ -S Γ`Φ,A Γ`Φ,B Γ ` Φ,A ∧ B ∧ -A Γ,A ` Φ Γ,A ∧ B ` Φ ∨ -S Γ ` Φ,A Γ ` Φ,A ∨ B ∨ -A Γ,A ` Φ Γ,B ` Φ Γ,A ∨ B ` Φ ⇒ -S Γ, A ` Φ,B Γ ` Φ,A ⇒ B ⇒ -A Γ ` Φ,A ∆,B ` Ψ Γ,∆,A ⇒ B ` Φ,Ψ ∀-S∗ Γ` Φ,A{x\a} Γ ` Φ,∀x A ∀-A Γ,A{x\t} ` Φ Γ,∀x A ` Φ ∃-S Γ ` Φ,A{x\t} Γ ` Φ,∃x A ∃-A∗ Γ,A{x\a} ` Φ Γ,∃x A ` Φ ∗ Γ ` Φ,B Γ ` Φ,A ∨ B : Eigenvariablenbedingung ( a Inferenzmethoden 115 ∈ V “unabhängig”) Gentzen-Kalküle Γ,B ` Φ Γ,A ∧ B ` Sequenzenkalkül: strukturelle Regeln Schnitt Γ ` Φ,A A,∆ ` Ψ Γ,∆ ` Φ,Ψ Ausdünnung-S Γ ` Φ Γ ` Φ,Ψ Ausdünnung-A Γ` Φ Γ,∆ ` Φ Tausch-S Γ ` Φ,A,B,Ψ Γ ` Φ,B,A,Ψ Tausch-A Γ,A,B,∆ ` Φ Γ,B,A,∆ ` Φ Kontraktion-S Γ ` Φ,B,B Γ ` Φ,B Kontraktion-A Γ,A,A ` Φ Γ,A ` Φ Inferenzmethoden 116 Gentzen-Kalküle Sequenzenbeweis für ((A ⇒ B) ∧ (B ⇒ C)) ⇒ (A ⇒ C) A`A B`B ⇒ -A C`C A, A ⇒ B ` B ⇒ -A A, A ⇒ B, B ⇒ C ` C ∧ -A A, A ⇒ B, (A ⇒ B) ∧ (B ⇒ C) ` C Tausch-A A, (A ⇒ B) ∧ (B ⇒ C), A ⇒ B ` C ∧ -A A, (A ⇒ B) ∧ (B ⇒ C), (A ⇒ B) ∧ (B ⇒ C) ` C Kontraktion-A A, (A ⇒ B) ∧ (B ⇒ C) ` C Tausch-A (A ⇒ B) ∧ (B ⇒ C), A ` C ⇒ -S (A ⇒ B) ∧ (B ⇒ C) ` A ⇒ C ⇒ -S ` ((A ⇒ B) ∧ (B ⇒ C)) ⇒ A ⇒ C Extreme Redundanz durch notwendige Umordnung der Zielformel Inferenzmethoden 117 Gentzen-Kalküle Inferenzmethoden Lektion 15 Verdichtung des logischen Schließens II: Tableaux-Kalkül und Nichtnormalformbeweise 1. Tableaux-Kalkül – Indirekte und direkte Tableaux-Beweise – Repräsentationsunabhängiger Kalkül – Bezug zu Matrizen 2. Extensionsverfahren auf Formelbäumen – Matrixcharakterisierung für Formelbäume – Anpassung der Grundkonzepte des Verfahrens – Allgemeiner Extensionsalgorithmus Tableaux-Kalküle • Analytische, kompakte Variante des Sequenzenkalküls – Regeln zerlegen die zu beweisenden Formel in Teilformeln – Formeln mit ähnlichem Beweisverhalten zusammengefaßt in Klassen α, β , γ und δ ⇒ zielorientiertes Vorgehen + weniger Redundanz • Begründung über indirekte Beweisführung – Statt “` F ” zeige “¬F ` ⊥” – Zeige, daß alle möglichen Konsequenzen von ¬F zum Widerspruch führen. – Intuitiv einsichtig, aber negative Repräsentation • Variante für direkte Beweisführung möglich – Leite Voraussetzungen für die Gültigkeit von F ab – Zeige, daß F in jedem möglichen Fall gilt • Formale Regeln unabhängig von Repräsentationsform – Betrachte (Teil-)Formel + Polarität ∈ {0,1} – Formelmanipulation entsprechend der Klassen α, β , γ und δ – Ziel: aus F 0 (Formel F mit Polarität 0) generiere P t0 und P t1 in jedem Beweisast Inferenzmethoden 117 Tableaux-Kalkül Indirekter Tableaux-Beweis: ¬∀xP x ∨ (P a ∧ P b) 1. Angenommen, ¬∀xP x ∨ (P a ∧ P b) ist falsch. 2. Dann muß sowohl ¬∀xP x falsch sein 3. also ∀xP x wahr sein 4. als auch P a ∧ P b falsch sein. Wenn 4. gilt, dann müssen die Fälle 5. oder 6. zutreffen. 5. P a ist falsch. 6. P b ist falsch. 7. P a ist nach 3. wahr. 8. P b ist nach 3. wahr. Widerspruch zwischen 5. und 7. Widerspruch zwischen 6. und 8. 1. ¬(¬∀xP x ∨ (P a ∧ P b)) 2. ¬¬∀xP x 3. ∀xP x 4. ¬(P a ∧ P b) 5. ¬P a 6. ¬P b 7. P a 8. P b Knoten der Äste konjunktiv verknüpft, Verzweigungen sind Alternativen Inferenzmethoden 118 Tableaux-Kalkül Direkter Tableaux-Beweis: ¬∀xP x ∨ (P a ∧ P b) 1. Um zu zeigen, daß ¬∀xP x ∨ (P a ∧ P b) gilt. 2. muß ¬∀xP x gelten. 3. oder P a ∧ P b gelten. Wenn 3. gelten soll, dann müssen die Fälle 4. und 5. zutreffen. 4. P a muß gelten. 5. P b muß gelten. 6. Wenn ¬P a gilt, wäre 2. wahr. 7. Wenn ¬P b gilt, wäre 2. wahr. 4. und 6. decken alle Alternativen ab 5. und 7. decken alle Alternativen ab 1. ¬∀xP x ∨ (P a ∧ P b) 2. ¬∀xP x 3. P a ∧ P b 4. P a 5. P b 6. ¬P a 7. ¬P b Knoten der Äste disjunktiv verknüpft, Verzweigungen sind Konjunktionen Inferenzmethoden 119 Tableaux-Kalkül Tableaux-Kalkül: Formelklassen und Ableitungsregeln Klasse Teilformeln Klasse Teilformeln α α1 α2 β β1 β2 (A ∧ B)1 A1 B1 A0 B0 A 0 B 0 (A ∧ B)0 A 1 B 1 0 A 1 B 0 1 A 0 B 1 (A ∨ B) 0 (A ⇒ B) (¬A)1 A0 (¬A)0 A1 γ γ(t) (∀xA) 1 (∃istsxA)0 A{x\t} β–Regel γ–Regel δ–Regel (A ⇒ B) δ 1 A{x\t}0 α–Regeln (A ∨ B) 1 (∀xA) A{x\a} α1 α2 β β1 β ¬(A ∧ B) ¬A ¬B (A ∧ B) A B (A ⇒ B) ¬A B (A ∨ B) ¬(¬A) A B A ¬A (¬A) γ γ(t)∗ ¬(∀xA) ¬A{x\t} (∃istsxA) δ(a) 0 α A{x\t} ¬(A ∨ B) ¬(A ⇒ B) δ (∀xA) ¬(∃istsxA) ¬A A A{x\a ¬A{x\a (∃istsxA)1 A{x\a}1 α und α α1 α2 β β1 | β 2 γ , t beliebiger Term γ(t) δ , a ‘neue’ Konstante δ(a) Inferenzmethoden 120 = ˆ ( ∧ -A, ∨ -S, ⇒ -S, ¬-A, ¬-S) = ˆ ( ∧ -S, ∨ -A, ⇒ -A) = ˆ (∀-A, ∃-S) = ˆ (∀-S, ∃-A) Tableaux-Kalkül ¬ δ(a)∗∗ Klassen in positiver Repräsentation 0 ¬ Tableauxbeweis für ((A ⇒ B) ∧ (B ⇒ C)) ⇒ (A ⇒ C) [((A ⇒ B) ∧ (B ⇒ C)) ⇒ (A ⇒ C)] 0 (A ⇒ C)0 C0 A1 ((A ⇒ B) ∧ (B ⇒ C))1 (A ⇒ B)1 (B ⇒ C)1 A0 B1 B0 C1 “Normalisierung” während der Beweisführung Inferenzmethoden 121 Tableaux-Kalkül Tableaux ↔ Matrix • Formeln in nichtnormalisierter Form – Verzicht auf Negationsnormalform, ⇒ -Umwandlung, Skolemisierung und DNF • Äste im Tableaux-Beweis = ˆ Pfade durch die Matrix α-Regel β-Regel γ-Regel δ-Regel Abgeschlossener Ast = ˆ Extension (Pfadverlängerung) = ˆ offene Literale (Verzweigung) = ˆ Instantiierung einer Variablen = ˆ Freilegung einer Variablen (als Konstante) = ˆ Konnektion im Pfad • Extensionsverfahren = ˆ verdichteter Tableauxbeweiser – Konnektionenorientierung: gezielte Auswahl beweisrelevanter Teilformeln – Unifikation: gezielte Instantiierung von Quantoren (γ -Regeln) – Kompaktheit: operiere nur auf atomaren Teilformeln (Reihenfolge der Regeln eindeutig bestimmt durch Formelbaum + Konnektionen + Substitution) ⇒ Extensionsverfahren ohne Skolemisierung/Normalisierung – effizienter(?) und flexibler (erweiterbar auf andere Logiken und Beweisprobleme) – nötig: Pfadbegriff und Verfahren entsprechend obiger Analogie modifizieren Inferenzmethoden 122 Tableaux-Kalkül Matrixcharakterisierung ohne Normalisierung • Alternative zur Skolemisierung – partielle Ordnung auf quantifizierten Variablen ( = ˆ Anordnung im Formelbaum) – Nur γ -Variablen können substituiert werden – δ -Variablen werden (neue, lokale) Konstanten • Indizierte Matrix = ˆ indizierte γ -Variablen – Multiplizität µ: Anzahl der Nachfolger eines γ -Knotens • Pfade durch Formel(baum) F – – – – – Pfade Pfade Pfade Pfade Pfade durch atomare Formel L: { {L} } durch α-Knoten: { p1 ∪p2 | pi Pfad ab αi } durch β -Knoten: { p | p Pfad ab β1 oder p Pfad ab β2 } durch γ -Knoten: { p | p Pfad ab γ(xj ), j ≤ µ} durch δ -Knoten: { p | p Pfad ab δ(a), a neue Konstante} Eine Formel F ist gültig, wenn es eine Multiplizität µ, eine Substitution σ und eine Menge von unter σ komplementären Konnektionen gibt, so daß jeder Pfad durch F eine solche Konnektion enthält. Inferenzmethoden 123 Tableaux-Kalkül Formelbäume und Matrizen F ≡ (S T 0 ∧ (¬(T ⇒R) ⇒P )) ⇒ (¬((P ⇒Q) ∧ (T ⇒R)) ⇒ (S R1 K P 1 Q0 K T K ⇒0 ⇒1 I ] ¬0 P I S1 k 1 3 ∧ 1 P ⇒0 S0 ¬1 k ¬1 ¬0 I I 1 ∧y ¬¬P )) R0 0 ⇒1 ∧ 3 ∧ 0 ⇒0 : ⇒0 Pfade durch Baum = ˆ Pfade durch Nichtnormalform-Matrix ¬S Inferenzmethoden T ¬R ¬P ¬P Q ¬T R 124 S P Tableaux-Kalkül 0 Anpassung der Konzepte des Extensionsverfahrens • Matrix F 7→ Blätter des Formelbaums F – A: Menge der atomaren Formeln (Literale) in F • Aktueller Pfad p 7→ Menge von Zweigen von α-Knoten – dargestellt durch Menge der Literale, auf die sie hinführen • Offene Teilmatrix M 7→ von p erreichbare Literale – pα := { L ∈ A | L∼α p} = { L ∈ A | ∀Q ∈ p L∼α Q } – L∼α Q: es gibt α-Knoten in F mit L ∈ α1 und Q ∈ α2 (oder umgekehrt) – pα leicht aus Formelbaum zu berechnen. • Aktuelle Klausel c 7→ noch offene alternative Pfadliterale – schrumpft durch Erweiterung von p um Literal L – zusätzlich Betrachtung von “Subklauseln” erforderlich – c¯β (p, L) := cβ (p, L)∪{L} für L ∈ pα – cβ (p, L) := { K ∈ pα | K ∼β L} – K ∼β L: es gibt β -Knoten in F mit K ∈ β1 und L ∈ β2 (oder umgekehrt) Inferenzmethoden 125 Tableaux-Kalkül Extensionsschritt “ ` ”auf Formelbäumen T 0 R1 K P 1 Q0 T 1 R0 K ⇒ ] ⇒ I ¬ I S1 k 3 K P0 ⇒ ¬ P1 S0 I ⇒ I ¬ k 3 ¬ T 0 R1 K ` :⇒ y ⇒ p = {} c = {S 1 }, pα = {S 1 , T 0 , R1 , P 1 , P 1 , Q0 , T 1 , R0 , S 0 , P 0 } P 1 Q0 T 1 R0 K ⇒ ] ¬ I S1 k 3 K I ⇒ L̄ = S 0 , ⇒ P1 ¬ S 0. I ⇒ I ¬ k ¬ 3 :⇒ y L = S 1, P0 ⇒ %-List= {}, p = {S 1 } c¯β (p, L̄)} = {S 0 , P 0 }, e = {S 0} c = {P 0 }, pα = {T 0 , R1, P 1 , P 1 , Q0, T 1 , R0, P 0 1. Wähle offenes Literal L der aktuellen Klausel c; markiere es mit L – markiere Alternativen aus c¯β (p, L) mit % (speichere Alternativen) 2. Wähle von L ausgehende Konnektion aus pα 3. Wähle Teilmenge e der ‘konnektierten Klausel’ ( c¯β (p, L̄)}), so daß jedes L0 ∈ e mit einem Literal des aktuellen Pfades p konnektiert ist – ggf. erweitere die Substitution σ um weiteren mgu ρ – speichere Alternativen, sofern vorhanden (Abbruch, wenn keine Konnektion) 4. Markiere alle gewählten Literale aus e mit . 5. Wähle dieInferenzmethoden restlichen Literale als neue aktuelle Klausel 126 Tableaux-Kalkül Extensionsbeweis auf Formelbäumen T 0. R1 K P 1. Q0 T 1 R0. K ⇒ ] K ¬ 1 k 3 P. ⇒ I 1 I S ⇒ P0 ¬ ∧ S. I ⇒ I ¬ k 3 ¬ 0 T ∧ ¬S :⇒ ∧y (( ⇒ ¬R ¬P h` h `X XP P ¬P Q ¬T R a aa a H H H H S P Start p = {}, c = {S 1 }, pα = {S 1 , T 0 , R1 , P 1 , P 1 , Q0 , T 1 , R0 , S 0 , P 0 } Erster Schritt L = S 1, L̄ = S 0 , c = {P 0 }, L = T 1, L̄ = T 0 , c = {R1}, %-List= {}, Zweiter Schritt p = {S 1 } L = P 0, c¯β (p, L̄) = {S 0 , P 0 }, e = {S 0 } pα = {T 0 , R1, P 1 , P 1 , Q0 , T 1 , R0, P 0 } Dritter Schritt %-List= {R0 }, p = {S 1 , P 0 , T 1 } c¯β (p, L̄) = {T 0 , R1, P 1 }, pα = {R1, Q0 , R0 } Inferenzmethoden L̄ = P 1 , %-List= {}, c¯β (p, L̄) = {P 1 , T 1 , R0 }, c = {T 1 , R0 }, L = R1 , e = {T 0 , P 1 } L̄ = R0 , c = {}, 127 p = {S 1 , P 0 } e = {P 1 } pα = {T 0 , R1 , P 1 , Q0, T 1 , R0} Vierter Schritt %-List= {}, p = {S 1 , P 0 , T 1 , R1 } c¯β (p, L̄) = {R0}, pα = {Q0} e = {R0} Tableaux-Kalkül Klauselkopie • Nur γ -Knoten sind mehrfach verwendbar • Kopie = ˆ Hinzunahme zusätzlicher γ -Nachfolger 1 P 0a 1 P x1 P x2 ∀x P 0b ∧ P 1 x1 P 1 x2 ∀ x1 ∀ x2 α P 0a ∧ ⇒ ⇒ γ -Kopien verhalten sich wie α-Knoten ⇒ technisch als α-Knoten behandeln – Pfaderweiterung: { P ∈ pα | P ∼α L} = pα − c¯β (p, L) – Stärkere Analogie zur Klauseldenkweise aus CP 11 möglich Inferenzmethoden 128 P 0b Tableaux-Kalkül Extensionsverfahren auf Formelbäumen µ ← 1 ; ALTs ← {c¯β ({}, L) | L ∈ Aµ } ; ALTc ← [] ; σ -List ← [] ; Initialisier Wähle (und streiche) c aus ALTs ; σ ← {} ; p ← {} , pα ← Aµ ; %-List ← [] Startkla Solange kein Beweis gefunden Wähle Literal L ∈ c ; c ← c ∩ cβ (p, L) ; Falls c 6= {} erweitere %-List um die Markierung (c, p, pα ) Erweitere p um L ; pα ← pα − c − {L} Falls es A ∈ pα gibt, das komplementär zu einem K ∈ p ist Dann Erweitere ALTc um Markierungen (L, c¯β (p, A0), pα , σ, p, %-List) für alternative Atome A0 d ← c¯β (p, A) Wähle e ⊆ d und mgu τ , so daß alle P ∈ e unter στ komplementär zu einem K ∈ p sind Erweitere σ -List um Markierungen (d, e0 , pα , σ, τ 0 , p, %-List) für alternative e0 und τ 0 c ← d−e ; σ ← στ ; pα ← pα − e Falls c = {} Dann Falls %-List = [] so ist F gültig und das Verfahren bricht ab Wähle letzte Markierung (c, p, pα ) aus %-List; streiche diese → Pfaderweiter → Extensionskla → Extensionsme → Exten Er Bereinig Sonst Falls σ -List 6= [] Alternative Extensionsme Dann Wähle/streiche (c, e, pα , σ, τ, p, %-List) aus σ -List; Setze fort mit → Extension Alternative Extensionskla Sonst Falls ALTc 6= [] Dann Wähle (L, d, pα , σ, p, %-List) aus ALTc ; Setze fort mit Wahl der → Extensionsmenge Alternative Startkla Sonst Falls ALTs 6= [] µ Dann Wähle c aus ALTs ; σ ← {} ; p ← {} , pα ← A ; %-List ← [] Sonst Erhöhe µ ; ALTs ← {c¯β ({}, L) | L ∈ Aµ } ; ALTc ← [] ; σ -List ← [] Alternativer Kopiens µ Wähle c aus ALTs ; σ ← {} ; p ← {} , pα ← A ; %-List ← [] Implizite Positionsmarkierung zur Unterscheidung der Literale n ötig Inferenzmethoden 129 Tableaux-Kalkül Inferenzmethoden Lektion 16 Verdichtung von Kopien und Konnektionen 1. Verdichtung von Klauselinstanzen – Klauselsplitting – Faktorisierung (Konnektionsstrukturkalkül) 2. Verdichtung von Konnektionen – Datenbankreduktion – Indizierung 3. Zyklenbehandlung Klauselsplitting (Splitting by need) Verkleinere Größe der zu kopierenden Klausel ¬P x1 ¬P x2 Pa 7→ Pb ¬P x Pa Pb • Betrachte konnektierte Teilklauseln separat – nur eine Version von ¬P x erforderlich • Allgemeine Split-Regel kompliziert – nur Spezialfälle einfach – Struktur der Formel muß berücksichtigt werden ⇒ Splitting in Unifikation integrieren Inferenzmethoden Bibel 1987, IV.10 130 Verdichtungen Faktorisierung: P a ∧ (P x ⇒ P f x) ⇒ P f 8a ¬P a Px P f 8a ¬P f x Extensionsbeweis verlangt 8 Klauselkopien Px Px Px Px Px Px Px Px P f 8a ¬P a ¬P f x ¬P f x ¬P f x ¬P f x ¬P f x ¬P f x ¬P f x ¬P f x Optimierung durch strukturierte Konnektionsdarstellung? Inferenzmethoden 131 Verdichtungen Faktorisierungsstruktur • Zusammenfassen gleichartiger Teilbeweise 5 ¬P a Px Px 1 Px 2 Px 1 ¬P f x ¬P f x ¬P f x ¬P f x Px 3 Px 1 Px Px 2 1 P f 8a ¬P f x ¬P f x ¬P f x ¬P f x ⇒ Konnektionsstrukturkalkül – Matrix + Strukturgraph für Faktorisierung – Konnektionen mit Faktorisierungsmerkmalen – Index repräsentiert mehrere Konnektionen 5 3 2 ¬P a 4 ``` r`` r` r Px 1 ¬P fx ` `r `rr rrr P f 8a 4 `rr : linker Teil von Konnektion 3, darin rechter Teil von Konnektion 2 und 1 `r : linker Teil von Konnektion 2, darin rechter Teil von Konnektion 1 • Exponentielle Beweisverkürzung möglich – indiziertes, faktorisiertes Extensionsverfahren – effizienter (nichtlinearer) Resolutionsbeweis Inferenzmethoden 132 Verdichtungen Datenbankreduktion Verringere Anzahl der Konnektionen mit Fakten Pa Pb Pc Qx ⇐ P x 7→ Pr Qx ⇐ P x r ∈ {a, b, c} • DB-Reduktion: P a1 ∧ . . . P ak 7→ P r ⇐ r ∈ {a1, . . . , ak } – nur für grundinstantiierte Literale (hier negative Repräsentation/ Prolog) • Erweiterte Anwendbarkeit von ISOL – Menge von Konnektionen wird einzige indizierte Konnektion • Datenbanktechniken anwendbar ⇒ “deduktive Datenbank” – (Vereinigung, Schnitt, Projektion, Verbund) P r1 ⇐ r1 ∈ {a, b, c} . Sx ⇐ x ∈ {a, b, c}, x ∈ {b, c, d} ⇐ x ∈ {a, b, c} ∩ {b, c, d} Qr2 ⇐ r2 ∈ {b, c, d} . `ISOL Sx ⇐ Qx, P x . Inferenzmethoden 133 ⇐ x ∈ {b, c} Verdichtungen Verallgemeinerte DB-Reduktion Zusammenfassung beliebiger Literale mit gleichem Prädikatszeichen • Variablen in Subtermen erlaubt P f (ga, b) . P f (gb, b) . P f (x, c) . Qz ⇐ P z . 7→ P r ⇐ r ∈ {f (ga, b), f (gb, b), f (x, c)} . Qz ⇐ P z . • Allgemeine Datenbanktechniken nicht anwendbar – Anfrage Qf (a, w) verlangt echte “Datenbank-Unifikation” • Stärkere Strukturierung und Abstraktion nötig Inferenzmethoden 134 Verdichtungen Abstraktionsbäume Zusammenfassung von ähnlichen Teiltermen f (x, y) = f (ga, b) y \c x\gv, y \b ~ f (gv, b) = f (x, y) f (x, c) v \a ~ • f (gb, b) • = ~ v \b = ~ • • Baumstruktur mit steigender Abstraktion • Unterschiede durch Variablen in “abstrakterem” Knoten codiert • effiziente Darstellung durch lokale Substitutionen Inferenzmethoden 135 Verdichtungen • Datenbank-Unifikation Verallgemeinerte Datenbank-Operationen • Anfrage ∈ 7−→ Unifikation mit Abstraktionsbaum – Unifikation von Qf (a, w) mit Wurzel 7→ σ = {x\a, y \w} – Unifikation mit Kantensubstitutionen θ bis Blätter erreicht (unifiziere alle vorkommenden Paare xσ, xθ ) ⇒ Linker Ast nicht unifizierbar ⇒ Rechter Zweig liefert γ = {x\a, w \c}: Antwort Qf (a, c) x \ gv, y \ b v\a = • • f (x, y) = ~ ~ v\b • • Vereinigung ∪ 7−→ Einfügen als Teilbaum (t) • Durchschnitt ∩ 7−→ Unifikation der Bäume (u) – Unifikation von der Wurzel ausgehend P r1 ⇐ r1 ∈ {f a, f gy} . Qr2 ⇐ r2 ∈ {f ha, f hb, f ga, f gb} . Sx ⇐ Qx, P x . `ISOL Sx ⇐ x ∈ {f a, f gy}, x ∈ {f ha, f hb, f ga, f gb ⇐ x ∈ {f a, f gy} u {f ha, f hb, f ga, f gb} ⇐ x ∈ {f ga, f gb} • Effizienzgewinn, wenn große gemeinsame Struktur Inferenzmethoden 136 Verdichtungen Zyklen: Vermeidung von Klauselkopien ¬P f x P fff a Px ¬P a linear, nicht-tautologisch Beweiszyklus: Mittlere Konnektion mehrfach erforderlich • Zyklus: Menge {c1, . . . , cn} von Konnektionen ci = {Li, Ri} mit Li , Rj verschiedene Literale derselben Klausel, falls j − i ≡ 1 mod n. • Linearer Zyklus: kein Literal in mehr als einer Konnektion • tautologischer Zyklus: alle Konnektionen im Zyklus komplementär + Zyklusliterale einer Klausel nach Substitution unverändert Beweisverdichtung durch Bestimmung der Zyklenmultiplizität? Inferenzmethoden 137 Verdichtungen Beispiele von Zyklen I ¬P f x P f f ga Qx ¬Qgy ¬P a Py ( linear, nicht tautologisch ¬Axz Axy Ayz nicht linear Qz ¬Qf y ¬P x Py Pz kein Zyklus Inferenzmethoden 138 Verdichtungen Beispiele von Zyklen II ¬P xy ¬P xy ¬Qxy ¬Qxy ¬P xz ¬Qxz ¬Qyx Qcd P ab P xy Qxy P yz Qyz Qxy viele nichtlineare Zyklen möglich Tautologische Zyklen ¬P x Qy ¬P x Qy Px ¬Qz ¬P xy ¬Qza Qxy Pz P za Nicht-tautologische Zyklen ¬P x Qy Py ¬P x Qx Inferenzmethoden ¬Qa ¬P xy ¬Qza Qxy Pb 139 P ua Verdichtungen Zyklenbehandlung • Tautologische Zyklen tragen nicht zum Beweis bei – Teile des Zyklus können nötig sein – restliche Konnektionen können im Beweis ignoriert werden • Nicht-Tautologische Zyklen ggf. mehrfach zu durchlaufen – Zyklenmultiplizität bestimmen durch Unifikation aller Konnektionen – Gleichungssystem für zu unifizierende Variablen aufstellen und lösen ⇒ beschleunigte Berechnung, Vermeidung von Klauselkopien ¬P f x P fff a ¬P a Px – Gleichungssystem: x1 = a, xi+1 = f xi, i = 1, . . . , m−1, f xm = fff a – Gauss-Elimination: f ma = fff a, also m = 3 ⇒ Beweis nach 3 Durchläufen geführt (explizite Ausführung überflüssig) • allgemeine Zyklen-Unifikation ist unentscheidbar ! Inferenzmethoden 140 Verdichtungen Inferenzmethoden Lektion 17 Verdichtung von Theorien- und Gleichheitsbehandlung 1. Sorten und Theorien – Theoriekonnektionen 2. Behandlung von Gleichheit – Hinzunahme von Gleichheitsaxiomen – Gleichheitskonnektionen – Paramodulation – Resolution und Gleichheit DB-Reduktion und Sorten Pa Pb Qx ⇐P x ... P = ˆ Sorte {a, b} ¬Qx ¬P a1 Px ... ... ¬P an ⇓ ... ¬Qx x ∈ {a1, . . . , an} {a1, . . . , an}: Sorte der Variablen x ⇒ Effiziente Behandlung von Sorten durch DB-Reduktion – Praktisch unlösbare Beweise werden handhabbar (Schubert’s “Steamroller”) Inferenzmethoden 141 Verdichtungen Theoriekonnektionen Ec ¬Ex ¬Ax Ax Bx ¬Bc Integration einer Teiltheorie in die Konnektion ⇓ EB ¬Bc EB ≡ Ec ¬Ex ¬Ax Ax Bx Erweiterung des Komplementaritätsbegriffs (unter einer Theorie) Unifikation muß Theorie mitberücksichtigen Inferenzmethoden 142 Verdichtungen Die Theorie der Gleichheit • Wichtigste Grundbeziehung zwischen Objekten (Termen) . • Zweistelliges (Infix-)Prädikatszeichen = • 5 Grundeigenschaften . x=x . . x=y ⇒ y =x . . . x=y ∧ y =z ⇒ x=z . . xi=y ⇒ f (x1, . . . , xi, . . . , xn) =f (x1, . . . , y, . . . , xn) Reflexivität Symmetrie Transitivität Substitutivität auf Funktionen (Schema) . xi=y ⇒ [P (x1, . . . , xi, . . . , xn) ⇔ P (x1, . . . , y, . . . , xn)] Substitutivität auf Prädikaten (Schema) • Symmetrie und Transitivität sind ableitbar Inferenzmethoden 143 Verdichtungen Axiomatische Gleichheitsbehandlung • Erweitere Formel um Axiome der Gleichheit • Minimale Axiomenmenge . x=x . . xi=y ⇒ f (x1, . . . , xi, . . . , xn)=f (x1, . . . , y, . . . , xn) . xi=y ⇒ [P (x1, . . . , xi, . . . , xn) ⇒ P (x1, . . . , y, . . . , xn)] • Substitutivitätsaxiom muß für jedes vorkommende Funktions- und Prädikatssymbol instantiiert werden ⇒ erhebliche Vergrößerung des Suchraums Inferenzmethoden 144 Verdichtungen Gleichheitskonnektionen Verdichtung der Konnektionen in die Gleichheitsaxiome 2 . x=y Px 1 . a6= b ¬P a ¬P y Pb 3 ⇓ 1 ¬P a 2 3 . a6= b Pb Unifikation darf konnektierte Gleichheiten berücksichtigen Suche nach geeigneten Gleichungen unentscheidbar Inferenzmethoden 145 Verdichtungen eq-Literale 3 . x=z . y =u . f xy6= f zu . a6= c . b6= d 2 . f ab=f cd 1 ⇓ 3 . a6= c 2 1 . . b6= d f ab=f cd Gleichheitsliterale können ohne komplementäres Literal gültig sein . Voraussetzung: Ersetzung der konnektierten Gleichungen führt zu t=t Pfade mit gültigen eq-Literalen sind komplementär ⇒ erweitertes Charakterisierungstheorem Inferenzmethoden 146 Verdichtungen Paramodulation • Resolutionsähnliche Kalkülregel für Gleichheitsbehandlung . Elternklauseln: {L} ∪ C1 , {r =s} ∪ C2 – Teilterm t von L besonders gekennzeichnet Paramodulant: ({L0} ∪ C1 ∪ C2)σ – σ mgu von r und t, L0 entsteht durch Ersetzung von t durch s in L . a=b Pa Paramodulation ¬P b Pb Resolution {} • Alternative Sicht: bedingte Termersetzungsregel – C2 Bedingung für die Ersetzung von r durch s Inferenzmethoden 147 Verdichtungen Paramodulation mit Unifikation . Qb ∨ P x a=b ∨ Rb σ = {x\a} Qb ∨ P b ∨ Rb Qb ∨ P x . a=b ∨ Rb σ = {x\b} Qb ∨ P a ∨ Rb P xx ∨ Qb . a=b ∨ Rb σ = {x\a} P ba ∨ Qb ∨ Rb Inferenzmethoden 148 Verdichtungen Resolution und Gleichheit • Resolution + Paramodulation ist vollständig und konsisten – benötigt Reflexivitätsaxiom • Lokale Sicht macht effiziente Suchstrategien erforderlich • Demodulation: gerichtete Anwendung von Gleichheiten 7→ Termersetzungssysteme • E–Resolution: – komplexes Äquivalent zu eq-Konnektionen und eq-Literalen • RUE–Resolution: – Erzeugung von Paramodulationsgleichungen “bei Bedarf” Inferenzmethoden 149 Verdichtungen E–Resolution • Resolution nach Einsetzung assoziierter Gleichungen {Qgy, P (c, h(f (a, y), b))} T T T T T T T T T T b b T b T b b T b b T b T b b T b b T b T b . {Ra, a=c} {¬P (a, h(gc, d))} " " " " " " " " " " " " " " . {f (x, e)=gx, Qx} . {b=d} {Ra, Qge, Qa} • vollständig und korrekt • Durchführung aufwendig – unentscheidbare Suche nach geeigneten Gleichungen Inferenzmethoden 150 Verdichtungen RUE–Resolution Unterteilung von E-Resolution in Teilschritte • Resolution anwendbar auch ohne Unifizierbarkeit der Literale • Verbleibende Gleichheitsbedingungen erscheinen in Resolvente {Qgy, P (c, h(f (a, y), b))} {¬P (a, h(gc, d))} . . . {Qgy, c6 = a, f ay6 = gc, b6 = d} • Entstehende Gleichheitsbedingungen werden später verarbeitet Inferenzmethoden 151 Verdichtungen Inferenzmethoden Lektion 18 Termersetzungssysteme 1. Motivation und Grundbegriffe 2. Knuth-Bendix Vervollständigung 3. Narrowing 4. Unifikation durch Transformation Termersetzung in der Deduktion • Verwendung von Gleichheiten als “Vereinfachung” – Zielgerichtetere Anwendung von Gleichheiten – Gleichheiten erhalten “Richtung” – Ersetzung von Teiltermen durch gleichwertige einfachere Terme (“Reduktion”) • Lösung des Wortproblems durch Termersetzung – Wortproblem: gilt Gleichheit von s und t aufgrund der Axiome einer Theorie? – Methode: Vereinfachung von s und t bis textliche Identität erreicht • Eigenständiges Forschungsgebiet “Rewriting” – Beschreibt jede Art von Regelanwendungen – Eigene, z.T. abweichende Notationen – Integration von Rewrite-Techniken in Beweiser schwierig • Vielfältige Anwendungen – Logiksysteme, Berechnungsmodelle, Unifikation, . . . Inferenzmethoden 152 Termersetzung Termersetzung: Gruppentheorie • Axiome . e·x=x . − y ·y =e . (u · v) · w = u · (v · w) linksseitiges Einselement Linksinverses Assoziativität • Als Reduktionsregeln e·x→x r1 r2 r3 y− · y → e (u · v) · w → u · (v · w) • Regelanwendung . (a− · a) · b = (e · a−) · (a · b) r1 . − − → (a · a) · b = a · (a · b) r3 . − − → a · (a · b) = a · (a · b) Inferenzmethoden 153 Termersetzung Grundbegriffe • Termersetzungssystem (A, R) – A Alphabet, R Menge von Reduktionsregeln • Reduktionsregel t→s (t, s Terme über A) – t (Redex) nicht Variable; alle Variablen von s (Kontraktum) kommen in t vor r • u → v : Regelanwendung von r = t→s auf u: – Bestimme σ so, daß tσ Teilterm von u (Matching!) – Ersetze tσ durch sσ ? • Konfluenz von (A, R): – Verschiedene Ketten von Regelanwendungen sind zusammenführbar s – Regeln entsprechen ‘echten’ Gleichungen (gleiche Beweisbarkeit) • starke Normalisierbarkeit ( (A, R) noethersch ): – Jede Kette von Regelanwendungen terminiert • Vollständigkeit: (A, R) noethersch und konfluent Inferenzmethoden 154 Termersetzung v ? R ?R u ? t Anwendung einer Termersetzungsregel r u→v ( r = t →s ) u v J J J J J J J J J J J J 0 J J J A J A J A A J A J A J A J J J J J J J J J J J J J 0 J J J A J A J A A J A J A J A J A A A A A A A t→s u = tσ Inferenzmethoden 155 X X v = sσ Termersetzung Vervollständigung • Umwandlung von Gleichungssystemen in Regelsysteme – Regel t→s ersetzt t = s – Gerichtete Regel: Anwendung in Gegenrichtung nicht möglich – Vollständigkeit (Konfluenz) kann verloren gehen – Zusatzregel s→t würde starke Normalisierbarkeit zerstören • Regeln sollen Gleichungssystem vollständig ersetzen ⇒ Verfahren zur Vervollständigung von Reduktionssystemen nötig • Superposition von Regeln r, r 0 (y − · y) · w – Unifiziere Teilterme der linken Seiten beider Regeln – Bilde kritischen Term t mit instantiierten Teiltermen 0 r r0 0 – Bilde Termpaar s, s mit t → s t → s : – Normalisiere s, s0 in (A, R) zu kritischem Termpaar u, v r2 r3 R r1 – Falls u 6= v bilde neue Regel u→v (bzw. v →u, falls v u) Inferenzmethoden 156 y − · (y · w e·w Termersetzung r4 R w Knuth Bendix Vervollständigung • Ausgangspunkt: stark normalisierbares Regelsystem – i.a. einfache Umwandlung eines Gleichungssystems Ziel: vollständiges Regelsystem • Methode: schrittweise Superposition aller Regeln – unter Verwendung einer wohlfundierten Termordnung – Starke Normalisierbarkeit bleibt erhalten Abbruchkriterium: lokale Konfluenz • Vollständiges Regelsystem für die Gruppentheorie r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 e·x x− · x (x · y) · z − x · (x · y) x·e e− x− − x · x− x · (x− · y) (x · y)− Inferenzmethoden → → → → → → → → → → x e x · (y · z) y x e x e y y − · x− 157 Termersetzung Knuth–Bendix Verfahren Eingabe: Endliche Menge G von Axiomgleichungen, Termordnung . Ausgabe: Bei Terminierung vollständiges Termersetzungssystem oder Fehlermeldung Initialisiere Regelmenge R zur leeren Menge while G nicht leer do wähle Gleichung aus G ; reduziere sie mit Regeln aus R . if reduzierte Gleichung nicht von der Form x = x then if reduzierte Gleichung läßt sich mit nicht zu neuer Regel richten then return ‘Termordnung nicht ausreichend ’ else bilde neue Regel und füge sie zu R hinzu; reduziere alle Regeln aus R untereinander; verletzt eine der reduzierten Regeln die Termordnung , so entferne sie aus R ; . nehme sie in G auf, sofern sie nicht von der Gestalt x = x ist; fi bilde alle kritischen Paare zwischen der neuen Regel und den übrigen Regeln und füge sie als Gleichungen zu G hinzu fi od return R Inferenzmethoden 158 Termersetzung Narrowing • Rewriting einer Gleichung mit der Regel s→t: u = v → u0 = v u0 entsteht aus u durch Ersetzung eines Teilterms sσ mit tσ . • Einfaches Verengen mit der Regel s→t: u = v, E → u0 = v, E u0 entsteht aus u durch Ersetzung eines Teilterms sσ mit t und anschließender Anwendung von σ auf den ganzen Term. • Lässiges Verengen mit der Regel f s1 . . . sn →t: u = v, E → u00 = v, u1 = s1, . . . , un = sn, E u00 entsteht aus u durch Ersetzung des Auftretens von f u1 . . . un durch t. Verengen + Martelli–Montanari–Regeln = vollständiges Berechnungsverfahren für Lösbarkeit einer Menge von Gleichungen unter einer Theorie (z.B. Theorie-Unifikation) Inferenzmethoden 159 Termersetzung Gleichungstheorie über den ganzen Zahlen r1 r2 v(n(x)) → x 0+x →x x+0→x r3 r4 r5 r6 n(x) + y → n(x + y) x + n(y) → n(x + y) x + v(y) → v(x + y) Martelli–Montanari–Regeln Termdekomposition . . . {f (s1, . . . , sn)=f (t1, . . . , tn)} ∪ E ; {s1=t1, . . . , sn=tn} ∪ E . Entfernung trivialer Gleichungen . {x=x} ∪ E ; E Umstellung . . {t=x} ∪ E ; {x=t} ∪ E , wenn t 6∈ V Variablenelimination . . {x=t} ∪ E ; {x=t} ∪ E{x\t}, Inferenzmethoden 160 wenn x 6∈ t und x ∈ E Termersetzung Theorie-Unifikation durch Transformation Gleichungen (x + x) + v(0) = n(0) v(x1 + y1) = n(0), x1 = x + x, v(y1 ) = v(0) v(x1 + y1) = n(0), x1 = x + x, y1 = 0 v(x1 + 0) = n(0), x1 = x + x v((x + x) + 0) = n(0) x2 = n(0), n(x2) = (x + x) + 0 x2 = n(0), n(x2) = x3, x3 = x + x, 0 = 0 x2 = n(0), n(x2) = x3, x3 = x + x x2 = n(0), n(x2) = x + x x2 = n(0), n(x2) = n(x4 + y4), x = n(x4), x = y4 n(n(0)) = n(x4 + y4), x = n(x4), x = y4 n(0) = x4 + y4, x = n(x4), x = y4 n(0) = x4 + y4, y4 = n(x4) n(0) = x4 + n(x4) n(0) = n(x5 + y5), x4 = x5, n(x4) = n(y5) n(0) = n(x5 + y5), n(x5) = n(y5) 0 = x5 + y5, n(x5) = n(y5) 0 = x 5 + y5 , x5 = y5 0 = y 5 + y5 0 = x6, y5 = 0, y5 = x6 0 = x6 , 0 = x 6 0 = x6 , x6 = 0 0=0 Inferenzmethoden 161 angewandte Regeln lässige Verengung mit r6 Termdekomposition Variablenelimination Variablenelimination lässige Verengung mit r1 lässige Verengung mit r3 Entfernung trivialer Gleichungen Variablenelimination lässige Verengung mit r4 Variablenelimination Termdekomposition Variablenelimination Variablenelimination lässige Verengung mit r5 Variablenelimination Termdekomposition Termdekomposition Variablenelimination lässige Verengung mit r2 Variablenelimination Umstellung Variablenelimination Termersetzung Inferenzmethoden Lektion 19 Offene Forschungsgebiete 1. Unifikationstheorie 2. Semantische Beweisführung 3. Meta-Inferenz, Abstraktion und Analogie 4. Parallelität Unifikationstheorie 1 ¬P a 2 3 . a6= b Pb . • {¬P a, P b} komplementär unter der Theorie a = b – verallgemeinerte Unifikation erforderlich • Unifizierbarkeit modulo Theorie T – wie definieren? – gibt es mgu’s und, wenn ja, wieviele? – gibt es Unifikationsalgorithmen (als Entscheidungsprozeduren)? – Komplexität der Unifikation? Inferenzmethoden 162 Erweiterungen Unifikationstheorien • unitäre: Es gibt bei Unifizierbarkeit genau einen allgemeinsten Unifikator. – Standard-Unifikation • finitäre: Es gibt bei Unifizierbarkeit endlich viele allgemeinste Unifikatoren. – AC-Unifikation, Präfix-Unifikation • infinitäre: Es gibt bei Unifizierbarkeit unendlich viele allgemeinste Unifikatoren. – Unifikation modulo Assoziativität • leere: Es gibt keine allgemeinsten Unifikatoren Inferenzmethoden 163 Erweiterungen Semantische Suchführung Unterstütze Beweissuche durch semantische Analysen • Untersuche konkrete Beispiele (Modelle!) • Eliminiere Teilziele, die vom Beispiel wiederlegt werden – gewählte Alternativen können nicht zum Beweis führen – Beende Suchpfad erfolglos Setze zurück auf andere Alternative • Ausnahme bei nicht-Horn Formeln – Teilziel ist Teil einer Schleife auf aktivem Pfad • Automatisierung schwierig – Erzeugung von Gegenbeispielen erforderlich Geometrische Beweisverfahren (Gelernter) Inferenzmethoden 164 Erweiterungen Geometrische Beweisprobleme • Dreiecks-Axiome 1. seg(x, y) = seg(u, v) ⇒ seg(x, y) = seg(v, u) 2. tri(x, y, z) ≡ tri(u, v, w) ⇒ seg(x, y) = seg(u, v) 3. ( angle(x, z, y) = angle(u, w, v) ∧ angle(z, x, y) = angle(w, u, v) ∧ seg(y, z) = seg(v, w) ) ⇒ tri(x, y, z) ≡ tri(u, v, w) • Aufgabe: a Zeige seg(a, d) = seg(c, d) d b Inferenzmethoden 165 c Erweiterungen Semantische Suchführung — Geometrie a d b c seg(x, y) 6= seg(v, u) seg(a, d) = seg(c, d) seg(x, y) 6= seg(u, v) . seg(x, y) = seg(u, v) tri(x, y, z) ≡ tri(u, v, w) Offenes Teilziel: tri(a, d, z) ≡ tri(d, c, w): Erfolgloser Suchpfad, da falsche Reihenfolge der Punkte seg(x, y) 6= seg(v, u) seg(a, d) = seg(c, d) seg(x, y) 6= seg(u, v) seg(x, y) = seg(u, v) tri(x, y, z) ≡ tri(u, v, w) tri(a, d, z) ≡ tri(c, d, w): Fortsetzung des Beweises erfolgreich Inferenzmethoden 166 Erweiterungen . Höhere Formen des Schließens • Deduktive Strategien – Anweisungen zur Manipulation der Objektsprache – formuliert in Meta-Sprache • Meta- und Objektsprache syntaktisch ähnlich – Reflektion (Schließen über Strategien) möglich • Meta–Inferenz – Aussagen über Zusammenhang zwischen Logik und Strategie – welche Schlüsse sind erlaubt? – wie darf bewiesen werden? • Abstraktion – Anhebung der Ebene des Schließens – Elimination überflüssiger formaler Details – Wichtig für Verständnis und Planung von Beweisen • Analogie – Übertragung einer Beweisidee auf neue Probleme – Wichtig für Entdeckung neuer Beweise Inferenzmethoden 167 Erweiterungen Mechanismen bisher zu wenig verstanden Inferenzmethoden 168 Erweiterungen Parallelität • Leistungssteigerung durch Verdichtung ist limitiert • Verteile alternative Wege auf mehrere Prozessoren – alternative Konnektionsmengen – alternative Substitutionen – parallele Abarbeitung von Termen • unabhängige Teilprobleme oder Kommunikation • praktische Effizienzsteigerung trotz N P –Vollständigkeit Inferenzmethoden 169 Erweiterungen Aspekte des Beweissystems KoMeT “Berechnungsadäquater” Konnektionsbeweiser √ • Normalformtransformationen • Reduktionen • Aussagenlogische Entscheidungsprozedur • Behandlung großer Datenmengen • Interaktive Beweissuche • Verschiedene Suchstrategien • Einschränkung des Suchraums • Indizierungstechniken • Gleichheitsbehandlung • Verwendung von Induktion 7−→ 7−→ 7−→ 7−→ 7−→ √ √ √ √ √ √ √ √ √ Einbau von Theorien Einsatz von Termersetzung Faktorisierung und Lemmata Benutzeroberfläche und Beweisaufbereitung Anwendungen Inferenzmethoden 170 Erweiterungen Inferenzmethoden Lektion 20 Logik höherer Stufe 1. Logiken – eine Übersicht 2. Syntax, Substitution & Konversion 3. Simulation mathematisch-logischer Konstrukte 4. Beweisführung in Logik höherer Stufe Logiken • Klassische Prädikatenlogik erster Stufe • Logik höherer Stufe • Modallogiken • Intuitionistische Logik erster Stufe • Intuitionistische Logik höherer Stufe – konstruktive Typentheorie – Kalkül der Konstrukte .. • Lineare Logik • Relevanzlogik • Nichtmonotone Logiken – Default Logik .. • Temporallogik .. Inferenzmethoden 170 √ 7→ Lektion 20 7→ Lektion 20/21 7→ ALuP 7→ Lektion 20 7→ Wissensrepräsentation 7→ Wissensrepräsentation Logik höherer Stufe Logik höherer Stufe Minimale Grundlagentheorie • Keine Einschränkung an Verwendung von Variablen – Trennung in Prädikats- und Funktionssymbole und Variablen erster Stufe ist nur eine Bezeichnungskonvention ⇒ Quantifizierung über Prädikats- und Funktionssymbole zulässig • Generierung von Funktionen durch λ-Terme – Abstraktion über freie Variablen in Termen • Terme: x, λx.t, f (a), ∀x P , P ⇒ Q (Manche auch: , , ¬, ∃ ) • Axiome: – Eigenschaften von ∀ und ⇒ – Reduktion von λ-Termen: (λx.t)(a) −→ t{x\a} • Alle anderen Konzepte definierbar (logizistischer Ansatz) – keine axiomatische Einführung sondern definitorische Abkürzung Inferenzmethoden 171 Logik höherer Stufe Logik höherer Stufe – Syntax V : Alphabet von Variablen(-symbolen) • x Term, falls x ∈ V • λ x.t Term, falls x ∈ V und t Term λ -Abstraktion • f t Term, falls t und f Terme Applikation • P ⇒ Q Term, falls P und Q Terme • ∀ x P Term, falls x ∈ V und P Term • (t) Term, falls t Term Inferenzmethoden 172 Logik höherer Stufe Freies und gebundenes Vorkommen von Variablen x gebunden z }| { λf.λx.(λz. f{zx z) x} | x frei • x: die Variable x kommt frei vor; y 6= x kommt nicht vor. • λ x.t / ∀ x P : freie und gebundene Vorkommen von x in t (P ) werden gebunden; freie Vorkommen von y 6= x in t (P ) bleiben frei, gebundene Vorkommen von y bleiben gebunden. • f t / P ⇒ Q: freie Vorkommen von x in f und t (P und Q) bleiben frei, gebundene Vorkommen von x bleiben gebunden. • (t): freie Vorkommen von x in t bleiben frei, gebundene Vorkommen von x bleiben gebunden. Inferenzmethoden 173 Logik höherer Stufe Substitution u{x\t} x{x\t} =t x{y\t} =x (y 6= x) λx.u{x\t} = λx.u λx.u{y\t} = λx.u{y\t} ∀x P {x\t} ∀x P {y\t} = ∀x P {y\t} ∀x P {y\t} = (∀z P {x\z}){y\t} y 6= x, y nicht frei in u (P ) oder x nicht frei in t λx.u{y\t} = (λz.u{x\z}){y\t} = ∀x P y 6= x, y frei in u (P ), x frei in t, z neue Variable. f u{x\t} = f {x\t} u{x\t} (u){x\t} = (u{x\t}) Inferenzmethoden P ⇒ Q{x\t} = P {x\t} ⇒ Q{x\t} 174 Logik höherer Stufe α -Konversion und Reduktion • α-Konversion: Umbenennung gebundener Variablen in t Ersetzung eines Teilterms der Gestalt λ x.u durch λ z .u{x\z}, (z neue Variable • t und u kongruent (α-konvertibel): u ergibt sich aus t durch endlich viele Umbenennungen gebundener Variablen • Reduktion von t: Ersetzung eines Teiltermes (λ x.u)(s) (Redex) durch u{x\s} (Kontraktum) ∗ • t −→ u (t reduzierbar auf u): u ergibt sich aus t durch endlich viele Reduktionen und Umbenennungen • t = s: ∗ ∗ es gibt u mit t −→ u und s −→ u Theorie der Termersetzung anwendbar Inferenzmethoden 175 Logik höherer Stufe Inferenzmethoden 176 Logik höherer Stufe Church Numerals: Simulation natürlicher Zahlen n s add mul ≡ λf.λx. fn x ≡ λf.λx. f {z x) ...)} | (f ...(f n-mal ≡ λn.λf.λx. n f (f x) ≡ λm.λn.λf.λx. m f (n f x) ≡ λm.λn.λf.λx. m (n f) x ∃po ≡ λm.λn.λf.λx. n m f x p ≡ λn. (n (λfx. hs, let hf,xi = fx in f xi) hλz.0, 0i).2 zero N ≡ λn. n (λn.F) T ≡ λx.∀P (∀y P(y) ⇒ P(s y)) ⇒ P(0) ⇒ P(x) Abkürzungen ≡ λx.λy.x T F if b then s else t ≡ λx.λy.y ≡ bst ≡ λp. p s t hs,ti let hx,yi = pair in t ≡ pair (λx.λy.t) Inferenzmethoden 177 Logik höherer Stufe N (x)=x ˆ ∈N Church Numerals: Reduktion von Funktionen ≡ (λn.λf.λx. n f (f x)) (λf.λx. fn x) s n −→ λf.λx. (λf.λx. fn x) f (f x) −→ λf.λx. (λx. fn x) (f x) −→ λf.λx. fn (f x) −→ λf.λx. fn+1 x add m n ≡ n+1 ≡ (λm.λn.λf.λx. m f (n f x)) m n −→ (λn.λf.λx. m f (n f x) n −→ λf.λx. m f (n f x) ≡ λf.λx. (λf.λx. fm x) f (n f x) −→ λf.λx. (λx. fm x) (n f x) −→ λf.λx. fm (n f x) ≡ λf.λx. fm ((λf.λx. fn x) f x) −→ λf.λx. fm ((λx. fn x) x) −→ λf.λx. fm (fn x) −→ λf.λx. fm+n x Inferenzmethoden 178 ≡ m+n Logik höherer Stufe Simulation logischer Konzepte ∧ ≡ λA.λB.∀P(A ⇒ (B ⇒ P)) ⇒ P Konjunktion ∨ ≡ λA.λB.∀P ((A ⇒ P) ⇒ (B ⇒ P)) ⇒ P Disjunktion ⊥ ≡ ∀P P Falschheit Negation ∃-Quantor Gleichheit (intuitionistisch) ¬ ≡ λA.∀P (A ⇒ P) ∃x.A ≡ ∀P (∀x (A ⇒ P)) ⇒ P . = ≡ λx.λy.∀P ( P(x) ⇒ P(y) ) Inferenzmethoden 179 Logik höherer Stufe Beweisführung in Logik höherer Stufe • Charakterisierung der Gültigkeit analog – “F gültig gdw. alle Pfade durch F komplementär” – Komplementarität mit erweitertem Substitutionsbegriff (Prädikats- und Funktionssymbole ersetzbar) • Konnektionen-orientiertes Pfadüberprüfungsverfahren • Unifikation höherer Stufe – unentscheidbar (!) und erheblich komplizierter → Huet • endgültige Beweise sehr kurz und elegant – aber schwer zu finden Inferenzmethoden 180 Logik höherer Stufe Beweisführung: Eigenschaften der Gleichheit . = ≡ λx.λy. ∀ P (P(x) ⇒ P(y)) . • Reflexivität: a=a • Kommutativität: . . a=b ⇒ b=a • Transitivität: . . . a=b ∧ b=c ⇒ a=c • Substitutivität: . P a ∧ a=b ⇒ P b Inferenzmethoden ¬P a P a Xa ¬P b P a ¬Xb Xa Y b ¬P a P c ¬Xb ¬Y c ¬P a Xa {X \ λz.¬P z} {X \ P, Y \ P } Pb {X \ P } ¬Xb 181 Logik höherer Stufe Inferenzmethoden Lektion 21 Induktion 1. Schrittweise Induktion über N 2. Automatisierung von Induktionsbeweisen 3. Varianten der Induktionsbehandlung 4. Induktionslose Induktion Induktion • Essentiell für mathematische Beweisführung – Schließen über unendliche Konzepte • Grundform: schrittweise Induktion über N – Übertragbar auf Listen, Bäume, Mengen etc. • Erweiterung: wohlfundierte (“vollständige”) Induktion – Reduktion des Problems mit wohlfundierter Ordnung • Integration durch Hinzunahme von Induktionsaxiomen – Alternativ Induktionsregel (Gentzen) oder Rewrite-Regel Inferenzmethoden 181 Induktion Induktionsaxiome für natürliche Zahlen N (0) Erzeugungsaxiom für Null ∀x[N (x) ⇒ N (x0)] . ∀x[N (x) ⇒ x06= 0] Erzeugungsaxiom für Nachfolger Eindeutigkeitsaxiom für Null . . ∀xy[N (x) ∧ N (y) ⇒ (x0=y 0 ⇒ x=y)] Eindeutigkeitsaxiom für Nachfolger ∧ F {x\0} Induktionsschema ∀y[N (y) ⇒ (F {x\y} ⇒ F {x\y 0})] ⇒ ∀x(N (x) ⇒ F ) x F {x\0} [N (y) ⇒ (F {x\y} ⇒ F {x\y 0})] F {x\y} F {x\y 0 } Inferenzmethoden 182 Induktionsvariable Induktionsanfang Induktionsschluß Induktionshypothese Induktionskonklusion Induktion . Induktionsbeweis für x6= 0 ⇒ ∃z(N z ∧ . x=z 0) • Ergänze Gleichheitsaxiom und instantiiertes Induktionsschema ∀u . u=u . . ∧ {[06= 0 ⇒ ∃v(N v ∧ 0=v 0 )] . . . . ∧ ∀b[N b ⇒ ((b6= 0 ⇒ ∃c(N c ∧ b=c0)) ⇒ (b06= 0 ⇒ ∃y(N y ∧ b0=y 0)))] . . . . ⇒ ∀x[N x ⇒ (x6= 0 ⇒ ∃d(N d ∧ x=d0 ))]} ⇒ ∀a[N a ⇒ (a6= 0 ⇒ ∃z(N z ∧ a=z 0))] • Beweis in Nicht-Normalform-Matrix Inferenzmethoden 183 Induktion Suchentscheidungen für Induktionsbeweise • Zusätzliche Alternativen bei der Beweisführung 1. Induktionsbeweis (unter anderen Alternativen) nötig? 2. Verallgemeinerung der zu beweisenden Aussage nötig? 3. Welche Induktionsformel auswählen? 4. Welche Induktionsvariablen in der Induktionsformel? 5. geschachtelte Induktionen möglich? • Suchraum von beträchtlichem Ausmaß – Fragen 1,2 nur vom menschlichem Systembenuzter zu entscheiden – Induktionsformel muß engen Zusammenhang zum Beweisziel haben (→ 3) – Anzahl der möglichen Induktionsvariablen ist klein (→ echte Alternativen) – geschachtelte Induktionen nur, wenn weitere Variablen in Induktionsschluß Automatisierung von Induktionsbeweisen extrem schwierig Inferenzmethoden 184 Induktion Varianten der Induktionsbehandlung • schrittweise Induktion ←→ wohlfundierte Induktion – F {x\0} ∧ ∀y[N (y) ⇒ (F {x\y} ⇒ F {x\y 0})] ⇒ – einfach strukturierte Beweisführung ∀x(N (x) ⇒ F ) – ∀xN (x) ⇒ {(∀y[N (y) ⇒ (y < x ⇒ F {x\y})]) ⇒ F } ⇒ F – Elegantere Beweise, gleiche Beweisstärke, Ordnung “<” muß wohlfundiert sein • Hinzunahme von Axiomen ←→ neue Induktionsregel – Extensionsverfahren mit Axiomen nicht vollständig? (Schnittelimination gilt nicht für Induktionsbeweise) – Integration von Induktionsregeln in Konnektionsmethode schwierig • Induktionsschema ←→ Definition in Logik zweiter Stufe – Höhere Logik eleganter und vollständig (Schnittelimination gilt für definierte Konzepte) Inferenzmethoden 185 Induktion Induktionslose Induktion • Bedeutung von ∀xF ist auf Zahlen beschränkt – Allquantor gilt uneingeschränkt für alle Terme – Nur Grundterme, die Zahlen darstellen (0, 0’, 0”,. . . ), sollen eingesetzt werden ⇒ Ersetzte Induktionsbeweise durch Termersetzung mit vollständigem Regelsystem • Beweise s1 = t1, . . . , sn = tn ⇒ s = t durch Superposition – Erzeuge vollständiges Regelsystem R für s1 = t1, . . . , sn = tn – Zeige, daß Vervollständigung mit s = t das System R nicht erweitert ⇒ s = t muß bereits ableitbar gewesen sein ⇒ Nur Terme aus den zur Verfügung stehenden Symbolen werden betrachtet ` 0 + x = x ∧ y 0 + z = (y + z)0 ⇒ ∀ uvw(u + v) + w = u + (v + w) = ˆ 0 + x → x, y 0 + z → (y + z)0 und (u + v) + w → u + (v + w) ‘Quasi-reduzierbar’ • Quasi-Reduzierbarkeit entscheidbar, aber aufwendig – aber es gibt einfache hinreichende syntaktische Bedingungen an die Form der Regeln Inferenzmethoden 186 Induktion Inferenzmethoden Lektion 22 Nichtklassische Logiken 1. Modallogiken 2. Lineare Logik 3. Intuitionistische Logik Modallogiken • Prädikatenlogik erster Stufe + Modaloperatoren 2, 3 – 2F : “notwendigerweise F ” – 3F : “möglicherweise F ” – Meta-Operatoren: Aussagen über die Formel F • Axiome von 2, 3 abhängig von vorgesehener Anwendung • Kripke Semantik über Weltmodelle (W, R, U, u): W : Menge der (denkbaren) Welten R: Erreichbarkeitsrelation zwischen Welten aus W U : Universum aller Objekte aller Welten u: Abbildung von W nach U : u(w) = ˆ die in Welt w existenten Objekte Eigenschaften von R bestimmen Axiome der Modaloperatoren • Beweisverfahren: – Sequenzenkalküle – modifizierter Konnektionsbeweiser (Wallen, Otten) – klassischer Konnektionsbeweiser nach (geringer) Aufblähung der Formel (Ohlbach) Inferenzmethoden 187 Nichtklassische Logiken Modallogiken – Semantik • 2F : F gilt in allen von der aktuellen Welt erreichbaren Welten : 2F 1 F F q F R F F F F * j q F : F z F • • • : F z F F • 3F : F gilt in mindestens einer erreichbaren Welt. : : z 3F 1 * q R j F • • • : z q Inferenzmethoden 188 Nichtklassische Logiken Erreichbarkeit und modale Axiome • Grundeigenschaften der Erreichbarkeitsrelation R (D) seriell Für alle w1 ∈ W gibt es ein w2 ∈ W mit w1Rw2 (T) reflexiv wRw für alle Welten w ∈ W (B) symmetrisch w1Rw2 ⇒ w2Rw1 für alle w1, w2 ∈ W (4) transitiv (5) euklidisch w1 Rw2 & w2Rw3 ⇒ w1 Rw3 für alle w1 , w2, w3 ∈ W w1 Rw2 & w1Rw3 ⇒ w2 Rw3 oder w3 Rw2 für alle w1 , w2 , w3 ∈ W • Durch R induzierte Axiome von Modaloperatoren (D) seriell (T) reflexiv 2F ⇒ 3F 2F ⇒ F (B) symmetrisch F ⇒ 23F (4) transitiv (5) euklidisch 2F ⇒ 22F 3F ⇒ 23F Inferenzmethoden 189 Nichtklassische Logiken Die wichtigsten Modallogiken Name Eigenschaften von R Axiome K K4 keine transitiv PL,Df, K PL,Df, K, 4 D D4 seriell seriell, transitiv PL,Df, K, D PL,Df, K, D, 4 B symmetrisch PL,Df, K, B T reflexiv PL,Df, K, T S4 S5 reflexiv, transitiv PL,Df, K, T, 4 reflexiv, transitiv, symmetrisch PL,Df, K, T, B, 4 (+5) • Allgemeine Eigenschaften aller Modallogiken (Df) Definition von 3 (K) Distributivität (RN) Notwendigkeitsregel 3F ⇔ ¬2¬F 2(F ⇒ G) ⇒ (2F ⇒ 2G) aus ` F folgt ` 2F Axiome der (klassischen) Prädikatenlogik (PL) (MP) Modus Ponens Regel aus ` F und ` F ⇒ G folgt ` G Inferenzmethoden 190 Nichtklassische Logiken Beweise in der Modallogik • In K folgt 3F ⇒ 3G aus F ⇒ G – Es gelte F ⇒ G – Dann gilt ¬G ⇒ ¬F – Dann gilt 2(¬G ⇒ ¬F ) – Dann gilt 2¬G ⇒ 2¬F – Dann gilt ¬2¬F ⇒ ¬2¬G – Es folgt 3F ⇒ 3G (Transposition) (RN) (K, MP) (Transposition) (Df) • In K folgt 2F ⇒ 2G aus F ⇒ G – Aus F ⇒ G folgt 2(F ⇒ G) mit RN und hieraus 2F ⇒ 2G mit K • In T gilt F ⇒ 3F – Es gilt 2¬F ⇒ ¬F – Daraus folgt ¬¬F ⇒ ¬2¬F – Es folgt F ⇒ 3F • F ⇒ 2F gilt –`F – ` 2F – ` F ⇒ 2F (T) (Transposition) (Df) trotz der Notwendigkeitsregel nicht = ˆ “F gilt in jeder Welt w ∈ W” = ˆ “Für alle w ∈ W gilt F gilt in jeder von w erreichbaren Welt” = ˆ “Für alle w ∈ W folgt 2F aus F ” Inferenzmethoden 191 Nichtklassische Logiken Extensionsverfahren für Modallogiken • Charakterisierung der Gültigkeit analog – “F gültig gdw. alle Pfade durch F komplementär” – erweiterter Begriff von Pfaden (keine Normalform möglich) – erweiterter Begriff der Komplementarität · Unifizierbarkeit der konnektierter Termfüße · gleichzeitige Erreichbarkeit der Literale bei Auflösung der Modaloperatoren • Konnektionen-orientiertes Pfadüberprüfungsverfahren – operiert direkt auf Formelbaum – erweiterte Definition aktiver Pfade und offener Teilziele • Zwei Unifikationsverfahren für Komplementaritätstest – σQ : Substitution von Variablen durch Terme – σL für Präfixe von Positionen eines Atoms 7→ Standard-Unifikation 7→ Spezielle String-Unifikation Substitutionen codieren Einschränkungen an Reihenfolge von Regelanwendungen Inferenzmethoden 192 Nichtklassische Logiken Lineare Logik • Andersartige Grundoperatoren – Additive, multiplikative und exponentielle Operatoren – kommutative und nichtkommutative Versionen logischer Operatoren – Idempotente und nicht-idempotente Versionen (A 6` A ∧ A) ⇒ sehr kompliziert und von der Fachwelt nur wenig verstanden ⇒ bisher nur in Fragmenten automatisierbar (7→ “Proof Nets”) • Logik höherer Stufe ⇒ Präzisere Verwaltung von Resourcen (Linearität) – Sequenzenkalkül ohne Kontraktion und Ausdünnung – Annahmen werden “verbraucht” • Klassische und nichtklassische Logik simulierbar • Hauptanwendung “Planen” – Analog: lineare Konnektionsmethode (jedes Literal nur einmal konnektierbar) Inferenzmethoden 193 Nichtklassische Logiken Intuitionistische Logik • Andere Interpretation von ∨ , ⇒ , ∃, ¬ – Konstruktiver Beweisbarkeitsbegriff – Größere Aussagekraft von Beweisen → die intuitiv sinnvollere Sichtweise der Logik ? 7→ Logikseminar 6.2. • Intuitionistisch gültige Formeln sind klassisch gültig – Umkehrung gilt nicht: P ∨ ¬P ist kein Theorem – klassische Normalformen (DNF, KNF) nicht gültig • Klassische Logik einbettbar durch Gödel-Transformation – F klassisch gültig gdw. τ (F ) intuitionistisch gültig – Intuitionistische Gültigkeit nicht einbettbar (nur mit großem Umweg über S4) • “Logik des Rechnens” – erlaubt Repräsentation und Ausführung von Algorithmen • Beweisverfahren (analog zur Modallogik S4): – Interaktive gesteuerte Sequenzenkalküle – modifizierter Konnektionsbeweiser – klassischer Konnektionsbeweiser nach Aufblähung der Formel Inferenzmethoden 194 (Wallen, Otten) (Ohlbach) Nichtklassische Logiken Sequenzenkalkül LJ für intuitionistische Logik Wie LK, aber nur eine Formel im Sukzedent erlaubt Axiom ¬-S A ` A Γ,A ` ⊥ Γ ` ¬A ¬-A Γ ` A Γ,¬A ` C ∧ -A Γ,A ` C Γ,A ∧ B ` C ∨ -A Γ,A ` C Γ,B ` C Γ,A ∨ B ` C ( auch C = ⊥) Γ,B ` C Γ,A ∧ B ` C ∧ -S Γ`A Γ`B Γ ` A ∧B ∨ -S Γ ` A Γ ` A ∨B ⇒ -S Γ, A ` B Γ ` A⇒B ⇒ -A Γ ` A ∆,B ` C Γ,∆,A ⇒ B ` C ∀-S∗ Γ` A{x\a} Γ ` ∀x A ∀-A Γ,A{x\t} ` C Γ,∀x A ` C ∃-S Γ ` A{x\t} Γ ` ∃x A ∃-A∗ Γ,A{x\a} ` C Γ,∃x A ` C Γ ` B Γ ` A ∨B Inferenzmethoden ∗ 195 : Eigenvariablenbedingung ( a Nichtklassische Logiken ∈ V “unabhängig”) Inferenzmethoden 196 Nichtklassische Logiken (S ∧ (¬(T ⇒R) ⇒P )) ⇒ (¬((P ⇒Q) ∧ (T ⇒R)) ⇒ (S Klassischer Beweis P`P P, ¬ P ` ⊥ S`S Thin P` ¬ ¬P ¬ −S T`T Thin −S Thin S, ¬ (T ⇒ R) ⇒ P, P ` S ∧ ¬ ¬ P, Q ⇒ −S ∗ S, ¬ (T ⇒ R) ⇒ P ` S ∧ ¬ ¬ P, P ⇒ Q ∧ S, ¬ (T ⇒ R) ⇒ P ` S S ∧ ∧ ` (S ∧ ( ¬ (T ⇒ R) ⇒ P), ¬ ((P ⇒ Q) ( ¬ (T ⇒ R) ⇒ P) ` ∧ R`R ∧ (T ⇒ R) ∧ (T ⇒ R)) ` S ¬ ((P ⇒ Q) ∧ ⇒ −A S, ¬ (T ⇒ R) ⇒ P ` S (T ⇒ R)) ` S ∧ P`P T ⇒ R, T ` R ⇒ −S T⇒R ` T⇒R ¬ −S ` T ⇒ R, ¬ (T ⇒ R) ¬ ¬ P, (P ⇒ Q) S, ¬ (T ⇒ R) ⇒ P, ¬ ((P ⇒ Q) ∧ ¬¬P )) ¬ −A S, P ` S S, P ` ¬ ¬ P S, P ` S ∧ ¬ ¬ P S ∧ ¬ ¬P (T ⇒ R)) ⇒ (S ( ¬ (T ⇒ R) ⇒ P)) ⇒ ( ¬ ((P ⇒ Q) ∧ ∧ ∧ S,P ` S ¬ ¬ P, T ⇒ R −A∗ ¬ ¬ P) (T ⇒ R)) ⇒ (S ∧ ⇒ −S ⇒ −S ¬ ¬ P)) Verzweigungsstruktur S1 ` S0 P1 ` P0 T1 ` T0 R1 ` R0 S1 ` S0 β2 β4 P1 ` P0 β4 β1 β3 Inferenzmethoden 197 ¬ S`S P` ¬ ¬P Thin T S,P ` S S,P ` ¬ ¬ P ¬ −S ∗ ¬ ¬P ∧ ∧ P, ¬ P ` ⊥ ¬− Nichtklassische Logiken ∧ ¬ ¬P ∧ −S ∧ ⇒ −A (S ∧ (¬(T ⇒R) ⇒P )) ⇒ (¬((P ⇒Q) ∧ (T ⇒R)) ⇒ (S Formelbaum mit β -Verzweigungen T0 P 1 Q0 R1 K K T1 R0 K ∧ ¬¬P )) P0 β2 ⇒0 ⇒1 ⇒0 I I ¬1 β3 ¬0 P1 I S1 β4 ¬1 1 ⇒ 3 k I I β1 ¬0 S0 0 ∧ k 3 0 ∧ 0 ⇒ : 1 ∧ y ⇒0 Inferenzmethoden 198 Nichtklassische Logiken (S ∧ (¬(T ⇒R) ⇒P )) ⇒ (¬((P ⇒Q) ∧ (T ⇒R)) ⇒ (S ∧ Intuitionistischer Beweisansatz ? S S S, ¬ (T ⇒ R) ⇒ P, ¬ ((P ⇒ Q) ∧ ∧ ` (S ∧ ( ¬ (T ⇒ R) ⇒ P), ¬ ((P ⇒ Q) ( ¬ (T ⇒ R) ⇒ P) ` ∧ (T ⇒ R)) ` S ∧ ∧ (T ⇒ R)) ` S ¬ ((P ⇒ Q) ∧ ∧ ∧ ¬ ¬P (T ⇒ R)) ⇒ (S ( ¬ (T ⇒ R) ⇒ P)) ⇒ ( ¬ ((P ⇒ Q) ¬ −S ∗ ¬ ¬P ∧ ∧ ¬¬P )) −A∗ ¬ ¬ P) (T ⇒ R)) ⇒ (S ∧ ⇒ −S ⇒ −S ¬ ¬ P)) • ¬ −S nicht anwendbar (Formelkopie nicht erlaubt) • nachfolgendes ∧ −S nicht anwendbar • Klassischer Beweis intuitionistisch nicht durchführbar • Andere Beweisreihenfolge führt zum Erfolg – und ist auch klassisch gültig ⇒ Reihenfolge der Regelanwendungen wichtig – intuitionistischer Kalkül nicht konfluent T1 ` T0 P1 ` P0 R1 ` R 0 β2 P1 ` P0 β3 S1 ` S0 β1 β4 ⇒ Zusätzliche Auflagen an intuitionistisches Konnektionsverfahren – Reihenfolge von Regelanwendungen in verdichteter Form codieren Inferenzmethoden 199 Nichtklassische Logiken Extensionsverfahren für intuitionistische Logik “F gültig gdw. alle Pfade durch F komplementär” • Charakterisierung der Gültigkeit analog zu Modallogiken – erweiterter Begriff von Pfaden (keine Normalform möglich) – erweiterter Begriff der Komplementarität · Unifizierbarkeit der konnektierter Termfüße · gleichzeitige Erreichbarkeit der Literale bei Auflösung von ¬0 , ⇒ 0 und ∀ 0 • Konnektionen-orientiertes Pfadüberprüfungsverfahren – operiert direkt auf Formelbaum – erweiterte Definition aktiver Pfade und offener Teilziele • Zwei Unifikationsverfahren für Komplementaritätstest – σQ : Substitution von Variablen durch Terme – σJ für Präfixe von Positionen eines Atoms 7→ Standard-Unifikation 7→ Spezielle String-Unifikation Substitutionen codieren Einschränkungen an Reihenfolge von Regelanwendungen Inferenzmethoden 200 Nichtklassische Logiken Intuitionistische Logik höherer Stufe • Erlaubt Manipulation von Algorithmen – Synthese aus Spezifikationen, Optimierung, . . . – einheitliche Sprache für Spezifikation, Programmierung, Deduktionsverfahren. . . • Viele verschiedene Formulierungen – – – – – – Martin-Löf’sche Typentheorie Kalkül der Konstrukte System F HOL LCF .. • Interaktive Beweissysteme mit taktischer Steuerung – – – – – AUTOMATH (historischer Vorläufer) NuPRL (modifizierte Typentheorie) ALF (Martin-Löf Typentheorie) LEGO, Coq (Kalkül der Konstrukte) Cambridge LCF Inferenzmethoden 201 Nichtklassische Logiken Inferenzmethoden Lektion 23 Beweisverfahren für nichtklassische Logiken 1. Erweiterte Charakterisierung der Gültigkeit 2. Konnektionsmethode für intuitionistische Logik – Pfadüberprüfungsverfahren – Komplementaritätstest und Präfix-Unifikation 3. Anwendungen und Erweiterungen Charakterisierung intuitionistischer Gültigkeit • Reduktion von ¬0 , ⇒ 0 und ∀ 0 eliminiert Teilformeln – Vorzeitige Anwendung zerstört beweisrelevante Teilformeln ⇒ Anwendung so spät wie möglich und so früh wie nötig • Position: Marker für Anwendung von Reduktionen – codiere ¬0 , ⇒ 0 , ∀ 0 und Atome 0 als Positionskonstante – codiere ¬1 , ⇒ 1 , ∀ 1 als Variable ( = ˆ Abarbeitungszeitpunkt verschiebbar) • Vergleiche Terme konnektierter Atome (7→ σQ ) • Vergleiche Präfixe konnektierter Atome – pre(A) / Präfix von A: Folge der Positionen zwischen Wurzel und A = ˆ Folge der Regeln, die angewandt werden müssen, um A freizulegen – Vergleich durch Unifikation der Präfixe als Strings (7→ σJ ) · Instantiierte Präfixe liefern Reihenfolge der Anwendung von Reduktionen ˆ reduziere ai vor X · zusätzlich: σJ (X) = a1 . . . an = F ist intuitionistisch gültig, wenn es eine Multiplizität µ, eine Substitution σ = (σQ, σJ und eine Menge von unter σ komplementären Konnektionen gibt, so daß jeder Pfad durch F eine solche Konnektion enthält. Inferenzmethoden 201 Nichtklassische Beweiser (S ∧ (¬(T ⇒R) ⇒P )) ⇒ (¬((P ⇒Q) ∧ (T ⇒R)) ⇒ (S Formelbaum mit Polaritäten und Positionen T0 a5 K P 1 Q0 R1 β2 A 11K A6 a 10 I I ¬0 a3 S1 A1 I β1 k P0 a 15 ⇒0 ¬1 a 13 A7 a 16I I ¬1 A2 ¬0 S0 0 ∧ 1 ⇒ 3 β3 P1 ¬¬P )) R0 a 12 A 14K ⇒0 ⇒1 A4 T1 ∧ A9 k β4 3 0 ∧ 0 ⇒ : 1 ∧ y a8 ⇒0 a 0 Präfix von R0 ist a0a8A9a13a15 Präfix von R1 ist a0A2a3A4A6 Inferenzmethoden 202 Nichtklassische Beweiser a 17 A 18 a Konnektionsmethode für die intuitionistische Logik J • Konnektionen-orientiertes Pfadüberprüfungsverfahren – Nicht-Normalform-Verfahren auf Formelbäumen (7→ Lektion 13) – Schrittweise Erhöhung der Multiplizität µ • Aufwendigerer Komplementaritätstest – Term-Unifikation (7→ Robinson / Martelli-Montanari) – Präfix-Unifikation • Zusätzliche Steuerung: Sequenzenbeweisstruktur – offene β -Zweige als erste Leitlinie ⇒ effizientere Auswahl relevanter Konnektionen ⇒ lokale Substitutionen möglich (weniger γ -Kopien erforderlich) Inferenzmethoden 203 Nichtklassische Beweiser Extensionsbeweis P 1 Q0 T 0 R1 a 5K A6 β2 c d A 11K A4 a 10I e I P1 ¬0 a3 I a S1 A1 k β1 3 ∧ a 12 ⇒0 ⇒1 ⇒ T 1 R0 A 14 K A7 b a 15 ⇒0 β3 ∧ P0 ¬1 a 13 f S0 0 a 16I g I ¬1 1 A9 k A2 1 y a 19 : ¬0 β4 3 ∧ A 18 a 17 h 0 ⇒0 a8 ⇒0 a 0 Schritte 1 & 2 1 0 (P ` P ) (S ` S ) e β3 g β4 h 1 0 ? f pre(P 0) = a0 a8 A9a10 A11, pre(P 1 ) = a0 a8 a17 A18a19 pre(S 1 ) = a0 A1, pre(S 0 ) = a0 a8 a16 σJ ≡ {A9 \ a17B, A18 \ Ba10 C, A11 \ Ca19, A1 \ a8 a16 } ( B,C neu) β4 β 3 Inferenzmethoden Schritt 3 • g • ? c e β3 1 (R ` R ) β2 d f β1 a 0 β4 ? b h pre(R0 ) = a0 a8 a17 Ba13a15 , pre(R1 ) = a0 A2a3 A4 A6 Erweitere σJ um {A2 \ a8 a17 D, B \ Da3 E, A4 \ Ea13 a15, A6 \ } β4 β 1 β 3 β 2 204 Schritte 4 & 5 (T 1 ` T 0) • c β2 d • e β3 f (P 1 ` P 0 ) a b β1 • g β4 h pre(P 0 ) = a0 a8 a17 DA7, pre(P 1 ) = a0 a8 a17Da3 Ea10Ca19 pre(T 0) = a0 a8 a17 Da3 Ea13a15 a5 , pre(T 1) = a0 a8 a17 Da3 Ea13A14 Erweitere σJ um {A7 \ a3 Ea10Ca19, A14 \ a15a5 Nichtklassische Beweiser Extensionsbeweis – induzierte Sequenzenstruktur axiom ( A14, a5 ): T 1 ` T 0 • axiom ( A11, a19 ): P 1 ` P 0 • •¬ – A ( A18 ) • ⇒ – S ( a10 ) e axiom ( A1, a16 ): S 1 ` S 0 • g a ∧ Inferenzmethoden ⇒ – A ( β2 ) • • ⇒ – S ( a13 ) c ∧ axiom ( A6, a15 ): R1 ` R0 • – S ( β3 ) • •¬ – A ( A9 ) •¬ – S ( a3 ) – S ( β4 ) • • ∧ – A (unmarkiert) • ⇒ – S ( a8 ) • ⇒ – S ( a0 ) 205 d axiom ( A7, a19 ): P 1 ` P • •¬ – A ( A1 f ⇒ – A ( β1 ) • • ¬ – S ( a17 ) h Nichtklassische Beweiser b Präfix-Unifikation • Unifiziere Präfixe konnektierter Atome – Unifizierbar = ˆ Atome werden mit derselben Folge von Reduktionen freigelegt • String-Unifikation mit speziellen Restriktionen – Eindeutigkeit: jedes Symbol erscheint maximal einmal in einem Präfix-String – Baumeigenschaft: gleiche Symbole sind nur am Anfang zweier Präfix-Strings ⇒ Verfahren deutlich einfacher als String-Unifikation taST eF uL und tabU lAR unifizierbar zu tableaux – σ = {S \b, T \l, F \a, L\x, U \, A\ea, R\ux} • Betrachte allgemeinste Unifikatoren – aX und Y b unifizierbar mit σ1 = {X \b, Y \a}, σ2 = {X \cb, Y \ac} allgemeinster Unifikator σ = {X \Zb, Y \aZ} → ‘aZb0 ⇒ keine vorzeitige Festlegung der Reduktionsreihenfolge im Extensionsverfahren • Finitäre Unifikationstheorie – bis zu 1 (2n)! 2 (n!)2 ∈ Inferenzmethoden 22n √ O( n ) allgemeinste Unifikatoren 206 Nichtklassische Beweiser Präfixunifikation – bildhaft • Methode: Systematische Aufzählung aller Kombinationen • Schreibe ersten String in Titelzeile einer Tabelle – Konstanten belegen einen kleinen Slot (ein Symbol) – Variablen belegen einen großen (dehnbaren) Slot • Verteile zweiten String auf die Zeilen der Tabelle – – – – – Identische Anfangsstrings werden identisch verteilt Konstanten müssen im Bereich von Variablen erscheinen Variablenbereiche sind beliebig dehnbar Beginne mit kürzester Ausdehnung der Variablenbereiche Verlängere Variablenbereiche systematisch und lese Substitution aus tabelle ab • Unifiziere pre(R1 ) und pre(R0 ) in Schritt 3 a0 A2 a0 a8 a17 a0 a8 a17 a0 a8 a17 a3 B B B A4 | A6 σJ a13 a15 {A2\a8a17D, B\Da3E, A4\Ea13a15, A6\} a13 a15 {A2\a8a17D, B\Da3E, A4\Ea13, A6\a15} a13 a15 {A2\a8a17D, B\Da3A4F, A6\F a13a15} Inferenzmethoden 207 Nichtklassische Beweiser Präfixunifikation – Algorithmus Transformiere Gleichungssysteme a‘la Martelli-Montanari • Start: Γ = {si=|ti | i = 1, .., n}: System von Präfixgleichungen σ = ∅ leere Substitution: T = {Πi→∆i, Θi | i = 1, .., k}: Menge von Transformationsregeln • Algorithmus (nichtdeterministisch): while Γ 6= ∅ do a. select the leftmost equation s=t from Γ b. Γ ← Γ \ {s=t} c. select a rule r = Π→∆, Θ from T which is applicable to {s=t}; if no rule is applicable then stop with failure d. apply r to {s=t} and let ∆0, Θ0 be the result e. Γ ← ∆0 ∪ Θ0(Γ); σ ← Θ0(σ) ∪ Θ0 stop with success and return σ . • Resultierende Substitution σ ist idempotent • Algorithmus ist vollständig – alle Substitutionen mit geeigneter Auswahl von Regeln erzeugbar – Prolog-Programm liefert alle allgemeinsten Unifikatoren Inferenzmethoden 208 Nichtklassische Beweiser Präfixunifikation – Transformationsregeln für J R1. R2. R3. R4. R5. R6. R7. R8. R9. {ε = ε|ε} → {}, {} {Xs = ε|Xt} → {s = ε|t}, {} {V s = z|ε} → {s = ε|ε}, {V \z} {ε = ε|t+} {Cs = ε|V t} {V s = ε|C1t} → {V t = ε|Cs}, {} → {s = ε|C1t}, {V \ε} {V s = z|C1C2t} → {s = ε|C2t}, {V \zC1} {V s+ = ε|V1 t} → {V1 t = V |s+ }, {} {V s+ = z +|V1 t} → {V1 t = V 0 |s+}, {V \z +V 0} R10. {V s = z|Xt} – – – – → {t+ = ε|ε}, {} → {V s = zX|t}, {}, where V 6=X, and s=ε or t6=ε or X ∈ C V : Variablenmenge, C : Konstantenmege, V ∗ : Menge von Hilfsvariablen s, t, z : Strings über V ∪ C ∪ V ∗ , s+, t+, z + : nichtleere Strings X ∈ V ∪ C ∪ V 0 , V 6=V1 ∈ V ∪ V 0 , C, C1 , C2 ∈ C (Einzelsymbole) V 0 ∈ V 0 neue Variable, die bisher nicht in σ vorkam Ähnliche Transformationsregeln für andere Logiken Inferenzmethoden 209 Nichtklassische Beweiser Präfixunifikation für Γ = {aBcDEf =ε|aBGhiJ} — (1) Inferenzmethoden 210 Nichtklassische Beweiser {aBcDEf =ε|aBGhiJ} , {} R3 −→ {BcDEf =ε|BGhiJ} , {} R3 −→ {cDEf =ε|GhiJ} , {} R4 −→ {GhiJ=ε|cDEf } , {} R6 R6 und R10 anwendbar ?? 1. −→ {hiJ=ε|cDEf } , {G \ ε} −→ ∇ keine Regel anwendbar 2. −→ {GhiJ=c|DEf } , {} R9 und R10 anwendbar R10 R9 (a) −→ {DEf =X 0 |hiJ} , {G \ cX 0} R7 und R10 anwendbar R7 i. −→ {Ef =ε|iJ} , {G \ cX 0, D \ X 0 h} R6 R6 und R10 anwendbar ?? A. −→ {f =ε|iJ} , {G \ cX 0, D \ X 0h, E \ ε} −→ ∇ keine Regel anwendbar R10 B. −→ {Ef =i|J} , {G \ cX 0, D \ X 0h} R9 −→ {J=Y 0 |f } , {G \ cX 0, D \ X 0 h, E \ iY 0 } R10 −→ {J=Y 0 f |ε} , {G \ cX 0, D \ X 0 h, E \ iY 0 } R5 −→ {ε=ε|ε} , {G \ cX 0, D \ X 0h, E \ iY 0, J \ Y 0f } R1 −→ {} , {G \ cX 0, D \ X 0h, E \ iY 0, J \ Y 0f } R10 σ0 R10 ii. −→ {DEf =X 0 h|iJ} , {G \ cX 0} −→ {DEf =X 0 hi|J} , {G \ cX 0 } R9 −→ {J=Y 0 |Ef } , {G \ cX 0, D \ X 0 hiY 0 } R10 −→ {J=Y 0 E|f } , {G \ cX 0, D \ X 0 hiY 0 } R10 −→ {J=Y 0 Ef |ε} , {G \ cX 0, D \ X 0 hiY 0} R5 −→ {ε=ε|ε} , {G \ cX 0, D \ X 0hiY 0 , J \ Y 0 Ef } R1 −→ {} , {G \ cX 0, D \ X 0hiY 0 , J \ Y 0 Ef } Inferenzmethoden 211 Nichtklassische Beweiser σ1 Präfixunifikation für Γ = {aBcDEf =ε|aBGhiJ} — (2) R10 2 (b) −→ {GhiJ=cD|Ef } , {} R9 und R10 anwendbar R9 i. −→ {Ef =X 0 |hiJ} , {G \ cDX 0} R7 und R10 anwendbar R7 ?? A. −→ {f =ε|iJ} , {G \ cDX 0, E \ X 0h} −→ ∇ R10 keine Regel anwendbar R10 B. −→ {Ef = X 0h|iJ} , {G \ cDX 0} −→ {Ef =X 0hi|J} , {G \ cDX 0} R9 −→ {J=Y 0 |f }, {G \ cDX 0, E \ X 0hiY 0 } R10 −→ {J=Y 0 f |ε}, {G \ cDX 0, E \ X 0hiY 0 } R5 −→ {ε=ε|ε}, {G \ cDX 0, E \ X 0 hiY 0, J \ Y 0f } R1 −→ {} , {G \ cDX 0, E \ X 0hiY 0, J \ Y 0f } R10 σ2 R10 ii. −→ {GhiJ=cDE|f } , {} −→ {GhiJ=cDEf |ε}, {} R5 ?? −→ {hiJ=ε|ε} , {G \ cDEf } −→ ∇ keine Regel anwendbar Resultierende allgemeinste Unifiatoren (X 0 , Y 0 neue Variablen) a B c a B a B a B D G G E h i J h i J G h i Inferenzmethoden f σ0 = {G\cX 0, D \X 0h, E \iY 0, J \Y 0f } J σ1 = {G\cX 0, D \X 0hiY 0, J \Y 0Ef } σ2 = {G\cDX 0, E \X 0hiY 0, J \Y 0f } 212 Nichtklassische Beweiser Anwendung: Beweis- und Programmentwicklungssystem NuPRL Preprocessing- Sequenz (Standard LJ - +. . . ) Formelbaum Matrixbeweis Positionsmarker, in MJ Polaritäten, ... (Wallen) Erweiterte Konnektionsmethode T Konversion A MJ 7→ LJ K T (ohne Suche) I K ??? NuPRL Beweis R ? Einbettung - (ohne Suche) LJ Inferenzmethoden ? LJ –Beweis (erweiterter LJ ) 213 Simulation LJN S 7→ LJ ? (ohne Suche) LJN S –Beweis (Fitting-Sequenzen) Nichtklassische Beweiser Erweiterungsmöglichkeiten • Einbettung in Beweis- und Programmentwicklungssystem – – – – Umwandlung Sequenzen in markierten Formelbaum Transformation von Matrixbeweisen in LJ Integration in das NuPRL System (ML/Lisp–Implementierung) Analoge Techniken für Induktion 7→ S. Schmitt ⇒ Steuerung von Programmsyntheseverfahren • Erweiterung auf Modallogiken – uniformes Extensionsverfahren – Transformationsregeln für Präfix-Unifikation in jeder Logik – Transformation von Matrixbeweisen in Sequenzenbeweise 7→ J. Otten 7→ S. Schmitt • Erweiterung auf lineare Logik – Entwurf einer Charakterisierung .. – 7→ H. Mantel 7→ Studien- und Diplomarbeiten . . . Inferenzmethoden 214 Nichtklassische Beweiser Inferenzmethoden Lektion 24 Ausblick 1. Systeme 2. Anwendungen 3. Zukunft der Deduktion Systeme • NQTHM (Boyer & Moore) – Logik und Induktion • OTTER (Wos) – bisher der erfolgreichste Beweiser (Resolution) • MKRP (Siekmann) – Deutschlands erster Beweiser (Resolution, Gleichheit, Sorten) • SETHEO / PARTHEO (Bibel, Letz, Schumann) – Compilierender Beweiser (Konnektionsmethode, Reduktionen, Parallelität) • KoMeT (Bibel, Rath, Egly, Brüning) – Berechnungsadäquater Beweiser • TPS (Andrews) – klassische Logik höherer Stufe (Matrixmethoden) Inferenzmethoden 214 Ausblick Anwendungen • Logische Programmiersprachen (Prolog) – Hornklausellogik + Kontrollmechanismen (cut!) – Turingmächtig, effiziente “Compiler” vorhanden • Formale Mathematik – automatische Beweise für mathematische Teiltheorien – interaktive Beweise für jegliche Form von Mathematik • Programmverifikation – höchste Stufe des Software-TÜV • Programmsynthese – Erzeugung korrekter Algorithmen aus formalen Spezifikationen – Programmverifikation während der Programmentwicklung • Wissensrepräsentation & Expertensysteme mehr als ein akademisches Spielzeug Inferenzmethoden 215 Ausblick Zukunftsaussichten der Deduktion • Grundtechniken für Prädikatenlogik vorhanden – Basisverfahren – Optimierungen und Reduktionen – hinreichende Effizienz • Viele sinnvolle Erweiterungen – Gleichheit, Induktion, andere Logiken – Techniken noch verbesserungswürdig • Beweiserbau = Theorie + Softwaretechnik – Effizienzsteigerung ist das größte Problem – wesentliche Fortschritte durch Hardwareverbesserung • Viele sinnvolle Anwendungen Zukunftsträchtiges Forschungs- und Arbeitsgebiet Inferenzmethoden 216 Ausblick Vertiefungsmöglichkeiten und Ergänzungen • Praktikum Beweiserbau – Expermiente mit verschiedenen Beweistechniken • Vorlesung Wissensrepräsentation – Darstellung “natürlicher” Schlußmethoden im Rechner – nicht-monotones, vages, Meta-Schließen, Schlüsse über Wissen und Glauben . . . • Vorlesung Automatisierte Logik und Programmierung – Konstruktive Typentheorie (Logik höherer Stufe + . . . ) – Beweiseditoren, Taktiken, Entscheidungsprozeduren – Automatisierte Softwareentwicklung — nur noch als Skript — • Vorlesungen von Prof. Walther – Induktion, Rekursion, Verifikation, allgemeine KI . . . • Mitarbeit in der Forschung – Konstruktives Beweisen und Programmsynthese – KoMeT – MuSE Inferenzmethoden 217 (Studien-/Diplomarbeiten, HiWi-Job) 7→ J. Otten, S. Schmitt, D. Korn 7→ T. Rath 7→ E. Sandner Ausblick