4-Nov-05 CS6795 Semantic Web Techniques 1 Description Logic – 2
4-Nov-05 CS6795 Semantic Web Techniques 2 History Description Logic Handbook Chapter 1 Early knowledge representation work from 60’s – Representing classes of objects – Abstraction Hierarchy – Properties of those objects – Constraints on the properties Led to object oriented programming ideas – CommonLisp Object System (CLOS) – SmallTalk, C++, Java Networks of knowledge – Semantic Networks (Quillian 1967) – Frames (Minsky 1981)
4-Nov-05 CS6795 Semantic Web Techniques 3 Example of Network KR Person, Female, etc are concepts hasChild is a property of Person – hasChild relates Parent to Person – Nil means infinity. A Parent is a Person with between 1 and infinity children Large arrows are “IS-A” links – A Mother is a (specialization of a) Parent
4-Nov-05 CS6795 Semantic Web Techniques 4 Networks and Logic systems were defined First order logic can express most of the network – Predicates can be arity 1 or 2 (unary and binary) – Rules can be used for inheritance and some constraints – Mother ISA Parent X Mother(X) Parent(X) – All children of Parents are Persons X,Y Parent(X) hasChild(X, Y) Person(Y) – Expect some inferences to be made Inheritance: All properties of a superclass should also be properties of its subclass So all children of Mothers should be Persons X,Y Mother(X) hasChild(X, Y) Person(Y)
4-Nov-05 CS6795 Semantic Web Techniques 5 Network and Logic Systems have advantages/disadvantages Networks considered more appealing and more practical than Logic Some Network “reasoners” were ad hoc – Different reasoners give different results Logic engines all produce the same conclusions – Clearly defined semantics Logic engines at the time were very general – Not much known about special reasoners for these formulas – General resolution-based theorem provers used Generality meant reasoning procedures had high complexity
4-Nov-05 CS6795 Semantic Web Techniques 6 Description Logic systems Brachman and Levesque [1984] “there is a tradeoff between the expressiveness of a representation language and the difficulty of reasoning over the representations built using that language. – The more expressive the language, the harder the reasoning. Schmidt-Schauss and Smolka [1991 ] specialized classical settings for deductive reasoning to the DL subsets of first- order logics, – Using tableau calculus Best of both worlds – Unary predicates for names of classes – Binary predicates for properties – Conclusions based on inheritance Derived from Logic but driven by an understanding of how much reasoning power is needed.
4-Nov-05 CS6795 Semantic Web Techniques 7 Description Logic This lecture from DL Handbook Chapter 2DL Handbook Chapter 2 Description Logics – overcome the ambiguities of early semantic networks and frames – first realized in the system KL-One [Brachman and Schmolze, 1985] Well-studied and decidable (most DL languages) Tight coupling between theory and practice
4-Nov-05 CS6795 Semantic Web Techniques 8 TBox and ABox – TBox: terminology the vocabulary of an application domain: – Concepts: sets of individuals – Roles: binary relationships between individuals. Examples: – Concepts: Person, Female, Mother – Role: hasChild, meaning that some person is the child of some other – ABox: assertions about named individuals in terms of this vocabulary Example – Elizabeth and Charles are Persons. We write this as Person(Elizabeth), and Person(Charles). – Individuals, like “myCar”, have attributes, like “color”, and those attributes have values, like “red”. When this happens we say that red is the colorOf attribute of myCar. We write this as colorOf(myCar, red).
4-Nov-05 CS6795 Semantic Web Techniques 9 Architecture of a DL System
4-Nov-05 CS6795 Semantic Web Techniques 10 Formulas Building blocks that allow complex descriptions of concepts and roles. – Example (we’ll look at the syntax in more detail soon.) A Woman is a Female Person – Woman = Person u Female A Mother is a Woman and she has a child – Mother = Woman u 9 hasChild.T The TBox can be used to assign names to complex descriptions. We will use the terms description and concept interchangably.
4-Nov-05 CS6795 Semantic Web Techniques 11 Reasoning Tasks TBox reasoning: Determine – whether a description is satisfiable (i.e., non-contradictory) – whether description A is more general than description B A subsumes B if every individual of concept B is also of concept A – With Subsumption tests one can organize the concepts of a terminology into a hierarchy according to their generality. ABox reasoning: Determine – whether its set of assertions is consistent, – whether a particular individual is an instance of a given concept description. – A concept description can be a query, describing a set of objects With instance tests one can retrieve the individuals that satisfy the query. We will focus on the reasoning problem of TBox satisifiability
4-Nov-05 CS6795 Semantic Web Techniques 12 Model Theory Statements in the TBox and in the ABox can be identified with formulae in first-order logic and the logical semantics is defined by those formulas
4-Nov-05 CS6795 Semantic Web Techniques 13 Wrapping your mind around model theory Recall that a model provides a set of domain elements and a way to interpret each piece of syntax. – It just tells you what is meant by what you wrote down. Example – you can interpret Father(Bruce) and hasChild(Bruce, Mary) when I tell you who Bruce is and who Mary is and what Father means (a set of individuals) and what hasChild means (a role, a binary relation) – Whether or not the statements are true depends on whether Bruce is a Father and on whether Bruce’s child is Mary in the world. In model theory the weird thing we do is fix the formulas and let the interpretations vary. – We don’t always have a specific world in mind When a set of formulas is true is some world we say that the formulas are a model of that world. – They say something accurate about it, but don’t tell you everything. What makes this useful is that when you do some syntactic manipulation to generate new formulas from the model, we expect that the new thing we found is also true in the world
4-Nov-05 CS6795 Semantic Web Techniques 14 DL Semantics Defined by standard Tarski-style interpretations: I = ( I, ¢ I ), where – I is the domain (a non-empty set) – ¢ I is an interpretation function that maps: Concept (class) name A ! subset A I of I Role (property) name R ! binary relation R I over I Individual name i ! i I element of I
4-Nov-05 CS6795 Semantic Web Techniques 15 The Basic Description Language AL SyntaxSemantic >I>I I (universal concept) ?I?I ; (bottom concept) (: A)I(: A)I I \ A I (atomic negation) (C u D)I(C u D)I C I u D I (intersection) (8 R.C) I {a 2 I | 8 b.(a,b) 2 R I ! b 2 C I } (value restriction) (9 R.>) I {a 2 I | 9 b.(a,b) 2 R I } (limited exists quantification) R R I µ I £ I (R is an atomic role) A A I µ I (A is an atomic concept) The sublanguage FL ¡ is obtained by disallowing atomic negation; and FL 0 is obtained by disallowing limited existential quantification. Negation can only be applied to atomic concepts Only the top concept is allowed in the scope of an existential quantification over a role In predicate logic, concept C can be translated into, C(x) with a free variable x.,8 hasChild.Female(x) = 8 y.hasChild(x,y) ! Female(y)
4-Nov-05 CS6795 Semantic Web Techniques 16 What does 8 R.C and 9 R.C mean? hasPet AFido AFluffy BTabby CRover CFlip Dog Fido Rover Flip Cat Fluffy Tabby A DogLover is someone whose pets are all dogs, in this case {C} DogLover = 8 hasPet.Dog {p | 8 a, (p, a) 2 hasPet ! a 2 Dog} Also writen more simply as {p | hasPet(p, a) ! Dog(a) } A DogLiker is someone who owns a dog,, in this case {A, C} DogLiker = 9 hasPet.Dog {p | hasPet(p, a) Æ Dog(a) }
4-Nov-05 CS6795 Semantic Web Techniques 17 The Family of AL -Languages AL [ U ][ E ][ N ][ C ] U - union – (C t D) I = C I [ D I E - full existential quantification – (9 R.C) I ={a 2 I | 9 b.(a,b) 2 R I Æ b 2 C I } N - number restrictions – at least: (> n R) I ={a 2 I | | { b|(a,b)2R I } | > n } – at most: (6 n R) I ={a 2 I | | { b|(a,b)2R I } | 6 n } Person u (6 1 hasChild t (> 3 hasChild u 9 hasChild.Female)) denotes those persons that have either not more than one child or at least three children, one of which is female. C - full negation – : C I = I \ C I
4-Nov-05 CS6795 Semantic Web Techniques 18 DL as Fragments of Predicate Logic Any concept D as unary predicate with one free variable Any role R as primitive binary predicate 9 R.C corresponds to 9 y.R(x,y) Æ C(y) 8 R.C corresponds to 8 y.R(x,y) => C(y) ≥ nR corresponds to 9 y 1,...,y n. R(x,y 1 ) Æ... Æ R(x,y n ) Æ 8 i<j. y i ≠y j ≤ nR corresponds to 8 y 1,...,y n+1. R(x, y 1 ) Æ... Æ R(x,y n+1 ) => 9 i<j. y i =y j Last two examples demonstrate advantage of variable free syntax
4-Nov-05 CS6795 Semantic Web Techniques 19 Knowledge Base in DL A knowledge base K = hT, Ai comprise two components: – TBOX T introduces terminology (vocabulary of an application domain) – ABOX A contains assertions about named individuals in terms of this vocabulary The vocabulary consists of concepts and roles – concepts denote sets of individuals – roles denote binary relationships between individuals
4-Nov-05 CS6795 Semantic Web Techniques 20 TBox and ABox T (TBox) is a set of axioms of the form: – C v D (concept inclusion) – C ´ D (concept equivalence) – R v S (role inclusion) - has_parent v has_ancestor – R ´ S (role equivalence) – R + v R (role transitivity) - has_mother + v has_ancestor - 8 has_ancestor.human applies to all successors of has_ancestor A (ABox) is a set of axioms of the form – x 2 D (concept instantiation) – hx, yi 2 R (role instantiation)
4-Nov-05 CS6795 Semantic Web Techniques 21 An Example about Family Relationships “IS-A” relationship defines a hierarchy over concepts a role defines a property of Parent: hasChild.Person These are concepts value restriction(v/r): (1, NIL) Examples in ABox: hasChild(MARY, PETER) Father(PETER) Examples in TBox: Woman ´ Person u Female Mother ´ Woman u 9 hasChild.Person
4-Nov-05 CS6795 Semantic Web Techniques 22 atomic concepts occurring in a TBox T can be divided into two sets, name symbols N T (or defined concepts) and base symbols B T (or primitive concepts, occur only on the right-hand side) a base interpretation for T only interprets the base symbols. Name Symbol Name Symbols vs. Base Symbols Base symbols
4-Nov-05 CS6795 Semantic Web Techniques 23 Unfolding Name Symbols Acyclic TBox can be unfolded or expanded by eliminating all defined name symbols from the right- hand-side with only base symbols:
4-Nov-05 CS6795 Semantic Web Techniques 24 Satisfiability: whether the assertions in an TBox and ABox has a model Subsumption: whether one description is more general than another one Equivalence: whether two classes denote same set Instantiation: check if an individual is an instance of class C Retrieval: retrieve a set of individuals that instantiate C Problems all reducible to satisfiability. Reasoning Services subsumes(C,D) : sat (: C u D) equiv(C,D) subsumes(C, D) Æ subsumes(D, C)
4-Nov-05 CS6795 Semantic Web Techniques 25 Concept Satisfiability The concepts woman, mother, parent are satisfiable how about :woman u mother? The conjunct :woman u mother can never be satisfied
4-Nov-05 CS6795 Semantic Web Techniques 26 ABox Satisfiability All other inference services can be reduced to asat (A) where A is the axioms in TBox and ABox – instance checking: instance ?(a, C, A) ´ : asat (A [ {a: :C}) – concept satisfiability: sat (C) ´ asat {a:C} – concept subsumption: subsumes (C, D) ´ : sat (:CuD) ´ : asat ({a::CuD}) Open world assumption – A = {andrew:male, (charles, andrew): has_child} – Does instance?( charles, 8has_child.male, A) hold?
4-Nov-05 CS6795 Semantic Web Techniques 27 Open World Assumption Can we prove that instance?( charles, 8has_child.male, A) holds? No! Although the ABox contains only knowledge about one male child, it is always assumed that represented information is incomplete. To make this statement hold, we could add: – charles:8has_child.male or – assert that information about a 2 nd child will not be added in the future: charles: 9 6 1has_child (not possible in ALC as we need number restrictions)
4-Nov-05 CS6795 Semantic Web Techniques 28 Reasoner: The Tableau Algorithm contains a set of completion rules operating on constraint sets or tableaux clash triggers proof procedure: – transform unfold the TBox – Transform all concepts into negation normal form (i.e. negation only occurs only in front of concept names): : (C u D) ! :C t : D : 9R.C ! 8 R.:C – apply completion rules in arbitrary order as long as possible stops when a clash is found terminates if no completion rule is applicable anymore satisfiable iff a clash-free tableau can be derived
4-Nov-05 CS6795 Semantic Web Techniques 29 Completion Rules for the Logic ALC Clash Trigger {a: A, a: : A} µ A Conjunction Rule if 1. a: C u D 2 A, and 2. {a:C, a:D} * A then A ’= A [ {a:C, a:D} Disjunction Rule if 1. a: C t D 2 A, and 2. {a:C, a:D} Å A = ? then A ’= A [ {a:C} or A ’= A [ {a:D} Role Exists Restriction Rule if 1. a: 9 R.C 2 A, and 2. :9 b 2 O : {(a,b):R, b:C} µ A then A ’= A [ {(a,b):R, b:C} with b fresh in A Role Value Restriction Rule if 1. a: 8 R.C 2 A, and 2. 9 b 2 O : (a,b):R 2 A and 3. {b:C} A then A ’= A [ {b:C}
4-Nov-05 CS6795 Semantic Web Techniques 30 Proof for Concept Satisfiability Does the concept woman subsume mother ? Is the concept : woman u mother unsatisfiable? Application of completion rules: : woman u mother is unsatisfiable ) the concept woman subsumes the concept mother
4-Nov-05 CS6795 Semantic Web Techniques 31 DL for the Semantic Web Web Ontology Language (OWL): W3C Recommendation on 10 Feb 2004 builds on RDF and RDF Schema and adds more vocabulary for describing properties and classesExtends existing Web standards has three increasingly-expressive sublanguages: OWL Lite (based on DL SHIF (D)), OWL DL (based on DL SHOIN(D)), and OWL Full (OWL DL + RDF) benefits from many years of DL research – Well defined semantics – Formal properties well understood (complexity, decidability) – Known reasoning algorithms – Implemented systems (highly optimised) – Example: Ontology of BooksOntology of Books
4-Nov-05 CS6795 Semantic Web Techniques 32 OWL Class Constructor
4-Nov-05 CS6795 Semantic Web Techniques 33 OWL Axioms Axioms (mostly) reducible to inclusion (v) – e.g. C ´ D iff both C v D and D v C
4-Nov-05 CS6795 Semantic Web Techniques 34 Concrete Abstract Syntax Easier to read than OWL, much closer to logic ALCAS.pl – Prolog implementation of ALC reasoner using CAS – Currently only does TBox consistency Working on this… – Shows actions at various steps. – See