ldk r logics for data and knowledge representation classl (part 3): reasoning with an abox 1

17
L Logics for D Data and K Knowledge R Representation ClassL (part 3): Reasoning with an ABox 1

Upload: maryann-kelley

Post on 02-Jan-2016

218 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: LDK R Logics for Data and Knowledge Representation ClassL (part 3): Reasoning with an ABox 1

LLogics for DData and KKnowledge RRepresentation

ClassL (part 3): Reasoning with an ABox

1

Page 2: LDK R Logics for Data and Knowledge Representation ClassL (part 3): Reasoning with an ABox 1

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

Page 3: LDK R Logics for Data and Knowledge Representation ClassL (part 3): Reasoning with an ABox 1

ABox, syntax 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), …

3

Student(paul)Professor(fausto)

To be read: paul belongs to (is in) Student fausto belongs to (is in) Professor

ABOX :: REASONING WITH AN ABOX :: ELIMINATING THE ABOX :: ASSUMPTIONS

Page 4: LDK R Logics for Data and Knowledge Representation ClassL (part 3): Reasoning with an ABox 1

ABox, semantics 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.

4

ABOX :: REASONING WITH AN ABOX :: ELIMINATING THE ABOX :: ASSUMPTIONS

Page 5: LDK R Logics for Data and Knowledge Representation ClassL (part 3): Reasoning with an ABox 1

ABox, semantics∆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}

5

A

Student(paul)Professor(fausto)

ABOX :: REASONING WITH AN ABOX :: ELIMINATING THE ABOX :: ASSUMPTIONS

Page 6: LDK R Logics for Data and Knowledge Representation ClassL (part 3): Reasoning with an ABox 1

Individuals in the TBox 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,…,an

I}

6

Student ≡ {Jack, Paul, …, Mary} (the name is optional)

ABOX :: REASONING WITH AN ABOX :: ELIMINATING THE ABOX :: ASSUMPTIONS

Page 7: LDK R Logics for Data and Knowledge Representation ClassL (part 3): Reasoning with an ABox 1

Reasoning Services 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

ABOX :: REASONING WITH AN ABOX :: ELIMINATING THE ABOX :: ASSUMPTIONS

Page 8: LDK R Logics for Data and Knowledge Representation ClassL (part 3): Reasoning with an ABox 1

Reasoning via expansion of the ABox 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

ABOX :: REASONING WITH AN ABOX :: ELIMINATING THE ABOX :: ASSUMPTIONS

Page 9: LDK R Logics for Data and Knowledge Representation ClassL (part 3): Reasoning with an ABox 1

Reasoning via expansion

9

TUndergraduate ⊑ TeachBachelor ≡ Student ⊓ UndergraduateMaster ≡ Student ⊓ UndergraduatePhD ≡ Master ⊓ ResearchAssistant ≡ PhD ⊓ Teach

Assistant(Rui) PhD(Rui)Teach(Rui) Master(Rui) Research(Rui)Student(Rui)Undergraduate(Rui)

AMaster(Chen)PhD(Enzo)Assistant(Rui)

Master(Chen) Student(Chen) Undergraduate(Chen)

PhD(Enzo)Master(Enzo)Research(Enzo)Student(Enzo)Undergraduate(Enzo)

ABOX :: REASONING WITH AN ABOX :: ELIMINATING THE ABOX :: ASSUMPTIONS

The expansion of A w.r.t. T:

Page 10: LDK R Logics for Data and Knowledge Representation ClassL (part 3): Reasoning with an ABox 1

Consistency

10

T AParent ≡ Mother ⊔ Father Mother(Mary)Father ≡ Male ⊓ hasChild Father(Mary)Mother ≡ Female ⊓ hasChildMale ≡ 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)

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

Page 11: LDK R Logics for Data and Knowledge Representation ClassL (part 3): Reasoning with an ABox 1

Instance checking

11

Consider T and A from the previous example.

Is Phd(Rui) entailed?YES! The assertion is in the expansion of A.

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

Page 12: LDK R Logics for Data and Knowledge Representation ClassL (part 3): Reasoning with an ABox 1

Instance retrieval

12

Consider T and A from the previous example.

Find all the instances of UndergraduateLooking at the expansion of A we have {Chen, Enzo, Rui}

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.

Page 13: LDK R Logics for Data and Knowledge Representation ClassL (part 3): Reasoning with an ABox 1

Concept realization

13

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.

Page 14: LDK R Logics for Data and Knowledge Representation ClassL (part 3): Reasoning with an ABox 1

Concept realizationConsider 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.14

TUndergraduate ⊑ TeachBachelor ≡ Student ⊓ UndergraduateMaster ≡ Student ⊓ UndergraduatePhD ≡ Master ⊓ ResearchAssistant ≡ PhD ⊓ Teach

AMaster(Chen)PhD(Enzo)Assistant(Rui)

ABOX :: REASONING WITH AN ABOX :: ELIMINATING THE ABOX :: ASSUMPTIONS

Page 15: LDK R Logics for Data and Knowledge Representation ClassL (part 3): Reasoning with an ABox 1

Eliminating the ABox 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.

15

A = {Master(Chen), Master(Paul), PhD(Enzo), PhD(Ronald), Assistant(Rui)}

New concepts:Master-Chen, Master-Paul, PhD-Enzo, PhD-Ronald, Assistant-RuiTheir interpretation is the singleton set containing the individual.

T is extended with:{Master-Chen ⊑ Master, PhD-Enzo ⊑ PhD, Assistant-Rui ⊑ Assistant}

ABOX :: REASONING WITH AN ABOX :: ELIMINATING THE ABOX :: ASSUMPTIONS

Page 16: LDK R Logics for Data and Knowledge Representation ClassL (part 3): Reasoning with an ABox 1

Eliminating the ABox: the algorithm 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) ;

}

16

ABox expansion

ABox elimination

DPLL Reasoning by eliminating T’.(see previous lesson)

ABOX :: REASONING WITH AN ABOX :: ELIMINATING THE ABOX :: ASSUMPTIONS

Page 17: LDK R Logics for Data and Knowledge Representation ClassL (part 3): Reasoning with an ABox 1

Closed and Open world 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.

NOTE: In ABoxes we use OWA.

17

ABOX :: REASONING WITH AN ABOX :: ELIMINATING THE ABOX :: ASSUMPTIONS