USCISIUSCISI Loom: Basic Concepts Thomas A. Russ USC Information Sciences Institute.

Slides:



Advertisements
Similar presentations
Dr. David A Ferrucci -- Logic Programming and AI Lecture Notes Knowledge Structures Building the Perfect Object.
Advertisements

Artificial Intelligence Description Logics - Background and Motivation for DL Relation between DL and FOPL (extensional Semantics) Example.
Artificial Intelligence Description Logics see references last slide.
Knowledge Representation and Reasoning using Description Logic Presenter Shamima Mithun.
OWL - DL. DL System A knowledge base (KB) comprises two components, the TBox and the ABox The TBox introduces the terminology, i.e., the vocabulary of.
An Introduction to Description Logics
USCISIUSCISI Using Time in Loom Thomas A. Russ USC Information Sciences Institute.
1 A Description Logic with Concrete Domains CS848 presentation Presenter: Yongjuan Zou.
Knowledge Representation and Reasoning using PowerLoom Presenter Shamima Mithun.
USCISIUSCISI Tuning for Performance Outline of talk: Classifier Performance Recognizer Performance Performance Tips CLOS Instances and the Backchainer.
Of 27 lecture 7: owl - introduction. of 27 ece 627, winter ‘132 OWL a glimpse OWL – Web Ontology Language describes classes, properties and relations.
USCISIUSCISI Frequently Asked Questions Why Don’t Instances Get Recognized? Use of “:all” Use of “:for-all” Compiling Loom Code Combining Number Restrictions.
Chapter 8: Web Ontology Language (OWL) Service-Oriented Computing: Semantics, Processes, Agents – Munindar P. Singh and Michael N. Huhns, Wiley, 2005.
Part 6: Description Logics. Languages for Ontologies In early days of Artificial Intelligence, ontologies were represented resorting to non-logic-based.
ANHAI DOAN ALON HALEVY ZACHARY IVES Chapter 12: Ontologies and Knowledge Representation PRINCIPLES OF DATA INTEGRATION.
LDK R Logics for Data and Knowledge Representation Description Logics as query language.
Knowledge Mediation in the WWW based on Labelled DAGs with Attached Constraints Jutta Eusterbrock WebTechnology GmbH.
An Introduction to Description Logics. What Are Description Logics? A family of logic based Knowledge Representation formalisms –Descendants of semantic.
Protege OWL Plugin Short Tutorial. OWL Usage The world wide web is a natural application area of ontologies, because ontologies could be used to describe.
Tableau Algorithm.
8/11/2011 Web Ontology Language (OWL) Máster Universitario en Inteligencia Artificial Mikel Egaña Aranguren 3205 Facultad de Informática Universidad Politécnica.
INF 384 C, Spring 2009 Ontologies Knowledge representation to support computer reasoning.
USCISIUSCISI Modeling in a Medical Domain Basic Concepts Using Recognition More Sophisticated Relations Methods, Actions and Production Rules.
USCISIUSCISI Background Description Logic Systems Thomas Russ.
Metadata. Generally speaking, metadata are data and information that describe and model data and information For example, a database schema is the metadata.
LDK R Logics for Data and Knowledge Representation ClassL (part 3): Reasoning with an ABox 1.
Presented by:- Somya Gupta( ) Akshat Malu ( ) Swapnil Ghuge ( ) Franz Baader, Ian Horrocks, and Ulrike Sattler.
A Declarative Similarity Framework for Knowledge Intensive CBR by Díaz-Agudo and González-Calero Presented by Ida Sofie G Stenerud 25.October 2006.
An Introduction to Description Logics (chapter 2 of DLHB)
Semantic web course – Computer Engineering Department – Sharif Univ. of Technology – Fall Description Logics: Logic foundation of Semantic Web Semantic.
Advanced topics in software engineering (Semantic web)
USCISIUSCISI Basic Introduction to Loom Thomas A. Russ USC Information Sciences Institute.
LDK R Logics for Data and Knowledge Representation Description Logics (ALC)
Artificial Intelligence 2004 Ontology
Web Information Systems Modeling Luxembourg, June VisAVis: An Approach to an Intermediate Layer between Ontologies and Relational Database Contents.
OilEd An Introduction to OilEd Sean Bechhofer. Topics we will discuss Basic OilEd use –Defining Classes, Properties and Individuals in an Ontology –This.
DL Overview Second Pass Ming Fang 06/19/2009. Outlines  Description Languages  Knowledge Representation in DL  Logical Inference in DL.
USCISIUSCISI Miscellaneous Issues Frame Functions Saving and Restoring CLOS Classes Mix and Match Inferencing.
4-Nov-05 CS6795 Semantic Web Techniques 1 Description Logic – 2.
Issues in Ontology-based Information integration By Zhan Cui, Dean Jones and Paul O’Brien.
LDK R Logics for Data and Knowledge Representation ClassL (Propositional Description Logic with Individuals) 1.
Description Logics Dr. Alexandra I. Cristea. Description Logics Description Logics allow formal concept definitions that can be reasoned about to be expressed.
ece 627 intelligent web: ontology and beyond
CSE-291: Ontologies in Data Integration Department of Computer Science & Engineering University of California, San Diego CSE-291: Ontologies in Data Integration.
Review: What is a logic? A formal language –Syntax – what expressions are legal –Semantics – what legal expressions mean –Proof system – a way of manipulating.
Enable Semantic Interoperability for Decision Support and Risk Management Presented by Dr. David Li Key Contributors: Dr. Ruixin Yang and Dr. John Qu.
1 Instance Store Database Support for Reasoning over Individuals S Bechhofer, I Horrocks, D Turi. Instance Store - Database Support for Reasoning over.
Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea
Presented by Kyumars Sheykh Esmaili Description Logics for Data Bases (DLHB,Chapter 16) Semantic Web Seminar.
Of 29 lecture 15: description logic - introduction.
WonderWeb. Ontology Infrastructure for the Semantic Web. IST WP4: Ontology Engineering Heiner Stuckenschmidt, Michel Klein Vrije Universiteit.
LDK R Logics for Data and Knowledge Representation Description Logics: family of languages.
Ontology Technology applied to Catalogues Paul Kopp.
Ccs.  Ontologies are used to capture knowledge about some domain of interest. ◦ An ontology describes the concepts in the domain and also the relationships.
1 Letting the classifier check your intuitions Existentials, Universals, & other logical variants Some, Only, Not, And, Or, etc. Lab exercise - 3b Alan.
1 Representing and Reasoning on XML Documents: A Description Logic Approach D. Calvanese, G. D. Giacomo, M. Lenzerini Presented by Daisy Yutao Guo University.
OWL (Ontology Web Language and Applications) Maw-Sheng Horng Department of Mathematics and Information Education National Taipei University of Education.
Logics for Data and Knowledge Representation
Knowledge Representation Part II Description Logic & Introduction to Protégé Jan Pettersen Nytun.
ece 720 intelligent web: ontology and beyond
Semantic Web Foundations
ece 720 intelligent web: ontology and beyond
Logics for Data and Knowledge Representation
Logics for Data and Knowledge Representation
Logics for Data and Knowledge Representation
Description Logics.
Logics for Data and Knowledge Representation
A Tutorial Summary of Description Logic and Hybrid Rules
CIS Monthly Seminar – Software Engineering and Knowledge Management IS Enterprise Modeling Ontologies Presenter : Dr. S. Vasanthapriyan Senior Lecturer.
Presentation transcript:

