СОДЕРЖАНИЕ
1. Полные системы булевых функций
2. Сокращенные и тупиковые дизъюнктивные нормальные формы
3. Алгоритм Квайна и Мак-Класки минимизации булевой функции
4. Геометрическое представление логических функций
5. Геометрический метод минимизации булевых функций
6. Минимизация булевой функции с помощью карты Карно
7. Построение оптимальных контактно-релейных схем
Упражнения
Библиографический список
1. Полные системы булевых функций
Напомним, что булевой функцией называют функцию
, у которой все независимые аргументы и сама функция являются логическими переменными, принимающими только два значения: 0 и 1. Эти функции могут быть заданы аналитически в виде пропозициональной формулы (ПФ) геометрически или с помощью таблиц истинности. Например, все элементарные булевы функции двух переменных представлены таблицей истинности 1.Таблица 1
№ | X1= 0 X2= 0 | 0 1 | 1 0 | 1 1 | fk (X1, X2) |
1 | 0 | 0 | 0 | 0 | f1 = 0 |
2 | 0 | 0 | 0 | 1 | |
3 | 0 | 0 | 1 | 0 | |
4 | 0 | 0 | 1 | 1 | |
5 | 0 | 1 | 0 | 0 | |
6 | 0 | 1 | 0 | 1 | |
7 | 0 | 1 | 1 | 0 | |
8 | 0 | 1 | 1 | 1 | |
9 | 1 | 0 | 0 | 0 | |
10 | 1 | 0 | 0 | 1 | |
11 | 1 | 0 | 1 | 0 | |
12 | 1 | 0 | 1 | 1 | |
13 | 1 | 1 | 0 | 0 | |
14 | 1 | 1 | 0 | 1 | |
15 | 1 | 1 | 1 | 0 | |
16 | 1 | 1 | 1 | 1 |
Функция f1 называется нулевой; f16 – единичной; f2 – конъюнкцией; f8 – дизъюнкцией; f11 и f13 – отрицаниями Х1 и Х2 соответственно; f12 и f14 – импликациями; f3 и f5 – коимпликациями; f10 – эквиваленцией; f7 – сложением по модулю два или разделительной дизъюнкцией; f9 – стрелкой Пирса (функцией Вебба); f15 – штрихом (функцией) Шеффера.
Функцию, полученную из элементарных путем перенумерации аргументов и подстановки вместо аргументов в некоторых других булевых функций, называют суперпозицией функций. Нетрудно убедиться, что любая булева функция от n аргументов является суперпозицией элементарных функций, заданных табл. 1. Например, функция
является суперпозицией элементарных функций: отрицания, дизъюнкции, конъюнкции и импликации.
Система булевых функций называется полной, если любая булева функция является суперпозицией этих функций.
В последнем столбце таблицы 1 показано, что все элементарные функции двух переменных, следовательно, и любые булевы функции, могут быть записаны с помощью трех логических операций
. Поэтому справедлива следующая теоремаТеорема. Отрицание, дизъюнкция и конъюнкция образуют полную систему булевых функций
Этот набор булевых функций наиболее удобен для построения сложных булевых функций и чаще всего используется в приложениях, однако он не является минимальным и может быть еще сокращен.
Полная система булевых функций называется базисом, если она перестает быть полной при удалении хотя бы одной из этих функций.
Согласно этому определению система булевых функций
не является базисом. Действительно, применяя законы де-Моргана , ,конъюнкцию в булевой функции можно заменить на дизъюнкцию и отрицание, а дизъюнкцию – на конъюнкцию и отрицание. Следовательно, отрицание и дизъюнкция (отрицание и конъюнкция) также образуют полную систему булевых функций. Нетрудно убедиться, что наборы
и являются базисными, так как их дальнейшее сокращение без нарушения полноты системы невозможно.Для проверки полноты заданной системы булевых функций может быть использовано следующее очевидное утверждение:
Если система
- полная и любая из функций f1, f2,...,fm может быть выражена с помощью суперпозиций через функции g1, g2,…, gk, то система также полная.Пример 1. Доказать полноту системы
.Для доказательства воспользуемся системой
, полнота которой уже доказана, эти функции можно выразить через g1 и g2 по формулам:f1=g1,
,следовательно система функций
является полной.В общем случае для проверки полноты системы булевых функций используется критерий полноты Поста. Прежде чем его сформулировать, напомним некоторые определения [3].
Функция f = (Х1,Х2,...,Хn) называется функцией, сохраняющей константу 0 (1 ), если
f(0,0, ...0) = 0, (f(l, 1....1) = 1).
Функция f (X1,X2,...,Xn) называется самодвойственной, если
f (X1,X2,..., Xn) =
.Функция f (X1,X2,...,Xn) называется монотонной, если для любых двух наборов X = (X1,X2,…,Xn) и Y = (Yl, Y2,...,Yn), таких, что X
Y (для любого i Xi Yi) имеет место неравенство:f (X1,X2,..., Xn)
f (Yl, Y2,...,Yn).Функция f (X1,X2,..., Xn) называется линейной, если