Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Deskripční <strong>logika</strong><br />
Petr Kˇremen<br />
FEL ČVUT<br />
Petr Kˇremen (FEL ČVUT) Deskripční <strong>logika</strong> 37 / 157
Co nás čeká<br />
1 Základy deskripční logiky<br />
2 Jazyk ALC<br />
Syntax a sémantika<br />
3 Cyklické a acyklické TBOXy<br />
Petr Kˇremen (FEL ČVUT) Deskripční <strong>logika</strong> 38 / 157
Základy deskripční logiky<br />
Základy deskripční logiky<br />
Petr Kˇremen (FEL ČVUT) Deskripční <strong>logika</strong> 39 / 157
Základy deskripční logiky<br />
Kontrolní otázky k FOL 2<br />
Co je to term, axiom/formule, teorie, model, univerzální uzávěr,<br />
rezoluce, logick´y d˚usledek ?<br />
Co vyjadˇruje pˇredpoklad otevˇrenosti (OWA)/uzavˇrenosti (CWA) světa<br />
?<br />
Jak´y je rozdíl, mezi predikátem (relací) a predikátov´ym symbolem ?<br />
Co znamená, ˇrekneme-li, ˇze FOL je nerozhodnutelná ?<br />
Co znamená, ˇrekneme-li, ˇze FOL je monotónní ?<br />
Co ˇríká věta o úplnosti, věta o korektnosti,věta o dedukci ?<br />
2 First Order Logic = predikátová <strong>logika</strong> prvního ˇrádu tak jak ji znáte.<br />
Petr Kˇremen (FEL ČVUT) Deskripční <strong>logika</strong> 40 / 157
Motivace<br />
Základy deskripční logiky<br />
Proč potˇrebujeme nov´y logick´y jazyk – coˇzpak nám nestačí FOL ?<br />
FOL je nerozhodnutelná – mnoho logick´ych d˚usledk˚u nelze v konečném<br />
čase ověˇrit.<br />
Leckdy nepotˇrebujeme plnou expresivitu FOL.<br />
Ale vˇzdyt’ je tu pˇreci Prolog – pouˇzívaná a optimalizovaná<br />
implementace FOL ?<br />
Prolog není implementací FOL – OWA vs. CWA, místo logické negace<br />
pouˇzívá NAF, problémy s vyjádˇrením disjunktivní znalosti, apod.<br />
Proč nám nestačí relační databáze ?<br />
RDBMS pouˇzívají pˇredpoklad uzavˇreného světa (CWA) a podporují<br />
pouze konečné domény.<br />
RDBMS nejsou dostatečně flexibilní – změna v DB modelu b´yvá<br />
komplikovanějˇsí, neˇz pˇridání/odebrání axiomu z ontologie.<br />
Petr Kˇremen (FEL ČVUT) Deskripční <strong>logika</strong> 41 / 157
Motivace (2)<br />
Základy deskripční logiky<br />
Proč si nevystačíme s rámci, sémantick´ymi sítěmi, apod. ?<br />
Nemají dostatečně dobˇre definovanou sémantiku:<br />
Jaká je sémantika slotu - ∀R · C nebo ∃R · C?<br />
Jaká je sémantika definice tˇríd, ⊑ nebo ≡ ?<br />
Co a k čemu jsou tedy deskripční logiky ?<br />
jedná se o skupinu jazyk˚u vytvoˇren´ych pro modelování terminologické<br />
znalosti, neúplné znalosti. Jedná se téměˇr v´yhradně o podmnoˇziny FOL.<br />
první jazyky vznikly jako snaha o formalizaci sémantick´ych sítí a rámc˚u.<br />
První implementace v 80’s – systémy KL-ONE, KAON, Classic .<br />
Petr Kˇremen (FEL ČVUT) Deskripční <strong>logika</strong> 42 / 157
Koncepty a role<br />
Základy deskripční logiky<br />
Základními stavebními bloky deskripčních logik jsou :<br />
(atomické) koncepty - reprezentující (pojmenované) unární predikáty<br />
(tˇrídy), napˇr. Rodic, nebo Osoba ⊓ ∃maDite · Osoba.<br />
(atomické) role - reprezentující (pojmenované) binární predikáty<br />
(relace), napˇr. maDite, nebo jeDitetem −<br />
individuály - reprezentující prvky tˇríd/jednotlivce, napˇr. JIRI<br />
Ontologie K větˇsiny deskripčních logik se skládá<br />
TBOXu T - reprezentující axiomy obecně platné v dané doméně,<br />
napˇr. T = {Muz ⊑ Osoba}<br />
ABOXu A - reprezentující konkrétní relační strukturu, napˇr.<br />
A = {Muz(Jiri)}<br />
Jednotlivé deskripční logiky se liˇsí v moˇznostech tvoˇrit sloˇzitějˇsí<br />
koncepty, role a v typech axiom˚u.<br />
Petr Kˇremen (FEL ČVUT) Deskripční <strong>logika</strong> 43 / 157
Interpretace<br />
Základy deskripční logiky<br />
. . . slouˇzí k definování v´yznamu symbol˚u zaveden´ych v´yˇse.<br />
Protoˇze se pohybujeme v podmnoˇzině FOL, definujeme<br />
interpretaci redukcí na FOL formule a vyuˇzijeme standardní<br />
FOL strukturu.<br />
Interpretace bude pro nás dvojice : I = (∆ I , · I ), kde ∆ I je interpretační<br />
doména a · I je interpretační funkce. Máme-li atomick´y<br />
koncept A, atomickou roli R a individuál a, potom<br />
A I ⊆ ∆ I<br />
R I ⊆ ∆ I × ∆ I<br />
a I ∈ ∆ I<br />
Petr Kˇremen (FEL ČVUT) Deskripční <strong>logika</strong> 44 / 157
Logick´y d˚usledek<br />
Základy deskripční logiky<br />
Máme-li libovolnou mnoˇzinu S axiom˚u (resp. ontologii K = (T , A), kde<br />
poloˇzíme S = T ∪ A), potom<br />
I |= S pokud I |= α pro vˇsechny α ∈ S (I je modelem S, resp. K)<br />
S |= β pokud I |= β vˇzdy kdyˇz I |= S (β je logick´ym d˚usledkem S,<br />
resp. K)<br />
S je konzistentní, pokud S má alespoň jeden model<br />
Petr Kˇremen (FEL ČVUT) Deskripční <strong>logika</strong> 45 / 157
Jazyk ALC<br />
Jazyk ALC<br />
Petr Kˇremen (FEL ČVUT) Deskripční <strong>logika</strong> 46 / 157
Jazyk ALC Syntax a sémantika<br />
ALC (= attributive language with complements)<br />
TBOX<br />
Máme-li koncepty C, D, atomick´y koncept A a atomickou roli R, potom pro<br />
interpretaci I :<br />
koncept koncept I popis<br />
⊤ ∆ I (univerzální koncept)<br />
⊥ ∅ (nesplniteln´y koncept)<br />
¬C ∆ I \ C I (negace)<br />
C ⊓ D C I ∩ D I (pr˚unik)<br />
C ⊔ D C I ∪ D I (sjednocení)<br />
∀R · C {a | ∀b ((a, b) ∈ R I ⇒ b ∈ C I )} (univ. omezení)<br />
∃R · C {a | ∃b ((a, b) ∈ R I ∧ b ∈ C I )} (exist. omezení)<br />
axiom I |= axiom iff popis<br />
C ⊑ D C I ⊆ D I (inkluze)<br />
C ≡ D C I = D I (ekvivalence)<br />
ABOX (UNA = unique name assumption 3 )<br />
axiom I |= axiom iff popis<br />
C(a) a I ∈ C I (instance konceptu)<br />
R(a, b) (a I , b I ) ∈ R I (instance role)<br />
3 dvě r˚uzné instance označují r˚uzné objekty domény<br />
Petr Kˇremen (FEL ČVUT) Deskripční <strong>logika</strong> 47 / 157
ALC – pˇríklad<br />
Jazyk ALC Syntax a sémantika<br />
Pˇríklad<br />
Uvaˇzujme, ˇze bychom chtěli vytvoˇrit informační systém pro správu<br />
genealogick´ych dat. Potˇrebujeme integrovat informace z r˚uzn´ych zdroj˚u -<br />
databází, informačních systém˚u s r˚uzn´ymi datov´ymi modely. Jako<br />
integrační vrstvu jsme si zvolili popis v deskripční logice. Máme atomické<br />
koncepty Osoba, Muz, Prarodic a atomickou roli maDite.<br />
Jak´ym konceptem popíˇseme mnoˇzinu osob, které mají za své<br />
potomky pouze muˇze, nebo nemají potomky ˇzádné ?<br />
Osoba ⊓ ∀maDite · Muz<br />
Jak definovat koncept Prarodic ?<br />
Prarodic ≡ Osoba ⊓ ∃maDite · ∃maDite · ⊤<br />
Jak by vypadal pˇredchozí axiom v predikátové logice ?<br />
∀x (Prarodic(x) ≡ (Osoba(x) ∧ ∃y (maDite(x, y) ∧ ∃z (maDite(y, z)))))<br />
Petr Kˇremen (FEL ČVUT) Deskripční <strong>logika</strong> 48 / 157
Interpretace – Pˇríklad<br />
Pˇríklad<br />
Jazyk ALC Syntax a sémantika<br />
Uvaˇzujme ontologii K1 = ({Prarodic ≡<br />
Osoba ⊓ ∃maDite · ∃maDite · ⊤}, {Prarodic(JAN)}), modelem K1<br />
m˚uˇze b´yt napˇr. interpretace I1 :<br />
∆ I1 = Muz I1 = Osoba I1 = {Jan, Filip, Martin}<br />
maDite I1 = {(Jan, Filip), (Filip, Martin)}<br />
Prarodic I1 = {Jan}<br />
JAN I1 = {Jan}<br />
tento model je konečn´y a má strukturu koˇrenového stromu s koˇrenem<br />
v uzlu Jan :<br />
Petr Kˇremen (FEL ČVUT) Deskripční <strong>logika</strong> 49 / 157
Vlastnosti model˚u<br />
Jazyk ALC Syntax a sémantika<br />
Na konci pˇredchozího pˇríkladu jsme se dotkli velmi<br />
d˚uleˇzit´ych vlastností model˚u deskripčních logik. Podívejme se<br />
na problém obecněji. Zvolen´y jazyk deskripční logiky má<br />
vlastnost<br />
TMP (tree model property), pokud kaˇzd´y splniteln´y koncept 4 C<br />
tohoto jazyka má model ve tvaru koˇrenového stromu.<br />
FMP (finite model property), pokud kaˇzdá konzistentní ontologie<br />
K tohoto jazyka má konečn´y model.<br />
Obě tyto vlastnosti pˇredstavují d˚uleˇzité charakteristiky<br />
pˇrísluˇsné deskripční logiky, které mají pˇrím´y vliv na inferenci<br />
(viz. dále).<br />
Zejména (pˇrípadně zobecněná) TMP je charakteristickou<br />
vlastností větˇsiny deskripčních logik a je základem pro určení<br />
jejich rozhodnutelnosti a sloˇzitosti.<br />
4 Koncept je splniteln´y, je-li alespoň jedním modelem interpretován jako neprázdná<br />
mnoˇzina<br />
Petr Kˇremen (FEL ČVUT) Deskripční <strong>logika</strong> 50 / 157
Cyklické a acyklické TBOXy<br />
Cyklické a acyklické TBOXy<br />
Petr Kˇremen (FEL ČVUT) Deskripční <strong>logika</strong> 51 / 157
Cyklické a acyklické TBOXy<br />
Terminologické axiomy<br />
definice je axiom ve tvaru A ≡ C, kde A je atomick´y koncept.<br />
primitivní koncept se vyskytuje pouze na pravé straně terminologick´ych<br />
axiom˚u<br />
definovan´y koncept je atomick´y koncept, kter´y není primitivní<br />
acyklick´y TBOX Mějme TBOX T , kter´y obsahuje pouze inkluze (C ⊑ D).<br />
Utvoˇrme graf, jehoˇz vrcholy jsou vˇsechny atomické koncepty<br />
vyskytující se v T a hrana vede od atomického konceptu A k<br />
B, pokud se A “vyskytuje” na leve straně nějakého axiomu a<br />
B na pravé straně téhoˇz. T je acyklick´y, je-li tento graf<br />
acyklick´y.<br />
Petr Kˇremen (FEL ČVUT) Deskripční <strong>logika</strong> 52 / 157
Pˇríklad<br />
Pˇríklad<br />
Cyklické a acyklické TBOXy<br />
primitivní (atomick´y) koncept<br />
definovan´y (atomick´y) koncept<br />
Woman ≡ Person ⊓ Female<br />
Man ≡ Person ⊓ ¬Woman<br />
Mother ≡ Woman ⊓ ∃hasChild · Person<br />
Father ≡ Man ⊓ ∃hasChild · Person<br />
Parent ≡ Father ⊔ Mother<br />
Grandmother ≡ Mother ⊓ ∃hasChild · Parent<br />
MotherWithoutDaughter ≡ Mother ⊓ ∀hasChild · ¬Woman<br />
Wife ≡ Woman ⊓ ∃hasHusband · Man<br />
Petr Kˇremen (FEL ČVUT) Deskripční <strong>logika</strong> 53 / 157
Pˇríklad – pokračování<br />
Cyklické a acyklické TBOXy<br />
Kaˇzd´y acyklick´y TBOX T lze expandovat do sémanticky ekvivalentní T ′ ,<br />
která obsahuje pouze axiomy s pravou stranou tvoˇrenou primitivním<br />
konceptem a levou stranou tvoˇrenou pouze definovan´ymi koncepty.<br />
Pˇríklad<br />
primitivní koncept<br />
definovan´y koncept<br />
Woman ≡ Person ⊓ Female<br />
Man ≡ Person ⊓ ¬(Person ⊓ Female)<br />
Mother ≡ (Person ⊓ Female) ⊓ ∃hasChild · Person<br />
. . .<br />
Z hlediska inference (viz. dále) je lze kaˇzd´y acyklick´y TBOX<br />
“zkompilovat” do ABOXu a není nutné pak TBOX v˚ubec uvaˇzovat.<br />
Petr Kˇremen (FEL ČVUT) Deskripční <strong>logika</strong> 54 / 157
Cyklické a acyklické TBOXy<br />
Pˇríklad – CWA × OWA<br />
Example<br />
ABOX<br />
hasChild(JOCASTA, OEDIPUS) hasChild(JOCASTA, POLYNEIKES)<br />
hasChild(OEDIPUS, POLYNEIKES) hasChild(POLYNEIKES, THERSANDROS)<br />
Patricide(OEDIPUS) ¬Patricide(THERSANDROS)<br />
Hrany reprezentují hasChild instance relací a barvy odliˇsují instance<br />
koncept˚u – Patricide a ¬Patricide<br />
<br />
<br />
<br />
<br />
JOCASTA<br />
<br />
OEDIPUS<br />
POLYNEIKES<br />
<br />
THERSANDROS<br />
Dotaz 1 (∃hasChild · (Patricide ⊓ ∃hasChild · ¬Patricide))(JOCASTA),<br />
Dotaz 2 Jaké jsou instance konceptu<br />
((¬Patricide) ⊓ (∃[ − hasChild]) · Patricide ⊓ ∃hasChild − · {JOCASTA}<br />
? Jak by liˇsil v´ysledek, kdybychom uvaˇzovali CWA ?<br />
JOCASTA<br />
Petr Kˇremen (FEL ČVUT) Deskripční <strong>logika</strong> 55 / 157<br />
<br />
x<br />
<br />
y