В примере
, поэтому
преобразуется к
.
Это не в примере, это в булевой алгебре работает для любого примера.
Если у нас есть булева функция
, и другая булева функция
,
у которых значения некоторых строк в таблицах истинности совпадают (у обоих для данной строки нули, или у обоих - единицы), а значения остальных строк - не совпадают (нулю одной функции в этой строке соответствует единица у другой функции), то существует такая булева функция (оператор перестановки) , которая переводит одну функцию в другую и наоборот.
Этот перевод реализуется сложением по модулю
полинома Жегалкина любой из функций, с функцией - оператором перестановки.
.
и наоборот:
Почему функция - оператор перестановки - одна и та же для прямого и обратного преобразования?
Просто потому, что она меняет единички на нули, и наоборот нули на единички , в одних и тех же строках таблиц истинности, составленных для каждой функции, и не меняет их ни для какой строки любой из функций там, где значения совпадают.
Как найти функцию - оператор перестановки, не составляя таблиц истинности?
Нужно сложить полиномы Жегалкина двух исходных функций по модулю два.
Как раз у этой функции нули будут там, где у обеих исходных функций будут нули, или у обеих исходных функций будут единицы. А единицы у нее будут в тех строках, где исходные функции имеют разные значения. В тех строках, которые у исходной функции "переставлены".
Для Вашего примера:
,
откуда находим:
.
Ничего не напоминает вид этой функции?
Но я не знаю, что делать с функцией, значения которой ноль, если
.
На это есть простой рецепт:
Поищите поиском " Разложение логической функции по переменным ",
или сразу " Разложение Шеннона ",
Лучше всего сразу глянуть
параграф 11.2.6.
Это разложение и даст сразу необходимые подстановки, которые суть :
в формулы:
,
соответственно:
,
для обратной подстановки.