Научная статья на тему 'О coNP-полноте задачи «Инъективный рюкзак»'

О coNP-полноте задачи «Инъективный рюкзак» Текст научной статьи по специальности «Математика»

CC BY
202
26
i Надоели баннеры? Вы всегда можете отключить рекламу.
Область наук
Ключевые слова
NP-ПОЛНЫЕ И CONP-ПОЛНЫЕ ЗАДАЧИ / ИНЪЕКТИВНЫЙ ''РЮКЗАК / Т-ИНЪЕКТИВНЫЙ РЮКЗАК / NP-COMPLETE AND CONP-COMPLETE PROBLEMS / INJECTIVE KNAPSACK / M-INJEC-TIVE KNAPSACK

Аннотация научной статьи по математике, автор научной работы — Дурнев Валерий Георгиевич, Зеткина Оксана Валерьевна, Зеткина Алена Игоревна, Мурин Дмитрий Михайлович

Устанавливается coNP-полнота задачи «Инъективный рюкзак».

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по математике , автор научной работы — Дурнев Валерий Георгиевич, Зеткина Оксана Валерьевна, Зеткина Алена Игоревна, Мурин Дмитрий Михайлович

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

About the coNP- complete "Injective knapsack" problem

It is proved that the "Injective knapsack" problem is coNP-complete.

Текст научной работы на тему «О coNP-полноте задачи «Инъективный рюкзак»»

2016

Математические основы информатики и программирования

№ 3(33)

МАТЕМАТИЧЕСКИЕ ОСНОВЫ ИНФОРМАТИКИ И ПРОГРАММИРОВАНИЯ

УДК 512.54

О coNP-ПОЛНОТЕ ЗАДАЧИ «ИНЪЕКТИВНЫЙ РЮКЗАК»

В. Г. Дурнев, О. В. Зеткина, А. И. Зеткина, Д. М. Мурин Ярославский государственный университет им. П. Г. Демидова, г. Ярославль, Россия Устанавливается coNP-полнота задачи «Инъективный рюкзак».

Ключевые слова: NP-полные и coNP-полные задачи, инъективный 'рюкзак, т-инъективный рюкзак.

DOI 10.17223/20710410/33/7

ABOUT THE coNP-COMPLETE "INJECTIVE KNAPSACK" PROBLEM

V. G. Durnev, O. V. Zetkina, A. I. Zetkina, D. M. Murin P. G. Demidov Yaroslavl State University, Yaroslavl, Russua E-mail: durnev@uniyar.ac.ru, oks_68@mail.ru, aizetkina@gmail.ru, nirum87@mail.ru

It is proved that the "Injective knapsack" problem is coNP-complete.

Keywords: NP-complete and coNP-complete problems, injective knapsack, m-injec-tive knapsack.

1. Задачи о рюкзаках

Хорошо известно [1 -3], что «Проблема рюкзака», или «Проблема суммы элементов подмножеств», является NP-полной. Она может быть сформулирована как вопрос о разрешимости в числах 0, 1 уравнения вида

где ai, ..., an и b — произвольные натуральные числа; xi, ..., xn — неизвестные.

В 1978 г. Р. Меркль и М. Хеллман [4] предложили первую (в открытых источниках) асимметричную систему шифрования, которая базировалась на «Проблеме рюкзака». Спустя четыре года А. Шамир показал, что метод генерации открытых ключей по закрытым в криптосистеме Меркля — Хеллмана не является надёжным и практически все индивидуальные представители «Проблемы рюкзака», возникающие при использовании этой системы, поддаются решению.

Несмотря на результаты А. Шамира, «Проблема рюкзака» обладает полезными для криптографии свойствами: во-первых, о ней известно, что она является достаточно сложной, и, во-вторых, процесс шифрования в криптосистеме Меркля — Хеллмана существенно быстрее, чем процесс шифрования в криптосистеме RSA, и представляется вероятным, что можно построить стойкие криптосистемы, основанные на «Проблеме рюкзака», с высокой скоростью шифрования и расшифрования, что является

а\Х\ + ... + anxn = b

(1)

крайне важным прикладным свойством, например для задачи синхронизации центров обработки данных по неконтролируемому (незащищённому) каналу связи. Благодаря этим свойствам работы по созданию криптосистем, базирующихся на «Проблеме рюкзака», не прекращаются [5-8].

В работе [7] введена в рассмотрение «Проблема обобщённого рюкзака», которая для фиксированного натурального числа т ^ 2 состоит в ответе на вопрос, разрешимо ли уравнение (1) в числах 0,1,..., т — 1.

