- •Розділ 6. Математична логіка
- •6.3.Логіка предикатів
- •Назва “предикат” походить від англійського слова predicate, що означає “висловлення” або “присудок”. Предикатом
- •Визначено деякий предикат, якщо:
- •Предикат Р, що має n аргументів, називається n-
- •Приклад. Зобразити у вигляді предикатів висловлення: «х ділиться на 13», «х ділиться на
- •Для побудови атомів логіки предикатів дозволяється використовувати такі типи символів:
- •Аргументи предиката називаються термами. Терм визначається рекурсивно таким чином:
- •Приклад. Зобразити у вигляді предикатів такі речення:
- •Приклад. Перекласти на природну мову такі висловлення логіки предикатів:
- •6.4.Квантори
- •При визначенні істиннісного значення предиката неабиякий інтерес становить питання: чи є він істинним
- •Нехай Р(х) — предикат, визначений на М. Висловлення «для всіх х М, Р(х)
- •В логіці предикатів (або першого порядку) існує таке обмеження: не можна застосовувати квантори
- •Від того, чи є змінна зв'язаною або вільною, залежить значення предиката. Вільна змінна
- •Приклад. Записати у вигляді предикатів з кванторами такі висловлення:
- •Застосування кванторів до багатомісних предикатів зменшує кількість вільних змінних, від яких залежить цей
- •Квантор загальності можна інтерпретувати як узагальнення кон'юнкції, а квантор існування — як узагальнення
- •6.5.Формули у логіці предикатів
- •Використовуючи поняття предиката, квантора і терма, можна визначити поняття формули у логіці предикатів.
- •Правильно побудованими формулами логіки предикатів називаються формули, які можна
- •Оскільки дія квантора може поширюватися не на всю формулу, а тільки на її
- •В логіці висловлень інтерпретація формули полягає у приписуванні атомам істиннісних значень. У логіці
- •Для кожної інтерпретації на області D формула може одержати істиннісне значення І або
- •Після уточнення поняття інтерпретації в логіці предикатів такі поняття, як загально значущість,
- •6.6. Закони і тотожності у логіці предикатів
- •Всі закони і тотожності, які справедливі у логіці висловлень, залишаються справедливими і у
- •У загальному випадку слід перейменувати зв'язані змінні, щоб запобігти колізії — ситуації, коли
- •1. Заміна зв'язаної змінної
- •2. Комутативні властивості кванторів
- •3. Дистрибутивні властивості кванторів
- •Для подолання цього обмеження дистрибутивного закону, слід використовувати заміну зв'язаної змінної:
- •4. Закон де Моргана для кванторів
- •6.7. Випереджені нормальні форми і логічний висновок у логіці предикатів
- •Літералом називають атом або його заперечення. Приклади літералів — р, q, r.
- •В логіці предикатів вводиться третя нормальна форма, що називається випередженою нормальною формою.
- •Перетворення виразів довільної форми у ВНФ
- •Приклад. Звести ( x)F(x) ( x)H(x) до ВНФ. Розв'язок. Спочатку виключимо імплікацію, потім
- •Розглянемо правила висновку, які можна використовувати для проведення дедуктивних умовиводів з висловленнями логіки
- •Правило введення квантора загальності
- •Правило введення квантора існування
- •Приклад. Показати, що з тверджень «Всі у першій групі вивчають математику» і
- •6.8.Обчислення предикатів
- •Аналогічно обчисленню висловлень в логіці предикатів існує формальна система — обчислення предикатів, яка
- •Для з'ясування сенсу вимоги до входжень х у F(x) розглянемо як F(x) формулу
- •В обчисленні предикатів використовуються такі правила висновку:
- •4) Правило перейменування вільних зміннних
- •5) Правило перейменування зв'язаних змінних
- •6.9. Метод резолюцій
- •Нехай формулу ƒ записано в КНФ
- •За принципом прямої дедукції формулу g можна вивести з формул f1, f2, ...,
- •Припустимо, що елементарні диз'юнкції d1 і d2 такі, що dl містить літерал l1,
- •Теорема. Резольвента d елементарних диз'юнкцій d1 і d2 — логічний наслідок диз'юнкцій d1
- •Виведення формули d з елементарних диз'юнкцій множини S за методом резолюцій полягає в
- •Алгоритм методу резолюцій
- •Приклад. Показати невиконанність множини
Правило введення квантора загальності
F(c) для довільного с DxF(x)
стверджує істинність x F(x), якщо доведена істинність F(c) для будь-якого с, тобто для всіх елементів с з розглянутої предметної області D.
Правило видалення квантора існування
в істинній формулі х F(x) полягає в позначенні імені елемента с (конкретного або гіпотетичного), для якого F(c) істинне:
xF(x)
F(c) для довільного с D
Правило введення квантора існування
F(c) для довільного с DxF(x)
дозволяє вирішити, що х F(x) є істинним, коли відомий деякий елемент с, для якого істинне F(c).
Крім наведених правил, у логіці предикатів у ході дедуктивного висновку можна використовувати всі правила, які застосовуються для дедуктивних висновків у логіці висловлень.
Приклад. Показати, що з тверджень «Всі у першій групі вивчають математику» і
«Маша — студентка першої групи» маємо висновок: «Маша вивчає математику».
Розв'язок. Позначимо через F(x) предикат «х є студент першої групи», а через М(х)—«x вивчає математику». Тоді засновки можна записати у вигляді:
x (F(x) М(х)) і F(Маша),
а потрібний висновок — М(Маша).
Для одержання цього висновку необхідно здійснити таку послідовність дій:
1. |
x (F(x) М(х)) |
|
перший засновок. |
2. |
F(Маша) М(Маша) |
крок 1, видалення . |
|
3. |
F(Maшa) |
другий засновок. |
|
4. |
М(Маша) |
кроки 2 і 3, правило відділення. |
6.8.Обчислення предикатів
структура обчислення предикатів
правила відділення та узагальнення
правила і -введення
перейменування вільних і зв'язаних змінних
Аналогічно обчисленню висловлень в логіці предикатів існує формальна система — обчислення предикатів, яка займається конструюванням формул і доведенням їх загально-значущості. Обчислення предикатів має ідентичну обчисленню висловлень структуру, а саме: мову, систему аксіом і правила висновку.
Аксіоми обчислення предикатів можна поділити на дві групи:
1) Аксіоми обчислення висловлень (можна обрати будь-яку з формальних систем S1, S2)
2) Предикатні аксіоми, де змінна х у формулі F(x) є вільною і жодного разу не піддається дії квантора за
у: P1) x F(x) F(y); P2) F(y) x F(x).
Формула F(y) одержана з F(x) заміною х на у.
Для з'ясування сенсу вимоги до входжень х у F(x) розглянемо як F(x) формулу у Р(у, х), в якій вільне входження х знаходиться в області дії квантора у, тобто зазначена вимога не задовольняється. Підстановка даної формули до аксіоми Р1 дає таку формулу: x у Р(у, х) у Р(у, у).
Якщо одержану формулу проінтерпретувати на множині натуральних чисел N з предикатом Р «бути більше», то одержимо висловлення: «якщо для всякого х знайдеться у, який більше нього, то знайдеться і у, більший за самого себе». Засновок цієї імплікації істинний на N, а його висновок хибний, тому всі висловлення є хибними.
В обчисленні предикатів використовуються такі правила висновку:
1) Правило відділення (Modus Ponens), повністю
переноситься з обчислення висловлень
A, A B
B
2) Правило узагальнення ( -введення):
F G(x)
F xG(x)
де G(x) містить вільні входження х, a F їх не містить. 3) Правило -введення:
G(x) F
xG(x) F
де G(x) містить вільні входження х, a F їх не містить.
4) Правило перейменування вільних зміннних
В обчисленні предикатів з вивідності формули F(x), що містить вільні входження х, жодне з яких не знаходиться в області дії квантора за у, виходить вивідність F(y).
Доведення.
1.F(x) (за умови).
2.F(x) (G F(x)) (аксіома 1 формальної системи S2; тут як G
можна обрати будь-яку довідну формулу, що не містить вільних входжень змінних x; довідність цієї формули знадобиться на кроці 5, а обмеження на х — на кроці 4).
3.G F(x) (за правилом відділення, кроки 1, 2).
4.G x F(x) (за правилом узагальнення, крок 3).
5.x F(x) (наслідок з кроку 4, оскільки G — істинна формула).
6.F(y) (крок 5, аксіома Р1)
Правило доведено.
5) Правило перейменування зв'язаних змінних
В обчисленні предикатів з вивідності x F(x) виходить вивідність y F(y), а з вивідності х F(x)
— вивідність у F(y) за умови, що F(x) не містить вільних входжень у і містить вільні входження х, жодне з яких не входить до області дії квантора за у.
Доведення.
1.x F(x) (за умови).
2.x F(x) F(y) (аксіома P1).
3.x F(x) y F(y) (правило узагальнення, крок 2).
4.y F(y) (кроки 1, З). Правило доведено.
Необхідно зауважити, що доведення для квантора здійснюється аналогічно, але використовує аксіому Р2 і правило -введення.
6.9. Метод резолюцій
Існують комп'ютерні програми, котрі розроблено для автоматизації міркувань, виконуваних за допомогою доведення логічних теорем. У багатьох із цих програм використано правило виведення, відоме як резолюція.
Правило резолюції записують у вигляді p q, p r├ q r.
На основі цього правила Дж. Робінсон (G.Robinson) 1965 p. запропонував метод резолюцій автоматичного доведення логічних теорем.