Дескрипционная логика

Pause

Дескрипцио́нная логика[1] (описательная логика, ранние наименования — терминологическая система, логика концептов) — язык представления знаний, позволяющий формализованно и однозначно описывать понятия предметной области, организованный по типу языков математической логики. Дескрипционные логики сочетают богатые выразительные возможности и хорошие вычислительные свойства, такие как разрешимость и относительно невысокая вычислительная сложность основных логических проблем, что обеспечивает их практическое применение и компромисс между выразительностью и разрешимостью. Их можно рассматривать как разрешимые фрагменты логики предикатов, а синтаксически они близки к модальным логикам.

Термин дескрипционная логика (англ. description logic) был закреплён в 1980-е годы, когда они исследовались как расширения теорий фреймовых структур и семантических сетей механизмами формальной логики. В 2000-е годы дескрипционные логики получили широкое распространение в рамках концепции семантической паутины, где используются для построения онтологий. Фрагменты стандарта OWL-DL и OWL-Lite языка веб-онтологий OWL основаны на дескрипционных логиках. Профиль OWL 2 DL основан на логике [2].

Общие сведения

Дескрипционные логики оперируют понятиями «концепт» и «роль», которые соответствуют в других разделах математической логики понятиям «одноместный предикат» (или множество, класс) и «двуместный предикат» (или бинарное отношение). Интуитивно, концепты используются для описания классов объектов, например, «Люди», «Женщины», «Машины». Роли описывают двуместные отношения между объектами (например, «X есть_родитель_для Y» или «X имеет_в_собственности Y»). С помощью языка дескрипционной логики можно формулировать как общие утверждения о классах (например, всякая Женщина есть Человек, всякая Машина не более чем у одного Человека), так и частные — о конкретных объектах (например, Мария есть Женщина, Иван имеет_в_собственности Машину1).

Набор общих утверждений или терминологии (англ. terminology) называется TBox, а набор утверждений (англ. assertions) частного вида — ABox; вместе они образуют базу знаний или онтологию. Онтологии на основе дескрипционных логик используются во многих областях — биоинформатика, генетика, медицина, химия, биология. Реализация логического вывода на уровне программ обеспечивают так называемые механизмы рассуждений (англ. reasoners), которые позволяют автоматически выводить знания из онтологий и выполнять другие операции. В нейросимволических системах исследуется сочетание нейросетевой обработки данных с формальным выводом средствами дескрипционных логик[3].

Синтаксис

В математической логике язык определяется своим синтаксисом — правилами построения выражений, и семантикой — способом приписывания этим выражениям значения.

Для описания синтаксиса дескрипционной логики задаётся конечное множество атомарных концептов и атомарных ролей, из которых по определённым конструкторам и индуктивным правилам строятся сложные концепты и роли.

Типичные конструкторы составных концептов:

  • пересечение (или конъюнкция) концептов: ;
  • объединение (или дизъюнкция) концептов: ;
  • дополнение (отрицание) концепта: ;
  • ограничение на значения роли (квантор всеобщности): ;
  • экзистенциальное ограничение (квантор существования): ;
  • численные ограничения: , и др.

В дескрипционных логиках обозначения конъюнкции/дизъюнкции иные, чтобы подчеркнуть специфику. В некоторых логиках есть также составные роли, строящиеся из простых с помощью операций инверсии, пересечения, объединения, дополнения, композиции, транзитивного замыкания и др

ALC

Дескрипционная логика (от англ. attributive language with complement) разработана в 1991 году[4]. и является базовой системой: многие логики строятся на её основе. Пусть заданы конечные множества атомарных концептов и ролей. Составные концепты в определяются индуктивно:

  • всякий атомарный концепт — концепт;
  • и  — концепты;
  • если  — концепт, то  — концепт;
  • если и  — концепты, то и  — концепты;
  • если  — концепт, а  — роль, то и  — концепты.

Фактически  — это семейство логик с конкретным набором атомарных символов, что аналогично сигнатуре теории первого порядка.

Семантика

Семантика дескрипционных логик задаётся интерпретацией атомарных концептов как множеств объектов (англ. individual), а ролей — как множеств пар объектов (бинарных отношений) на домене .

Интерпретация состоит из:

  • домена (непустое множество);
  • функции, сопоставляющей каждому атомарному концепту подмножество , а каждой атомарной роли  — подмножество .

Правила для :

Например, если  — множество мужчин,  — «есть родитель для», то  — множество людей, у которых все дети мужского пола;  — множество отцов.

Связь с модальной логикой

