Введение

Описательная логика (DL) — это семейство языков формального представления знаний. Многие DL обладают большей выразительностью, чем пропозициональная логика, но меньшей, чем логика первого порядка. В отличие от последней, основные задачи логического вывода для DL (как правило) разрешимы, и для этих задач разработаны и реализованы эффективные алгоритмы решения. Существуют общие, пространственные, временные, пространственно-временные и нечеткие описательные логики, и каждая из них характеризуется различным соотношением между выразительностью и сложностью логического вывода, поддерживая различные наборы математических конструкторов. DL используются в искусственном интеллекте для описания и рассуждений о релевантных понятиях предметной области (известных как терминологические знания). Они особенно важны для обеспечения логического формализма для онтологий и Семантической сети: язык онтологий Web (OWL) и его профили основаны на DL. Наиболее значимое применение DL и OWL – в биомедицинской информатике, где DL помогает в кодификации биомедицинских знаний.

Введение

Логика описаний (DL) моделирует концепции, роли и индивидуумы, а также их взаимосвязи. Фундаментальной концепцией моделирования в DL является аксиома — логическое утверждение, связывающее роли и/или концепции. Это ключевое отличие от парадигмы фреймов, где спецификация фрейма объявляет и полностью определяет класс. Поддерживает:
|
| ||
Пересечение концепций
Универсальные ограничения
Ограниченная экзистенциальная квантификация
Ограничения ролей
|
| ||
|
| ||Язык с полной экзистенциальной квалификацией поддерживает:
|
| ||
Пересечение концепций
Экзистенциальные ограничения (полной экзистенциальной квантификации)
|}
С последующими возможными расширениями:
Функциональные свойства, частный случай квантификации уникальности. Полная экзистенциальная квалификация (экзистенциальные ограничения, имеющие заполнители, отличные от ). Объединение концепций. Отрицание сложных концепций. Иерархия ролей (подсвойства: rdfs:subPropertyOf). Ограниченные аксиомы включения сложных ролей; рефлексивность и иррефлексивность; несовместимость ролей. Номиналы (перечисленные классы ограничений объектных значений: owl:oneOf, owl:hasValue). Обратные свойства. Ограничения кардинальности (owl:cardinality, owl:maxCardinality), частный случай квантификации подсчёта. Квалифицированные ограничения кардинальности (доступны в OWL 2, ограничения кардинальности, имеющие заполнители, отличные от ). Использование свойств данных, значений данных или типов данных.

Примеры

В качестве примера, является центрально важной дескриптивной логикой, с помощью которой можно проводить сравнения с другими вариантами. Это просто с возможностью дополнения любого понятия, а не только атомарных. Вместо используется эквивалент .
В качестве еще одного примера, дескриптивная логика является логикой плюс расширенные ограничения кардинальности, а также транзитивные и обратные роли. Названия не всегда систематичны, поэтому логика может упоминаться как , и другие сокращения используются, где это возможно. Редактор онтологий Protégé поддерживает три основные терминологические базы биомедицинской информатики: SNOMED CT, GALEN и GO, которые могут быть выражены в (с дополнительными свойствами ролей). OWL 2 обеспечивает выразительность , OWL DL основан на , а для OWL Lite используется .

История

Описательная логика получила своё нынешнее название в 1980-х годах. До этого она называлась (хронологически): терминологические системы и языки понятий.

Представление знаний

Фреймы и семантические сети лишены формальной (основанной на логике) семантики. DL был впервые внедрён в системы представления знаний (KR) для устранения этого недостатка. RACER (2001), CEL (2005) и KAON 2 (2005). Логические решатели DL, такие как FaCT, FaCT++, реализуют метод аналитических таблиц. KAON2 реализован алгоритмами, которые приводят базу знаний SHIQ(D) к дизъюнктивной программе логического вывода.

Разумные

Существуют семантические решатели, работающие с OWL и DL. Вот некоторые из наиболее популярных:
CEL – это решатель с открытым исходным кодом, основанный на LISP (лицензия Apache 2.0). Cerebra Engine был коммерческим решателем на C++, приобретенным в 2006 году компанией webMethods. FaCT++ – это бесплатный решатель с открытым исходным кодом, основанный на C++. KAON2 – это бесплатный (для некоммерческого использования) решатель на Java, обеспечивающий быструю поддержку логического вывода для онтологий OWL. MSPASS – это бесплатный решатель на C с открытым исходным кодом для множества моделей DL. Pellet – это коммерческий решатель на Java с двойной лицензией (AGPL и проприетарной). RacerPro от Racer Systems был коммерческим решателем (доступны бесплатные пробные версии и исследовательские лицензии), основанным на LISP. В настоящее время существует версия RACER с открытым исходным кодом от оригинальных разработчиков из Любекского университета под лицензией BSD 3, а также коммерческая версия, по-прежнему называемая RacerPro от Franz Inc.
Sim DL – это бесплатный решатель с открытым исходным кодом на Java для языка ALCHQ. Он также предоставляет функциональность измерения сходства между понятиями. Для доступа к этой функциональности можно использовать плагин Protégé. HermiT – это решатель с открытым исходным кодом, основанный на методе "гипертабло". Он разработан Оксфордским университетом. Owlready2 – это пакет для онтологически ориентированного программирования на Python. Он позволяет загружать онтологии OWL 2.0 как объекты Python, изменять их, сохранять и выполнять логический вывод с помощью HermiT (включен). Owlready2 обеспечивает прозрачный доступ к онтологиям OWL (в отличие от обычных API на основе Java).

Редакторы

Protégé — это бесплатный редактор онтологий с открытым исходным кодом и платформа для создания баз знаний, способная использовать DL-рассуждающие машины с DIG-интерфейсом в качестве серверной части для проверки непротиворечивости. Это также браузер/редактор OWL, использующий стандартный веб-браузер в качестве основной парадигмы пользовательского интерфейса.

Интерфейсы

, стандартизированный XML-интерфейс к системам логического вывода, разработанный группой разработчиков DL Implementation Group (DIG). , Java-интерфейс и реализация для языка веб-онтологий, используемый для представления семантических веб-онтологий.