Logique de Description
Logique de Description
Logique de Description
Description Logics
Guy Lapalme!
Université de Montréal!
Approches pour la
représentation de connaissances
• logique !
- logique des prédicats!
- raisonnement: vérifier la conséquence logique!
• nonréseaux
logique (inspiration cognitive)!
- sémantiques!
- règles tirées d'expériences psychologiques!
- raisonnement: procédure ad-hoc de manipulation
de structures
"2
Logique de description
"3
Logique de description
"4
Composantes DL
• individus ou objets (constantes)
identifiables par un nom
exemples: MARY, PETER, PAUL!
• concepts atomiques (prédicats unaires)
classes d’objets ou ensemble de propriétés
exemples: Woman, Human, Mother!
• rôles atomiques (prédicats binaires)
relations entre les objets
exemples: hasChild, hasHusband!
• constructeurs
exemples: ¬, ⊓, ⊔, ⊑, ∃, ∀
"5
Mécanismes d’inférence
"6
Inférences DL - 1
TBox: axiomes sur les concepts
• Unpeut-il
concept est-il consistant ?!
- exister au moins une instance d’une classe ?!
• Subsomption: un concept peut-il être déduit?!
- Woman ⊑ Person!
Woman ⊑ Animal
- Person ⊑ Animal
"7
Inférences DL - 2
ABox: assertions sur les individus
"8
Un contenu de TBox
Figure 2.2 de F. Baader, W. Nutt
MotherWithoutDaughter(MARY)
Father(PETER)
hasChild(MARY,PETER)
hasChild(MARY,PAUL)
hasChild(PETER,HARRY)
Combinaison
Woman ≡ Person ⊓ Female TBox
Man ≡ Person ⊓ ¬Woman
Mother ≡ Woman ⊓ ∃hasChild.Person
Father ≡ Man ⊓ ∃hasChild.Person
Parent ≡ Father ⊔ Mother
Grandmother ≡ Mother ⊓ ∃hasChild.Parent
MotherWithManyChildren ≡ Mother ⊓ ≥3 hasChild
MotherWithoutDaughter ≡ Mother ⊓ ∀hasChild.¬Woman
Wife ≡ Woman ⊓ ∃hasHusband.Man
MotherWithoutDaughter(MARY) ABox
Father(PETER)
hasChild(MARY,PETER)
hasChild(MARY,PAUL)
hasChild(PETER,HARRY)
Grandmother(MARY)
Exemple de langage de
description (AL)
Attributive Language
hasChild rôle
Person ⊓ ∃hasChild.⊤ personnes avec au moins un enfant
Person ⊓ ∀hasChild.⊥ personnes sans enfants
Person ⊓ ∀hasChild.Female personnes qui n'ont que des filles
GrandParentChoyé : {a, d, e, f, g}
On notera dans cette interprétation qu’on a plus d’individus dans la
Exemple
Parent ≡ ∃aEnfant.⊤
d’interprétation que ce à quoi on s’attendait. C’est qu’il y a une erreur dans la descripti
I(mariéAvec)
I(Homme) = {a,= {(b,
b, c, fg}), (f, b)}
Voici une interprétation
aEnfant
posssible, qui réfère f
àu
Avec I(aEnfant) = {(a, c),
cette inteprétation, on(b,obtient
d), (b,lese),ensembles
(c, g)} suivants pour 1 : chacune des classes définies :
mariéAvec
∆ = {a, b, c, d, e, f, g}
I(Homme) = {a, b, c, g}
I(aEnfant) = {(a, c), (b, d), (b, e), (c, g)}
I(mariéAvec) = {(b, f ), (f, b)}
∆ = {a}
vec cetteI(Homme)
inteprétation,=on{}
obtient les ensembles suivants pour chacune des classes définies :
I(aEnfant) = {}
Parent : {a, b, c}
I(mariéAvec)
ParentDeFemme = {}
: {b}
IlCélibataire : {a,
s’agit d’une c, d, e, g}
interprétation qui correspond à un monde qui ne comprend qu’un seul indiv
HommeMarié
est {b}
une femme:célibataire n’ayant pas d’enfants.
GrandParentChoyé {a, d,
Exemple tiré de : :Michel e, f, Logique
Gagnon, g} descriptive et OWL, École polytechnique, Montréal, 2012.
On notera dans cette interprétation qu’on a plus d’individus dans la classe GrandParentChoyé
Familles AL - 1
C : négations de concepts arbitraires
(¬C) = Δ ∖ C !
ɪ ɪ ɪ
U : Disjonction
(C ⊔ D)ɪ = Cɪ ∪ D ɪ!
"17
Familles AL - 2
N : Restriction de cardinalité!
(≧nR)ɪ = {a∈ Δɪ | |{b|(a,b)∈Rɪ}| ≥ n}!
(≦nR)ɪ = {a∈ Δɪ | |{b|(a,b)∈Rɪ}| ≤ n}!
p.e.! Mother ⊓ ≥3hasChild!
Q : Restriction de cardinalité qualifiée!
(≧nR.C)ɪ = {a∈ Δɪ | |{b|(a,b)∈Rɪ ⋀ b ∈Cɪ}| ≥ n}!
(≦nR.C)ɪ = {a∈ Δɪ | |{b|(a,b)∈Rɪ ⋀ b ∈Cɪ}| ≤ n}!
p.e.! Mother ⊓ ≥3 hasChild.Woman!
"18
Familles AL - 3
p.e.! hasChild:PETER !
"19
Familles de logique
U E C Hiérarchies
(C ⊓ D) (∃R.C) (¬C) Rôles de rôles
transitifs
AL ALC SH
N O
ALCN SHOIN (individus)
(≥ nR) (OWL-DL)
(≤ nR)
ALCQ Q
SHIQ
(≥ n R.C)
(≤ n R.C)
ALCF SHIF I
(OWL-Lite) (inverse)
F
(fonctions)
Figure tirée de : Michel Gagnon, Logique descriptive et OWL, École polytechnique, Montréal, 2012.
"20
Constructions OWL en ALC
"21
Noms des extensions de AL OWL vs DL
U Union Full ∅
C complément
DL SHOIN (D)
E restrictions existentielles de rôle
DL-Lite SHIF (D)
F rôles fonctionnels
I rôles inverses 2 Full ∅
"23
DL peut aussi être traduit en
logique des prédicats - 1 Fig 5.7 de Hitzler et al.,2010
"24
DL peut aussi être traduit en
logique des prédicats - 2
πx(∀R.C) = ∀x’(R(x,x’)→πx’(C))!
πx(∃R.C) = ∃x’(R(x,x’)⋀ πx’(C)) !
πx(≥nS.C) = !
∃x1...xn (Λi≠j (xi≠xj) ⋀ Λi(s(x,xi) ⋀ πxi(C))!
πx(≤nS.C) = !
¬∃x1...xn+1 (Λi≠j (xi≠xj) ⋀ Λi(s(x,xi) ⋀ πxi(C)))!
πx({a}) = (x=a)!
"25
DL peut aussi être traduit en
logique des prédicats - 3
π(R1⊑R2) = ∀x∀y(πx,y(R1)→πx,y(R2))!
πx,y(S) = S(x,y)!
πx,y(R-) = πy,x(R)!
πx,y(R1•...•Rn) = ∃x1...xn-1 !
(πx,x1(R1) ⋀ Λi=1..n-2 πxi,xi+1(Ri+1) ⋀ πxn-1,y(Rn))!
π(Ref(R)) = ∀xπx,x(R)!
π(Asy(R)) = ∀x∀y(πx,y(R)→¬πy,x(R))!
π(Dis(R1,R2)) = ¬∃x∃y(πx,y(R1)⋀ x,y(R))
Inférences possibles avec la logique des
prédicats, mais il y a des algorithmes plus
efficaces de résolution sans variable
"26
Exemples de traductions DL en
logique des prédicats -1
Fig 5.9 de Hitzler et al.,2010
• Professor ⊑ FacultyMember
∀x(Professor(x)→FacultyMember(x))!
• Professor ⊑ (Person ⨅ FacultyMember)
⨆ (Person ⨅ ¬PhDStudent)
∀x(Professor(x) → (Person(x) ∧ FacultyMember(x))
∨ (Person(x) ∧ ¬PhDStudent(x)))!
• Exam ⊑ ∀hasExaminer.Professor
∀x (Exam(x) → ∀y(hasExaminer(x,y)→Professor(y)))
"27
Exemples de traductions DL en
logique des prédicats - 2
• Exam ⊑ ≤2hasExaminer
∀x (Exam(x) → ¬∃x1,x2,x3 (x1≠x2)∧(x2≠x3)∧(x1≠x3)
⋀ hasExaminer(x,x1) ⋀ hasExaminer(x,x2)
⋀ hasExaminer(x,x3))!
• hasParent • hasBrother ⊑ hasUncle
∀x∀y(∃x’ hasParent(x,x’) ⋀ hasBrother(x’,y)
→ hasUncle(x,y))
"28
Inférences avec TBox
"31
Transformation en NNF (𝓝)
Fig 5.10 de Hitzler et al.,2010
"32
6.2 Description formelle des règles
Figure tirée de : Michel Gagnon, Logique descriptive et OWL, École polytechnique, Montréal, 2012.
TABLE 1 – Règles de tableau pour la logique ALCN
Exemple de preuve par tableau
Woman ≡ Person ⊓ Female TBox
Man ≡ Person ⊓ ¬Woman
Mother ≡ Woman ⊓ ∃hasChild.Person
Father ≡ Man ⊓ ∃hasChild.Person
Parent ≡ Father ⊔ Mother
Grandmother ≡ Mother ⊓ ∃hasChild.Parent
MotherWithManyChildren ≡ Mother ⊓ ≥3 hasChild
MotherWithoutDaughter ≡ Mother ⊓ ∀hasChild.¬Woman
Wife ≡ Woman ⊓ ∃hasHusband.Man
MotherWithoutDaughter(MARY) ABox
Father(PETER)
hasChild(MARY,PETER)
hasChild(MARY,PAUL)
hasChild(PETER,HARRY)
Person(PAUL). Person(HARRY)
Grandmother(MARY) ?
Remplacement des définitions de la TBox
en absence de définitions circulaires
Adaptation de Figure 2.3 de F. Baader, W. Nutt
(∀hasChild.¬Person)(MARY)
¬Person(PAUL)
¬Person(PETER) car ABox contient!
hasChild(MARY,PAUL)!
hasChild(MARY,PETER)
Ferme car!
Person(PAUL) dans ABox!
Person(PETER) dans TBox transformé
Fermer la quatrième branche
¬(∃hasChild.(Person ⊓ ∃hasChild.Person))(MARY)
(∀hasChild.(¬(Person ⊓ ∃hasChild.Person)))(MARY)
(∀hasChild.(¬Person ⊔ ¬∃hasChild.Person)))(MARY)
(∀hasChild.(¬Person ⊔ ∀hasChild.¬Person)))(MARY)
(∀hasChild.¬Person)(MARY) ⊔ !
((∀hasChild.(∀hasChild.¬Person))(MARY)
((∀hasChild.¬Person))(PETER)
((∀hasChild.¬Person))(PAUL)
"41
Bibliographie
• Michel Gagnon, Logique descriptive et OWL, 2012.!
• P. Fournier-Viger, Une introduction aux logiques de
description, 2011.!
• P. Hitzler, M. Krötzsch, S. Rudolph, Foundations of
Semantic Web, CRC Press, 2010, chap 5.!
• F. Baader, W. Nutt, Basic Description Logics, Chap 2 du
Description Logics Handbook!
• Site de ressources sur la Logique de description:
http://dl.kr.org/!
• Implantations de systèmes d'inférence DL: http://
www.cs.man.ac.uk/~sattler/reasoners.html
"42