Навигация
Главная
Поиск
Форум
FAQ's
Ссылки
Карта сайта
Чат программистов

Статьи
-Delphi
-C/C++
-Turbo Pascal
-Assembler
-Java/JS
-PHP
-Perl
-DHTML
-Prolog
-GPSS
-Сайтостроительство
-CMS: PHP Fusion
-Инвестирование

Файлы
-Для программистов
-Компонеты для Delphi
-Исходники на Delphi
-Исходники на C/C++
-Книги по Delphi
-Книги по С/С++
-Книги по JAVA/JS
-Книги по Basic/VB/.NET
-Книги по PHP/MySQL
-Книги по Assembler
-PHP Fusion MOD'ы
-by Kest
Professional Download System
Реклама
Услуги

Автоматическое добавление статей на сайты на Wordpress, Joomla, DLE
Заказать продвижение сайта
Программа для рисования блок-схем
Инженерный калькулятор онлайн
Таблица сложения онлайн
Популярные статьи
OpenGL и Delphi... 65535
Форум на вашем ... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Содержание сайт... 65535
Вызов хранимых ... 65535
Эмулятор микроп... 65535
Приложение «Про... 64066
Организация зап... 62739
Оператор выбора... 62511
Invision Power ... 62156
Подключение Mic... 60913
Модуль Forms 59874
Создание отчето... 59794
ТЕХНОЛОГИИ ДОСТ... 55982
Программируемая... 55429
Пример работы с... 53076
Имитационное мо... 51362
21 ошибка прогр... 46355
Реклама
Сейчас на сайте
Гостей: 9
На сайте нет зарегистрированных пользователей

Пользователей: 13,057
новичок: Aidar
Новости
Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian

База данных студентов на Delphi + Microsoft SQL Server
Игра Sokoban на Delphi + Блок схемы
Поиск пути в графе заданном списками инцедентности на Turbo Pascal

Реклама



Подписывайся на YouTube канал о программировании, что бы не пропустить новые видео!

ПОДПИСЫВАЙСЯ на канал о программировании
Введение в Турбо Пролог
Язык Пролог предназначен для использования в разработ-
ках по искусственному интеллекту и в современных эксперт-
ных системах. Повышение требований к "дружественности"
интерфейса и интеллектуальности программных средств обслужи-
вает рост популярности этого языка.
Пролог относится к классу непроцедурных, или деклара-
тивных, языков программирования, которые отличаются от про-
цедурных языков тем, что описывают не последовательность
действий по достижению заданной цели (алгоритм), а фикси-
руют имеющуюся в наличии информацию (знания) и определяют
задачу (цель). Средства достижения результата (алгоритм)
скрыты внутри Пролог-системы, а основу которой положен один
из разделов математической логики - исчисление предикатов
первого порядка. Это позволяет разработчику сосредоточить
внимание на поставленной проблеме, а не заниматься вопро-
сами кодирования программ. Следствием подобного подхода
являются, во-первых, ориентация языка на обработку сим-
вольной информации, а во-вторых, принципиально отличная от
процедурных языков структура программы (т.к. в декларатив-
ных языках отсутствуют понятия потока команд и оператора
присвоения).
Среди декларативных языков программирования различают
функциональные языки и языки логического программирования.
Функциональные языки базируются на комбинаторной логике и
теории рекурсивных уравнений. В общем случае программа на
таком языке представляет собой систему неупорядоченных
рекурсивных уравнений.
В отличие от них языки логического программирования к
которым принадлежит Пролог, основаны на символьной логике.
Язык Пролог, как типичный представитель данного класса
языков, по сравнению с процедурными языками имеет следующие
характерные особенности:
- декларативность программы, позволяющая разработчику
уделять максимальное время не операциям взаимодействия с
ЭВМ, а решению поставленной задачи;
- простая и динамичная структура данных;
- единообразие описаний программ и данных, позволяющее
изменять программу во время ее работы.
Особенности языка определяют области его применения:
- перевод с одного языка на другой (это относится как
к естественным языкам, так и к языкам программирования);
- естественно-языковые интерфейсы программных систем;
- "быстрые" варианты программных систем, позволяющие
за короткое время создавать прототипы программ в рекламных
целях, или для "обкатки" пользователем;
- системы управления реляционными базами данных с
элементами экспертных оценок и искуственного интеллекта;
- собственно экспертные системы и системы
искуственного интеллекта, включающая системы доказательства
теорем, символьных вычислений и т.п.
Кроме того, рассматриваемый вариант языка Турбо-Пролог
версия 2.0 фирмы Borland International обладает рядом
дополнительных преимуществ:
- реализована на наиболее распространенном типе
персональных ЭВМ;
- возможность взаимодействия с одним из наиболее
мощных языков процедурного класса - языком Турбо Си;
- возможность взаимодействия с графической библиотекой
BGI (Borland Graphic Interface);
- наличие большого объема документации, включая
учебник и множество примеров программ;
- наличие широкого распространенной Турбо-среды,
знакомой многим пользователям персональных ЭВМ.
В логическом программировании элементы исходной задачи
описываются в виде объектов и отношений между ними. В языке
Пролог объекты называются атомами, а отношения - предикатами.
Для записи отношений используется эдинбургский синтаксис,
согласно которому отношение r между объектами - атомами a и
b записывается в виде
r(a, b)



