Читаем Prolog полностью

Само название Пролог есть сокращение, означающее программирование в терминах логики. Идея использовать логику в качестве языка программирования возникла впервые в начале 70-х годов. Первыми исследователями, разрабатывавшими эту идею, были Роберт Ковальский из Эдинбурга (теоретические аспекты), Маартен ван Эмден из Эдинбурга (экспериментальная демонстрационная система) и Ален Колмероэ из Марселя (реализация). Сегодняшней своей популярности Пролог во многом обязан эффективной реализации этого языка, полученной в Эдинбурге Дэвидом Уорреном в середине 70-х годов.

Поскольку Пролог уходит своими корнями в математическую логику, его преподавание часто начинают с изложения логики. Однако такое введение в Пролог, насыщенное математическими понятиями, приносит мало пользы в том случае, когда Пролог изучается в качестве практического инструмента программирования. Поэтому в данной книге мы не будем заниматься математическими аспектами этого языка, вместо этого мы сосредоточим свое внимание на навыках использования базовых механизмов Пролога, для решения целого ряда содержательных задач. В то время, как традиционные языки программирования являются процедурно-ориентированными, Пролог основан на описательной или декларативной точке зрения на программирование. Это свойство Пролога коренным образом меняет программистское мышление и делает обучение программированию на Прологе увлекательным занятием, требующим определенных интеллектуальных усилий.

В первой части книги содержится введение в Пролог, в ней показано, как составлять программы на Прологе. Во второй части демонстрируется, как мощные средства языка применяются в некоторых областях искусственного интеллекта, таких как, например, решение задач, эвристический поиск, экспертные системы, машинные игры и системы, управляемые образцами. В этой части излагаются фундаментальные методы в области искусственного интеллекта. Далее они прорабатываются достаточно глубоко для того, чтобы реализовать их на Прологе и получить готовые программы. Эти программы можно использовать в качестве "кирпичиков" для построения сложных прикладных систем. В книге рассматриваются также вопросы обработки таких сложных структур данных, как графы и деревья, хотя эти вопросы, строго говоря, и не имеют прямого отношения к искусственному интеллекту. В программах искусственного интеллекта методы обработки структур применяются довольно часто, и, реализуя их, читатель приобретет самые общие навыки программирования на Прологе. В книге особое внимание уделяется простоте и ясности составляемых программ. Повсеместно мы стремились избегать программистских "хитростей", повышающих эффективность за счет учета особенностей конкретной реализации Пролога.

Эта книга предназначена для тех, кто изучает Пролог и искусственный интеллект. Материал книги можно использовать в курсе лекций по искусственному интеллекту, ориентированном на прологовскую реализацию. Предполагается, что читатель имеет общее представление о вычислительных машинах, но предварительные знания в области искусственного интеллекта необязательны. От читателя не требуется также какого-либо программистского опыта. Дело в том, что богатый программистский опыт вместе с приверженностью к традиционному процедурному программированию (например, на Паскале) может стать помехой при изучении Пролога, требующего свежего программистского мышления.

Среди различных диалектов Пролога наиболее широко распространен так называемый эдинбургский синтаксис (или синтаксис DEC-10), который мы я принимаем в данной книге. Для того, чтобы обеспечить совместимость с различными реализациями Пролога, мы используем в книге сравнительно небольшое подмножество встроенных средств, имеющихся во многих вариантах Пролога.

Как читать эту книгу? В первой части порядок чтения естественным образом совпадает с порядком изложения, принятым в книге. Впрочем, часть разд. 2.4, в которой дается более формальное описание процедурной семантики Пролога, можно опустить. В главе 4 приводятся примеры программ, которые можно читать только выборочно. Вторая часть книги допускает более гибкий порядок чтения, поскольку различные главы этой части предполагаются взаимно независимыми. Однако некоторые из тем было бы естественным прочесть раньше других - это относится к основным понятиям, связанным со структурами данных (гл. 9), и к базовым стратегиям поиска (гл. 11 и 13). В приведенной ниже диаграмме показана наиболее естественная последовательность чтения глав.

Перейти на страницу:

Похожие книги

12 великих трагедий
12 великих трагедий

Книга «12 великих трагедий» – уникальное издание, позволяющее ознакомиться с самыми знаковыми произведениями в истории мировой драматургии, вышедшими из-под пера выдающихся мастеров жанра.Многие пьесы, включенные в книгу, посвящены реальным историческим персонажам и событиям, однако они творчески переосмыслены и обогащены благодаря оригинальным авторским интерпретациям.Книга включает произведения, созданные со времен греческой античности до начала прошлого века, поэтому внимательные читатели не только насладятся сюжетом пьес, но и увидят основные этапы эволюции драматического и сценаристского искусства.

Александр Николаевич Островский , Иоганн Вольфганг фон Гёте , Оскар Уайльд , Педро Кальдерон , Фридрих Иоганн Кристоф Шиллер

Драматургия / Проза / Зарубежная классическая проза / Европейская старинная литература / Прочая старинная литература / Древние книги
Волчья тропа
Волчья тропа

Мир после ядерной катастрофы. Человечество выжило, но высокие технологии остались в прошлом – цивилизация откатилась назад, во времена Дикого Запада.Своенравная, строптивая Элка была совсем маленькой, когда страшная буря унесла ее в лес. Суровый охотник, приютивший у себя девочку, научил ее всему, что умел сам, – ставить капканы, мастерить ловушки для белок, стрелять из ружья и разделывать дичь.А потом она выросла и узнала страшную тайну, разбившую вдребезги привычную жизнь. И теперь ей остается только одно – бежать далеко на север, на золотые прииски, куда когда-то в поисках счастья ушли ее родители.Это будет долгий, смертельно опасный и трудный путь. Путь во мраке. Путь по Волчьей тропе… Путь, где единственным защитником и другом будет таинственный волк с черной отметиной…

Алексей Семенов , Бет Льюис , Даха Тараторина , Евгения Ляшко , Сергей Васильевич Самаров

Фантастика / Приключения / Боевик / Славянское фэнтези / Прочая старинная литература