[Закрыть]
 
popoff.donetsk.ua
Блистать умом во мраке глупости - очень эффектно и очень неэффективно.
Начало | Новости | Статьи | Форум | Опросы | Карта сайта | Обо мне
popoff.donetsk.ua - Клуппы Yato - ДонНТУ - Функциональное и логическое программирование - Вопросы и ответы - Пролог. Факты и правила.
Я это делаю
Персональное меню
Голосование
Клуппы Yato Постоянный адрес этого вопроса
Деньги, но неинтересная работа и невозможность уделить время семье
Интересная работа, возможность саморазвиваться, но нищенский заработок
Ваш возраст (не обязательно)
Почему? (не обязательно)

Голосование закрыто.

Поиск по сайту
Реклама
Программное обеспечение любой сложности
koins.com.ua
Статистика

Пролог. Факты и правила.

Постоянный адрес статьи
Что такое факт?
  • Факт - это фактическое правило.

  • Факт - это совокупность цепей, которые обрабатывают базу данных.

  • Факт - это совокупность цепей, которые обрабатываются базой данных.

  • Факт - это совокупность целей, которые обрабатываются базой данных.

  • Факт - это одиночная цель, которая истинна.

    Из этого определения следует, что правило, которое истинно, является фактом.

  • Факт - это одиночная цель, не требующая доказательства.

Что такое правило?
  • Правило - это одна главная цель и одна подцель, которые истины при определённых условиях.

  • Правило - это одна главная цель и подцель, которая выполняется в результате программы.

  • Правило - это утверждение с условием. Например, если отец(Р,О) и мать(Р,М), то ребенок (Р,О,М).

  • Правило - это наиболее общие утверждения об объектах и отношениях между ними. Имеют вид фразовой формы.

  • Правило - это множество функций, образующих дизъюнкцию с операциями.

    В Прологе не используется термин «функция». Там только предикаты.

    Функция - это программа. Операция - это программа. Дизъюнкция - это операция, которая требует на вход данные. На вход операции дизъюнкция нельзя подавать программы.

    Не определено значение термина «образует дизъюнкцию».

Что такое запрос?
  • Запрос - это целевое утверждение.

    Факты и правила - это тоже целевые утверждения.

  • Запрос - это нахождение и доказательство фактов и правил в БД для ответа на вопрос.

    Согласно этому определению, запрос - это процесс. Хотя на самом деле запрос - это сущность.

  • Цель в Прологе называют запросом.

  • Запрос - это не конкретизированное утверждение, возвращающее в качестве результата истину, ложь или значение.

    Конкретизированными или неконкретизированными могут быть переменные, но не утверждения.

    Запрос - это в первую очередь предикат. Предикаты по определению могут быть только истинными или ложными. Если же говорить о возвращаемых значениях, то это особенность Пролога, что он может определить, при каких значениях аргументов этот предикат был бы истинным.

  • Запрос - это конъюнкция подцелей, которые необходимо доказать.

    В запросе может быть и одна подцель, тогда там не будет конъюнкции.

    В правиле тоже может быть конъюнкия подцелей, и в правиле эти подцели тоже нужно доказать.

  • Запрос - это программа на Прологе.

  • Запрос - это целевое утверждение, которое записывается в предикатной форме.

Первый этап программирования на Прологе
  • Инициализация фактов

    Факты нельзя «инициализировать».

  • Инициализация фактов и отношениий объекта

    Факты нельзя «инициализировать».

    Согласно этому определению, есть объект, и у этого объекта есть правило (объект владеет этим правилом, либо содержит его). Хотя на самом деле правила используются для описания объектов.

Второй этап программирования на Прологе
  • Определение правил объекта и области

    Термина «область» нет в Прологе.

    Согласно этому определению, есть объект, и у этого объекта есть правило (объект владеет этим правилом, либо содержит его). Хотя на самом деле правила используются для описания объектов.

  • Объявление правил и их отношений

    Отношение само по себе не принадлежит правилу. Правило - это и есть отношение.

Третий этап программирования на Прологе
  • Формулирование запросов (воросов) к объекту и области

    Термина «область» нет в Прологе.

  • Формулирование запросов к объекту

    Объектов может быть больше, чем один. Кроме объектов могут быть ещё и отношения, и информацию об этих отношениях тоже можно получить при помощи запросов. Запросы формулируются не к объекту, а к базе данных программы.

Четвёртый этап программирования на Прологе
  • Определение новых фактов.

Чем определяется порядок работы Пролог-программы?
  • Фактами, заданными программистом.

    Эти факты представляют собой часть Пролог-программы. Почему выбрана именно эта часть программы, как управляющая порядком работы самой себя, а не какая-нибудь другая?

  • Управление информацией, которая явно задаётся программистом.

  • Семантикой записи фактов и правил

    Неправильное понимание термина «семантика». «Семантика» отвечает на вопрос «что это». А на вопрос «как это записать» отвечает синтаксис. Но синтаксис не влияет на порядок работы Пролог-программы.

  • Порядком передачи управления.

  • Директирование реальным программистом.

    Кто такие «не реальные программисты» и в чём их отличие от «реальных программистов»?

  • Корректирование реальным программистом.

  • Сначала порядок выполнения Пролог-программы определяется семантикой языка.

  • Синтаксисом языка.

  • Семантикой выражений.

Порядок выполнения модели
  • Зависит от порядка записи семантики фактов и правил

    Термин «семантика» отвечает на вопрос «что это такое?». У семантики не может быть порядка записи.

Вычислительная модель Пролога
  • В этой модели используются так называемые выражения Хорна, то есть принцип резолюции.

  • Хорнова модель исчислений - это доказательство некоторых формул исчисления, которые трактуются как вычисление программы.

  • Вычислительная модель Пролога основана на вычислительной модели Хорна для конъюнкций и дизъюнкций.

  • В Прологе используется вычислительная модель Хорнова.

Последняя модификация: 03.11.06 13:26