Semantic Web Technologies II SS 2008

Ähnliche Dokumente
Ontologiesprachen. 1.Was ist eine Ontologie 2.Aufbau einer Ontologie 3.RDF 4.RDFSchema 5.DAML+OIL / OWL 6.Frame-Logic

4.1 Motivation. Theorie der Informatik. Theorie der Informatik. 4.1 Motivation. 4.2 Syntax der Prädikatenlogik. 4.3 Semantik der Prädikatenlogik

Reasoner for the Semantic Web

SWP Logische Programme

Semantic Web Technologies II SS Semantic Web Übung

Normalformen der Prädikatenlogik

F - Logik. Konzepte und Subkonzept- Beziehung. Objekte werden durch eindeutige Ids identifiziert: Objektorientierte (Frame basierte) Logik

Namen von Objekten des Diskursbereichs (z. B. Substantive des natürlichsprachlichen Satzes)

Logik für Informatiker

Daten, Information, Wissen explizites und implizites Wissen Expertensysteme (Aufgaben, Aufbau, Komponenten) Diagnoseziel Klassifikation

Regeln fuer OWL. Foliensatz: Markus Kroetzsch, Sebastian Rudolph. Webbasierte Informationssysteme 15. November 2010

GI-Technologien zur Umsetzung der EU-Wasserrahmenrichtlinie (WRRL): Wissensbasen. Teil 1: Einführung: Wissensbasis und Ontologie.

Formale Grundlagen der Informatik 1 Kapitel 19. Syntax & Semantik

Fragen zum Nachdenken: Wie könnte man das Fehlen eines Attribut-Wertes interpretieren?

Das Programm ist deterministisch: es gibt für jedes Ziel höchstens eine Klausel, die zur erfolgreichen Ableitung des Zieles

Prädikatenlogik. Quantoren. Quantoren. Quantoren. Quantoren erlauben Aussagen über Mengen von Objekten des Diskursbereichs, für die ein Prädikat gilt

Beschreibungslogiken. Daniel Schradick

5 Logische Programmierung

Semantic Web Technologies I

Teil 2: Objektorientierte deduktive Datenbanken (DOOD)

Logik für Informatiker

Semantic Web Technologies I! Lehrveranstaltung im WS10/11! Dr. Andreas Harth! Dr. Sebastian Rudolph!

Übersicht. Prädikatenlogik höherer Stufe. Syntax der Prädikatenlogik 1. Stufe (mit Gleichheit)

Binäre Suchbäume (binary search trees, kurz: bst)

1.1 Motivation. Theorie der Informatik. Theorie der Informatik. 1.1 Motivation. 1.2 Syntax. 1.3 Semantik. 1.4 Formeleigenschaften. 1.

Grundlagen der Logik

Syntax der Prädikatenlogik: Komplexe Formeln

Logik für Informatiker

Ontologien und Ontologiesprachen

Semantic Web Services

Semantic Web: RDF und N-Tripel

Beschreibungslogik und Ontologiesprachen. Vorlesung im Wintersemester 08/09

Grundlagen der Theoretischen Informatik

Spezifikation in Datalog:

Datenbanken II. Prof. Dr. Steffen Staab Christoph Ringelstein. Steffen Staab ISWeb Vorlesung Datenbanken II

1. Grundkonzepte der logischen Programmierung 2. Syntax von Prolog 3. Rechnen in Prolog. IV.1 Grundkonzepte der logischen Programmierung - 1 -

n 1. Der Begriff Informatik n 2. Syntax und Semantik von Programmiersprachen - 1 -

OWL Web Ontology Language

Eliminierung der TBox. Definitorische Terminologien. Normalisierte Terminologien. Eliminierung der TBox (Beispiel)

Semantic Web Technologies I

F-Logic - Einblick und Vergleich mit Prolog


Komplexität. Matthias Sax. 9. Juli Humboldt-Universität zu Berlin. Institut für Informatik

Vor(schau)kurs für Studienanfänger Mathematik: Aussagen und Mengen

Prädikatenlogik in der Praxis. Richard Cubek (Teil der Master Thesis, 2011)

