Содержание книги "Введение в логическое программирование
"
Предисловие от издательства
Отзывы
Предисловие
Часть I. Введение
Глава 1. Введение
1.1. Программирование в логике
1.2. Логические программы как исполняемые спецификации
1.3. Преимущества логического программирования
1.4. Области применения логического программирования
1.5. Базовое логическое программирование
Исторические заметки
Глава 2. Наборы данных
2.1. Введение
2.2. Формирование представлений
2.3. Наборы данных
2.4. Пример – женское сообщество
2.5. Пример – родство
2.6. Пример – мир блоков
2.7. Пример – мир еды
2.8. Переформулирование
2.9. Упражнения
Часть II. Запросы и обновления
Глава 3. Запросы
3.1. Введение
3.2. Синтаксис запросов
3.3. Семантика запроса
3.4. Безопасность
3.5. Предопределенные понятия
3.6. Пример – родственные связи
3.7. Пример – раскрашивание карт
3.8. Упражнения
Глава 4. Обновления
4.1. Введение
4.2. Синтаксис обновлений
4.3. Семантика обновлений
4.4. Одновременные обновления
4.5. Пример – родство
4.6. Пример – цвета
4.7. Упражнения
Глава 5. Оценка запросов
5.1. Введение
5.2. Оценка базовых запросов
5.3. Сопоставление
5.4. Оценка запросов с переменными
5.5. Вычислительный анализ
5.6. Упражнения
Глава 6. Оптимизация просмотра
6.1. Введение
6.2. Упорядочивание подцелей
6.3. Удаление подцелей
6.4. Удаление правил
6.5. Пример – криптарифметика
6.6. Упражнения
Часть III. Определения представлений
Глава 7. Определения представлений
7.1. Введение
7.2. Синтаксис
7.3. Семантика
7.4. Полупозитивные программы
7.5. Стратифицированные программы
7.6. Упражнения
Глава 8. Оценка вида
8.1. Введение
8.2. Нисходящая обработка основных целей и правил
8.3. Унификация
8.4. Нисходящая обработка неосновных запросов и правил
8.5. Упражнения
Глава 9. Примеры
9.1. Введение
9.2. Пример – родство
9.3. Пример – мир блоков
9.4. Пример – модульная арифметика
9.5. Пример – направленные графы
9.6. Упражнения
Глава 10. Списки, множества, деревья
10.1. Введение
10.2. Пример – арифметика Пеано
10.3. Списки
10.4. Пример – сортированные списки
10.5. Пример – множества
10.6. Пример – деревья
10.7. Упражнения
Глава 11. Динамические системы
11.1. Введение
11.2. Представление
11.3. Моделирование
11.4. Планирование
11.5. Упражнения
Глава 12. Метазнания
12.1. Введение
12.2. Обработка естественного языка
12.3. Булева логика
12.4. Упражнения
Часть IV. Определения операций
Глава 13. Операции
13.1. Введение
13.2. Синтаксис
13.3. Семантика
13.4. Упражнения
Глава 14. Динамические логические программы
14.1. Введение
14.2. Реактивные системы
14.3. Замкнутые системы
14.4. Система со смешанной инициативой
14.5. Одновременные действия
14.6. Упражнения
Глава 15. Управление базами данных
15.1. Введение
15.2. Обновление с ограничениями
15.3. Ведение материализованных представлений
15.4. Обновление через представления
15.5. Упражнения
Глава 16. Интерактивные рабочие листы
16.1. Интерактивные рабочие листы
16.2. Пример
16.3. Данные страницы
16.4. Жесты
16.5. Определения операций
16.6. Определения вида
16.7. Семантическое моделирование
Часть V. Заключение
Глава 17. Вариации
17.1. Введение
17.2. Логические производственные системы
17.3. Логическое программирование с ограничениями
17.4. Дизъюнктивное логическое программирование
17.5. Экзистенциальное логическое программирование
17.6. Программирование наборов ответов
17.7. Индуктивное логическое программирование
Приложение A. Предопределенные понятия в EpilogJS
А.1. Введение
A.2. Отношения
А.3. Математические функции
А.4. Строковые функции
А.5. Функции списков
A.6. Арифметические функции списков
A.7. Функции преобразования
A.8. Агрегаты
A.9. Операторы
Приложение Б. Sierra
Б.1. Введение
Б.2. Начало работы
Б.3. Данные
Б.4. Запросы
Б.5. Обновления
Б.6. Определения представлений
Б.7. Определения операций
Б.8. Настройки
Б.9. Управление файлами
Б.10. Заключение