Научная статья на тему 'О НЕКОТОРЫХ ОСОБЕННОСТЯХ ЗАДАЧИ РАЗРЕШИМОСТИ СИСТЕМ БУЛЕВЫХ УРАВНЕНИЙ'

О НЕКОТОРЫХ ОСОБЕННОСТЯХ ЗАДАЧИ РАЗРЕШИМОСТИ СИСТЕМ БУЛЕВЫХ УРАВНЕНИЙ Текст научной статьи по специальности «Математика»

CC BY
45
11
i Надоели баннеры? Вы всегда можете отключить рекламу.
Область наук
Ключевые слова
NP-ПОЛНОТА / ЗАДАЧА БУЛЕВА ПРОГРАММИРОВАНИЯ / СОВМЕСТНЫЕ СИСТЕМЫ / ЛИНЕЙНОЕ ПРЕОБРАЗОВАНИЕ / ПРОИЗВОДЯЩИЕ ФУНКЦИИ / ПАРАМЕТРИЧЕСКИЕ ЗАДАЧИ

Аннотация научной статьи по математике, автор научной работы — Леонтьев Владимир Константинович, Гордеев Эдуард Николаевич

Цель статьи: представить новые результаты по комбинаторным характеристикам систем булевых уравнений, от которых зависят такие свойства систем как совместность, разрешимость, число решений и ряд других.Метод исследования: сведение прикладных задач к комбинаторным моделям с последующим применением классических методов комбинаторики: метод производящих функций, метод коэффициентов, методы получения асимптотик и пр. Полученный результат. В работе получены результаты, касающиеся разрешимости систем булевых уравнений. Проанализирована сложность задачи «трансформации» несовместной системы в совместную. Описан и обоснован подход к решению задачи о выделении из несовместной системы минимального числа совместных подсистем. Задача сведена к проблеме нахождения минимального протыкающего множества. Получен критерий совместности системы. С помощью метода коэффициентов выведены формулы для нахождения и оценки числа решений при параметризации задачи по правым частям уравнений. Исследуется и максимум этого числа в зависимости от параметра. Получены формулы числа решений для двух частных случаев: при ограничении на число уравнений и на размер параметров задачи.

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

ON SOME FEATURES OF THE PROBLEM OF SOLVABILITY OF SYSTEMS OF BOOLEAN EQUATIONS

The purpose of the article is to present new results on combinatorial characteristics of systems of Boolean equations, on which such properties of systems as compatibility, solvability, number of solutions and a number of others depend.The research method is the reduction of applied problems to combinatorial models with the subsequent application of classical methods of combinatorics: the method of generating functions, the method of coefficients, methods for obtaining asymptotics, etc. Obtained result. In this paper, we obtain results concerning the solvability of systems of Boolean equations. The complexity of the problem of “ transformation” of an incompatible system into a joint one is analyzed. An approach to solving the problem of separating the minimum number of joint subsystems from an incompatible system is described and justified. The problem is reduced to the problem of finding the minimum covering set. The system compatibility criterion is obtained. Using the method of coefficients, formulas for finding and estimating the number of solutions for parameterizing the problem on the right-hand sides of equations are derived. The maximum of this number is also investigated depending on the parameter. Formulas for the number of solutions for two special cases are obtained: with a restriction on the number of equations and on the size of the problem parameters.

Текст научной работы на тему «О НЕКОТОРЫХ ОСОБЕННОСТЯХ ЗАДАЧИ РАЗРЕШИМОСТИ СИСТЕМ БУЛЕВЫХ УРАВНЕНИЙ»

I О НЕКОТОРЫХ ОСОБЕННОСТЯХ ЗАДАЧИ РАЗРЕШИМОСТИ СИСТЕМ БУЛЕВЫХ УРАВНЕНИЙ

Леонтьев В.К.1, Гордеев Э.Н.2

Цель статьи: представить новые результаты по комбинаторным характеристикам систем булевых уравнений, от которых зависят такие свойства систем как совместность, разрешимость, число решений и ряд других.

Метод исследования: сведение прикладных задач к комбинаторным моделям с последующим применением классических методов комбинаторики: метод производящих функций, метод коэффициентов, методы получения асимптотик и пр.

Полученный результат. В работе получены результаты, касающиеся разрешимости систем булевых уравнений. Проанализирована сложность задачи «трансформации» несовместной системы в совместную. Описан и обоснован подход к решению задачи о выделении из несовместной системы минимального числа совместных подсистем. Задача сведена к проблеме нахождения минимального протыкающего множества. Получен критерий совместности системы. С помощью метода коэффициентов выведены формулы для нахождения и оценки числа решений при параметризации задачи по правым частям уравнений. Исследуется и максимум этого числа в зависимости от параметра. Получены формулы числа решений для двух частных случаев: при ограничении на число уравнений и на размер параметров задачи.

Ключевые слова: NP-полнота, задача булева программирования, совместные системы, линейное преобразование, производящие функции, параметрические задачи.

Грант РФФИ 20-01-00645.

DOI: 10.21681/2311-3456-2021-1-18-28

Введение

Линейные диофантовы уравнения и неравенства являются стандартным объектом для различного рода математических моделей, относящихся к целочисленной оптимизации, защите информации, теории чисел, геометрии и т.д.

Каноническими целями подобных исследований, обычно, являются следующие:

1. Условия разрешимости.

2. Представление натуральных чисел линейными формами (проблема Фробениуса).

3. Нахождение числа решений уравнения или системы уравнений,оценка этого числа.

4. Нахождение числа целых точек в многогранниках или оценка этого числа.

5. Исследование характеристик задачи при изменении системы ограничений путем удаления или добавления нового ограничения.

История исследований в этой области и перечень даже основных результатов не может быть описана в рамках отдельной статьи, поэтому мы лишь коротко коснемся тех работ, которые либо непосредственно связаны с данной статьей, либо проясняют и дополняют ее содержание.

