Jump to content

Дедуктивный язык

Дедуктивный язык — это язык компьютерного программирования , в котором программа представляет собой набор предикатов («фактов») и правил, которые их связывают. Такой язык используется для создания систем, основанных на знаниях , или экспертных систем , которые могут выводить ответы на наборы задач, применяя правила к предоставленным им фактам. Примером дедуктивного языка является Пролог или его родственник запросов к базе данных Datalog .

Как следует из названия, дедуктивные языки основаны на принципах дедуктивного рассуждения; делать выводы на основе имеющихся знаний. Первая рекомендация использовать клаузальную форму логики для представления компьютерных программ была сделана Корделлом Грином (1969) в Стэнфордском исследовательском институте (ныне SRI International ). Эту идею также можно связать с битвой между процедурным и декларативным представлением информации в ранних системах искусственного интеллекта. Дедуктивные языки и их использование в логическом программировании также можно отнести к тому же году, когда Фостер и Элкок представили Absys , первый язык дедуктивного/логического программирования. представил первую систему Пролога Вскоре после этого в 1972 году Кольмерауэр в сотрудничестве с Робертом Ковальски .

Компоненты

[ редактировать ]

Компонентами дедуктивного языка являются система формальной логики и база знаний , к которой эта логика применяется.

Формальная логика

[ редактировать ]

Формальная логика — это изучение умозаключений относительно формального содержания. Отличительной особенностью формальной и неформальной логики является то, что в первом случае логическое правило, применяемое к содержанию, не является специфичным для конкретной ситуации. Законы действуют независимо от изменения контекста. Хотя в приведенном ниже примере описана логика первого порядка для демонстрации использования дедуктивного языка, формальная система не обязательна, а использование конкретной системы определяется в языковых правилах или грамматике.

В качестве входных данных предикат принимает любой объект(ы) в интересующей области и выводит одно из двух логических значений: true или false. Например, рассмотрим предложения «Барак Обама — 44-й президент» и «Если сегодня пойдет дождь, я принесу зонтик». Первое — это утверждение с соответствующим значением истинности. Второе — это условное утверждение, зависящее от значения какого-либо другого утверждения. Любое из этих предложений можно разбить на предикаты, которые можно сравнивать и формировать базу знаний дедуктивного языка.

Более того, такие переменные, как «Барак Обама» или «президент», можно оценить количественно. Например, возьмите «Барак Обама» в качестве переменной «x». В предложении «Существует такой символ «х», что если «х» — президент, то «х» — главнокомандующий». Это пример квантора существования в логике первого порядка. Возьмите «президент» за переменную «y». В предложении «Для каждого «у» «у» является лидером своей нации». Это пример квантора универсальности.

База знаний

[ редактировать ]

Коллекция «фактов» или предикатов и переменных формирует базу знаний дедуктивного языка. В зависимости от языка порядок объявления этих предикатов в базе знаний может влиять или не влиять на результат применения логических правил. При применении определенных «правил» или выводов в базу знаний могут быть добавлены новые предикаты. По мере того как новые факты устанавливаются или добавляются, они формируют основу для новых выводов. Являясь ядром ранних экспертных систем, систем искусственного интеллекта, которые могли принимать решения, как человек-эксперт, базы знаний предоставляли больше информации, чем базы данных. Они содержали структурированные данные с классами, подклассами и экземплярами.

Пролог — это пример дедуктивного декларативного языка, который применяет логику первого порядка к базе знаний. Чтобы запустить программу на Прологе, создается запрос, и на основе механизма вывода и конкретных фактов из базы знаний возвращается результат. Результатом может быть что угодно, от нового отношения или предиката до литерала, такого как логическое значение (истина/ложь), в зависимости от механизма и системы типов .

Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 148e81b6c94dafdc4f66df90ed9174d7__1710983880
URL1:https://arc.ask3.ru/arc/aa/14/d7/148e81b6c94dafdc4f66df90ed9174d7.html
Заголовок, (Title) документа по адресу, URL1:
Deductive language - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)