- •Буковинський університет
- •Дискретна математика
- •Навчально-методичний посібник
- •Чернівці
- •Задачі та вправи 12
- •Задачі та вправи 28
- •Операції над множинами
- •Тема „Алгебра лінійних множин”
- •Способи задання множин
- •Порожня множина ()
- •Універсум (u)
- •Множина підмножин
- •Алгебра множин
- •Узагальнення операцій над множинами
- •Задачі до теми „Алгебра лінійних множин”
- •Тема „Відношення і функції”
- •Окремі випадки відношень
- •Властивості композицій:
- •Властивості відношень
- •Основні властивості відображень
- •Відношення еквівалентності
- •Відношення порядку
- •Відношення рівнопотужності
- •Властивості скінченних множин
- •Властивості зчисленних множин
- •Задачі до теми „Відношення і функції”
- •Тема „Булеві функції”
- •Способи задання булевих функцій
- •Булеві функції однієї змінної
- •Область визначення булевих функцій
- •Елементарні функції алгебри логіки
- •Булевий простір
- •Властивості функцій
- •Деякі операції над висловленнями
- •Формули в алгебрі логіки
- •Основні тотожності
- •Правила
- •Принцип двоїстості
- •Типи булевих функцій
- •Канонічні форми перемикальних функцій
- •Досконалі диз’юнктивні нормальні форми перемикальних функцій
- •Досконалі кон’юнктивні нормальні форми перемикальних функцій
- •Властивості досконалих форм
- •Скорочена диз’юнктивна нормальна форма перемикальних функцій
- •Утворення скороченої диз’юнктивної нормальної форми методом Квайна
- •Метод Квайна-Маккласкі
- •Утворення мінімальних кон’юктивних нормальних форм
- •Алгоритм утворення мінімальної кнф
- •Геометричне подання функцій алгебри логіки
- •Спрощення булевих функцій
- •Задачі до теми „Способи задання булевих функцій. Операція суперпозиції”
- •Задачі до теми „Істотні та фіктивні змінні”
- •Задачі до теми „Спеціальні види формул. Диз’юнктивні і кон’юнктивні нормальні форми. Поліном Жегалкіна”
- •Задачі до теми „Замкнуті класи і повнота системи булевих функцій” Важливіші замкнуті класи булевих функцій
- •Задачі до теми „Класи функцій, що зберігають константи”
- •Задачі до теми „Двоїстість і клас самодвоїстих функцій”
- •Задачі до теми „Монотонність і клас монотонних функцій”
- •Повнота систем булевих функцій
- •Тема „Рекурсивні функції”
- •Частково-рекурсивні функції
- •Тема „Скінченні автомати. Машина Тьюринга”
- •Машина Тьюринга
- •Тема „Основні поняття і властивості алгоритмів”
- •Основні вимоги до алгоритмів
- •Основні властивості алгоритму
- •Тема „Формальні системи. Алгебра висловлювань”
- •Аксіоматичний спосіб опису висловлювань
- •Властивості числення висловлювань
- •Задачі до теми „Алгебра висловлювань”
- •Тема „Логіка і числення предикатів”
- •Рівносильність формул
- •Задачі до теми „Логіка і числення предикатів”
- •Тема „Алгебри. Типи алгебр. Алгебраїчні системи”
- •Гомоморфізм та ізоморфізм алгебри
- •Типи алгебр
- •Алгебраїчні системи
- •Тема „Елементи комбінаторики”
- •Формула включень і виключень
- •Рекурентні співвідношення
- •Основні властивості кількості сполук
- •Біном Ньютона
- •Властивості розкладу бінома Ньютона і біномних коефіцієнтів
- •Поліномні твірні функції
- •Розміщення і функціональні відображення
- •Розбиття
- •Поліномна формула
- •Задачі до теми „Комбінаторика”
- •Тема „Графи”
- •Задання графа за допомогою матриці інцидентності та списку ребер
- •Задання графа за допомогою матриці суміжності
- •Локальні степені вершин графа
- •Частини графа, суграфи та підграфи
- •Операції з частинами графа
- •Маршрути, ланцюги та цикли
- •Цикломатичне число графа
- •Задачі до теми „Графи”
- •Дискретна математика
- •Література
- •Навчальне видання Пукальський Іван Дмитрович,
- •Лусте Ірина Петрівна,
Тема „Формальні системи. Алгебра висловлювань”
Формальні системи – це системи операцій над об’єктами, які розуміють як послідовності символів (тобто як слова у фіксованих алфавітах); самі операції також є операціями на символами.
Означення 1. Під формальною системою будемо розуміти деяку абстрактну (математичну) систему, що складається з множини аксіом та множини правил виведення, яку можна реалізувати машинним способом.
Означення 2. Аксіоми – це твердження про задані об’єкти і взаємозв’язки між ними, сформульовані у вигляді рядків деякої мови.
Означення 3. Правилами виведення називають чітко сформульовані процедури, які дають змогу повторювати нові рядки з тих, що існують.
Нові рядки є теоремами формальної системи. Позначимо формальну систему через F, множину аксіом, як і множину рядків, –через (1, 2, …, n). Правило виведення в найзагальнішому вигляді можна подати обчислювальною функцією R(, 1, 2, …, k) з кількістю аргументів (k + 1). Тут за аргументи використано рядки. Функція набуває значення істинності або хибності (І, Х). Якщо R(, 1, 2, …, k) = І, то кажуть, що рядок безпосередньо виводиться з рядків 1, 2, …, k за правилом виведення. Надаючи далі правилу виведення деякої конкретної форми, дістаємо формальні системи окремого вигляду, які дають змогу ефективно розв’язувати деякий клас прикладних задач.
Означення 4. Доведенням в F теореми (рядка) називається скінченна послідовність рядків 1, 2, …, l така, що кожний рядок з цієї послідовності є або аксіомою в F, або безпосередньо виводиться з деякої множини рядків, кожний з яких передує I у послідовності; теоремою є останній рядок в послідовності.
Приклад. Нехай задано алфавіт A = {a, b, c, d, e, f}, з якого складено рядки формальної системи. Множина аксіом формальної системи: 1) abffe; 2) eedca; 3) ffb.
Правила виведення:
R1(ff, eedca, abffe) = I;
R2(abca, ffb, ff, eedca) = I.
Знайдемо можливе виведення в цій формальній системі, нумеруючи для зручності кожний рядок виведення:
eedca – аксіома 2;
2) abffe – аксіома 1;
3) ff – безпосередньо виводиться з (1), (2) та R1;
4) ffb – аксіома 3;
5) abca – безпосередньо виводиться з (1), (2), (4) й R2.
Отже, формальна система виводить як теорему рядок abca.
Щоб довести теорему у формальній системі, треба спочатку виписати аксіоми і застосувати до них правила виведення. Усі рядки, утворені таким чином, складають теореми першого рівня. Якщо правила виведення застосовують до теорем першого рівня, то одержують теореми наступного рівня і т.д. Іноді аксіоми розглядають як теореми нульового рівня.
Аксіоматичний спосіб опису висловлювань
Поняття „висловлювання” – одне із первинних в математичній логіці. Під висловлюванням будемо розуміти будь-яке твердження, про яке можна сказати, що воно є істинним чи хибним.
Наприклад, твердження „3 > 2” і „2 2 = 5” є висловлюваннями: перше – істинне, друге – хибне. Твердження „Трикутник називається рівностороннім, якщо всі його сторони рівні”, як і будь-яке інше означення, не є висловлюванням, а будь-яка терема, наприклад, „Якщо функція f(x), яка визначена в деякому околі точки x0, диференційована в x0, то вона в цій точці неперервна” – висловлювання. Нас не буде цікавити зміст висловлювань, а тільки їх істинність. Будемо позначати висловлювання буквами p, q, r, s, … Домовимось слова „істинно” і „хибно” позначати відповідно символами 1 і 0.
Над висловлюваннями визначені такі операції: заперечення, диз’юнкція, кон’юнкція, імплікація, еквівалентність. Нехай p і q – висловлювання, тоді:
запереченням p ( ) висловлювання p називається висловлювання, яке є хибним, коли p істинне; та істинним, коли p хибне;
диз’юнкцією p q висловлювань p і q називається висловлювання, яке є хибним, коли p і q хибні; і істинним – в інших випадках;
кон’юнкцією p q висловлювань p і q називається висловлювання, яке є істинним, коли істинні p і q; і хибним в інших випадках;
імплікацією p q висловлювань p і q називається висловлювання, яке є хибним, коли p істинне, а q хибне; і істинним – в інших випадках;
еквівалентністю p ~ q висловлювань p і q називається висловлювання, яке є істинним тоді і тільки тоді, коли p і q мають однакові істинностні значення.
Всі визначені раніше операції задаються в таблиці істинності
-
p
q
p q
p q
p q
p ~ q
0
0
1
0
0
1
1
0
1
1
1
0
1
0
1
0
0
1
0
0
0
1
1
0
1
1
1
1
Запереченню відповідає зв’язка „не”, диз’юнкції – „або”, кон’юнкції – „та”, імплікації – „якщо …, то”, еквівалентності – „тоді і тільки тоді, коли …”
Позначимо через P множину всіх висловлювань. У множині P визначена унарна операція і бінарні операції , , , ~, відносно яких множина P є замкнутою (тобто разом з деяким набором висловлювань у множині P містяться результати бінарних операцій над цими елементами). Отже, виникає алгебра висловлювань.
Застосовуючи до довільних елементів P ці операції, ми одержимо складні висловлювання – елементи множини P.
Наприклад,
(p ) (r ~ p); (r (p s)) ~ q.
Написані формули називаються формулами алгебри висловлювань.
Формули алгебри висловлювань будемо позначати f(p, q, r, …, t) або U, V, …
Акуратне рекурсивне означення формули таке:
довільні висловлювання p, q, r, … є формулами;
якщо U і V формули, то (U), (V), U, V, (U) (V), (U) (V), (U) (V), (U) ~ (V) є формулами;
тільки вирази, наведені в пунктах 1), 2) є формулами алгебри висловлювань.
Формули алгебри висловлювань f(p, q, r, …, t) і (p, q, r, …, t) називаються рівносильними, якщо для довільних істинних значень висловлювань p, q, r, …, t вони набувають однакові істинності значення (f ).
Формула F = f(p, q, r, …, t) називається тавтологією, якщо висловлювання F істинне при довільних істинних значеннях p, q, r, …, t (f(p, q, r, …, t) 1).
Довільна формула U = f(p, q, r, …, t) при істинних значеннях висловлюваннях p, q, r, …, t набуває деяке істинне значення. Для їх визначення універсальним способом будуються таблиці істинності. Однак ці таблиці швидко ускладнюються з ростом кількості вихідних висловлювань. Інший спосіб полягає в використанні законів алгебри логіки. Вони перевіряються за допомогою таблиць істинності, а потім використовуються для спрощення. Наведемо ці закони, при цьому 0 і 1 означають хибне та істинне висловлювання:
1а) p q = q p, |
1б) p q = q p, |
2а) p (q r) = (p q) r, |
2б) p (q r) = (p q) r, |
3а) p (q r) = (p q) (p r), |
3б) p (q r) = (p q) (p r), |
4а) p 0 = p, |
4б) p 1 = p, |
5а) p 1 = 1, |
5б) p 0 = 0, |
6а) p = 1, |
6б) p = 0, |
7а) p p = p, |
7б) p p = p, |
8а) p (p q) = p, |
8б) p (p q) = p, |
9а)
|
9б)
|
Для розв’язання складніших питань логіки висловлювань використовуються аксіоматичні теорії.
Аксіоматичні теорії – це формальні системи, які відповідають численню висловлювань. Як і кожні формальні системи, вони містять алфавіт, систему аксіом, правила виведення.
Аксіоматична теорія будується таким чином:
визначається набір символів теорії Т, тобто скінченних послідовностей, які називаються виразами теорії Т;
визначається множина формул, тобто підмножин виразів теорії Т;
визначається підмножина формул, які називаються аксіомами теорії Т;
задається множина R1, …, Rm відношень між формулами, які називаються правилами виведення.
Означення 5. Якщо формула А і формули A1, …, Aj знаходяться в деякому відношенні Ri, то А є безпосереднім висновком із формул A1, …, Aj, сформульованим за правилом Ri.
Означення 6. Виведенням є будь-яка послідовність формул A1, …, An, в якій для будь-якого і формула Аі є або аксіомою, або висновком з яких-небудь попередніх формул.
Означення 7. Формула А називається теоремою теорії Т, якщо в ній існує виведення, в якому останньою формулою є А. Це виведення називається виведенням формули А. Отже, теореми аксіоматичної теорії – це формули, які можуть бути виведені за певним правилом.
Означення
8.
Формула А називається висновком із
множини формул Г, якщо існує така
послідовність формул A1,
…, An,
що An
= A
і для будь-якого і, 1
i
n,
Аі
є або аксіомою, або формулою із Г, або
висновком із деяких попередніх формул.
Ця послідовність називається виведенням
А з Г. Елементи Г називаються посилками
виведення, або гіпотезами. Цей факт
будемо позначати як Г
А (тобто А є висновком Г).
Якщо
множина Г складається із формул B1,
…, Bk,
то це можна записати як B1,
…, Bk
А.
Якщо Г – порожня множина, то в цьому
випадку писатимемо
А
(це означає, що А
- аксіома).
Розглянемо деякі властивості поняття вивідності з системи гіпотез. Нехай Г – довільна множина формул Г = {A1, …, Ak; B1, …, Bk; C1, …, Ck; D1, …, Dk}, A, B, C – довільні формули. Тоді:
Г, A A. Справді, виведення А з системи гіпотез Г, А складається з однієї формули А;
якщо Г, A, B C, то Г, B, A C.
якщо Г А і B – формула з Г, то Г, B A. Справді, як виведення А з системи гіпотез Г, B можна взяти виведення A з системи гіпотез Г;
якщо Г A, Г B і A, B C, то Г C. Нехай A1, …, An – виведення А з Г; B1, …, Bn – виведення B з Г, C1, …, Ck – виведення C з A, B. Тому C1, …, Ck є виведенням C з Г;
якщо Г, A B та Г А, то Г B (правило вилучення гіпотези, що виводиться). Нехай B1, …, Bn – виведення B з Г, A. Якщо в ньому не зустрічається формула А, то маємо виведення B з Г. Якщо в цьому виведенні зустрічається формула A, то нехай
,
…,
– усі входження формули А
у виведення. Нехай також A1,
…, Am
– виведення A
з Г. Тоді
,
…,
;
A1,
…, Am;
,
…,
;
A1,
…, Am;
,
…,
;
A1,
…, Am;
,
…,Bn
– виведення В
з Г.