Классическая задача о ранце с булевыми переменными имеет вид:

п

IA

j=1

JxJ ^ max.

2 aixi -b, i=i

где x=(xj,,xJ - и-мерный булевский вектор.

(1)

1 Леонтьев Владимир Константинович, доктор физико-математических наук, профессор, профессор кафедры «Информационная безопасность» (ИУ-8) МГТУ им. Н.Э. Баумана, Москва, Россия. E-mail: vkleontiev@yandex.ru

2 Гордеев Эдуард Николаевич, доктор физико-математических наук, профессор, профессор кафедры «Информационная безопасность» (ИУ-8) МГТУ им. Н.Э.Баумана, Москва, Россия. E-mail: werhorn@yandex.ru

Пусть Ь(хр...,х) - линейная форма:

п

цх,..^=^ ах, (2)

I=1

где все параметры {а} и неизвестные {х} - натуральные числа. Накладывая определенные условие на вид этой формы, можно получить разные частные случаи общей задачи.

Так, в булевой задаче о ранце переменные полагаются булевыми, а множество решений должно удовлетворять условию ^ а(х( < Ь , то есть вектора

(=1

х=(хг...,х) должны лежать ниже гиперплоскости

Известно, что существуют эквивалентные формы задачи линейного программирования: общая, каноническая и стандартная. (В разных случаях терминология различается). Следуя [1], канонической будем считать задачу с ограничениями в виде равенств.

В матричной форме система ограничений имеет вид

Ах=Ь, (3)

где А = ||а(7|| - (т,п) - матрица.

Накладывая определенные ограничения на матрицу А и вектор Ь, получаем различные частные случаи задачи.

Если все параметры и переменные - произвольные вещественные числа, то вопрос о разрешимости системы решается в терминах ранга матрицы ограничений. Классические результаты линейной алгебры и теории линейного и булева программирования исследуют условия разрешимости и для таких частных случаев рассматриваемой задачи как задача целочисленного линейного программирования и задача булева программирования. См., например, [1], [3].

В области исследования операций и комбинаторной оптимизации данная задача или ее обобщения и сужения занимаю ключевое место, как это показано, например, в [1]. То, что задача целочисленного линейного программирования является #Р-полной,

было установлено в числе первых результатов подобных исследований. Кроме того, в классической работе [2] можно найти многочисленные примеры известных задач, которые к ней сводятся и наоборот: задача целочисленного линейного программирования (или ее булев вариант) сводится к той или иной проблеме.

В предыдущих работах авторов [4] и [5] для задачи о рюкзаке рассматривался, в частности, и вопрос зависимости числа решений от параметров задачи: вектора целевой и весовой функций и правой части ограничения. Настоящая работа в одной из своих частей является продолжением исследований авторов, опубликованных в [4]-[5]. Ключевую роль в получении результатов там сыграл аппарат производящих функций, который используется и в настоящей статье. Как видно из подробнейшей монографии [6], данный подход позволил в упомянутых работах получить ряд новых и оригинальных результатов по сравнению с ранее известными.

Следует заметить, что вопросы, поставленные в первой части работы, ранее с той или иной точки зрения рассматривались в работах В.К. Леонтьева и Г.П. То-нояна [7] и [8], где исследовались комбинаторные свойства систем булевых уравнений. В монографии [9] ряд результатов также получены на основе комбинаторных подходов в задачах рюкзачного типа. Заметим, что комбинаторные свойства систем линейных, булевых и диофантовых уравнений тесно связаны с задачами криптографии и используются в криптосистемах.

С прикладной точки зрения, изучаемая проблематика затрагивалась авторами в связи с криптографическими объектами: аннигиляторами и алгебраической иммунностью. Одно из ключевых утверждений работы [10], посвященной аннигиляторам и алгебраической иммунности, базируется на анализе совместимости системы уравнений и нахождению комбинаторной характеристики (аналога ранга) матрицы. В [10]-[11], где речь идет о линейных булевых полиномах, как частный случай возникают линейные булевы полиномы. Именно им там посвящено наибольшее внимание.

Важность этой тематики с точки зрения криптографии подтверждается многочисленными работами в специализированных журналах. Например, в работах Г.В. Балакина [12] и [13] рассматриваются специфические классы систем булевых уравнений (рекуррентного типа) и их применение в криптографии. В

работе А.М. Зубкова [14] моментные характеристики весов векторов в случайных двоичных линейных кодах описываются в терминах свойств специальных систем уравнений.

Линеаризация систем булевых уравнений - метод решения систем, состоящий в замене всех мономов степени выше первой новыми переменными, решении полученной линейной системы и последующей проверке полученных решений на корректность. Этому, например, посвящены статьи [15], [16]. Группой ученых под руководством Н. Куртуа были предложены усовершенствования XL4 и XSL5 метода линеаризации для случаев, когда количество уравнений в системе недостаточно для эффективного применения линеаризации в классическом виде [17]. Суть данных методов состоит в дополнении системы новыми уравнениями, которые не меняют множества решений системы, но увеличивают размер системы и ранг линеаризованной системы. Позднее Н. Куртуа и Г.В. Бардом в [18] был предложен еще один метод, основанный на методе линеаризации ЕМтЫп.

Как сказано выше в аннотации, в нашей работе рассматривается задача проверки системы на совместность и разбиение несовместной системы на минимальное число совместных подсистем. Это задача, в частности, тесно связана с проблемой выполнимости КНФ. Результаты на этом пути иллюстрируются работами [19-21]. А в прикладных работах А.С. Ме-лузова [22] и [23] разработан и имплементирован программный комплекс для решения упомянутой задачи.

В данной статье также рассматривается проблема параметризации системы по ее правой части. Аналоги приведенного здесь подхода авторам неизвестны. В какой-то степени с ним связаны как классические алгоритмы параметрического линейного программирования, так и, например, работа [24], где исследуются линейные уравнения булева типа с «искаженной» правой частью. В работе предложен метод построения множества, содержащего искомый вектор с вероятностью, не менее заданной, и оценена мощность этого множества. Теоретические расчеты параметров метода иллюстрируются результатами экспериментов. Данный подход использует вероятностную постановку, в то время как здесь применяется комбинаторный аппарат.

Настоящая работа состоит из введения и двух разделов. Следующий раздел посвящен подходам к анали-

зу несовместной системе уравнений. Затем рассматривается вопрос существования и числа решений. Некоторые определения, понятия и методы доказательств ранее были использованы авторами в работах [4], [5], [25], [26], [27].

Везде в дальнейшем будем считать, что все параметры рассматриваемой задачи, числа с1,.,сп; а1,.,ап; Ь - неотрицательные целые числа.

1. О «приближенных» решениях несовместных систем уравнений с булевыми переменными

Рассмотрим систему (3) с произвольными переменными.

При использовании задачи линейного программирования в прикладных моделях реальных систем несовместность системы (3) может иметь следующую интерпретацию.

В прикладной математической модели, для описания которой используется, например, система линейных уравнений достаточно естественна следующая ситуация: уравнения, описывающие модель, неравноценны: одни из них описывают «важные и глобальные» аспекты прикладной проблемы, а другие - «второстепенные», причем связь этих частей не выяснена или ошибочно интерпретирована. Это делает естественным на стадии моделирования применение следующих эвристических подходов, которые рассмотрены ниже:

1. В одном из них путем «изменения» вида уравнений или удаление части из них конструируется из несовместной системы совместная.

2. В другом - предлагается разбить исходную систему (множество ее уравнений) на некоторое количество (например, на минимально возможное) совместных подсистем.

Второй подход связан с самым известным и распространенным методом: выделение (за счет отбрасывания минимально возможного количества уравнений) из системы максимальной по мощности совместной подсистемы. На этом пути, как правило, используются варианты переборного алгоритма в сочетании с эвристиками. В прикладном плане подобные работы относятся к различным областям, в первую очередь, видимо, стоит сказать о задачах в сфере распознавания образов. Обозначим через а1,.,ат вектор-строки матрицы А. Вектора Ь, аг...,ат назовем параметрами системы (3)

Проблема. Пусть система (3) несовместна. Какое минимальное число параметров системы (3) нужно изменить, чтобы новая система стала совместной?

Пример 1. Уравнение 2х+3х2=6 не имеет решения в булевых переменных, но достаточно изменения одного параметра, чтобы сделать его разрешимым.

Например, так измененные уравнения: 3х,+3х2=6 является совместной при любом х0 таком, что

(а, х) = Ьх

{а2 , х) = (а2 , х0) = Ь2

(ат , Х) = (ат , Х0) = К

или 2х,+3х2=5 уже имеют решения в булевых пере-

.2 менных.

Теорема 1. Для того, чтобы сделать несовместную систему линейных уравнений вида (3) совместной при т>1 достаточно изменения (т-1) параметра. Существуют несовместные системы вида (3), для которых изменение этого числа параметров является необходимым.

Доказательство. Пусть дан вектор с=(с,... ,с). Рассмотрим несовместную систему

' (А х) = ¿1

(с, х) = Ь2

(С х) = К

(ах,х0) = Ьх. И вновь изменения т-1 параметра достаточно.

Теорема доказана.

Замечание. В случае одного уравнения в теореме т-. меняется на т, как это видно из вышеприведенного примера с булевым уравнением.

Проблема. Пусть система (3) несовместна. Требуется разбить ее на минимальное количество совместных подсистем.

Замечание. В ряде работ применительно к данной проблеме используется термин обобщенное решение системы уравнений. Под ним понимается следующее. Если несовместная система разбита на г совместных подсистем, то эти системы можно решить. Пусть решениями которых являются вектора и п ...,

Тогда множество {и

ии} и называют обоб-

Где ЬфЬ. для всех Щ. Ясно, что следующая система щенным решением системы (3).

(с, х) = ¿1 (с, х) = ¿1

(с, х) = ¿1

является совместной и получена из исходной путем изменения т-. параметра, причем изменение вектора с=(с.,.,с) никак не отражаются на свойстве системы быть совместной. Изменение же меньшего числа параметров не приводит к совместности системы.

С другой стороны, если система

' (а, х) = ь

(a2, Х) = Ь2

(ат , Х) = Ьт

Перейдем к описанию метода разбиения несовместной системы на минимальное число совместных. Рассмотрим систему (3) с булевыми переменными. Пусть

"Ц, х) = х)

(а2, х) = МХ)

(ат , Х) = ^ (Х)

И L *(/),L *(f2),...,L *(^) - множество значений, принимаемых функциями/,,.,/т на Вп. Пусть х0 -решение какой-то системы

(х) = У1( х) = ь (a2, Х) = /2(. х) = Ь2

(ат , Х) = /т (Х) = Ьт

(4)

является несовместной, то система

Наличие такого х0 свидетельствует о совместности (4). Но это означает, что для существования такого решения необходимым и достаточным условием является выполнение соотношения

и

и

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

к=1

Обозначим через ¿*(а) - множество решений урав-сеиия ьиур^а, т.е. аножчстзо ^левые абосров, составляющие значзниеа линейнхй Ооиоо^Ца).

Теорема 2. Минимальное число совместных подсистем, на которое можно разбить систему (4) равно глубине матрицы Ж.

Доказательство непосредственно следует из прове-денноговышерассмотрения.

4а кем оСчазна еу^^ уравоени( Ь.(х)=ае 1=1,...,ш, «порождает» с истему подмножеств

ОзОо,)}-^ 2В.

Определение. Ччдмноонинзв М ^ Б" называется протыкающим для системы множеств У={У}, если выполняется условие М П V* ^ 0 .

Из этого следует, что элементы протыкающего множества имеют «представителей» в каждом из подмножеств системы. В нашем случае это означает, что каждое из уравнений системы (4) «удовлетворяется» хотя бы одной из точек протыкающего множества. В частности, если \М\=1, то М является единственным (обычным) решением системы (4).

В общем случае, если М={у1,.,у} - протыкающее множество для Vи и. - множество уравнений из системы (4), для которых точка у. является решением, тогда разбиение множества уравнений

о

{£*(а*)} = есть разбиение на подсистемы,

41

каждаяиз которыхсовместна.

Таким образом мы показали, что нахождение протыкающего множества наименьшей мощности эквивалентно разбиению несовместной системы на минимальное число совместных подсистем. Формально этовыглядит следующимобразом.

Пример 2. Рассмотрим следующую несовместную систему уравнений:

Ll = Х- + Х^ + Х3 = 1 L2 = Х- + 2 Х2 + Х3 = 2

Lз = х- + 2 Х2 + ЗХ3 = 3

Для нее имеем ¿1(1) = И(001),(010),(100)}, .¡(2!) = {(010),(101))} .(3) = {(001),(110)}. Тог-давышеупомянутаяматрица Ж имеет вид

