Концептуальное программирование. Тыугу Э. Х.--М.: Наука. Главная редакция физико-математической литературы, 1984.— 256 е.~ (Проблемы искусственного интеллекта). » Дано доступное изложение логических основ автоматического синтеза программ и метода структурного синтеза. Описан язык концептуального программирования. Много внимания уделено решению методом концептуального программирования задач из разных предметных областей: геометрии, физики, управления данными, моделирования систем, построения трансляторов. Книга предназначена для специалистов по искусственному интеллекту и системных программистов. Табл. 5, илл. 63, библ. 45 назв.
ОГЛАВЛЕНИЕ
Предисловие................. 6 -
Глава 1. Задачи и программы........... 11
§ 1.1. Представление задач............12
1.1.1. Вычислительные задачи (12). 1.1.2. Другие задачи (14).
§ 1.2. Логические основы синтеза программ ..,.'... 15 1.2.1. Теорема существования решения (16). 1.2.2. Формальные теории (16). 1.2.3. Реализуемость формул (17). 1.2.4. Доказательство и программа (19). 1.2.5. Построение, доказательства (24).
§ 1.3. Структурный синтез программ.........26
1.3.1. Предложения вычислимости (27)., 1.3.2. Правила вывода (29).-1.3.3. Алгоритм поиска вывода в конечных теориях структурного синтеза (30.) 1.3.4. Расширение структурного синтеза (34).
§ 1.4. Историческая и библиографическая справка ..... 38 ,
Г л а в а 2. Представление знаний о задачах....... 39
§ 2.1. Современное понятие типа..........40
2.1.1. Неинтерпретированные типы (41). 2.1.2. Интерпретированные типы (42). 2.1.3. Абстрактные типы (42).
§ 2.2. Представление знаний........... 45
2.2.1. Семантические сети (45). 2.2.2. Действия над семантическими сетями (48). 2.2.3. Фреймы (49).
§ 2.3. Вычислительные модели...........50
2.3.1. Отношения (50). 2.3.2. Простые вычислительные модели (54). 2.3.3. Решение задач на вычислительных моделях (56). 2.3.4. Деист-" вия над вычислительными моделями"(60). 2.3.5. Расширение вычислительных моделей (62). 2,3.6. Переход к аксиомам (65). § 2.4. Краткий обзор и комментарии.........66
Глава 3. Язык УТОПИСТ............ 67
§ 3.1. Общие черты..............67
3.1.1. Язык концептуального программирования (67). 3.1.2. Объекты (69). 3.1.3. Программа (70). 3.1.4. Лексика я метасинтаксис (73). 3.1.5. Интуитивная семантика (75).
. § 3.2. Описания........'. . '.....79
3.2.1. Общий вид описаний (79). 3.2.2. Первичные типы (80). 3.2.3. Иерархия описаний (80). 3.2.4. Составные имена (82). 3.2.5. Последовательности (83). 3.2.6. Шаблон имени (84). 3.?.7. Вставки (84).
§ 3.3. Отношения...............84
3.3.1. Выражения (85). 3.3.2. Уравнения (87). 3.3.3. Программные отношения (89). 3.3.4. Условные отношения (92). 3.3.5. Подзадачи (94). 3.3.6. Отношения в последовательностях (94). 1*
§ 3.4. Копирование..............96
3.4.1. Простые копии (96). 3.4.2. Копии с фиксированными значениями компонентов (98). 3.4.3. Копии с дополнительными отношениями (99). 3.4.4. Явное и неявное задание места переделок (100). 3.4.5. Неопределенные компоненты (101). 3.4.6. Копии с доопределением (102). 3.4.7. Типы в языке УТОПИСТ (103),
§ 3.5. Операторы...............105
3.5.1. Оператор задачи (105). 3.5.2. Присваивание (105). 3.5.3. Вызов подпрограммы (106). 3.5.4. Вызов отношения (106).
§ 3.6. Управляющие предложения.........108
3.6.1. Последовательность (108). 3.6.2. Условное предложение (109). 3.6.3. Цикл (109). 3.6.4. Выход (110).
§ 3.7. Структура и семантика программы........НО
3.7.1. Исходная программа (111). 3.7.2. Результат синтеза (114).
3.7.3. Размеры программ (115).
§ 3.8. Операционное окружение и некоторые расширения языка 116 3.8.1. Семантическая память (116). 3.8.2. Макросистема (118). 3.8.3. Библиотеки модулей (120). 3.8.4. Директива пуск и вспомогательные программы (121). 3.8.5. Диалог с системой ПРИЗ ЕС (122).
Глава 4. Представление элементарных знаний по математике и фи-
7 зике................124
§ 4.1. Определение понятий............125
4.1.1. Понятия и подпонятия (125). 4.1.2. ^Выявление полезных понятий (126). 4.1.3. Простые геометрические фигуры и тела (126). 4М.4. Задачи на сочетание фигур (131).
§ 4.2. Тригонометрия ..............134
4.2.1. Углы и стороны треугольника (134). 4.2.2. Полная модель треугольника (137). 4.2.3. Специальные- виды треугольников (138).
4.2.4. Задачи (141). 4.2.5. Соглашения об обозначениях (143).
§ 4.3. Другие понятия.............144
4.3.1. Проценты (145). 4.3.2. Делимость (145). 4.3.3. Подобие фигур (147). 4.3.4. Функция, ее максимум и минимум (148). 4.3.5. Ряды (.150). 4.3.6. Типовая задача (151).
§ 4.4. Элементарная физика...........152
4.4.1. Единицы измерения (152). 4-.4.2. Механика (155). 4.4.3. Электричество (160). 4.4.4. Идеальные газы (162).
Глава 5. Приемы концептуального программирования .... 167
§ 5.1. Ввод-вывод..............167
5.1.1. Вывод первичных значений (168). 5.1.2. Автоматическое форматирование (170). 5.1.3. Построение проблемно-ориентированных понятий ввода и вывода (172). 5.1.4. Макетный ввод-вывод (176).
§ 5.2. Типы данных программиста..........178
5.2.1. Магазин и очередь (179). 5.2.2. Массивы (181). 5.2.3. Файлы (183). 5.2.4. Скалярный тип (185). 5.2.5. Ссылки (186).
§ 5.3. Нисходящее программирование.........186
5.3.1. Анализ задач (187). 5.3.2. Составление списка понятий (189). 5.3.3. Программирование понятий (191). 5.3.4. Программирование модулей (193).
§ 5.4. Языковые препроцессоры .......... 194
5.4.1. Назначение препроцессоров (194). 5.4.2. Пример языка пакета программ (195). 5.4.3. Препроцессор нечетких высказываний (199).
Глава 6. Управление данными.......... 206
§ 6.1. Базы данных..............207
6.1.1. Модели данных (207). 6.1.2. Система управления базами данных (211).
§ 6.2. Работа с множествами...........212
6.2.1. Множество (212). 6.2.2. Подмножество (214). 6.2.3. Простые операции над множествами (215). 6.2.4. Кванторы (217). 6.2.5. Прямое произведение, проекция (218). 6.2.6. Пример применения множеств (220).
§ 6.3. Система управления базами данных DABU ..... 221 6.3.1. Назначение и особенности (221). 6.3.2. Язык DABU (221).
§ 6.4. Описание других моделей данных........226
6.4.1. Иерархические модели (226). 6.4.2. Сетевые модели (227). 6.4.3. Совместное использование разных моделей баз данных (228).
Глава 7. Примеры.......... ?30
§ 7.1. Моделирование систем . • .'.......... 230
7.1.1. Описание систем, обратная связь (230). 7.1.2. Понятие процесса (234). 7.1.3. Системы, описываемые обыкновенными дифференциальными уравнениями (236). 7.1.4. Стохастическое моделирование (237). 7.1.5. Оптимизация (239).
§ 7.2. Реализация семантики языков программирования '. . 241 7.2.1. Атрибутные модели порождающих правил (242). 722 Модель текста (243). 7.2.3. Модель языка (247).
Литература................ 25()


Hosted by uCoz