В связи с шифрсистемой с открытым ключом, предложенной Р. Мерклем и М. Хелманом на основе «супервозрастающего» рюкзака, стали представлять особый интерес так называемые «Инъективные рюкзаки».

Будем говорить, что набор различных натуральных чисел а^ ... , ап определяет «Инъективный рюкзак» (соответственно «т-инъективный рюкзак»), если не существует двух различных наборов чисел 0, 1 (соответственно наборов чисел 0, ..., т — 1, где натуральное число т ^ 2) а1, ... , ап и в1, ... , вп, таких, что

а1«1 + ... + ап^п = а^1 + ... + апвп.

В противном случае набор натуральных чисел а1, ..., ап определяет «Неинъективный рюкзак» (соответственно «т-неинъективный рюкзак»).

Задача «Инъективный рюкзак» Дано: набор различных натуральных чисел а1, ... , ап. Определить: является ли определяемый ими рюкзак инъективным.

Задача «Неинъективный рюкзак» Дано: набор различных натуральных чисел а1, ... , ап. Определить: является ли определяемый ими рюкзак неинъективным.

Задача «т-инъективный рюкзак» Дано: набор различных натуральных чисел а1, ... , ап, натуральное число т ^ 2. Определить: является ли определяемый числами а1 , . . . , ап рюкзак т-инъективным.

Задача «т-неинъективный рюкзак» Дано: набор различных натуральных чисел а1, ... , ап, натуральное число т ^ 2. Определить: является ли определяемый числами а1 , . . . , ап рюкзак т-неинъективным.

Очевидно, что задача «2-инъективный рюкзак» эквивалентна задаче «Инъективный рюкзак», поэтому задача «т-инъективный рюкзак» включает в себя задачу «Инъ-ективный рюкзак».

Ясно, что задача «Неинъективный рюкзак» является дополнением задачи «Инъективный рюкзак» и принадлежит классу ЫР. Аналогично задача «т-неинъективный рюкзак» является дополнением задачи «т-инъективный рюкзак» и, в силу включения задачи «Неинъективный рюкзак», принадлежит классу ЫР.

2. Теорема о coNP-полноте задачи «Инъективный рюкзак»

Теорема 1. Задача «Инъективный рюкзак» является ссЫР-полной.

Доказательство. Необходимо доказать, что задача «Неинъективный рюкзак» (дополнение задачи «Инъективный рюкзак») является ЫР-полной. Так как она принадлежит классу ЫР, то остаётся доказать её ЫР-трудность. Для этого достаточно установить полиномиальную сводимость к ней некоторой подходящей ЫР-полной задачи. В качестве таковой возьмём задачу о разрешимости в числах 0, 1 уравнения вида

п

2(а1Х1 + ... + апХп) = ^ а*, (2)

*=1

где , ..., ага — произвольные натуральные числа. Эта задача хорошо известна под названием «Разбиение». Столь же хорошо известна и её КР-полнота. При построении полиномиальной сводимости воспользуемся некоторыми идеями работы [9], с которой нас любезно познакомил М. В. Волков.

По коэффициентам уравнения (2) по аналогии с работой [9] построим последовательность из 3п натуральных чисел

, а„, 61,...,С1,... , с„, (3)

а1,

полагая

С = а ■ 102п + 10га+*-1 + 10*-1 для г = 1,..., п,

6 = 10га+г-1 + 10* для г = 1,... ,п - 1,

= 102п-1 + 1,

С = 2 ■ 10г-1 для г = 1,..., п.

Покажем, что уравнение (2) имеет решение в числах 0, 1 тогда и только тогда, когда натуральные числа (3) образуют «Неинъективный рюкзак». Рассмотрим функцию

/(х1,..., жга, у1,..., уга, гь ..., = аХ1 + ... + а„ж„ + 61У1 + ... + + с1^1 + ... + с„г„

Для произвольных десятичных цифр 4, ..., 4 через 4 ... 410, как обычно, будем обозначать число

4 ■ 10к-1 + ... + 4 ■ 10 + 4.

Рассмотрим / как отображение множества {0,1}3п в множество натуральных чисел. Тогда натуральные числа (3) задают «Неинъективный рюкзак» в том и только в том случае, когда это отображение не является инъективным.

Нетрудно понять, что для произвольных чисел а1, ..., въ ... , в«, 71, ..., 7«. из множества {0,1} справедливо равенство

/(«1,... ,ага,въ ... ,в™,71,... ,7п)=(а1«1 + ... + а«а„)102га+(вга + а„) ... (в1 + «1)^-10"+

+ (в™-1 + а™ + 27„)(вп-2 + а«-1 + 27^-1)... (в1 + «2 + 272)^ + «1 + 271)

