SlideShare a Scribd company logo
Алгоритм логического анализа


Полиномиальный алгоритм, разрешающий          C ⊑T D




Онтологии и представление знаний, 2010                           1
Алгоритм логического анализа


Полиномиальный алгоритм, разрешающий          C ⊑T D

Алгоритм решает для данных имен концептов       AиB    верно ли   A ⊑T B .




Онтологии и представление знаний, 2010                                       1
Алгоритм логического анализа


Полиномиальный алгоритм, разрешающий                     C ⊑T D

Алгоритм решает для данных имен концептов                   AиB      верно ли   A ⊑T B .
Этого достаточно


     •   C ⊑T D

     •   A ⊑T ′ B , где A и B            не входят в   C , D, T   и TBox


                                             T ′ = T ∪ {A ≡ C, B ≡ D}




Онтологии и представление знаний, 2010                                                     1
Нормальная форма


  EL-TBox находится в нормальной форме если он состоит только из импликаций вида

(sform)   A ⊑ B;

(cform)   A1 ⊓ A2 ⊑ B ; имена концептов;

(rform)   A ⊑ ∃r.B ;

(lform)   ∃r.A ⊑ B .

  где   A A 1 , A2 , и B     — имена концептов




  Онтологии и представление знаний, 2010                                           2
Нормальная форма


  EL-TBox находится в нормальной форме если он состоит только из импликаций вида

(sform)   A ⊑ B;

(cform)   A1 ⊓ A2 ⊑ B ; имена концептов;

(rform)   A ⊑ ∃r.B ;

(lform)   ∃r.A ⊑ B .

  где   A A 1 , A2 , и B     — имена концептов



  Произвольный        EL-Box T        может быть приведен к нормальной форме за полиномиальное
  время так, что для всех имен концептов            A, B   из   T:

                                           A ⊑T B     ⇔     A ⊑T ′ B.



  Онтологии и представление знаний, 2010                                                     2
Лемма


Определение.           C[D/E] есть результат замены всех вхождений концепта D   в   C   на   E


            hasPart.(Arm ⊓ Leg)[Arm ⊓ Leg/Tail ⊓ H_Leg] = hasPart.(Tail ⊓ H_Leg),
                      hasPart.(Arm ⊓ Leg)[Arm/Tail] = hasPart.(Tail ⊓ Leg)


Лемма.       α = C ⊑ D ∈ T, T            — TBox. Для


• T ′ = T  α ∪ {C[E/X] ⊑ D, E ⊑ X} и
• T ′ = T  α ∪ {C ⊑ D[E/X], X ⊑ E},

где   X   — новое имя концепта, и всех имен концептовA, B из       T:

                                         A ⊑T B    ⇔   A ⊑T ′ B.




Онтологии и представление знаний, 2010                                                           3
Приведение к нормальной форме

Применять следующие правила пока возможно


     • заменить      C1 ≡ C2       на    C1 ⊑ C2   и   C2 ⊑ C1 ;

     • заменить      C ⊑ C1 ⊓ C2          на   C ⊑ C1    и   C ⊑ C2 ;

     • если ∃r.C входит в T и C сложный концепт, заменить                         все вхождения     C   на новое
        имя XC и добавить XC ⊑ C и C ⊑ XC к TBox.

     • Если    A1 ⊓ · · · ⊓ An ⊓ ∃r1 .B1 ⊓ · · · ⊓ ∃rm.Bm ⊑ C                     входит в    T , заменить на

                     A 1 ⊓ · · · ⊓ An ⊓ X ⊑ C                и   ∃r1 .B1 ⊓ · · · ⊓ ∃rm.Bm ⊑ X

        гда   X   — новое имя концепта.

     • если    ∃r1 .B1 ⊓ · · · ⊓ ∃rm.Bm ⊑ ∃r.B                   входит в   T , заменить на

                                ∃r1 .B1 ⊓ · · · ⊓ ∃rm.Bm ⊑ X                 и   X ⊑ ∃r.B

        где   X   — новое имя концепта.

Онтологии и представление знаний, 2010                                                                          4
Пример

T:
                                               A0    ⊑    B ⊓ ∃r.B ′

                                         A1 ⊓ ∃r.B ⊑ A2



                                                    A0 ⊑ B
Шаг 1
                                                    A0 ⊑ ∃r.B ′

                                            A1 ⊓ ∃r.B ⊑ A2



                                                 A0 ⊑ B
