Навигация
Главная
Поиск
Форум
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
Invision Power ... 65535
Содержание сайт... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Создание отчето... 65062
Модуль Forms 64841
Пример работы с... 63251
ТЕХНОЛОГИИ ДОСТ... 61553
Имитационное мо... 57400
Реклама
Сейчас на сайте
Гостей: 7
На сайте нет зарегистрированных пользователей

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

Метод половинного деления для нахождения корня уровнения на Turbo Pascal...
Расчет обратной матрицы на Delphi + Пояснительная записка
Игра Sokoban на Delphi + Блок схемы

Реклама



Подписывайся на 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 22:34:48 · 0 Комментариев · 13474 Прочтений · Для печати

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


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



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

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

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

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

Пароль



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

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

Случайные загрузки
DiskInfo
Самоучитель C++
Усложнённый кальк...
Советы от Даниилы...
CS:Source - монит...
DemoEdit [Исходни...
Шейдеры в Delphi
PDJ_Anima
Защита от спама ...
Win-Prolog 3.618
около 291 статьи ...
Язык программиров...
Visual Basic Script
Encrypt Decrypt
Размещение элемен...
Averaging [Исходн...
Delphi 7: Для про...
IpEditAdress
Разработка интерн...
MpegPlay

Топ загрузок
Приложение Клие... 100466
Delphi 7 Enterp... 86628
Converter AMR<-... 20077
GPSS World Stud... 12647
Borland C++Buil... 11758
Borland Delphi ... 8556
Turbo Pascal fo... 7037
Visual Studio 2... 4998
Калькулятор [Ис... 4760
FreeSMS v1.3.1 3541
Случайные статьи
RADIUS-сервер позв...
Синтаксис - Микро ...
Уникальное казино ...
Подводные камни вн...
Унифицированный вх...
Сопротивление = На...
Сценарий не опреде...
IDL
Вкладка Configure ...
Казино
11.1. Сортировка в...
Работаем с FTP на ...
Application СотраН...
Табл. 13-14.
10 способов взлома...
Использование DTD-...
Директивы компилят...
Игры. Интернет-пон...
Invalid symbol ref...
машина Поста на C#...
Панель управления ...
Класс GestureDetec...
Я хочу, чтобы окно...
Определение решения1
Общность предмета...
Статистика



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


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