
- •Розділ 1. Математичні основи синтезу логічних схем
- •1.1. Деякі поняття і визначення булевої алгебри
- •1.2. Способи задання булевих функцій
- •1.3. Булеві функції від однієї і двох змінних
- •1.4. Принцип суперпозиції логічних функцій. Пріоритет операцій
- •1.5. Аксіоми та закони булевої алгебри
- •Аксіоми кон’юнкції, диз’юнкції і заперечення:
- •1.7. Аксіоми та закони алгебри Жегалкіна
- •1. Комутативний закон
- •2. Сполучний закон
- •3. Розподільний закон по відношенню до додавання за модулем 2
- •1.8. Аксіоми та закони для функцій Шеффера та Пірса
- •1.9. Аналітичне подання булевих функцій
- •1.10. Класи булевих функцій. Теорема про повноту
- •1.11. Розвинення логічних функцій за змінними
- •1.12. Зв’язок між дднф і дкнф. Канонічні нормальні форми
1.11. Розвинення логічних функцій за змінними
Нехай
маємо деякі двійкові змінні
та
:
.
Введемо
позначення
.
Тоді змінну у прямому або інверсному вигляді можна задати як деякий вираз вигляду
при цьому справедлива рівність
.
(1)
Доведемо
справедливість формули (1).
Дійсно, нехай
тоді згідно з формулою (1)
маємо:
.
Аналогічно,
якщо
,
то
.
Твердження.
Вираз
дорівнює одиниці лише тоді, коли
.
Справді,
нехай
або
.
Тоді згідно з формулою (1) маємо:
або
.
Виходячи
з наведеного твердження, можна показати,
що кон’юнкція вигляду
,
де
деякий двійковий набір, дорівнює одиниці,
лише при умові, що
.
Диз’юнктивне розвинення. Користуючись розглянутими виразами, можна довести наступну теорему.
Теорема. Будь-яку функцію алгебри логіки можна подати у вигляді
,
(2)
де
– символ узагальненої диз’юнкції на
множині двійкових наборів
,
кількість яких дорівнює
:
Формула (2) називається диз’юнктивним розвиненням функції алгебри логіки за k змінними.
Наслідок
1. Якщо
,
то функцію алгебри логіки можна подати
у вигляді
. (3)
Перевіримо
справедливість, одержаної формули
безпосередньою перевіркою. Дійсно, при
при
Таким
чином, ми одержали, що ліва частина
рівності дорівнює правій частині при
всіх значеннях змінної
.
Наслідок
2. Якщо
,
то функцію алгебри логіки можна подати
у вигляді
(4)
Наслідок
3. Якщо
,
то функцію алгебри логіки можна подати
у вигляді
.
(5)
Оскільки в формулі (5) логічне сумування здійснюється за всіма наборами, на яких функція дорівнює одиниці, то вона є не що інше як ДДНФ функції алгебри логіки, яку, як відомо, можна подати у вигляді
, (6)
де
– мінтерми функції
.
Кон’юнктивне
розвинення.
Оскільки формула диз’юнктивного
розвинення (2) містить тільки операції
,
то застосувавши до неї принцип двоїстості,
можемо одержати двоїсте зображення,
яке називається кон’юнктивним
розвиненням функції
за k
змінними,
яке
має вигляд:
,
(7)
З
формули (7)
можна одержати формули кон’юнктивного
розвинення, аналогічні до формул
диз’юнктивного розвинення для однієї,
двох і більше змінних. Зокрема, формули
для
,
і
мають вигляд:
, (8)
(9)
.
(10)
В формулі (10) логічне множення здійснюється за всіма наборами, на яких функція дорівнює нулю, тобто за всіма макстермами, тому вона є не що інше як ДКНФ, яку можна подати у вигляді
, (11)
де
– макстерми функції
.
Приклад
11.
Одержати диз’юнктивне розвинення
функції
за: 1) змінною
;
2) змінними
і
;
3) всіма змінними.
Розв’язання. За наслідком 1:
2) Для одержання потрібного розкладу скористаємось наслідком 2, для чого обчислимо:
;
;
;
.
Отже,
3) Для одержання потрібного розкладу скористаємось наслідком 3, для чого обчислимо:
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
.
Таким чином,
Приклад
12.
Одержати кон’юнктивне розвинення
функції
за: 1) змінною
;
2) змінними
і
;
3) всіма змінними.
Розв’язання. 1) Для одержання розкладу за однією змінною , скористаємось формулою (7)
2) Для одержання потрібного розкладу скористаємось формулою (8), для чого обчислимо:
;
;
;
.
Отже,
.
2) Для одержання потрібного розкладу скористаємось формулою (9), для чого обчислимо:
;
;
;
;
;
;
;
.
Отже,
.