Шаг 2
                                                 A0 ⊑ ∃r.B ′

                                             A1 ⊓ X ⊑ A2

                                               ∃r.B ⊑ X

Онтологии и представление знаний, 2010                                 5
MED в нормальной форме



                                  Pericardium ⊑ Tissue

                                  Pericardium ⊑ Y

                                   Pericarditis ⊑ Inflammation

                                   Pericarditis ⊑ ∃has_loc.Pericardium

                                Inflammation ⊑ Disease

                                Inflammation ⊑ ∃acts_on.Tissue

                                 Disease ⊓ X    ⊑ Heartdisease

                                 Disease ⊓ X    ⊑ NeedsTreatment

                ∃has_loc.Y ⊑ X ∃cont_in.Heart ⊑ Y            Y ⊑ ∃cont_in.Heart



Онтологии и представление знаний, 2010                                            6
Идея алгоритма разрешающегоA                           ⊑T B

По данному       T   в нормальной форме, строим функции


     •   S   отображает каждое имя концепта               A, входящее в T , в множество имен концептов;

     •   R    отображает каждое имя роли             r,   входящее в   T,   в множество пар   (B1 , B2 )   имен
         концептов.


A ⊑T B         т. и т.т., когда      B ∈ S(A).   Интуитивно, строится интерпретация           I   с


     •   ∆I    — множество имен концептов в               T.

     •   AI    множество всех        B   таких что   A ∈ S(B);

     •   rI   множество всех         (A, B) ∈ R(r).

I   является моделью         T   и   A ⊑T B    т. и т.т., когда   A ∈ BI.




Онтологии и представление знаний, 2010                                                                        7
Алгоритм

Input:    T   в нормальной форме.

Инициализировать:          S(A) = {A, ⊤} и R(r) = ∅ для всех A и r        в   T.
Применять следующие правила пока это возможно:

(simpleR) If      A′ ∈ S(A) and A′ ⊑ B ∈ T        and   B ̸∈ S(A), then

                                          S(A) := S(A) ∪ {B}.

(conjR) If     A1 , A2 ∈ S(A) and A1 ⊓ A2 ⊑ B ∈ T           and   B ̸∈ S(A), then

                                          S(A) := S(A) ∪ {B}.

(rightR) If     A′ ∈ S(A) and A′ ⊑ ∃r.B ∈ T        and   (A, B) ̸∈ R(r), then

                                         R(r) := R(r) ∪ {(A, B)}.

(leftR) If    (A, B) ∈ R(r) and B ′ ∈ S(B) and ∃r.B ′ ⊑ A′ ∈ T            and   A′ ̸∈ S(A), then

                                          S(A) := S(A) ∪ {A′}.
Онтологии и представление знаний, 2010                                                             8
Пример

                                         (1)   A0 ⊑ ∃r.B
                                         (2)    B ⊑ E
                                         (3) ∃r.E ⊑ A1

Initialise:   S(A0 ) = {A0 }, S(A1 ) = {A1 }, S(B) = {B}, S(E) = {E}, R(r) = ∅.

     • (rightR) и (1):      R(r) = {(A0 , B)};

     • (simpleR) и (2):       S(B) = {B, E};

     • (leftR) и (3):     S(A0 ) = {A0 , A1 };

     • Дальше правила не применяются


    R(r) = {(A0 , B)}, S(B) = {B, E}, S(A0 ) = {A0 , A1 }.
Т.о.,
Следовательно, A0 ⊑T A1 .




Онтологии и представление знаний, 2010                                            9
Фрагмент MED

                                 Pericardium (Pm)       ⊑ Y

                                   Pericarditis (Ps)    ⊑ Inflammation (Inf)

                                                  Ps    ⊑ ∃has_loc.Pm

                                                  Inf   ⊑ Disease (Dis)

                                         Disease ⊓ X    ⊑ NeedsTreatment

                                          ∃has_loc.Y    ⊑ X


Неполная трасса алгоритма (показывающая, что Ps            ⊑MED NeedsTreatment):

     • (simpleR):    S(Pm) = {Y, Pm}, S(Ps) = {Inf, Ps, Dis};

     • (rightR):   R(has_loc) = {(Ps, Pm)},

     • (leftR):   S(Ps) = {Inf, Ps, Dis, X}

     • (conjR):    S(Ps) = {Inf, Ps, Dis, X, NeedsTreatment}



