Серия «Математика»
2010. Т. 3, № 4. С. 2-6
Онлайн-доступ к журналу: http://isu.ru/izvestia
УДК 519.716.322
О сложности одного класса булевых функций *
С. Ф. Винокуров, А. С. Казимиров
Восточно-Сибирская государственная академия образования
Аннотация. В работе исследуется сложность представления булевых функций в классе полиномиальных нормальных форм, которая определяется по числу слагаемых в минимальном полиноме. Рассматривается класс булевых функций, которые имеют наибольшую сложность среди всех функций от 6 переменных и менее. Получено точное значение сложности функций этого класса, зависящих от 7 переменных.
Ключевые слова: булевы функции; полиномиальные формы; операторные формы; минимизация; сложность.
Полиномиальным представлением булевой функции /(х\,..., хп) будем называть следующее представление:
где ф — сложение по модулю 2, К — произведения переменных, возможно с отрицанием, или функция 1.
Поскольку для каждой функции существует множество полиномиальных представлений, возникает задача нахождения наименее сложного. Здесь под сложностью Ь(Ф) полиномиального представления Ф будем понимать число слагаемых Ф, а под сложностью Ь(/) функции / — число слагаемых ее наименее сложного представления. Сложность всех функций от п переменных Ь(и) определяется как максимальная из сложностей таких функций.
Функции п — 1 переменной, полученные подстановкой константы а вместо переменной хг в функцию п переменных /, будем называть нулевой (при а = 0) и единичной (при а = 1) остаточными функциями и обозначать через и /X. соответственно.
А V V
На множестве булевых функций п переменных задается класс операторов, которые можно представить в виде последовательностей а1... ап, где аг € (а, е, р}. Число п будем называть размерностью оператора. Действие оператора а = а1... ап на функцию /(X) определяется по
* Работа выполнена при финансовой поддержке РФФИ, грант 09-01-00476-а.
f(Xi, . . . ,Xn) = Ki ф K2 ф ■ ■ ■ Ф Ks,
правилу: a(f(ж)) = /„(ж), где fo(ж) = f (ж) и
{/i-i(X), если a = e;
fi-i(xi, ...,Xi-i,Xi,Xi+i, ...,ж„), если a* = p;
/i-i(x)Xi ® fi-i(X))Xi, если ai = d.
Представление функции f (xi,..., ж„) в виде
s
f (ж) = 0 ai(h(x)),
i=i
1 s
в котором ai,..., as — операторы размерности n, называется операторной формой функции f, построенной по функции h(xi,..., ж„). В дальнейшем изложении будем считать, что h(X) = Xi ■ ... ■ ж„.
Пусть S — полная группа подстановок на множестве {d, e, p}:
S = f fdep\ /dep\ /dep\ /dep\ /dep\ /dep\ 1 \ \depy \dpe/ ^ped/ ^edp/ \epd/ \pdej J
Определим преобразование p операторов размерности n в виде последовательности pi... р„, где pi € S. Преобразование р действует на оператор a = ai... a„ следующим образом: p(a) = pi(ai)... p„(a„). Таким образом построенное преобразование р назовем S-преобразованием.
Действие S-преобразований распространяется на множество функций следующим образом. Пусть f (xi,..., ж„) = ^S=i al(h) — некоторая операторная форма функции f. Тогда p(f) = |=i p(a*)(h). SP-пре-
образованием назовем комбинацию S-преобразования и перестановки символов в операторах.
Две функции f (xi,..., ж„) и g(xi,..., ж„) называются SP-эквивалентными, если существует такое SP-преобразование р, что p(f) = g. Частным случаем SP-эквивалентности является LP-эквивалентность [7].
Все функции n переменных разбиваются на классы SP-эквивалентных функций. Более подробно об операторах и операторных преобразования можно прочитать в [2]. Здесь мы только отметим, что сложности SP-эквивалентных функций совпадают.
Для всех полиномиальных представлений известны следующие нижняя [5] и верхняя [3] оценки:
_2^_ < < 2„(2 log2 n + 2)
n log2 3 n
Однако задача нахождения самой сложной функции остается открытой. Известно [6, 7], что самыми сложными при n < 6 являются функции, SP-эквивалентные функции p„(xi,... ,ж„):
|0, если ai... a„ = 3k,
р„(аЪ . . . , а„) — л
11, иначе,
где ai... a„ — число, записанное в двоичном виде.
Обозначим через Мп множество всех функций, которые БР-эквива-лентны рп при различных п.
Также среди Мп выделим функции
Простая верхняя оценка получается из следующего неравенства:
С помощью вычислительной техники найдены £(^5) = 9 и £(рб) = 15 [7]. В [4] предложен алгоритм, которой позволил получить полиномиальное представление для р7 сложности 24, то есть было показано, что £(Рт) < 24. Однако оставался открытым вопрос о точном значении сложности Р7.
В данной работе окончательно решен вопрос о сложности Р7. Результат сформулирован в виде теоремы, хотя в доказательстве использованы компьютерные вычисления.
Теорема. £(р7) = 24.
Доказательство. Предположим, что существует такое полиномиальное представление Ф, реализующее функцию р7, что £(Ф) < 23.
Можно заметить, что (рг)2і = Ф^ = Рб, (Рт)Хі = Ф*і = Г6, (р7)Хі Ф
=ФХі Ф ФХі = 9б.
Сгруппируем в Ф слагаемые, содержащие жі и жі:
Ф = жі ■ Фі Ф Жі ■ Ф2 Ф Фз
Пусть Ь(Фі) = 1і, Ь(Ф2) = І2 и £(Фз) = 1з. Тогда 1і + І2 + Із < 23.
Неравенства
1і + І2 = Ь(Фі) + І(Ф2) > Ь(Фі Ф Ф2) = £(ФХі) > Ь(рб) = 15
показывают, что 1і + І2 > 15. Повторяя аналогичные рассуждения для
1і + 12 и 12 + 13, получаем систему неравенств:
0, если аі • • • ап = 3к + 1,
1, иначе
г„(аь • • • ,а„)
0, если аі • • • ап = 3к + 2,
1, иначе
Для рп известна следующая оценка [1]:
£(Рп) < 3Ь(р„-2)
1і + І2 + Із < 23
1і + І2 > 15
11 + Із > 15
12 + Із > 15,
из которых следует выполнение только одного из трех условий:
li = 7, l2 = 8, I3 = 8
li =8, l2 = 7, 1з = 8
li =8, l2 = 8, 1з = 7
Пусть, например, li = 7, l2 = 8, l3 = 8. Тогда £(Ф! ® Ф2) = 15, то
есть Ф1 ® Ф2 — минимальное полиномиальное представление для Аналогично, Ф1 ф Фз — минимальное представление для Гб.
Но тогда два минимальных представления для q6 и Гб должны содержать по крайней мере 7 общих слагаемых, так как ^(Ф!) = 7.
В двух других случаях не менее 7 общих слагаемых должны содержать представления для рб и q6 или рб и гб.
С помощью алгоритма точной минимизации функций 6 переменных [6] были найдены все минимальные формулы для функций рб, q6, Гб. Для каждой из этих функций существует по 14581 формуле минимальной сложности.
С помощью компьютерных вычислений все эти формулы были попарно рассмотрены и было показано, что никакие две формулы для разных функций не имеют более 6 общих слагаемых.
Таким образом, L(p7) > 23. С учетом того, что L(p7) < 24, получаем следующий результат: L(p7) = 24. □
Функции q7 и Г7, как SP-эквивалентные функции р7, тоже имеют сложность 24.
Следствие. L(7) > 24.
Список литературы
1. Балюк А. С. Нижняя оценка сложности одной последовательности булевых функций в классе полиномиальных нормальных форм / А. С. Балюк // Синтез и сложность управляющих систем : материалы XII междунар. шк.-семинара. - М. : Изд-во ЦПИ при мех.-мат. фак. МГУ, 2001. - Ч. 1. - С. 18-21.
2. Винокуров С. Ф. Перечисление операторных классов булевых функций / С. Ф. Винокуров, А. С. Казимиров// Изв. Иркут. гос. ун-та. Сер.: Математика. -2009. - Т. 2, № 2. - С. 40-55.
3. Кириченко К. Д. Верхняя оценка сложности полиномиальных нормальных форм булевых функций / К. Д. Кириченко // Синтез и сложность управляющих систем : материалы XII междунар. шк.-семинара. - М. : Изд-во ЦПИ при мех.-мат. фак. МГУ, 2001. - Ч. 1. - С. 115-120.
4. Рябец Л. В. Нахождение минимальных полиномов булевых функций с использованием специальной операторной формы / Л. В. Рябец // Технологии Microsoft в теории и практике программирования. - Новосибирск, 2006. - С. 215-217.
5. Even S. On minimal modulo 2 sums of products for switching function / S. Even, I. Kohavi, A. Paz // IEEE Trans. Elect. Comput. - 1967. - P. 671-674.
6. Gaidukov A. Algorithm to derive minimum ESOPs for 6-variable functions / A. Gaidukov // Proceedings of the 5th International Workshop on Boolean Problems 2002, Freiberg, Germany, Sept. 19-20, 2002. - P. 141-148.
7. Koda N. An Upper Bound on the Number of Products in Minimum ESOPs / N. Koda, T. Sasao // Workshop in Application of the Reed-Muller Expansion Apllication in Circuit Design. - Japan, 1995. - P. 94-101.
S. F. Vinokurov, A. S. Kazimirov
On Complexity of a Particular Boolean Functions Class
Abstract. This paper concerns complexity of polynomial forms (exor-sum-of-pro-ducts) representing Boolean functions. Complexity is defined as a minimal number of summands in exor-sum-of-products for a given function. A class of Boolean functions being the most complex among Boolean functions having 6 or less arguments is considered. The exact complexity for functions of described class having 7 agruments is obtained.
Keywords: boolean function, ESOP, exor-sum-of-products, polynomial, operator, complexity.
Винокуров Сергей Федорович, доктор физико-математических наук, профессор, Восточно-Сибирская государственная академия образования, 664011, Иркутск, ул. Н. Набережная, 6 тел.: (3952) 240435 ([email protected])
Казимиров Алексей Сергеевич, кандидат физико-математических наук, Восточно-Сибирская государственная академия образования, 664011, Иркутск, ул. Н. Набережная, 6 тел.: (3952) 240435 ([email protected])
Vinokurov Sergey, East Siberian State Academy of Education, 6, N. Naberezhnaya St., Irkutsk, 664011, professor, phone: (3952) 240435 ([email protected])
Kazimirov Alexey, East Siberian State Academy of Education, 6, N. Naberezhnaya St., Irkutsk, 664011, phone: (3952) 240435 ([email protected])