
- •Часть II
- •Алгебра двузначной логики
- •Функции алгебры логики
- •Способы задания функций алгебры логики
- •Эквивалентность функций
- •Реализация функций формулами
- •Эквивалентность формул и тождества
- •Упрощение формул
- •Двойственные функции и принцип двойственности
- •Применение принципа двойственности
- •Аналитическая запись функций алгебры логики
- •Аналитическое построение сднф и скнф
- •Теорема о тройке связок
- •Полные системы функций и полиномы Жегалкина
- •Замыкание систем функций алгебры логики
- •Важнейшие замкнутые классы
- •Теорема Поста о полноте
- •Минимизация булевых функций
- •Основные понятия
- •Метод неопределенных коэффициентов
- •Тупиковые днф и алгоритм наискорейшего спуска
- •Геометрическое представление функций алгебры логики
- •Аналитическое построение сокращенной днф
- •Локальные алгоритмы
- •Алгоритм Куайна
- •Диаграммы Вейча–Карно
- •Построение днф по карте Карно
- •Задачи и упражнения
- •Список литературы
- •Часть II
- •400131, Волгоград, просп. Им. В.И.Ленина, 28
- •400131, Волгоград, ул. Советская, 35
-
Применение принципа двойственности
Из принципа двойственности
следует, что если две формулы А и В
эквивалентны, то и двойственные им
формулы А* и В* также
эквивалентны, т.е. если А = В,
то и А* = В*. Это
дает возможность легко получать новые
тождества из уже имеющихся. Например,
из первого закона Де Моргана по этому
правилу получается второй закон, а
именно:
.
А из закона противоречия получается
закон исключенного третьего:
.
Из первого закона поглощения получается
второй закон: х & y x = x
(х y) & x = x
и т.д..
Пользуясь свойством
взаимности, легко записать формулу,
эквивалентную заданной и, тем самым,
получить новое тождество. Действительно,
т.к. f**=f,
т.е.
,
то для получения формулы, эквивалентной
заданной, надо записать двойственную
формулу, затем заменить в полученной
формуле все переменные символы на их
отрицание и, наконец, взять отрицание
последней формулы.
Так, например, получаются
тождества:
– закон Де Моргана, или
и
– законы взаимовыразимости связок &
и .
-
Аналитическая запись функций алгебры логики
Выше было показано, что всякая формула реализует некоторую истинностную функцию. Эквивалентные формулы реализуют одну и ту же функцию. Т.е. по формуле всегда можно найти соответствующую ей функцию. Теперь рассмотрим вопрос о том, как записать функцию алгебры логики в виде формулы, т.е. рассмотрим в некотором смысле обратную задачу.
Для этого введем
параметризацию, позволяющую
охарактеризовать значение переменной
в «энке». Обозначим
,
где параметр
равен нулю или единице. Таким образом,
.
Т.е. если на наборе значение переменной
х равно 0, то будем писать «
»,
а в случае, когда соответствующее
значение равно 1, то будем записывать
просто «х». Заметим, что х=1
тогда и только тогда, когда х=.
-
о разложении функции по переменным
Каждую истинностную
функцию от n аргументов
f(x1,x2,…,xn)
при любом m (1 m n)
можно представить формулой вида: (1) ,
где дизъюнкция берется по всевозможным
наборам значений переменных х1,…,хm.
Представление функции в виде (1) называется разложением функции по m переменным х1,…,хm.
Доказательство:
Рассмотрим произвольный
набор значений переменных (1, 2,…, n).
Покажем, что левая и правая части (1)
имеют на этом наборе одинаковые значения.
Значение левой части равно f(1, 2,…, n).
Вычислим значение правой части:
.
Ненулевые члены в дизъюнкции получаются
только в том случае, когда набор
1,2,…,m
совпадает с набором 1,2,…,m,
т.е. в последнем выражении остается
только одно ненулевое слагаемое:
.
И т.к.
,
то это слагаемое равно f(1, 2,…, n).
Таким образом, значения левой и правой
части (1) совпадают на произвольном
наборе (1, 2,…, n).
Следствия:
1) О разложении по одной переменной.
Если в выражении (1)
m=1, то
f(х1, х2,…, хn) = xn& f(х1, х2,…, 1)
& f(х1, х2,…, 0);
2) О разложении по всем n переменным или совершенные дизъюнктивные нормальные формы (СДНФ).
Если в выражении (1) m=n, то
.
Если f(х1, х2,…, хn)
не равна тождественно нулю, то в последнюю
дизъюнкцию будут давать вклад только
те компоненты, где f(1, 2,…, n)=1,
поэтому
.
Это разложение называется совершенной
дизъюнктивной нормальной формой (СДНФ).
И, как следует из её определения, для
построения СДНФ в таблице истинности
функции f надо
рассматривать лишь те строки, где
функция равна единице. Для каждой такой
строки записывается элементарная
конъюнкция, состоящая из всех переменных
функции. При этом переменная входит в
конъюнкцию с отрицанием, если в
рассматриваемой строке её значение
равно нулю, и без отрицания – в противном
случае.
3) Совершенные конъюнктивные нормальные формы (СКНФ).
Совершенная дизъюнктивная
нормальная форма есть выражение вида
– сумма произведений. Используя принцип
двойственности для построения
эквивалентных формул, можно получить
разложение вида
– произведение сумм, которое носит
название совершенной конъюнктивной
нормальной формы. Так как
,
то для
,
но
.
Поэтому
.
Заметим, что при построении последней
формулы участвуют лишь такие наборы
1,2,…,n,
на которых f(1,2,…,n)=1.
Тогда в построении формулы для
будут участвовать наборы 1,2,…,n,
где
,
или f(1,…,n)=0.
Таким образом, если
f(х1,…,хn) 1,
то
– это и есть СКНФ. И, как следует из её
определения, для построения СКНФ в
таблице истинности функции f
надо рассматривать лишь те строки, где
функция равна нулю. Для каждой такой
строки записывается элементарная
дизъюнкция, состоящая из всех переменных
функции. При этом переменная входит в
дизъюнкцию с отрицанием, если в
рассматриваемой строке её значение
равно единице, и без отрицания – в
противном случае.
Примеры построения СДНФ и СКНФ.
x |
у |
f(x,у) |
СДНФ |
СКНФ |
|
0 |
0 |
1 |
|
|
|
0 |
1 |
1 |
|
|
|
1 |
0 |
0 |
|
|
|
1 |
1 |
1 |
x & y |
|
|
Таблица 14 |
|
|
|



x |
у |
f(x,у) |
СДНФ |
СКНФ |
|
0 |
0 |
1 |
|
|
|
0 |
1 |
0 |
|
|
|
1 |
0 |
0 |
|
|
|
1 |
1 |
1 |
x & y |
|
|
Таблица 15 |
|
|
|



Таким образом, построение СДНФ и СКНФ – это ещё одна возможность записать тождество.