ff
n
*
=+
2
, где f - вес функции f. Значит, f * равновероятна ⇔ f не
выполнима.
Ясно, что условие Задача 1)∈P ⇒ ВЫП∈P, что означает Задача 1)∈NPH.
2. Пусть
- произвольная индивидуальная задача ВЫП.
Определим функцию
, где -
новые переменные. Ясно, что КНф для функции f * строится по f за
полиномиальное время. Легко видеть, что f * линейна ⇔ f не выполнима и
условие Задача 2)∈P влечет ВЫП∈P, что означает Задача 2)∈NPH.
fx x
n
( ,..., )
1
fx* ( xyy fx xy y
n
,..., , , ) ( ,..., )
11211
=∨
n
2
n
3
yy
12
,
3. Пусть
- произвольная индивидуальная задача ВЫП.
Образуем функцию
, где y - новое переменное.
Ясно, что y - существенно для f * ⇔ f - выполнима. Следовательно, Задача
3)∈P ⇒ ВЫП∈P и поэтому Задача 3)∈NPH.
fx x
n
( ,..., )
1
f x* ( xy fx xy
n
,..., , ) ( ,..., )
11
=
4. Пусть
- произвольная индивидуальная задача ВЫП.
Образуем функцию
fx x
n
( ,..., )
1
fx* ( xyyy
n
,..., , , , )
112
=
=⋅ ∨
fyy y
12 3
. Ясно, что КНФ для f * строится по f за полиномиальное время.
Функция f * образует функционально полную систему ⇔ f выполнима.
Действительно, если f не выполнима, то
fy*
≡
3
x
n
00
,...,
и f * не является функционально
полной. Если f выполнима, то пусть - выполняющий набор. Тогда
имеем
x
1
fx x fx x
fx x fx x
n
n
nn
* ( ,..., , , , ) *( ,..., , , , )
* ( ,..., , , , ) * ( ,..., , , , )
1
00
1
00
1
00
1
00
001 110 1
000 001 1
==
==
Отсюда следует не самодвойственность и не линейность функции f *. Очевидно,
что f * не сохраняет нуль, не сохраняет единицу и не монотонна. Значит, функция
f * удовлетворяет критерию Шеффера функциональной полноты. Следовательно,
условие Задача 4)∈P ⇒ ВЫП∈P и поэтому Задача 4)∈NPH. Утверждение
доказано.
Замечание.
Легко убедиться, что отрицание задачи 2), задача 3) лежат в
классе NP и поэтому они NP -полны. Неизвестно, верно ли это для задач 1) и
4). Очевидно, что при табличном задании булевых функций рассмотренные
задачи имеют полиномиальную сложность.
З°. Разберем еще одно важное понятие, относящееся к обсуждаемому кругу
вопросов. Рассмотрим задачу ЦЕЛОЧИСЛЕННЫЙ РЮКЗАК, которая, как
отмечалось выше, является NP -полной. Пусть
- натуральные числа и
спрашивается, существуют ли такие целые
≥0, что выполнено
cc
n1
,..., ,
xx
n
,...,
K
K K
1
cx K
jj
j
n
=
=
∑
1
.
Приведем один алгоритм решения данной задачи. Для индивидуальной задачи
ЦР( ) построим ориентированный граф G( )=(V,E), где
,
cc
n
1
,..., ,
0,1,..., K
cc
n
1
,..., ,
{}
V =
105