Конституенты нуля. Совершенные конъюнктивные и шефферовы нормальные формы


Как отмечалось, при помощи СДНФ и СВНФ наиболее просто выражаются функции, у которых в векторе истинности преобладают нули. Если в векторе истинности больше единиц, то используют аналогичные совершенные конъюнктивные и шефферовы формы, в которых в качестве внутренних функций входят конституенты нуля.

Определение. Пусть на наборе`a n =(a1, ... ,an ) булева функция f (х n)принимает значение 0. Дизъюнктивной конституентой нуля функции f назовем дизъюнкцию вида

D = х1Øa1Ú ... Ú хn Øan ,

где хi Øa i = i при a i =1 и хi Øai = хi при a i =0(1£ i £ n).

Аналогично шефферовой конституентой нуля функции f назовем подстановку вида S =| (х1 a1 , ... , хnan).

Как дизъюнктивная, так и шефферова конституенты нуля, соответствующие набору`a n , принимают значение 0 только на нем. На всех остальных наборах они равны 1.

Пример 3. Построить все дизъюнктивные и шефферовы конституенты нуля функции, заданной таблицей истинности.

x y z F Д 1 Д 2 Д 3

Решение. Функция принимает значение 0 на наборах (0, 1, 0), (0, 1, 1), (1, 0, 1). На наборе (0, 1, 0) дизъюнктивная конституента нуляД1= хÚуÚz, на наборе(0, 1, 1)Д2ÚуÚz , на наборе(1, 0, 1)Д3 =`хÚуÚz . В таблице дополнительно указаны векторы истинности конституент Д1 — Д3. Каждая из них выделяет ровно один из нулей в векторе истинности исходной функции.

Шефферовы конституенты получаем из Д1 — Д3, инвертируя внутренние переменные в них и заменяя дизъюнкцию функцией Шеффера. В итоге получим: S1 =| (х, у,`z); S2 =|(х, у, z); S3 =| (х,`у, z). Поскольку преобразование эквивалентное, векторы истинности S1 S3совпадают с векторами для Д1 — Д3.

Определение. Совершенной конъюнктивной нормальной формой (СКНФ) булевой функции f (х n) называют выражение вида:

f = D1& ... & Dр,

где D1, ... , Dр — дизъюнктивные конституенты нуля функции.

Совершенной шефферовой нормальной формой (СШНФ) булевой функции f ( х n)называют выражение вида:

f = Ø|( S1, ... , Sр ) ,

где S1, ... , Sр — шефферовы конституенты нуля функции f (n).

СКНФ, как и все КНФ, являются функциями в базисном наборе {Ø, &, Ú}. СШНФ можно наряду с основным представлением задать в однофункциональном базисном наборе {|}.

Пример 4. Построить СКНФ и СШНФ (для каждого из базисных наборов {Ø, |} и {| }) функции f = (11001011)из Примера 3.

Решение.

1. Дизъюнктивные конституенты нуляД1 — Д3найдены в Примере 3. СКНФ получаем, логически умножая их:

f = (х ÚÚ z) & (х ÚÚ`z) & (х Ú у Ú`z).

2. Шефферовы конституенты S1 S3также были найдены в Примере 3. СШНФ в базисном наборе {Ø, |}получаем, подставляя S1 S3в функцию Шеффера с последующим её инвертированием:

f =Ø| (| (x, y, z),| (x, y, z),|(x,`y, z)) .

СШНФ в базисном наборе {|}имеет вид:

f =|[|(|((x,х), y, (z,z)), | ((x,x), y, z), | ( x,( y,y), z )), |(| ((x,х), y, (z,z)), | ((x,x), y, z), | (x,( y,y), z))] .

Искомые формы построены.

СКНФ и СШНФ существуют только для функций, не равных тождественной единице. В случае, когда вектор истинности функции имеет только один нуль, ее СКНФ и СШНФ являются вырожденными.

Рассмотренные выше ДНФ, КНФ, ВНФ и ШНФ допускают неединственное представление функций. Совершенные формы являются их частными случаями.

Полиномы Жегалкина

Помимо представлений с помощью базисных наборов, состоящих из пороговых функций, при решении практических задач необходимо также использовать формулы стандартного вида на основе наборов, содержащих наряду с пороговыми и симметричные функции. Такими формулами являются полиномы Жегалкина.

Определение. Произведением над множеством переменных Х=(х1, ... , хn ) называют выражение вида:

P = хi1& . . . & хis,

где (хi1, ... , хis Х .

Определение. Полиномом Жегалкина булевой функции f(хn)называют выражение вида :

f =a0 Åa1P1Å ... Åa k Pk,

где (P1, ..., Pk) все возможные произведения над множеством переменных Х=(х1, ... , хn), a 0 , a1, ... ,a k - булевы константы (0 или 1), знак Åозначает сумму по модулю 2.

Произведения, входящие в полином с нулевыми коэффициентами, обычно просто опускают.

Полиномы Жегалкина задают разложение функций в базисном наборе {0, 1, &, Å}. Функция &—пороговая, функции (0, 1, Å) - симметричные. В виде полинома Жегалкина может быть представлена любая булева функция. Рассмотрим первый метод определения полинома по таблице истинности функции.



Дата добавления: 2020-10-14; просмотров: 652;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

Поделитесь с друзьями:

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.014 сек.