Онтологии и представление знаний, 2010                                             10
Время работы


На каждом шаге алгоритм добавляет хотя бы одно имя концепта в какой-то   S(C) или пару
имен концептов в какой-то            R(r).
=⇒     Останавливается за полиномиальное время.




Онтологии и представление знаний, 2010                                              11
Корректность алгоритма


T   в нормальной форме,          S , R — выход алгоритма.
Теорема. Для всех имен концептов             A, B   в   T:   если   B ∈ S(A), то A ⊑T B .

S0 , S1 , . . . и R0 , R1 , . . . отображения, построенные на i-той итерации алгоритма.
Для всех i, произвольной интерпретации           I : I |= T         и любого    x ∈ AI

     • Если    B ∈ Si(A), то x ∈ B I

     • Если    (A, B) ∈ Ri(r), то существует y ∈ ∆I                 т.ч.   (x, y) ∈ r I   и   y ∈ BI




Онтологии и представление знаний, 2010                                                                 12
Доказательство корректности (на доске)

     • Если    B ∈ Si(A), то x ∈ B I

     • Если    (A, B) ∈ Ri(r), то существует y ∈ ∆I        т.ч.   (x, y) ∈ r I   и   y ∈ BI


(simpleR) If      A′ ∈ S(A) and A′ ⊑ B ∈ T        and   B ̸∈ S(A), then

                                          S(A) := S(A) ∪ {B}.

(conjR) If     A1 , A2 ∈ S(A) and A1 ⊓ A2 ⊑ B ∈ T           and   B ̸∈ S(A), then

                                          S(A) := S(A) ∪ {B}.

(rightR) If     A′ ∈ S(A) and A′ ⊑ ∃r.B ∈ T        and   (A, B) ̸∈ R(r), then

                                         R(r) := R(r) ∪ {(A, B)}.

(leftR) If    (A, B) ∈ R(r) and B ′ ∈ S(B) and ∃r.B ′ ⊑ A′ ∈ T             and   A′ ̸∈ S(A), then

                                          S(A) := S(A) ∪ {A′}.
Онтологии и представление знаний, 2010                                                          13
Полнота алгоритма


T   в нормальной форме,          S , R — выход алгоритма.
Теорема. Для всех имен концептов                 A, B   в   T:   если   A ⊑T B , то B ∈ S(A).

Допустим это не так,          B ∈ S(A).
                                /              Определим интерпретацию         I

     •   ∆I = {A | A ∈ CN (T )}

     •   AI = {B | A ∈ S(B)};

     •   r I = {(A, B) ∈ R(r)}.

Тогда


     •   I ̸|= A ⊑ B

     •   I   выполняет    T

(Для любого имени концепта       A из T   и   EL-концепта C : A ⊑T C       ⇔   A ∈ C I .)

Онтологии и представление знаний, 2010                                                          14
EL:   основные положения


•   Простейшая дескрипционная логика
                                                   неполный набор пропозициональных связок

•   Полиномиальный алгоритм логического анализа

•   Хорошо подходит для описания больших и очень больших терминологий

      –   SNOMED CT

      –   GO

      –   NCI (почти)




Онтологии и представление знаний, 2010                                                  15
EL:   основные положения


•   Простейшая дескрипционная логика
                                                   неполный набор пропозициональных связок

•   Полиномиальный алгоритм логического анализа

•   Хорошо подходит для описания больших и очень больших терминологий

      –   SNOMED CT

      –   GO

      –   NCI (почти)


•   Только “позитивная”, детерминированная информация




Онтологии и представление знаний, 2010                                                  15
EL:   основные положения


•   Простейшая дескрипционная логика
                                                   неполный набор пропозициональных связок

•   Полиномиальный алгоритм логического анализа

•   Хорошо подходит для описания больших и очень больших терминологий

      –   SNOMED CT

      –   GO

      –   NCI (почти)


•   Только “позитивная”, детерминированная информация


      –   Слоны бывают серыми. А розовые?




Онтологии и представление знаний, 2010                                                  15
EL:   основные положения


•   Простейшая дескрипционная логика
                                                   неполный набор пропозициональных связок

•   Полиномиальный алгоритм логического анализа

•   Хорошо подходит для описания больших и очень больших терминологий

      –   SNOMED CT

      –   GO

      –   NCI (почти)


•   Только “позитивная”, детерминированная информация


      –   Слоны бывают серыми. А розовые?

      –   Слоны только серые




