Fuzzy Description Logics 1. Introduction to Description Logics Rafael Peñaloza Rende, January 2016
Literature Description Logics Baader, Calvanese, McGuinness, Nardi, Patel-Schneider (eds.) The Description Logics Handbook Cambridge University Press Fuzzy Logic Hájek Metamathematics of Fuzzy Logic Kluwer Academic Publishers January 2016 Description Logics 2
Knowledge Representation Desired properties: formal: well-defined, clear syntax, and formal semantics high-level: only relevant aspects are represented reasoning: implicit knowledge can be infered from represented knowledge effective: practical reasoning tools and efficient implementations January 2016 Description Logics 3
Terminological Knowledge relevant names from the domain classes (concepts) Hero, Villain, relations (roles) fights, helps, objects (individuals) Batman, Hulk, Wonderwoman constraints on these names heroes fight villains only heroes help heroes Batman is a hero deduce consequences subclasses instances Batman fights villains January 2016 Description Logics 4
Description Logics Family of formalisms tailored to represent terminological knowledge Knowledge Base TBox class terminology Language Reasoning ABox facts constructors formal semantics trade-off implicit knowledge algorithms January 2016 Description Logics 5
Description Language (ALC) Basic Terminology N C, N R disjoint sets: concept names and role names (ALC-)Concept Descriptions Built by induction every A N C is a concept description if C, D are concept descriptions and r N R then C D (conjunction) C D (disjunction) C (negation) r.c (existential restriction) r.c (value restriction) are concept descriptions := A A := A A (bottom) (top) January 2016 Description Logics 6
Examples Hero u Female fights.mutant Rich t Human fights. Human January 2016 Description Logics 7
Semantics Based on interpretations I = ( I, I) consisting of a non-empty domain I and an interpretation function I where A I I for all A N C r I I I for all r N R (concepts interpreted as sets) (roles interpreted as binary relations) The function is extended to concept descriptions as follows: (C D) I := C I D I (C D) I := C I D I ( C) I := I \ C I ( r.c) I := {d I there is e I with (d, e) r I and e C I } ( r.c) I := {d I for all e I : (d, e) r I implies e C I } January 2016 Description Logics 8
Interpretation Example Hero R helps Hero B Hero S Hero,Female W fights fights fights fights fights Rich,Human,Female helps Human Female Rich,Human ( Hero fights.human ) I = {B,S} ( Hero fights.(rich Human) ) I = {R,S,W} ( helps.human ) I = I \ {R} January 2016 Description Logics 9
DL vs FOL ALC is a fragment of First-order Logic concept names are unary predicates role names are binary predicates concept descriptions are formulas with one free variable Syntactic translation C τ x(c) τ x(a) := A(x) for A N C τ x(c D) := τ x(c) τ x(d) τ x(c D) := τ x(c) τ x(d) τ x( C) := τ x(c) τ x( r.c) := y.(r(x, y) τ yc) τ x( r.c) := y.(r(x, y) τ yc) y new variable different from x τ x( r.(a s.b)) = y.(r(x, y) τ y(a s.b)) = y.(r(x, y) (A(y) z.(s(y, z) B(z)))) January 2016 Description Logics 10
Equivalence and Decidability C (as a DL concept description) and τ x(c) (as FO-formula) have the same semantics C I = {d I I = τ x(c)[x d]} The formulas τ x(c) belong to decidable subclasses of FOL two-variable fragment guarded fragment January 2016 Description Logics 11
DL vs Modal Logic ALC is a syntactic variant of multimodal K concept names are propositional variables role names are transition relations Concept descriptions C yield modal formulas Θ(C) Θ(A) := A(x) for A N C Θ(C D) := Θ(C) Θ(D) Θ(C D) := Θ(C) Θ(D) Θ( C) := Θ(C) Θ( r.c) := [r]θ(c) Θ( r.c) := r Θ(C) C and Θ(C) have the same semantics: I is a Kripke structure C I is the set of worlds that make Θ(C) true in I. January 2016 Description Logics 12
More Expressivity ALC is only one of many description logics that have been studied many other constructors exist and can be used for KR Number Restrictions ( n r.c) I := {d I {e (d, e) r I, e C I } n} at least n r-successors that belong to C ( n r.c) I := {d I {e (d, e) r I, e C I } n} at most n r-successors that belong to C A hero that fights at least two villains, of which at most one is a sidekick Hero ( 2 fights.villain) ( 1 fights.( helps.villain)) January 2016 Description Logics 13
More Expressivity ALC is only one of many description logics that have been studied many other constructors exist and can be used for KR Inverse Roles for a role name r, r 1 denotes the inverse: (r 1 ) I := {(e, d) (d, e) r I } A hero that only fights villains with female sidekicks Hero fights.(villain helps 1.Female) January 2016 Description Logics 13
Defining Complex Concepts A concept definition is of the form A C where A N C C is a concept description An acyclic TBox is a finite set of concept definitions that does not contain multiple definitions A C A D does not contain cyclic definitions (directly or indirectly) A r.b B C C s.a Interpretation I is a model of an acyclic TBox T if A I = C I for all A C T January 2016 Description Logics 14
Example Heroin Hero Female Sidekick helps. Criminal fights.hero MutantCriminal Criminal fights.mutant Superhero Hero (Rich Human haspower.superpower) Overlord ( 3 helps 1.Criminal) January 2016 Description Logics 15
Beyond Definitions A general concept inclusion (GCI) is of the form C D with C, D concept descriptions A general TBox is a finite set of GCIs I is a model of the general TBox T if C I D I for all C D T Hero helps 1.Hero Villain Hero Notice: A C can be expressed by A C, C A January 2016 Description Logics 16
Facts About Individuals Facts are expressed with the help of assertions C(a) (concept assertion) r(a, b) (role assertion) with C a concept description, r a role, and a, b elements from a set N I of individual names An ABox is a finite set of assertions I assigns elements of I to individuals in N I I is a model of the ABox A if it satisfies all the assertions: a I C I for all C(a) A (a I, b I ) r I for all r(a, b) A (Rich Hero)(Batman) ( helps.villain)(harley) ( Human)(Superman) helps(robin,batman) fights(batman,joker) January 2016 Description Logics 17
Restricting Roles A role inclusion axiom (RI) is of the form r t or r s t with r, s, t role names An RBox is a finite set of RIs I is a model of the RBox R if r I t I for all r t R r I s I t I for all r s t R helps fights fights January 2016 Description Logics 18
Reasoning Make the implicit knowledge explicit Subsumption: is C a subconcept of D? C T D iff C I D I for all models I of T polynomial reductions Satisfiability: is C non-contradictory? C is satisfiable w.r.t. T iff C I for some model I of T Consistency: is A non-contradictory? A is consistent w.r.t. T iff A has a model that is also a model of T Instantiation: is e an instance of C? A = T C(e) iff e I C I for all models I of T and A negation needed January 2016 Description Logics 19
Reductions subsumption satisfiability C T D iff C D is unsatisfiable w.r.t. T satisfiability subsumption C is satisfiable w.r.t. T iff C T satisfiability consistency C is satisfiable w.r.t. T iff {C(a)} is consistent w.r.t. T consistency instantiation A is consistent w.r.t. T iff a is not an instance of w.r.t. T and A instantiation consistency a is an instance of C w.r.t. T and A iff A { C(a)} is inconsistent w.r.t T January 2016 Description Logics 20
Removing Acyclic TBoxes Due to acyclicity, concepts can be expanded to contain only primitive concepts For an acyclic TBox T and concept description C, the expansion C T T is obtained from C by replacing every defined concept by its definition until no defined concepts appear of C w.r.t. Sidekick helps. Criminal fights.hero MutantCriminal Criminal fights.mutant Sidekick MutantCriminal expands to helps. fights.hero fights.mutant January 2016 Description Logics 21
Exponential Reduction Acyclicity ensures that expansion is correct and terminates However, it might be exponential on the size of T A 0 r.a 1 s.a 1 A 1 r.a 2 s.a 2. A n 1 r.a n s.a n T has n axioms but A T 0 contains An 2n times Reasoning w.r.t. acyclic TBoxes reducible to reasoning w.r.t. empty TBox (but with exponential blowup) January 2016 Description Logics 22
Classification Computing the subsumption relations between all concept names in T Heroin Hero Female MaleHero Hero Female MutantHeroin Heroin Mutant Elite Rich Human Superhero Hero Elite Elite Hero Female Mutant Rich SuperHero MaleHero Human Heroin MutantHeroin January 2016 Description Logics 23
Realization Computing the most specific names to which an individual belongs Heroin Hero Female MaleHero Hero Female MutantHeroin Heroin Mutant Elite Rich Human Superhero Hero Elite Hero(Superman) Superman is an instance of Hero, MaleHero, Elite, Superhero January 2016 Description Logics 24
... and many other non-standard inferences Axiom-pinpointing explain why some consequences follow Generalization compute the concept description that best describes an individual compute the concept description that best generalizes two given concepts... January 2016 Description Logics 25
Reasoning Procedures A decision procedure must be sound: all positive answers are correct complete: all negative answers are correct terminating: always gives an answer after finite time Additional desiderata: efficient: should match as much as possible the complexity of the problem practical: easy to implement and optimize, well-behaved in practice Recall that DLs are between propositional and first-order logic January 2016 Description Logics 26
Tableau Algorithm for ALC We first describe an algorithm for consistency of ABoxes with empty TBox: satisfiability, subsumption, instance are reducible to consistency acyclic TBoxes can be eliminated (we will see how to deal with general TBoxes later) Idea: construct a finite model of A start with A expand using tableau rules check for obvious contradictions A complete (cannot be further expanded) ABox without contradictions is a model January 2016 Description Logics 27
Example T : Heroin Hero Female Subsumption: helps.hero helps.female? T helps.heroin Reduction to satisfiability: is the following concept unsatisfiable w.r.t. T? helps.hero helps.female helps.heroin Reduction to consistency: is the following ABox inconsistent w.r.t. T? {( helps.hero helps.female helps.heroin)(a)} Expansion: is the following ABox inconsistent? {( helps.hero helps.female helps.(hero Female))(a)} NNF: is the following ABox inconsistent? {( helps.hero helps.female helps.( Hero Female))(a)} January 2016 Description Logics 28
Expansion Deciding inconsistency of {( helps.hero helps.female helps.( Hero Female))(a)} a h.h h.f h( H F) h.h, h.f, h( H F) h h b H H F H F c F H F H This is a complete, open ABox model of input ABox It is consistent, subsumption does not hold January 2016 Description Logics 29
Formal Algorithm Input An ABox A 0 Output yes if A 0 is consistent, no otherwise Preprocessing: transform all concept descriptions of A 0 to negation normal form (C D) C D (C D) C D C C ( r.c) r. C ( r.c) r. C NNF transformation in polynomial time, is semantics invariant January 2016 Description Logics 30
Formal Algorithm (2) Data Structure: finite set of ABoxes. Initialized to {A 0 } Rule applications: tableau rules replace one ABox from the set by finitely many new ABoxes Termination: when no rule can be applied to any ABox in the set ABox is complete if no rule applies to it Return: yes if the set contains an open A is open if contains no obvious contradiction of the form A(a), A(a) no otherwise January 2016 Description Logics 31
Tableau Rules There is one rule for each constructor (except negation) -rule -rule -rule -rule Condition A contains (C D)(a) but not both C(a) and D(a) Action A := A {C(a), D(a)} Condition A contains (C D)(a) but neither C(a) nor D(a) Action A := A {C(a)} and A := A {D(a)} Condition A contains ( r.c)(a) but there is no b with {r(a, b), C(b)} A Action A := A {r(a, b), C(b)} where b is a new individual name Condition A contains ( r.c)(a) and r(a, b) not C(b) Action A := A {C(b)} January 2016 Description Logics 32
Local Correctness All rules are consistency-preserving -rule Condition A contains ( r.c)(a) but there is no b with {r(a, b), C(b)} A Action A := A {r(a, b), C(b)} where b is a new individual name A has a model iff A has a model: Let I be a model of A As ( r.c)(a) A, there is d I with (a I, d) r I and d C I I is identical to I but b I = d I is a model of A, because b does not appear in A I is also a model of {r(a, b), C(b)} (by definition) I is a model of A Trivial because A A January 2016 Description Logics 33
Local Correctness - Non-determinism -rule Condition A contains (C D)(a) but neither C(a) nor D(a) Action A := A {C(a)} and A := A {D(a)} A has a model iff A has a model or A has a model: Let I be a model of A As (C D)(a) A, a I (C D) I = C I D I If a I C I, then I is a model of A If a I D I, then I is a model of A Trivial because A A and A A January 2016 Description Logics 34
Termination Every sequence of rule applications terminates: 1. every application of a rule adds assertions to an individual monotonic 2. concepts in assertions are subconcepts of those appearing in A 0 finitely many rule applications per individual 3. a given individual can have at most as many new successors as there are existential restrictions in A 0 4. the length of a chain of new successors is bounded by the maximal nesting of quantifiers in A 0 : every new individual x has a unique predecessor y the maximal quantifier depth of assertions for x is strictly smaller than that for y finitely many individuals January 2016 Description Logics 35
Soundness Every complete, open ABox has a model Let A be complete and open. We build the interpretation I A : I A := {x x is an individual in A} x I A := x for all individual names appearing in A A I A := {x A(x) A} for all A N C r I A := {(x, y) r(x, y) A} for all r N R I A is a model of A: for every C(x) A, x I A C I A (induction) C = A with A N C trivial by definition C = A since A is open, A(x) / A and hence x / A I A C = C 1 C 2 since A is complete, C 1 (x), C 2 (x) A thus x C I A 1 C I A 2 = C I A the other constructors can be treated in a similar way (Exercise!) January 2016 Description Logics 36
Completeness ABoxes that are not open do not have a model Trivial: A not open means A(x), A(x) A No interpretation can satisfy both restrictions January 2016 Description Logics 37
Adding GCIs A general TBox can be encoded into a single GCI C: {C 1 D 1,..., C n D n} { ( C 1 D 1 )... ( C n D n)} If there is a GCI C with C in NNF, we can use the rule GCI-rule for C Condition A contains the individual a but not C(a) Action A := A {C(a)} local correctness, soundness, and completeness follow analogously what about termination? January 2016 Description Logics 38
Blocking Consistency of {P(a)} w.r.t. GCI r.p a r r r a a P, r.p P, r.p P, r.p Solution: blocking node y is blocked by (direct or indirect) predecessor x if all assertions for y exist also for x [C(y) A C(x) A] -rule not applicable to blocked nodes local correctness, termination, and completeness are easy to show soundness by cyclic model: successors of blocked individuals are successors of blocking individuals January 2016 Description Logics 39