USCISIUSCISI Loom: Basic Concepts Thomas A. Russ USC Information Sciences Institute

USCISIUSCISI Outline of Tutorial LOOM Terminology Definition Language Classifier Examples Assertion Language Query Language Additional Inferences

USCISIUSCISI LOOM Terminology Two Compartments TBox for Definitions ABox for Assertions (Facts)

USCISIUSCISI TBox Term Forming Language Concepts Relations Subsumption Is Reasoning Method Defines “Vocabulary” of Domain

USCISIUSCISI Defconcept (defconcept name [:is | :is-primitive]description) Definition Options: Primitive/Non-primitive :is :is-primitive Combination of Other Concepts (:and A B) (:or C D) Role Number Restrictions (:at-least 2 arms) Role Type Restrictions (:some child male)

USCISIUSCISI Defconcept Examples (defconcept Soldier) (defconcept Medic :is (:and Soldier Medical-Personnel)) (defconcept Casualty :is (:and Person (:at-least 1 injuries)))

USCISIUSCISI Defconcept (defconcept name [:is | :is-primitive]descr options) Additional Options: Characteristics :closed-world :monotonic Roles of the concept (:roles R1 R2 R3) roles are relations that are closely associated with a particular concept

USCISIUSCISI Defconcept with roles (defconcept Helicopter :roles (range payload))

USCISIUSCISI Defrelation (defrelation name [:is | :is-primitive]description) Definition Options: Primitive/Non-primitive :is :is-primitive Relation to Other Concepts (:compose R S) Domain and Range Restrictions (:domain person) Characteristics :symmetric :closed-world

USCISIUSCISI Necessary vs. Sufficient Necessary and Sufficient (defconcept A :is (:and B C)) Necessary (implies A (:and B C)) Sufficient (implies (:and B C) A)

USCISIUSCISI Observations About Definitions The Loom language is “variable-free” Requires special constructs and implicit bindings (:at-least 2 Child Male) Sometimes this isn’t sufficiently expressive

USCISIUSCISI Adding Expressivity (:satisfies) Loom definitions can be made more expressive with the “:satisfies” construct :satisfies is used to introduce variables. Example—Transitive closure (defrelation R* :is (:satisfies (?x ?y) (:or (R ?x ?y) (:exists ?z (:and (R ?x ?z) (R* ?z ?y)))))) Expressivity is higher, but Loom cannot do as much inference with :satisfies clauses

USCISIUSCISI Subsumption (defconcept road) (defconcept highway :is (:and road (>= speed-limit 45))) (defconcept super-highway :is (:and road (>= speed-limit 55))) (defrelation speed-limit) Speed-limit Road Highway Super-Highway Speed-limit >= 45 >= 55

