МАТЕМАТИКА

УДК 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 с.