Ж

0 0 0

1 0 1

1 1 0

1 0 0

0 0 о0

0 1 0

0 0 1

0 0 о0

Покрытиями матрица являются, например, подмно-

жества

101 110

010 9 001

, а £(№)=2.

Определение. Подмножество Т строк (0,1) - матрицы А называется покрытием, если в подматрице А\ об-разованнойэтимистроками,нетнулевыхстолбцов.

Чисто строк \Т называется мощностью покрытия, а минимум этой величины по всем покрытиям матрицы - глубиной матрицы. Обозначим эту величину через ЦА).

Пусть Вп = {*!, х2,..., х^п} и ¥={Ж1,.,Жп}, где Щ = {£*(а*)},I = 1,...,т. Рассмотрим (0,1Н-матрицу размеров 2"хш, где

если х.

^ .

0, если х. .

Непосредственной проверкой убеждаемся, что исходная несовместная система из трех уравнений разбивается на две совместные, например, следующие: первое и второе уравнение - это одна система, а третье - другая. Мы видим, что покрытие состоит более, чем из одного множества (т.е. \М\=2>1), поэтому и разбиение на подсистемы не одно.

2. О числе решений системы булевых уравнений

Для случая системы булевых уравнений ^-полной проблемой является уже ответ на вопрос: совместна ли эта система уравнений?

Поэтому получение нижней оценки числа решений системы булевых уравнений является достаточно естественной задачей. Если хотя бы в каких-то случаях оценка эта дает значение, не меньшее единицы, то это может иметь практическую пользу, так как дает решение #Р-полной задачи о разрешимости системы булевых уравнений.

Очевидный алгоритм проверки разрешимости задачи булева программирования - перебор всех 2п булевых векторов. Но этот метод не дает понимания, от чего зависит разрешимость системы (в отличие от классического случая системы линейных уравнений).

Обозначим через tЬl_ь (А) - число решений задачи булева программирования с системой ограничений вида Лх=Ь, где А = аУ

У

(т, п) - матрица.

FA^) = ^ *А

