МАТЕМАТИКА
УДК 510.52
В.В.Мкртчян, Р.Р.Камалян
О NP-полноте "СВЯЗНОЙ 3-ВЫПОЛНИМОСТИ"
(Представлено академиком Ю.Г. Шукуряном 14/XI
2002)
В различных областях прикладной математики на
протяжении последних 30 лет большое внимание уделяется изучению так называемых
NP-полных задач. В основополагающих работах [1,2] приведены определение и
доказательство существования таких задач и отмечена их тесная взаимосвязь друг с
другом. Список NP-полных задач быстро растет и в настоящее время содержит,
согласно [3], около десяти тысяч задач. Первые попытки их систематизации и
классификации были сделаны в [4].
Исторически первой NP-полной задачей является
задача из математической логики, известная под названием "ВЫПОЛНИМОСТЬ" [1].
Важный частный случай этой задачи, известный под названием "3-ВЫПОЛНИМОСТЬ",
также представляет собой NP-полную задачу [1] и часто употребляется для
доказательства NP-полноты задач из теории графов и комбинаторного анализа
[2,4,5].
Настоящее исследование посвящено более
подробному анализу задачи "3-ВЫПОЛНИМОСТЬ". В работе сформулирована задача
"СВЯЗНАЯ 3-ВЫПОЛНИМОСТЬ", являющаяся интересным частным случаем задачи
"3-ВЫПОЛНИМОСТЬ", и доказана ее NP-полнота. Предложен соответствующий
полиномиальный алгоритм сведения задачи "3-ВЫПОЛНИМОСТЬ" к задаче "СВЯЗНАЯ
3-ВЫПОЛНИМОСТЬ". Не определяемые понятия можно найти в [1,2,5-7].
Пусть X={
x1,x2,ј,xn} есть
множество булевых переменных, D={
D1,D2,ј,Dr} -
множество дизъюнкций, составленных из литералов переменных множества X, t(Di) обозначает множество индексов переменных,
входящих в дизъюнкцию Di, i = 1,2,ј, r, и
K(x1,x2,ј,xn) = D1&D2&ј&Dr - конъюнктивная нормальная форма.
Определение. Графом
G(K(x1,x2,ј,xn))
конъюнктивной нормальной формы K(x1,x2,ј,xn) называется граф,
для которого множества
V(G(K(x1,x2,ј,xn))) и
E(G(K(x1,x2,ј,xn)))
вершин и ребер, соответственно, определяются следующим образом:
V(G(K(x1,x2,ј,xn))) є
V(Di), где при i = 1,2,ј,r |
V(Di) = {
vj(i)|1 Ј j Ј n, j О t(Di)}; | |
E(G(K(x1,x2,ј,xn))) є
E1(G(K(x1,x2,ј,xn)))ИE2(G(K(x1,x2,ј,xn))), | |
где E1(G(K(x1,x2,ј,xn))) =E1i(G(K(x1,x2,ј,xn))), и для i = 1,2,ј,r |
E1i(G(K(x1,x2,ј,xn))) = {(u,w)|{ u,w} Н
V(Di), u №
w}, | |
E2(G(K(x1,x2,ј,xn))) =
E2p(G(K(x1,x2,ј,xn))), и для p = 1,2,ј,n |
E2p(G(K(x1,x2,ј,xn))) = {(vp(s), vp(t))|1 Ј s Ј r, 1 Ј t Ј r, s № t, p О t(Ds)Зt(Dt)}. | |
Задача: СВЯЗНАЯ
3-ВЫПОЛНИМОСТЬ.
Условие: Пусть X есть
множество булевых переменных, и K(x1,x2,ј,xn) = D1&D2&ј&Dr есть конъюнктивная нормальная форма,
составленная из дизъюнкций, каждая из которых содержит 3 литерала переменных
множества X, и граф G(K(x1,x2,ј,xn)) связный.
Вопрос: Существует
ли такая последовательность (a1,a2,ј,an) с ai О {0,1} для
i = 1,2,ј,n, для которой K(a1,a2,ј,an) = 1?
Теорема. Задача "СВЯЗНАЯ
3-ВЫПОЛНИМОСТЬ" NP-полна.
Доказательство. Принадлежность задачи "СВЯЗНАЯ 3-ВЫПОЛНИМОСТЬ" к классу NP следует из
того, что эта задача есть частный случай задачи "3-ВЫПОЛНИМОСТЬ", NP-полнота
которой была установлена в [1]. Опишем полиномиальный алгоритм, сводящий задачу
"3-ВЫПОЛНИМОСТЬ" к задаче "СВЯЗНАЯ 3-ВЫПОЛНИМОСТЬ".
Пусть X(3-ВЫП.) = {
x1,x2,ј,xn} и
D(3-ВЫП.) = { D1,D2,ј,Dr} есть, соответственно, множества переменных и
дизъюнкций для индивидуальной задачи Iў из
"3-ВЫПОЛНИМОСТИ".
Положим:
X(СВЯЗНАЯ 3-ВЫП.) є X(3-ВЫП.)ИZ, где
Z = {zn+1,zn+2,ј,zn+r,zn+r+1
} | |
есть множество булевых
переменных, причем ZЗX(3-ВЫП.)=Ж;
D(СВЯЗНАЯ 3-ВЫП.) є
D(i)(СВЯЗНАЯ 3-ВЫП.), где при i = 1,2,3 |
D(i)(СВЯЗНАЯ 3-ВЫП.) = {
D(i)1,D(i)2,ј,D(i)r}, а дизъюнкции
D(1)j, D(2)j,
D(3)j строятся по дизъюнкции Dj при j = 1,2,ј, r следующим образом:
если Dj = a Ъ b Ъ c,
где каждое из a,b,c есть литерал переменной множества X(3-ВЫП.), то
Dj(1) є a Ъ b Ъ zn+j, Dj(2)
є c Ъ Шzn+j Ъ zn+r+1, Dj(3)
є c Ъ Шzn+j
Ъ Шzn+r+1;
| |
K= |
& D О D(СВЯЗНАЯ 3-ВЫП.)
|
D | |
Заметим, что каждая дизъюнкция из множества
дизъюнкций D(СВЯЗНАЯ 3-ВЫП.) содержит 3 литерала переменных множества X(СВЯЗНАЯ
3-ВЫП.).
Нетрудно также убедиться, что граф G(K)
конъюнктивной нормальной формы K является связным. Это следует из того, что в
графе G(K) существует клика, содержащая 2r вершин, такая, что любая не
принадлежащая ей вершина графа G(K) либо смежна вершине клики, либо соединена с
некоторой вершиной клики простой цепью, содержащей не более трех ребер.
Рассмотрим индивидуальную задачу I'' из
"СВЯЗНОЙ 3-ВЫПОЛНИМОСТИ" с множеством булевых переменных X(СВЯЗНАЯ 3-ВЫП.),
конъюнктивной нормальной формой K, составленной из множества дизъюнкций
D(СВЯЗНАЯ 3-ВЫП.).
Покажем, что в индивидуальной задаче Iў из "3-ВЫПОЛНИМОСТИ" ответ положителен тогда и только тогда,
когда ответ в индивидуальной задаче Iўў из "СВЯЗНОЙ 3-ВЫПОЛНИМОСТИ" положителен.
Пусть последовательность (b1,b2,ј,bn) с bi О {0,1} при
i = 1,2,ј,n значений переменных множества X(3-ВЫП.)
x1,x2,ј,xn,
соответственно, такая, что все дизъюнкции из D(3-ВЫП.) принимают значение 1.
Укажем последовательность
(a1,a2,ј,an,an+1,ј,an+r,an+r+1) с ai О {0,1} при
i = 1, 2, ј, n + r + 1 значений переменных множества X(СВЯЗНАЯ
3-ВЫП.) x1,x2,ј,xn,zn+1,ј,zn+r,zn+r+1, соответственно, для
которой K(a1,a2,ј,an,an+1,ј,an+r,an+r+1) = 1.
Нетрудно проверить, что в качестве такой
последовательности может служить последовательность, определенная следующим
образом:
ai є bi для i = 1,2,ј,n, an+r+1 є 0, а при j = 1,2,ј,r значение an+j определяется по дизъюнкции
Dj = a Ъ b Ъ c как
значение булевой функции Ш(a Ъ b) на последовательности (b1,b2,ј,bn), где каждое из
a,b,c есть литерал переменной множества X(3-ВЫП.).
Обратно, пусть последовательность (l1,l2,ј,ln,ln+1,ј,ln+r,ln+r+1) с
li О {0,1} при
i = 1, 2, ј, n + r + 1 значений переменных множества X(СВЯЗНАЯ
3-ВЫП.) x1,x2,ј,xn,zn+1,ј,zn+r,zn+r+1, такова,
что K(l1,l2,ј,ln,ln+1,ј,ln+r,ln+r+1) = 1.
Укажем последовательность (m1,m2ј,mn) с mi О {0,1} при
i = 1, 2, ј, n значений переменных множества X(3-ВЫП.)
x1,x2,ј,xn, при
которой все дизъюнкции из D(3-ВЫП.) принимают значение 1. Нетрудно проверить,
что в качестве такой последовательности может служить последовательность,
определенная следующим образом:
mi = li для
i = 1, 2, ј, n. | |
Если в качестве Length[Iў] [4] взять произведение числа переменных и числа дизъюнкций
задачи Iў, то произведение 3r(n + r + 1) числа переменных и
числа дизъюнкций задачи Iўў,
которое можно принять в качестве Length[Iўў], очевидно, ограничено функцией O((Length[Iў])2), что и показывает полиномиальность
описанного сведения.
Теорема доказана.
Ереванский государственный университет
Литература
1. Cook S.A. Proc. 3rd Ann. ACM Symp. On Theory of Computing, Association
for Computing Machinery. NewYork. 1971.
P.151-158.
2. Karp R.M.
in: R.E.Miller and J.W.Thatchers(eds). Complexity of
Computer Computations. Plenum Press. New York. 1972.
P.85-103.
3. URL:
http://www.msci.memphis.edu/~giri/7713/f98/lec10.html
4. Garey M.R., Johnson D.S.
Computers and Intractability: A Guide to the Theory of
NP-completeness. San Francisco: W. H. Freeman & Company. Publishers.
1979.
5. Papadimitriou C.H.,
Steiglitz K. Combinatorial optimization: Algorithms and
Complexity. PRENTICE-HALL. INC Englewood Cliffs. New Jersey.1982.
6. Harary F. Graph Theory. Addison-Wesley. Reading. MA.1969.
7. Яблонский С.В. Введение в дискретную математику. М. Наука. 1986. 384 с.