Логическое программирование
  • формат djvu
  • размер 3,85 МБ
  • добавлен 01 июня 2016 г.
Стобо Дж. Язык программирования ПРОЛОГ
Перевод с англ. Н.Г. Волченкова, С.Г. Григорьева. Под редакцией Н.Г. Волченкова. — М.: Радио и Связь, 1993. — 368 с.: ил. — ISBN 5-256-00921-4.
В книге автора из США содержится большой набор методов программирования, которые можно рассматривать как инструментарий для решения самых различных задач программирования. Детально представлен процесс разработки программных систем, начиная от анализа и кончая реализацией и тестированием. В приложении даны полные тексты программ, решения к упражнениям.
Для инженерно-технических работников.
Предисловие
Предисловие к русскому изданию
Программирование с помощью фактов
Объекты данных: терм
Полноценная программа
Рекурсия в структурах
Сопоставление структур
Выводы
Программирование с помощью правил
Правила
Терминология: процедуры, утверждения и предикаты
Процедурный режим: порядок согласования целей
Согласование цели
Поиск для сопоставления
Отказы для целей
Генерация альтернативных ответов на вопросы

Прогрессирующая подстановка
Сеанс взаимодействия
Выводы
Рекурсия в правилах
Рекурсивные правила
Построение рекурсивных структур
Нотация для списков
Разработка процедур посредством анализа состояний
Еще один метод разработки процедур
Списки и структурирование данных
Выводы
Операция над термами
Арифметические операции
Операции сравнения
Операции проверки типа
Операции конструирования термов
Проверка термов на равенство
Выводы
Ввод и вывод
Ввод и вывод термов
Возможности более гибкого ввода и вывода
Определение оператора
Ввод и вывод символов
Работа с файлами
Выводы
Управление выполнением программ
Сокращение поиска: "отсечение"
Предотвращение бесполезных попыток поиска
Обеспечение взаимной исключительности

Вынуждаемый возврат и повторение: предикаты fail и repeat
Другие средства, предназначенные для управления
Выражение альтернатив
Комбинация отсечения и предиката
fail
Выводы
Программы как данные
Модификация утверждений программы
Управление базой данных
Накопление результатов с помощью вынуждаемого возврата
бальные переменные

Метапрограммирование
Метапрограммирование и программные структуры
Интерпретатор Пролога на Прологе

Выводы
Грамматические правила
НС-грамматика
Грамматика, определяемая утверждениями
Согласование по роду, лицу и числу
Поверхностная и глубинная структура

Включение словаря
Прагматические аспекты построения синтаксических анализаторов
Выводы
Тестирование, отладка и документирование
Тестирование
Отладка
Расширенный интерпретатор для отладки
Документирование
Выводы
Написание процедуры и программ
Система решения задач

Требования к системе
Алгоритм решения задач
Представление состояния задачи
Представление методов решения задачи
Алгоритм планирования

Программа, удовлетворяющая системным ограничениям
Настройка подцели ?- начальное_состояние(Si)
Настройка подцели ?- разработка_плана(Задача, Si, План, Sf)
Настройка подцели ?- подтверждение_плана(План)
Настройка подцели ?- модификация_состояния(Sf)

Тестирование и реализация программы
Поиск ошибок
Исправление программы
Настройка представления знаний
Добавление новых действий

Дальнейшее развитие программы
Переменные в целях
Ограничения алгоритма планирования

Заключительные замечания
Электронный дневник
Требования к системе
Проект системы
Реализация
Календарь
Представление данных правилами
Обработка файла
Ввод данных
Управление дневником

Расширение системы
Другие виды нагрузок
Другие операции с дневником

Приложения
Текст окончательной версии программы, реализующей систему решения задач
Текст окончательной версии программы, реализующей систему электронного дневника
Стандарт языка Пролог
Ответы к упражнениям
Список символов кода Ascii
Список литературы