- •6. Основные законы алгебры логики и преобразования логических функций
- •6.1. Основные законы алгебры логики
- •(Булевой алгебры логических функций)
- •6.2. Равносильные преобразования. Упрощение формул алгебры логики
- •6.3. Преобразование форм представления логических функций
- •6.4. Представление логической функции в виде полинома Жегалкина
- •6.5. Булева производная
6.2. Равносильные преобразования. Упрощение формул алгебры логики
Равносильные преобразования - это замена одной формулы другой, равносильной формулой. Если в равносильные формулы всюду вместо какой-нибудь переменной подставить одну и ту же формулу, то вновь полученные формулы также окажутся равносильными.
Под упрощением формулы будем понимать равносильные преобразования, приводящие к формуле, содержащей меньшее числа переменных, чем исходная. Такие преобразования формул логики (логических функций) необходимы при синтезе, анализе, контроле дискретных устройств, а в последнее время - в системах искусственного интеллекта (логического вывода).
Мощным аппаратом для таких равносильных преобразований помимо рассмотренных законов алгебры логики являются так называемые основные формулы равносильных преобразований, полученные с использованием этих законов.
Пусть
- некоторая переменная, причем символ~означает, что неважно, инверсная они
или нет, т.е.
Î{а,
};
тогда
Î{
,а}.
Пустьf[(
,
),
,
...
]- некоторая функция, зависящая как от
переменной х и ее инверсии
,
так и от других переменных
,
...
.
Под одноименностью будем понимать и
соответствие знаков инверсии (т.е.
одновременное наличие или отсутствие).
Тогда, если переменная
находится в конъюнкции с некоторой
функцией, зависящей от данной переменной
и от других переменных, то в этой функции
все одноименные
переменные заменяются на константу 1,
а все переменные
,
инверсные одноименной, - на константу
0. Сама же переменная перед функцией
остается без изменения. Таким образом,
×f[(
,
),
,
...
]=
×f[(1,0),
,
...
].
Такая
запись означает, что
х×f[(х,
),
,
...
]=х×f[(1,0),
,
...
];

×f[(х,
),
,
...
]=
×f[(0,1),
,
...
].
Условно замену переменных на константу в функции fобозначаем стрелками.
Примеры:
f1(авс)=а(вÚа)(
Úс)=а(вÚ1)(0Úа)=ас;

f2(авс)=
(вÚа)(
Úс)=
(вÚ0)(1Úс)=
×в.
Для облегчения запоминания рекомендуется
мнемоническое правило. Представим
формулу равносильного преобразования
относительно конъюнкции из вида
переключательной схемы, в которой
конъюнкции
и функцииfсоответствует их последовательное
соединение. Такое соединение напоминает
символ 1 (рис.6.1). Для простоты на рис.6.1
не указаны переменные функцииf.
Это значит, что одноименные переменные
вfзаменяются на константу 1. Соответственно
переменные
вfзаменяются на константу 0.

Рис.6.1. Иллюстрация мнемонического правила
для формулы равносильных преобразований
относительно конъюнкции
Рассмотрим
формулу равносильных преобразований
относительно дизъюнкции. Если переменная
логически складывается с функцией,
зависящей от данной переменной и от
других переменных, то в этой функции
все одноименные
переменные заменяются на константу 0,
а все переменные
,
инверсные одноименной, заменяются на
константу 1. Сама же переменная, логически
складываемая с функцией, остается без
изменения:
Úf[(
,
),
,
...
]=
Úf[(0,1),
,
...
].
Это
означает, что
хÚf[(х,
),
,
...
]=хÚf[(0,1),
,
...
];