{¿ь-А,}

т 1\...Ьт

(А)

номы с положительными коэффициентами z11z22 определяют те вектора (Ь1,Ь2), для которых система ограничений разрешима.

Пример 4. Для п=4 рассмотрим следующий пример.

Х1+Х2+Х3 = Ь1

Х2+Х3+Х4 = Ь2

Здесь матрица ограничений имеет вид А =

1110 0111

Зафиксируем матрицу ограничений и будем варьировать вектор правых частей. Получим последователв-ность чисел {(А)}. Для этой последовательности построим производящую функцию Рлzm) в виде полинома

Из леммы 1 следует, что FA (вп, вч) =

м (П п в-и(п п в-вч)2(П п вчи м - п в- п вч п Лв-вч п

О ч ~ ч^чч лл чл лч п чвп вч п чвпвч п чвп вч п вп вч п вп вч п вп вч Отсюда следует, что система разрешима для следующих векторов правых частей: (0,0), (0,1), (1,0), (1,1), (2,1), (1,2), (2,2), (2,3), (3,2), (3,3).

Непосредственно из доказанной леммы 1 следует утверждение.

Напомним, что согласно введенным обозначениям, вектор (а1к,...,ат) - это к-й столбец матрицы ограничений.

Лемма 1. Справедлива формула:

РЛ) = ПП (1 + В* ) .

Эта лемма дает возможность найти число решений задачи булева программирования в зависимости от параметров А и Ь. Рассмотрим пример ее использования.

Следствие. Число разрешимых систем булевых уравнений вида Лх=Ь равно числу мономов, входящих с ненулевыми коэффициентами в полином

FA (^ ) .

Заметим теперь, что число различных мономов в полиноме FAzm) не может превышать его степени. Поэтому отсюда получаем еще одно соотношение.

Следствие. Число разрешимых систем булевых уравнений вида Лх=Ь не превышает степени полинома

FA (^ ) .

Пример 3. Рассмотрим задачу.

Х,+ХЛ...+Х =Ь,

12 п 1

Х.+Х.+ ...+Х ,.=Ь..

2 3 п+1 2

Здесь матрица ограничений имеет вид А =

11...10 01...11

Из леммы 1 следует, что FA (т,ч) = = (1 + z1)(1 + z1 zч) я-1(1 + zч). Отсюда видно, что мо-

Рассмотрим теперь еще одну комбинаторное свойство системы уравнений, которое можно исследовать с помощью доказанной леммы.

