Reasoning challenges in description logic Roman Kontchakov and Michael Zakharyaschev Department of Computer Science , Birkbeck College London http://www.dcs.bbk.ac.uk/~{roman,michael}
Description Logic DL is a (large) family of knowledge representation & reasoning formalisms • more expressive than propositional logic • less expressive than first-order logic ( ≈ decidable modal, hybrid logics) • developed by the KR community for applications in AI Application-driven equilibrium: expressiveness vs. computational costs Recent applications: • Ontologies (or terminologies) in medicine, bioinformatics, ... • Semantic Web • Ontology-based data access and integration • Ontology maintenance, module extraction, versioning, updates, ... Web Ontology Language (OWL) W3C standards OWL 1 (2004), OWL 2 (2009) DL = OWL − XML OWL = DL + XML or Moscow, 23 August 2010 1
DL architecture Knowledge Base (KB) Inference System TBox (terminological box, schema) Interface Man ≡ Human ⊓ Male Appendicitis ⊑ Disease ⊓ ∃ morphology . Inflam ... ABox (assertion box, data) Man ( john ) hasChild ( john , mary ) ... Moscow, 23 August 2010 2
Description logic constructs • Alphabet: – concept names A 0 , A 1 , ... (e.g., Person, Female, ...) – role names R 0 , R 1 , ... (e.g., hasChild, loves, ...) – individual names a 0 , a 1 , ... (e.g., john, mary, ...) – concept constructs: ⊤ , ⊓ , ¬ , ∃ , ∀ , ≥ q , ... (e.g., Person ⊓ Female) role constructs: R − , R ◦ S , ... – (e.g., isChildOf) – axiom construct: ⊑ (e.g., Man ⊑ Person) • Concepts: – concept names ⊤ , ⊥ , ¬ C , C ⊓ D , ∀ R.C , ∃ R.C , ≥ qR.C , – where C , D are concepts and R a role Examples: Person ⊓ Female, Person ⊓ ¬ Female, Person ⊓ ∃ hasChild . ⊤ , Person ⊓ ∀ hasChild . Male Moscow, 23 August 2010 3
Description logic semantics (standard Tarski-style) interpretation is a structure I = (∆ I , · I ) • ∆ I is the domain of I (a non-empty set) – · I is an interpretation function that maps: – subset A I of ∆ I ( A I i ⊆ ∆ I ) �→ concept name A i ∗ i i ⊆ ∆ I × ∆ I ) binary relation R I over ∆ I ( R I role name R i �→ ∗ i element a I of ∆ I ( a I i ∈ ∆ I ) �→ individual name a i ∗ i • interpretation of complex concepts in I : ( ⊤ ) I = ∆ I ( ⊥ ) I = ∅ – and ( ¬ C ) I = ∆ I \ C I – ( C ⊓ D ) I = C I ∩ D I – ( ∀ R.C ) I = { x ∈ ∆ I | ∀ y ∈ ∆ I � ( x, y ) ∈ R I → y ∈ C I � – } ( ∃ R.C ) I = { x ∈ ∆ I | ∃ y ∈ C I ( x, y ) ∈ R I } – � x ∈ ∆ I | ♯ { y ∈ C I | ( x, y ) ∈ R I } ≥ q � ( ≥ qR.C ) I = – Moscow, 23 August 2010 4
TBoxes statements about how concepts and roles are related to each other A TBox T is a finite set of terminological axioms : C ⊑ D • C is subsumed by D ( concept inclusion ) R ⊑ S • R is a subrole of S ( role inclusion ) an interpretation I satisfies an axiom C I ⊆ D I – I | = C ⊑ D iff R I ⊆ S I – I | = R ⊑ S iff An interpretation I is a model of T I satisfies every axiom of T if Moscow, 23 August 2010 5
ABoxes assert knowledge about individuals An ABox A is a finite set of assertional axioms C ( a ) • concept assertion for an individual R ( a, b ) • role assertion for a pair of individuals an interpretation I satisfies an assertion a I ∈ C I – I | = C ( a ) iff ( a I , b I ) ∈ R I – I | = R ( a, b ) iff An interpretation I is a model of a knowledge base K = ( T , A ) if I satisfies every axiom of T and A Moscow, 23 August 2010 6
OWL ontology example • Prot´ eg´ e 4.0 a free, open source ontology editor http://protege.stanford.edu/ where you can also find a library of ontologies (tutorials explaining how to use Prot´ eg´ e are at http://www.co-ode.org/resources/tutorials/ ) • built-in ontology reasoners FaCT++ , Pellet or HermiT http://owl.man.ac.uk/factplusplus/ http://pellet.owldl.com/ http://hermit-reasoner.com/ Moscow, 23 August 2010 7
Reasoning problems Concept satisfiability: given K = ( T , A ) and C , decide whether there is = K with C I � = ∅ I | Subsumption: given T and concepts C, D , decide whether T | = C ⊑ D i.e., ∀I ( I | = T → I | = C ⊑ D ) Instance checking: given K = ( T , A ) , C and an individual a from A , decide whether K | = C ( a ) Exercise: show that these three problems are reducible to each other Conjunctive query answering: given a KB K = ( T , A ) , a CQ q ( � x ) and a tuple a of individual names from A , decide whether K | � = q ( � a ) Query answering is typically a harder problem than the other three Moscow, 23 August 2010 8
First-order translation A ( x ) A ❀ ¬ C ¬ C ( x ) ❀ C ⊓ D C ( x ) ∧ D ( x ) ❀ � � ∀ R.C ∀ y R ( x, y ) → C ( y ) ❀ � � ∃ R.C ∃ y R ( x, y ) ∧ C ( y ) ❀ ≥ qR.C ∃ ≥ q y ( R ( x, y ) ∧ C ( y )) ❀ � � C ⊑ D ∀ x C ( x ) → D ( x ) ❀ DL is embeddable into the 2-variable fragment of first-order logic with counting (full FOL is undecidable; this fragment is in NExpTime) Moscow, 23 August 2010 9
Unique name assumption (UNA) An interpretation I is a model of a KB K = ( T , A ) under the UNA if I | = K and a I i � = a I j , for any distinct object names a i and a j occurring in A OWL: a more flexible approach • UNA is dropped (so no restrictions on interpretations of object names) • User is provided with the constructs = ( sameAs ) and � = ( differentFrom ) to explicitly impose constraints on individual names • UNA is expressible: add a i � = a j to A , for all distinct a i and a j in A Price of = Have to check whether a = b in A under given equality constraints Equivalent to reachability in undirected graphs, which is L OG S PACE -complete . . . just peanuts for most DLs, but not for DL-Lite & OWL 2 QL. . . (Reingold 2008) Moscow, 23 August 2010 10
The history of description logic so far . . . – mid 1990s: efficient reasoning cannot afford full Booleans sub-Boolean DLs with ⊓ and ∀ are enough FL , AL , . . . combined complexity ≤ NP mid 1990s – 2005 ‘efficient’ reasoning possible for ExpTime DLs (FaCT,...) full Booleans and other constructs SHIQ , SHOIN ( ≈ OWL 1), SROIQ ( ≈ OWL 2) ≥ E XP T IME mid 2005 – . . . new challenges: answering queries & HUGE ontologies Horn DLs with ⊓ and ∃ DL-Lite and EL families ≤ P Moscow, 23 August 2010 11
Ontology-based data access Aim: to achieve logical transparency in accessing data – hide from the user where and how data is stored – present only a conceptual view of the data – query the data sources through the conceptual model using RDBMSs AcademicStaff domain subclass ontology teaches r a n g e Lecturer Module data sources Moscow, 23 August 2010 12
Designing DL for conceptual data modelling Employee 1..1 1..* empCode: Integer Translating into DL: salary: Integer worksOn boss TopManager ⊑ Manager 3..* Manager Project AreaManager ⊑ ¬ TopManager projectName: String 1..* Manager ⊑ AreaManager ⊔ TopManager 1..1 Employee ⊑ ∃ salary . ⊤ ⊤ ⊤ manages {disjoint, complete} ∃ salary − . ⊤ ⊤ ⊤ ⊑ Integer AreaManager TopManager 1..1 ≥ 2 salary . ⊤ ⊤ ⊤ ⊑ ⊥ ≥ 3 worksOn − . ⊤ Project ⊑ ⊤ ⊤ manages ⊑ worksOn CEO ⊓ ( ≥ 5 worksOn . ⊤ ⊤ ⊤ ) ⊓ ∃ manages . ⊤ ⊤ ⊤ ⊑ ⊥ (integrity constraint) DL-Lite Moscow, 23 August 2010 13
Basic DL-Lite logics under UNA combined complexity sat.: NP 1. DL-Lite N data comp. instance: in AC 0 bool P − | ::= R P data comp. query: coNP ⊥ | | ≥ qR B ::= A | ¬ C | C 1 ⊓ C 2 C ::= B C 1 ⊑ C 2 TBox axioms combined complexity: P 2. DL-Lite N data comp. instance: in AC 0 horn data comp. query: in AC 0 TBox axioms B 1 ⊓ · · · ⊓ B n ⊑ B 3. DL-Lite N comb. comp.: NL OG S PACE krom d.c. instance: in AC 0 B 1 ⊑ B 2 B 1 ⊑ ¬ B 2 ¬ B 1 ⊑ B 2 TBox axioms d.c. query: coNP 4. DL-Lite N core = DL-Lite N horn ∩ DL-Lite N comb. comp.: NL OG S PACE krom d.c. instance: in AC 0 d.c. query: in AC 0 DL-Lite bool , DL-Lite horn , DL-Lite krom , DL-Lite core : only ∃ R available Moscow, 23 August 2010 14
Observations and examples DL-Lite can only speak about the domains and ranges of binary relations, and how many successors and predecessors a point can have but not about the types of these successors/predecessors; types are defined uniformly by domain/range constraints Examples. Describe the models of the following KBs: 1. T = {⊤ ⊑ ∃ R, ≥ 2 R ⊑ ⊥} , A = ∅ ∃ R − ⊑ ∃ R, ≥ 2 − R ⊑ ⊥} , 2. T = { A ⊑ ¬∃ R − , A ⊑ ∃ R, A = { A ( a ) } • Infinite models are required; no finite model property • Tree model property • Can be simulated by first-order formulas with one variable Moscow, 23 August 2010 15
Recommend
More recommend