- •Буковинський університет
- •Дискретна математика
- •Навчально-методичний посібник
- •Чернівці
- •Задачі та вправи 12
- •Задачі та вправи 28
- •Операції над множинами
- •Тема „Алгебра лінійних множин”
- •Способи задання множин
- •Порожня множина ()
- •Універсум (u)
- •Множина підмножин
- •Алгебра множин
- •Узагальнення операцій над множинами
- •Задачі до теми „Алгебра лінійних множин”
- •Тема „Відношення і функції”
- •Окремі випадки відношень
- •Властивості композицій:
- •Властивості відношень
- •Основні властивості відображень
- •Відношення еквівалентності
- •Відношення порядку
- •Відношення рівнопотужності
- •Властивості скінченних множин
- •Властивості зчисленних множин
- •Задачі до теми „Відношення і функції”
- •Тема „Булеві функції”
- •Способи задання булевих функцій
- •Булеві функції однієї змінної
- •Область визначення булевих функцій
- •Елементарні функції алгебри логіки
- •Булевий простір
- •Властивості функцій
- •Деякі операції над висловленнями
- •Формули в алгебрі логіки
- •Основні тотожності
- •Правила
- •Принцип двоїстості
- •Типи булевих функцій
- •Канонічні форми перемикальних функцій
- •Досконалі диз’юнктивні нормальні форми перемикальних функцій
- •Досконалі кон’юнктивні нормальні форми перемикальних функцій
- •Властивості досконалих форм
- •Скорочена диз’юнктивна нормальна форма перемикальних функцій
- •Утворення скороченої диз’юнктивної нормальної форми методом Квайна
- •Метод Квайна-Маккласкі
- •Утворення мінімальних кон’юктивних нормальних форм
- •Алгоритм утворення мінімальної кнф
- •Геометричне подання функцій алгебри логіки
- •Спрощення булевих функцій
- •Задачі до теми „Способи задання булевих функцій. Операція суперпозиції”
- •Задачі до теми „Істотні та фіктивні змінні”
- •Задачі до теми „Спеціальні види формул. Диз’юнктивні і кон’юнктивні нормальні форми. Поліном Жегалкіна”
- •Задачі до теми „Замкнуті класи і повнота системи булевих функцій” Важливіші замкнуті класи булевих функцій
- •Задачі до теми „Класи функцій, що зберігають константи”
- •Задачі до теми „Двоїстість і клас самодвоїстих функцій”
- •Задачі до теми „Монотонність і клас монотонних функцій”
- •Повнота систем булевих функцій
- •Тема „Рекурсивні функції”
- •Частково-рекурсивні функції
- •Тема „Скінченні автомати. Машина Тьюринга”
- •Машина Тьюринга
- •Тема „Основні поняття і властивості алгоритмів”
- •Основні вимоги до алгоритмів
- •Основні властивості алгоритму
- •Тема „Формальні системи. Алгебра висловлювань”
- •Аксіоматичний спосіб опису висловлювань
- •Властивості числення висловлювань
- •Задачі до теми „Алгебра висловлювань”
- •Тема „Логіка і числення предикатів”
- •Рівносильність формул
- •Задачі до теми „Логіка і числення предикатів”
- •Тема „Алгебри. Типи алгебр. Алгебраїчні системи”
- •Гомоморфізм та ізоморфізм алгебри
- •Типи алгебр
- •Алгебраїчні системи
- •Тема „Елементи комбінаторики”
- •Формула включень і виключень
- •Рекурентні співвідношення
- •Основні властивості кількості сполук
- •Біном Ньютона
- •Властивості розкладу бінома Ньютона і біномних коефіцієнтів
- •Поліномні твірні функції
- •Розміщення і функціональні відображення
- •Розбиття
- •Поліномна формула
- •Задачі до теми „Комбінаторика”
- •Тема „Графи”
- •Задання графа за допомогою матриці інцидентності та списку ребер
- •Задання графа за допомогою матриці суміжності
- •Локальні степені вершин графа
- •Частини графа, суграфи та підграфи
- •Операції з частинами графа
- •Маршрути, ланцюги та цикли
- •Цикломатичне число графа
- •Задачі до теми „Графи”
- •Дискретна математика
- •Література
- •Навчальне видання Пукальський Іван Дмитрович,
- •Лусте Ірина Петрівна,
Скорочена диз’юнктивна нормальна форма перемикальних функцій
Уведемо поняття накриття для перемикальних функцій.
Нехай в деякому наборі аргументів = (1, …, n) функція f набуває значення a1, а функція в цьому самому наборі – значення a2. Це означає, що функція f у заданому наборі своїм значенням a1 накриває значення a2.
Досконала ДНФ (диз’юнктивна нормальна форма) будується так, що кожна одиниця перемикальної функції накривається одиницею тільки одного добутку, що є конституентою одиниці. Тому кількість конституент одиниці, які входять до ДДНФ, дорівнює кількості наборів, у яких функція дорівнює одиниці.
Ідея побудови скороченої ДНФ полягає в тому, що в неї включаються елементарні добутки, які накривають своїми одиницями не одну, а кілька одиниць заданої функції.
Якщо деяка перемикальна функція (в окремому випадку – елементарний добуток) дорівнює нулю в тих наборах, у яких дорівнює нулю інша функція f, то вважають, що функція входить у функцію f, тобто функція входить у функцію f тоді, коли вона накриває нулями всі нулі функції f, а одиниці функції можуть бути накриті як нулями, так і одиницями функції . Отже, функція має не меншу кількість нулів, ніж функція f.
Умова входження записується як f. Константа 0 входить у будь-яку перемикальну функцію, а в константу 1 входять усі функції.
Функцію , що входить у задану функцію f, називають її імплікантою.
Простими імплікантами перемикальної функції називають терми – елементарні добутки, що самі входять у задану функцію, але жодна власна частина їх у функцію f не входить.
Власною
частиною
імпліканти називають терм-добуток,
здобутий вилученням із нього одного
або кількох співмножників. Наприклад,
добуток x
z
має власні частини
x
,
z,
xz,
x,
,
z.
Якщо деякий елементарний добуток-терм входить у задану функцію, то при додаванні до нього будь-яких співмножників новий добуток також входитиме в цю функцію, тому що він стає нулем разом із початковим добутком.
Наприклад, для функції
f(x,
y,
z)
=
yz
+ x
+ x
z
+ x
простими імплікантами будуть добутки yz й x , а x та x z не є ними, оскільки їхня власна частина x входить у задану функцію. Правильна така теорема.
Теорема. Будь-яка перемикальна функція дорівнює диз’юнкції всіх своїх простих імплікант.
Диз’юнкція всіх простих імплікант називається скороченою ДНФ перемикальної функції.
Утворення скороченої диз’юнктивної нормальної форми методом Квайна
При мінімізації за методом Квайна передбачається, що початкова функція задається в ДДНФ. Використовуються перетворення ДДНФ за допомогою операцій неповного склеювання і поглинання.
В операції неповного склеювання
xy + x = x(y + ) = x
два члени xy та x склеюються за змінною y.
Операція неповного склеювання записується так:
x + xy + x = xy + x .
В операції поглинання
x + xy = x(1 + y) = x
член xy поглинається членом x. Правильна така теорема.
Теорема Квайна. Якщо в ДДНФ перемикальної функції виконати всі операції неповного склеювання, а потім всі операції поглинання, то дістанемо скорочену ДНФ, тобто диз’юнкцію всіх простих імплікант.
За методом Квайна необхідно виконати такі дії:
провести в ДДНФ функції f(x1, …, xn) усі можливі операції неводного склеювання конституент одиниці, внаслідок чого утворяться добутки-мінтерми (n – 1 )-го рангу. Після цього виконати операцію поглинання;
провести можливі склеювання членів (n – 1)-го рангу, потім поглинання і дістати кон’юнкцію (n – 2)-го рангу;
виконати операції склеювання членів із числом літер (n – 2)-го рангу, одержати кон’юнкцію (n – 3)-го рангу і т.д.
Приклад. Розглянемо функцію
F(x1,
x2,
x3,
x4)
=
x3x4
+
x2
+
x2
x4
+
x2x3x4
+ x1
x4
+ x1
x3x4
+ x1x2
+ x1x2
x4.
Мінтермами четвертого рангу тут є
x3x4, x2 , x2 x4, x2x3x4, x1 x4, x1 x3x4, x1x2 , x1x2 x4.
Мінтермами третього рангу служать, наприклад
x3x4, x2 , x2 x4, x2x4, x1 x4, x3x4, x2 , x1x2 , x1 x4.
Для здобуття мінтермів третього рангу заповнимо таку таблицю
|
|
x2 |
x2 x4 |
x2x3x4 |
x1 x4 |
x1 x3x4 |
x1x2 |
x1x2 x4 |
x3x4 |
1 |
|
|
x2x3 |
|
x3x4 |
|
|
x2 |
|
1 |
x2 |
|
|
|
x2 |
x2 |
x2 x4 |
|
x2 |
1 |
x2x4 |
|
|
|
x2 x4 |
x2x3x4 |
x3x4 |
|
x2x4 |
1 |
|
|
|
|
x1 x4 |
|
|
|
|
1 |
x1 x4 |
|
x1 x4 |
x1 x3x4 |
x3x4 |
|
|
|
x1 x4 |
1 |
|
|
x1x2 |
|
x2 |
|
|
|
|
1 |
x1x2 |
x1x2 x4 |
|
x2 |
x2 x4 |
|
x1 x4 |
|
x1x2 |
1 |
x3x4 |
|
|
|
|
|
|
|
|
x2x4 |
|
|
|
|
|
|
|
|
x1 x4 |
|
|
|
|
|
|
|
|
x3x4 |
|
|
|
|
|
|
|
|
x1 x4 |
|
|
|
|
|
|
|
|
x2 |
|
|
|
|
|
|
|
|
Оскільки подальше склеювання неможливе, етап визначення імплікант закінчено. Простими імплікантами є такі мінтерми: x3x4, x2x4, x1 x4, x3x4, x1 x4, x2 .
Розставлення міток. На етапі розставлення міток складають таблицю, кількість рядів якої дорівнює кількості знайдених первинних імплікант функції, що мінімізується. Кількість стовпців збігається з кількістю мінтермів ДДНФ. Якщо в деякий мінтерм ДДНФ входить яка-небудь з первинних імплікант, то на перетині відповідного стовпця і рядка ставлять мітку.
Визначення
суттєвих імплікант.
Якщо в одному із стовпців складеної
таблиці існує тільки одна мітка, то
первинна імпліканта, що є у відповідному
рядку, називається суттєвою.
Вона не може бути вилучена з правої
частини початкового рівняння, оскільки
без неї не буде покриття всієї множини
мінтермів заданої функції. Тому з таблиці
міток виключають рядки, які відповідають
суттєвим імплікантам, і стовпці мінтермів,
що покриваються ними. Для функції, що
розглядається, суттєвою імплікантою є
x2
.
Вона покриває мінтерми
x2
,
x2
x4,
x1x2
,
x1x2
x4.
При переході до наступного етапу ці мінтерми можуть бути викреслені.
Закреслювання зайвих стовпців. Якщо в одержаній після попереднього етапу таблиці
|
x3x4 |
x2 x3x4 |
x1 x4 |
x1 x3x4 |
x3x4 |
|
|
|
|
x3x4 |
|
|
|
|
x2x4 |
|
|
|
|
x1 x4 |
|
|
|
|
x1 x4 |
|
|
|
|
є два стовпці з мітками в однакових рядках, то один із них закреслюється. Це можна зробити завдяки тому, що покриття стовпця, що залишився, здійснюється покриттям виключеного мінтерма. У наведеній таблиці однакових стовпців немає.
Закреслювання зайвих первинних імплікант. Якщо після закреслювання деяких зайвих стовпців на попередньому етапі в таблиці з’являються рядки, в яких немає жодної мітки, то первинні імпліканти, які відповідають цим рядкам, виключаються, оскільки вони не покривають ті мінтерми, що залишилися.
Вибір мінімального покриття максимальними інтервалами. В одержаній таблиці вибирають таку сукупність первинних імплікант, яка виключає мітки у всіх стовпцях (принаймні одну мітку в кожному стовпці). При кількох можливих варіантах такого вибору перевага віддається варіанту покриття з мінімальним сумарним числом літер у простих імплікантах, які створюють покриття.
Для функції, що розглядається, вибирають покриття з імплікант x3x4 та x1 x4, оскільки вони спільно покривають усі ті мінтерми, які залишилися після закреслювання зайвих стовпців. Мінімальна ДНФ для цієї функції має такий вигляд:
f(x1, x2, x3) = x3x4 + x1 x4 + x2 .
