Проблема розв'язання і розв'язуючі процедури. Реферат
Оскільки висновок виводу (останнє у відповідній послідовності, вивідне висловлювання) не завжди з необхідністю випливає із засновків, то доводиться вдаватися до різних процедур, щоб довести, що логічне слідування справді має місце в тому чи іншому виводі
Щоб довести, що проголошена нами формула В (теза) є справді істинною, треба підібрати такі фор-мули-аргументи А1лА2л... лАп, з яких за відповідною процедурою можна вивести формулу, що збігається з проголошеною (з тезою), проте на відміну від останньої є достовірною.
Для позначення логічного слідування в логіці застосовують знак "І-" (або "f="). Вираз "А\-В" читається так: "з А логічно випливає В".
Із формули А випливає формула В тоді, коли імплікація "А-їВ" є законом логіки ("завжди істинною" формулою). Ось чому (і не тільки тому) знаходження процедури, що дає змогу визначити, до якого класу формул логіки висловлювань ("завжди істинних", "завжди хибних" чи виконуваних) належить будь-яка формула, є винятково важливою проблемою логіки висловлювань.
Побудова відповідних таблиць істинності є ефективною лише за умови, коли до розглядуваних формул входить невелике число змінних. В іншому разі вона буде громіздкою, оскільки кількість рядків у таблиці стрімко зростає із збільшенням числа змінних, які входять до формули. Так, якщо формула містить три пропозиційні змінні, то рядків у таблиці буде 8, чотири - 16, п'ять - 32, десять - 1024. До того ж існують інші, менш громіздкі, зручніші процедури, з допомогою яких розв'язуються ці задачі. Йдеться про зведення формул до нормальної форми.
Нормальні форми формул логіки висловлювань
Формула логіки висловлювань має нормальну форму, якщо вона, по-перше, не містить у собі знаків -", <->, у, а по-друге, знаки заперечення стоять у ній лише при змінних.
Будь-яку формулу, що не має нормальної форми, можна скінченним числом застосувань правил заміни перетворити у формулу, яка має нормальну форму. Ця процедура називається процесом зведення формули до нормальної форми.
Щоб звести формулу до нормальної форми, необхідно зробити в ній такі рівносильні заміни:
- 1) кожну підформулу типу (А->В) замінити згідно з рівносильністю 13 формулою (AvB);
- 2) кожну підформулу типу (А<->В) замінити згідно з рівносильністю 16 формулою (AVB) A (BVA);
- 3) кожну підформулу типу (AvB) замінити згідно з рівносильністю 17 формулою (АУВ) Л (АУВ);
- 4) кожну підформулу типу (АлВ) замінити згідно з рівносильністю 10 формулою (AvB);
- 5) кожну підформулу типу (AvB) замінити згідно з рівносильністю 11 формулою (АлВ);
- 6) кожну підформулу типу іГ замінити згідно з рівносильністю 1 формулою А.
Якщо ж перелічені процедури не можна застосувати до формули, то вона вже має нормальну форму.
Наприклад, дано формулу (p<->q), яку треба звести до нормальної форми. Згідно з рівносильністю 16 одержимо формулу (p~vq) л (qvp). 3 цієї формули згідно з рівносильністю 10 одержимо формулу (pvq) v (qvp), де підформулі (pvq) відповідає підформула рівносильності А, виражена засобами метамови, а підформулі (FVQ) - В. Вдавшись до рівносильності 11 і застосувавши її до кожного з диз'юнктів одержаної формули, дістанемо формулу (pAq~) v (c[Ap). І нарешті згідно з рівносильністю 1 одержимо формулу (pAq) v (q~Xp).
До нормальних форм формул логіки висловлювань належать передусім кон'юнктивна нормальна форма (КНФ) і диз'юнктивна нормальна форма (ДНФ). Причому кожна з них має свій специфічний спосіб утворення (зведення) і дає змогу розв'язувати відповідні задачі.
Проблема розв'язання
Є три класи формул логіки висловлювань ("завжди істинні", "завжди хибні" і невизначені, або виконувані). Завдання, що полягає у відшуканні процедури, котра дає змогу визначити, до якого з перелічених класів належить будь-яка формула, називається семантичною проблемою розв'язання для формул логіки висловлювань. А процедура, що дає змогу скінченним числом простих дій вирішувати проблему розв'язання, називається розв'язуючою процедурою.
Для того щоб одержати розв'язуючу процедуру, достатньо знайти спосіб відрізняти "завжди істинні" Формули від усіх інших. Якщо в результаті застосування такої процедури до формули А виявиться, що вона "завжди істинна", то проблема розв'язання вирішена. Коли ж ця формула виявиться не "завжди істинною", то цю процедуру треба застосувати до формули А Якщо буде встановлено, що ця формула є "завжди істинною", то звідси випливає висновок: формула А є "завжди хибною". Коли ж буде встановлено, що і формула А не є "завжди істинною", то це свідчить, що формула А є виконуваною, тобто при одних логічних значеннях змінних вона є істинною, а при інших - хибною.
Існує формальна процедура, з допомогою якої, не вдаючись до побудови відповідних таблиць істинності, можна визначати, до якого класу належить будь-яка формула логіки висловлювань - до "завжди істинних", "завжди хибних" чи виконуваних.
Пропозиційна змінна входить до складу формули, зведеної до нормальної форми, регулярно, якщо вона (змінна) входить до складу цієї форми одночасно як із запереченням, так і без заперечення. Якщо ж змінна входить до складу формули, зведеної до нормальної форми, тільки із запереченням або тільки без заперечення, то вона входить до складу формули нерегулярно.
Розв'язуюча процедура передбачає такі дії:
- зведення формули до нормальної форми;
- у зведеній до нормальної форми формулі виділення змінних, які входять до неї нерегулярно;
- замість усіх змінних і заперечень змінних, які входять до формули нерегулярно, слід підставити на всіх місцях, де вони трапляються в нормальній формі, букву х (тобто логічне значення "хиба");
- застосування правил заміни згідно з рівносильностями 48, 48', 50 і 50' до всіх підформул одержуваної формули, доки є приводи для його застосування. В результаті такої процедури довжина формули буде скорочуватись, і можуть з'явитися нові змінні, що нерегулярно входять до формули. З ними чинять аналогічно, тобто згідно з пунктами 3 і 4. Передбачувані в пунктах 2-4 перетворення слід повторювати, доки не одержимо формулу, яка не містить у собі змінних, що входять до неї нерегулярно;
- 5) розгляд наступних двох формул, одержаних з формули, яка не містить змінних, що входять до неї нерегулярно.
Якщо:
- а) замість однієї змінної, яка регулярно входить до формули, в усіх місцях слід підставити і (логічне значення - "істина") і застосовувати правило рівносильної заміни згідно з рівносильностями 43, 47-50;
- б) замість тієї ж змінної на всіх місцях підставити букву х (логічне значення - "хиба") і застосовувати правило рівносильної заміни згідно з рівносильностями 44, 47-50.
До формул а і б, якщо це можливо, знову застосовують пункти 2-4, а потім, згідно з пунктом 5, з формул а і б одержують відповідно формули аа, аб, ба і бб тощо, доки не вичерпані можливості застосування пунктів 2-5.
Якщо в результаті застосування цієї процедури до будь-якої формули А всі заключні формули набудуть значення і ("істина"), то формула А є "завжди істинною", а якщо хоча б одна заключна формула набуде значення х ("хиба"), то формула А не є "завжди істинною"
Кон'юнктивна нормальна форма
Кон'юнктивна нормальна форма формул логіки висловлювань є кон'юнкцією елементарних диз'юнкцій.
Елементарною диз'юнкцією є формула, що має такий вигляд: A1vA2v... vAn, де п>1, а кожна з формул Ар А2,.. А є змінною або запереченням змінної. Так, формула (pvqvrvs) є елементарною диз'юнкцією, чого не можна сказати про формулу (pvqv (pAr) vs), оскільки третій її диз'юнкт (рлг) не є ні змінною, ні запереченням змінної.
Елементарна диз'юнкція є "завжди істинною" тоді і лише тоді, коли в ній міститься принаймні одна пара диз'юнктів, з яких один є якоюсь змінною, а другий — її запереченням. У цьому неважко переконатися, побудувавши відповідну таблицю істинності: пара названих диз'юнктів забезпечить наявність "і" (істина) в кожному рядку цієї таблиці, що є достатньою підставою для визнання подібної Диз'юнкції "завжди істинною" формулою, тобто законом логіки.
Формула логіки висловлювань має кон'юнктивну нормальну форму тоді, коли вона має такий вигляд: В, лВгл... лВт, де Вг В2,... Вп_ - елементарні диз'юнкції і т>1.
Так, формула pA (qvr) A (qvp) має кон'юнктивну нормальну форму (кон'юнкт р слід розглядати як вироджену диз'юнкцію з одним диз'юнктом).
Будь-яку формулу логіки висловлювань з допомогою ряду рівносильних замін можна звести до кон'юнктивної нормальної форми. Формулу, що є рівносильною даній і має кон'юнктивну нормальну форму, називають кон'юнктивною нормальною формою даної формули.
Щоб звести формулу до кон'юнктивної нормальної форми, треба насамперед з допомогою відповідної процедури звести її до нормальної форми. А потім кожну підформулу, що має вигляд (pv (qAr)) згідно з рівно-сильністю 6 і кожну підформулу типу ((qA. r) vp) згідно з рівносильністю 6' замінити формулою ((pvq) A A (pvr)). Річ у тім, що формула має кон'юнктивну нормальну форму лише за умови, що вона, по-перше, має нормальну форму, а по-друге, не містить у собі під-формул типу (pv (qAr)) і ((qAr) vp).
Розглянемо зведення формули до кон'юнктивної нормальної форми на такому прикладі: (р-хі) -> (р~А~г).
1. Застосувавши до цієї формули правило усунення імплікації (при цьому підформулу (р-щ) будемо розглядати як антецедент (А), а підформулу (рХг) - як консеквент (В) імплікації А->В, одержимо: (p-q) v v (pAq).
2. Застосувавши правило усунення імплікації, яка є в першому диз'юнкті цієї формули (при цьому як антецедент виступає р, а як консеквент - q), одержимо:
(pVq) v (pAT).
3. Вдавшись до рівносильності 11 (другого закону де Моргана) і зробивши відповідну заміну першого диз'юнкта цієї формули, одержимо: (p=Aq~) v (pAr).
4. Застосувавши рівносильність 10 (перший закон де Моргана) до другого диз'юнкта формули, одержимо: (p=Aq~) v (pvr).
5. Звернувшись до першої рівносильності, правила усунення подвійного заперечення, одержимо: (pAq) v (pvr).
6. Остання заміна згідно з рівносильністю 6' ((BAC) VA): (pvpvT) A (qvpvr).
Далеко не всі формули мають лише одну кон'юнктивну нормальну форму.
Формула логіки висловлювань в КНФ є "завжди істинною" тоді, коли кожен її кон'юнкт, тобто кожна елементарна диз'юнкція, містить у собі принаймні одну змінну одночасно зі знаком заперечення і без нього. В тому, що формула, зведена до КНФ, є "завжди істинною", можна переконатися за її зовнішнім виглядом. Так, оскільки кожен кон'юнкт формули (pvqvp) A (pvqvq~) A (pvrvqvr) містить змінну зі знаком заперечення і без нього, то вона є "завжди істинною".
З допомогою КНФ визначають, є дана формула "завжди істинною" чи ні, а також чи є формула В логічним наслідком із формул Ар А2,.. Лп.
Щоб перевірити, чи є довільна формула В наслідком із формул А[ГА2, ~Ап, треба приєднати В через імплікацію до формул Аг А2, ~Ап, і одержаний вираз звести до КНФ. Якщо одержана КНФ буде "завжди істинною", то це засвідчить, що В випливає з_А;, А,..., Ап.
Перевіримо, чи випливає В з формул В ->А, А як засновків. Поєднаємо ці засновки кон'юнкцією і приєднаємо до них В з допомогою імплікації: ((В->А) лА) ->В.
Одержану формулу зведемо до КНФ:
- 1. Застосувавши рівносильність 13, одержимо ((B->A) AA) VB.
- 2. Вдавшись до рівносильності 10, одержимо ((BA) vA) vB.
- 3. Використавши рівносильність 13, одержимо ((BvA) vA) vB.
- 4. Застосувавши рівносильність 10, одержимо ((BAA) VA) VB.
- 5 Вдавшись до рівносильності 6', одержимо ((AVB) A (AVA)) VB.
- 6. Застосувавши першу рівносильність, одержимо ((AVB) A (AVA)) VB.
- 7. Усунувши JCOH'IOHKT, ЯКИЙ містить змінну та її заперечення (AvA), одержимо AvBvB.
Оскільки ця формула є елементарною диз'юнкцією, яка містить змінну (В) і її заперечення (В), то це означає, що вихідна формула є "завжди істинною". Тому формула В є наслідком із формул В-*А і А.
Розрізняють ще досконалу кон'юнктивну нормальну форму (ДКНФ) і скорочену кон'юнктивну нормальну форму (СДНФ), з допомогою яких розв'язують задачі на знаходження всіх логічних наслідків з даної формули.
Диз'юнктивна нормальна форма
Диз'юнктивна нормальна форма формул логіки висловлювань є диз'юнкцією елементарних кон'юнкцій.
Елементарною кон'юнкцією є формула, що має такий вигляд: А1лА2л... лА, де п>1, а кожна з формул Ар А2,..., Ап є змінною, або запереченням змінної. Так, формула (рлс[лглд) є елементарною кон'юнкцією, чого не можна сказати про формулу (дл (дуг) лрлг), оскільки другий її кон'юнкт не є ні змінною, ні запереченням змінної.
Елементарна кон'юнкція є "завжди хибною" тоді й тільки тоді, коли до її складу входить принаймні одна пара кон'юнктів, з яких один є якоюсь змінною, а другий - її запереченням.
Формула логіки висловлювань має диз'юнктивну нормальну форму тоді, коли вона має такий вигляд: В vB2v... vBm, де Вр В2.. "Вт є елементарними кон'юнкціями, а т>1. Наприклад: (pXqAr) vp~v (qAr).
Будь-яку формулу логіки висловлювань з допомогою відповідних рівносильних замін можна звести до диз'юнктивної нормальної форми. Формулу, що є рівносильною даній і має диз'юнктивну нормальну форму, називають диз'юнктивною нормальною формулою даної формули. Щоб звести формулу до ДНФ, необхідно насамперед звести її до нормальної форми, а потім кожну під-формулу типу (AA (BVCJ) згідно з рівносильністю 7 і кожну підформулу типу ((BVC) AA) згідно з рівносильністю Т замінити формулою ((AAB) V (AAC)).
Розглянемо процедуру зведення формули до диз'юнктивної нормальної форми на такому прикладі:
- Застосувавши до цієї формули правило усунення імплікації (при цьому підформулу р будемо розглядати як антецедент, а підформулу ((p->q) ->q) - як консеквент), одержимо: pv ((p->q) ->q).
- Знову вдавшись до правила усунення імплікації (на цей раз роль антецедента виконує підформула (р-щ), а консеквента - q, одержимо: pv ((p->q) vq) -
- Застосувавши правило усунення імплікації (антецедент - р, а консеквент - q), одержимо: pv ((pq) vq).
- Використавши другий закон де Моргана, одержимо: pv ((pAq) vq).
- Залишається лише усунути подвійне заперечення і зайві дужки: p~v (pAq) vq.
Формула може мати не одну ДНФ.
З допомогою ДНФ з'ясовують, по-перше, є дана формула "завжди хибною" чи ні, а по-друге, чи є та чи інша формула наслідком з відповідних засновків.
Формула, що має ДНФ, є "завжди хибною" тоді й тільки тоді, коли "завжди хибними" є всі її диз'юнкти, тобто коли кожна елементарна кон'юнкція містить у собі принаймні одну пару кон'юнктів, один з яких є якоюсь змінною, а другий - її запереченням. Таким чином, за виглядом елементарної кон'юнкції можна робити висновок, є вона "завжди хибною" чи ні. Так, формула ((pAqAp) v (qAq) v (pAqArAr)) є "завжди хибною", оскільки загалом вона є диз'юнкцією, кожен диз'юнкт якої (елементарна кон'юнкція) є "завжди хибним".
Розрізняють ще досконалу диз'юнктивну нормальну форму (ДДНФ) і скорочену диз'юнктивну нормальну форму (СДНФ), кожна з яких дає змогу розв'язувати відповідні задачі.
19.10.2011