ПРИКЛАДНАЯ ДИСКРЕТНАЯ МАТЕМАТИКА
2015 Теоретические основы прикладной дискретной математики №4(30)
УДК 519.7
О СЛОЖНОСТИ СХЕМ В БАЗИСАХ, СОДЕРЖАЩИХ МОНОТОННЫЕ ЭЛЕМЕНТЫ С НУЛЕВЫМИ ВЕСАМИ1
В. В. Кочергин*, А. В. Михайлович**
* Московский государственный университет им. М.В. Ломоносова,
** Национальный исследовательский университет «Высшая школа экономики»,
г. Москва, Россия
Исследуется сложность реализации булевых функций и систем булевых функций схемами в базисе, состоящем из элементов двух сортов. Элементами первого сорта являются произвольные монотонные функции, таким элементам приписан нулевой вес. Конечное число немонотонных функций образует непустое множество элементов второго сорта, каждой такой функции приписан положительный вес.
Для случая, когда отрицание является единственным элементом второго сорта,
А. А. Марковым в 1957 г. показано, что минимальное число немонотонных элементов, достаточное для реализации функции f, равно |"log2(d(f) + 1)], где d( f) — максимальное число переключений значений функции f с 1 на 0 (максимум берётся по всем возрастающим цепям наборов значений переменных). В работе установлено, что в общем случае сложность реализации булевой функции f равна Pflog2(d(f) + 1)] — 0(1), где р — минимальный вес немонотонных элементов базиса. Получено также аналогичное обобщение классического результата А. А. Маркова о сложности реализации систем булевых функций.
Ключевые слова: булевы схемы, схемы из функциональных элементов, базисы с нулевыми весами, сложность булевых функций, схемная сложность, инверсионная сложность, теорема Маркова.
DOI 10.17223/20710410/30/2
ON THE COMPLEXITY OF CIRCUITS IN BASES CONTAINING MONOTONE ELEMENTS WITH ZERO WEIGHTS
V. V. Kochergin*, A.V. Mikhailovich**
* Lomonosov Moscow State University,
**National Research University Higher School of Economics,
Moscow, Russia
E-mail: vvkoch@yandex.ru, anna@mikhaylovich.com
Complexity of Boolean functions and Boolean function systems realization in a base consisting of all monotone functions and a finite number of non-monotone functions is researched. The weight of any monotone function in the base is supposed to be 0, the weight of non-monotone function in it is positive. A. A. Markov studied special case of this base, where the non-monotone part consisted of the negation function. He showed that the minimum number of negation elements which are needed to realize
1 Исследование (№ 14-01-0144) выполнено при поддержке Программы «Научный фонд НИУ ВШЭ» в 2014-2015 гг. Работа первого автора выполнена при частичной финансовой поддержке РФФИ, проект №14-01-00598.
О сложности схем в базисах, содержащих монотонные элементы с нулевыми весами 25
an arbitrary function / equals |~log2(d(f) + 1)]. Here d(f) is the maximum number of value changes from 1 to 0 over all increasing chains of arguments tuples. The aim of this paper is to prove that the complexity of a Boolean function / realization equals Pl~log2(d(f) + 1)] — O(1), where p is the minimum weight of non-monotone elements in the base. Similar generalization of the classical Markov's result concerning the realization of Boolean function systems is obtained too.
Keywords: Boolean circuits, logic circuits, bases with zero weight elements, Boolean function complexity, circuit complexity, inversion complexity, Markov’s theorem.
Введение
При построении логических схем (схем из функциональных элементов) [1, 2], а также формул (называемых также суперпозициями или схемами без ветвления выходов элементов) над конечными и бесконечными системами базисные элементы могут иметь разные сложностные характеристики, определяющие преимущество одних элементов над другими, причём эта разница может быть столь большой, что можно считать веса некоторых элементов нулевыми. Такой подход даёт возможность выявить более выпукло роль элементов того или иного типа при реализации заданных функций или систем функций. Таким образом, возникает задача о синтезе схем в вырожденных базисах, а именно требуется найти минимальное число элементов (сумму весов) некоторых сортов (положительной части базиса), необходимое для реализации произвольной булевой функции или системы функций с использованием произвольного числа элементов других сортов (нулевой части базиса). Исторически наибольший интерес вызывала задача о сложности реализации функций схемами и формулами в базисе, нулевая часть которых порождает множество всех монотонных булевых функций, а положительная часть состоит из отрицания. Первые результаты относительно этой меры сложности, которую принято называть инверсионной сложностью, получил Э. Н. Гилберт [3]. Позднее А. А. Марков установил [4, 5] точные формулы для инверсионной сложности произвольной булевой функции и произвольной системы булевых функций при реализации схемами. Точное значение инверсионной сложности любой булевой функции при реализации формулами было найдено Э. И. Нечипоруком [6] (им же установлены экспоненциального вида асимптотики роста функций Шеннона [1] сложности схем и формул в некоторых других базисах, содержащих элементы с нулевыми весами [6-8]). В настоящей работе исследуется сложность реализации булевых функций и систем функций в базисах, нулевая часть которых состоит из всех монотонных функций (или, что то же самое, из какого-либо порождающего множества класса монотонных функций), а ненулевая часть — произвольное конечное множество немонотонных функций. Для произвольной системы булевых функций значение сложности её реализации в базисе такого типа установлено с точностью до аддитивной константы, зависящей только от базиса. Предварительный вариант настоящей работы можно найти
в [9].
1. Определения, известные результаты и некоторые наблюдения
Чтобы дать точные формулировки упомянутых результатов, а также основного утверждения настоящей работы, введём необходимые понятия.
Обозначим множество {0,1} через E2. Последовательность
а1 (a11,...,a1ra), а2 (а21 ,...,a2ra), ..., ar (ar 1, . . . , aru)
26
В. В. Кочергин, А. В. Михайлович
наборов из множества ЕП назовём возрастающей цепью или просто цепью, если все наборы а1,а2,... ,аг различны и выполняются неравенства
aij ^ ai+1,j, i 1, . . . , r 1, j !,..., n.
Наборы ai и ar будем называть началом и концом этой цепи соответственно.
Пусть f (x1,... , xn) — булева функция. Упорядоченную пару наборов a = (а1,... , ап) и в = (в1,..., вп), 5, в Е ЕП, будем называть обрывом для функции f, если выполнены следующие условия:
1) aj < ej, j = 1,...,n;
2) f (a) > f (в).
Обрывом для системы функций будем называть любую пару наборов, являющуюся обрывом хотя бы для одной функции системы.
Пусть F = {f1,...,fm}, m ^ 1, — система булевых функций от переменных x1,... xn, а C — цепь, имеющая вид
51, <52, ... , 5r.
Под падением dc (F) системы F на цепи C будем понимать число обрывов для системы F на парах вида (<5i,ai+1).
Спад d(F) системы F определим равенством d(F) = max dc (F), где максимум берётся по всем цепям C.
Пусть Р2 — множество всех булевых функций, M — класс всех монотонных функций из Р2. Будем исследовать сложность реализации булевых функций и систем функций в базисах B следующего вида:
B = M U {^1,... ,шр], Ui Е Р2 \ M, i =1 ,...,p,
причём функциям из множества M приписан нулевой вес, а функциям и1,... ,up — положительные веса р1,..., рр соответственно. В дальнейшем, если не оговорено иное, будем под базисом понимать базис такого вида.
Для сложности над базисом B схемы S, функции f и системы функций F будем использовать обозначения Ib(S), Ib(f) и Ib(F).
Исчерпывающее описание сложности булевых функций и систем функций в базисе B0 = M U {x} (т. е. инверсионной сложности) было получено А. А. Марковым [4, 5]: для любой системы F булевых функций в предположении, что вес инвертора равен единице, установлено равенство
IBo(F) = [log2(d(F) + 1)1 .
Для случая реализации в базисе B0 булевых функций схемами без ветвления выходов элементов (формулами) окончательное решение получено Э. И. Нечипоруком [6]. Им показано, что минимальное число отрицаний, достаточное для вычисления формулами произвольной булевой функции f, равно d(f) (стоит сказать, что этот результат спустя почти полвека был «переоткрыт» в [10]).
Отметим также работы [11-15], в которых рассматривались близкие задачи.
Переходя к изучению сложности реализации функций в произвольном базисе B описанного вида, заметим, что в силу того факта, что из любой немонотонной функции путём подстановки констант (являющихся монотонными функциями) можно получить
О сложности схем в базисах, содержащих монотонные элементы с нулевыми весами 27
отрицание, теоремы Маркова дают такую верхнюю оценку сложности произвольной системы F булевых функций:
Is(F) ^ Рв \log2(d(F) + I)] ,
где рв = min р^.
i
Если в базисе B для всех i, 1 ^ i ^ р, выполняются равенства d(ui) = 1, то для сложности в таком базисе справедлива точно такая же нижняя оценка:
1B(F) > Рв \bg2(d(F) + 1)] .
Для её доказательства можно использовать с минимальными изменениями вариант из [16] доказательства нижней оценки теоремы Маркова.
Если же в базисе, в котором все немонотонные функции имеют единичный вес, есть хотя бы одна немонотонная функция Wj, удовлетворяющая условию d(wj) > 1, то такое равенство становится, вообще говоря, неверным. Действительно, с одной стороны, очевидно равенство Is(wj) = 1, а с другой стороны, выполняется соотношение \log2(d(wj) + 1)] ^ 2. Кроме того, в этом случае сложность системы булевых функций уже может определяться не только значением спада этой системы. В качестве примера достаточно взять в некотором смысле самый простой базис, содержащий немонотонную функцию, имеющую падение более единицы: B2 = M U {х ф у ф z ф 1}. Тогда для систем Fi = {x ф у ф z ф 1} и F2 = {x, у} имеем
d(Fi) = d(F2) = 2, Is2 (Fi) = 1, Is2 (F2) = 2.
Для доказательства последнего равенства достаточно учесть тот факт, что никакая функция от двух переменнных не может иметь падение более единицы.
Однако при переходе от базиса В0 к произвольному базису B, несмотря на указанные изменения даже в простейших случаях и на кажущееся значительное увеличение «инверсионнной силы» базиса, качественных изменений роста инверсионной сложности (с ростом значения спада системы) не происходит. В установлении этого факта и заключается основной результат работы.
2. Формулировка основного результата и его доказательство
Теорема 1. Для любого базиса В, имеющего вид
В = M U {wi,... , Wp}, Wi Е P2 \ M, i =1,...,р,
где все монотонные функции имеют нулевой вес, а функции w1,... , wp — положительные веса р1,... , рр соответственно, найдётся такая константа c(B), что для любой системы F булевых функций справедливы неравенства
РВ \log2(d(F) + 1)] - c(B) ^ IB(F) ^ РВ \log2(d(F) + 1)] , где Рв = т1п{Р1,... ,Рр}.
Верхняя оценка, как уже говорилось, следует из верхней оценки теоремы Маркова и того факта, что из любой немонотонной функции путём подстановки констант можно получить отрицание.
Переходя к доказательству нижней оценки, для произвольной схемы S в базисе B обозначим число немонотонных элементов в этой схеме через IB (S). Величина IB (S) численно равна сложности схемы S как схемы в базисе, отличающемся от базиса B только тем, что все немонотонные элементы имеют вес 1.
Положим r(B) = max{d(w1),..., d(wp)}.
28
В. В. Кочергин, А. В. Михайлович
Лемма 1. Для любой схемы S справедливо неравенство
d(Fs) ^ (2r(B) + 1) (2/B(S) - i) ,
где Fs — реализуемая схемой S система булевых функций.
Доказательство. Проведём индукцию по IB (S).
Если I1B(S) = 0, то все функции системы Fs монотонны. Следовательно, d(Fs) = 0. Пусть для любой схемы S', такой, что I^(S') ^ IB(S) — 1, утверждение леммы выполняется.
В схеме S со входами x1,...,xn выделим первую (относительно некоторой правильной нумерации) вершину, которой приписана какая-либо функция из множества {^1,... ,Шр], и функциональный элемент, соответствующий этой вершине, обозначим через E. Пусть на выходе элемента E реализуется функция h(x1,... ,xn). Преобразуем схему S, удалив из неё элемент E и создав вместо него ещё один вход схемы, на который подадим переменную у. Полученная таким перестроением схема S' реализует систему функций G = {g1,... ,gm}, причём выполняются следующие условия:
fi(x 1,... ,xn) = gi (h(x 1,... ,xn),x 1,... ,xn), i = 1,...,m.
Кроме того, справедливо равенство I1 (S') = I1 (S) — 1.
Пусть цепь C = (<51, a2,... , ar) удовлетворяет условию dc (F) = d(F). Рассмотрим последовательность C' наборов длины n + 1:
C = (h(a1),a1),..., (h(ar ),a).
Последовательность C', вообще говоря, не является цепью. В силу неравенства d(h) ^ r(B) первые разряды в наборах последовательности C меняют своё значение не более 2r(B) + 1 раз. Обозначим через C1 подпоследовательность последовательности C', включающую в себя все наборы из C', начинающиеся с нуля, а через C2 — подпоследовательность последовательности C', включающую в себя все наборы из C', начинающиеся с единицы. Каждая из последовательностей наборов Cj, j = 1, 2, является цепью наборов длины n + 1 .
По предположению индукции для j, j = 1, 2, выполняются соотношения
dc,(G) ^ d(G) ^ (2r(B) + 1) (VB(S,) — ^ = (2r(B) + 1) (VB(S)-1 — 1) .
Теперь, учитывая, что справедливы равенства
fi(x 1,... ,xn) = gi (h(x1,... ,xn),x 1,... ,xn), i = 1,...,m,
получаем
d(F) = dc(F) ^ dc[(G) + dc2(G) + 2r(B) + 1 ^
^ (2r(B) + 1) (2(2IB(S') — 1) + 1) = (2r(B) + 1) (VB(S) — 1) .
Лемма 1 доказана. ■
Положим c(B) = pB (log2(2r(B) + 1) + 1).
Лемма 2. Для любой системы F булевых функций справедливо неравенство
ib(F) ^ Рв \log2(d(F) + 1)1 — c(B).
О сложности схем в базисах, содержащих монотонные элементы с нулевыми весами 29
Доказательство. Для любой схемы S, реализующей систему функций F, в силу леммы 1 справедлива оценка
2 IB (S)
1 >
d(F)
2 r(B) + 1'
Следовательно,
lB (S) > log^ 2r(!B)+ 1 + 1 I » log2
d(F) + 1
2 r(B) + 1
^ Tlog2(d(F) + 1)1 - (log2(2r(B) + 1) + 1)
lOg2(d(F) + 1) - lOg2(2r(B) + 1) ^
Таким образом, любая схема, реализующая систему F в базисе B, содержит не менее |~log2(d(F) + 1)1 — (log2(2r(B) + 1) + 1) немонотонных элементов. Учитывая, что вес любого немонотонного элемента не менее рв, получаем
lb (F) ^ PB (Tlog2(d(F) + 1)1 — (log2(2r(B) + 1) + 1)) = рв [log2(d(F) + 1)1 — c(B).
Лемма 2 доказана. ■
Лемма 2 завершает доказательство теоремы.
Замечание 1. Оценка из леммы 1 является достаточно грубой. Более аккуратные рассуждения дают возможность уменьшить значение величины c(B) из теоремы 1.
Замечание 2. Можно подобрать базис B, все немонотонные функции которого имеют вес 1, и функцию / так, что величина |~log2(d(f) + 1)1 — IB(/) будет больше любого наперёд заданного значения. Действительно, при n ^ 2 в базисе B1n = MU{x1ф ® ... ф xn}, где все монотонные функции имеют нулевой вес, а функция ln = x1 ф ... ф ф xn — единичный, выполняются равенства
l~log2(d(ln) + 1)1 — IBln (ln)
log2
П + 1 L 2 J
1 = LlOg2(n + 1)J — 1.
Таким образом, константа c(B) из теоремы 1 не может быть абсолютной, не зависящей от базиса, даже если вес всех немонотонных элементов базиса равен единице.
Замечание 3. Оценки из теоремы 1 не изменятся, если в нулевой части базиса множество всех монотонных функций заменить на какое-либо порождающее множество класса монотонных функций, например на множество {x&y, x V y, 0,1}.
Следующая теорема является следствием теоремы 1 и трёх простых фактов: 1) из функции, не сохраняющей 0, отождествлением переменных получается либо константа 1, либо отрицание; 2) из функции, не сохраняющей 1, отождествлением переменных получается либо константа 0, либо отрицание; 3) из немонотонной функции подстановкой констант можно получить отрицание.
Теорема 2. Для любого полного базиса B, имеющего вид
B = {x&y,x V y,^i,. . . ,Up}, Шг G P2 \ M, i =1,...,p,
где конъюнкция и дизъюнкция имеют нулевой вес, а функции ш1,... , шр — единичный, найдётся такая константа c(B), что для любой системы F булевых функций справедливы неравенства
[bg2(d(F) + 1)1 — c(B) ^ 1 в(F) ^ flog2(d(F) + 1)1 + 2.
30
В. В. Кочергин, А. В. Михайлович
Замечание 4. В силу того, что из функции, сохраняющей 1, но не сохраняющей 0, отождествлением переменных получается константа 1, а из немонотонной функции, сохраняющей 0, но не сохраняющей 1, подстановкой константы 1 и отождествлением переменных можно получить отрицание, следует, что в условиях теоремы 2 для любой системы функций F, отличной от системы {0,1} (состоящей из двух констант), верхнюю оценку можно усилить:
1В(F) < riog2(d(F) + 1)1 +1.
В случае реализации системы {0,1} такое усиление не имеет места, например, для базиса, в котором к функциям x&y и x V у нулевого веса добавлены функции x ф у и x ф у ф 1 единичного веса.
ЛИТЕРАТУРА
1. Лупанов О. Б. Асимптотические оценки сложности управляющих систем. М.: Изд-во МГУ, 1984.
2. Сэвидж Д. Е. Сложность вычислений. М.: Факториал, 1998.
3. Гилберт Э. Н. Теоретико-структурные свойства замыкающих переключательных функций // Кибернетический сборник. Вып. 1. М.: ИЛ, 1960. C. 175-188.
4. Марков А. А. Об инверсионной сложности систем функций // Докл. АН СССР. 1957. Т.116. №6. С. 917-919.
5. Марков А. А. Об инверсионной сложности систем булевых функций // Докл. АН СССР. 1963. Т150. №3. С. 477-479.
6. Нечипорук Э. И. О сложности схем в некоторых базисах, содержащих нетривиальные элементы с нулевыми весами // Проблемы кибернетики. Вып. 8. М.: Физматгиз, 1962.
C. 123-160.
7. Нечипорук Э. И. О сложности схем в некоторых базисах, содержащих нетривиальные элементы с нулевыми весами // Докл. АН СССР. 1961. T. 139. №6. С. 1302-1303.
8. Нечипорук Э. И. О сложности суперпозиций в базисах, содержащих нетривиальные линейные формулы с нулевыми весами // Докл. АН СССР. 1961. T. 136. №3. С. 560-563.
9. Kochergin V. V. and Mikhailovich A. V. Some extensions of the inversion complexity of Boolean functions. Cornell University Library, 2015. http://arxiv.org/abs/1506.04485.
10. Morizumi H. Limiting negations in formulas // LNCS. 2009. V. 5555. P. 701-712.
11. Fischer M. J. The complexity of negation-limited networks —a brief survey // LNCS. 1975. V. 33. P. 71-82.
12. Tanaka K., Nishino T., and Beals R. Negation-limited circuit complexity of symmetric functions // Inf. Proc. Lett. 1996. V. 59. No. 5. P.273-279.
13. Sung S. and Tanaka K. Limiting negations in bounded-depth circuits: an extension of Markovs theorem // LNCS. 2003. V. 2906. P.108-116.
14. Morizumi H. and Suzuki G. Negation-limited inverters of linear size // IEICE Trans. Inform. and Systems. 2011. V.E93-D. No. 2. P.257-262.
15. Guo S., Malkin T., Oliveira I. C., and Rosen A. The power of negations in cryptography // LNCS. 2015. V. 9014. P.36-65.
16. Jukna S. Boolean Function Complexity. Advances and Frontiers. Berlin; Heidelberg: Springer,
2012. 620 p.
REFERENCES
1. Lupanov O. B. Asimptoticheskie otsenki slozhnosti upravlyayushchikh sistem [Asymptotic Estimations of Complexity of Control Systems]. Moscow, MSU Publ., 1984. (in Russian)
О сложности схем в базисах, содержащих монотонные элементы с нулевыми весами 31
2. Savage J. E. The Complexity of Computing. N. Y., Wiley, 1976.
3. Gilbert E. N. Lattice theoretic properties of frontal switching functions. J. Math. Phys., 1954, no. 33, pp. 56-67.
4. Markov A. A. On the inversion complexity of systems of functions. J. ACM, 1958, vol. 5, no. 4, pp.331-334.
5. Markov A. A. On the inversion complexity of systems of Boolean functions. Soviet Math. Dokl., 1963, no. 4, pp. 694-696.
6. Nechiporuk E. I. O slozhnosti skhem v nekotorykh bazisakh, soderzhashchikh netrivial’nye elementy s nulevymi vesami [On the complexity of schemes in some bases containing nontrivial elements with zero weights]. Problemy Kibernetiki, vyp. 8. Moscow, Fizmatgiz Publ., 1962, pp. 123-160. (in Russian)
7. Nechiporuk E. I. Complexity of schemes in certain bases containing nontrivial elements with zero weights. Soviet Math. Dokl., 1961, no. 2, pp. 1087-1088.
8. Nechiporuk E. I. Complexity of superpositions in bases that contain nontrivial linear formulas with zero weights. Soviet Physics. Dokl., 1961, vol. 6, no. 1, pp. 6-9.
9. Kochergin V. V. and Mikhailovich A. V. Some extensions of the inversion complexity of Boolean functions. Cornell University Library, 2015. http://arxiv.org/abs/1506.04485.
10. Morizumi H. Limiting negations in formulas. LNCS, 2009, vol. 5555, pp. 701-712.
11. Fischer M. J. The complexity of negation-limited networks —a brief survey. LNCS, 1975, vol. 33, pp. 71-82.
12. Tanaka K., Nishino T., and Beals R. Negation-limited circuit complexity of symmetric functions. Inf. Proc. Lett., 1996, vol. 59, no. 5, pp. 273-279.
13. Sung S. and Tanaka K. Limiting negations in bounded-depth circuits: an extension of Markovs theorem. LNCS, 2003, vol. 2906, pp. 108-116.
14. Morizumi H. and Suzuki G. Negation-limited inverters of linear size. IEICE Trans. Inform. and Systems, 2011, vol.E93-D, no. 2, pp. 257-262.
15. Guo S., Malkin T., Oliveira I. C., and Rosen A. The power of negations in cryptography. LNCS, 2015, vol. 9014, pp. 36-65.
16. Jukna S. Boolean Function Complexity. Advances and Frontiers. Berlin, Heidelberg, Springer,
2012. 620 p.