Пусть система разрешима. Мы пытаемся решить задачу с помощью какой-нибудь эвристики, задающей правило перебора по всему Вп. Чем больше доля решений, тем быстрее на это решение можно «наткнуться».

В связи с этим интересны оценки числа ^. ь (А). Следующая теорема дает одну такую оценку.

Теорема 3. Пусть v = у max ark , тогда справедли-

¿J r=l,...,m

во неравенство: k=1

x1+x2+x3+x4=b1

x2 + 2x4 = b2

max t (A) > (5) FA (Zx, z2) = (1 + z1z2)(l + zt)2(l + z z2) (7)

(L L 1 Ь ...bm\S v

{ьх,...,ьт} Л m m

Раскрывая скобки видим, что моном максималь-Конечно, оценка (5) очень слабая и бывает полезна ной степени z^z\. Поэтому правая часть в (5) вновь только в специальных случаях. Но так и должно быть, меньше единицы. так как проблема проверки разрешимости задачи

булева программирования является NP- трудной, а Но приводя подобные в (7) видим, что

проверка соотношения (5) может быть осуществлена maxtbb (A) = 2 и максимум достигается на парах

{b b } ^ 2

за полиномиальное по входу время. (Конечно, нужно

заметить, что в этом случае мы имеем не конкрет- b==2, b2=1; b==2, b2=2 и Ъ1=3, b2=3. (Для первого слу-ную индивидуальную задачу булева программирова- чая это решения (1,1,0,0) и (0,1,1,0), для второго -ния, а семейство таких задач, параметризованное (0,0,1,1) и (1,0,0,1), а для третьего - (0,1,1,1) и по {br...,bj. ) (1,1,0,1)).

Пример 5. Пусть есть система из двух уравнений и Рассмотрим теперь вопрос о числе решений систе-А - (0,1) -матрица. мы булевых уравнений с несколько иной точки зре-

ния.

Тогда m=2 и v<n.

Ответ на вопрос, разрешимо ли одно уравнение Из (5) получаем max t^ (A) > 1. n

|blb2} L(xp...,xJ= 2atxt =b в булевых переменных, все

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

Используя для анализа системы «комбинацию» из ¡=i

леммы 1 и теоремы 4, можно выбирать наиболее еще NP-полная задача. информативный результат. Этот факт иллюстрирует

следующие примеры. Например, к этой задаче сводится известная NP-

полная задача о камнях (задача о разбиении конеч-Пример 6. Рассмотрим систему уравнений: ного числа взвешенных объектов (камней) на две

части равного веса), состоящая в проверке разре-x1+2x2+3x3+4x4=b1 шимости в булевых переменных уравнения:

2x1+x2+x3+3x4=b2.

п п

2 ax=2 ai(1 - ).

(=1 (=1

Тогда из приведенной выше леммы имеем: Пример 8. Требуется разбить множество М={2,3,5,6}

на два подмножества с одинаковыми суммами. Тог-(6) да вышеприведенное уравнение имеет вид:

fa (zi. z2) = ' = (1 + Zi z22)(1 + Zi2 z2)(1 + Zi3 z2)(1 + Zi4 z23)

2 x1 + 3 x2 + 5 x3 + 6 x4 = 2(1 - xj) + 3(1 - x2) + + 5(1- x3) + 6(l- x4) или 4x1+6x2+10x3+12x4=16. Его Раскрывая скобки видим, что моном максимальной решением является вектор x=(1001), что соответ-степени zf z\. Поэтому правая часть (5) меньше ствует разбиениюM={2,6} U {3,5}. единицы.

Рассмотрим линейную форму (2) с булевыми пере-Но приводя подобные в (6) видим, что менными. Множество значений этой линейной формы maxt^b (A) = 2 и максимум достигается на парах обозначим, как и ранее, через L*(a p...,a). (А если это {bl'b2 не вызывает неопределенности, то просто через L*).

b=4, b2=3 и Ъ=6, b2=4. (Для первого случая это ре- n

шения (0,0,0,1) и (1,0,1,0), а для второго - (0,1,0,1) и Сама же форма L(x1,.,xn)= \ aixi зависящая от (1,1,1,0)). i=i Пример 7. Рассмотрим систему уравнений: переменных xp...,xn, будет для краткости обозначать-

п

ся через Ь. Приведем несколько примеров соотно- уравнения Ь(х,...,х) = ^а1х1 =Ь. шения а1,.,ап и Ь*(а,,...,а). '=1

Лемма 3. Справедливо соотношение

Пример 9. Если а =1, 1=1,...,п, то Ь*={0,1,2,...,п}.

' ( \ - 1 ^ (1 + иах )-(1 + и"п) ^ 1

Пример 10. Если а=2'-1, 1=1,...,п, то Ь*={0,1,2,... *ь (а1'-"'аЛ - 2ш- ^ иь+1 < 1-

,2п-1}. ' ]"]=г

Рассмотрим теперь вопрос о среднем значении

Пример 11. Если Ь(х1,...,х)=х1+х2+...+хп1+пхп, то tb (а1,...,ап) для фиксированного значения Ь по

Ь*={0,1,...,п,п+1,...,2п-1}. В этом случае уравнение всему булеву кубу при условиях (8) и (9).

Ь(х1,.,хп)=Ь имеет решение для всех Ь, удовлетворя- _

ющих условию 0<Ь<2п-1. Обозначим это число через .

Пример 12. Если Ь(х1,.,хп)=2х1+Зх2+Зх3+Зх4, то С учетом (8), (9) из леммы 3 имеем следующее соот-

Ь*={0,2,3,5,6,8,9,11}. В этом случае уравнение Ь(х1,. ношение.

,х)=Ь имеет решение для всех Ь, удовлетворяющих п N .

условию 0<Ь<11, кроме Ь=1,4,7,10. ^ _ ^ ^ ^а )

Сп+N-1 ¡'_1 а1 _а1-1

Просто из введенных определений получаем следующее очевидное утверждение. (Здесь считаем, что а0=1).

Утверждение. Уравнение Ь(х)=Ь разрешимо тогда и Лемма 4. Справедлива формула только тогда, когда Ь е L *.

Заметим, что Ь*(а,...,ане зависит от упорядоченности элементов а1,.,ап , поэтому в дальнейшем бу- — _ 1 1

^Ь = ~^П • ф Ь+1

=----— Ф --Г1-— (!и,р < 1.

дем считать, что Ь сп 2т Ф и

п+М-1 \и\=р

( N+лп

,г и - и

N +-

1 - и

(10)

а < а.<а . (8)

1 2 п

Рассмотрим в качестве примера случай трех переменных при произвольном N. (Здесь р<1.)

Определение. Формы Ь1(х1,.,х) и L2(x1,...,xп) называются эквивалентными, если Ь = Ь2. Теорема 4. Для случая трех переменных справедли-Пусть, как обычно, п -число переменных, а N - це- во соотношение: лое число такое, что

Т = N2 6 2 N + 2 N ь - N ь ~2—<5 +-2— +—2—о

1<а<М, ^=1,.,П. (9) ^N+1 CN+1 ^N+1

Через ^п^) обозначим число линейных форм с па- где ё - некоторая константа. раметрами п и N.

Рассмотрим теперь случай N=2 при произвольном Лемма 2. Справедливо равенство t (п, N = +п _1. количестве переменных. Пусть, как обычно,

п

Доказательство. Каждая линейная форма с услови- 11Х11 = ^ Х ями (8) и (9) может быть закодирована в алфавите 1=1

{1,...,Щ словом вида 1У12У2..1У11, где у, г=1,...Д, - Теорема 5. При N=2 и произвольном п справедливо число коэффициентов равных г, среди чисел а1,.,ап. соотношение:

Отсюда следует, что искомое число слов Ц,пN - это _ \ п (11)

число решений уравненияу1+у2+...+ул=п,у>0, 1=1,. tb =-^ СП1Ськ~к 2п~к

,N. Но отсюда и следует равенство t (п, N) = CnN+п _1. п +1 к=°

Пример 13. Пусть N=2, п=3. Из (11) имеем Лемма доказана. _ 1 п 1 з

Пусть, как и раньше tb (ах,...,ап)- число решений tb =-^СС~к2п~к = — ^СЗкСкЬ~к23-к . Отсю-

П + 1 к = 0 4 к = 0

да получаем ^ = — (2 + 3 +1 + 0) = 3/2, ^ =

= 1(2 + 3 + 2 + 3) = 5/2 , Т3 = 1(2 +1 + 2 + 0) =

= 5/4, Т. = 1(1 + 0 +1 + 3) = 5/4 , Т5 = - , Т, = -.

4 44 ; 5 4 6 4

Видно, что максимальное значение достигается

при Ъ=2.

рактеристик систем уравнений с целью выделения из несовместной системы минимального числа совместных подсистем. Рассмотрены возможности трансформации несовместной системы в совместную путем изменения части параметров системы.

Исследованы вопросы нахождения числа решений системы в зависимости от правых частей уравнений.

3. Заключение

В работе рассмотрены вопросы, связанные с разрешимостью систем булевых уравнений.

Предложен подход к анализу комбинаторных ха-

Полученные в работе результаты могут представлять интерес для прикладных разработок в различных областях дискретной оптимизации и исследования операций, а также в распознавании образов, криптографии и системах защиты информации.

Литература

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

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

3. Схрейвер А. Теория линейного и целочисленного программирования. М.: Мир.1991. 360 с.

4. Леонтьев В.К., Гордеев Э.Н. Производящие функции в задаче о ранце // Доклады Академии наук . 2018 . Т. 481. № 5. С. 478 -480. DOI: 10.31857/S086956520002139-5.

5. Леонтьев В.К., Гордеев Э.Н. О некоторых комбинаторных свойствах задачи о рюкзаке // Журнал вычислительной математики и математической физики. 2019. Т. 59. № 8.С. 1439-1447. DOI: 10.1134/S0044466919080076.

6. Kellerer H., Pferschy U., Pisinger D. Knapsack problems. Berlin: Springer, 2004. 548 p.

7. Леонтьев В.К., Тоноян Г.П. Приближенные решения систем булевых уравнений // Журнал вычислительной математики и математической физики 1993. Т. 33. № 9. С. 1383-1390.

8. Леонтьев В.К., Тоноян Г.П. О системах булевых уравнений // Журнал вычислительной математики и математической физики. 2013. Т. 53. № 5. С. 109-116.

9. Кузюрин Н.Н., Фомин С.А. Эффективные алгоритмы и сложность вычислений. М.: МФТИ, 2007. 311 с. ISBN 5-7417-0198-1

10. Леонтьев В.К., Гордеев Э.Н. Об алгебраической иммунности систем кодирования // Вопросы кибербезопасности, 2019, №1. С. 59-89. DOI: 10.21681/2311-3456-2019-1-59-68.

11. Гордеев Э.Н., Леонтьев В.К., Медведев Н.В. О свойствах булевых полиномов, актуальных для криптосистем // Вопросы кибербезопасности, 2017, №3. С. 63-69. DOI: 10.21681/2311-3456-2017-3-63-69.

12. Балакин Г.В. О решении некоторых классов систем булевых уравнений рекуррентного типа // Математические вопросы криптографии. 2013. Т.4. №1. С. 5-25. DOI: 10.4213/mvk71.

13. Балакин Г.В. О возможности частичного восстановления некоторых последовательностей по наблюдениям // Математические вопросы криптографии. 2013. Т.4. №4. С. 7-25. DOI: 10.4213/mvk97.

14. Зубков А.М. Круглов В.И. Моментные характеристики весов векторов в случайных двоичных линейных кодах // Математические вопросы криптографии. 2013. Т.3. №4. С. 55-70. DOI: 10.4213/mvk67.

15. Faug~re J.-C. A new efficient algorithm for computation Grebner e o bases (F4 ) // Journal of pure and applied algebra. 1999. Vol. 139. Issues 1-3. P. 61-88. DOI: 10.1016/S0022-4049(99)00005-5.

16. Faug~re J-C. A new efficient algorithm for computation Grebner e o bases without reduction to zero (F5 ) // Proceedings of the 2002 international symposium on Symbolic and algebraic computation 2002. P. 75-83. DOI: 10.1145/780506.780516.

17. Courtois N., Pieprzyk J. Cryptanalysis of block chiphers with overdened systems of equations // Proc. 8th Int. Conf. on the Theory and Application of Cryptology and Information Security. 2002. Springer. P. 267-287.

18. Courtois N, Bard G.V. Algebraic cryptanalysis of the data encryption standard // IMA International Conference on Cryptography and Coding Theory. Lecture Notes in Computer Science. Springer-Verlag. 2007. P. 152-169. DOI: 10.1007/3-540-36178-2_17.

19. Massacci F, Marraro L. Logical Cryptanalysis as a SAT Problem // Journal of Automated Reasoning. Springer Netherlands. 2000. Vol. 24. P. 165-203. DOI:10.1023/A:1006326723002.

20. Fiorini C., Martinelli E., Massacci F. How to fake an RSA signature by encoding modular root nding as a SAT problem // Discrete Applied Mathematics. 2003.Vol. 130. P. 101-127.

21. Mironov I., Zhang L. Applications of SAT Solvers to Cryptanalysis of Hash Functions// In: Biere A., Gomes C.P. (eds) Theory and Applications of Satisfiability Testing - SAT 2006. SAT 2006. Lecture Notes in Computer Science. Springer, Berlin, Heidelberg. Vol. 4121. P. 102-115. DOI: 10.1007/11814948_13

22. Мелузов А.С. Построение эффективных алгоритмов решения систем полиномиальных булевых уравнений методом опробования части переменных // Дискретная математика. 2011. Т. 23. № 4. С. 66-79.

23. Мелузов А.С. О криптоанализе LILI-128, основанном на частичном опробовании и мономиальной совместности систем полиномиальных уравнений // Сборник работ молодых ученых факультета ВМК МГУ. 2011. № 8. С.99-107.

24. Alekseev E.K., Oshkin I.V., Popov V.O., Smyshlyaev S.V., Solving systems of linear Boolean equations with noisy right-hand sides over the reals // Discrete Math. Appl. 2018. Vol. 28. №1. P. 1-5. D0I:10.1515/dma-2018-0001.

25. Леонтьев В.К. О псевдобулевых полиномах // Журнал вычислительной математики и математической физики. 2015. Т. 55. № 11. С. 1952-1958. DOI: 10.7868/S0044466915110113.

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

26. Леонтьев В.К. Комбинаторика и информация. Часть 1. Комбинаторный анализ. М.: МФТИ, 2015. 174 с.

27. Леонтьев В.К. Комбинаторика и информация. Часть 2. Информационные модели. М.: МФТИ, 2015. 112 с.

ON SOME FEATURES OF THE PROBLEM OF SOLVABILITY

OF SYSTEMS OF BOOLEAN EQUATIONS

Leontiev V. K.3, Gordeev E. N.4

The purpose of the article is to present new results on combinatorial characteristics of systems of Boolean equations, on which such properties of systems as compatibility, solvability, number of solutions and a number of others depend.

The research method is the reduction of applied problems to combinatorial models with the subsequent application of classical methods of combinatorics: the method of generating functions, the method of coefficients, methods for obtaining asymptotics, etc.

Obtained result. In this paper, we obtain results concerning the solvability of systems of Boolean equations. The complexity of the problem of" transformation" of an incompatible system into a joint one is analyzed. An approach to solving the problem of separating the minimum number of joint subsystems from an incompatible system is described and justified. The problem is reduced to the problem of finding the minimum covering set. The system compatibility criterion is obtained. Using the method of coefficients, formulas for finding and estimating the number of solutions for parameterizing the problem on the right-hand sides of equations are derived. The maximum of this number is also investigated depending on the parameter. Formulas for the number of solutions for two special cases are obtained: with a restriction on the number of equations and on the size of the problem parameters.

Keywords: NP-completeness, Boolean programming problem, joint systems, linear transformation, generating functions, parametric problems.

RFBR grant 20-01-00645

References

1. Papadimitriu KH., StaTglitc S. Kombinatornaia optimizatciia. Algoritmy~ i slozhnost\ M.: Mir, 1985. 512 s.

2. Ge~ri M., Johnson D. Vy~chisliteTny~e mashiny~ i trudnoreshaemy~e zadachi M.: Mir, 1982. 416 s.

3. SkhreTver A. Teoriia lineTnogo i tcelochislennogo programmirovaniia. M.: Mir. 1991. 360 s.

3 Vladimir Leontiev, Dr.Sc. (in Math.), Professor, professor of the Department of Information Security (IU-8) of Moscow State University, N.E. Bauman, Moscow, Russia. E-mail: vkleontiev@yandex.ru

4 Eduard Gordeev, Dr.Sc. (in Math.), Professor, professor of the Department of Information Security (IU-8) of Moscow State University, N.E. Bauman, Moscow, Russia. E-mail: werhorn@yandex.ru.

4. Leont'ev V.K., Gordeev E'.N. Proizvodiashchie funktcii v zadache o rantce // Doclady' Akademii nauk . 2018 . T. 481. № 5. S. 478 -480. DOI: 10.31857/S086956520002139-5.

5. Leont'ev V.K., Gordeev E\N. O nekotory'kh kombinatorny'kh svoi'stvakh zadachi o riukzake // Zhurnal vy'chislitel'noi' matematiki i matematicheskoi' fiziki. 2019. T. 59. № 8.S. 1439-1447. DOI: 10.1134/S0044466919080076.

6. Kellerer H., Pferschy U., Pisinger D. Knapsack problems. Berlin: Springer, 2004. 548 p.

7. Leont'ev V.K., Tonoian G.P. Priblizhenny'e resheniia sistem bulevy'kh uravnenii' // Zhurnal vy'chislitel'noi' matematiki i matematicheskoi' fiziki 1993. T. 33. № 9. S. 1383-1390.

8. Leont'ev V.K., Tonoian G.P. O sistemakh bulevy'kh uravnenii' // Zhurnal vy'chislitel'noi' matematiki i matematicheskoi' fiziki. 2013. T. 53. № 5. S. 109-116.

9. Kuziurin N.N., Fomin S.A. E'ffektivny'e algoritmy' i slozhnost' vy~chislenii~. M.: MFTI, 2007. 311 s. ISBN 5-7417-0198-1

10. Leont'ev V.K., Gordeev E'.N. Ob algebraicheskoi' immunnosti sistem kodirovaniia // Voprosy' kiberbezopasnosti, 2019, №1. S. 5989. DOI: 10.21681/2311-3456-2019-1-59-68.

11. Gordeev E'.N., Leont'ev V.K., Medvedev N.V. O svoi'stvakh bulevy'kh polinomov, aktual'ny'kh dlia kriptosistem // Voprosy' kiberbezopasnosti, 2017, №3. S. 63-69. DOI: 10.21681/2311-3456-2017-3-63-69.

12. Balakin G.V. O reshenii nekotory'kh classov sistem bulevy'kh uravnenii' rekurrentnogo tipa // Matematicheskie voprosy' kriptografii. 2013. T.4. №1. S. 5-25. DOI: 10.4213/mvk71.

13. 13. Balakin G.V. O vozmozhnosti chastichnogo vosstanovleniia nekotory'kh posledovatel'nostei' po nabliudeniiam // Matematicheskie voprosy' kriptografii. 2013. T.4. №4. S. 7-25. DOI: 10.4213/mvk97.

14. Zubkov A.M. Kruglov V.I. Momentny'e harakteristiki vesov vektorov v sluchai'ny'kh dvoichny'kh linei'ny'kh kodakh // Matematicheskie voprosy' kriptografii. 2013. T.3. №4. S. 55-70. DOI: 10.4213/mvk67.

15. Faug're J.-C. A new efficient algorithm for computation Grebner e o bases (F4 ) // Journal of pure and applied algebra. 1999. Vol. 139. Issues 1-3. P. 61-88. DOI: 10.1016/S0022-4049(99)00005-5.

16. Faug're J-C. A new efficient algorithm for computation Grebner e o bases without reduction to zero (F5 ) // Proceedings of the 2002 international symposium on Symbolic and algebraic computation 2002. P. 75-83. DOI: 10.1145/780506.780516.

17. Courtois N., Pieprzyk J. Cryptanalysis of block chiphers with overdened systems of equations // Proc. 8th Int. Conf. on the Theory and Application of Cryptology and Information Security. 2002. Springer. P. 267-287.

18. Courtois N, Bard G.V. Algebraic cryptanalysis of the data encryption standard // IMA International Conference on Cryptography and Coding Theory. Lecture Notes in Computer Science. Springer-Verlag. 2007. P. 152-169. DOI: 10.1007/3-540-36178-2_17.

19. Massacci F, Marraro L. Logical Cryptanalysis as a SAT Problem // Journal of Automated Reasoning. Springer Netherlands. 2000. Vol. 24. P. 165-203. DOI:10.1023/A:1006326723002.

20. Fiorini C., Martinelli E., Massacci F. How to fake an RSA signature by encoding modular root nding as a SAT problem // Discrete Applied Mathematics. 2003.Vol. 130. P. 101-127.

21. Mironov I., Zhang L. Applications of SAT Solvers to Cryptanalysis of Hash Functions// In: Biere A., Gomes C.P. (eds) Theory and Applications of Satisfiability Testing - SAT 2006. SAT 2006. Lecture Notes in Computer Science. Springer, Berlin, Heidelberg. Vol. 4121. P. 102-115. DOI: 10.1007/11814948_13

22. Meluzov A.S. Postroenie e'ffektivny'kh algoritmov resheniia sistem polinomial'ny'kh bulevy'kh uravnenii' metodom oprobovaniia chasti peremenny'kh // Diskretnaia matematika. 2011. T. 23. № 4. S. 66-79.

23. Meluzov A.S. O kriptoanalize LILI-128, osnovannom na chastichnom oprobovanii i monomial'noi' sovmestnosti sistem polinomial'ny'kh uravnenii' // Sbornik rabot molody'kh ucheny'kh fakul'teta VMK MGU. 2011. № 8. S.99-107.

24. Alekseev E.K., Oshkin I.V., Popov V.O., Smyshlyaev S.V., Solving systems of linear Boolean equations with noisy right-hand sides over the reals // Discrete Math. Appl. 2018. Vol. 28. №1. P. 1-5. DOI:10.1515/dma-2018-0001.

25. Leont'ev V.K. O psevdobulevy'kh polinomakh // Zhurnal vy'chislitel'noi' matematiki i matematicheskoi' fiziki. 2015. T. 55. № 11. S. 1952-1958. DOI: 10.7868/S0044466915110113.

26. Leont'ev V.K. Kombinatorika i informatciia. Chast' 1. Kombinatorny'i' analiz. M.: MFTI, 2015. 174 s.

27. Leont'ev V.K. Kombinatorika i informatciia. Chast' 2. Informatcionny'e modeli. M.: MFTI, 2015. 112 s.

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