В 1991 году[5] было показано, что эквивалентна многомодальной модальной логике (n независимых модальностей): атомарные концепты переходят в пропозициональные переменные, пересечение/объединение/отрицание — в булевы связки,  — в ,  — в . Фактически, это один и тот же язык в разных обозначениях, и их семантика согласуется (семантика Крипке и др.), что даёт возможность переносить результаты по разрешимости, сложности и процедурам из модальных логик. Темпоральные и эпистемические расширения дескрипционных логик изучаются, в частности, с использованием модальностей линейной темпоральной логики (LTL) и эпистемической логики S5[6].

Связь с логикой предикатов

Дескрипционные логики (включая ) можно рассматривать как фрагменты логики предикатов, когда концепты переводятся в формулы с одним объектным переменным. Атомарные концепты переходят в , роли  — в . Выражения  — в ,  — в (где  — перевод ). В этом переводе используются только две переменные[7], поэтому относится к разрешимому двухпеременному фрагменту логики предикатов[8]. Логика , расширяющая ограничениями количества и обратными ролями, погружается в охраняемый двухпеременный фрагмент со счётными кванторами ()[9]. В охраняемом фрагменте логики предикатов (GF) квантификация ограничена атомарными формулами, содержащими свободные переменные; допускает также счётные кванторы[10]. Аксиомы транзитивности и цепочек ролей, напротив, при стандартном переводе требуют трёх переменных; поэтому не все расширения укладываются в двухпеременный фрагмент[11].

База знаний

Концепты дескрипционных логик важны как инструмент для формализации знаний об описываемой предметной области. Знания делятся на общие (интенсиональные — о понятиях и связях) и знания об объектах (экстенсиональные — о свойствах и отношениях между ними).

Выделяют:

  • набор терминологических аксиом —
  • набор утверждений о конкретных объектах —

Их объединение образует базу знаний . В более выразительных логиках аксиомы, описывающие свойства и иерархии ролей, выделяют в отдельный компонент базы знаний — RBox[12].

Терминологические аксиомы

Аксиома вложенности концептов — , аксиома эквивалентности — (для ролей — аналогично). Вложения вида называют общими аксиомами вложенности концептов (GCI); определение через эквивалентность можно выразить парой таких аксиом[13]. Терминология (TBox) — конечный набор таких аксиом. Иногда аксиомы для ролей выделяют отдельно как RBox. В терминологии могут быть и другие аксиомы (например, транзитивность ролей).

Аксиома выполняется в интерпретации , если . Моделью терминологии называется интерпретация, в которой выполняются все аксиомы.

Пример TBox для :

Интуитивно: женщина = человек и женского пола; мать = женщина и имеет ребёнка; у человека все дети — тоже люди; любой доктор — человек.

Утверждения об объектах

Для конкретных объектов в базовом случае приводят два вида утверждений:

  • объект принадлежит концепту :
  • между и выполняется роль :

Набор таких утверждений называется .

Семантика: имя объекта интерпретируется элементом домена. выполняется, если ;  — если . Интерпретация, где выполняются все утверждения, называется моделью ABox.

Пример ABox:

Имена объектов Mary и Peter; утверждения означают, что Mary — женщина, не доктор, у неё есть девочка-ребёнок, у Mary есть ребёнок Peter, Peter — доктор и не имеет детей.

В более выразительных логиках ABox может также содержать отрицательные утверждения о ролях и явные утверждения о тождестве или различии индивидов[14].

В OWL не действует предположение об уникальности имён: разные имена могут обозначать один и тот же объект; их различие можно задать явно[15].

Отличие от баз данных

В отличие от баз данных, в ДЛ принимается предположение об открытости мира: если утверждение не известно, оно не объявляется ложным (в отличие от замкнутых баз данных). Это существенно влияет на логический вывод и понятие логического следования. Классическое отрицание требует вывода ложности утверждения и сохраняет монотонность вывода; при отрицании как неудаче, применяемом в системах с замкнутым миром, недоказанное утверждение считается ложным, а добавление новых фактов может изменить такой вывод.

Выразительные дескрипционные логики

Существуют расширения дополнительными конструкторами и аксиомами. Принято обозначать буквой добавленную возможность:

Функциональность ролей:  — не более одного R-последователя
Ограничения кардинальности:
Качественные ограничения:
Обратные роли:
Номиналы:  — одноэлементное множество
Иерархия ролей: аксиомы
Транзитивные роли: аксиомы
Составные аксиомы вложенности ролей ()
Булевы операции над ролями, например и [16]
Расширения конкретными доменами (типами данных)

