Иван Братко - Программирование на языке Пролог для искусственного интеллекта

Здесь есть возможность читать онлайн «Иван Братко - Программирование на языке Пролог для искусственного интеллекта» весь текст электронной книги совершенно бесплатно (целиком полную версию без сокращений). В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Город: Москва, Год выпуска: 1990, ISBN: 1990, Издательство: Мир, Жанр: Программирование, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Программирование на языке Пролог для искусственного интеллекта: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Программирование на языке Пролог для искусственного интеллекта»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

Книга известного специалиста по программированию (Югославия), содержащая основы языка Пролог и его приложения для решения задач искусственного интеллекта. Изложение отличается методическими достоинствами — книга написана в хорошем стиле, живым языком. Книга дополняет имеющуюся на русском языке литературу по языку Пролог.
Для программистов разной квалификации, специалистов по искусственному интеллекту, для всех изучающих программирование.

Программирование на языке Пролог для искусственного интеллекта — читать онлайн бесплатно полную книгу (весь текст) целиком

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Программирование на языке Пролог для искусственного интеллекта», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

2.4

отр( точка( 5, Y1), точка( 5, Y2) )

2.5

регулярный( прямоугольник( точка( X1, Y1),

точка( Х2, Y1), точкa( X2, Y3),

точка( X1, Y3) ) ).

Здесь предполагается, что первая точка соответствует нижней левой вершине прямоугольника.

2.6

(a) А = два

(b) no

(c) С = один

(d) D = s(s(1));

D = s(s(s(s(s(1)))))

2.7

родственники( X, Y) :-

предок( X, Y);

предок( Y, X);

предок( Z, X),

предок( Z, Y);

предок( X, Z),

предок( Y, Z).

2.8

преобразовать( 1, один).

преобразовать( 2, два).

преобразовать( 3, три).

2.9

В случае, изображенном на рис. 2.10, пролог-система выполняет несколько больший объем работы.

2.10

В соответствии с определением сопоставления, приведенном в разд. 2.2, данное сопоставление будет успешным. X приобретает вид циклической структуры, в которой сам X присутствует в качестве одного из аргументов.

Глава 3

3.1

(a) конк( L1, [ _, _, _ ], L)

(b) конк( [ _, _, _ ], L1, L),

% Удалить 3 первые элемента L

конк( L2, [ _, _, _ ], L1)

% Удалить 3 последние элемента L1

Вот более короткий вариант, предложенный I. Tvrdy:

конк( [ _, _, _ | L2], [ _, _, _ ], L)

3.2

(а) последний( Элемент, Список) :-

конк( _, [Элемент], Список).

(b) последний( Элемент, [Элемент]).

последний( Элемент, [Первый | Остальные]):-

последний( Элемент, Остальные).

3.3

четнаядлина( [] ).

четнаядлина( [Первый | Остальные] ) :-

нечетнаядлина( Остальные).

нечетнаядлина( [ _ ] ).

нечетнаядлина( [Первый | Остальные] ) :-

четнаядлина( Остальные).

3.4

обращение( [], []).

обращение( [Первый | Остальные], ОбращСпис): -

обращение( Остальные, ОбращСписОстальных),

конк( О6ращСписОстальных, [Первый], ОбращСпис).

3.5

% Такой предикат легко определить при помощи отношения обратить

палиндром( Список) :-

обратить( Список, Список).

% Вот другое решение, не использующее обратить

палиндром1( [] ).

палиндром1( [ _ ] ).

палиндром1 [Первый | Остальные] ) :-

конк( Середина, [Первый], Остальные),

палиндром1( Середина).

3.6

сдвиг( [Первый | Остальные], Сдвинут) :-

конк( Остальные, [Первый], Сдвинут).

3.7

перевод( [], []).

перевод( [Голова | Хвост], [Голова1 | Хвост1]) :-

означает( Голова, Голова1),

перевод( Хвост, Хвост1).

3.8

подмножество( [], [] ).

подмножество( [Первый | Остальные], [Первый | Подмн]):-

% Оставить первый элемент в подмножестве

подмножество( Остальные, Подмн).

подмножество( [Первый | Остальные], Подмн) :-

% Убрать первый элемент из подмножества

подмножество( Остальные, Подмн).

3.9

разбиениесписка( [], [], []). % Разбивать нечего

разбиениесписка( [X], [X], []).

% Разбиение одноэлементного списка

разбиениесписка( [X, Y | Список], [X | Список1],

[Y | Список2]) :-

разбиениесписка( Список, Список1, Список2).

3.10

можетзавладеть( состояние( _, _, _, имеет), [] ).

% Ничего не надо делать

можетзавладеть( Состояние, [Действие | Действия]):-

ход( Состояние, Действие, НовоеСостояние),

% Первое действие

можетзавладеть( НовоеСостояние, Действия).

% Оставшиеся действия

3.11

линеаризация( [Голова | Хвост], ЛинейныйСписок ) :-

% Линеаризация непустого списка

линеаризация( Голова, ЛинейнаяГолова ),

линеаризация( Хвост, ЛинейныйХвост ),

конк( ЛинейнаяГолова, ЛинейныйХвост,

ЛинейныйСписок ).

линеаризация( [], [] ). % Линеаризация пустого списка

линеаризация( X, [X] ).

% Линеаризация объекта, не являющегося списком

% Замечание: при попытке получить от этой программы более

% одного варианта решения выдается бессмыслица

3.12

Терм1 = играет_в( джимми, и( футбол, сквош) )

Терм2 = играет_в( сьюзан, и( теннис,

и( баскетбол, волейбол) ) )

3.13

:- op( 300, xfx, работает)

:- op( 200, xfx, в)

:- op( 100, xfx, нашем)

3.14

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Программирование на языке Пролог для искусственного интеллекта»

Представляем Вашему вниманию похожие книги на «Программирование на языке Пролог для искусственного интеллекта» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «Программирование на языке Пролог для искусственного интеллекта»

Обсуждение, отзывы о книге «Программирование на языке Пролог для искусственного интеллекта» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x