
- •Логічні операції та логічні змінні
- •2. Булеві функції
- •3. Булеві функції однієї та двох змінних
- •Практичне заняття 1
- •4. Системи базових (елементарних) операцій
- •Булеві функції багатьох змінних
- •Практичне заняття 2
- •6. Булева двохелементна алгебра. Алгебра логіки
- •Практичне заняття 3
- •7. Алгебра Жегалкіна
- •Практичне заняття 4
- •8. Диз’юнктивні нормальні форми (днф) булевих функцій
- •Практичне заняття 5
- •9. Досконала диз’юнктивна нормальна форма булевої функції
- •Практичне заняття 6
- •10. Кон’юнктивні нормальні форми (кнф) булевих функцій
- •Практичне заняття 7.
- •11. Досконала кон’юнктивна нормальна форма булевих функцій
- •Практичне заняття 8.
- •12. Двоїстість булевих функцій
- •Практичне заняття 9.
- •13. Поліном Жегалкіна. Лінійні функції
- •Практичне заняття 10.
- •14. Функції, що зберігають нуль та функції, що зберігають одиницю. Монотонні функції
- •Практичне заняття 11.
- •15. Класи Поста. Теорема Поста
- •Практичне заняття 12
- •16. Мінімізація булевих функцій
- •16.1 Постановка задачі. Основні поняття
- •16.2. Мінімізація булевих функцій методом карт Карно
- •Практичне заняття 13
- •16.3. Мінімізація на множині кнф
- •Практичне заняття 14
- •16.4. Мінімізація функцій методом Квайна – Мак-Класкі
Практичне заняття 8.
12. Двоїстість булевих функцій
Булева функція
називається двоїстою до функції
,
якщо
.
Відношення двоїстості булевих функцій є симетричним
.
Булева функція для якої
називається само
двоїстою.
Побудуємо таблицю істинності
для функції
та
враховуючи, що
,
і т. д.
З останньої таблиці можна вивести
Правило побудови таблиці істинності двоїстої функції. Щоб побудувати таблицю істинності двоїстої функції, необхідно:
-
побудувати таблицю істинності заданої функції;
-
кожне її значення інверсувати
;
-
одержаний рядок записати у зворотному порядку.
Приклад.
Відомо, що булева функція
на словах 001, 011, 111. Знайти двоїсту функцію
Виконання. Випишемо таблицю істинності заданої функції, інвертуємо її значення на всіх словах і одержану послідовність запишемо в зворотному порядку
Таблиця істинності для само двоїстої функції двох змінних має вигляд
Як видно з цієї таблиці, кожне значення само двоїстої функції дорівнює значенню симетричного до нього значення (симетричність відносно прямої, яка ділить таблицю істинності навпіл). Отже за таблицею істинності завжди можна визначити, є дана функція само двоїста, чи ні.
Приклад.
Функції
та
задані таблицями відповідності.
Визначити, чи дані функції само двоїсті, чи ні.
Виконання. З
таблиці істинності видно, що кожне
значення функції
є запереченням симетричного
значення:
,
,
.
Звідси висновок: функція
– само двоїста.
Функція
не є само двоїстою оскільки
,
.
Значення само двоїстої функції
повністю визначається її значеннями
на половині слів. Всього є
слів, половина від них дорівнює
.
Таким чином кількість само двоїстих
функцій від
змінних дорівнює
.
Нехай функція задана як
суперпозиція функції
і функцій
,
тобто
.
Можна довести, що для функції
двоїста функція
має вигляд
.
Знайдемо двоїсті функції до заперечення, кон’юнкції, диз’юнкції, константи 0 та константи 1.
-
,
-
,
.
-
,
.
-
,
.
-
,
.
Отже:
-
кон’юнкція двоїста диз’юнкції, і навпаки;
-
константа 0 двоїста константі 1, і навпаки;
-
заперечення само двоїста функція.
Звідси випливає принцип двоїстості (принцип дуальності). Для того, щоб одержати двоїсту функцію до булевої функції, заданої формулою алгебри логіки, необхідно у формулі замінити диз’юнкції на кон’юнкції, і навпаки, 0 на 1, і навпаки і застосувати круглі дужки, де необхідно для збереження первинного порядку виконання операцій.
Приклад.
Побудувати двоїсту функцію до функції
.
Виконання. В формулі виконаємо необхідні заміни:
.
Операція диз’юнкції має виконуватися
раніше, ніж перша операція кон’юнкції,
тому використовуємо дужки.
.
В підсумку одержуємо двоїсту функцію
.
Практичне заняття 9.
13. Поліном Жегалкіна. Лінійні функції
Поліномом Жегалкіна називається скінчена сума за модулем 2 попарно різних елементарних кон'юнкцій.
Кількість змінних, що входять до елементарної кон'юнкції, називають рангом елементарної кон'юнкції.
Кількість попарно різних елементарних кон'юнкцій полінома Жегалкіна називають довжиною полінома.
Теорема.
Будь-яка булева функція
може бути подана єдиним
поліномом Жегалкіна.
Алгоритм побудови поліному Жегалкіна булевої функції, яка задано формулою алгебри Жегалкіна:
Розкрити дужки у заданій формулі. Для цього скористатись дистрибутивністю кон'юнкції відносно суми за модулем 2 (8.5).
Спростувати вираз, використовуючи формули (8.1)-(8.4).
Приклад 1.
Записати поліном Жегалкіна для імплікації
().
Виконання.
.
Приклад 2. Записати поліном Жегалкіна для еквівалентності (~).
.
Булева функція називається лінійною, якщо вона може бути подана поліном Жегалкіна, що не містить кон'юнкцій змінних.
Приклад 3.
-
Заперечення
– лінійна функція, оскільки її поліном Жегалкіна
не містить кон'юнкцій змінних.
-
Диз'юнкція
– нелінійна функція, оскільки її поліном Жегалкіна
містить кон'юнкцію змінних х і у.
-
Імплікація
– нелінійна функція, оскільки її поліном Жегалкіна
(приклад 1) містить кон'юнкцію змінних х і у.
-
Еквівалентність
є лінійною функцією, оскільки її поліном Жегалкіна
(приклад 2) не містить кон'юнкцій змінних.
Приклад 4.
Дослідити на лінійність функцію
.
Виконання. Побудуємо поліном Жегалкіна:
Поліном Жегалкіна містить
кон'юнкції змінних і тому функція
є нелінійною функцією.
На єдності полінома Жегалкіна для будь-якої булевої функції заснований метод невизначених коефіцієнтів знаходження полінома Жегалкіна. Суть цього методу зрозуміла з прикладу.
Приклад 5.
Побудувати поліном Жегалкіна для
імплікації
,
використовуючи метод невизначених
коефіцієнтів.
Виконання. Запишемо поліном для заданої функції у вигляді суми за модулем 2 всіх можливих елементарних кон'юнкцій змінних х і у з невизначеними коефіцієнтами:
, (*)
де коефіцієнти
приймають
значення з множини
і
визначають присутність або відсутність
елементарних кон’юнкцій у поліномі.
Обчислимо значення функції на всіх словах з використанням (*):
;
;
;
.
Отже
.