Курдюков Н.С.
Рязанский
Государственный Радиотехнический Университет, Россия
Существует
возможность[3] эффективной обработки
данных SOA-систем посредством OBDA-технологий[3]. Для
создания алгоритмов логического анализа онтологической SOA-системы требуется
рассмотреть основные алгоритмические задачи, связанные с выбранными языками
дескриптивной логики и парадигмой OBDA[3]. Перечислим эти
задачи.
1. Непротиворечивость базы знаний – проверка на
существование хотя бы одной модели у БЗ K = <TBox, ABox>.
2. Вложенность концептов или ролей – проверка на
существование BI⊆CI в произвольной интерпретации I[1] для заданного
TBox, где C, B – концепты или роли.
3.
Проверка экземпляра класса – проверка на существование aI ∈ AI в произвольной модели I базы знаний K, где A – концепт, а – индивид. Проверка экземпляра роли
определяется соответственно.
4.
Возвращение ответа на запросы к БЗ.
Далее
рассматривается суть понятия приводимости к исчислению предикатов первого
порядка для алгоритмов логического анализа.
Интерпретация
ABox A обозначается как db(Ad) = <∆db(Ad), ·db(Ad)> и определяется
следующим образом[2]:
·
∆db(Ad) – это непустое
множество, состоящее из всех констант, входящих в Ad;
·
ad
db(Ad) = ad,
за каждую константу ad
в Ad;
·
Adb(Ad) = {ad | Ad(ad) ∈ Ad}, для каждого
атомарного концепта Ad;
·
Pdb(Ad) = {(ad1, ad2) | Pd (ad1, ad2) ∈ Ad}, для каждой атомарной
роли Pd.
Интерпретация
db(A) является минимальной
моделью ABox А. Существует возможность
сводить задачи проверки непротиворечивости базы знаний и ответа на запросы к оценке запроса логики первого порядка к
ABox. Для этого рассматривается запрос к реляционным БД, другими словами,
запрос к db(A)[2].
Выполнимость
в языке дескриптивной логики L
является сводимой к исчислению предикатов первого порядка, если для каждого
TBox T, выраженного в L, существует логическая приводимость
запроса q в T. Кроме того, для любого непустого ABox A – <T , A> должна быть
выполнима, тогда и только тогда, когда q = «ложь» в db(A)[2].
Непротиворечивость
БЗ DL-Lite сводима
к исчислению предикатов первого порядка. Это возможно благодаря следующим
конструкциям.
1.
Положительные
включения – аксиомы вида B1 ⊑ B2 или R1 ⊑ R2.
2.
Отрицательные
включения – аксиомы вида B1 ⊑ ¬B2 or
R1 ⊑ ¬R2.
Определение
1. Пусть K = <T,
A> – база знаний DL-Lite, Tp
- набор позитивных включений в T.
Тогда can(K) - это модель <Tp,
A>.
Свойство
1. Любая БЗ DL-Lite, содержащая только
положительные включения в TBox, всегда выполнима, так
как всегда можно построить can(K), являющуюся моделью
для К.
Если
в интерпретации db(A) существуют
отрицательные включения из базы знаний K = <T,
A>, то K может не выполняться в can(K). Например, если T содержит аксиомы A1 ⊑ A2 и A2 ⊑ ¬A3 и содержит утверждения A1(а) и A3(а), то db(A)
⊨
A2 ⊑ ¬A3, но can(K) ⊭ A2 ⊑ ¬A3.
Вследствие
сказанного необходимо принять во внимание взаимодействие между положительными и
отрицательными включениями. Для этого строится специальное хранилище TBox,
замыкающая отрицательные включения по отношению к множеству положительных
включений[2]. Обозначим это хранилище: cln(T).
Следующий фактор показывает, что cln(T) для базы знаний DL-Lite не
предполагает новых негативных включений, не входящих в T. Пусть T − TBox,
а α – отрицательное включение. Тогда, если cln(T)
⊨
α, то T ⊨ α. Пусть K = <T, A> – БЗ DL-Lite, тогда верны следующие
свойства.
1.
can(K) модель K тогда и только, когда db(A) – модель <cln(T), A>.
2.
Пусть α – негативное включение концептов. Тогда, если T ⊨ α,
то cln(T) ⊭ α.
3.
can(K) – модель K тогда и только тогда,
когда K выполнима.
4.
K выполнима тогда и только тогда,
когда db(A) представляет собой
модель <cln(T), A>.
5.
Интерпретация db(A) представляет собой
модель всех утверждений в cln(T) тогда и только тогда,
когда K выполнима.
На
основе представленных выше понятий создан алгоритм Consistent[2]. Этот алгоритм использует сводимость к
исчислению предикатов первого порядка для проверки непротиворечивости базы
знаний.
1. Baader F., Calvanese D., McGuinness D., Nardi D., Patel-Schneider P.F. The Description
Logic Handbook: Theory, implementation, and applications. Cambridge University
Press, 2nd edition, 2010. – 593 p.
2. Diego Calvanese, Giuseppe De
Giacomo, Domenico Lembo, Maurizio Lenzerini, Riccardo Rosati. Tractable
Reasoning and Efficient Query Answering in Description Logics: The DL-Lite
Family // Journal of Automated Reasoning, 2007. Vol. – 39(3). – P. 385 – 429.
3. Курдюков Н.С. Запросы при описании SOA-архитектуры
в
рамках OBDA-технологии // Materiały X Międzynarodowej naukowi-praktycznej
konferencji «Strategiczne pytania światowej nauki - 2014» Vol. 33. – P. 9
– 11.