10

Поэтому для произвольных чисел а1, ..., а«, в1, в«, 71, ..., 7« из множества {0,1} равенство

/(«1,...,««,в1,... ,в«,71,... ,7«) = /(«1, равносильно системе равенств

а1 а1 + ... + агаага = а1а'1 + .

в«, + ага в»г + а«, в« -1 + а«-1 = 1 + а«_ l,

., в«, 71,

.. ,а«,в/1,

+ ,

7«, «1,

>в«,, 71,..., 7л,)

в2 + «2 = в2 + «2,

в1 + «1 = в1 + «1,

в«-1 + + 27„ = в„-1 + «« + 27^,

в«-2 + ««-1 + 27„-1 = в;_ 2 + 1 + 27„_ 1

в1 + «2 + 272 = в1 + «2 + 272,

[в« + «1 + 271 = вп + «1 + 27/.

Предположим, что уравнение (2) имеет решение а, ..., ап в числах 0, 1. Покажем, что найдутся такие числа въ ..., вп, 71,..., 7п, а1,..., аП, в!,..., вП, 7!,..., Тп ^ {0,1}, которые нарушают инъективность рюкзака (3), т.е. наборы

(аь ... ,ап,в1,... ,вп,71,... ,7п) и (а1,...,аП , в1,..., вп ,71,..., 7п) различны, но выполняется равенство

/ (а1,...,ап,в1,...,вп,71,...,7п) = / (а1,...,ап,в1 ,...,вп л! ,...,7п).

Уравнение (2) даёт равенство а1а1 + ... + апап = а1(1 — а1) + ... + ап(1 — ап), поэтому в качестве чисел а!, ..., ап можно взять 1 — а1, ... , 1 — ап. Тогда а^ = а! при произвольном г, 1 ^ г ^ п. Для нахождения чисел в1, ..., вп, 71, ..., 7п, в1, ..., вп, 71,

7п получаем две системы вп + 2ап = 1 + вп,

вп-1 + 2ап-1 = 1 + вп-1,

в2 + 2а2 = 1+ в2, в1 + 2а1 = 1 + в1

и

вп-1 + 2ап = 1 + вп-1 + 2(7п — 7п), вп-2 + 2ап-1 = 1 + вп-2 + 2(7п-1 — 7^-1),

в1 + 2а2 = 1 + в! + 2(72 — 72), вп + 2а1 = 1+ в! + 2(71 — 71).

Из первой системы при произвольном г, 1 ^ г ^ п, получаем вг — в! = 1 — 2а^. Правая часть этого равенства равна ±1, что позволяет при любом значении аг однозначно определить числа вг и в!. При этом вг — в! = ±1, поэтому вг + в! = 1. Для нахождения чисел 71, ... , 7п, 71, ... , 7^ воспользуемся системой

вп-1 + 2ап = 1 + вп-1 + 2(7п — 7«), вп-2 + 2ап-1 = 1 + в!-2 + 2(Тп-1 — 7П-1),

в1 + 2а2 = 1+ в1 + 2(72 — 72), _вп + 2а1 = 1+ в! + 2(71 — 71).

При 2 ^ г ^ п получаем равенство 2(7! — 7^) = 2аг — (1 + (вг-1, —вг-1)). Так как вг + в! = 1, то 7! — 7г = а^ — 1 + вг-1. Это уравнение разрешимо при любых а^ и вг-1. Для нахождения 71 и 7! воспользуемся уравнением 7! — 71 = а1 — 1 + вп.

Для доказательства обратного предположим, что для двух различных наборов (аь ... ,ап,в1,... ,вп,71,... ,7п) и (а!,..., а^ ,в1, ...,вп ,71 ,...,7«) чисел 0, 1 выполняется равенство

/(а1,... ,ап,в1,...,вп,71, •

Это даёт равенство а1а1 + ... апап

вп + ап вп, + аn, вп -1 + ап-1 = в^-1 +

,7п) = /(а! ,...,а; ,в1 ,...,в;,71 ,...,У„). = а1а'1 + ... апа^ и две системы равенств

вп-1 + ап + 27п = вп-1 + ап + 27^, вп-2 + ап-1 + 27п-1 = вП-2 + ап-1 + 27п-^

и

в2 + а2 = в2 + а2, в1 + а! = в! + а1

в1 + а2 + 272

вп + а1 + 271

в! + а2 + 272,

в; + а! + 27!,

которыми воспользуемся для доказательства равенств а! = 1 — а1, Перепишем эти системы в более наглядном виде:

..., «п — 1 ап

вп вп ап ап,

вп-1 вп-1 ап-1 ап— 1,

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

в2 — в2 = а2 — а2,

в1 — в! = а! — а1

и

(вп-1 — вп-1) + (ап — ап) + 2(7п — 7п) = 0,

(вп-2 — вп-2) + (ап-1 — ап-1) + 2(7п-1 — 7п-1) = 0,

(в1 — в!) + (а2 — а2) + 2(72 — 72) = 0, (вп — вп) + (а! — а!) + 2(71 — 7;) = 0.

Предположим, что при некотором г выполняется равенство а^ двигаясь по системам вверх, последовательно получаем

1) в* = в!,

