Download presentation
Presentation is loading. Please wait.
1
Logics for Data and Knowledge Representation
ClassL (part 3): Reasoning with an ABox
2
Outline World descriptions, assertions (ABox) Reasoning with the ABox
Satisfiability/Consistency Instance checking Instance retrieval Concept realization Eliminating the ABox: Reducing to DPLL reasoning Closed and open world assumptions 2
3
ABOX :: REASONING WITH AN ABOX :: ELIMINATING THE ABOX :: ASSUMPTIONS
ABox, syntax ABOX :: REASONING WITH AN ABOX :: ELIMINATING THE ABOX :: ASSUMPTIONS The second component of the knowledge base is the world description, the ABox. In an ABox one introduces individuals, by giving them names, and one asserts properties about them. We denote individual names as a, b, c,… An assertion with concept C is called concept assertion (or simply assertion) in the form: C(a), C(b), C(c), … Student(paul) Professor(fausto) To be read: paul belongs to (is in) Student fausto belongs to (is in) Professor
4
ABOX :: REASONING WITH AN ABOX :: ELIMINATING THE ABOX :: ASSUMPTIONS
ABox, semantics ABOX :: REASONING WITH AN ABOX :: ELIMINATING THE ABOX :: ASSUMPTIONS We give semantics to ABoxes by extending interpretations to individual names An interpretation I: L ∆I not only maps atomic concepts to sets, but in addition it maps each individual name a to an element aI ∈ ∆I, namely I(a) = aI ∈ ∆I Unique name assumption (UNA). We assume that distinct individual names denote distinct objects in the domain NOTE: ∆I denotes the domain of interpretation, a denotes the symbol used for the individual (the name), while aI is the actual individual of the domain.
5
ABOX :: REASONING WITH AN ABOX :: ELIMINATING THE ABOX :: ASSUMPTIONS
ABox, semantics ABOX :: REASONING WITH AN ABOX :: ELIMINATING THE ABOX :: ASSUMPTIONS ∆I = {Fausto, Jack, Paul, Mary} We mean that: I(paul) ∈ I(Student) I(fausto) ∈ I(Professor) I(paul) = Paul I(fausto) = Fausto I (Professor) = {Fausto} I (Student) = {Jack, Paul, Mary} A Student(paul) Professor(fausto) 5
6
Individuals in the TBox
ABOX :: REASONING WITH AN ABOX :: ELIMINATING THE ABOX :: ASSUMPTIONS Sometimes, it is convenient to allow individual names (also called nominals) not only in the ABox, but also in the TBox They are used to construct concepts. The most basic one is the “set” constructor, written: {a1,…,an} It defines a concept, without giving it a name, by enumerating its elements, with the semantics: {a1,…,an}I = {a1I,…,anI} Student ≡ {Jack, Paul, …, Mary} (the name is optional)
7
ABOX :: REASONING WITH AN ABOX :: ELIMINATING THE ABOX :: ASSUMPTIONS
Reasoning Services ABOX :: REASONING WITH AN ABOX :: ELIMINATING THE ABOX :: ASSUMPTIONS Given an ABox A, we can reason (w.r.t. a TBox T) about the following: Satisfiability/Consistency: An ABox A is consistent with respect to T if there is an interpretation I which is a model of both A and T. Instance checking: checking whether an assertion C(a) is entailed by an ABox, i.e. checking whether a belongs to C. A ⊨ C(a) if every interpretation that satisfies A also satisfies C(a). Instance retrieval: given a concept C, retrieve all the instances a which satisfy C. Concept realization: given a set of concepts and an individual a find the most specific concept(s) C (w.r.t. subsumption ordering) such that A ⊨ C(a). 7
8
Reasoning via expansion of the ABox
ABOX :: REASONING WITH AN ABOX :: ELIMINATING THE ABOX :: ASSUMPTIONS Reasoning services over an ABox w.r.t. an acyclic TBox can be reduced to checking an expanded ABox. We define the expansion of an ABox A with respect to T as the ABox A’ that is obtained from A by replacing each concept assertion C(a) with the assertion C’(a), with C’ the expansion of C with respect to T. A is consistent with respect to T iff its expansion A’ is consistent A is consistent iff A is satisfiable (*), i.e. non contradictory. (*) in PL, under the usual translation, with C(a) considered as a proposition different from C(b) 8
9
Reasoning via expansion
ABOX :: REASONING WITH AN ABOX :: ELIMINATING THE ABOX :: ASSUMPTIONS T Undergraduate ⊑ Teach Bachelor ≡ Student ⊓ Undergraduate Master ≡ Student ⊓ Undergraduate PhD ≡ Master ⊓ Research Assistant ≡ PhD ⊓ Teach A Master(Chen) PhD(Enzo) Assistant(Rui) The expansion of A w.r.t. T: Master(Chen) Student(Chen) Undergraduate(Chen) PhD(Enzo) Master(Enzo) Research(Enzo) Student(Enzo) Undergraduate(Enzo) Assistant(Rui) PhD(Rui) Teach(Rui) Master(Rui) Research(Rui) Student(Rui) Undergraduate(Rui) 9
10
ABOX :: REASONING WITH AN ABOX :: ELIMINATING THE ABOX :: ASSUMPTIONS
Consistency ABOX :: REASONING WITH AN ABOX :: ELIMINATING THE ABOX :: ASSUMPTIONS Satisfiability/Consistency: An ABox A is consistent with respect to T if there is an interpretation I which is a model of both A and T. We simply say that A is consistent if it is consistent with respect to the empty TBox T A Parent ≡ Mother ⊔ Father Mother(Mary) Father ≡ Male ⊓ hasChild Father(Mary) Mother ≡ Female ⊓ hasChild Male ≡ Person ⊓ Female A is not consistent w.r.t. T: In fact, from the expansion of T we get that Mother and Father are disjoint. A is consistent (w.r.t. the empty TBox, no constraints)
11
ABOX :: REASONING WITH AN ABOX :: ELIMINATING THE ABOX :: ASSUMPTIONS
Instance checking ABOX :: REASONING WITH AN ABOX :: ELIMINATING THE ABOX :: ASSUMPTIONS Instance checking: checking whether an assertion C(a) is entailed by an ABox, i.e. checking whether a belongs to C. A ⊨ C(a) if every interpretation that satisfies A also satisfies C(a). A ⊨ C(a) iff A ⋃ { C(a)} is inconsistent Consider T and A from the previous example. Is Phd(Rui) entailed? YES! The assertion is in the expansion of A.
12
ABOX :: REASONING WITH AN ABOX :: ELIMINATING THE ABOX :: ASSUMPTIONS
Instance retrieval ABOX :: REASONING WITH AN ABOX :: ELIMINATING THE ABOX :: ASSUMPTIONS Instance retrieval: given a concept C, retrieve all the instances a which satisfy C. Implementation: A trivial, but not optimixed implementation consists in doing instance checking for all instances. Consider T and A from the previous example. Find all the instances of Undergraduate Looking at the expansion of A we have {Chen, Enzo, Rui}
13
ABOX :: REASONING WITH AN ABOX :: ELIMINATING THE ABOX :: ASSUMPTIONS
Concept realization ABOX :: REASONING WITH AN ABOX :: ELIMINATING THE ABOX :: ASSUMPTIONS Concept realization: given a set of concepts and an individual a find the most specific concept(s) C (w.r.t. subsumption ordering) such that A ⊨ C(a). Dual problem of Instance retrieval Implementation: A trivial, but not optimixed implementation consists in doing instance checking for all concepts.
14
ABOX :: REASONING WITH AN ABOX :: ELIMINATING THE ABOX :: ASSUMPTIONS
Concept realization ABOX :: REASONING WITH AN ABOX :: ELIMINATING THE ABOX :: ASSUMPTIONS Consider T and A from the previous example. Given the instance Rui, and the concept set {Student, PhD, Assistant} find the most specific concept C such that A ⊨ C(Rui) Rui is in the extension of all the concepts above. The following chain of subsumptions holds: Assistant ⊑ PhD ⊑ Student Therefore, the most specific concept is Assistant. T Undergraduate ⊑ Teach Bachelor ≡ Student ⊓ Undergraduate Master ≡ Student ⊓ Undergraduate PhD ≡ Master ⊓ Research Assistant ≡ PhD ⊓ Teach A Master(Chen) PhD(Enzo) Assistant(Rui) 14
15
ABOX :: REASONING WITH AN ABOX :: ELIMINATING THE ABOX :: ASSUMPTIONS
RECALL: ABoxes contain assertions of the form C(a). To eliminate the ABox we need to create a corresponding concept for each assertion, e.g. of the form C-a and a new axiom C-a ⊑ C. This causes an exponential blow up. A = {Master(Chen), Master(Paul), PhD(Enzo), PhD(Ronald), Assistant(Rui)} New concepts: Master-Chen, Master-Paul, PhD-Enzo, PhD-Ronald, Assistant-Rui Their interpretation is the singleton set containing the individual. T is extended with: {Master-Chen ⊑ Master, PhD-Enzo ⊑ PhD, Assistant-Rui ⊑ Assistant} 15
16
Eliminating the ABox: the algorithm
ABOX :: REASONING WITH AN ABOX :: ELIMINATING THE ABOX :: ASSUMPTIONS It is always possible to reduce reasoning problems w.r.t. an acyclic TBox T and an ABox A to problems without them. See for instance the algorithm for subsumption (all the others can be reduced to it). Input: a TBox T, an ABox A, the two concepts C and D Output: true if C ⊑ D holds or false otherwise boolean function IsSubsumedBy(T, A, C, D) { A’ = Expand(A, T); T’ = ConvertAssertions(T, A’); return IsSubsumedBy(T’, C, D) ; } ABox expansion ABox elimination DPLL Reasoning by eliminating T’. (see previous lesson) 16
17
Closed and Open world assumptions
ABOX :: REASONING WITH AN ABOX :: ELIMINATING THE ABOX :: ASSUMPTIONS Closed world Assumption CWA (in Databases): anything which is not explicitly asserted is false Open World Assumption OWA (in Abox): anything which is not explicitly asserted (positive or negative) is unknown NOTE: a Database has/is one model. Query answering is model checking. NOTE: an ABox has a set of models. Query answering is satisfiability.
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.