Например,  — логика с инверсными ролями, номиналами и качественными ограничениями.  — расширения инверсными ролями (), качественными ограничениями (), транзитивными ролями () и иерархией ролей (). Буква выбрана из-за исторической связи с модальной логикой [5].

Логика включает сложные аксиомы включения ролей (в частности, цепочки ролей), квалифицированные ограничения количества и конструкцию локальной рефлексивности [17].

К аксиомам ролей в относятся также рефлексивность, иррефлексивность и непересекаемость ролей[17].

Наряду с перечисленными конструкторами исследуются вероятностные[18] и нечёткие[19] расширения дескрипционных логик.

Для некоторых логик дополнительные ограничения требуются для разрешимости[20].

Логический анализ

Базы знаний из дескрипционных логик применяются не только для представления знаний, но и для логического анализа (англ. reasoning) — проверки непротиворечивости знаний, логического вывода, ответа на запросы.

Определения:

  • концепт выполняется в интерпретации , если
  • выполнимый концепт — существует интерпретация, где он выполняется
  • вложение: вложен в , если во всех интерпретациях

Аналогично для TBox, ABox и базы знаний .

Практически важные задачи:

  • выполнимость концепта (относительно TBox)
  • вложение концептов
  • совместимость TBox (есть ли модель)
  • совместимость базы знаний (модель для пары TBox, ABox)
  • построение таксономии (иерархии) концептов
  • извлечение экземпляров концепта
  • наименее общий над-концепт
  • наилучшее описание для объекта
  • ответ на запрос к базе знаний

К нестандартным задачам логического анализа также относятся абдукция — поиск гипотез, добавление которых к базе знаний позволяет вывести заданное наблюдение[21], и забывание — исключение символов из словаря с сохранением следствий, выразимых через оставшиеся символы[22].

При ответе на конъюнктивный запрос уверенными ответами называют кортежи, для которых запрос истинен во всех моделях базы знаний; таким образом, учитываются и следствия терминологических аксиом, а не только явно записанные факты[23].

Запросы вида конъюнктивных запросов похожи на методы в базах данных; для более сложных запросов вычислительная трудоёмкость высока или задача становится неразрешимой[24][25].

Свойства

Ключевые свойства:

Для свойство древовидности означает, что выполнимый относительно TBox концепт имеет модель с древовидной структурой связей между элементами домена; это свойство используется при доказательстве разрешимости задач вывода[26]. Для свойство конечности моделей выполняется, а для и — нет: выполнимая база знаний в этих логиках может не иметь конечной модели. Выполнимость концепта в без терминологических аксиом является PSPACE-полной[27]. Для выполнимость базы знаний в общей постановке является EXPTIME-полной. Если терминология фиксирована, а размер ABox меняется, то для и проверка принадлежности индивида концепту является coNP-полной по данным, а проверка выполнимости базы знаний — NP-полной по данным. Для проверка выполнимости базы знаний в общей постановке является 2NEXPTIME-полной[28]. Исследованы многочисленные результаты по этим характеристикам.

Связь с языком OWL

Язык OWL служит для формализации и публикации в сети сетевых онтологий — утверждений о концептах и объектах области знаний. Важным требованием OWL является точная семантика и разрешимость ключевых логических задач при приемлемой сложности. Дескрипционные логики были выбраны как логическая основа OWL благодаря этим свойствам.

Понятия дескрипционных логик (концепт, роль, объект, база знаний) в OWL соответствуют понятиям «класс», «свойство», «объект», «онтология».

Официальная рекомендация W3C от 10 февраля 2004 года:

  • OWL-Lite — соответствует
  • OWL-DL — соответствует
  • OWL-Full — не соответствует никакой разрешимой логике

Рабочий проект OWL 1.1 предусматривал логику , допуская составные аксиомы вложенности ролей (буква ), аксиомы непересекаемости, рефлексивности, асимметрии и др. новые конструкции[29].

Проект OWL 2 предусматривал возможность выражать онтологии на языке (с полиномиальной сложностью) и расширение средств для запросов и аналитики.

В 2009 году OWL 2 получил статус рекомендации W3C.

11 декабря 2012 года W3C опубликовал второе издание рекомендации OWL 2. OWL 2 DL основан на дескрипционной логике [2]. OWL 2 Full, в отличие от OWL 2 DL, не является разрешимым языком[30].

В OWL 2 DL ограничения количества и конструкцию локальной рефлексивности разрешено применять только к простым ролям: транзитивные роли и роли, определяемые цепочками, к ним не относятся. Для аксиом включения цепочек ролей также требуется регулярность иерархии ролей[31]. Регулярность ограничивает циклические зависимости между ролями и позволяет применять автоматные методы для сохранения разрешимости вывода.