Онтологии и представление знаний, 2010                                                  15
EL:   основные положения


•   Простейшая дескрипционная логика
                                                   неполный набор пропозициональных связок

•   Полиномиальный алгоритм логического анализа

•   Хорошо подходит для описания больших и очень больших терминологий

      –   SNOMED CT

      –   GO

      –   NCI (почти)


•   Только “позитивная”, детерминированная информация


      –   Слоны бывают серыми. А розовые?

      –   Слоны только серые

      –   Самцы не могут быть самками




Онтологии и представление знаний, 2010                                                  15
EL:   основные положения


•   Простейшая дескрипционная логика
                                                   неполный набор пропозициональных связок

•   Полиномиальный алгоритм логического анализа

•   Хорошо подходит для описания больших и очень больших терминологий

      –   SNOMED CT

      –   GO

      –   NCI (почти)


•   Только “позитивная”, детерминированная информация


      –   Слоны бывают серыми. А розовые?

      –   Слоны только серые

      –   Самцы не могут быть самками

      –   Слоны делятся на индийских и африканских


Онтологии и представление знаний, 2010                                                  15
Дескрипционная логика ALC :
  терминологическая часть

   База знаний (KB)

TBox (терминология, схема)




                                  Система анализа




                                                    Интерфейс
      Man ≡ Human ⊓ Male
  HappyFather ≡ Man ⊓ ∃hasChild
               ...



ABox (assertion box, данные)

            john: Man
      (john, mary): hasChild
               ...

More Related Content

PPSX
Категорная формальная эпистемология
PDF
20111015 inroduction to_combinatorics_on_words_frid_lecture01
PDF
20110515 systems of typed lambda_calculi_moskvin_lecture10
PDF
20101002 ontology konev_lecture07
PDF
20101002 ontology konev_lecture06
PDF
2016-12-03 03 Евгений Тюменцев. DSL на коленке
PDF
20091129 algorithmsfornphardproblems kulikov_lecture10
PDF
дбс1 1
Категорная формальная эпистемология
20111015 inroduction to_combinatorics_on_words_frid_lecture01
20110515 systems of typed lambda_calculi_moskvin_lecture10
20101002 ontology konev_lecture07
20101002 ontology konev_lecture06
2016-12-03 03 Евгений Тюменцев. DSL на коленке
20091129 algorithmsfornphardproblems kulikov_lecture10
дбс1 1

What's hot (6)

