F-логика

Поделись знанием:
Перейти к: навигация, поиск

F-логика — (англ. frame logic) — язык представления знаний и онтологий. F-логика сочетает возможности концептуального моделирования с объектно-ориентированными языками и предлагает декларативный, компактный и простой синтаксис вместе с четкой семантикой логического языка на основе фреймов.

Характеристики F-логики включают, среди прочих, идентификацию объектов, составные объекты, наследование, полиморфизм, запросные методы, инкапсуляцию. F-логика находится в том же отношении к объектно-ориентированному программированию, в каком классическое исчислениее предикатов относится к реляционному программированию баз данных.

F-логика была первоначально разработана для дедуктивных баз данных, но теперь чаще используется для семантических технологий, особенно для Semantic Web.

F-логику рассматривают как один из формализмов для онтологий, хотя дескриптивная логика более популярна и принята как основная для языка онтологий OWL.

Среда разработки F-логики используется также в приложениях для информационной интеграции, вопросно-ответных системах и семантическом поиске.

Начиная с версии 4 редактора онтологий Protege, F-логика поддерживается как один из двух видов онтологии. Синтаксис Формата Правил Обмена (RIF) Консорциума Всемирной Паутины основан на F-логике.



Синтаксис F-логики

Классы и индивиды могут быть определены в F-логике следующим образом:

  • man::person.
  • woman::person.
  • brad: man.
  • angelina: woman.

Это означает, что «мужчина есть человек», « женщина есть человек», «Бред есть мужчина», «Анжелина — женщина».

Утверждения о классах и индивидах могут быть записаны следующим образом:

  • person[hasSon=>man].
  • brad[hasSon->>{maddox, pax}].
  • married(brad, angelina).

Это означает, что «сын человека есть мужчина», «Меддок и Пакс — сыновья Бреда» и «Бред и Анжелина — супруги».

Заметьте, что ->> используется для присвоения значений.

Аксиомы F-логики можно представлять в следующем виде:

  • man(X) <- person(X) AND NOT woman(X).
  • FORALL X, Y <- X:person[hasFather->Y] <- Y:man[hasSon -> X].

Они означают «X есть мужчина, если X — человек и не женщина», «для всех Х, У : человек X имеет отца У, если мужчина У имеет сына X».

Система Флора 2 (расширение F-логики) ввела несколько изменений в синтаксис F-логики, делая его более удобным для представления знаний и системы рассуждений, отличая от нотации чисто теоретической логики. В частности, переменные стали помечать префиксом «?», различение функциональных и многозначных свойств было заменено константами мощности, добавлены другие важные изменения.

В отличие от формализма дескриптивной онтологии, семантика F-логики совместима с гипотезой замкнутого мира. Вместе с тем, F-логика в общем случае неразрешима, тогда как дескриптивная логика, на которой базируется OWL — разрешима. Однако в F-логике можно представить более выразительные утверждения, чем это возможно с дескриптивными логиками.

Напишите отзыв о статье "F-логика"

Ссылки

  • М. Kifer, Г. Lausen, J. Wu (1995). Основания объектно-ориентированных фрейм-базированных Языков, Журнал ACM, Мая 1995. PDF
  • М. Kifer и Г. Lausen (1989). F-логика: язык высокого порядка для рассуждений об объектах, наследовании и схеме, ACM SIGMOD Конференция, 1989. PDF

К:Представление знания К:Семантическая Сеть К:Логические языки программирования К:Декларативные языки программирования

Отрывок, характеризующий F-логика