Semantic Web. Ekaterina Timofeeva & Johannes Knopp Vorlesung Information Retrieval Dr. Karin Haenelt Universität Heidelberg WS2006/07

Formale Logik. PD Dr. Markus Junker Abteilung für Mathematische Logik Universität Freiburg. Wintersemester 16/17 Sitzung vom 7.

Programmierparadigmen

Prolog by example. Carsten Rösnick

Deklarative Semantik

Kapitel 2. Mathematische Grundlagen. Skript zur Vorlesung Einführung in die Programmierung

Logik für Informatiker

Mai Hauptseminar: Nichtrelationale Datenbanken Historisch-Kulturwissenschaftliche Informationsverarbeitung Universität zu Köln

SE MODALLOGIK UND ANDERE PHILOSOPHISCH RELEVANTE LOGIKEN WS 2015/16 ESTHER RAMHARTER & GÜNTHER EDER

Semantic Web Technologies I!

Answer Set Programming

Vorlesung Semantic Web. Vorlesung im Wintersemester 2011/2012 Dr. Heiko Paulheim Fachgebiet Knowledge Engineering

Warum Mathe? IG/StV-Mathematik der KFU-Graz. 1 Mengen Mengenoperationen Rechenregeln Mengen 4. Funktionen 7

Reduktion. 2.1 Abstrakte Reduktion

Wissensbasierte Systeme 7. Prädikatenlogik

(Logik und) Logikprogrammierung

Ontologien. Ontologien (aus ISM Kap. 3. Wissensrepräsentation für Texte) Ontologien: Konstrukte. Konzepte/Klassen

Ontologien (aus ISM Kap. 3. Wissensrepräsentation für Texte) Norbert Fuhr

DataLog. Datenbank-Programmiersprache für deduktive Datenbanken. Proseminar Programmierparadigmen und Sprachen. Nico Braunisch

10 Formale Grundlagen

SS2010 BAI2-LBP Gruppe 1 Team 07 Entwurf zu Aufgabe 4. R. C. Ladiges, D. Fast 10. Juni 2010

Software Engineering

Theoretische Informatik: Berechenbarkeit und Formale Sprachen

Logik I. Symbole, Terme, Formeln

1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen - 1 -

1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen - 1 -

Kleine lateinische Buchstaben wie z. B. p, q, r, s t, usw.

