Title: Logics for Data and Knowledge Representation
1Logics for Data and KnowledgeRepresentation
2Outline
- Overview
- Syntax
- Semantics
- Terminology
- Reasoning with Terminologies
- World Description
- Reasoning with World Descriptions
- Tableau Algorithm
3Overview
- Description Logics (DLs) is a family of KR
formalisms that represent the knowledge of an
application domain (the world) by - defining the relevant concepts of the domain
(i.e., its terminology), and then - using these concepts to specify the properties of
objects in the domain (i.e., the worlds
description).
4Some History on DLs
- Descended from the structured inheritance
networks (Brachman, 1977). - Introduced to overcome the ambiguities of early
semantic networks and frames. - First realized in the system Kl-One by Brachman
and Schmolze (1985). - First DL presented in the B Ss paper.
- Some nicknames for DLs
- Terminological knowledge representation
languages, - Concept languages,
- Term subsumption languages,
- Kl-One-based knowledge representation languages.
5Three Basic Features
Extended from ClassL
- The basic syntactic building blocks are atomic
concepts, atomic roles, individuals. - The expressive power of DLs is restricted to a
rather small set of constructors for building
complex concepts and relations. - Implicit knowledge about concepts and individuals
can be inferred automatically with the help of
specific reasoning services.
Syntax
Extended from ClassL to Complest Role
Logical
6Architecture of a KR system on DL
TBox
Description Language
Reasoning
ABox
Application Programs
Rules
7Language (Syntax)
- The first step in setting up a formal language
(viz. a descriptive language) is to list the
symbols, that is, the alphabet of symbols. - We denote a generic alphabet of a descriptive (or
description) language dS. - Similarly to any logical language we can divide
symbols in dS in descriptive (nonlogical) and
non-descriptive (logical).
8Outline
- Overview
- Syntax
- Semantics
- Terminology
- Reasoning with Terminologies
- World Description
- Reasoning with World Descriptions
- Tableau Algorithm
9Syntax of DL
- Descriptive dS consists of concept names (set C),
which denote sets of individuals, role names (set
R), which denote binary relations between
individuals, and individual names, (set I), which
denote individuals. - e.g.concept names Room, Person, Fruitrole
names likeSkiing, hasChild, partOf,
isA,..individual names I, you, apple, Fido, ...
10DL Language and Previous Languages
- concept names are propositional variables
- (PL/ClassL)
- role names are binary predicate symbols
- (FOL)
- individual names are constants
- (FOL)
11Language (Syntax)
- Non-descriptive dS provides concept constructors
to build complex formulas, called concept
descriptions and role descriptions, from atomic
formulas. - e.g. ?(negation),
- ?(conjunction),?(for all),
- ?(there exists)
12AL-family Languages
- We shall now discuss various descriptive
languages from the family of AL-languages. - An AL-language ( Attributive Languages) is a
minimal DL language of practical interest. - More expressive descriptive languages are usually
extensions of some AL-language. - AL-languages do not deal with individuals.
13AL Logical Symbols
- Universal concept symbol ?.
- Bottom concept symbol ?.
- Parentheses (auxiliary symbols) (, )
- Logical constants (concept constructors)?
(atomic negation), ? (conjunction) - ?R (for all atomic roles)?R (there exists an
atomic role)
The SAME as in ClassL
New!
14AL Non-logical Symbols
The SAME as in ClassL
- Atomic concept names A, B, ...
- Concept names C, D, ...
- Atomic role names R (generic)
- NOTE There is no logical symbol in AL for
logical implication (as ? in PL and in FOL).
For this, we will use the subsumption symbol ?
instead (as in classL).
New!
15Defined Symbols
- Similarly to ClassL, ? and ? can be defined
- For all concept names C,
- ? df C ? ? C
- ? df ? ? or also ? df U for U be a special
coincept name denoting the Universal Concept. - We prefer to consider ? and ? AL symbols.
16Formation Rules for AL
- Atomic Concepts
- 1. A, B,..., ?, ?.
- Concepts (concept descriptions) 2. All the
atomic concepts3. ?A for A (atomic concept
negation)4. C?D (intersection) 5. ?R.C (value
restriction)6. ?R.?(limited existential
quantification) - Resulting language attributive language (AL).
17Examples
- Atomic concepts Person, Female, Room, ...Atomic
roles hasChild, partOf, isIn, isA,... - Concepts Person ? Female,Person ? ?hasChild.? (
?hasChild )Person ? ?hasChild.?
(Not?hasChild.?) Person ? ?hasChild.Female - Question What is the intended meaning?
18Solution
- Person ? Female
- persons that are female
- Person ? ?hasChild. ? (all those) persons that
have a child - Person ? ?hasChild. ? (all those) persons
without a child - Person ? ?hasChild.Female persons all of whose
children are female
19ALs Extensions - ALU
- Extended Alphabet Logical constants (concept
constructors) ? (disjunction). - Extended concepts (descriptions) C ? D (union)
- The resulting new language (i.e. AL plus the new
set of concepts) usually denoted ALU. - E.g. Mother?Father describes the extension of
parent.
20ALs Extensions - ALE
- Extended Alphabet Logical constants (concept
constructors)?R (there exists an arbitrary
role) - Extended concepts (descriptions) ?R.C (full
existential quantification) - The resulting new language (i.e. AL plus the new
set of concepts) usually denoted ALE. - E.g. ?hasChild.Female describes the extension of
those parents who has at least a daughter.
21ALs Extensions - ALN
- Extended Alphabet Logical constants (concept
constructors)n, n for all n ? N
(at-least/at-most n) - Extended concepts (descriptions) nR (at-least
number restriction)nR (at-most number
restriction) - The resulting new language (i.e. AL plus the new
set of concepts) usually denoted ALN. - E.g. 2 hasChild describes the extension those
parents who has at least 2 children.
22ALs Extensions - ALC
- Extended Alphabet Logical constants (concept
constructors) ? (general negation) - Extended concepts (descriptions) ? C (full
concept negation) - The resulting new language (i.e. AL plus the new
set of concepts) usually denoted ALC. (C stands
for Complement). - E.g. ?(2 hasChild ) describes the extension
those parents who has at most 1 children.
23ALs Extensions (Summary)
- Extending AL by any subsets of the above
constructors yields a particular DL language. - Each language is denoted by a string of the form
ALUENC, where a letter in the name stands
for the presence of the corresponding
constructor. Notation AL. - ALC as the most important in many aspects.(Well
see that ALU ? ALC and ALE ? ALC.)
24ALs Sub-languages
- By eliminating some of the syntactical symbols,
we get some sub-languages of AL. - The most important sub-language obtained by
elimination in the AL family is ClassL. - Historically, another important sub-language is
named as the Frame Language FL0.
25From AL to ClassL
- Elimination (w.r.t. ALUEC!)
- Name Symbols atomic role names R
- Concept constructors ?R, ?R
- Descriptions ?R.C, ?R.C
- The new language is a description language
without roles which is ClassL. - NOTE So far, we are considering DL without
individuals and ABox.
26ALs Contractions FL-
- Elimination (w.r.t ALs alphabet)
- Symbols Universal and bottom symbols ?, ?
- Concept constructors (atomic negation)
- Descriptions ?, ? , ? A (atomic negation)
- The resulting new language (i.e. AL without
negation) is denoted FL-.
27ALs Contractions FL0
- Elimination(w.r.t FL-s alphabet)
- Concept constructors?R (there exists an atomic
role) - Descriptions ?R.?(limited existential
quantification) - The resulting new language (i.e. FL- without the
limited existential quantification) is denoted
FL0. - FL Frame Language (for historical reasons)
28Summary
- DLs are a family of logic-based KR formalisms to
describe a domain in terms of - concepts - roles
- individuals (grounding). - Strictly speaking we do not need DLs to represent
concepts and roles, but the variable-free syntax
of DLs is much more concise! (Thats good for
automation!) - ClassL is ALC without Role.
This will be discussed later.
29Outline
- Overview
- Syntax
- Semantics
- Terminology
- Reasoning with Terminologies
- World Description
- Reasoning with World Descriptions
- Tableau Algorithm
30Semantics
- The elements of the description languages in
AL-family (AL) are plain strings of symbols - The meaning which is intended to be attached to
concept, role, and individual names form an
informal interpretation of the given AL
languages expressions.
No (formal) meaning.
31Recall Interpretation (?, I)
- Def. An interpretation of a language L is a pair
I (?,I), where- ? (domain) is a non-empty set
of objects - I(interpretation function) is a
mapping from L to ?. - NOTE sometimes, the mapping I is written as
I but of the same function. - E.g. I(Person) pp is a person is written as
- PersonI pp is a person.
32AL Interpretation (?,I)
- I(?) Ø and I(?) ? (full domain, Universe)
- For every concept name A of L, I(A) ? ?.
- I(C) ? \ I(C).
- I(C?D) I(C) n I(D) I(C ? D) I(C) ? I(D).
- For every role name R of L, I(R) ? ? ?.
- I(?R.C) a ? ? for all b, if (a,b)?I(R) then
b?I(C). - I(?R. ?) a ? ? exists b s.t. (a,b) ? I(R).
- I(?R.C) a ? ? exists b s.t. (a,b) ? I(R), b
? I(C). - I(nR) a ? ? b (a, b) ? I(R) n.
- I(nR) a ? ? b (a, b) ? I(R) n.
The SAME as in ClassL
33Interpretation of Existential Quantifier
- I(?R.C) a ? ? exists b s.t. (a,b) ? I(R), b
? I(C) - Those that have some value in C with role R.
- Remark a ? ?
34Example
- Those who have a daughter.
- I(?R.C) I(?hasChild.Female) a ? ? exists b
s.t. (a,b) ? I(hasChild), b ? I(Female)
hasChild
Anna has a child betty and betty is a female,
then Anna is an individual of the concept
?hasChild.Female.
35Interpretation of Value Restriction
- I(?R.C) a ? ? for all b, if (a,b)?I(R) then
b?I(C) - Those that have only value in C with role R.
- Remark a ? ?
36Example
- Those who have only daughter(s)
- I(?R.C) I(?hasChild.Female) a ? ? for all
b, if (a,b)?I(R) then b?I(C)
hasChild
37Interpretation of Number Restriction
- I(nR) a?? b (a, b) ? I(R) n
- Those that have relation R to at least n
individuals.
b (a, b) ? I(R) n
38Example
- Those who has at least 2 children
- I(nR) I(2hasChild)a ? ? b (a, b) ?
I(R)n
?
hasChild
Annas children betty, bianca, babara,... are
2. Anna is one individual of those who has at
least 2 children.
39Interpretation of Number Restriction Cont.
- I(nR) a ? ? b (a, b) ? I(R) n
- Those that have relation R to at most n
individuals.
?
b
b'
a
b (a,b) ? I(R) n
40Example
- Those who as at most 2 children
- I(nR) I(2hasChild)a?? b (a, b) ?
I(R)n
?
hasChild
Anna has only one child Betty, so Anna belongs to
the concept of those who has at most 2 children.
41Simple Exercises
- Verify the following equivalences hold for all
interpretations (?,I) - I((C ? D)) I(C ? D)
- I((C ? D)) I(C ? D)
- I(?R.C) I(?R.C)
- I(?R.C) I(?R.C)
- E.g.
- I(?R.C) a ? ? not exists b s.t. (a,b) ?
I(R), b ? I(C) a ? ? ?b. R(a,b)?C(b) - a ? ? ?b. (R(a,b)?C(b))
- a ? ? ?b. R(a,b)?C(b)
- I(?R.C)
42Outline
- Overview
- Syntax
- Semantics
- Terminology
- Reasoning with Terminologies
- World Description
- Reasoning with World Descriptions
- Tableau Algorithm
43Terminological Axioms
- Inclusion Axiom
- C?D
- e.g.
- Master ? 18Pass.Exam?1Finish.Project,
- Professor??Give.Lecture??Organize.(Exam?Experiment
) - Equivalence (Equality) Axiom
- CD
- e.g.
- PhD Postgraduate?3Publish.Paper,
- Parent Man??hasChild.?
- Is the TBox definition the SAME here as in ClassL?
R?S
RS
44Terminology (TBox)
- A terminology (or TBox) is a set of a
(terminological) axioms. - e.g. T is
-
- PhD Postgraduate?3Publish.Paper,
- Parent Person??hasChild.Person,
- hasGrandChild?hasChild
-
- NOTE the punctuations mean logical conjunctions.
- .
45Outline
- Overview
- Syntax
- Semantics
- Terminology
- Reasoning with Terminologies
- World Description
- Reasoning with World Descriptions
- Tableau Algorithm
46TBox Reasoning
- Let T be a TBox
- Satisfiability(with respect to T)
- T satisfies P?
- Subsumption (with respect to T)
- T P ? Q?
- Equivalence (with respect to T)
- (T P Q) T P ? Q and T P ? Q?
- Disjointness (with respect to T)
- T P ? Q ? ??
- NOTE they are the SAME as in ClassL with more
concepts built by the role constructors.
47Outline
- Overview
- Syntax
- Semantics
- Terminology
- Reasoning with Terminologies
- World Description
- Reasoning with World Descriptions
- Tableau Algorithm
48ABox
- In a ABox, one introduces individuals, by giving
- them names, and one asserts properties about
- these individuals.
- We denote individual names as a, b, c,
- An assertion with Role R is called Role assertion
(in contrast to Concept assertion C(a) in ClassL)
as - R(a, b), R(b, c),
- e.g.
- Study(Tin, ldkr)
- NOTE the other part of the ABox is the Concept
assertions the SAME as in Ground ClassL.
The SAME as in ClassL
49Semantics of the ABox
- We give a semantics to ABox by extending
interpretations to individual names. - An interpretation I (?, I) not only maps atomic
concepts to sets, but in addition maps each
individual name a to an element aI ??., namely - I (C(a)) aI ?CI,
- I(R(a, b))(aI, bI)?RI
- We still assume unique name assumption as in
ClassL. - set constructor is the SAME as in ClassL, which
allows individual description in TBox.
The SAME as in ClassL
50Outline
- Overview
- Syntax
- Semantics
- Terminology
- Reasoning with Terminologies
- World Description
- Reasoning with World Descriptions
- Tableau Algorithm
51Consistency
- Consistency An ABox A is consistent with respect
to a TBox T if there is an interpretation I which
is a model of both A and T. - e.g. TParent?1hasChild.Person
- AhasChild(mary, bob), hasChild(mary, cate)
- is consistent but Not consistent with respect
the above TBox. - NOTE it is the SAME as in ClassL, with respect
to more complex TBox (Role axioms).
52Other ABox Reasoning
- Instance Checking Checking whether an assertion
C(a) or R(a, b) is entailed by an ABox A (and
TBox via expansion) - A ? C(a) or A ? R(a, b)
- Instance retrieval Given an ABox A and a concept
C retrieve all instance ai which satisfies C. - A ? C(ai)
- Concept Realization Given an ABox A, a set of
concepts and an individual a find the most
specific concepts C in the set such that A ? C(a) - NOTE the last two services are the SAME as in
ClassL, with respect to more complex TBox (Role
axioms). -
-
53Outline
- Overview
- Syntax
- Semantics
- Terminology
- Reasoning with Terminologies
- World Description
- Reasoning with World Descriptions
- Tableau Algorithm
54Tableaux Calculus
- The Tableaux calculus is a decision procedure
solving the problem of satisfiability. - If a formula is satisfiable, the procedure will
constructively exhibit a model of the formula. - The basic idea is to incrementally build the
model by looking at the formula, by decomposing
it in a top-down fashion. The procedure
exhaustively tries all the possibilities so that
it can prove eventually that no model could be
found for an unsatisfiable formula.
55The Tableau Algorithm
- Construct a model for the input concept
description C0. - Model is represented by tree form.
- The formula has been translated into Negation
Normal Form (NNM). - To decide satisfiability of the concept C0 ,
start with the initial tree (root node). - Repeatedly apply expansion rules until find
contradiction or expansion completed. - Satisfiable iff a complete and contradiction-free
tree is found
56Rules for Tableau Algorithm
57?
- When there are not both C1(x) and C2(x) in the
ABox. - Add to the ABox C1(x) and C2(x) .
-
- ABoxABox?C1(x), C2(x)
58? cont.
- TBoxMother Female ??hasChild.Person
- ABoxMother(Anna)
- Is (?hasChild.Person?? hasParent.Person)
satisfiable? - Mother(Anna)
- (Female ??hasChild.Person)(Anna)
- Female(Anna)
- (?hasChild.Person)(Anna)
- (?hasChild.Person?? hasParent.Person)(Anna)
- (?hasChild.Person)(Anna)
- ( ? hasParent.Person)(Anna)
59?
- When there are neither C1(x) nor C2(x) in the
ABox. - Split into multiple branches
- Add in branch 1 to the ABox C1(x)
- and add in branch 2 to the Abox C2(x) .
-
- ABoxABox?C1(x)
- ABoxABox?C2(x)
60? cont.
- TBoxParent?hasChild.Female??hasChild.Male, Pers
onMale?Female, - MotherParent ?Female
- ABoxMother(Anna)
- Is (?hasChild.Person) satisfiable?
- Mother(Anna)
- Parent(Anna)
- (?hasChild.Female??hasChild.Male)(Anna)
- (?hasChild.Female)(Anna) (?hasChild.Male)(Anna
) -
61?
- When there are no individual name z such that
both C(z) and R(x,z) in the ABox. - Add to the ABox C(z) and R(x,z) .
-
- ABoxABox?C(z), R(x,z)
62? cont.
- TBoxParent?hasChild.Female??hasChild.Male,
PersonMale?Female, - MotherParent ?Female
- ABoxMother(Anna), hasChild(Anna,Bob),
Female(Bob) - Is (?hasChild.Person) satisfiable?
- Mother(Anna)
- Parent(Anna)
- (?hasChild.Female??hasChild.Male)(Anna)
- (?hasChild.Male)(Anna)
- hasChild(Anna,Bob)
- Male(Bob)
63?
- When there is R(x,z) but not C(z) in the ABox.
- Add to the ABox C(z) .
-
- ABoxABox?C(z)
64? cont.
- TBoxDaughterParent?hasChild.Female,
Male?Female?? - ABoxhasSibling(Anna,Bob), Female(Bob)
- Is DaughterMather satisfiable?
- DaughterMather(x)
- ?hasChild.Female(x)
- hasSibling(Anna,Bob)
- Female(Bob)
- Female(Bob)
?
65Example of Tableau Reasoning
- Is ?hasChild.Male??hasChild.Male satisfiable?
- (?hasChild.Male??hasChild.Male)(x)
- (?hasChild.Male)(x)
- (?hasChild.Male)(x)
- hasChild(x,y)
- Male(y)
- Male(y)
?
?
?
66Additional Rules
67Exercise
- Suppose we have the following knowledge base
- TBox
- Female?Male?Human
- Mother?Female
- Father?Male
- Child?has.Mother? ?has.Father
- Male?Female??
- ABox
- Mother(Anna)
- Father(Bob)
- has (Cate,Anna)
- has (Cate,Bob)
Prove Human(Anna) Female(Bob) Child(Cate) Father
?Mother??
68Exercise
- Prove with Tableau algorithm the satisfiability
of the following formula.
69Complexity of Tableau Algorithms
- The satisifiability algorithm of ALC may need
exponential time and space. It is
PSPACE-complete. - A modified algorithm needs only polynomial space
as it assumes a depth-first search and store only
the correct path. - The consistency and instance checking problem for
ALC are also PSPACE-complete. - The complexity results for other Description
Logics varies according to corresponding
constructors.