Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Раздел 2-1_А.doc
Скачиваний:
309
Добавлен:
27.03.2016
Размер:
2.19 Mб
Скачать

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

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

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

D = х1 1 ... хn n ,

где хi i = хi при i =1 и хi i = хi при i =0 (1 i n).

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

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

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

x

y

z

F

Д 1

Д 2

Д 3

0

0

0

1

1

1

1

0

0

1

1

1

1

1

0

1

0

0

0

1

1

0

1

1

0

1

0

1

1

0

0

1

1

1

1

1

0

1

0

1

1

0

1

1

0

1

1

1

1

1

1

1

1

1

1

1

Решение. Функция принимает значение 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))] .

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

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

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]