Übersicht. 10. Logische Inferenzsysteme
|
|
- Klaudia Schuler
- vor 7 Jahren
- Abrufe
Transkript
1 Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlußfolgern 6. Logisch schließende Agenten 7. Prädikatenlogik 1. Stufe 8. Entwicklung einer Wissensbasis 9. Schließen in der Prädikatenlogik 1. Stufe 10. Logische Inferenzsysteme IV Logisch Handeln V Unsicheres Wissen und Schließen VI Lernen VII Kommunizieren, Wahrnehmen und Handeln
2 Kategorien von Schlussfolgerungssystemen Theorem Beweiser (SAM, AURA, OTTER) und logische Programmiersprachen (Prolog, MRS, LIFE) Regelbasierte Produktionssysteme (OPS-5, CLIPS, SOAR) Frame-Systeme (OWL, FRAIL, KODIAK) und semantische Netze (SNEPS, NETL, Conceptual Graphs) Terminologische Logiken (Beschreibungslogiken; KL-ONE, CLASSIC, LOOM)
3 Grundaufgaben von Schlussfolgerungssystemen 1. Hinzufügen von Fakten (Wahrnehmungen oder Schlußfolgerungen) zur Wissensbasis (Funktion TELL). 2. Herleiten von Fakten aus einem neuem Faktum und der Wissensbasis (bei Vorwärtsverkettung Teil von TELL). 3. Fragen beantworten (Funktion ASK). Mit Ja/Nein oder durch Instanziierungen). 4. Feststellen, ob eine Frage bereits in der Wissensbasis enthalten ist (eingeschränkte Version von ASK). 5. Entfernen von Sätzen aus der Wissensbasis.
4 Implementierung der Datentypen Vorbemerkung: Ein/Ausgabe für Interaktion mit Benutzer muss gesondert behandelt werden. Interne Repräsentation: Basis-Datentyp Compound mit einem Feld für den Operator und einem Feld für die Argumente, z.b. wirddersatzc= P(x) P(y) in folgende interne Darstellung umgesetzt: OP(c) = ARGS (c) = [P(x), P(y)]. Naives Abspeichern von Sätzen in einer linearen Liste hat einen Suchaufwand von O(n), ob ein Satz in der Liste enthalten ist, und beim Abspeichern ebenfalls einen Aufwand von O(n), falls Duplikate erkannt und entfernt werden sollen (ohne Duplikat-Erkennung nur O(1)). Besser: Indexierung
5 Indexierung Implementierung der Wissensbasis als Hash-Tabelle: 1. Ansatz: Reserviere jeweils eine Speicherzelle für jeden Satz. Nachteile: 1. Reflektiert nicht die strukturbildenden Elemente der Logik 2. Kann nicht mit Variablen umgehen. Daher nicht geeignet für Anfragen wie: Suche eine Implikation mit P auf der rechten Seite (Nachbedingung) SucheMatchzu x Bruder (Richard, x) mit Bruder (Richard, John) 2. Ansatz: Indiziere nach Prädikatsymbolen und teile nach 4 Kategorien auf: - Liste von positiven Literalen für das Prädikatsymbol - Liste von negativen Literalen für das Prädikatsymbol - Liste von Sätzen mit Prädikatssymbol in Nachbedingung - Liste von Sätzen mit Prädikatssymbol in Vorbedingung Verfeinerung des 2. Ansatz: Unterindex für die konstante Argumente
6 Beispiel für Indizierung logischer Sätze
7 Unifikationsalgorithmus (1) Mit Indexierung ist die Unifikation ziemlich effizient, allerdings erhöht der Occur-Check in der Prozedur Unify-Var die Komplexität von O(n) auf O(n 2 ), wobei n die Länge des Ausdrucks bezeichnet.
8 Unifikationsalgorithmus (2)
9 Logische Programmiersprachen Programm und die Eingabe: logische Sätze Herleitung von Schlußfolgerung: logische Inferenz (Beweis) Algorithmus = Logik + Kontrolle Logische Programmiersprachen ermöglichen das Schreiben von Algorithmen, indem sie logische Sätze mit Informationen anreichern, um den Inferenzprozess zu kontrollieren. Verbreitetestes Beispiel: Prolog Beispieldefinition: member (X, [X L]) x, l Member (x, [x l]) member (X, [Y L]) :- member (X, L) x, y, l Member (x, l) Member (x, [y l])
10 Eigenschaften von Prolog Programm besteht aus Folge von (mit und verknüpften) Sätzen, alle Variablen sind allquantifiziert und disjunkt in verschiedenen Sätzen. Als Sätze sind nur Hornklauseln zugelassen. Terme: Konstanten, Variablen, Funktionsausdrücke Anfragen: Terme, Konjunktionen, Disjunktionen, Negation as Failure: Das Ziel P gilt als bewiesen, wenn P nicht hergeleitet werden kann. Syntaktisch disjunkte Terme sind disjunkt, d.h. man kann nicht A=B oder A = f(x) ausdrücken, falls A eine Konstante ist. Viele eingebaute Prädikate für Arithmetik, Ein/Ausgabe usw., deren Code bei Aufruf einfach ausgeführt wird.
11 Implementierung von Prolog Inferenz mittels Rückwärtsverkettung und Tiefensuche Reihenfolge der Abarbeitung: von links nach rechts & oben nach unten Kein Occur-Check aus Effizienzgründen Prolog liefert alle Lösungen zu einer Anfrage nacheinander: member (loc (X,X), [loc (1,1), loc (2,1), loc (2,2)]) X=1 und X=2 Effizienzsteigerungen für den Interpreter Es werden nicht alle Lösungen für ein Teilziel generiert, sondern nur eine Lösung, sowie ein Versprechen (choice point), weitere zu generieren, wenn die erste Lösung vollständig untersucht wurde. Substitutionen für Variablen werden nicht als Bindungslisten, sondern als Wertbindungen repräsentiert. Zum effizienten Rücksetzen der Variablen wird ein Stack (Trail) verwendet.
12 Kompilierung von Prolog Da der Instruktionsvorrat von den üblichen Computern schlecht zur Semantik von Prolog passt, kompilieren die meisten Prolog-Compiler in eine Zwischensprache, vor allem die Warren Abstract Machine oder auch in andere Sprachen wie LISP oder C. Die Klauseln für Member werden nicht in einer Datenbasis gesucht, sondern sind in die Prozedur eingebaut. Die Variablenbindungen werden auf einem Stack (trail) verwaltet. Continuation:Speichern von Informationen zur Fortsetzung des Aufrufs
13 Parallelisierung von Prolog Oder-Parallelität: Ein Ziel kann mit vielen Literalen unifiziert werden, die unabhängig voneinander untersucht werden können. Und-Parallelität: Die Konjunktionen im Hornklausel-Rumpf werden parallel überprüft. Problem: konsistente Bindungen für Variablen. Effizienz (LIPS = Logical Instructions Per Second): Standard-Prolog-Compiler (1990 Workstations): LIPS Hochleistungs-Compiler (1990): Millionen LIPS PIM (Parallel Inference Machine; 5th Gen Project: LIPS
14 Logische Constraintsprachen (CLP) Erweiterung von Prolog um Constraints über Werten,z.B.x>3. Beispiel: Definition eines Dreiecks: Dreieck (x,y,z) (x>0) (y>0) (z>0) (x+y>z) (y+z>x) (x+z>y) Dreieck (3,4,5) kann sowohl in Prolog als auch CLP bestätigt werden. aber Dreieck (x,4,5) liefert nur in CLP die Antwort: {x>1 x<9} Auch symbolische Constraints wie Person (p) möglich, die nicht wie in Prolog sofort instantiiert werden, sondern verzögert ausgewertet werden (Least Commitment).
15 Fortgeschrittene Kontrollmöglichkeiten Metareasoning: Schlussfolgern über den Schlußfolgerungsprozess Beispiel1: Was ist das Einkommen der Gattin des Präsidenten? Einkommen (s,i) & verheiratet (s, p) & Beruf (p, Präsident) Ineffizient, daher besser die Reihenfolge der Anfrage umdrehen. Beispiel2: Welche Personen sind aus derselben Stadt wie der Präsident? Bürger (p, stadt) & Bürger (x, stadt) & Beruf (p, Präsident) Statt bei fehlgeschlagenem Beweis des letzten Literals eine andere Alternative beim vorletzten zu probieren (Backtracking), sollte man gleich zum ersten Literal zurückspringen (Backjumping). Außerdem kann man sich die fehlgeschlagene Variablenkombination merken (dependency directed backtracking). Oft ist es günstig, sich durchgeführte Inferenzen zu merken, um diese nicht noch mal herleiten zu müssen. Problem: Was soll man vergessen?
16 Theorem Beweiser (1) Unterschied zwischen logischen Programmiersprachen und Theorem- Beweisern: - Hornklauseln vs. volle Prädikatenlogik 1. Stufe - implizite vs. explizite Repräsentation der Kontrolle Beispiel für Kontrollinformationen in OTTER: - Aufteilung der Klauseln in wichtige und nutzbare gemäß der Set of Support Strategie - Umformung von Gleichungen in Rewrite-Regeln, die nur in einer Richtung benutzt werden, z.b. x+0=x. - Steuerungswissen (z.b. Gewicht von Klauseln) und Filterwissen (Ignorieren von Teilzielen).
17 Theorem Beweiser (2) Erweiterung von Prolog zu Theorem-Beweiser in PTTP - Occur-Check - Statt Tiefensuche iterative Tiefensuche - Zulassen negierter Literale - Eine Klausel mit n Literalen wird als n Klauseln gespeichert, z.b. für A B C zusätzlich B C A sowie C B A (kann sehr ineffizient sein). - Statt Input-Resolution lineare Input-Resolution Theorem Beweiser als Assistenten Einsatz zur Programmverifikation (und Synthese)
18 Architektur des OTTER - Theorem - Beweises
19 Vorwärtsverkettung mit Produktionsregeln Vereinfachung zu Theorem-Beweiser: Es werden Regeln mit Variabeln gegen eine Faktenbasis ohne Variablen abgeglichen (Pattern Matching statt Unifikation). Typischer Aufbau: - Working Memory (Faktenbasis). - Regeln mit Kondition und Aktion (jeweils typischerweise mit & verknüpft). Aktionen dürfen auch Elemente des Working Memory löschen oder verändern. - Vergleichsphase: In einem Inferenzzyklus werden alle Regeln berechnet, deren Konditionen aufgrund des Working Memory erfüllt sind. - Konfliktauflösung: Aus diesen Regeln wird eine ausgewählt und deren Aktion ausgeführt. Beispiele: OPS-5, SOAR, ACT.
20 Konfliktlösungstrategien Beispiele: - Keine Wiederholung (einer gerade gefeuerten Regel) - Spezifizität (Bevorzuge spezifischere Regeln). Bsp.: (1) Säugetier (x) => add Beine (x,4) (2) Säugetier (x) & Mensch (x) => add Beine (x,2) (2) ist spezifischer als (1). - Regelprioritäten (Zusatzwissen). - Aktualität (Bevorzuge Regeln, die auf gerade geänderte Einträge im Working Memory Bezug nehmen)
21 Beobachtungen: Vergleichsphase (1) Oft enthalten Regeln gleiche Elemente in der Kondition. Sie sollten nicht in jeder Regel neu überprüft werden müssen. (2) Von einem Inferenzzyklus zum nächsten ändert sich das Working Memory oft nur geringfügig. Daher sollten nur die Regeln überprüft werden, die von den Änderungen betroffen sind.
22 Beispiel für Kompilierung im RETE-Algorithmus Regelbasis: A(x) & B(x) & C(y) => Add D(x) A(x) & B(y) & D(x) => Add E(x) A(x) & B(x) & E(x) => delete A(x) Working Memory: {A(1), A(2), B(2) B(3), B(4), C(5)} A=E
23 Frame-Systeme und semantische Netze Grafische Wissensnotationen wurden schon Ende des 19. Jahrhunderts als "Logik der Zukunft" propagiert. Auf semantischer Ebene besteht aber kein grundlegender Unterschied zur Prädikatenlogik 1. Stufe. Kernmechanismen: - Vererbung entlang von Kanten mit Default-Werten - Zugeordnete Prozeduren möglich, um die Beschränkungen in der Ausdrucksstärke zu kompensieren. Vorteile grafischer Notationen: - bessere Lesbarkeit für Menschen. - durch Vereinfachungen in der Ausdrucksstärke wird der Inferenzprozess effizienter und transparenter (z.b. Verfolgen von Kanten im Netz) Nachteile: - oft unklare Semantik der Graphen (z.b. bei multipler Vererbung); Klärung nur im Programmcode. - Effizienzprobleme aufgrund von Nicht-Monotonie wegen Defaults.
24 Beispiel für Frame
25 Grundlegende Beziehung in semantischen Netzen
26 Mehrfachvererbung
27 Basis-Interpreter für semantische Netze (1)
28 Basis-Interpreter für semantische Netze (2)
29 Beschreibungslogiken (Terminologische Logiken) Ziel: Definition von Kategorien, so dass aufgrund der Eigenschaften einer Kategorie bzw. eines Objektes dessen Zugehörigkeit zu einer Kategorie ermittelt werden kann (Subsumption bzw. Klassifikation). Beispiel1 (Junggeselle): And (Unverheiratet, Erwachsener, Männlich) Beispiel2 (Mann mit mindestens drei arbeitslosen und mit einem Doktor verheirateten Söhnen und zwei Töchtern, die Professor in Chemie oder Physik sind): And (Mann, AtLeast (3 Sohn), Atleast (2 Tochter) (All (sohn, And (arbeitslos, verheiratet, all (Partner Doktor))) (All (Tochter, And (Professor, Fills (Fach, Physik, Chemie)))) Effizienzfrage: Wie aufwendig ist Subsumption in Abhängigkeit der Ausdrucksstärke der Sprache?
30 Sprache für Beschreibungslogik in CLASSIC Effizient interpretierbaren Beschreibungslogiken fehlen meist Operatoren für Negation und Disjunktion (z.b. Or oder Some ; Fills & OneOf erlauben Disjunktion nur für explizit aufgezählte Individuen).
31 Belief Revision (1) Implementierung von "Retract": Rücknahme oder Änderung einer Aussage, z.b. wegen Speicherbereinigung (Vergessen) Änderungen in der Welt Änderungen von Default-Annahmen Korrektur von Fehlinformationen Problem: Gewährleistung der Konsistenz der Datenbasis, da aus den geänderten Aussagen andere Aussagen hergeleitet sein können. Lösung: Truth-Maintenance-Systeme (TMS) Drei Varianten: 1. Chronologische Backtracking: Ziehe alle Schlussfolgerungen bis zu dem Punkt zurück, wo die geänderte Aussage das erste Mal benutzt wurde.
32 Belief Revision (2) 2. Justification-Based TMS (JTMS): Speichere zu jeder Schlussfolgerung die direkten Gründe (justifications) für ihre Herleitung. Wenn ein Grund ungültig wird, dann überprüfe, ob für die betroffene Schlußfolgerung noch andere Gründe zutreffen. Wenn nicht, ziehe sie zurück und überprüfe rekursiv die Auswirkungen. Problem: zirkuläre Gründe. Lösung: Unterscheidung in "sichere" und "unsichere" Gründe. 3. Assumption-Based TMS (ATMS): Speichere zu jeder Schlussfolgerung die Basisannahmen (Assumptions), die zu ihrer Herleitung geführt haben. Wenn sich etwas ändert, überprüfe anhand ihrer Basisannahmen, ob eine Schlussfolgerung immer noch gilt. Vorteile gegenüber JTMS: Kein Problem mit Zyklen, Behandlung multipler Zustände möglich. Nachteile: Skalierungsproblem, Behandlung von unsicherem Wissen.
Übersicht. Übersicht. Geschichte. Universelle Instantiierung
Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern 7. Logische Agenten 8. Prädikatenlogik 1. Stufe 9. Schließen in der Prädikatenlogik 1. Stufe 10. Wissensrepräsentation IV
MehrÜbersicht. Künstliche Intelligenz: 9. Schließen in der Prädikatenlogik 1. Stufe Frank Puppe 1
Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern 7. Logische Agenten 8. Prädikatenlogik 1. Stufe 9. Schließen in der Prädikatenlogik 1. Stufe 10. Wissensrepräsentation IV
MehrÜbersicht. Übersicht. Universelle Instantiierung. Geschichte. Universelle und Existentielle Instantiierung. Existentielle Instantiierung
Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern 7. Logische Agenten 8. Prädikatenlogik 1. Stufe 9. Schließen in der Prädikatenlogik 1. Stufe 10. Wissensrepräsentation IV
MehrÜbersicht. Universelle Ontologien. Elemente der universellen Ontologie. Aspekte der universellen Ontologie. Maße. Repräsentation von Kategorien
Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern 7. Logische Agenten 8. Prädikatenlogik 1. Stufe 9. Schließen in der Prädikatenlogik 1. Stufe 10. Wissensrepräsentation IV
MehrÜbersicht. 9. Schließen in der Prädikatenlogik 1. Stufe
Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlußfolgern 6. Logisch schließende Agenten 7. Prädikatenlogik 1. Stufe 8. Entwicklung einer Wissensbasis 9. Schließen in der Prädikatenlogik
MehrÜbersicht. 7. Prädikatenlogik 1. Stufe
Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlußfolgern 6. Logisch schließende Agenten 7. Prädikatenlogik 1. Stufe 8. Entwicklung einer Wissensbasis 9. Schließen in der Prädikatenlogik
MehrÜbersicht. Prädikatenlogik höherer Stufe. Syntax der Prädikatenlogik 1. Stufe (mit Gleichheit)
Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern 7. Logische Agenten 8. Prädikatenlogik 1. Stufe 9. Schließen in der Prädikatenlogik 1. Stufe 10. Wissensrepräsentation IV
MehrKünstliche Intelligenz Logische Agenten & Resolution
Künstliche Intelligenz Logische Agenten & Resolution Stephan Schwiebert WS 2009/2010 Sprachliche Informationsverarbeitung Institut für Linguistik Universität zu Köln Inferenz-Algorithmus Wie könnte ein
MehrEigenschaften der Resolution für PL1 Formeln
Eigenschaften der Resolution für PL1 Formeln Widerlegungsvollständigkeit (ohne Beweis): Sofern man Resolution auf eine widersprüchliche Klauselmenge anwendet, so existiert eine endliche Folge von Resolutionsschritten,
MehrProgrammiersprache Prolog
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 6.2 Logikprogrammierung Prolog 240 Programmiersprache Prolog Prolog-Programm ist Liste von Fakten (einelementige Hornklausel) und Regeln (mehrelementige
MehrGrundlagen der Künstlichen Intelligenz
Grundlagen der Künstlichen Intelligenz 28. Aussagenlogik: DPLL-Algorithmus Malte Helmert Universität Basel 2. Mai 2014 Aussagenlogik: Überblick Kapitelüberblick Aussagenlogik: 26. Grundlagen 27. Logisches
MehrLogikprogrammierung. Berechnung durch Resolution Die Programmiersprache Prolog
Logikprogrammierung Berechnung durch Resolution Die Programmiersprache Prolog Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 6.1 Logikprogrammierung Berechnung durch Resolution 213 Resolution
MehrFragen zum Nachdenken: Wie könnte man das Fehlen eines Attribut-Wertes interpretieren?
Attribut-Werte-Paare Eine Eigenschaft kann beschrieben werden durch ein Paar [a,w]. Dabei bezeichnet a das Attribut und w den konkreten Wert aus dem Wertebereich W a des Attributs. Die Eigenschaften eines
MehrDas Programm ist deterministisch: es gibt für jedes Ziel höchstens eine Klausel, die zur erfolgreichen Ableitung des Zieles
Green Cuts Klauseln zum Mischen zweier geordneten Listen: merge ( [X Xs ], [Y Ys ], [X Zs ] ) : X < Y, merge ( Xs, [ Y Ys ], Zs ). (1) merge ( [X Xs ], [Y Ys ], [ X,Y Zs ] ) : X =:= Y, merge (Xs, Ys, Zs
MehrEigenschaften der SLD-Resolution
Eigenschaften der SLD-Resolution Vollständigkeit der SLD-Resolution für Hornklauseln Sei F eine inkonsistente Hornklauselmenge. Dann gibt es eine SLD-Widerlegung von F. Beweisskizze: Für inkonsistentes
MehrLogische und funktionale Programmierung
Logische und funktionale Programmierung Vorlesung 11: Logikprogramme Babeş-Bolyai Universität, Department für Informatik, Cluj-Napoca csacarea@cs.ubbcluj.ro 19. Dezember 2016 1/55 WIEDERHOLUNG: HORN-KLAUSELN
MehrKünstliche Intelligenz
George F. Luger 2008 AGI-Information Management Consultants May be used for personal purporses only or by libraries associated to dandelon.com network. Künstliche Intelligenz Strategien zur Lösung komplexer
MehrKünstliche Intelligenz
Künstliche Intelligenz Bearbeitet von Uwe Lämmel, Jürgen Cleve 4., aktualisierte Auflage 2012. Buch. 336 S. ISBN 978 3 446 42758 7 Format (B x L): 18 x 24,5 cm Gewicht: 717 g Weitere Fachgebiete > EDV,
Mehr1 Inhalt der Vorlesung B-PS1
1 Inhalt der Vorlesung B-PS1 1.1 Tag 1 1.1.1 Vormittag Geschichte der Programmiersprachen Wie viele Programmiersprachen gibt es? https://en.wikipedia.org/wiki/list_of_programming_languages Esoterische
MehrGrundlagen der Theoretischen Informatik
FH Wedel Prof. Dr. Sebastian Iwanowski GTI22 Folie 1 Grundlagen der Theoretischen Informatik Sebastian Iwanowski FH Wedel Kap. 2: Logik, Teil 2.2: Prädikatenlogik FH Wedel Prof. Dr. Sebastian Iwanowski
MehrStructure Sharing vs. Structure Copying
a, b, c, d?-a. a, e, f CP a a, g b, c, d b, g, h g, h, c, d c, k, g h, c, d g c, d h k, g, d backtracking SLD-Ableitungen a :- b,c,d. a :- e,f. a :- g. b :- g,h. c :- k,g. g. h. CP a e, f a g { } backtracking
Mehr3. Exkurs in weitere Arten der Programmierung
3. Exkurs in weitere Arten der Programmierung Inhalt: Objektorientierte Programmierung in C++ Funktional-Logische Programmierung in Prolog Funktional-logische Programmierung in Prolog Prolog Programming
MehrGrundlagen der Kognitiven Informatik
Grundlagen der Kognitiven Informatik Resolutionskalkül und Prolog Ute Schmid Kognitive Systeme, Angewandte Informatik, Universität Bamberg letzte Änderung: 14. Dezember 2010 U. Schmid (CogSys) KogInf-Resolution
MehrTeil 4: Rekursion und Listen
Einführung in das Programmieren Prolog Sommersemester 2006 Teil 4: Rekursion und Listen Version 1.0 Gliederung der LV Teil 1: Ein motivierendes Beispiel Teil 2: Einführung und Grundkonzepte Syntax, Regeln,
MehrWas ist Logik? Was ist Logik? Aussagenlogik. Wahrheitstabellen. Geschichte der Logik eng verknüpft mit Philosophie
Was ist Logik? Geschichte der Logik eng verknüpft mit Philosophie Begriff Logik wird im Alltag vielseitig verwendet Logik untersucht, wie man aus Aussagen andere Aussagen ableiten kann Beschränkung auf
MehrLogisches und funktionales Programmieren
Prof. Dr. Christoph Beierle, Dr. Harald Ganzinger, Prof. Dr. Michael Hanus Kurs 01816 Logisches und funktionales Programmieren LESEPROBE Das Werk ist urheberrechtlich geschützt. Die dadurch begründeten
MehrTeil 1: Ein motivierendes Beispiel
Einführung in das Programmieren Prolog Sommersemester 2006 Teil 1: Ein motivierendes Beispiel Version 1.0 Gliederung der LV Teil 1: Ein motivierendes Beispiel Teil 2: Einführung und Grundkonzepte Syntax,
MehrLogik-Grundlagen. Syntax der Prädikatenlogik
Logik-Grundlagen X 1 :...: X k : ( A 1 A 2... A m B 1 B 2... B n ) Logische und funktionale Programmierung - Universität Potsdam - M. Thomas - Prädikatenlogik III.1 Syntax der Prädikatenlogik Prädikat:
MehrGliederung. n Teil I: Einleitung und Grundbegriffe. n Teil II: Imperative und objektorientierte Programmierung
Gliederung n Teil I: Einleitung und Grundbegriffe l 1. Organisatorisches l 2. Grundlagen von Programmiersprachen n Teil II: Imperative und objektorientierte Programmierung l 1. Grundelemente der Programmierung
MehrLogik Vorlesung 4: Horn-Logik und Kompaktheit
Logik Vorlesung 4: Horn-Logik und Kompaktheit Andreas Maletti 14. November 2014 Überblick Inhalt 1 Motivation und mathematische Grundlagen 2 Aussagenlogik Syntax und Semantik Äquivalenz und Normalformen
MehrResolutionskalkül. wird t als eine Menge K t von Klauseln geschrieben, welche die einzelnen Maxterme repräsentieren:
Resolutionskalkül Ein Kalkül ist eine Kollektion von syntaktischen Umformungsregeln, die unter gegebenen Voraussetzungen aus bereits vorhandenen Formeln neue Formeln erzeugen. Der Resolutionskalkül besteht
MehrGrundlagen der Programmierung
GdP4 Slide 1 Grundlagen der Programmierung Vorlesung 4 vom 04.11.2004 Sebastian Iwanowski FH Wedel Grundlagen der Programmierung 1. Einführung Grundlegende Eigenschaften von Algorithmen und Programmen
MehrBeschreibungslogik Kapitel 7: ABoxen und Anfragebeantwortung
Beschreibungslogik Kapitel 7: ABoxen und Anfragebeantwortung Sommersemester 2017 Thomas Schneider AG Theorie der künstlichen Intelligenz (TdKI) http://tinyurl.com/ss17-bl Beschreibungslogik SoSe 2017 7
MehrKünstliche Intelligenz Hornklauseln & Prolog
Künstliche Intelligenz Hornklauseln & Prolog Stephan Schwiebert WS 2007/2008 Sprachliche Informationsverarbeitung Institut für Linguistik Universität zu Köln Terminologie (A B C) E Rumpf einer Klausel
MehrÜbersicht. Wissensbasierte Agenten. Allgemeiner Entwurf eines Agenten (1) Allgemeiner Entwurf eines Agenten (2)
Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern 7. Logische Agenten 8. Prädikatenlogik 1. Stufe 9. Schließen in der Prädikatenlogik 1. Stufe 10. Wissensrepräsentation IV
MehrSeminararbeit im Fachbereich
Seminararbeit im Fachbereich Wissensrepräsentation Truth Maintenance Systeme Autor: Elke Klippstein 1/46 1. Grundlagen 2. Truth Maintenance System (TMS) 3. Arten (a) Justification-based TMS (JTMS) (b)
MehrResolution und Regeln
Resolution und Regeln Hans Kleine Büning University of Paderborn Institute for Computer Science Group Paderborn, 18. Juli 2013 Resolution und Regeln Hans Kleine Büning 1/9 Resolution Theorem Resolution:
MehrProlog. Modellieren in Prolog. Argumente eines Prädikates. Fakten
Prolog Idee (Kowalski 1979) Algorithmus = Logik + Kontrolle Logik: was ist das Problem? Kontrolle: wie lšse ich es geschickt? Sichtweisen: Theorembeweiser (Resolution) Datalog (Datenbankanfragesprache)
Mehr4 Spezielle Schlussverfahren
4 Spezielle Schlussverfahren 11. Vorlesung: Probabilistisches Schließen; Nichtmonotones Schließen Methoden der Künstlichen Intelligenz Ipke Wachsmuth WS 2011/2012 Unsicherheit, Unvollständigkeit 4. Wie
MehrVerfügbare arithmetische Operationen ( reelle Zahlen): +, -,, /, //, mod und ggf. weitere
Prolog-Arithmetik Verfügbare arithmetische Operationen ( reelle Zahlen): +, -,, /, //, mod und ggf. weitere Verfügbare arithmetische Vergleichsoperationen: >, =, =
MehrGedächtnisprotokoll Diplomprüfung Vertiefungsfach Wissenbasierte Systeme
Gedächtnisprotokoll Diplomprüfung Vertiefungsfach Wissenbasierte Systeme Prüfungsinhalt: Artificial Intelligence (WS ) Knowledge Representation (SS 2002) Logikprogrammierung (WS) Prüfer: Lakemeyer Datum:
Mehr(Logik und) Logikprogrammierung
Übungsaufgaben zur Lehrveranstaltung (Logik und) Logikprogrammierung im Studiengang Informatik Technische Universität Ilmenau Fakultät für Informatik und Automatisierung Fachgebiet Künstliche Intelligenz
MehrSWP Logische Programme Teil 2
SWP Logische Programme Teil 2 Bernhard Aichernig Institut für Softwaretechnologie aichernig@ist.tugraz.at Institute for Software Technology Inhalt! Motivation! Logische Programme (LP)! Resolution! Unifikation!
MehrTeil 8: Fortgeschrittene Techniken
Einführung in das Programmieren Prolog Sommersemester 2006 Teil 8: Fortgeschrittene Techniken Version 1.0 Gliederung der LV Teil 1: Ein motivierendes Beispiel Teil 2: Einführung und Grundkonzepte Syntax,
MehrProgrammierung Paradigmen und Konzepte
Programmierung Paradigmen und Konzepte Mit 79 Bildern, 85 Beispielen, 130 Aufgaben und Kontrollfragen und 19 Referatsthemen Fachbuchverlag Leipzig im Carl Hanser Verlag 1 Einführung und Überblick 11 1.1
Mehr-ein Mustervergleicher ist ein Programm, das überprüft, ob ein Datum zu einem gegebenen Muster passt.
Thema: Wie ein beispielhaftes Query-System funktioniert Vortragender: Petar Tonev 1. Vorworte - - Ziele und Aufgaben des Vortrags klären wie das für Beispiel verwendete Anfragesystem die Herleitung musterbasierter
MehrRegeln. Wenn <Vorbedingung> dann <Aktion> Zwei Aktionstypen: Implikation (Deduktionen): Monotonie-Eigenschaft. Handlungen: keine Monotonie
Regeln Wenn dann Zwei Aktionstypen: Implikation (Deduktionen): Monotonie-Eigenschaft Handlungen: keine Monotonie Beispiel für Implikationsregel: wenn (1) Nackensteife und (2) hohes
MehrKapitel 6: Logik. Teil 2. (Dieser Foliensatz basiert auf Material von Mirjam Minor, Humboldt- Universität Berlin, WS 2000/01)
Kapitel 6: Logik Teil 2 (Dieser Foliensatz basiert auf Material von Mirjam Minor, Humboldt- Universität Berlin, WS 2000/01) Künstliche Intelligenz, Kapitel 6 Logik 1 Wdh. Resolution Das Resolutionsprinzip
MehrInferenzmethoden. Einheit 12. Theorien- und Gleichheitsbehandlung
Inferenzmethoden Einheit 12 Theorien- und Gleichheitsbehandlung 1. Theoriekonnektionen und Unifikationstheorie 2. Axiomatische Gleichheitsbehandlung 3. Gleichheitskonnektionen 4. Paramodulation 5. Resolution
MehrSemantische Netze Psychologische Plausibilität
Conceptual Graphs Knoten repräsentieren Konzepte oder konzeptuelle Relationen; Kanten haben keine Labels n-stellige konzeptuelle Relation repräsentiert als Knoten mit n Kanten Mächtigkeit der PL1; aber
MehrEinführung in die Methoden der Künstlichen Intelligenz. Klausurvorbereitung Überblick, Fragen,...
Einführung in die Methoden der Künstlichen Intelligenz Klausurvorbereitung Überblick, Fragen,... PD Dr. David Sabel SoSe 2014 Stand der Folien: 18. Juli 2014 Klausur Termin: Donnerstag 31. Juli um 9.15h
MehrAbstrakte Syntax von Prolog (1)
3. Prolog Syntax 3-1 Abstrakte Syntax von Prolog (1) Abstrakte und konkrete Syntax: Abstrakte Syntax: Nur Datenstrukturen, die der Parser anlegt (z.b. Operatorbaum). Konkrete Syntax: Zeichenketten, die
MehrDeklarative Semantik
7. Deklarative Semantik 7-1 Deklarative Semantik Bisher: Prolog als Programmiersprache. Operationale Semantik : Wie wird ein Programm ausgeführt? Welche Antworten werden berechnet? Jetzt: Prolog als logischer
MehrIII.1 Prinzipien der funktionalen Programmierung - 1 -
1. Prinzipien der funktionalen Programmierung 2. Deklarationen 3. Ausdrücke 4. Muster (Patterns) 5. Typen und Datenstrukturen 6. Funktionale Programmiertechniken III.1 Prinzipien der funktionalen Programmierung
MehrReihenfolge von Klauseln
Reihenfolge von Klauseln Bei der Programmierung in Prolog steht grundsätzlich die Repräsentation logischer Zusammenhänge im Vordergrund. Nichtsdestotrotz ist es unvermeidbar, die Mechanismen der Abarbeitung
Mehr1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen - 1 -
1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen I.2. I.2. Grundlagen von von Programmiersprachen. - 1 - 1. Der Begriff Informatik "Informatik" = Kunstwort aus Information und Mathematik
Mehr1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen - 1 -
1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen I.2. I.2. Grundlagen von von Programmiersprachen. - 1 - 1. Der Begriff Informatik "Informatik" = Kunstwort aus Information und Mathematik
MehrDeduktion in der Aussagenlogik
Deduktion in der Aussagenlogik Menge von Ausdrücken der Aussagenlogik beschreibt einen bestimmten Sachverhalt, eine "Theorie" des Anwendungsbereiches. Was folgt logisch aus dieser Theorie? Deduktion: aus
MehrProlog 2. Kapitel: Matching und Beweisführung
Zusammenfassung: Kapitel 1 Prolog 2. Kapitel: Matching und Beweisführung Dozentin: Wiebke Petersen Kursgrundlage: Learn Prolog Now (Blackburn, Bos, Striegnitz) Wir haben die Grundlagen und Anwendungsgebiete
MehrWissensrepräsentation
Wissensrepräsentation Vorlesung Sommersemester 2008 12. Sitzung Dozent Nino Simunic M.A. Computerlinguistik, Campus DU Übersicht Rückblick, Zusammenhänge Mysterien 2 Inhalte im abstrakten Überblick Künstliche
MehrGliederung. Programmierparadigmen. Einführung in Prolog: Einführung in Prolog: Programmieren in Prolog. Einführung Syntax Regeln Listen Relationen
Gliederung Programmierparadigmen Programmieren in Prolog D. Rösner Institut für Wissens- und Sprachverarbeitung Fakultät für Informatik Otto-von-Guericke Universität Magdeburg 1 Sommer 2011, 26. April
MehrAufgabe 1 (Allgemeines)
Klausur... Einführung in die Künstliche Intelligenz 1SS08 Aufgabe 1 (Allgemeines) (4 Punkte) a) In der Künstlichen Intelligenz unterscheidet man symbolische und subsymbolische Verfahren. Beschreibe diese
MehrLabor Compilerbau. Jan Hladik. Sommersemester DHBW Stuttgart. Jan Hladik (DHBW Stuttgart) Labor Compilerbau Sommersemester / 20
Labor Compilerbau Jan Hladik DHBW Stuttgart Sommersemester 2017 Jan Hladik (DHBW Stuttgart) Labor Compilerbau Sommersemester 2017 1 / 20 Resolution in der Prädikatenlogik testet Erfüllbarkeit (indirekt
MehrDeduktion in der Aussagenlogik. Semantische Folgerungsbeziehung. Zusammenhang zwischen semantischer und syntaktischer Folgerung
Deduktion in der Aussagenlogik Menge von Ausdrücken der Aussagenlogik beschreibt einen bestimmten Sachverhalt, eine "Theorie" des Anwendungsbereiches Was folgt logisch aus dieser Theorie? Deduktion: aus
MehrLogische Programmierung
Logische Programmierung B-82 Deklaratives Programmieren in Prädikatenlogik: Problem beschreiben statt Algorithmus implementieren (idealisiert). Grundlagen: Relationen bzw. Prädikate (statt Funktionen);
MehrLogik I. Symbole, Terme, Formeln
Logik I Symbole, Terme, Formeln Wie jede geschriebene Sprache basiert die Prädikatenlogik erster Stufe auf einem Alphabet, welches aus den folgenden Symbolen besteht: (a) Variabeln wie zum Beispiel v 0,v
MehrTableaukalkül für Aussagenlogik
Tableaukalkül für Aussagenlogik Tableau: Test einer Formel auf Widersprüchlichkeit Fallunterscheidung baumförmig organisiert Keine Normalisierung, d.h. alle Formeln sind erlaubt Struktur der Formel wird
MehrWissensbasierte Systeme/ Expertensysteme. Teil 2
Wissensbasierte Systeme/ Expertensysteme Teil 2 BiTS, Sommersemester 2004 Dr. Stefan Kooths KOOTHS BiTS: Wissensbasierte Systeme/Expertensysteme Teil 2 1 Gliederung 1. Einführung und Einordnung 2. Entscheidungsunterstützung(ssysteme)
MehrSLD-Ableitungsbäume. G = B 1... B m. G die Menge aller SLD-Resolventen von G und definiten. G einen Nachfolger, der mit G markiert ist.
SLD-Ableitungsbäume Definition 5.48 Sei P ein definites Programm und G ein definites Ziel. Ein SLD-Ableitungsbaum ist ein Baum, der die folgenden Bedingungen erfüllt: 1. Jeder Knoten des Baums ist mit
MehrEntscheidungsverfahren mit Anwendungen in der Softwareverifikation
Entscheidungsverfahren mit Anwendungen in der Softwareverifikation VI: SMT, DPLL(T) Carsten Sinz Institut für Theoretische Informatik 21.11.2018 Inhalt Theorien SMT-LIB DPLL(T): Idee Abstraktes DPLL(T)!2
MehrDie beiden Regeln des vorangegangenen Beispiels weisen Unterschiede. Die erste Regel entspricht einer logischen Implikation.
3. Regelsysteme Eine weitverbreitete Form der Wissensrepräsentation ist die Formulierung von Regeln. Regeln sind formalisierte Konditionalsätze der Form Wenn (if) F dann (then) G. Bedeutung: Wenn dann
MehrWozu formale Logik? Programmiersprachen Logik im Fingerhut. Formeln. Logik im Fingerhut (24. Januar 2005) Belegung und Interpretation
Wozu formale Logik? Logik im Fingerhut Studiengang Informatik Universität Bremen präzise Beschreibung von Aussagen über die Welt bzw. über verschiedene Welten Ziehen und Überprüfen von Schlussfolgerungen
MehrTeil X.4. C vs. Pascal
Teil X.4 C vs. Pascal 1 Unterschiede im Typsystem (1) Einfache Typen C char int enum long float double Pascal Char Integer Word Longint Single Double Typdeklaration double summe; /* Var summe: Double;
MehrAussagenlogik. Übersicht: 1 Teil 1: Syntax und Semantik. 2 Teil 2: Modellierung und Beweise. Aussagenlogik H. Kleine Büning 1/37
Aussagenlogik Übersicht: 1 Teil 1: Syntax und Semantik 2 Teil 2: Modellierung und Beweise Aussagenlogik H. Kleine Büning 1/37 Modellierungsaufgabe Es gibt drei Tauben und zwei Löcher. Jede Taube soll in
MehrKlausur Formale Systeme Fakultät für Informatik WS 2015/2016
Klausur Formale Systeme Fakultät für Informatik WS 2015/2016 Prof. Dr. Bernhard Beckert 4. März 2016 Vorname: Name: Matrikel-Nr.: Platz-Nr.: Code: **Vorname** **Familienname** **Matr.-Nr.** **Hörsaal**
MehrKünstliche Intelligenz Einführung in Prolog
Künstliche Intelligenz Einführung in Prolog Stephan Schwiebert WS 2009/20010 Sprachliche Informationsverarbeitung Institut für Linguistik Universität zu Köln Was ist Programmieren? Was ist Programmieren?
MehrÜbersicht. Künstliche Intelligenz: 13. Unsicherheiten Frank Puppe 1
Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlußfolgern IV Logisch Handeln V Unsicheres Wissen und Schließen 13. Unsicherheiten 14. Probabilistisches Schließen 15. Probabilistisches
Mehr{P} S {Q} {P} S {Q} {P} S {Q} Inhalt. Hoare-Kalkül. Hoare-Kalkül. Hoare-Tripel. Hoare-Tripel. Hoare-Tripel
Inhalt Hoare-Kalkül Formale Verifizierung Hoare-Kalkül while-sprache Terminierung Partielle / totale Korrektheit 4.0 Hoare-Kalkül entwickelt von C.A.R. (Tony) Hoare (britischer Informatiker), 1969 formales
Mehr4. Regelbasierte Systeme
4. Regelbasierte Systeme Grundlagen regelbasierter Systeme 4. Regelbasierte Systeme Eine weitverbreitete Form der Wissensrepräsentation ist die Formulierung von Regeln. Regeln sind formalisierte Konditionalsätze
MehrBinäre Suchbäume (binary search trees, kurz: bst)
Binäre Suchbäume (binary search trees, kurz: bst) Datenstruktur zum Speichern einer endlichen Menge M von Zahlen. Genauer: Binärbaum T mit n := M Knoten Jeder Knoten v von T ist mit einer Zahl m v M markiert.
MehrSemantic Web Technologies II SS 2008
Semantic Web Technologies II SS 2008 09.07.2008 Die Regelbasierte Ontologiesprache F-Logik Dr. Peter Haase PD Dr. Pascal Hitzler Dr. Steffen Lamparter Denny Vrandecic Content licensed under Creative Commons
MehrCut und Negation. Heute: if-then-else. Negation. Programmierkurs Prolog p.1
Cut und Negation Heute: der Cut if-then-else Negation Programmierkurs Prolog p.1 Zur Erinnerung: Suchbäume p(x) :- a(x). p(x) :- b(x),c(x),d(x). p(x) :- f(x). a(1). p(i1) b(1). c(1). a(i1) b(i1), c(i1),
MehrProlog 3. Kapitel: Rekursion
Zusammenfassung: Kapitel 2 Prolog 3. Kapitel: Rekursion Wir haben gelernt wie komplexe Strukturen durch Matching in Prolog aufgebaut werden können und wie die Beweisführung in Prolog funktioniert. Dozentin:
MehrProlog Tutorial Norbert E. Fuchs Institut für Informatik Universität Zürich
Prolog Tutorial Norbert E. Fuchs Institut für Informatik Universität Zürich Inhalt Vom deklarativen Wissen zum prozeduralen Programm Vom Programm zur Berechnung Elemente eines Prolog-Programms Zugverbindungen
MehrProlog 3. Kapitel: Rekursion
Prolog 3. Kapitel: Rekursion Dozentin: Wiebke Petersen Kursgrundlage: Learn Prolog Now (Blackburn, Bos, Striegnitz) Petersen Prolog: Kapitel 3 1 Zusammenfassung: Kapitel 2 Wir haben gelernt wie komplexe
MehrLogische Programmierung
Logische Programmierung Einleitung Elmar Eder () 1 / 27 Verschiedene Paradigmen der Programmierung Imperative Programmierung Einfache imperative Programmierung Prozedurale Programmierung Objektorientierte
MehrLogik Vorlesung 3: Äquivalenz und Normalformen
Logik Vorlesung 3: Äquivalenz und Normalformen Andreas Maletti 7. November 2014 Überblick Inhalt 1 Motivation und mathematische Grundlagen 2 Aussagenlogik Syntax und Semantik Äquivalenz und Normalformen
Mehr(Dieser Foliensatz basiert auf Material von Mirjam Minor, Humboldt- Universität Berlin, WS 2000/01, sowie von Andreas Abecker/Knut Hinkelmann)
Kapitel 9: Frames (Dieser Foliensatz basiert auf Material von Mirjam Minor, Humboldt- Universität Berlin, WS 2000/01, sowie von Andreas Abecker/Knut Hinkelmann) Künstliche Intelligenz, Kapitel 9 Frames
MehrSpezifikation in Datalog:
Spezifikation in Datalog: darf_hinzufügen (X,W) :- editiert (Z,W), hat_mitglied (Z,X). darf_löschen (X,E) :- besitzt (X,E). darf_modifizieren (X,E) :- besitzt (X,E). darf_modifizieren (X,E) :- besitzt
Mehr4. Regelbasierte Systeme
4. Regelbasierte Systeme Die beiden Regeln des vorangegangenen Beispiels weisen Unterschiede auf: Eine weitverbreitete Form der Wissensrepräsentation ist die Formulierung von Regeln. Regeln sind formalisierte
MehrLogische Programmierung
1. Vorbemerkungen 1-1 Logische Programmierung Stefan Brass Institut für Informatik Fachgebiet Datenbanken und Informationssysteme Prof. Dr. Udo W. Lipeck 1. Vorbemerkungen 1-2 Organisatorisches Sprechstunde:
MehrEinführung in die Logik (Vorkurs)
Einführung in die Logik (Vorkurs) Jürgen Koslowski 2014-04-07 Ein Beispiel Familie A will im kommenden Jahr eine Waschmaschine, ein Auto und ein Moped anschaffen. Aber falls Herr A seinen üblichen Bonus
MehrInformatik A. Prof. Dr. Norbert Fuhr auf Basis des Skripts von Prof. Dr. Wolfram Luther und der Folien von Peter Fankhauser
Informatik A Prof. Dr. Norbert Fuhr fuhr@uni-duisburg.de auf Basis des Skripts von Prof. Dr. Wolfram Luther und der Folien von Peter Fankhauser 1 Teil I Logik 2 Geschichte R. Descartes (17. Jhdt): klassische
MehrMathematische Grundlagen I Logik und Algebra
Logik und Algebra Dr. Tim Haga 21. Oktober 2016 1 Aussagenlogik Erste Begriffe Logische Operatoren Disjunktive und Konjunktive Normalformen Logisches Schließen Dr. Tim Haga 1 / 21 Präliminarien Letzte
MehrKünstliche Intelligenz für Ingenieure
Künstliche Intelligenz für Ingenieure von Prof. Dr.-Ing. Jan Lunze 2., völlig überarbeitete Auflage Oldenbourg Verlag München Verzeichnis der Anwendungsbeispiele Hinweise zum Gebrauch des Buches xvii xxiii
Mehr2008W. Vorlesung im 2008W Institut für Algebra Johannes Kepler Universität Linz
Logik Institut für Algebra Johannes Kepler Universität Linz Vorlesung im http://wwwalgebrauni-linzacat/students/win/ml Inhalt Logik Logik Aussagen Die mathematische Logik verwendet mathematische Methoden,
MehrProlog 2. Kapitel: Matching und Beweisführung
Prolog 2. Kapitel: Matching und Beweisführung Dozentin: Wiebke Petersen Kursgrundlage: Learn Prolog Now (Blackburn, Bos, Striegnitz) Petersen Prolog: Kapitel 2 1 Zusammenfassung: Kapitel 1 Wir haben die
Mehr