Головна Головна -> Інше українською -> Інформатика, комп'ютери, програмування -> Основні поняття мови Пролог

Основні поняття мови Пролог

Назва:
Основні поняття мови Пролог
Тип:
Інше
Мова:
Українська
Розмiр:
3,58 KB
Завантажень:
226
Оцінка:
 
поточна оцінка 5.0


Скачати цю роботу безкоштовно
Пролистати роботу: 1  2  3 
Лабораторна робота
Тема: Основні поняття мови Пролог.
Пролог - це мова програмування, що використовується для вирішення задач, в яких діють об'єкти і відносини між цими об'єктами. Програма на пролозі складається з речень, які можуть бути фактами, правилами або питаннями.
Можна виділити два рівня характеристики прологівської програми: декларативний і процедурний. Перший з них визначає за допомогою відношень, яким повинен бути результат роботи програми. Другий - як цей результат був отриманий і які з відношень реально оброблялись.
В основі Прологу лежить поняття відношення, яке взяте з предикатних логік. Слово “предикат” відноситься до розділу математичної логіки, в якому досліджуються операції над логічними висловленнями. В логіці предикатів під предикатом розуміється деяка властивість, логічна функція від довільного числа аргументів, яка приймає тільки два значення - “істина” або ж “хибність”.
Програма на Пролозі будується із двох типів фраз (речень): фактів і правил.
Факти - це відношення, або ж властивості, про які ви, програміст, знаєте, що вони істинні.
Правила - це залежні відношення; вони дозволяють Прологу робити виведення, порівнюючи одну частину інформації з іншою. Правила Прологу складаються з трьох частин: голови, символу, тіла. Голова - це факт, який буде вірним, якщо деяка кількість умов виконається. Голову ще іноді називають заключенням, або ж відношенням залежності. Символ - відділяє голову правила від тіла; може бути текстовим типу or або ж if. Тіло - це множина умов (або список файлів), котрі повинні бути істинними, для того щоб Пролог міг довести, що голова правила вірна.
1.1 Приклад програми: родинні відносини.
Розглянемо дерево родинних відносин:
1.2 Факти.
Введемо відношення – батьки - (parent) між об'єктами.
parent (tom, bob).
Це факт, що визначає, що Том є батьком Боба.
parent - ім'я відношення, tom, bob - його аргументи. Тепер можна записати програму, що описує все дерево родинних відносин.
parent (pam, bob).
parent (tom, bob).
parent (tom, liz).
parent (bob, ann).
parent (bob, pat).
parent (mary, ann).
parent (pat, juli).
Ця програма складається з семи речень (тверджень). Кожне твердження записане фактом у вигляді відношення parent. При записі фактів треба дотримуватись наступних правил:
Імена всіх відносин і об'єктів з маленької букви.
Спочатку записується ім'я відношення, потім в круглих дужках через кому об'єкти.
У кінці ставиться крапка.
Ще приклад факту: like (bob, pam).
Сукупність фактів в пролозі називають базою даних. До складеної бази даних можна поставити питання. Питання в пролозі починається з ?- Питання записується також, як і факт.
Наприклад:
? - parent (bob, pat).
Коли пролог одержує питання, він намагається зіставити його з базою даних. Такий факт знаходить відповідь: так (yes).
1.4 Змінні.
Можна поставити питання і дізнатися хто батько liz:
?-parent (X, liz).
X= tom
Тут X - змінна. Її величина невідома і вона може приймати значення. В даному випадку її значенням буде об'єкт, для якого це твердження істинне.
1.5 Кон'юнкція цілей.
Можна поставити більш загальне питання: Хто є батьком батька juli. Оскільки немає відношення grandparent, то можна розбити на два питання:
1. хто батьки juli. Припустимо - Y.
2. хто батьки Y. Припустимо - X.
Тоді складове питання:
?-parent (Y, juli), parent (X, Y).
X=bob
Y=pat
При пошуку рішення спочатку знаходиться Y, а потім за другою умовою Х.
1.6 Правила.
Введемо відношення дитина child, зворотне до parent "батьки".
Можна б було визначити аналогічно:
child (liz, tom).
Але можна використовувати, що відношення child обернене до parent і записати у вигляді твердження - правила:
child(Y, X):-parent (X, Y).
Правило читається так:
Для всіх X і Y Y - child X, якщо X -parent Y.
Правило відрізняється від факту тим, що факт завжди істина, а правило описує твердження, яке буде істинною, якщо виконана деяка умова. Тому в правилі виділяють: слідство - умова
child(Y, X):- parent (X, Y).
Якщо умова parent (X, Y).

Завантажити цю роботу безкоштовно
Пролистати роботу: 1  2  3 



Інше на тему: Основні поняття мови Пролог

BR.com.ua © 1999-2017 | Реклама на сайті | Умови використання | Зворотній зв'язок