Logiques de descriptions§
| author: | Pierre-Antoine Champin |
|---|
| author: | Pierre-Antoine Champin |
|---|
Clauses de Horn
Systèmes experts (PROLOG)
cretois(minos) .
menteur(X) :- cretois(X) .
?- menteur(minos)
yes
?- menteur(M)
M=minos
Difficulté à maintenir de grosses bases de règles
Frames (Minsky)
approche « objet »
stéréotypes
valeurs par défaut
logique non monotone
(tous les oiseaux volent, les autruches ne volent pas)
L'univers du discours est constitué d'individus, appartenant à des concepts (ou classes), et reliés entre eux par des rôles (ou propriété).
| LD | LPO |
|---|---|
| Individu | Terme |
| Concept | Prédicat 1-aire |
| Rôle | Prédicat 2-aire |
| Concepts | Rôles | Individus |
|---|---|---|
| Homme | connait | john |
| Voiture | (a pour) père | jane |
| Rouge | mère | ab-123-cd |
| Menteur | enfant | |
| Ferrari | conduit |
| Syntaxe | Appellation | Sémantique |
|---|---|---|
| C ⊑ D | subsomption de concepts | ∀ x, C(x) → D(x) |
| r ⊑ s | subsomption de rôles | ∀ x, y, r(x, y) → s(x, y) |
NB: l'équivalence peut s'exprimer par deux subsomptions symétriques : C ⊑ D et D ⊑ C
| Syntaxe | Appellation | Sémantique |
|---|---|---|
| ⊤ | concept universel (top) | Δ |
| ⊥ | concept absurde (bottom) | ∅ |
| ¬C | complément | { x | ¬C(x) } |
| C ⊔ D | union | { x | C(x) } ∪ { x | D(x) } |
| C ⊓ D | intersection | { x | C(x) } ∩ { x | D(x) } |
| {a} | extension | {a} |
| Syntaxe | Appellation | Sémantique |
|---|---|---|
| ∃ r C | qualificateur existentiel | { x | ∃ y, r(x, y) ∧ C(y) } |
| ∀ r C | qualificateur universel | { x | ∀ y, ¬r(x, y) ∨ C(y) } |
| = n r C | quantificateur | { x | #{y | r(x, y) ∧ C(y)} = n } |
| ≤ n r C | quantificateur (max) | { x | #{y | r(x, y) ∧ C(y)} ≤ n } |
| ≥ n r C | quantificateur (min) | { x | #{y | r(x, y) ∧ C(y)} ≥ n } |
NB : on omet généralement C lorsqu'il s'agit de ⊤ ; e.g.
∃ r , ∀ r , = 1 r ...
| Syntaxe | Appellation | Sémantique |
|---|---|---|
| r⁻ | rôle inverse | { (x, y) | r(y, x) } |
| r∘s | rôle composé | { (x, y) | ∃ z, r(x, z) ∧ s(z, y) } |
| ¬r | complément | { (x, y) | ¬r(x, y) } |
Chaque LD impose des contraintes sur :
afin de garantir que les mécanismes de raisonnement
→ compromis entre expressivité et complexité.
Téléchargement de Protégé (version ≥ 4)
http://protege.stanford.edu/
Prise en main
http://protegewiki.stanford.edu/wiki/Protege4GettingStarted
Protégé utilise une syntaxe alternative
- inspirée de la syntaxe Manchester
- n'utilisant que l'alphabet latin
- donnes des phrases en pseudo-anglais → lisibilité
| Protégé | LD |
|---|---|
| Thing | ⊤ |
| Nothing | ⊥ |
| C and D | C ⊓ D |
| C or D | C ⊔ D |
| not C | ¬C |
| {a} | {a} |
| Protégé | LD |
|---|---|
| r some C | ∃ r C |
| r only C | ∀ r C |
| r exactly n C | = n r C |
| r max n C | ≤ n r C |
| r min n C | ≥ n r C |
| Protégé | LD |
|---|---|
| inverse(r) | r⁻ |
| r o s | r∘s |
Protégé offre des axiomes « de haut niveau » qui visent à
NB: ces axioms viennent en fait du langage OWL.
| Protégé | LD |
|---|---|
| Equivalent class(C,D) | C ⊑ D et D ⊑ C |
| Super class(C,D) | C ⊑ D |
| Member(C,a) | C(a) |
| Disjoint class(C,D) | C ⊑ ¬D |
| Protégé | LD |
|---|---|
| Functional(r) | ⊤ ⊑ (≤ 1 r) |
| Inverse functional(r) | ⊤ ⊑ (≤ 1 r⁻) |
| Transitive(r) | r ∘ r ⊑ r |
| Symmetric(r) | r ⊑ r⁻ |
| Asymmetric(r) | r ⊑ ¬(r⁻) |
| Reflexive(r) | ⊤ ⊑ (∃ r self) |
| Irreflexive(r) | ⊤ ⊑ ¬(∃ r self) |
| Protégé | LD |
|---|---|
| Domain(r,C) | ∃ r ⊑ C |
| Range(r,C) | ∃ r⁻ ⊑ C |
| Equivalent property(r,p) | r ⊑ p et p ⊑ r |
| Super property(r,p) | r ⊑ p |
| Inverse property(r,p) | r ⊑ p⁻ et p⁻ ⊑ r |
| Disjoint property(r,p) | r ⊑ ¬p |
| Property chain(r,p,q...) | p ∘ q ∘ ... ⊑ r |
http://champin.net/2014/iade1-tp-ld/