Задача 1. Построить СДНФ,СКНФ и ПЖ функции
.
Существуют два вида алгоритмов посроения СДНФ, СКНФ и ПЖ. Это алгоритмы, основанные на построении таблиц истинности,с одной стороны, и алгоритмы, состоящие в эквивалентном преобразовании формул к заданному специальному виду, с другой.
Алгоритм построения СДНФ (с использованием таблиц истинности):
- построить таблицу истинности данной функции
;
- в таблице выделить наборы, на которых функция принимает значение 1;
- каждому такому набору
поставить в соответствие элементарную конъюнкцию
(7)
- найденные элементарные конъюнкции объединить знаком дизъюнкции, - полученная формула, согласно теореме 1, является совершенной дизъюнктивной нормальной формой функции f.
Алгоритм построения СКНФ (c использованием таблиц истинности):
- построить таблицу истинности данной функции
;
- в таблице выделить наборы, на которых функция принимает значение 0;
- каждому такому набору
поставить в соответствие элементарную дизъюнкцию вида:
(8)
- найденные элементарные дизъюнкции объединить знаком конъюнкции, - полученная формула, согласно теореме 2, является совершенной конъюнктивной нормальной формой функции 
Алгоритм построения ПЖ (метод неопределенных коэффициентов):
- построить таблицу истинности данной функции
;
- записать общий вид полинома Жегалкина. В случае трех переменных имеем:
(9)
- исходя из того, что данная функция
и ее ПЖ принимают одинаковые значения на всевозможных наборах переменных, в них входящих, составим систему уравнений для коэффициентов
. В случае трех переменных имеем:

Решаем эту систему "сверху вниз"; найденные коэффициенты
подставляем формулу (9) и получаем ПЖ заданной функции
.
Алгоритмы построения СДНФ, СКНФ и ПЖ с помощьюэквивалентных преобразований:
Построение СДНФ и СКНФ при помощи эквивалентных преобразований можно разбить на следующие этапы:
- выразить логические операции
через
используя равносильности:
(10)
(11)
(12)
- используя законы де-Моргана, добиться того, чтобы знак отрицания стоял только над элементарными высказываниями:
(13)
- для упрощения преобразований использовать закон двойного отрицания, законы идемпотентности и законы поглощения и склеивания:
(14)
(15)
- при построении СДНФ (СКНФ) преобразовать полученное ранее выражение в ДНФ (КНФ), используя первый (второй) дистрибутивные законы:
(16)
(17)
если в полученной ДНФ (КНФ) какое-либо слагаемое
(сомножитель
) не содержат переменной
, от которой зависит данная функция, то нужно произвести эквивалентную замену:
для ДНФ и
для КНФ; в полученном выражении из нескольких одинаковых слагаемых (сомножителей) оставить только одно (один), так как
.
При построении ПЖ предварительно выразим данную функцию через
при помощи равносильностей (10) -(13). Далее выразим
через
и
:
(18)
В полученном выражении проведем преобразования, выразив операцию
через
:
, - и, раскрыв скобки:
удалим лишние слагаемые, так как
.
С изложенным здесь понятиями и фактами можно познакомиться в [1], стр. 19-23 и [2], стр. 24-54.






