
Тема 2. Булевы функции
2.1 Логические операции
Теория:
Логические формулы,
содержащие кроме переменных и скобок
только знаки функций «&,
»
- конъюнкции
(логическое И), «
»
– дизъюнкции
(логическое ИЛИ) и «–»
– отрицания
(логическое НЕ), называются булевыми.
Знак конъюнкции в формулах часто опускают
или заменяют точкой. Могут использоваться
и еще несколько логических операций:
«
»
– импликация
(логическое ЕСЛИ, ТО) и эквивалентность
«
»
– (логическое ТОГДА И ТОЛЬКО ТОГДА,
КОГДА) и др.
Действия логических операций задаются таблицами истинности:
Таблица истинности логических операций
|
|
|
|
|
|
|
|
|
0 |
1 |
|
0 |
0 |
0 |
0 |
1 |
1 |
1 |
0 |
|
0 |
1 |
0 |
1 |
1 |
0 |
|
|
|
1 |
0 |
0 |
1 |
0 |
0 |
|
|
|
1 |
1 |
1 |
1 |
1 |
1 |
Исходя из таблиц истинности, можно строить таблицы истинности для произвольных формул.
Задача 1. Построить таблицу истинности для формулы
Решение:
Будем строить
таблицу истинности последовательно в
соответствии с шагами построения формулы
.
|
|
|
|
|
|
|
0 |
0 |
0 |
1 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
2.2 Эквивалентные преобразования
Теория:
При исследовании логических формул во многих случаях требуются их корректные преобразования, гарантирующие выполнение тех или иных условий и прежде всего позволяющие получить новые формулы, эквивалентные данным, и др.
Основные эквивалентные соотношения в булевой алгебре:
1) Ассоциативность конъюнкции и дизъюнкции
а)
;
б)
.
2) Коммутативность конъюнкции и дизъюнкции
а)
;
б)
.
3) Дистрибутивность конъюнкции относительно дизъюнкции
.
4) Дистрибутивность дизъюнкции относительно конъюнкции
.
5) Идемпотентность
а)
;
б)
.
6) Закон двойного отрицания
.
7) Свойства констант 0 и 1
а)
;
б)
;
в)
;
г)
; д)
;
е)
.
8) Правила де Моргана
а)
;
б)
.
9) Закон противоречия
.
10) Закон исключенного третьего
.
Могут использоваться и некоторые другие соотношения, которые могут быть выведены из основных:
11) Поглощение
а)
; б)
.
12) Склеивание
.
13) Обобщенное склеивание
а)
;
б)
.
Задача 2. Упростить булеву формулу:
.
Решение:
Проведем следующие преобразования:
используя выражение 11 получим:
используя выражение 13,б получим:
используя выражение 3 получим:
используя выражение 10 получим:
используя выражение 7,а получим:
.
В результате преобразований получена простая дизъюнкция.
Докажем справедливость проведенного преобразования используя таблицы истинности.
Таблица истинности
|
|
|
|
|
|
|
|
|
|
|
0 |
0 |
0 |
1 |
1 |
0 |
0 |
0 |
0 |
|
0 |
0 |
0 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
|
0 |
0 |
1 |
1 |
1 |
0 |
0 |
1 |
0 |
1 |
|
1 |
1 |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
|
1 |
1 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
1 |
|
1 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
|
1 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
|
1 |
1 |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
1 |
|
1 |
Задача 3. Упростить булеву формулу:
.
Решение:
используя выражение 3 получим:
используя выражение 9 получим:
используя выражения 7,б,г получим:
используя выражение 5,а получим:
используя выражение 11 получим:
В результате преобразований получена простая конъюнкция.
Докажем справедливость проведенного преобразования составив таблицу истенности для исходного и результирующего выражений.
Таблица истинности
|
|
|
|
|
|
|
|
|
|
0 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
|
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
|
0 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
0 |
|
0 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
0 |
|
0 |
1 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
|
0 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
|
1 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
0 |
|
0 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
|
1 |
Проведенные в задачах 2 и 3 эквивалентные преобразования показывают, что за счет проведения правильных математических (булевых) выкладок можно существенно упростить логическое устройство, реализующее функцию .