Науки Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования




НазваниеНауки Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования
Дата публикации17.10.2016
Размер9,76 Kb.
ТипЛабораторная работа
Министерство Образования и Науки Российской Федерации

Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования

Московский авиационный институт
(национальный исследовательский университет)


Кафедра 304

Отчёт по лабораторным работам по курсу

«Логическое программирование»
Лабораторная работа №1


Выполнил студент гр.13-401

Волосюк К.Г.

Принял доцент кафедры 304

КТН, Новиков П.В.

Москва 2013

Лабораторная работа №1. Факты и правила – основные конструкции языка ПРОЛОГ

^ Цель работы – ознакомление с основными понятиями языка логического программирования ПРОЛОГ; изучение главных атрибутов программ на языках Турбо-ПРОЛОГ и Visual PROLOG.

Задание: описав предикаты «мать» и «отец», а также «мужской_пол» и «женский_пол» (mother (…), father(…), male(…), female(…)), создать с помощью этих предикатов базу знаний, изобразив её семантическую сеть. К созданной базе знаний составить следующие запросы:

  1. Ребёнок (child);

  2. Сын (son);

  3. Дочь (douther);

  4. Родитель (parent);

  5. Мужчина (man);

  6. Женщина (woman);

  7. Дедушка (grandfather);

  8. Бабушка (grandmother);

  9. Брат (brother);

  10. Сестра (sister);

  11. Племянница (niece);

  12. Племянник (nephew);

  13. Тётя (aunt);

  14. Дядя (uncle);

  15. Внук (grandson);

  16. Кузина (cousina);

  17. Кузен (cousin).


Семантическая сеть базы знаний:

c:\users\kvolosyuk\desktop\img115.jpg

Предикаты – логическая функция, принимающая значение «истина» или «ложь» в зависимости от значения её аргументов. В задании аргументы являются типом «string» - произвольной строкой символов, заключённой в кавычки.

mother(string, string) – предикат «мать»

father(string, string) – предикат «отец»

man(string) – предикат «мужчина»

woman(string) – предикат «женщина»

male(string) – предикат «мужчина, не имеющий детей»

female(string) – предикат «женщина, не имеющая детей»

son(string, string) – предикат «сын»

sister(string, string) – предикат «сестра»

parent(string, string) – предикат «родитель»

child(string, string) – предикат «ребёнок»

husmentwife(string, string) – предикат «муж/жена»

douther(string, string) – предикат «дочь»

brother(string, string) – предикат «брат»

niece(string, string) – предикат «племянница»

nephew(string, string) – предикат «племянник»

aunt(string, string) – предикат «тётя»

uncle(string, string) – предикат «дядя»

grandmother(string, string) – предикат «бабушка»

grandfather(string, string) – предикат «дедушка»

granddaughter(string, string) – предикат «внучка»

grandson(string, string) – предикат «внук»

cousina(string, string) – предикат «кузина»

cousin(string, string) – предикат «мать»

^ Текст программы:

database

d(string,string)
predicates

mother(string, string)

father(string, string)

man(string)

woman(string)

male(string)

female(string)

son(string, string)

sister(string, string)

parent(string, string)

child(string, string)

husbandwife(string, string)

douther(string, string)

brother(string, string)

niece(string, string)

nephew(string, string)

aunt(string, string)

uncle(string, string)

grandmother(string, string)

grandfather(string, string)

granddaughter(string, string)

grandson(string, string)

cousina(string, string)

cousin(string, string)
clauses

mother("Rogneda", "Yaroslav_M").

mother("Irina", "Ilya").

mother("Irina", "Vladimir").

mother("Irina", "Anna_O").

mother("Anna_Ya", "Filipp_I").

mother("Irina", "Izyaslav").

mother("Irina", "Svyatoslav").

mother("Irina", "Vsevolod").

mother("Irina", "Igor").

mother("Irina", "Vyacheslav").

mother("Irina", "Elizaveta").

mother("Irina", "Anastasiya").

mother("Anna_K", "Vladimir_Mon").

father("Vladimir_S", "Yaroslav_M").

father("Yaroslav_M", "Ilya").

father("Yaroslav_M", "Vladimir").

father("Vladimir", "Rostislav").

father("Rostislav", "Vasiliy").

father("Yaroslav_M", "Anna").

father("Yaroslav_M", "Izyaslav").

father("Izyaslav", "Evpraksiya").

father("Izyaslav", "Svyatopolk").

father("Izyaslav", "Mstislav").

father("Izyaslav", "Yaropolk").

father("Yaroslav_M", "Svyatoslav").

father("Svyatoslav", "Gleb").

father("Svyatoslav", "Roman").

father("Svyatoslav", "Oleg").

father("Oleg", "Svyatoslav_O").

