Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Структура інтелектуальної системи.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
80.11 Кб
Скачать

Типи даних

Єдиним типом даних Прологу є терм. Терми можуть бути атомамичисламизмінними або складеними термами.

  • Атом це загальна назва без притаманного значення. Прикладами атомів є x, синій, 'Бутерброд' та 'якийсь атом'.

  • Числа можуть бути з плаваючою комою, або цілими.

  • Змінні позначаються стрічками, що складаються з літер, цифр та символів підкреслення, і починаються з великої літери або символу підкреслення. Змінні дуже подібні до змінних в логіці в тім, що вони є позначками-заповнювачами для довільних термів.

  • Складений терм складається з атому, що зветься функтор, та певної кількості аргументів, що в свою чергу теж є термами. Складені терми зазвичай записуються у вигляді функтора, за яким у дужках слідує перелік термів-аргументів через кому. Кількість аргументів називається арністю терму. Атом може розглядатися як складений терм нульової арності. рік_машини('Таврія', 1988) та 'Друзі_Особи'(грай,[око,тур]) є прикладами складених термів.

Особливі випадки складених термів:

  • Список є впорядкованою колекцією термів. Він позначається квадратними дужками з термами, розділеними комами, або, у випадку порожнього списку, []. Наприклад, [1,2,3], або [червоний,зелений,синій].

  • Стрічки: послідовність символів у лапках, еквівалентна спискові (числових) кодів символів, зазвичай у місцевому кодуванні, або в Юнікоді, якщо система підтримує Юнікод. Наприклад, "бути чи не бути".

  • Історія[ред.]

  • Назву Пролог (фр. Prolog) було обрано Філіпом Русселем (фр.) як абревіатуру від програмування в логіці (фр. programmation en logique). Пролог було створено у 1972 році Аланом Кольмерое (англ.) з Філіпом Русселем на основі процедурної інтерпретації диз’юнктів Хорна (англ.) Роберта Ковальського (англ.). Це було частково мотивоване бажанням примирити використання логіки як мови декларативного представлення знань з процедурним представленням знань, що було популярне в Північній Америці в кінці 1960-х і на початку 1970-х років. Згідно з Робертом Ковальським (англ.), першу прологову систему було розроблено у 1972 році Аланом Кольмерое та Філіпом Русселем.[5] Перші реалізації Прологу були інтерпретаторами, однак, Девід Уоррен (англ.) створив абстрактну машину Уоррена (англ.), ранній та впливовий компілятор Прологу, що прийшов, щоби визначити «Единбурзький» діалект Прологу, що послужив основою синтаксису більшості сучасних реалізацій.

  • Більшість сучасних розробок Прологу пішли від поштовху проекту комп’ютерних систем п’ятої генерації (англ.), в рамках якого було розроблено варіант Прологу під назвою Kernel Language (англ.) для його першої операційної системи.

  • Чисту Пролог було спочатку обмежено використанням системи доведення теорем з диз’юнктами Хорна (англ.) форми:

  • Г :- Т1, ..., Тn.

  • Застосунок системи доведення теорем обробляє такі речення як процедури:

  • щоби показати/розв’язати Г, покажи/розв’яжи Т1 та ... та Тn.

  • Однак, чисту Пролог незабаром було розширено включенням заперечення як невдачі (англ.), у якому заперечні умови форми not(Тi) показуються шляхом спроби і невдачі доведення відповідних позитивних умов Тi.

  • Подальші розширення Прологу оригінальною командою ввели до реалізацій можливості логічного програмування з обмеженнями (англ.).