d9e5a92d

Упражнения



Упражнения


1. Выразите с помощью логики предикатов следующие утверждения.

I) Каждый студент использует какой-нибудь компьютер, и по крайней мере один компьютер используется каждым студентом. (Используйте только предикаты СТУДЕНТ, КОМПЬЮТЕР и ИСПОЛЬЗУЕТ.)

II) Каждый год некоторые студенты-мужчины проваливают каждый экзамен, но каждый студент-женщина сдает какой-нибудь экзамен. (Используйте только предикаты СТУДЕНТ, МУЖЧИНА, ЖЕНЩИНА, СДАЕТ, ЭКЗАМЕН, ГОД.)

Ill) Каждый мужчина любит какую-нибудь женщину, которая любит другого мужчину. (Используйте только предикаты МУЖЧИНА, ЖЕНЩИНА, ЛЮБИТ и = .)

IV) Не существует двух философов, которые любили бы одну и ту же книгу. (Используйте только предикаты ФИЛОСОФ, КНИГА, ЛЮБИТ и = .)

2. Выразите предложения упр. 1 в форме фразы.

3. Имеет ли смысл выразить следующие цитаты с помощью логики предикатов? Покажите, в чем состоит сложность такого преобразования в каждом конкретном случае.


I) Ни один человек не является островом. (Джон Донн (John Donne))

II) Человек, который живет где-нибудь, живет везде. (Тацит)

III) Прошлое — это иная страна. В нем все происходит по-другому. (Л. П. Хартли (L. P. Hartley))

4. Следующая формула утверждает, что кто-то бреет себя сам или парикмахер бреет кого-то:

бреет) X, X), бреет (парикмахер, X) <—

I) Используя обратную стратегию, покажите, что из этой формулы следует

бреет (парикмахер, парикмахер) <-

II) То же самое покажите с помощью прямой стратегии.

III) Как вы понимаете в том же контексте следующую фразу:

<- бреет(У, Y), бреет (парикмахер, У)

IV) Покажите, что следующие фразы противоречивы. Для этого достаточно показать, что из них следует пустая фраза:

бреет(Х, X), бреет (парикмахер, X)

<-<- бреет(У, Y), бреет (парикмахер, Y)

5. Ниже представлены правило поиска неисправности и описание конкретной ситуации.

Если компьютер не включается и напряжение в сети питания в норме, то оборван шнур питания или неисправен блок питания. Мой компьютер не включается. Напряжение в сети питания в норме. Шнур питания не оборван.

I) Выразите эти предложения в форме логики предикатов.

II) Постройте конъюнктивную нормальную форму.

III) Используя прямую стратегию доказательства, покажите, что утверждение "Неисправен блок питания" логически вытекает из приведенного набора фактов. То же самое покажите с использованием обратной стратегии доказательства.

6. Предположим, что в синтаксисе языка PROLOG цель сформулирована следующим образом :- bachelor (f red).

I) К какому заключению придет приведенная ниже PROLOG-программа относительно семейного положения человека по имени Fred?

man(fred).

man(george).

wife(george, georgina).

bachelor(X) :- not(wife(X, Y)).

not(P) :- call(P), !, fail.

not(P).

II) К какому заключению придет приведенная ниже PROLOG-программа?

man(fred).

man(george).

wife(george, georgina).

bachelor(X) :- not(wife(X, Y)).

(wife(X, Y) :- !, fail.

(wifeffred, freda).

7. Предположим, что в синтаксисе языка PROLOG цель сформулирована следующим образом :- enemy(fred).

I) К какому заключению придет приведенная ниже MBASE-программа относительно человека по имени Fred?

DBC(friend (george)).

republican(fred).

enemy(X) :- not(DBC(friend(X))).

friend(X)) :- republican(X).

not(P) :- call(P), !, fail.

not(P).

II) К какому заключению придет приведенная ниже MBASE-программа?

DBC(friend (george)).

enemy(X) :- not(DBC(friend(X))). friend(X))

:- not(communist(X)). not(P)

:- call(P), !, fail. not(P).

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

Затем попробуйте добавить в программу новое правило, касающееся еще одной категории служащих.

Деревенские констебли, назначенные с условием, что это не противоречит законам штата.

Данные для тестирования этого правила включены в раздел фактов программы.

/ Правила для сотрудников службы общественного порядка /

/ Шериф и заместитель шерифа округа Нью-Йорк /

/ The sheriff and deputy sheriff of NYC /

po(X) :-

(sheriff(X) ; deputy(X)), jurisdiction(X, nyc).

/ Сотрудники службы охраны порядка

округа Уэстчестер, принятые на

работу после 1982 года, которые

выполняют функции, ранее возлагавшиеся

на шерифа округа Уэстчестер /

/ Officers of Westchester country

public safety services appointed

after 1982 who perform functions

previously performed by a Westchester

country sheriff on or prior to such date /

po(X) :-

safetyOfficer(X), jurisdiction(X, Westchester),

appointed(X, Date), Date > 1982.

/ ФАКТЫ /

/ Wayne, Doug, Ken и Pete - некоторые лица. /.

sheriff(wayne).

jurisdiction(wayne, nyc).

deputy(doug), jurisdictionfdoug, nyc).

constable(ken), jurisdiction(ken, naples).

village(naples). RuledOut(constable, naples).

safetyOfficer(pete) jurisdiction(pete, Westchester).

appointed(pete, 1990).

9. Запишите программу из упр. 8 на языке CLIPS. Сравните оба варианта программы.



Содержание раздела