Князь Андрей ничего не понимал.
– Да откуда же вы, что вы не знаете того, что уже знают все кучера в городе?
– Я от эрцгерцогини. Там я ничего не слыхал.
– И не видали, что везде укладываются?
– Не видал… Да в чем дело? – нетерпеливо спросил князь Андрей.
– В чем дело? Дело в том, что французы перешли мост, который защищает Ауэсперг, и мост не взорвали, так что Мюрат бежит теперь по дороге к Брюнну, и нынче завтра они будут здесь.
– Как здесь? Да как же не взорвали мост, когда он минирован?
– А это я у вас спрашиваю. Этого никто, и сам Бонапарте, не знает.
Болконский пожал плечами.
– Но ежели мост перейден, значит, и армия погибла: она будет отрезана, – сказал он.
– В этом то и штука, – отвечал Билибин. – Слушайте. Вступают французы в Вену, как я вам говорил. Всё очень хорошо. На другой день, то есть вчера, господа маршалы: Мюрат Ланн и Бельяр, садятся верхом и отправляются на мост. (Заметьте, все трое гасконцы.) Господа, – говорит один, – вы знаете, что Таборский мост минирован и контраминирован, и что перед ним грозный tete de pont и пятнадцать тысяч войска, которому велено взорвать мост и нас не пускать. Но нашему государю императору Наполеону будет приятно, ежели мы возьмем этот мост. Проедемте втроем и возьмем этот мост. – Поедемте, говорят другие; и они отправляются и берут мост, переходят его и теперь со всею армией по сю сторону Дуная направляются на нас, на вас и на ваши сообщения.
– Полноте шутить, – грустно и серьезно сказал князь Андрей.
Известие это было горестно и вместе с тем приятно князю Андрею.
Как только он узнал, что русская армия находится в таком безнадежном положении, ему пришло в голову, что ему то именно предназначено вывести русскую армию из этого положения, что вот он, тот Тулон, который выведет его из рядов неизвестных офицеров и откроет ему первый путь к славе! Слушая Билибина, он соображал уже, как, приехав к армии, он на военном совете подаст мнение, которое одно спасет армию, и как ему одному будет поручено исполнение этого плана.
– Полноте шутить, – сказал он.
– Не шучу, – продолжал Билибин, – ничего нет справедливее и печальнее. Господа эти приезжают на мост одни и поднимают белые платки; уверяют, что перемирие, и что они, маршалы, едут для переговоров с князем Ауэрспергом. Дежурный офицер пускает их в tete de pont. [мостовое укрепление.] Они рассказывают ему тысячу гасконских глупостей: говорят, что война кончена, что император Франц назначил свидание Бонапарту, что они желают видеть князя Ауэрсперга, и тысячу гасконад и проч. Офицер посылает за Ауэрспергом; господа эти обнимают офицеров, шутят, садятся на пушки, а между тем французский баталион незамеченный входит на мост, сбрасывает мешки с горючими веществами в воду и подходит к tete de pont. Наконец, является сам генерал лейтенант, наш милый князь Ауэрсперг фон Маутерн. «Милый неприятель! Цвет австрийского воинства, герой турецких войн! Вражда кончена, мы можем подать друг другу руку… император Наполеон сгорает желанием узнать князя Ауэрсперга». Одним словом, эти господа, не даром гасконцы, так забрасывают Ауэрсперга прекрасными словами, он так прельщен своею столь быстро установившеюся интимностью с французскими маршалами, так ослеплен видом мантии и страусовых перьев Мюрата, qu'il n'y voit que du feu, et oubl celui qu'il devait faire faire sur l'ennemi. [Что он видит только их огонь и забывает о своем, о том, который он обязан был открыть против неприятеля.] (Несмотря на живость своей речи, Билибин не забыл приостановиться после этого mot, чтобы дать время оценить его.) Французский баталион вбегает в tete de pont, заколачивают пушки, и мост взят. Нет, но что лучше всего, – продолжал он, успокоиваясь в своем волнении прелестью собственного рассказа, – это то, что сержант, приставленный к той пушке, по сигналу которой должно было зажигать мины и взрывать мост, сержант этот, увидав, что французские войска бегут на мост, хотел уже стрелять, но Ланн отвел его руку. Сержант, который, видно, был умнее своего генерала, подходит к Ауэрспергу и говорит: «Князь, вас обманывают, вот французы!» Мюрат видит, что дело проиграно, ежели дать говорить сержанту. Он с удивлением (настоящий гасконец) обращается к Ауэрспергу: «Я не узнаю столь хваленую в мире австрийскую дисциплину, – говорит он, – и вы позволяете так говорить с вами низшему чину!» C'est genial. Le prince d'Auersperg se pique d'honneur et fait mettre le sergent aux arrets. Non, mais avouez que c'est charmant toute cette histoire du pont de Thabor. Ce n'est ni betise, ni lachete… [Это гениально. Князь Ауэрсперг оскорбляется и приказывает арестовать сержанта. Нет, признайтесь, что это прелесть, вся эта история с мостом. Это не то что глупость, не то что подлость…]