Серия «Математика» 2015. Т. 11. С. 49—57
Онлайн-доступ к журналу: http://isu.ru/izvestia
ИЗВЕСТИЯ
Иркутского государственного университета
УДК 519.71
Об одной комбинаторной задаче для множества двоичных наборов *
К. Д. Кириченко
Иркутский государственный университет Аннотация.
В данной работе рассматривается одна новая комбинаторная задача, возникающая в связи с изучением сложности представлений булевых функций полиномиальными нормальными формами. В теории сложности минимальная сложность представления самой сложной функции называется функцией Шеннона. Таким образом, верхняя оценка функции Шеннона гарантирует наличие представления данной сложности для любой булевой функции, что имеет существенное прикладное значение.
Обычно для нахождения верхней оценки функции Шеннона используются конструктивные алгоритмы минимизации, работающие на классе всех булевых функций. Ранее автором был разработан алгоритм минимизации полиномиальных нормальных форм булевых функций, основанный на комбинаторной технике, связанной с задачами нахождения покрытий и упаковок на множестве двоичных наборов. Полиномиальная форма для заданной булевой функции строится на основе шаблона, который описывается невырожденной матрицей над полем Z2, где каждая строка и столбец соответствует некоторому двоичному набору. При этом для получения хорошей верхней оценки требуется, чтобы множества наборов в строках и столбцах обладали упаковками с плотностью 1 + о(1).
При построении матрицы шаблона естественно воспользоваться линейными кодами, исправляющими одну ошибку, в частности, может быть использован код Хэм-минга. Это позволяет использовать понятия теории линейных кодов в формулировках соответствующих комбинаторных задач. Задачу, рассматриваемую в настоящей работе также можно отнести к классу задач на нахождение покрытий и упаковок. При этом на покрытие накладывается ряд дополнительных условий, вытекающих из требований к матрице. В работе приводятся некоторые из возможных покрытий, описанные на языке линейных кодов, исправляющих ошибки.
Ключевые слова: булевы функции, полиномиальные нормальные формы, линейные коды, упаковки и покрытия.
В работе рассматривается одна новая комбинаторная задача, возникшая в результате исследований одного из подходов к получению асимп-
* Работа выполнена при финансовой поддержке РФФИ, грант 13-01-00621.
тотических верхних оценок сложности булевых функций в классе полиномиальных нормальных форм. Этот подход заключается в построении полиномиальных нормальных форм специального вида, называемых шаблонами минимизации.
При исследовании шаблонов минимизации естественным образом возникает класс матриц специального вида над полем При этом путем к получению асимптотических верхних оценок сложности является изучение алгебраических свойств этого класса матриц [1].
Данный класс матриц может быть определен следующим образом. Обозначим Ут — множество всех двоичных наборов длины п веса т. Назовем некоторый счетный класс множеств X = {Xт\Хт ^ Ут} упаковываемым, если для каждого ХЩ найдется множество Р(ХЩ) Q УП+1 такое, что для любого х € ХЩ найдется у € Р(ХЩ), что х < у; и \ХЩ\/\Р(ХЩ)\ = т + 1 - о(п).
Отметим, что для произвольного у € УЩ+1 имеется ровно т + 1 меньших наборов из УЩ, таким образом условие \ХЩ\/\Р(ХЩ)\ = т + 1 — о(п) означает, что упаковка наборов класса множеств Х должна быть асимптотически оптимальной.
Класс матриц А(Х) = {Ат} определяется через класс упаковываемых множеств Х следующим образом. Матрица Ат содержит \УЩ\ХЩ\ строк и \ХЩ+1\ столбцов, при этом каждой строке матрицы соответствует некоторый набор а € УЩ\ХЩ, а каждому столбцу — набор ¡3 € ХЩ+1. Элементом матрицы, находящимся на пересечении строки а и столбца 3, будет единица, если а < 3, и ноль в противном случае.
Ранее автором была доказана оценка функции Шеннона сложности булевых функций в классе ПНФ [1], которую в обозначениях данной работы можно записать
п—1 п—1
Ь(п) < 3 ^ \Р(ХП)\ + ^2(\УЩ \ ХП\ — гапд(АП))
г=0 г=0
Таким образом, для получения хороших верхних оценок требуется либо находить эффективные упаковки почти всех двоичных наборов, либо добиваться того, чтобы матрицы, составленные из неупакованных наборов, имели ранг близкий к количеству этих наборов.
Отметим, что задача упаковки множеств УЩ достаточно хорошо известна как задача Турана [6]. В 1985 году Редлем было доказано, что для фиксированного т класс множеств УЩ является упаковываемым [5], однако в данном случае нас более интересуют множества наборов с весами близкими к ^
Дж. Н. Купер, Р. Б. Эллис и А. Б. Канг в 2001 году доказали, что асимптотическая сложность упаковки всех двоичных наборов составляет [3]), таким образом асимптотика функции Шеннона сложности булевых функций в классе ПНФ равна ©(—) [2].
Для получения упаковываемых множеств наборов вполне естественно воспользоваться оптимальными кодами, исправляющими одну ошибку. Удобными объектами такого вида являются линейные коды и, в частности, код Хэмминга. С теорией линейных кодов, исправляющих ошибки, можно познакомиться, например, по книге [4].
Отметим, что оптимальные коды существуют только для двоичных последовательностей длины 2к — 1, поэтому далее будем предполагать, что в качестве п используются только такие значения.
При работе с линейными кодами используется тот факт, что множество целых чисел {0,1,...,2к — 1} можно считать линейным пространством над полем в котором каждое число представляется в виде своего вектора в двоичной записи.
Далее сумму двоичных векторов чисел а и Ь в поле будем обозначать а ® Ь и называть XOR-суммой.
Для упрощения изложения будем использовать следующее обозначение: если р — некоторое натуральное число, то двоичный набор у которого в позиции р находится единица, а остальные элементы — нули будем обозначать р.
Напомним, что в теории линейных кодов, исправляющих ошибки, синдромом двоичного набора называется XOR-сумма номеров позиций, в которых произошла ошибка. Здесь синдромом набора а = (а1,..., ап) мы будем называть XOR-сумму всех двоичных представлений номеров, в позиции которых набор содержит единицы. Синдром набора а далее
п
будем обозначать в (а). Формально в (а) = ■ г.
г=1
Код Хэмминга можно определить как множество кодовых слов, синдром которых равен нулю. При этом все смежные классы кода Хэм-минга также являются оптимальными кодами, исправляющими одну ошибку. В качестве вершин упаковки можно взять любой из смежных классов кода Хэмминга, однако здесь для упрощения обозначений мы будем рассматривать упаковку, построенную непосредственно на множестве кодовых слов кода Хэмминга.
Здесь будет использоваться свойство оптимальности кода Хэмминга, которое заключается в том, что каждый набор а либо входит в код, либо в код входит ровно один из соседних с а наборов.
Пусть а некоторый набор такой, что в позиции р = в (а) находится ноль. Тогда очевидно, что набор а, полученный в результате замены нуля в позиции р на единицу, больше чем а, и кроме того, его синдром равен нулю. в (а) = в (а ® р) = в (а) ® р = 0. Таким образом, а является кодовым словом кода Хэмминга.
Определим С = {Ст} как класс множеств, где каждое множество состоит из всех наборов длины п веса т, у которых в позиции синдрома находится ноль. Этот класс множеств является упаковываемым, поскольку в вершинах упаковки находятся кодовые слова кода Хэмминга,
который является оптимальным. Наборы, входящие в класс С, соответствуют столбцам матриц шаблона. Строкам же соответствуют все наборы, которые не входят в C. Таким образом, их можно определить как множества наборов, синдром которых равен нулю или в позиции синдрома которых находится единица.
Пусть 7 кодовое слово кода Хэмминга и ||71| = т. Тогда, всякий набор 7 такой, что ||71| = т + 1 и 7 >7 может быть получен изменением нуля в позиции p на единицу. Тогда s(7) = s(7) ® p = 0 ® p = p. Таким образом, as(a) = 1 и все наборы большие, чем 7 не входят в С'П+1. Это означает, что в матрице шаблона строка, соответствующая набору 7 состоит из всех нулей. Поэтому такие строки матрицы можно исключить из дальнейшего рассмотрения, далее рассматриваем только те строки матрицы, которые соответствуют наборам, в позиции синдрома которых находится единица.
Обозначим множества таких наборов за Rm = {7 С У'П\ as(&) = 1}
Это приводит нас к задаче нахождения ранга матриц Am над полем Z2, у которых каждой строке соответствует некоторый двоичный набор 7 длины n, такой, что вес набора ||а|| = т и as(&) = 1, а каждому столбцу набор 7 длины n, такой что Цв|| = т + 1 и в3ф) = 0.
В связи с нахождением ранга таких матриц естественно возникает задача описания их нулевых миноров. Для поля Z2 это эквивалентно тому, что в каждом столбце минора имеется четное число единиц. Таким образом, возникает комбинаторная задача следующего вида: для заданных натуральных чисел n, т таких, что n = 2к — 1, т < n описать множества наборов Y С Rm такие, что для всякого в £ С'П+1 существует четное число наборов 7 £ Y меньших, чем в. Такие множества двоичных наборов далее будем называть четнопокрытыми.
Далее в этой работе будут описаны некоторые из конструкций чет-нопокрытых множеств.
Предложение 1. Пусть 7 £ и синдром s(7) = 0. Тогда Y =
{У £ >7} — четнопокрытое.
Доказательство. Докажем, что Y С RП. Если произвольный набор у £ Y больше набора 7 и их веса отличаются на единицу, то эти наборы различаются в одной позиции, номер которой обозначим p. Таким образом, yp = 1. Тогда s(y) = s(7 ® p) = s(7) ® p = p. Тогда yp = ys(y) = 1
и y £ Rm.
Далее возьмем произвольный набор в £ СП+1. Если в > 7, набор в отличается от 7 в двух позициях, номера которых обозначим p и q. Тогда существует ровно два набора 7 ® p и 7 ® q , больших чем 7 и меньших чем в. По определению оба этих набора входят в Y, то есть в накрывает четное число наборов из Y.
Иначе, если наборы 3 из несравнимы, то не существует наборов из У меньших чем /3. Таким образом, предложение доказано. □
Данная конструкция является довольно простой и имеет место для почти всех весов к. Очевидно, что симметрическая разность двух чет-нопокрытых множеств также является четнопокрытым множеством. В связи с этим четнопокрытые множества, представимые в виде симметрической разности нескольких множеств указанного вида, будем называть тривиальными. Основная цель данной работы будет заключаться в нахождении нетривиальных конструкций четнопокрытых множеств.
Для предъявления других конструкций будет полезно ввести еще несколько обозначений. Нам будет удобно представлять двоичные наборы в виде характеристических множеств следующим образом: множество В представляет двоичный набор /5, если В содержит те и только те натуральные числа г, что Зг = 1.
Заметим, что множество натуральных чисел с нулем меньших 2к может рассматриваться как линейное векторное пространство над полем 22, где каждое число представляется своим вектором двоичной записи длины к. Таким образом, в характеристическом множестве набора каждый компонент является элементом линейного векторного пространства.
Пусть Ь = {0,11,12,. ..,1т} некоторое подпространство линейного векторного пространства над полем 22, а Н = {0,Н1 ,Н2,...,Н3} его ортогональное дополнение, причем Ь и Н содержат более 2 векторов. Обозначим Ьсмежный класс Ь по элементу Н^ € Н.
При доказательстве основных утверждений будет использоваться следующая простая лемма.
Лемма. Пусть Ь некоторое подпространство линейного векторного пространства над полем 22, состоящее более чем из двух векторов. Тогда а = 0.
Доказательство. Пусть Ъ1,...ЪГ — базис Ь. Тогда каждый элемент пространства Ь является одной из 2Г различных линейных комбинаций базисных векторов. При этом каждый базисный вектор будет входить ровно в 2Г-1 линейную комбинацию. Тогда, учитывая что 2г-1то(1 2 = 0 при г > 1, получим
г
^Т а = ^ 2г-1Ъг = 0 а£Ь г=1
□
Теорема. Пусть Ь = {0,11,12,...,1^} — некоторое подпространство линейного векторного пространства над полем 22, а
н = {0, Н ,Н2, ...,Н}
его ортогональное дополнение, причем к > 1,« > 1; выбрано произвольное множество Ь0 С Ь \ {0} и набор нечетных натуральных чисел п2,...,п3, щ < к. Тогда четнопокрытым является множество всех наборов, характеристические множества которых могут быть представлены в виде
В (Ь, Ьо, Н ,П2,..., щ) = {а\а = Ьо и ЬН1 и ЬЩ и ... и Ь' } Ы
м0 и Ьы и Ьн-2 и ... и где Ь' некоторое подмножество Ь^ мощности щ.
Пример 1. Для п = 15, т = 7 множество В({0,1,2,3}, {1}, 12,1,1) содержит следующие наборы {(100.1000.1000.1111),(100.1000.0100.1111),(100.1000.0010.1111),(100.1000.0001.1111), (100.0100.1000.1111),(100.0100.0100.1111),(100.0100.0010.1111),(100.0100.0001.1111), (100.0010.1000.1111),(100.0010.0100.1111),(100.0010.0010.1111),(100.0010.0001.1111), (100.0001.1000.1111),(100.0001.0100.1111),(100.0001.0010.1111),(100.0001.0001.1111)} В данном примере выбрано подпространство {0,1, 2, 3}, нумерация элементов в наборе идет слева направо, начиная с единицы. Таким образом, первая тройка элементов набора соответствует подпространству. Второй параметр задает подмножество Ьо С Ь и означает, что в первой позиции всех наборов находится единица.
Смежными классами данного подпространства являются множества {4, 5, 6, 7}, {8, 9,10,11}, {12,13,14,15}. Третий параметр задает смежный класс {12,13,14,15}, в позициях которого во всех наборах находятся единицы. Наконец указано, что для смежных классов {8, 9,10,11}, {12, 13, 14, 15} всеми способами выбираются подмножества из 1 элемента, и каждый способ порождает один из наборов.
Доказательство. Рассмотрим некоторый набор в и его характеристическое множество В. Предполагаем, что В удовлетворяет условию теоремы.
Сначала докажем, что набор /3 содержит 1 в позиции синдрома. Это означает, что сумма всех элементов из В принадлежит В.
Заметим, что ^Г Ь = Нз ® (з, где ( € Ь поскольку
п ч
ье\
'Ч 'Ч
Ь = ^ Н ® и = Щ • Нз ® ^ ¡г = Нз ® (
Ч г=1 г=1
так как по построению щ нечетное число
-'3 = 1
Н] = 0, отсюда )Ц 13=2 Нз
Из доказанной леммы £^=1 Нз = 0, отсюда ^^=2 Нз = Н1. Тогда
Ь = Ь ® Ь ® ^Г Ь = (о ® 0 ® ^Г(Нз ® (з) = Н1 ® (
ьев ьеьо ьеьк1 з=2 ьеьк. з=2
где d Е Ь. Учитывая, что Н1 ф d Е и С В получаем, что в позиции синдрома для набора соответствующего В наверняка находится единица.
Теперь рассмотрим произвольный набор а = Ь ф р, полученный заменой в позиции р нуля на единицу из набора [3.
Рассмотрим его характеристическое множество А = В V {р}. При этом возможны два случая: либо р Е Ь, либо р Е Ь^^, где ] > 2.
В первом случае имеет место доказательство, аналогичное приведенному выше, позволяющее заключить, что в позиции синдрома а находится единица, т. е. а не принадлежит множеству стобцов.
Во втором случае в позиции синдрома набора а может быть как ноль, так и единица, однако независимо от этого множество Ь1^. V {р} содержит четное количество элементов, следовательно, существует четное количество способов исключить из этого множества один элемент, получая при этом наборы из В. Таким образом, теорема доказана. □
Другая конструкция с аналогичным набором т,...п8 нечетных чисел в тех же обозначениях выглядит следующим образом.
Теорема. Пусть Ь = {0,1,12,...,1к} — некоторое подпространство линейного пространства над полем Z2, а Н = {0,Н1 ,Н2,...,Н8} его ортогональное дополнение, причем к > 1,« > 1 и выбраны нечетные натуральные числа п1,..., п8, и < к. Тогда четнопокрытым является множество всех наборов, характеристические множества которых могут быть представлены в виде
В (Ь,п1,...,п8) = {а\а = Ь \{0}иЬ^ и Ьп£ и ... и ЬЦ }
такие, что в (в) = 0, где Ьп некоторое подмножество Ь^ мощности щ
Доказательство. для данной конструкции очень похоже на приведенное выше. Отметим только одно различие.
8 8 8 8 Ж Ь = 1С Ь ф Ж Ж Ь = 0 Ф 1С (Н] ф dj) = ^Т Нз ф ^Т dj = d
ьев ьеь з=1 ьеьк. з=1 з=1 з=1
Таким образом, сумма элементов В в данной конструкции будет принадлежать Ь, и из условия теоремы не равняться нулю. При этом построение гарантирует, что Ь С В, то есть в позиции синдрома /3 находится единица. Далее доказательство полностью аналогично. □
Список литературы
1. Кириченко К. Д. Оценки сложности шаблонов минимизации полиномиальных форм булевых функций / К. Д. Кириченко // Изв. Иркут. гос. ун-та. Сер. Математика. - 2009. - Т. 2, № 2. - С. 67-76.
2. Башов М. А. О длине функций k-значной логики в классе полиномиальных нормальных форм по модулю k / М. А. Башов, С. Н. Селезнева // Дискрет. математика. - 2014. - Т. 26, № 3. - C. 3-9.
3. Мак-Вильямс Ф. Дж., Слоэн Н. Дж. А. Теория кодов, исправляющих ошибки. — М.: Связь. — 1979. — 744 с.
4. Cooper J. N. Asymmetric binary covering codes / J. N. Cooper, R. B. Ellis, A. B. Kahng // Journal of Combinatorial Theory. - 2001. - Vol. 100, N 2. - P. 232-249.
5. Rodl V. On a packing and covering problem / V. Rodl // European Journal of Combinatorics. - 1985. - Vol. 6. - P. 69-78.
6. Turan P. Reseach Problems / P. Turan // Magyar Tud. Acad. Mat. Kutato Int. Kozl. - 1961. - Vol. 6. - P. 417-423.
Кириченко Константин Дмитриевич, кандидат физико-математических наук, Иркутский государственный университет, 664011, Иркутск, ул. К. Маркса, 1, тел.: (3952)241097 (e-mail: [email protected])
K. D. Kirichenko
On a Combinatorial Problem for the Set of Binary Vectors
Abstract. In this paper we introduce a new combinatorial problem for covering binary sets. This problem appears in connection to research of complexity of ESOP. Shannon function is called maximum from complexities of the shortest representation of each Boolean function. Hence the upper bound of the Shannon function guarantees the existence of the representation of any Boolean function with this complexity. It is important for applications.
As usual implicit algorithms of minimisation working with any Boolean function are used for defining the upper bound of Shannon function. Previously we have developed the algorithm of minimisation of Boolean functions in ESOPs which uses the combinatorial technique connected with tasks of finding covering and packing of binary sets. ESOP for given Boolean function is built by pattern which is described of non-singular matrix over the field Z2 in that earch row and column matches any binary set. These binary sets should have the packing with density 1 + o(1) for getting the effective upper bound.
It is normal to use error-correcting linear codes for building a matrix of pattern. In this case Hamming code may by used. And so it lets use terms of the linear codes theory in definitions of combinatorial problems. In this paper we investigate a problem which belongs to covering and packing design. In doing so requirements to matrix impose several conditions to cover. In this work some of possible covers are introduced which have been described in terms of error-correcting linear codes.
Keywords: boolean function, ESOP, Hamming code, covering design.
References
1. Kirichenko K.D. Bounds of the minimization patterns' complexity of ESOP (in Russian). IIGU Ser. Matematika, 2009, vol. 2, pp. 67-76.
2. Bashov M.A., Selezneva C.N. On the length of functions of fc-valued logics in modulo k ESOP (in Russian). Diskretnaya matematika, 2014, vol. 26, no 3, pp. 3-9.
3. Cooper J.N., Ellis R.B., Kahng A.B. Asymmetric binary covering codes. Journal of Combinatorial Theory, 2001, vol. 100, no 2, pp. 232-249.
4. MacWilliams F.J., Sloane N.J.A. The Theory of Error Correction Codes. North-Holland Publishing Company, 1977.
5. Rodl V. On a packing and covering problem. European Journal of Combinatorics, 1985, vol. 6, pp. 69-78.
6. Turan P. Reseach Problems. Magyar Tud. Acad. Mat. Kutato Int. Kozl, 1961, vol. 6, pp. 417-423.
Kirichenko Konstantin Dmitrievich, Candidate of Sciences (Physics and Mathematics), Irkutsk State University, 1, K. Marx st., Irkutsk, 664003, tel.: (3952)241097 (e-mail: [email protected])