Úf[(х,
),
,
...
]=
Úf[(1,0),
,
...
].
Здесь также замена переменных на константы в функции fусловно показана стрелками.
Примеры:
f(авс)=аÚ(вÚа)(
Úс)=аÚ![]()
=аÚв;
f(авс)=авÚ(
Ú
)(
Ú
).
В
этой функции в явном виде нет отдельной
переменной (
),
однако нетрудно заметить, что ав=(
Ú
).
Поэтому обозначим ав, например, х:
f(асх)=хÚ
(
Ú
)=хÚ
Ú
.
Отсюда
f(авс)=авÚ
Úс=1×вÚ
Úс=
ÚвÚс.
Имеется соответствующее мнемоническое
правило. Представим формулу равносильного
преобразования относительно дизъюнкции
в виде релейной структуры, в которой
дизъюнкции
и функцииfсоответствует их параллельное соединение.
Такое соединение напоминает символ 0
(рис.6.2). Это значит, что одноименные
переменные
вfзаменяются на константу 0. Соответственно
переменные
вfзаменяются на константу 1.

Рис.6.2. Иллюстрация мнемонического правила
для формулы равносильных преобразований
относительно дизъюнкции
Основные формулы равносильных преобразований можно доказать методом подстановки в них вместо переменной х ее возможных значений 0, 1 и сравнения правой и левой частей уравнения.
Докажем, например, формулу
хÚf[(х,
),
...
]=хÚf[(0,1),
...
].
Пусть х=0; тогда левая часть формулы
0Úf[(0,1),
...
],
а правая
0Úf[(0,1),
...
],
т.е. равенство справедливо.
Пусть х=1; тогда левая часть формулы
1Úf[(1,0),
...
]-1,
а правая часть формулы
1Úf[(0,1),
...
]=1.
Равенство также справедливо, несмотря на отличия в функции f.
Аналогично доказывается формула для конъюнкции, например
х×f[(х,
),
...
]=х×f[(1,0),
...
].
При х=0
0×f[(0,1),
...
]=0×f[(1,0),
...
]=0,
равенство справедливо, несмотря на отличия в функции f.
При х=1
1×f[(1,0),
...
]=1×f[(1,0),
...
],
равенство также справедливо.
Основные формулы равносильных преобразований имеют следствия, которые позволяют разложить логическую функцию по любой переменной.
Следствие 1:
f[(x,
),
,
...
]=x×f[(1,0),
,
...
]Ú
f[(0,1),
,
...
].
Следствие может быть доказано путем
конъюнкции функции с тождественно
истинной формулой хÚ
и последующего применения формул
равносильного преобразования:
f(хÚ
)=fхÚf
=xf[(1,0),
,
...
]Ú
f[(0,1),
,
...
].
(Это известное разложение Шеннона).
Пример 1. Разложить логическую функцию по переменной в:
f(авсd)=а
Ú(
Úв)с[а
Úd(
Úв)]=
=в{а×0Ú(
Ú1)×с[а×0Úd(
Ú1)]}Ú
{а×1Ú(
Ú0)×с[а×1Úd(
Ú0)]}=
=в{0Ú1×с[0Úd×1]}Ú
{аÚ
×с[аÚd
]}=всdÚ
(аÚсd).
Следствие 2:
f[(x,
),
,
...
]={xÚf[(0,1),
,
...
]}
{
Úf[(1,0),
,
...
]}.
Доказательство:
f=fÚ0=fÚх×
=(fÚх)(fÚ
)=
={xÚf[(0,1),
,
...
]}{
Úf[(1,0),
,
...
]}.
Пример 2: Разложим ту же функцию f(авсd) (пример 1) по переменной а с помощью следствия 2:
f(авсd)={аÚ0×
Ú(1Úв)×с[0×
Úd(1Úв)]}×
×{
Ú1×
Ú(0Úв)×с[1×
Úd(0Úв)]}=
={аÚсd}{
Ú
Úвс[
Údв]}=(аÚсd)(
Ú
Úсd).
Указанные следствия могут быть применены для преобразования структур релейно-контактных автоматов, когда необходимо привести их к какому-либо одному переключающему контакту или когда исходная структура не может быть сразу записана в аналитической форме.
