Навигация
Главная
Поиск
Форум
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
21 ошибка прогр... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Invision Power ... 65535
Пример работы с... 65535
Содержание сайт... 65535
ТЕХНОЛОГИИ ДОСТ... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Создание отчето... 65535
Имитационное мо... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Реклама
Сейчас на сайте
Гостей: 11
На сайте нет зарегистрированных пользователей

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

Моделирование станции технического обслуживания на GPSS + Отчет
Моделирование работы аэропорта на GPSS + Пояснительная записка
Создание последовательности окон и передвижение окон по экрану на Turbo ...

Введение в Турбо Пролог
Язык Пролог предназначен для использования в разработ-
ках по искусственному интеллекту и в современных эксперт-
ных системах. Повышение требований к "дружественности"
интерфейса и интеллектуальности программных средств обслужи-
вает рост популярности этого языка.
Пролог относится к классу непроцедурных, или деклара-
тивных, языков программирования, которые отличаются от про-
цедурных языков тем, что описывают не последовательность
действий по достижению заданной цели (алгоритм), а фикси-
руют имеющуюся в наличии информацию (знания) и определяют
задачу (цель). Средства достижения результата (алгоритм)
скрыты внутри Пролог-системы, а основу которой положен один
из разделов математической логики - исчисление предикатов
первого порядка. Это позволяет разработчику сосредоточить
внимание на поставленной проблеме, а не заниматься вопро-
сами кодирования программ. Следствием подобного подхода
являются, во-первых, ориентация языка на обработку сим-
вольной информации, а во-вторых, принципиально отличная от
процедурных языков структура программы (т.к. в декларатив-
ных языках отсутствуют понятия потока команд и оператора
присвоения).
Среди декларативных языков программирования различают
функциональные языки и языки логического программирования.
Функциональные языки базируются на комбинаторной логике и
теории рекурсивных уравнений. В общем случае программа на
таком языке представляет собой систему неупорядоченных
рекурсивных уравнений.
В отличие от них языки логического программирования к
которым принадлежит Пролог, основаны на символьной логике.
Язык Пролог, как типичный представитель данного класса
языков, по сравнению с процедурными языками имеет следующие
характерные особенности:
- декларативность программы, позволяющая разработчику
уделять максимальное время не операциям взаимодействия с
ЭВМ, а решению поставленной задачи;
- простая и динамичная структура данных;
- единообразие описаний программ и данных, позволяющее
изменять программу во время ее работы.
Особенности языка определяют области его применения:
- перевод с одного языка на другой (это относится как
к естественным языкам, так и к языкам программирования);
- естественно-языковые интерфейсы программных систем;
- "быстрые" варианты программных систем, позволяющие
за короткое время создавать прототипы программ в рекламных
целях, или для "обкатки" пользователем;
- системы управления реляционными базами данных с
элементами экспертных оценок и искуственного интеллекта;
- собственно экспертные системы и системы
искуственного интеллекта, включающая системы доказательства
теорем, символьных вычислений и т.п.
Кроме того, рассматриваемый вариант языка Турбо-Пролог
версия 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 18:34:48 · 0 Комментариев · 15582 Прочтений · Для печати

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


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



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

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

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

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

Пароль



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

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

Случайные загрузки
Пример работы с ф...
39 статьи по Delphi
XPATComponents
TDBF
PrevInst
Sztransppanel
Моделирование дви...
SODA [Исходник на...
PHP5. Профессиона...
Xrumer 4 Platinum...
NotePad Pro [Исхо...
Базы данных в Инт...
PHP: обучение на ...
Длинный заголовок...
Открытие Cd-ROM'a...
Переработанный пл...
Файловый менеджер
FormShape [Исходн...
Error mod
Панель Наша Кнопка

Топ загрузок
Приложение Клие... 100774
Delphi 7 Enterp... 97836
Converter AMR<-... 20268
GPSS World Stud... 17014
Borland C++Buil... 14191
Borland Delphi ... 10291
Turbo Pascal fo... 7374
Калькулятор [Ис... 5984
Visual Studio 2... 5207
Microsoft SQL S... 3661
Случайные статьи
ПРИЛОЖЕНИЕ А. О...
IDL
Схлопывание пузырьков
Здесь мы рассмотри...
Казино Азино777 он...
Нам нужна такая ре...
Сценарий главы: ко...
Нам нужны достаточ...
Организация информ...
тег структуры
Использование прог...
Интерфейс аппаратн...
МОДЕЛЬ С АКТИВНОЙ...
Как проиндексирова...
Стремитесь к нетра...
Система 4.4BSD - л...
открытый и закрыты...
ей право сбрасыват...
Мы часто встречаем...
Создание простого ...
Пример пула как ст...
Таймер - компонент...
9. На все участвую...
Технологии построе...
Где мы находимся?
Статистика



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


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