Formale(Ontologien( G.(Görz,(FAU,(Informa>k,(AG(DH( 2(

RDF & OWL. Praktikum Softwaretechnologie für die Ressourcenlinguistik. Johannes Hellrich & Erik Fäßler SS FSU Jena

OWL und Protégé. Seminar A.I. Tools Matthias Loskyll

Funktionale Programmierung Teil 2 Methodik: Spezifikation, Implementierung, Verifikation

Ontology Languages for the Semantic Web

SWP Logische Programme Teil 2

Theoretische Informatik: Berechenbarkeit und Formale Sprachen

Vererbung. Gerd Bohlender. Institut für Angewandte und Numerische Mathematik. Vorlesung: Einstieg in die Informatik mit Java 23.5.

Semantic-Web-Sprachen XML, RDF (und RDFS), OWL

Grundbegriffe aus Logik und Mengenlehre. Prädikatenlogik

Theorie der Informatik. Theorie der Informatik. 6.1 Einführung. 6.2 Alphabete und formale Sprachen. 6.3 Grammatiken. 6.4 Chomsky-Hierarchie

Wissensbasierte Systeme/ Expertensysteme. Teil 2

Theoretische Informatik: Berechenbarkeit und Formale Sprachen

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

Abschnitt 3: Mathematische Grundlagen

Web Ontology Language (OWL)

Semantic Web Grundlagen

Was sind Ontologie-Editoren?

Mathematik für Ökonomen 1

1 Prädikatenlogik. 1.1 Signaturen und Strukturen

Semantic Web Grundlagen

Logik Vorlesung 7: Grundlagen Prädikatenlogik

Terme. Heute: Terme vergleichen. Struktur von Termen. Operatoren. Logik in der Praxis Logikprogrammierung (Prolog) p.1

5. Beschreibungslogiken und Web-Ontologien. Eigenschaften von Beschreibungslogiken. Das Grundvokabular besteht aus

Semantic Web Technologies I

Kapitel WT:VIII (Fortsetzung)

Transkript:

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 http://creativecommons.org/licenses/by/2.0/de/

Motivation Beschreibungssprachen wie OWL oft eigenschaftszentriert: Relationen (Rollen) und Klassen als Grundlage zur Klassifizierung von Instanzen Programmierung typischerweise objektorientiert: Relationen (Eigenschaften) sind Klassen zugeordnet, Instanzen als komplex strukturierte Objekte F-Logik als objektorientierte Ontologiesprache! closed world und regelbasiert

Beispiel /* Fakten */ iokaste:frau. laios:mann. oedipus:mann[vater->laios; mutter->iokaste]. polyneikes:mann[vater->oedipus; mutter->iokaste; schwester->>{antigone, ismene}; bruder->>eteokles:mann] /* Regeln */ FORALL X,Y X[sohn->>Y] <- Y:mann[vater->X]. FORALL X,Y X[sohn->>Y] <- Y:mann[mutter->X]. /* Anfragen */ FORALL X,Y <- X:mann[sohn->>Y[mutter->iokaste]].

Objekte, Methoden und Parameter Objekte haben eindeutige Bezeichner: iokaste:frau. laios:mann.... Unique Name Assumption Objekteigenschaften als Methoden: einwertige: oedipus[vater->laios]. mehrwertige: polyneikes[schwester->>{antigone, ismene}]. Parameter für Methoden: iokaste[sohn@(laios)-»oedipus; sohn@(oedipus)-»{polyneikes, eteokles}].

Klassen und Subklassen Objekte können Klassen zugewiesen werden: iokaste:frau. laios:mann. Klassen können hierarchisch geordnet werden: frau::person. mann::person.

Atome und Moleküle Atome: iokaste:frau. laios[vater->labdacus]. Moleküle: eteokles:mann[vater->oedipus; mutter->iokaste; schwester->>{antigone, ismene}; bruder->>polyneikes]. Moleküle können in Atome zerlegt werden: eteokles:mann. eteokles[vater->oedipus]. eteokles[mutter->iokaste]. eteokles[schwester->>antigone]. eteokles[schwester->>ismene]. eteokles[bruder->>polyneikes].

Einbettung (Nesting) Beschreibungen von Objekten können geschachtelt werden: eteokles:mann[vater->oedipus: mann[vater->laios;mutter->iokaste]; mutter->iokaste:frau].

Signaturen Beschreibung der zulässigen Methoden in Klassen Beispiel: person[mutter=>frau]. person[vater=>mann]. person[tochter=>>frau]. frau[sohn@(mann)=>>mann]. Typenprüfung möglich

Prädikate Beschreibung von Eigenschaften/Beziehungen von Objekten und Klassen: mörder(oedipus,laios). selbstmörderin(iokaste). mörder(eteokles,polyneikes). mörder(polyneikes,eteokles). selbstmörderin(antigone).... Beliebige Stelligkeit (Vergleich DL): tochtervon(iokaste,oedipus,antigone). aussage.

Regeln Regeln sind Implikationen: FORALL X selbstmörderin(x) <- frau(x) AND mörder(x,x). FORALL X,Y X[schwester->Y] <- EXISTS Z X[mutter->Z] AND Y[mutter->Z]. FORALL X unhappy_man(x) <- EXISTS Y,V,W X:mann[tochter-»Y; sohn-»{v,w}] AND (mörder(v,w) OR selbstmörderin(y)). Unterteilung in Kopf und Rumpf Beliebige logische Ausdrücke im Rumpf

Anfragen Anfragen sind Regeln ohne Kopf: FORALL X,Y <- X:mann[vater->oedipus; schwester-»y] AND selbstmörder(y). Anfrageergebnis: Variablenbindungen, die Bedingung erfüllen Closed World Assumption (siehe Semantik) Quantifikation über Klassen ist zulässig: FORALL X,C <- X:C[vater->oedipus].

Semantik von F-Logik Was genau bedeuten F-Logik Spezifikationen? Grundidee: Umwandlung von F-Logik in Logikprogramme Problem: Auch die Semantik von (ausdrucksstarken) Logikprogrammen ist kompliziert

F-Logik Logikprogramm (1) Umwandlung von Molekülen in Atome (siehe oben) Umwandlung von Atomen in Prädikate: a:c a isa ( a,c) A::B a sub_(a,b) a[b->c] a att_(a,b,c) a[b->>c] a setatt_(a,b,c) A[B=>C] a atttype_(a,b,c) A[B=>>C] a setatttype_(a,b,c)

Beispiel FORALL X,Y,Z X[bruder->>Y] <- X[vater->Z] AND Y[vater->Z]. FORALL X,Y,Z setatt_(x,bruder,y) <- att_(x,vater,z) AND att_(y,vater,z).

F-Logik Logikprogramm (2) Was bedeutet sub_(a,b) etc.? Hilfsprädikate müssen durch Axiome beschrieben werden! Beispiel: // Deklarierte Eigenschaften werden vererbt: FORALL X,Y,A,B atttype_(x,a,b) <- atttype_(y,a,b) AND sub_(x,y). // Subklassenbeziehung transitiv: FORALL X,Y,Z sub_(x,z) <- sub_(x,y) AND sub_(y,z)....

F-Logik Logikprogramm (3) Regeln in einem allgemeinen Logikprogramm: H <- B1, NOT B2, NOT B3, B4, B5. F-Logik erlaubt kompliziertere Ausdrücke im Rumpf: FORALL X größtes(x) <- p(x) AND FORALL Y (p(y)-> kleinergleich(y,x)). Lloyd-Topor-Transformation: FORALL X,Y größtes(x) <- p(x) AND (NOT p(y) OR kleinergleich(y,x)). FORALL X größtes(x) <- p(x) AND NOT q(x). FORALL X,Y q(x) <- p(y) AND NOT kleinergleich(y,x).

Semantik von F-Logik Ursprünglich (1995) mit FOL Semantik Implementierte Systeme verwenden Semantik aus der Logikprogrammierung Verschiedene Semantiken möglich (v.a. mit Negation) Semantiken haben z.t. prozedurale Definitionen und sind Modelltheoretisch (fast) nicht fassbar Die Übersetzung in die Logikprogrammierung wurde nirgendwo vollständig formalisiert und publiziert. D.h. Semantik der Implementierung bleibt etwas unklar. Das ist je nach Anwendungsfall für die Praxis unproblematisch.

Vor- und Nachteile Vorteile Grosse Ausdrucksstärke (Regeln, Signaturen) Objektorientiert Leistungsstark im Umgang mit Instanzen Nachteile Keine klassische Logik Verschiedene mögliche Semantiken Hochgradig unentscheidbar

F-Logik vs. DL Objektorientiert Klassen und Instanzen als FOL-Terme Closed World Unentscheidbar Unique name assumption Nicht standardisiert Semantik hat prozedurale Aspekte Eigenschaftsorientiert Instanzen als FOL-Terme, Klassen als FOL-Prädikate Open World (Oft) entscheidbar Keine UNA offizieller Standard OWL Klare formale Semantik

Praktische Umsetzung Weitere Features: Pfadausdrücke für Eigenschaften (wie in OO-Programmierung), Datenbankanbindung, Namensräume, etc. Implementiert z.b. im OntoBroker der ontoprise GmbH Praxisorientierte Algorithmen für Annäherung der formalen Semantik

F-Logik Reasoner FLORA (Michael Kifer, Stony Brook NY) Übersetzung nach XSB Prolog frei verfügbar http://flora.sourceforge.net/ Ontoboker (ontoprise GmbH Karlsruhe) kommerzielles System http://www.ontoprise.de/index.php?id=35 FLORID (Georg Lausen, Freiburg) http://dbis.informatik.uni-freiburg.de/index.php?project=florid

Literatur M. Kifer, G. Lausen, J. Wu. Logical foundations of object-oriented and frame-based languages. Journal of the ACM 42 (1995) 741 843 Steffen Staab, Rudi Studer (Editors). Handbook on Ontologies. Springer 2003. Kapitel zu F-Logik.