
- •1. ИСПОЛЬЗОВАНИЕ ЯЗЫКА ПРОЛОГ
- •2. ЛОГИЧЕСКИЕ ОСНОВЫ ЯЗЫКА ПРОЛОГ
- •2.1. Представление знаний и фактов
- •2.2. Исчисления логического типа
- •2.3. Исчисление резольвент
- •3. МЕХАНИЗМ РАБОТЫ ИНТЕРПРЕТАТОРА ПРОЛОГ-МАШИНЫ
- •Трассировка доказательства теоремы
- •4. ЯЗЫК ПРОЛОГ
- •4.1. Объявления
- •4.2. Данные и константы
- •Типы данных в Прологе
- •4.3. Управление возвратом
- •5. ВСТРОЕННЫЕ ПРЕДИКАТЫ И ФУНКЦИИ
- •5.1. Арифметические вычисления
- •5.2. Ввод и вывод
- •5.3. Текстовые окна и управление экраном
- •5.4. Обработка строк и преобразование типов
- •5.5. Базы данных
- •5.6. Вспомогательные средства
- •6. МОДУЛЬНОЕ ПРОГРАММИРОВАНИЕ
- •БИБЛИОГРАФИЧЕСКИЙ СПИСОК
- •ОСНОВНЫЕ КОНСТРУКЦИИ ЯЗЫКА ПРОЛОГ
Министерство общего и профессионального образования Рос сийской Федерации
ИНСТИТУТ ПЕРЕПОДГОТОВКИ КАДРОВ Уральского государственного технического университета
ОСНОВНЫЕ КОНСТРУКЦИИ ЯЗЫКА ПРОЛОГ
Методические указания по дисциплине "Логическое програм мирование" для слушателей специальности 220400
"Программное обеспечение вычислительной техники и автома тизированных систем"
Екатеринбург 1999
УДК 658.52.011
Составитель В.И.Суханов, к.т.н.
Научный редактор к.т.н. С.И.Тимошенко
ОСНОВНЫЕ КОНСТРУКЦИИ ЯЗЫКА ПРОЛОГ: Методические указания по дисциплине "Логическое программирование" /В.И.Суха нов. Екатеринбург : изд. ИПК УГТУ, 1999. 32 с.
Работа содержит основы логического программирования на языке ПРОЛОГ для персональных ЭВМ. Приведены сведения о си стемах программирования Turbo-Prolog и SWI-Prolog.
Библиогр.: 8 назв. Рис. 1. Табл. 2.
Подготовлены кафедрой “Программные средства и системы”
© Институт переподготовки кадров Уральского государственного техни ческого университета, 1999
1. ИСПОЛЬЗОВАНИЕ ЯЗЫКА ПРОЛОГ
ПРОЛОГ – язык логического программирования (PROgramming LOGical) – создан А.Колмероэ в Марселе (Франция) в 1971 году. В основе языка лежит исчисление резольвент, разработанное Дж. Ро бинсоном в середине 60-х годов, в частности, правило резолюции для Хорновских дизъюнктов, содержащих один положительный ли терал. В отличии от процедурных языков программирования про грамма на Прологе описывает с помощью правил и утверждений от ношения между объектами предметной области задачи. При доста точном запасе знаний интерпретатор (Пролог-машина) самостоя тельно находит решение задачи, поставленной в запросе. Пролог позволяет реализовать метафору: "вычисления, управляемые дан ными" в отличие от традиционной метафоры: "вычисления, управ ляемые программой".
Пролог широко используется при создании систем искусствен ного интеллекта (СИИ) благодаря описанию предметной области, применимому к решению большого числа частных задач (массо вость по задачам в отличие от массовости по данным для традици онных алгоритмов вычислений). Пролог положен в основу проекта ЭВМ пятого поколения, отличительной чертой которых является ма нипулирование со знаниями. Пролог был использован в различных приложениях: общение с ЭВМ на естественном языке, экспертные системы, системы автоматизированного проектирования, системы принятия решений и др.
В настоящее время разработаны системы программирования на Прологе практически для всех серийных ЭВМ. Наиболее распро страненными версиями являются МПролог (Модульный Пролог), Турбо-Пролог, SWI-Prolog, отличающиеся составом встроенных средств обработки данных, организации исполнения программы, взаимодействия с операционной системой и с техническими сред ствами ЭВМ. Существующие версии Пролог-систем по своим воз можностям не уступают процедурно-ориентированным языкам про граммирования высокого уровня в отношении работы с арифмети ческими данными и намного их превосходят при работе со списка ми, строками, базами данных. Программы на Прологе более