PPTX
математик анализ хичээлийн лекц № 2
PPT
Ponyatie logarifma
PPTX
матемтик анализ лекц№ 2
PDF
Распределенная статистическая система машинного перевода (Distributed statist...
PDF
20081012 structuralcomplexitytheory lecture03-04
PDF
20101007 proof complexity_hirsch_lecture04
математик анализ хичээлийн лекц № 2
Ponyatie logarifma
матемтик анализ лекц№ 2
Распределенная статистическая система машинного перевода (Distributed statist...
20081012 structuralcomplexitytheory lecture03-04
20101007 proof complexity_hirsch_lecture04
Ad

Viewers also liked (20)

DOC
Apostila 02
DOC
Apostila 05
PPS
Haiti struggles on
DOCX
Cách Giảm Vòng Bụng an Toàn
PPT
Rosario Natoli - Italie
PPT
Zagrozenia XXI-1b
PPT
Zagrozenia XXI w
PDF
โบรชัวโปรโมชั่นร์ Big c extra พระราม4 วันที่ 26สค.-8กย.54
PPTX
Dia da água dr. arthur versão p publicação
PPTX
Unidad iii.comprension inferencial de la lectura.
PDF
โบรชัวร์โปรโมชั่น Tesco lotus ตลาด รายปักษ์ 30สค.-4กย.54
PPTX
Фестиваль Науки на факультете «Налоги и налогообложение»
DOC
Apostila 08
PDF
HP max กันยายน 53
DOC
Apostila 09
PDF
Fubi presentation
PDF
54 athletes
PPTX
WKO Energieapplicatie
Apostila 02
Apostila 05
Haiti struggles on
Cách Giảm Vòng Bụng an Toàn
Rosario Natoli - Italie
Zagrozenia XXI-1b
Zagrozenia XXI w
โบรชัวโปรโมชั่นร์ Big c extra พระราม4 วันที่ 26สค.-8กย.54
Dia da água dr. arthur versão p publicação
Unidad iii.comprension inferencial de la lectura.
โบรชัวร์โปรโมชั่น Tesco lotus ตลาด รายปักษ์ 30สค.-4กย.54
Фестиваль Науки на факультете «Налоги и налогообложение»
Apostila 08
HP max กันยายน 53
Apostila 09
Fubi presentation
54 athletes
WKO Energieapplicatie
Ad

Similar to 20100926 ontology konev_lecture03 (17)

PDF
20100926 ontology konev_lecture05
PDF
20100926 ontology konev_lecture04
PDF
20100925 ontology konev_lecture02
PDF
20110313 systems of_typed_lambda_calculi_moskvin_lecture06
PDF
20110306 systems of_typed_lambda_calculi_moskvin_lecture04
PDF
20110522 systems of typed lambda_calculi_moskvin_lecture11
PDF
20110925 csseminar formal_grammars_complexity
PDF
Lsa fca spb
PDF
20110327 systems of_typed_lambda_calculi_moskvin_lecture07
PDF
20100930 proof complexity_hirsch_lecture03
PPT
20120309 formal semantics shilov_lecture06
PDF
20100418 hilberts tenth_problem_matiyasevich_lecture10
PDF
20110313 systems of_typed_lambda_calculi_moskvin_lecture05
PDF
Description
PDF
Онтология профессиональной математики OntoMаthPro и ее приложения
PDF
20100923 proof complexity_hirsch_lecture02
20100926 ontology konev_lecture05
20100926 ontology konev_lecture04
20100925 ontology konev_lecture02
20110313 systems of_typed_lambda_calculi_moskvin_lecture06
20110306 systems of_typed_lambda_calculi_moskvin_lecture04
20110522 systems of typed lambda_calculi_moskvin_lecture11
20110925 csseminar formal_grammars_complexity
Lsa fca spb
20110327 systems of_typed_lambda_calculi_moskvin_lecture07
20100930 proof complexity_hirsch_lecture03
20120309 formal semantics shilov_lecture06
20100418 hilberts tenth_problem_matiyasevich_lecture10
20110313 systems of_typed_lambda_calculi_moskvin_lecture05
Description
Онтология профессиональной математики OntoMаthPro и ее приложения
20100923 proof complexity_hirsch_lecture02

More from Computer Science Club (20)

PDF
20141223 kuznetsov distributed
PDF
Computer Vision
PDF
20140531 serebryany lecture01_fantastic_cpp_bugs
PDF
20140531 serebryany lecture02_find_scary_cpp_bugs
PDF
20140531 serebryany lecture01_fantastic_cpp_bugs
PDF
20140511 parallel programming_kalishenko_lecture12
PDF
20140427 parallel programming_zlobin_lecture11
PDF
20140420 parallel programming_kalishenko_lecture10
PDF
20140413 parallel programming_kalishenko_lecture09
PDF
20140329 graph drawing_dainiak_lecture02
PDF
20140329 graph drawing_dainiak_lecture01
PDF
20140310 parallel programming_kalishenko_lecture03-04
PDF
20140223-SuffixTrees-lecture01-03
PDF
20140216 parallel programming_kalishenko_lecture01
PDF
20131106 h10 lecture6_matiyasevich
PDF
20131027 h10 lecture5_matiyasevich
PDF
20131027 h10 lecture5_matiyasevich
PDF
20131013 h10 lecture4_matiyasevich
PDF
20131006 h10 lecture3_matiyasevich
PDF
20131006 h10 lecture3_matiyasevich
20141223 kuznetsov distributed
Computer Vision
20140531 serebryany lecture01_fantastic_cpp_bugs
20140531 serebryany lecture02_find_scary_cpp_bugs
20140531 serebryany lecture01_fantastic_cpp_bugs
20140511 parallel programming_kalishenko_lecture12
20140427 parallel programming_zlobin_lecture11
20140420 parallel programming_kalishenko_lecture10
20140413 parallel programming_kalishenko_lecture09
20140329 graph drawing_dainiak_lecture02
20140329 graph drawing_dainiak_lecture01
20140310 parallel programming_kalishenko_lecture03-04
20140223-SuffixTrees-lecture01-03
20140216 parallel programming_kalishenko_lecture01
20131106 h10 lecture6_matiyasevich
20131027 h10 lecture5_matiyasevich
20131027 h10 lecture5_matiyasevich
20131013 h10 lecture4_matiyasevich
20131006 h10 lecture3_matiyasevich
20131006 h10 lecture3_matiyasevich

20100926 ontology konev_lecture03

  • 1. Алгоритм логического анализа Полиномиальный алгоритм, разрешающий C ⊑T D Онтологии и представление знаний, 2010 1
  • 2. Алгоритм логического анализа Полиномиальный алгоритм, разрешающий C ⊑T D Алгоритм решает для данных имен концептов AиB верно ли A ⊑T B . Онтологии и представление знаний, 2010 1
  • 3. Алгоритм логического анализа Полиномиальный алгоритм, разрешающий C ⊑T D Алгоритм решает для данных имен концептов AиB верно ли A ⊑T B . Этого достаточно • C ⊑T D • A ⊑T ′ B , где A и B не входят в C , D, T и TBox T ′ = T ∪ {A ≡ C, B ≡ D} Онтологии и представление знаний, 2010 1
  • 4. Нормальная форма EL-TBox находится в нормальной форме если он состоит только из импликаций вида (sform) A ⊑ B; (cform) A1 ⊓ A2 ⊑ B ; имена концептов; (rform) A ⊑ ∃r.B ; (lform) ∃r.A ⊑ B . где A A 1 , A2 , и B — имена концептов Онтологии и представление знаний, 2010 2
  • 5. Нормальная форма EL-TBox находится в нормальной форме если он состоит только из импликаций вида (sform) A ⊑ B; (cform) A1 ⊓ A2 ⊑ B ; имена концептов; (rform) A ⊑ ∃r.B ; (lform) ∃r.A ⊑ B . где A A 1 , A2 , и B — имена концептов Произвольный EL-Box T может быть приведен к нормальной форме за полиномиальное время так, что для всех имен концептов A, B из T: A ⊑T B ⇔ A ⊑T ′ B. Онтологии и представление знаний, 2010 2
  • 6. Лемма Определение. C[D/E] есть результат замены всех вхождений концепта D в C на E hasPart.(Arm ⊓ Leg)[Arm ⊓ Leg/Tail ⊓ H_Leg] = hasPart.(Tail ⊓ H_Leg), hasPart.(Arm ⊓ Leg)[Arm/Tail] = hasPart.(Tail ⊓ Leg) Лемма. α = C ⊑ D ∈ T, T — TBox. Для • T ′ = T α ∪ {C[E/X] ⊑ D, E ⊑ X} и • T ′ = T α ∪ {C ⊑ D[E/X], X ⊑ E}, где X — новое имя концепта, и всех имен концептовA, B из T: A ⊑T B ⇔ A ⊑T ′ B. Онтологии и представление знаний, 2010 3
  • 7. Приведение к нормальной форме Применять следующие правила пока возможно • заменить C1 ≡ C2 на C1 ⊑ C2 и C2 ⊑ C1 ; • заменить C ⊑ C1 ⊓ C2 на C ⊑ C1 и C ⊑ C2 ; • если ∃r.C входит в T и C сложный концепт, заменить все вхождения C на новое имя XC и добавить XC ⊑ C и C ⊑ XC к TBox. • Если A1 ⊓ · · · ⊓ An ⊓ ∃r1 .B1 ⊓ · · · ⊓ ∃rm.Bm ⊑ C входит в T , заменить на A 1 ⊓ · · · ⊓ An ⊓ X ⊑ C и ∃r1 .B1 ⊓ · · · ⊓ ∃rm.Bm ⊑ X гда X — новое имя концепта. • если ∃r1 .B1 ⊓ · · · ⊓ ∃rm.Bm ⊑ ∃r.B входит в T , заменить на ∃r1 .B1 ⊓ · · · ⊓ ∃rm.Bm ⊑ X и X ⊑ ∃r.B где X — новое имя концепта. Онтологии и представление знаний, 2010 4
  • 8. Пример T: A0 ⊑ B ⊓ ∃r.B ′ A1 ⊓ ∃r.B ⊑ A2 A0 ⊑ B Шаг 1 A0 ⊑ ∃r.B ′ A1 ⊓ ∃r.B ⊑ A2 A0 ⊑ B Шаг 2 A0 ⊑ ∃r.B ′ A1 ⊓ X ⊑ A2 ∃r.B ⊑ X Онтологии и представление знаний, 2010 5
  • 9. MED в нормальной форме Pericardium ⊑ Tissue Pericardium ⊑ Y Pericarditis ⊑ Inflammation Pericarditis ⊑ ∃has_loc.Pericardium Inflammation ⊑ Disease Inflammation ⊑ ∃acts_on.Tissue Disease ⊓ X ⊑ Heartdisease Disease ⊓ X ⊑ NeedsTreatment ∃has_loc.Y ⊑ X ∃cont_in.Heart ⊑ Y Y ⊑ ∃cont_in.Heart Онтологии и представление знаний, 2010 6
  • 10. Идея алгоритма разрешающегоA ⊑T B По данному T в нормальной форме, строим функции • S отображает каждое имя концепта A, входящее в T , в множество имен концептов; • R отображает каждое имя роли r, входящее в T, в множество пар (B1 , B2 ) имен концептов. A ⊑T B т. и т.т., когда B ∈ S(A). Интуитивно, строится интерпретация I с • ∆I — множество имен концептов в T. • AI множество всех B таких что A ∈ S(B); • rI множество всех (A, B) ∈ R(r). I является моделью T и A ⊑T B т. и т.т., когда A ∈ BI. Онтологии и представление знаний, 2010 7
  • 11. Алгоритм Input: T в нормальной форме. Инициализировать: S(A) = {A, ⊤} и R(r) = ∅ для всех A и r в T. Применять следующие правила пока это возможно: (simpleR) If A′ ∈ S(A) and A′ ⊑ B ∈ T and B ̸∈ S(A), then S(A) := S(A) ∪ {B}. (conjR) If A1 , A2 ∈ S(A) and A1 ⊓ A2 ⊑ B ∈ T and B ̸∈ S(A), then S(A) := S(A) ∪ {B}. (rightR) If A′ ∈ S(A) and A′ ⊑ ∃r.B ∈ T and (A, B) ̸∈ R(r), then R(r) := R(r) ∪ {(A, B)}. (leftR) If (A, B) ∈ R(r) and B ′ ∈ S(B) and ∃r.B ′ ⊑ A′ ∈ T and A′ ̸∈ S(A), then S(A) := S(A) ∪ {A′}. Онтологии и представление знаний, 2010 8
  • 12. Пример (1) A0 ⊑ ∃r.B (2) B ⊑ E (3) ∃r.E ⊑ A1 Initialise: S(A0 ) = {A0 }, S(A1 ) = {A1 }, S(B) = {B}, S(E) = {E}, R(r) = ∅. • (rightR) и (1): R(r) = {(A0 , B)}; • (simpleR) и (2): S(B) = {B, E}; • (leftR) и (3): S(A0 ) = {A0 , A1 }; • Дальше правила не применяются R(r) = {(A0 , B)}, S(B) = {B, E}, S(A0 ) = {A0 , A1 }. Т.о., Следовательно, A0 ⊑T A1 . Онтологии и представление знаний, 2010 9
  • 13. Фрагмент MED Pericardium (Pm) ⊑ Y Pericarditis (Ps) ⊑ Inflammation (Inf) Ps ⊑ ∃has_loc.Pm Inf ⊑ Disease (Dis) Disease ⊓ X ⊑ NeedsTreatment ∃has_loc.Y ⊑ X Неполная трасса алгоритма (показывающая, что Ps ⊑MED NeedsTreatment): • (simpleR): S(Pm) = {Y, Pm}, S(Ps) = {Inf, Ps, Dis}; • (rightR): R(has_loc) = {(Ps, Pm)}, • (leftR): S(Ps) = {Inf, Ps, Dis, X} • (conjR): S(Ps) = {Inf, Ps, Dis, X, NeedsTreatment} Онтологии и представление знаний, 2010 10
  • 14. Время работы На каждом шаге алгоритм добавляет хотя бы одно имя концепта в какой-то S(C) или пару имен концептов в какой-то R(r). =⇒ Останавливается за полиномиальное время. Онтологии и представление знаний, 2010 11
  • 15. Корректность алгоритма T в нормальной форме, S , R — выход алгоритма. Теорема. Для всех имен концептов A, B в T: если B ∈ S(A), то A ⊑T B . S0 , S1 , . . . и R0 , R1 , . . . отображения, построенные на i-той итерации алгоритма. Для всех i, произвольной интерпретации I : I |= T и любого x ∈ AI • Если B ∈ Si(A), то x ∈ B I • Если (A, B) ∈ Ri(r), то существует y ∈ ∆I т.ч. (x, y) ∈ r I и y ∈ BI Онтологии и представление знаний, 2010 12
  • 16. Доказательство корректности (на доске) • Если B ∈ Si(A), то x ∈ B I • Если (A, B) ∈ Ri(r), то существует y ∈ ∆I т.ч. (x, y) ∈ r I и y ∈ BI (simpleR) If A′ ∈ S(A) and A′ ⊑ B ∈ T and B ̸∈ S(A), then S(A) := S(A) ∪ {B}. (conjR) If A1 , A2 ∈ S(A) and A1 ⊓ A2 ⊑ B ∈ T and B ̸∈ S(A), then S(A) := S(A) ∪ {B}. (rightR) If A′ ∈ S(A) and A′ ⊑ ∃r.B ∈ T and (A, B) ̸∈ R(r), then R(r) := R(r) ∪ {(A, B)}. (leftR) If (A, B) ∈ R(r) and B ′ ∈ S(B) and ∃r.B ′ ⊑ A′ ∈ T and A′ ̸∈ S(A), then S(A) := S(A) ∪ {A′}. Онтологии и представление знаний, 2010 13
  • 17. Полнота алгоритма T в нормальной форме, S , R — выход алгоритма. Теорема. Для всех имен концептов A, B в T: если A ⊑T B , то B ∈ S(A). Допустим это не так, B ∈ S(A). / Определим интерпретацию I • ∆I = {A | A ∈ CN (T )} • AI = {B | A ∈ S(B)}; • r I = {(A, B) ∈ R(r)}. Тогда • I ̸|= A ⊑ B • I выполняет T (Для любого имени концепта A из T и EL-концепта C : A ⊑T C ⇔ A ∈ C I .) Онтологии и представление знаний, 2010 14
  • 18. EL: основные положения • Простейшая дескрипционная логика неполный набор пропозициональных связок • Полиномиальный алгоритм логического анализа • Хорошо подходит для описания больших и очень больших терминологий – SNOMED CT – GO – NCI (почти) Онтологии и представление знаний, 2010 15
  • 19. EL: основные положения • Простейшая дескрипционная логика неполный набор пропозициональных связок • Полиномиальный алгоритм логического анализа • Хорошо подходит для описания больших и очень больших терминологий – SNOMED CT – GO – NCI (почти) • Только “позитивная”, детерминированная информация Онтологии и представление знаний, 2010 15
  • 20. EL: основные положения • Простейшая дескрипционная логика неполный набор пропозициональных связок • Полиномиальный алгоритм логического анализа • Хорошо подходит для описания больших и очень больших терминологий – SNOMED CT – GO – NCI (почти) • Только “позитивная”, детерминированная информация – Слоны бывают серыми. А розовые? Онтологии и представление знаний, 2010 15
  • 21. EL: основные положения • Простейшая дескрипционная логика неполный набор пропозициональных связок • Полиномиальный алгоритм логического анализа • Хорошо подходит для описания больших и очень больших терминологий – SNOMED CT – GO – NCI (почти) • Только “позитивная”, детерминированная информация – Слоны бывают серыми. А розовые? – Слоны только серые Онтологии и представление знаний, 2010 15
  • 22. EL: основные положения • Простейшая дескрипционная логика неполный набор пропозициональных связок • Полиномиальный алгоритм логического анализа • Хорошо подходит для описания больших и очень больших терминологий – SNOMED CT – GO – NCI (почти) • Только “позитивная”, детерминированная информация – Слоны бывают серыми. А розовые? – Слоны только серые – Самцы не могут быть самками Онтологии и представление знаний, 2010 15
  • 23. EL: основные положения • Простейшая дескрипционная логика неполный набор пропозициональных связок • Полиномиальный алгоритм логического анализа • Хорошо подходит для описания больших и очень больших терминологий – SNOMED CT – GO – NCI (почти) • Только “позитивная”, детерминированная информация – Слоны бывают серыми. А розовые? – Слоны только серые – Самцы не могут быть самками – Слоны делятся на индийских и африканских Онтологии и представление знаний, 2010 15
  • 24. Дескрипционная логика ALC : терминологическая часть База знаний (KB) TBox (терминология, схема) Система анализа Интерфейс Man ≡ Human ⊓ Male HappyFather ≡ Man ⊓ ∃hasChild ... ABox (assertion box, данные) john: Man (john, mary): hasChild ...