Смекни!
smekni.com

Семантичні мережі (стр. 2 из 3)

Розглянемо дві задачі автоматизації дедуктивних побудов:

задача виведення наслідків: знайти всі вірно побудовані формули, які можна логічним шляхом вивести з аксіом на основі правил виведення (знайти всі наслідки з фактів);

задача перевірки правильності твердження (автоматичного доведення теорем).

Автоматизація дедуктивних побудов – в ЕС.

Механізм автоматичного доведення теорем покладений в основу логічного програмування. Програма розглядається як набір логічних формул разом з теоремою, що має бути доведена. Найвідоміший представник логічного програмування – мова Пролог.

Людська логіка – інтелектуальна модель з нечіткою структурою.

Логічна модель – формальна система, що задається <Т, Р, А, В>

, де Т – множина базових елементів (алфавіт)

Р – множина синтаксичних правил

А - множина аксіом (формули, які приймаються за істинні)

В – множина правил виведення

У типовому випадку логічна модель задання знань базується на формалізмах логіки предикатів першого порядку.

Предикат – логічна функція (вірність або хибність певного твердження – „Х більше 2”).

Логіка предикатів – мат. апарат формалізації людського мислення.

Числення предикатів використовує:

константи (константні терми): С1, С2, ..

змінні (змінні терми): х1, х2, ...

функціональні літери: f1, f2, …

предикатні літери: р1, р2, ...

логічні символи: →, ↔,

, &, ~,
,
.

Елементарне твердження складається з предиката і зв’язаних з ним термів. Складні твердження будуються з елементарних за допомогою логічних зв’язок: „і” (and, & ), „або” (or,

), „ні” (not, ~), імплікації „→” (якщо ..., тоді ...)

Якщо твердження позначити через a i b, то

Зв’язок Запис Інтерпретація
Заперечення ~a не є a
Кон’юнкція a&b a та b
Диз’юнкція a
b
a або b
Імплікація a→b a випливає з b
Тотожність (еквівалентність) a↔b a еквівалентне b

Імплікація: Чоловік(Х) → Людина(Х)

Для імплікації і тотожності справедливі твердження:

a→b дорівнює (~a)

b

a↔b дорівнює (a&b)

(~a & ~b)

a↔b дорівнює (a→b) & (b→a)

З кожним предикатом може бути пов’язаний квантор – елемент, який визначає, за яких умов предикат може перетворюватися на істинне висловлювання.

Розрізняють квантор узагальнення (

) і квантор існування (
).

Якщо u - змінна, r - твердження, то запис

u r” означає „r справджується для всіх u” (узагальнення, для будь-якого u, all);

u r” означає „існує u, для якого r справджується” (існування, існує хоча б одне u для якого ..., exists);

Приклад: All (Х, чоловік(Х) → людина (Х))

Елементарним об’єктом, який має значення „істина”, є атомарна формула (літерал):

P(t1, t2, …, tn), де Р – предикат, t – терми, n - арність предикату.

Хибна формула: „”.

Тавтології (тотожньо істинні формули): ~~A↔A.

Позитивний літерал не стоїть під знаком заперечення, а негативний – під знаком заперечення.

Диз’юнктом (фразою теорії) називається диз’юнкція деякої кількості атомарних формул.

Часто використовують фрази спеціального типу – фрази Хорна (хорнівські диз’юнкти) – диз’юнкція довільної кількості атомарних формул, з яких позитивною є не більше ніж одна (~A

~B
~C
D).

Фрази Хорна по суті є імплікаціями, оскільки за правилами Моргана

(~A

~B ~C
D) еквівалентне (A
B
C
) → D.

Для практичного застосування у логічних виразах потрібно позбутися кванторів узагальнення та існування (пренексна нормальна форма).

Для усунення кванторів існування використовують константи і функції Сколема. Наприклад:

Маємо формулу

x: P(x) вкажемо предметну константу С (константу Сколема), для якої твердження P(C) є істинним; таким чином перейдемо від
x: P(x) до P(C).

Маємо формулу

y
x: P(x,y), вкажемо деякий елемент С, для якого твердження P(|C,y) є істинним, тому можна перейти від формули
y
x: P(x,y) до формули
y P(h(y), y), де h(y) – функція Сколема.

Квантори узагальнення просто видаляються (вважається, що якщо фраза залежить від деяких змінних, то всі вони зв’язані оператором узагальнення); формула

x
y
z P(x,y,z) замінюється на P(x,y,z).

Для спрощення логічних формул використовують рівності

~(а&b) означає (~а)

(~b);

~Exists(u,r) означає All(u,~r);

~All(u,r) означає Exists(u,~r).

В результаті перетворень отримуються хорнівські фрази, наприклад (~A

~B
~C
D), яка еквівалентна D←(A
B
C
), а в мовах логічного програмування записується у вигляді D:- A, B, C.

Побудова теорії певної області знань включає дослідження структури цієї області і вибір позначень для її елементів. Потім будується множина вірно побудованих формул (ВПФ) для опису цієї структури. Множина ВПФ є теорією цієї області знань, в якій кожна ВПФ – аксіома.

Для побудови бази знань певної предметної області використовують наступні принципи:

Визначаються предметні змінні.

База знань описується як кон’юнкція деяких тверджень (фактів або правил виведення).

Факти задаються позитивним або негативним літералом, що не містить змінних.

Правила виведення задаються фразами Хорна.

Квантори існування усуваються шляхом введення констант і функцій Сколема.

Квантори узагальнення усуваються механічно.

Після побудови формалізованої бази знань здійснюється логічне виведення.

Наприклад:

Маємо неформальний опис: „Всі студенти люблять відвідувати лекції. Деякі студенти люблять морозиво. Іванов є студент, але не любить морозива”

Введемо такі предикати і предметні константи:

L(x,y) - x любить y.

S(x) – x є студентом.

A - предметна константа „відвідування лекцій”.

I - предметна константа „Іванов”

Q - предметна константа „Морозиво”.

Отримаємо базу знань:

x: (~S(x)
L(x,A))

x: (S(x) & L(x,Q))

S(I)

~L(I,Q)

Усунення кванторів і розподіл кон’юнкцій приводить до такої бази знань

S(x)

L(x,Q)

S(c)

L(c,Q)

S(I)

~L(I,Q),

де С – константа Сколема.

В логічному програмуванні для автоматичного доведення певного твердження (ВПФ) використовується метод від супротивного: береться інверсія ВПФ і додається до бази знань; якщо при цьому виникає протиріччя (A & ~A) , то ВПФ вважається вірною.

Фрази бази знань можуть бути спрощені методом резолюцій. Для цього знаходиться дві фрази, які утворюють контрарну пару. В контрарній парі одна фраза містить певну атомарну формулу без заперечення, а інша фраза – ту ж формулу із запереченням.

Наприклад, фрази (~P

M) і (P
L) утворюють контрарну пару, результатом якої (резольвентою) є фраза (M
L).