Отношения-предикаты могут быть как унарными (например,
r(a)), так и бинарными (r(a, b)), или, а общем случае,
n-арными (r(a,b,...,x)).
В одной задаче могут использоваться несколько множеств
различных объектов. В этом случае каждому множеству
ставится в соответствие его тип. Кроме того, между
элементами каждого множества могут существовать несколько
отношений (могут быть определены несколько предикатов). В
последнем случае имеет смысл определить взаимосвязи между
отношениями-предикатами, заданными над одним и тем же
множеством объектов-атомов. Формальная запись такой
взаимосвязи называется правилом. При построении правил
используется абстрактный тип объекта, не имеющий
конкретного наполнения и называемый переменной. Объект-
переменная, так же как и объект_атом, имеет тип. Переменная
может принимать значение любого однотипного с ним атома.
Набор описаний атомов, определенных на них предикатов
и множество установленных правил совместно с формально
описанной целью задачи образуют Пролог-программу.
Опубликовал Kest April 02 2009 21:34:48 · 0 Комментариев · 12935 Прочтений · Для печати

• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •


Комментарии
Нет комментариев.
Добавить комментарий
Имя:



smiley smiley smiley smiley smiley smiley smiley smiley smiley
Запретить смайлики в комментариях

Введите проверочный код:* =
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Поделиться ссылкой
Фолловь меня в Твиттере! • Смотрите канал о путешествияхКак приготовить мидии в тайланде?
Загрузки
Новые загрузки
iChat v.7.0 Final...
iComm v.6.1 - выв...
Visual Studio 200...
CodeGear RAD Stud...
Шаблон для новост...

Случайные загрузки
Cooltray
Цветной Grid
Flud Vkontakte.ru
Delphi. Разработк...
База для Allsubmi...
MPTools
Род Стивенс. Delp...
Язык программиров...
Изучаем Ассемблер
Клавиатурный трен...
Удаление своего EXE
Halcyon
Распознавание иде...
DFileDeleter
«Философия» прогр...
Geo-Whois
Adapter (пример D...
Модифицированная ...
Программирование ...
MicroGPSS Studen ...

Топ загрузок
Приложение Клие... 100366
Delphi 7 Enterp... 82062
Converter AMR<-... 20046
Borland C++Buil... 11039
GPSS World Stud... 10378
Borland Delphi ... 8030
Turbo Pascal fo... 6957
Visual Studio 2... 4961
Калькулятор [Ис... 4253
FreeSMS v1.3.1 3508
Случайные статьи
2 этап – составлен...
168.10.
Кто-то уже собирал...
Сравнения типов на...
Эмуляция директивы...
Инициализация пере...
РЕЖИМ "РЕДАКТИРОВА...
Окна, шрифт
Принимайте соответ...
Лабораторная: защи...
Протокол анонсиров...
Заблуждения в С++
Рассчет машинного ...
Игорные слоты
Таблица, свойства ...
Виртуальные дестру...
стандартным уровнем
Программирование: ...
Интернет – магазин...
Эмулятор микропроц...
Задание на моделир...
Обзор электронной ...
Баланс входящих и ...
консоли Active Dir...
Сообщения Auto-Ne...
Статистика



Друзья сайта
Программы, игры


Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?