В OWL 2 аксиома ключа HasKey позволяет вывести тождество именованных индивидов одного класса при наличии общих значений у заданных свойств; функциональное свойство, напротив, ограничивает число значений свойства у одного индивида.

В OWL 2 также определены профили OWL 2 EL (на основе для больших терминологий), OWL 2 QL (на основе семейства DL-Lite для доступа к данным посредством запросов) и OWL 2 RL (связанный с DLP и pD* для вывода по правилам)[32].

Машины вывода и редакторы

Существует множество программных систем (машин вывода), реализующих автоматические рассуждения в дескрипционных логиках: проверка непротиворечивости онтологий, построение таксономий, анализ выполнимости (табло-алгоритм, резолюция и др.), поддержка различных форматов и языков. Помимо табло и резолюции применяется вывод на основе следствий (англ. consequence-based reasoning): он выводит следствия из аксиом без явного построения модели; этот метод используется, в частности, в системе Sequoia[33].

Некоторые известные reasoners[34]:

  • CEL — реализует (полиномиальная сложность), написан на Лисп[35]
  • ELK — машина вывода, доступная в редакторе Protégé[36]
  • FaCT++ — поддержка и OWL 2.0, реализует табло-алгоритм (C++)[37]
  • HermiT — машина вывода для OWL 2, использующая метод гипертабло (Java)
  • Konclude — машина вывода для OWL 2 DL, реализованная на C++ с использованием параллельной обработки[38]
  • Kaon2 — реализует и специальные правила, механизм резолюции (Java)[39]
  • Pellet — реализует и OWL 1.1 (Java)[40]
  • RacerPro — реализует (Лисп)[41]

Широко используются редакторы онтологий; например, Protégé, поддерживающий OWL 2 и подключение машин вывода для OWL DL.

