Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Основні розділи програм




Пролог завжди шукає відповідь на запит, починаючи з першого факту, і перебирає всі факти, поки вони не закінчаться.

 

 

Програма на Vіsual Prolog складається з наступних основних розділів:

директиви компілятора;

CONSTANTS - опис констант;

DOMAІNS - опис доменів;

FACTS - опис предикатів внутрішньої бази даних;

PREDІCATES - опис предикатів;

CLAUSES - опис тверджень;

GOAL - опис внутрішньої мети.

У програмі не обов'язково повинні бути всі ці розділи, однак вона містить, щонайменше, розділи PREDІCATES й CLAUSES. У програмі може бути кілька розділів DOMAІNS, PREDІCATES, FACTS й CLAUSES. Однак розділів GOAL не може бути в програмі більше одного.

Порядок розділів може бути довільним, але при цьому константи, домени й предикати повинні бути визначені до їхнього використання. Однак у розділі DOMAІNS можна посилатись на домени, які будуть оголошені пізніше.

Розділ clauses - це серце Vіsual Prolog-програми; саме в цей розділ записуються факти й правила, якими буде оперувати система, намагаючись вивести мету програми.

Відразу ж дамо формальне визначення фрагмента синтаксису Прологу, користуючись РБНФ.

 

база_знань = факт {факт |правило}.

факт = предикат ".".

питання = предикат {"," предикат |";" предикат} ".".

правило = голова_правила ":-" тело_правила ".".

голова_правила = предикат.

тело_правила = предикат {"," предикат |";" предикат }.

предикат = ім'я | ім'я "(" аргумент {"," аргумент} ")".

аргумент = терм.

терм = число | змінна | атом | структура.

структура = атом "(" терм {"," терм } ")".

 

Дане визначення синтаксису не включає операторну, спискову й рядкову форми запису. Однак, будь-яка програма Прологу може бути написана згідно цього синтаксису. Спеціальні форми тільки спрощують розуміння програми. Як бачимо, синтаксис Прологу не вимагає великого пояснення. Але для написання гарних програм необхідно глибоке розуміння мови.

 

 

Розділ predіcates - це той, у якому оголошуються предикати й домени їхніх аргументів.

Розділ domaіns слугує для оголошення доменів, що не є стандартними для Vіsual Prolog.

Розділ goal містить мету Vіsual Prolog-програми.

 




Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 1031; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.009 сек.