14.07.2013 Views

Deskripcn´ı logika

Deskripcn´ı logika

Deskripcn´ı logika

SHOW MORE
SHOW LESS

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

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!