Примечания

  1. ↑ Лапшин В. А., Онтологии в компьютерных системах. RSDN Magazine, 4, 2009. Дата обращения: 21 октября 2012. Архивировано 26 февраля 2013 года.
  2. ↑ 1 2 Foundations of Semantic Web Technologies - OWL 2 – Syntax and Semantics. Технический университет Дрездена. Дата обращения: 6 октября 2026.
  3. ↑ DeepEL: Deep Learning and Formal Description Logic Reasoning. KR Proceedings. Дата обращения: 6 октября 2026.
  4. ↑ Schmidt-Schauß, M.; Smolka, G. (1991). “Attributive concept descriptions with complements”. Artificial Intelligence [англ.]. 48: 1—26. Дата обращения 2026-10-06.
  5. ↑ 1 2 Schild, K. (1991). “A correspondence theory for terminological logics: Preliminary report”. Proc. of the 12th Int. Joint Conf. on Artificial Intelligence (IJCAI'91) [англ.]: 466—471.
  6. ↑ An Update on Non-Rigid Designators in Modalised Description Logics (Extended Abstract). CEUR Workshop Proceedings. Дата обращения: 6 октября 2026.
  7. ↑ Lutz, C.; Sattler, U.; Wolter, F. (2001). “Modal logics and the two-variable fragment”. Annual Conference of the European Association for Computer Science Logic (CSL'2001) [англ.].
  8. ↑ Grädel, E.; Otto, M.; Rosen, E. (1997). “Two variable logic with counting is decidable”. Proc. of the 12th IEEE Symp. on Logic in Computer Science (LICS'97) [англ.]: 306—317.
  9. ↑ Complexity of the Guarded Two-Variable Fragment with Counting Quantifiers. arXiv. Дата обращения: 6 октября 2026.
  10. ↑ Adding Path-Functional Dependencies to the Guarded Two-Variable Fragment with Counting. arXiv. Дата обращения: 6 октября 2026.
  11. ↑ Finite Satisfiability of Unary Negation Fragment with Transitivity. LIPIcs. Дата обращения: 6 октября 2026.
  12. ↑ Beyond Optimal: Interactive Identification of Better-than-optimal Repairs. Технический университет Дрездена. Дата обращения: 6 октября 2026.
  13. ↑ On the Undecidability of Fuzzy Description Logics with GCIs with Łukasiewicz 𝑡-norm. arXiv. Дата обращения: 6 октября 2026.
  14. ↑ 1104.1964v6.pdf. arXiv. Дата обращения: 6 октября 2026.
  15. ↑ Integrity Constraints in OWL. AAAI. Дата обращения: 6 октября 2026.
  16. ↑ Title. Springer. Дата обращения: 6 октября 2026.
  17. ↑ 1 2 The Even More Irresistible SROIQ. AAAI. Дата обращения: 6 октября 2026.
  18. ↑ Probabilistic Description Logics for Subjective Uncertainty Carsten Lutz. AAAI. Дата обращения: 6 октября 2026.
  19. ↑ Non-expansive Fuzzy ALC. IJCAI. Дата обращения: 6 октября 2026.
  20. ↑ Horrocks, I.; Sattler, U.; Tobies, S. (1999). “Practical reasoning for expressive Description Logics”. Proc. of the 6th Int. Conference on Logic for Programming and Automated Reasoning (LPAR'99) [англ.]: 161—180.
  21. ↑ ABox Abduction via Forgetting in ALC. AAAI. Дата обращения: 6 октября 2026.
  22. ↑ Foundations for Uniform Interpolation and Forgetting in Expressive Description Logics Carsten Lutz Frank Wolter. IJCAI. Дата обращения: 6 октября 2026.
  23. ↑ Rewriting Approaches for Ontology-Mediated Query Answering. Springer Professional. Дата обращения: 6 октября 2026.
  24. ↑ Tessaris, S. Questions and answers: Reasoning and querying in Description Logic (PhD Thesis) : [англ.]. — University of Manchester, 2001.
  25. ↑ Glimm, B.; Horrocks, I.; Lutz, C.; Sattler, U. (2007). “Conjunctive query answering for the description logic SHIQ”. Proc. of the 20th Int. Joint Conf. on Artificial Intelligence (IJCAI 2007) [англ.]. 31: 151—198.
  26. ↑ A Little Bit of Model Theory (Chapter 3) - An Introduction to Description Logic. Cambridge University Press. Дата обращения: 6 октября 2026.
  27. ↑ Description Logic Complexity Navigator (by Evgeny Zolin). Манчестерский университет. Дата обращения: 6 октября 2026.
  28. ↑ Query Answering in the Horn Fragments of the Description Logics SHOIQ and SROIQ. IJCAI. Дата обращения: 6 октября 2026.
  29. ↑ Сайт разработчиков языка OWL 1.1. Дата обращения: 6 октября 2026. Архивировано 16 февраля 2008 года.
  30. ↑ Reasoning in the OWL 2 Full Ontology Language using First-Order Automated Theorem Proving. arXiv. Дата обращения: 6 октября 2026.
  31. ↑ Modeling in OWL 2 without Restrictions. arXiv. Дата обращения: 6 октября 2026.
  32. ↑ Neuro-Symbolic RDF and Description Logic Reasoners: The State-Of-The-Art and Challenges. arXiv. Дата обращения: 6 октября 2026.
  33. ↑ Consequence-based Reasoning for Description Logics with Disjunction, Inverse Roles, Number Restrictions, and Nominals. arXiv. Дата обращения: 6 октября 2026.
  34. ↑ Список машин ДЛ-вывода. owl.cs.manchester.ac.uk. Дата обращения: 6 октября 2026. Архивировано 27 октября 2015 года.
  35. ↑ CEL. lat.inf.tu-dresden.de. Дата обращения: 6 октября 2026. Архивировано 1 сентября 2009 года.
  36. ↑ Testing Description Logic Reasoners (Extended~Abstract). edkamb.github.io. Дата обращения: 6 октября 2026.
  37. ↑ FaCT++. owl.cs.manchester.ac.uk. Дата обращения: 6 октября 2026. Архивировано 6 июня 2009 года.
  38. ↑ Query Answering and Scaling Extensions of Konclude. CEUR Workshop Proceedings. Дата обращения: 6 октября 2026.
  39. ↑ Kaon2. kaon2.semanticweb.org. Дата обращения: 17 июня 2009. Архивировано 6 января 2006 года.
  40. ↑ Pellet. Дата обращения: 6 октября 2026. Архивировано 25 сентября 2007 года.
  41. ↑ RacerPro. racer-systems.com. Дата обращения: 6 октября 2026. Архивировано 7 июня 2009 года.

Литература

  • Рассел С., Норвиг П. Искусственный интеллект: современный подход. — ИД «Вильямс», 2006. — P. 1408. — ISBN 5-8459-0887-6.
  • Franz Baader, Diego Calvanese, Deborah L. McGuinness, Daniele Nardi, Peter F. Patel-Schneider. The Description Logic Handbook: Theory, Implementation, and Applications. — Cambridge University Press, 2003. — ISBN 0-521-78176-0.
Pause