Содержание

Введение2

1. Постановка задачи4

2. Разработка алгоритма5

3. Описание предикатов7

4. Контрольный пример8

Заключение11

Список литературы12

Приложение13

Выдержка из текста

Введение

Prolog был создан в 1972 с целью сочетать использование логики с представлением знаний. С тех пор у него появился ряд диалектов, расширяющих основу языка различными возможностями.

Prolog — один из старейших и все еще один из наиболее популярных языков логического программирования, хотя он значительно менее популярен, чем основные императивные языки. Он используется в системах обработки естественных языков, исследованиях искусственного интеллекта, экспертных системах, онтологиях и других предметных областях, для которых естественно использование логической парадигмы.

Prolog был создан под влиянием более раннего языка Planner и позаимствовал из него следующие идеи:

•обратный логический вывод (вызов процедур по шаблону, исходя из целей);

•построение структура управляющей логики в виде вычислений с откатами;

•принцип “отрицание как неудача”;

•использование разных имен для разных сущностей и т.д.

Главной парадигмой, реализованной в языке Prolog, является логическое программирование. Как и для большинства старых языков, более поздние реализации, например, Visual Prolog, добавляют в язык более поздние парадигмы, например, объектно-ориентированное или управляемое событиями программирование, иногда даже с элементами императивного стиля.

Prolog использует один тип данных, терм, который бывает нескольких типов:

атом — имя без особого смысла, используемое для построения составных термов;

числа и строки такие же, как и в других языках;

переменная обозначается именем, начинающимся с прописной буквы, и используется как символ-заполнитель для любого другого терма;

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

Программы, написанные на чистом Prolog, описывают отношения между обрабатываемыми сущностями при помощи клауз Хорна. Клауза — это формула вида Голова :- Тело., которая читается как “чтобы доказать/решить Голову, следует доказать/решить Тело”. Тело клаузы состоит из нескольких предикатов (целей клаузы), скомбинированных с помощью конъюнкции и дизъюнкции. Клаузы с пустым телом называются фактами и эквивалентны клаузам вида Голова :- true. (true — не атом, как в других языках, а встроенный предикат).

Другой важной частью Prolog являются предикаты. Унарные предикаты выражают свойства их аргументов, тогда как предикаты с несколькими аргументами выражают отношения между ними. Ряд встроенных предикатов языка выполняют ту же роль, что и функции в других языках, например, ….

Предикаты с несколькими аргументами могут действовать в нескольких направлениях в зависимости от того, какие из аргументов уже связаны, а какие — нет. Например, ….

Наконец, для того, чтобы быть языком общего назначения, Prolog должен предоставлять ряд сервисных функций, например, процедур ввода/вывода. Они реализованы как предикаты без специального логического смысла, которые всегда оцениваются как истинные и выполняют свои сервисные функции как побочный эффект оценивания.

Целью выполнения программы на Prolog является оценивание одного целевого предиката. Имея этот предикат и набор правил и фактов, заданных в программе, Prolog пытается найти привязки (значения) переменных, при которых целевой предикат принимает значение истинности.

В курсовой работе Prolog будет использован для написания логической игры «Суммируйте до 20».

Список использованной литературы

1.Братко И. «Программирование на языке ПРОЛОГ для искусственного интеллекта». – М.: «МИР», 1990. – 560 с.

2.Батырь А.Ю., Герр Р.Г. Компьютер обретает разум Пер. с англ. — М.: Мир, 1990. — 238 с.: ил.

3.Малпас Дж. Реляционный язык Пролог и его применение: Пер. с англ. /Под редакцией В.Н. Соболева. — М.: Наука. Гл. ред. физ.-мат. лит., 1990. — 464 с.

Похожие записи