Ontologies et Logiques de description§
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)
On utilise ici la syntaxe Manchester de OWL2.
Il existe d'autres syntaxes (XML, RDF), mais elles portent la même sémantique.
L'univers du discours est constitué d'individus, appartenant à des classes (ou concepts), et reliés entre eux par des propriétés (ou rôles).
OWL | LPO |
---|---|
Individu | Constante |
Classe | Prédicat 1-aire |
Propriété | Prédicat 2-aire |
Classes | Propriétés | Individus |
---|---|---|
Personne | connait | john |
Voiture | (a pour) père | jane |
Rouge | mère | ab-123-cd |
Menteur | enfant | |
Ferrari | conduit |
Syntaxe | Appellation | Sémantique |
---|---|---|
C SubClassOf D | subsomption | ∀ x, C(x) → D(x) |
p SubPropertyOf q | subsomption | ∀ x, y, p(x, y) → q(x, y) |
Exemples
Syntaxe | Appellation | Sémantique |
---|---|---|
Thing | Classe universel (top) | Δ |
Nothing | Classe absurde (bottom) | ∅ |
Syntaxe | Appellation | Sémantique |
---|---|---|
not C | complément | { x | ¬C(x) } |
C or D | union | { x | C(x) } ∪ { x | D(x) } |
C and D | intersection | { x | C(x) } ∩ { x | D(x) } |
{a} | extension | {a} |
Exemples
Syntaxe | Appellation | Sémantique |
---|---|---|
p some C | qualificateur existentiel | { x | ∃ y, p(x, y) ∧ C(y) } |
p only C | qualificateur universel | { x | ∀ y, p(x, y) → C(y) } |
= { x | ∀ y, C(y) ∨ ¬p(x, y) } |
Exemples
Note
∀ p, C, (p some C) = not (p only (not C))
ce qui est une autre façon d'expliquer le "paradoxe" de "conduit only Ferrari"
Syntaxe | Appellation | Sémantique |
---|---|---|
p exactly n C | quantificateur (=) | { x | #{y | p(x, y) ∧ C(y)} = n } |
p max n C | quantificateur (≤) | { x | #{y | p(x, y) ∧ C(y)} ≤ n } |
p min n C | quantificateur (≥) | { x | #{y | p(x, y) ∧ C(y)} ≥ n } |
NB : on omet généralement C lorsqu'il s'agit de Thing
Exemples
SubClassOf | |
---|---|
conduit some Voiture | Adulte |
inverse conduit some Thing | Véhicule |
Personne | Adulte or Enfant |
Personne | père exactly 1 Homme and mère exactly 1 Femme |
Personne | not Voiture |
Syntaxe | Appellation | Sémantique |
---|---|---|
inverse p | propriété inverse | { (x, y) | p(y, x) } |
p ∘ q ⁽¹⁾ | propriété composée | { (x, y) | ∃ z, p(x, z) ∧ q(z, y) } |
¬p ⁽¹⁾ | complément | { (x, y) | ¬p(x, y) } |
Exemples :
⁽¹⁾ pas exprimable directement en syntaxe Manchester (cf. SubPropertyChain, DisjointWith)
OWL offre des axiomes « de haut niveau » qui visent à
Axiome | équivalent à |
---|---|
C EquivalentTo D | C SubClassOf D et D SubClassOf C |
C DisjointWith D | C SubClassOf not D |
C DisjointWith D, E, F... | C, D, E, F... disjointes deux à deux |
C DisjointUnionOf D, E, F... | C EquivalentTo (D or E or F...) et D, E, F... disjointes deux à deux |
Axiome | équivalent à |
---|---|
p EquivalentTo q | p SubPropertyOf q et q SubPropertyOf p |
p DisjointWith q | p SubPropertyOf ¬q ⁽¹⁾ |
p SubPropertyChain q o r o s | p SubPropertyOf q ∘ r ∘ s ⁽¹⁾ |
p InverseOf q | p EquivalentTo inverse q |
⁽¹⁾ cet énnoncé n'est pas conforme à la syntaxe Manchester
Axiome | équivalent à |
---|---|
p Transitive | p SubPropertyChain p o p |
p Symmetric | p SubPropertyOf inverse p |
p Asymmetric | p DisjointWith inverse p |
p Functional | Thing SubClassOf p max 1 |
p InverseFunctional | Thing SubClassOf (inverse p max 1) |
p Reflexive | Thing SubClassOf p Self |
p Irreflexive | Thing DisjointWith p Self |
Axiome | équivalent à |
---|---|
p Domain C | p some Thing SubClassOf C |
p Range C | inverse p some Thing SubClassOf C |
Example
OWL définit en fait deux sortes différentes de propriétés :
Full | aucune contrainte, indécidable |
DL | minimum de contraintes, décidable mais très complexe |
EL | quantifications existentielles (EL++), expressivité adaptée à certains domaines (biologie) |
QL | peut s'implémenter au dessus d'un langage de requêtes (SQL) |
RL | peut s'implémenter au dessus d'un langage à base de règles (Datalog) |
Téléchargement de Protégé (version ≥ 5) :
Prise en main :