(а!+1 — а!+1) + 2(7!+1 — 7!+1) = 0,

а!. Если г < п, то,

2)

3)

4)

5)

6)

(а»+1

а

!+1

) и (7!+1 = ТтХ

А+1 = в!+1,

(а!+2 — а!+2) + 2(7!+2 — т!+2)

(а!+2 = а!+2) и (7!+2

0,

3(п — г)) (ап = ап) и (7п = 7п), 3(п — г) + 1) вп = вп, 3(п — г) + 2) (а1 — а1) + 2(71 — 71) 3(п — г) + 3) (а! = а!) и (71 = 7^). Продолжая двигаться по системам вверх, получим, что наборы

0,

(а1,

ап

,въ ..., вп, 71,... ,7п)

и

а

а

>в1 ,...,вп ,71 ,...,7п)

совпадают, что противоречит предположению. Значит, при любом г выполняется равенство а! = 1 — а^. Поэтому набор (а1,..., ап) является решением уравнения (2). Это завершает доказательство теоремы. ■

Следствие 1. Задача «т-инъективный рюкзак» является еоКР-полной.

Заключение

В работе доказано, что задача «Неинъективный рюкзак» является КР-полной, а задача «Инъективный рюкзак» — еоКР-полной. При этом интересно отметить, что с определённой точки зрения «Инъективных рюкзаков» практически столько же, сколько «Неинъективных».

В работах [10, 11] устанавливается, что число «Инъективных рюкзаков» размерности п с фиксированным максимальным элементом М ограничено снизу величиной

'М — 2п-1 + 1 п!| -;----1

2

п2

М- 2п-1 + 1 \п-2

2

п1

где полагаем М ^ 2

п1

а сверху — п!Сп-_11, где полагаем М ^ п; С —число сочетаний. Отметим, что оценки эти достаточно грубые, поскольку нижняя оценка получена фактически для «Супер-возрастающих рюкзаков», а если рассмотреть верхнюю оценку для числа «Инъектив-ных рюкзаков», максимальный элемент которых принимает значения от п до М, то

получим

. M Cn-1 = 1+ n , (n + 1)n , (n + 2)(n + 1)n + , (M - 1)... (n + 1)n

^¿T^1 = n vol + H + 2! + 3 + ... + (M—n)!

_ / (n + 2)(n +1) (n + 2)(n + 1)n (M - 1)... (n + 1)n

n4 2! + 3! +... + (M - n)!

.M (M - 1)... (n + 1) M!

n!

(M - n)! (M - n)!:

М!

и поскольку Иш -у_Мп = 1' то «практически все» рюкзаки должны быть инъ-

ективными.

Действуя по аналогии, можно установить, что число «т-инъективных рюкзаков» размерности п с фиксированным максимальным элементом М ограничено снизу величиной

М - тп-1 + 1 л/ М - тп-1 + 1 \п-2 _ п_ 1

n! ( —-г----1 ) (---) , где полагаем M ^ m'

V (m - 1)mn-2 / V mn-1 J

а сверху — п!СП-1, где полагаем M ^ n(m - 1); k = [(M - m + 1)/(m - 1)].

Если посмотреть на все оценки, как на полиномы от M, то окажется, что каждый полином имеет степень n - 1. При этом общее число «рюкзаков» размерности n с фик-

n

сированным максимальным элементом M составляет Mn - (M - 1)n = Ck(M - 1)n-k

fc=i

