Содержание

Задание 2

Тема 1: Логические основы системы Пролог-Д. 3

Логические основы работы 3

1.1.2. Описать на языке логики первого порядка свойства отношения равенство 3

Тема 2: Построение базы знаний 4

Факты и правила 4

2.1.2. Опишите на языке Пролог-Д состав своей семьи. 4

Арифметика и другие второстепенные предикаты в Прологе-Д 9

2.2.2. Опишите на языке Пролог-Д вычисление площадей геометрических фигур: трапеции, треугольника, параллелограмма. 9

2.2.3. Опишите вычисление пощади круга и длины окружности. Какова точность вычисления этих величин? Можно ли вычислить радиус круга по длине окружности? 10

Рекурсия 13

2.3.2.Написать на языке Пролог-Д базу знаний, описывающую вычисление сумы чисел натурального ряда. 13

2.3.4. Описать вычисление наименьшего общего кратного. 14

Графические возможности системы Пролог-Д 16

2.4.2. Используя рекурсивное определение, напишите базу знаний, описывающую многоэтажный дом. 16

Обработка списков 20

2.5.2. Напишите базу знаний, описывающую обращение списка (первый элемент становиться последним). 20

Заключение 22

Список литературы 22


Задание

Тема 1: Логические основы системы Пролог-Д.

1. Логические основы работы.

1.1.2. Опишите на языке логики первого порядка свойство отношения равенства

Тема 2: Построение базы знаний

1. Факты и правила

2.1.2. Опишите на языке Пролог-Д состав своей семьи.

2. Арифметика и другие второстепенные предикаты в Прологе-Д

2.2.2. Опишите на языке Пролог-Д вычисление площадей геометрических фигур: трапеции, треугольника, параллелограмма.

2.2.3. Опишите вычисление пощади круга и длины окружности. Какова точность вычисления этих величин? Можно ли вычислить радиус круга по длине окружности?

3. Рекурсия

2.3.2.Написать на языке Пролог-Д базу знаний, описывающую вычисление сумы чисел натурального ряда.

2.3.4. Описать вычисление наименьшего общего кратного.

4. Графические возможности системы Пролог-Д

2.4.2. Используя рекурсивное определение, напишите базу знаний, описывающую многоэтажный дом.

5. Обработка списков

2.5.2. Напишите базу знаний, описывающую обращение списка (первый элемент становиться последним).

Тема 1: Логические основы системы Пролог-Д.

Логические основы работы

1.1.2. Описать на языке логики первого порядка свойства отношения равенство


С помощью языка логики первого порядка можно описать практически все задачи, решаемые на ЭВМ. В основе системы Пролог-Д лежит этот язык.

Отношение равенство запишем как РАВНО(X,Y). Это отношение принимает значение ИСТИНА, если X и Y равны между собой, и значение ЛОЖЬ если X и Y не равны между собой. Отношение равенство обладает тремя свойствами: рефлексивностью, симметричностью, транзитивностью:

§ переменная равна сама себе (рефлексивность);

§ если X=Y, то Y=X (симметричность);

§ если X=Z и Z=Y, то X=Z (транзитивность).

На языке логики первого порядка эти свойства можно записать в следующем виде:

РАВНО (X,X)

РАВНО(X,Y)<-РАВНО(Y,X)

РАВНО(X,Y)<-РАВНО(X,Z)& РАВНО(Z,Y)


Тема 2: Построение базы знаний

Факты и правила

2.1.2. Опишите на языке Пролог-Д состав своей семьи.

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


Рис. 1

Факты в программе были записаны с помощью следующих фактов: мама (X, Y), папа (X, Y), мужчина(X), женщина(X). Факт, записанный с помощью предиката мама (X,Y), имеет место в программе, если X приходиться матерью Y. Факт, записанный с помощью предиката папа (X,Y), имеет место в программе, если X является отцом Y. Факты мужчина (X) и женщина (X) имеют место, когда X является мужчиной или женщиной соответственно.

Для построения правил в программе использовались следующие утверждения:

§ X является родителем Y, если X – является матерью или отцом Y;

§ X является сыном Y, если X – мужчина, и Y – является родителем X;

§ X является дочерью Y, если X – женщина, и Y – является родителем X;

§ X является бабушкой Y, если X – мама родителя Y;

§ X является дедушкой Y, если X – папа родителя Y;

§ X является сестрой Y, если X – женщина, X и Y имеют одного отца и не являются одним и тем же лицом;

X является братом Y, если X – мужчина, X и Y имеют одного отца и