father("Svyatoslav_O", "Oleg_S").

father("Svyatoslav_O", "Vsevolod_S").

father("Svyatoslav_O", "Igor_S").

father("Yaroslav_M", "Vsevolod").

father("Vsevolod", "Vladimir_Mon").

father("Yaroslav_M", "Igor").

father("Igor", "Davyd").

father("Yaroslav_M", "Vyacheslav").

father("Vyacheslav", "Boris").

father("Yaroslav_M", "Eliaveta").

father("Yaroslav_M", "Anastasiya").

father("Olaf", "Irina").

father("Konstantin_IX", "Anna_K").

father("Genrih_I", "Filipp_I").

male("Boris").

male("Davyd").

male("Vladimir_Mon").

male("Igor_S").

male("Vsevolod_S").

male("Oleg_S").

male("Roman").

male("Gleb").

male("Yaropolk").

male("Mstislav").

male("Svyatopolk").

male("Filipp_I").

male("Vasiliy").

male("Ilya").

female("Anastasiya").

female("Elizaveta").

female("Evpraksiya").

parent(X,Y) if mother (X,Y)

or father(X,Y).

child (X,Y):-parent(Y,X).

husbandwife(H,W):- father (H,X) and mother(W,X).

man(X) if father(X,_)

or male(X).

woman(X) if mother(X,_)

or female(X).

son(S,P):-man(S), child(S,P).

douther(D,P):-woman(D), child(D,P).

brother(B,X):-parent(P,B), parent(P,X), B<>X, man(B).

sister(S,X):-parent(P,S), parent(P,X), S<>X, woman(S).

niece(N,X):-parent(P,N), sister(P,X), woman(N).

niece(N,X):-parent(P,N), brother(P,X), woman(N).

nephew(N,X):-parent(P,N), sister(P,X), man(N).

nephew(N,X):-parent(P,N), brother(P,X), man(N).

aunt(A,X):-niece(X,A), woman(A).

aunt(A,X):-nephew(X,A), woman(A).

uncle(U,X):-niece(X,U), man(U).

uncle(U,X):-nephew(X,U), man(U).

grandmother(G,X):-woman(G), parent(P,X), parent(G,P).

grandfather(G,X):-man(G), parent(P,X), parent(G,P).

granddaughter(G,X):-woman(G), parent(P,G), parent(X,P).

grandson(G,X):-man(G), parent(P,G), parent(X,P).

cousina(C,X):-woman(C), aunt(A,X), mother(A,C).

cousina(C,X):-woman(C), uncle(U,X), father(U,C).

cousin(C,X):-man(C), aunt(A,X), mother(A,C).

cousin(C,X):-man(C), uncle(U,X), father(U,C).

^ Результат выполнения программы:


Вывод:

В данной лабораторной работе было знакомство с основными конструктивными элементами программы, одним из которых является клауза (clauses) - утверждение. Каждое утверждение состоит из посылки и заключения, связанных импликативной связью.

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

Каждое элементарное суждение состоит из субъекта (предмет суждения) и предиката (свойство суждения).

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

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

1. Ин Ц., Соломон Д. Использование Турбо-Пролога. – М.: Мир, 1993. – 428 с.

2. Учебное пособие /В. Г. Николаев, О. Н. Евсеева, Н. Г. Ярушкина; Под ред. О. Н.

Евсеевой. - Ульяновск: УлГТУ, 1995. - 64 с.

Похожие:

Науки Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования iconНауки Российской Федерации Федеральное государственное бюджетное...
Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования
Науки Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования iconРоссийской Федерации Федеральное государственное бюджетное образовательное...
Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования
Науки Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования iconРоссийской Федерации Федеральное государственное бюджетное образовательное...
Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования
Науки Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования iconРоссийской Федерации Федеральное государственное бюджетное образовательное...
Филиала федерального государственного образовательного учреждения высшего профессионального образования
Науки Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования iconРоссийской Федерации Федеральное государственное бюджетное образовательное...
Цели и задачи дисциплины «исследование социально-экономических и политических процессов»
Науки Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования iconУчебно-методический комплекс учебная дисциплина «Теория государства и права»
Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «Российская академия народного...
Науки Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования iconРабочая программа дисциплины «культурология»
Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования
Науки Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования iconИркутский государственный университет физический факультет
Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования
Науки Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования iconОтчет о самообследовании Федеральное государственное образовательное учреждение
Федерального агентства лесного хозяйства (Рослесхоза) Министерства природных ресурсов Российской Федерации №189 от 17. 04. 2007 года...
Науки Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования iconМетодические рекомендации по выполнению контрольных работ Оренбург
Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования
Вы можете разместить ссылку на наш сайт:
Школьные материалы


При копировании материала укажите ссылку © 2013
контакты
dopoln.ru
Главная страница