и также является полиномом степени n - 1 от M. Это означает, что доля «Инъектив-ных рюкзаков» размерности n среди всех рюкзаков зависит только от n, то есть при фиксированном n эта доля является константой, соответственно является константой и доля «Неинъективных рюкзаков».

ЛИТЕРАТУРА

1. KarpR.M. Reducibility among combinatorial problems // Complexity of Computer Computations. N.Y.: Plenum Press, 1972. P. 85-103.

2. Гэри М., Джонсон Д. Вычислительные машины и труднорешаемые задачи. М.: Мир, 1982.

3. Пападимитриу Х., Стайглиц К. Комбинаторная оптимизация. Алгоритмы и сложность. М.: Мир, 1984.

4. Merkle R. and Hellman M. Hiding information and signature in trapdoor knapsacks // IEEE Trans. Inform. Theory. 1978. V. 24. No. 5. P. 525-530.

5. Niederreiter H. Knapsack-type cryptosystems and algebraic coding theory // Problems Control Inform. Theory. 1986. No. 15(2). P. 159-166.

6. Chor B. and Rivest R. A knapsack-type public key cryptosystem based on arithmetic in finite fields // CRYPTO'84. LNCS. 1985. V. 196. P. 54-65.

7. Осипян В. О. О криптосистемах с заданным рюкзаком // Материалы VI Междунар. науч.-практич. конф. «Информационная безопасность». Таганрог: Изд-во ТРТУ, 2004. С.269-271.

8. Осипян В. О. О системе защиты информации на основе проблемы рюкзака // Известия Томского политехнического университета. 2006. Т. 309. №2. С. 209-212.

9. Woeginger G. J. and Yu Z. On the equal-subset-sum problem // Inform. Proc. Lett. 1992. V. 42. P. 299-302.

10. Мурин Д. М. О порядке роста числа инъективных и сверхрастущих рюкзачных векторов // Моделирование и анализ информационных систем. 2012. Т. 19. №3. С. 124-135.

11. Мурин Д. М. О порядке роста числа инъективных и сверхрастущих векторов и некоторых особенностях сильного модульного умножения // Прикладная дискретная математика. Приложение. 2012. №5. С. 19-21.

REFERENCES

1. KarpR.M. Reducibility among combinatorial problems. Complexity of Computer Computations, N.Y., Plenum Press, 1972, pp. 85-103.

2. Garey R. and Johnson D. Computers and Intractability. N.Y., USA, W. H. Freeman & Co, 1979.

3. Papadimitriou C. H. and Steiglitz K. Combinatorial Optimization: Algorithms and Complexity. Prentice-Hall, 1982.

4. Merkle R. and Hellman M. Hiding information and signature in trapdoor knapsacks. IEEE Trans. Inform. Theory, 1978, vol. 24, no. 5, pp. 525-530.

5. Niederreiter H. Knapsack-type cryptosystems and algebraic coding theory. Problems Control Inform. Theory, 1986, no. 15(2), pp. 159-166.

6. Chor B. and Rivest R. A knapsack-type public key cryptosystem based on arithmetic in finite fields. CRYPTO'84, LNCS, 1985, vol. 196, pp. 54-65.

7. Osipyan V. O. O kriptosistemakh s zadannym ryukzakom [About cryptosystems with a given knapsack]. Proc. VI Int. Conf. "Information security". Taganrog, TRTU Publ., 2004, pp. 269-271. (in Russian)

8. Osipyan V. O. O sisteme zashchity informatsii na osnove problemy ryukzaka [Information protection system based on the knapsack problem]. Bull. TPU, 2006, vol.309, no2, pp. 209-212. (in Russian)

9. Woeginger G. J. and Yu Z. On the equal-subset-sum problem. Inform. Proc. Lett., 1992, vol. 42, pp. 299-302.

10. MurinD.M. O poryadke rosta chisla in"ektivnykh i sverkhrastushchikh ryukzachnykh vektorov [The order in the growth of the injective and super-increasing vectors knapsacks quantity]. Modelirovanie i Analiz Informatsionnykh Sistem, 2012, vol.19, no3, pp. 124-135. (in Russian)

11. Murin D. M. O poryadke rosta chisla in"ektivnykh i sverkhrastushchikh vektorov i nekotorykh osobennostyakh sil'nogo modul'nogo umnozheniya [About the order of the increasing in the number of the injective and super-increasing vectors and some particularities in the strong modular multiplying]. Prikladnaya diskretnaya matematika. Prilozhenie, 2012, no. 5, pp. 19-21. (in Russian)

i Надоели баннеры? Вы всегда можете отключить рекламу.