F-логика ( фреймовая логика ) - это язык представления знаний и онтологий . F-logic сочетает в себе преимущества концептуального моделирования с объектно-ориентированными языками на основе фреймов и предлагает декларативный, компактный и простой синтаксис, а также четко определенную семантику языка, основанного на логике.
Возможности включают, среди прочего, идентификацию объекта, сложные объекты, наследование , полиморфизм , методы запроса, инкапсуляцию . F-логика находится в таком же отношении к объектно-ориентированному программированию , как классическое исчисление предикатов стоит реляционной базы данных программирования.
Обзор
F-логика была разработана Майклом Кифером из Университета Стоуни-Брук и Георгом Лаузеном из Университета Мангейма . Изначально F-логика была разработана для дедуктивных баз данных, но сейчас наиболее часто используется для семантических технологий, особенно семантической сети . F-логика считается одним из формализмов для онтологий , но логика описания (DL) более популярна и принята, как и OWL на основе DL .
Среда разработки для F-logic была разработана в проекте NeOn и также используется в ряде приложений для интеграции информации, ответов на вопросы и семантического поиска . До версии 4 редактора онтологий Protégé, F-Logic поддерживался как один из двух видов онтологий.
Синтаксис кадра диалекта базовой логики формата обмена правилами (RIF BLD), стандартизованный Консорциумом World Wide Web, основан на F-логике; Однако RIF BLD не включает немонотонные рассуждения F-логики. [1]
В отличие от логики описания, основанной на формализме онтологии, семантика F-логики обычно является семантикой предположения о закрытом мире, в отличие от предположения открытого мира DL . Кроме того , F-логика , как правило , неразрешимая , [ править ] в то время как описание Сёина логик , что OWL DL основан на разрешим. Однако можно представить более выразительные утверждения в F-логике, чем это возможно с логикой описания.
Наиболее полное описание F-логики было опубликовано в 1995 г. [2] Предварительная статья [3] [4] 1989 г. выиграла в 1999 г. Премию «Испытание временем» от ACM SIGMOD . [5] Последующий документ [6] 1992 года получил премию «Испытание временем» от ACM SIGMOD в 2002 году. [5]
Синтаксис F-логики
Классы и индивиды могут быть определены в F-логике следующим образом:
мужчина :: человек.женщина :: человек.Брэд: чувак.ангелина: женщина.
В нем говорится, что «мужчины и женщины - личности», «Брэд - мужчина», а «Анджелина - женщина».
Заявления о занятиях и отдельных лицах могут быть сделаны следующим образом:
человек [hasSon => мужчина].Брэд [hasSon -> {maddox, pax}].замужем (Брэд, Анджелина).
Это определяет, что «сын человека - мужчина», «Мэддокс и Пакс - сыновья Брэда» и «Брэд и Анджелина женаты».
Кроме того, аксиомы в F-логике можно представить следующим образом:
мужчина (X) <- человек (X) А НЕ женщина (X).X: человек [hasFather-> Y] <- Y: человек [hasSon -> X].
Это означает: «X - мужчина, если X - человек, но не женщина» и «если X - сын Y, то X - человек, а Y - отец X».
Система Flora-2 внесла ряд изменений в синтаксис F-логики, сделав ее более подходящей для системы представления знаний и рассуждений, а не только для теоретической логики. В частности, переменные получили префикс? -Марки, различие между функциональными и многозначными свойствами было удалено и заменено ограничениями мощности, а также другими важными изменениями. Например, приведенная выше пара предложений выглядит так во Флоре-2:
мужчина (? X) <- человек (? X) \ и \ naf женщина (? X).? X: человек [hasFather ->? Y] <-? Y: человек [hasSon ->? X].
Здесь \ naf - отрицание по умолчанию («naf» означает отрицание как отказ, основанное на хорошо обоснованной семантике ); Флора-2 также поддерживает так называемое явное отрицание [7], которое ближе к отрицанию в классической логике.
Языки на основе F-логики
- Flora-2 - это расширение F-логики с HiLog , логикой транзакций и отказоустойчивыми рассуждениями .
- Ergo - это коммерческая система, основанная на F-логике, которая расширяет Flora-2.
- PathLP - это язык программирования полной логики, основанный на F-логике.
- FLORID - это реализация на C ++
- Язык моделирования веб-служб (WSML)
- Язык семантических веб-сервисов (SWSL)
- Язык ObjectLogic основан на F-логике; OntoStudio - это реализация ObjectLogic компании semafora systems GmbH (ранее Ontoprise GmbH ).
Рекомендации
- ^ М. Krötzsch (октябрь 2010). Описание Логические правила . IOS Press. п. 10. ISBN 978-1-61499-342-1.
- ^ М. Кифер, Г. Лаузен, Дж. Ву (1995). «Логические основы объектно-ориентированных и фрейм-ориентированных языков», журнал ACM 42 (4), июль 1995 г., 741–843. DOI : 10,1145 / 210332,210335CiteSeer x : 10.1.1.115.3586
- ^ М. Кифер и Г. Лаузен (1989). «F-логика: язык высшего порядка для рассуждений об объектах, наследовании и схеме», ACM SIGMOD Record 18 (2), июнь 1989 г., стр. 134–146. DOI : 10,1145 / 66926,66939CiteSeer x : 10.1.1.1017.1401
- ^ М. Кифер и Г. Лаузен (1997). «F-логика: язык высшего порядка для рассуждений об объектах, наследовании и схеме», переиздан в 1997 году. CiteSeer x : 10.1.1.48.7149
- ^ а б «Премия SIGMOD Test of Time» . sigmod.org . Проверено 19 марта 2019 .
- ^ М. Кифер, В. Ким, Ю. Сагив (1992). «Запросы к объектно-ориентированным базам данных», ACM SIGMOD Record 21 (2), июнь 1992 г., стр. 393–402. DOI : 10,1145 / 141484,130342CiteSeer x : 10.1.1.50.9598
- ^ Алферес, Хосе Жулио; Перейра, Луис Мониш; Пржимусинский, Теодор К. (апрель 1998 г.). « „ Классика“Отрицание в немонотонном рассуждении и логическое программировании». Журнал автоматизированных рассуждений . 20 (1–2): 107–142. DOI : 10,1023 / A: 1005900924623 .