USCISIUSCISI No Subsumption (defconcept road) (defrelation speed-limit) (defconcept highway :is (:and road (:satisfies (?x) (>= (speed-limit ?x) 45)))) (defconcept super-highway :is (:and road (:satisfies (?x) (>= (speed-limit ?x) 55)))) Highway Road Super-Highway Satisfies...

USCISIUSCISI Relation Hierarchies In Loom, relations can also be defined in hierarchies (defrelation child) (defrelation son :is (:and child (:range Male))) Assertions and queries don’t have to match syntactically, only semantically If one asserts Joe is Tom’s son, then asking for Tom’s children will return Joe Similarly, asserting that Joe is a male and Tom’s child will let Joe be retrieved by asking for Tom’s son

USCISIUSCISI ABox Uses TBox Vocabulary Assertions About “Individuals” Is-a Role Values Restrictions

USCISIUSCISI Assertions Basic Forms: tell—Adds assertions to the knowledge base forget—Removes assertions from the knowledge base

USCISIUSCISI Assertions Basic Syntax Assert is-a concept (tell (A Joe) (B Joe)) Instance Identifier Concept Name

USCISIUSCISI Assertions Basic Syntax Assert is-a concept (tell (A Joe) (B Joe)) Assert role values (tell (R Joe 3) (R Joe 4) (S Joe 2)) Instance Identifier Role NameRole Value

USCISIUSCISI Assertions Basic Syntax Assert is-a concept (tell (A Joe) (B Joe)) Assert role values (tell (R Joe 3) (R Joe 4) (S Joe 2)) :about Syntax Used for multiple assertions about a single individual: (tell (:about Joe A B (R 3) (R 4) (S 2))) Instance Identifier Role Name Role Value Concept Name

USCISIUSCISI Assertions Basic Syntax Assert is-a concept (tell (A Joe) (B Joe)) Assert role values (tell (R Joe 3) (R Joe 4) (S Joe 2)) :about Syntax Used for multiple assertions about a single individual: (tell (:about Joe A B (R 3) (R 4) (S 2))) Allows assertion of restrictions (tell (:about Jim (:at-least 3 R) (R 2)))

USCISIUSCISI Queries Ask About Grounded Facts Retrieve Individuals Matching Query Schema

USCISIUSCISI Query Language (ask statement) Is fido a dog?: (ask (dog fido))

USCISIUSCISI Query Language (ask statement) Is fido a dog?: (ask (dog fido)) (retrieve var-list query) Return all dogs in the KB: (retrieve ?d (dog ?d))

USCISIUSCISI Query Language (ask statement) Is fido a dog?: (ask (dog fido)) (retrieve var-list query) Return all dogs in the KB: (retrieve ?d (dog ?d)) Return list of dogs and their owners: (retrieve (?d ?o) (:and (dog ?d) (owner ?d ?o))) Note: Ownerless dogs are not returned.

USCISIUSCISI Different Decompositions Two Axes: Cover Partition Enable different reasoning strategies.

USCISIUSCISI Cover (defconcept a) (defconcept b) (defconcept c) (defconcept or-abc :is (:or a b c))

USCISIUSCISI Cover (defrelation r) (defrelation s) (defconcept x) (defconcept a :is-primitive (:and x (:at-most 1 r))) (defconcept b :is-primitive (:and x (:at-most 0 s))) (defconcept c :is-primitive x) (defconcept or-abc :is (:or a b c)) (tell (or-abc Joe)) ;Joe is one-of A, B, or C (tell (R Joe 1) (R Joe 2) (S Joe 1)) (ask (C Joe)) ==> T ;because we can rule out A and B ; A common primitive parent ; (ie, “x”) is required for ; this inference to be made

USCISIUSCISI Partition (defconcept p :partitions $p$) (defconcept x :is-primitive p :in-partition $p$) (defconcept y :is-primitive p :in-partition $p$) (defconcept z :is-primitive p :in-partition $p$) (tell (x i2)) ==> |C|X (tell (z i2)) ==> INCOHERENT (forget (x i2)) ==> |C|Z

USCISIUSCISI Mapping from Logic to an Object Framework Loom’s language provides a logical description of instances in terms of properties and restrictions CLOS classes provide a physical description in terms of slots Loom concept descriptions can be mapped into CLOS class definitions

USCISIUSCISI Mapping from Logic to an Object Framework Superclasses can come from The superconcepts (subsumption) of the concept definition Explicit specification via :mixin-classes Slots can be determined multiple ways All :roles become slots All restricted relations (:at-least, etc.) in the concept definition become slots (Optional) All :domain restricted relations become slots.

USCISIUSCISI Mapping from Logic to an Object Framework—Example (defconcept C :is (:and A B X (:at-least 2 R) (:at-most 1 S)) :roles (P Q) :mixin-classes (browser-item)) (defclass C (A B X browser-item) ((R :accessor R :initarg :R :initform nil) (S :accessor S...) (P :accessor P...) (Q :accessor Q...)))

USCISIUSCISI Summary TBox Determines Domain Vocabulary Definitions Subsumption Disjointness ABox Describes Specific Domain Instances Facts Queries Retrieve Information from the ABox Yes/No Questions Find Matching Instances