Некоторые особенности задачи синтеза булевых формул в полных базисах с прямыми и итеративными переменными

____________УЧЕНЫЕ ЗАПИСКИ КАЗАНСКОГО УНИВЕРСИТЕТА

Том 156, кн. 3 Физико-математические науки

2014

УДК 519.714

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

В.А. Коноводов

Аннотация

В работе рассмотрены вопросы сложности формул в различных базисах, состоящих из функций алгебры логики с прямыми и итеративными переменными. Показано, что «стандартное» поведение функции Шеннона для сложности формул (2n / log n) не всегда имеет место, приведены примеры нетривиальных семейств базисов с порядком роста этой функции, равным 2п. Такие примеры существуют среди каждого из семейств в классификации полных базисов по их итеративным замыканиям, кроме двух, в которых функция Шеннона ведет себя стандартно. Для оператора итеративного замыкания S, введенного в работе [Ложкин С.А. О полноте и замкнутых классах функций алгебры логики с прямыми и итеративными переменными // Вестн. Моск. ун-та. Сер. 15. Вычисл. матем. и кибернетика. - 1999. - № 3. - С. 35-41], получено новое представление.

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

Ключевые слова: булевы формулы, сложность функций, функция Шеннона, прямые и итеративные переменные.

1. Основные определения, обозначения и полученные результаты

Пусть X = {xi, Х2,...} и Y = {yi, y2,...} - счетные множества булевых переменных, причем переменные из множества X (из множества Y) будем называть прямыми (итеративными). Для каждого множества переменных Z обозначим через P2 (Z) множество всех функций алгебры логики (в дальнейшем - просто функций), зависящих от переменных из Z. Функции, не имеющие общих существенных переменных, будем называть независимыми.

На множестве Р2(Х U Y), согласно [1], определим следующие операции суперпозиции:

1) переименование (с отождествлением) прямых переменных;

2) подстановка констант 0, 1 вместо переменных;

3) переименование (без отождествления) итеративных переменных;

4) подстановка одной из двух независимых функций вместо итеративной переменной другой функции;

5) замена итеративных переменных прямыми переменными;

6) отождествление итеративных переменных.

Пусть A С P2 (X U Y) - некоторое конечное множество базисных функций. В соответствии с введенными операциями суперпозиции будем рассматривать одновыходные схемы из функциональных элементов над базисом A (см., например, [2]), в которых:

76

НЕКОТОРЫЕ ОСОБЕННОСТИ ЗАДАЧИ СИНТЕЗА ФОРМУЛ

77

1) прямые входы любого элемента либо присоединяются к входам схемы, либо являются константными входами (вход называется константным, если вместо него в базисный элемент подставлена константа 0 или 1);

2) итеративные входы любого элемента либо присоединяются к выходам других элементов, либо присоединяются к входам схемы, либо являются константными входами;

3) неконстантным входам схемы сопоставлены некоторые переменные из множества X.

Как обычно, формулами считаются те схемы, которые не содержат ветвлений выходов элементов.

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

Систему функций A будем называть полной, если для любой функции f, f G P2(X), существует формула над A указанного вида, реализующая функцию f. Критерий полноты произвольной системы функций был получен в работе [1]. Везде далее, если не указано обратное, рассматриваются только конечные полные системы функций.

Сложностью L(F) формулы F будем называть число функциональных элементов в ней. Функцией Шеннона La(u) для сложности формул в базисе A, как обычно, называется максимальное значение LA(f) среди всех функций f, f G P2({x 1,..., xn}), где LA(f) - минимальная сложность формулы из рассматриваемого класса, реализующей функцию f.

Функция Шеннона LA (n) для сложности схем из функциональных элементов указанного вида в базисе A определяется аналогично.

Пусть A С P2 (X U Y). Множество тех функций, которые можно получить из функций системы A в результате применения операций суперпозиции с номерами из множества T', T' С T = {1, 2, 3,4, 5, 6}, обозначим через [Л\т', и пусть

Щт = [A\.

В работе [1] введено множество S(A) = [[A] {2} П P2(Y)] |3 4 6|, которое будем называть итеративным замыканием базиса A. Заметим, что множество S(A) является «обычным» замкнутым классом (см., например, [3]) в P2Y), содержащим все константы, и поэтому совпадает с одним из классов системы

Д = {B,I,O,D,K, L,M,P2(Y)},

где B = {0,1}, I = Y U B, O = I U {y : y G Y}, класс D (класс K) содержит константы и дизъюнкции (конъюнкции) переменных Y, а классы L и M состоят из линейных и монотонных функций от переменных Y соответственно. Далее через Bk обозначается к-я декартова степень множества B, то есть множество всех упорядоченных наборов длины к из элементов B.

В настоящей работе доказано, что для оператора S справедливо более наглядное представление:

Теорема 1. Для любой системы функций A, A С P2(X U Y), справедливо равенство

S(A) = [A] П P2(Y).

Таким образом, S(A) определяет все те функции от итеративных переменных, которые можно получить из базисных функций рассматриваемыми операциями суперпозиции. Введение оператора S позволяет классифицировать все системы функций от прямых и итеративных переменных по их итеративным замыканиям.

78

В.А. КОНОВОДОВ

Эта классификация имеет прямое отношение к исследованию сложности формул в соответствующих базисах.

В [4] установлено, что функция Шеннона ЬД (п) для сложности схем в произвольном базисе A, A С Рэ(Х U Y), имеет «стандартный» порядок роста 2n/n. Кроме того, в [4] указано, что в случае формул порядок роста Ьд(п) не более чем 2n и не менее чем 2n/ log п (здесь и далее все логарифмы рассматриваются по основанию два).

В [5] указано, что если S(A) G {M,P%(Y)}, то функция Шеннона для сложности формул при растущем значении натурального аргумента п ведет себя как 0(2n/ log п)1. Кроме того, в [5] приведены примеры семейств базисов A, для которых S(A) G {I,O} и порядок роста функции Шеннона составляет 2n.

В настоящей работе доказывается следующая теорема.

Теорема 2. В семействе базисов с итеративным замыканием из множества {D,K,L} существуют такие базисы A, для которых Ьд(п) = 0(2n).

Таким образом, примеры базисов с порядком функции Шеннона для сложности формул в них, равным 2n, существуют среди систем, итеративное замыкание которых принадлежит множеству {I, O, D, K, Ь}. В базисах с итеративным замыканием вида P2(Y) или M соответствующая функция Шеннона имеет порядок роста 2n/log п. Базисы с итеративным замыканием, равным B, не являются полными.

В некоторых базисах A таких, что S(A) = D и Ьд(п) = 0(2n), самой сложной функцией является линейная функция ln = xi 0 ... 0 xn, однако, как показывает следующий результат, при переходе от базиса к базису сложность функции ln может кардинально изменяться в рамках одного и того же семейства2.

Теорема 3. В базисе Ai = {(xi 0 X2)yi, (xi ~ X2)yi,yi V y2} сложность линейной функции ln удовлетворяет соотношению

Ьм (ln) = 0(2n/2),

а в базисах A2 = {(xi 0 x2)yi, yi Vy2} и A3 = {(xi ~ x2)yi, yi Vy2} - соотношению ci  2n/2 < bAi (ln) < C2  3n/2, i = 1, 2,

где ci, C2 - некоторые положительные константы.

Итеративное замыкание каждого из указанных в теореме базисов образует класс D.

В работе [6] рассматривались так называемые обобщенные дизъюнктивные нормальные формы (ДНФ), из полученных в ней результатов следует, в частности, что

2n

ЬА2 (п) = ^ ni/4

Далее через \in обозначается мультиплексорная функция порядка п, п ^ 1, определяемая равенством

^n

v

. xn zv(a1,...,an),

x

i

где v(ai,... ,an) - число, двоичная запись которого совпадает с набором (ai,..., an), Zi G X U Y для всех i, i = 0,..., 2n — 1; а xa = x ~ a, a G B.

1 Для числовых функций g(n) и h(n) натурального аргумента n запись h(n) = O(g(n)) означает, как обычно, что отношение \h(n)/g(n)\ ограничено сверху. Эта запись равносильна записи g(n) = Q(h(n)). Запись h(n) = Q(g(n)) означает, что h(n) = O(g(n)) и g(n) = O(h(n)).

2 Здесь и далее символом ф обозначается сумма по модулю 2, а х' ~ x" = х' ф х" ф 1.

НЕКОТОРЫЕ ОСОБЕННОСТИ ЗАДАЧИ СИНТЕЗА ФОРМУЛ

79

2. Представление оператора 6

Пусть A, A С P2 (X U Y), - произвольное, не обязательно полное, конечное множество функций. На основе величины 6(A), введенной выше, базируется критерий полноты в работе [1]. Очевидно, 6(A) С [A] П P2Y). Покажем, что справедливо и обратное включение, тем самым доказав заявленное утверждение.

Следует отметить, что множество [A] П P2(Y) является «обычным» замкнутым классом в P2(Y), содержащим константы, поэтому [A] П P2(Y) € А.

Предположим, что найдутся два различных класса 61, 62 € А таких, что 6(A) = = 61 и [A] П P2(Y) = 62. При этом 61 С 62.

Для каждого 6, 6 € А, обозначим, согласно [1], R(6) = {f € P2(X U Y) :

[{f }]{2} П P2(Y) С 6}. Заметим, что если функция f € R(6) зависит от n прямых переменных, то при подстановке вместо них любых констант получится функция из 6. Это означает, что функция f может быть представлена в виде

f ^n

где gi € 6 для всех i = 1, ..., 2n.

Из такого определения следует, что A С R(6(A)) = R(61). Действительно, так как 6(A) = [[A]{2} П P2(Y)] {346} , то для произвольной функции g € A справедливо включение [{g}]{2} П P2(Y) С 6(A), а это и означает, что g € R(6(A)).

Далее, 62 = [A] П P2(Y) С [R(61)] П P2(Y) = R(61) П P2(Y), так как R(61) -

замкнутый класс. Получаем, что

62 С R

Пользуясь тем, что для любых классов 6', 6" системы А из условия 6' С 6" следует включение R(6') С R(6''), покажем невозможность выполнения (2), что и докажет утверждение. Рассмотрим все случаи.

Если 6(A) = 61 = B, то A С P2(X), откуда 62 = B = 61, что противоречит определению классов 61 и 62.

Если 6(A) = 61 = I, то для 62 € {D,K,O} (а следовательно, и для {M, L, P2Y)}) выполнение (2) невозможно, так как во множестве R(I) П P2(Y), согласно (1), отсутствуют дизъюнкции, конъюнкции двух и более итеративных переменных, а также отрицания итеративных переменных.

Если 6(A) = 61 = O, то для 62 = L (а, следовательно, и для 62 = P2Y)) выполнение (2)также невозможно, так как множество R(O) П P2Y) не содержит линейных функций от двух и более итеративных переменных, как следует из (1).

Если 6(A) = 61 = D, то для 62 = M (а, следовательно, и для P2Y)) выполнение (2) невозможно, так как R(D) П P2Y) не содержит конъюнкцию итеративных переменных. Случай 61 = K аналогичен.

Если же 6(A) = 61 € {M, L}, то 62 = P2Y), но R(61) не содержит все функции итеративных переменных, потому (2) также не выполняется.

Полученные противоречия доказывают теорему 1.

3. Сложность функций в различных семействах базисов с прямыми и итеративными переменными

Рассмотрим системы функций A, A С P2(X U Y), такие, что 6(A) = D.

Множество номеров существенных итеративных переменных функции f обозначим через J(f). Из (1) следует, что любую функцию f, f € R(D), можно представить в виде

f =\/ Vj<fj V ^0,

jtJ

где <fj € P2(X) при всех j, j € J(f) U {0}.

80

В.А. КОНОВОДОВ

Пусть D(1) и D(0) - множества тех функций f, f G R(D), для которых все коэффициенты pj, j G J(f), при переменных в разложении (3) являются монотонными и антимонотонными функциями соответственно.

Лемма 1. Пусть

A = {х1У1 ,f1, ,V1 V У2}

где f1 ,...,f'k G D(1), и

A" = {Х1У1, f1', ., fk, y1 v У2},

где f[',   , f 1k G D(0), тогда

La (n) = 0(2”), La- (n)=0(2n)^

Доказательство. Заметим, что 5(A) = 5(A") = D, и системы A и A" являются полными.

Рассмотрим минимальную по сложности формулу F для линейной функции ln в базисе A (случай базиса A" рассматривается аналогично). Пусть каждая функция fk, i = 1, 2,    ,k, представима в виде разложения (3) следующим образом:

fk = V yjpj V pj  В символьной записи F, принимая символы функций pj

jeJ

(i = 1, 2,   , k; j = 1, 2,   , \J (fi)\) за отдельные переменные, раскроем скобки, используя дистрибутивность конъюнкции относительно дизъюнкции. При этом не изменится число символов дизъюнкции, входящих в формулу. В результате получится ДНФ, конъюнкции которой состоят из отрицаний прямых переменных, а также из символов функций pj  Если хотя бы одна из таких конъюнкций обращается в единицу на более чем одном наборе, то, так как все функции pj монотонны, такая конъюнкция обратится в единицу на двух соседних наборах, что противоречит реализации этой ДНФ линейной функции. Таким образом, каждая конъюнкция покрывает не более одного набора, а это означает, что их число не менее чем 2”-1  C учетом того, что при раскрытии скобок число дизъюнкций не изменилось, а множества J (f {),, J (fk) конечны и не зависят от п, имеем, что число элементов y1 V у2 в формуле F есть 0.(2”), что с учетом верхней оценки из [4] доказывает лемму.

Далее докажем, что в базисах

A1 = {(Х1 0 Х2)у1, (Х1 - Х2)У1,У1 V У2},

A2 = {(Х1 0 Х2)У1,У1 V У2},

A3 = {(Х1 - Х2)У1,У1 V У2}

того же семейства {A : J(A) = D} сложность линейной функции сильно изменяется.

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

LAi (ln) = O (2”/2) ,

LAi(ln) = O (зп/2^ , i = 2, 3^

Доказательство. Доказательство основано на следующих рекуррентных разложениях, справедливых при любых п, п ^ 3:

In (х1,  ,Х”) =(х1 0 х2)1”-2(хз,  ,Х”) V (х1 - х2)1”-2(хз,   ,Х”),

НЕКОТОРЫЕ ОСОБЕННОСТИ ЗАДАЧИ СИНТЕЗА ФОРМУЛ

81

ln(x 1у - - - у xn ) (xi Ф x2 )ln-2 (x3 у ••• у xn )V'x ix2ln- 2 (x3 у ••• у xn) V xix2ln-2 (x3y ••• у xn ) у

ln(xl,...y xn) = (xi ~ X2)ln-2(x3y ---у xn) v XlX2^n-2(x3y ... у xn) У XlX2ln-2(x3y ---у xn )у

на аналогичных разложениях для отрицания линейной функции и на том, что xi = xi Ф 0 = xi ~ 1у а xi = xi Ф 1 = xi ~ 0-

Лемма 3. Существует такая положительная константа С1у что для любых натуральных n справедливы соотношения

Ьлг (ln) > ci • 2п/2у * =1у 2у 3-

Доказательство. Рассмотрим конъюнкцию К некоторого числа функций вида (xi Ф X2)y (xi ~ X2)y взятых от произвольных переменных из множества {xly - - - yXm}- Будем предполагать, что конъюнкция K зависит от всех переменных их этого множества существенно.

Построим неориентированный граф Gp Gi = (Уу E)у в котором V = = {vp - - - у vm} - множество вершин. Будем считать, что каждая вершина Vi у Vi € Vy взаимно однозначно поставлена в соответствие переменной xiy где * = 1у 2у - - - уШ-Для каждой функции вида (xi Ф xj )у участвующей в конъюнкции Ку построим ребро (viyVj) в графе Gp Все такие ребра и будут образовывать множество E-Пусть граф G2 получен из графа Gi отождествлением всех пар вершин viyVjу для которых функция (xi ~ xj) участвует в конъюнкции К-

Рассмотрим правильную (см., например, [3]) раскраску вершин графа G2 в два цвета 0 и 1. Из построения графа следует, что набор цветов вершин а = = (aiу---уат)у по которому вершина vi красится в цвет ai € Ву * = 1у---уШу при правильной раскраске обращает конъюнкцию K в единицу. И наоборот, если К (а) = 1у то набор а образует правильную раскраску графа G2 в два цвета.

Следует отметить, что каждую компоненту связности графа можно покрасить правильно не более чем двумя способами, так как, указав цвет одной вершины (0 или 1), цвета остальных вершин этой компоненты определяются однозначно при условии, что правильная раскраска возможна. Таким образом, если граф G2 имеет t компонент связности, то число способов раскрасить этот граф правильно в два цвета равно 2г -

Далее, поскольку каждая вершина графа Gi либо отождествлена, либо смежна с некоторой другой вершиной, что справедливо в силу существенной зависимости конъюнкции К от всех переменных, для t справедлива оценка t ^ ш/2- Это означает, что конъюнкция К обращается в единицу на не более чем 2m/2 наборах значений своих существенных переменных.

Эта оценка не изменится, если в конъюнкцию К дополнительно будут входить сомножители вида xiy Xiy * € {1у - - - у ш}-

Аналогично доказательству леммы 1 рассмотрим минимальную по сложности формулу F в базисе Д1 для линейной функции ln и раскроем скобки в ее символьной записи, пользуясь только тождеством дистрибутивности конъюнкции относительно дизъюнкции и тождествами подстановки констант. В результате получим формулу F' = К1 V - - - V Кру в которой каждая конъюнкция Kiy * = 1у - - - уРу имеет вид

К = x°Ul

1 ---xUrr El(xv’1 у^[> ) ---<fs(x

)у

x

v- >

v

где 1 ^ П1у - - - у ur у vl у Е[у - - - yvS yvS/ ^ Пу стр - - - устг € В у а уj (x' у x") является при каждом ]у j = 1у - - - у ву либо функцией x' Ф x''у либо функцией x' ~ x'' -

В силу тождеств x'(x' ~ x'') = x'x''у x'(x' ~ x'') = x'x''у x'(x' Ф x'') = x'x''у x'(x' Ф x'') = x'x'' будем считать, что {up - - - у ur} П {v' у Е[у - - - yVls у v's'} = 0 -

Отметим, что {и 1у - - - уиг} U {v' yV'[ y---yVls yvS'} = {1у---уп} в силу реализации формулой F' линейной функции, поэтому каждая из конъюнкций Кр - - - у Кр

82

В.А. КОНОВОДОВ

обращается в единицу на не более чем 2n/2 наборах. Следовательно, так как функция ln равна единице на 2n-i наборах, справедлива оценка p ^ 2n!‘2-i.

По построению формула F содержит столько же элементов дизъюнкции, сколько и формула F', то есть p — 1 = Q(2n/2), что и доказывает оценку в случае базиса Ai. Так как A2, A3 С Ai, то данная оценка верна и для базисов A2, A3.

Теорема 3 следует из лемм 2 и 3. Аналогичные леммам 1, 2 и 3 результаты можно получить и для случая систем A таких, что J(A) = K.

Далее рассмотрим системы функций A, A С P2X U Y), такие, что J(A) = L.

Лемма 4. Для системы функций A4 = {xi yi, yi  y2} выполняется соотношение

LAi (n) = 0(2n).

Доказательство. Рассмотрим произвольную формулу в базисе A4, реализующую некоторую функцию f. Если в данной формуле раскрыть скобки и привести подобные, то получится полином Жегалкина для функции f. Такой полином единственный с точностью до перестановки слагаемых в нем. При этом число функциональных символов  может только уменьшиться, так как все умножения в базисе -это умножения на булеву переменную.

Для функции dn = xi V ... V xn полином Жегалкина представляет собой сумму 2n — 1 монотонных элементарных конъюнкций, поэтому в любой формуле над базисом A4, реализующей функцию dn, содержится не менее 2n — 2 функциональных элементов yi  y2, значит, и сложность всей формулы не менее чем 2n.

Пусть базисная система функций A такова, что £(A) = L, а любая функция f системы A имеет вид

f = ф Kj yj, jJ

где каждая Kj, j G J(f), представляет собой монотонную конъюнкцию прямых переменных. Как следует из доказательства теоремы, для дизъюнкции dn будет необходимо экспоненциальное число элементов такого базиса.

Рассмотрим систему функций A5 = {xiyi,Xiyi,yi  y2}. Необходимо отметить, что, в отличие от предыдущего базиса, функция dn имеет в A5 линейную сложность, поскольку справедливо соотношение

dn

dn-

ixn  xn

При аналогичном рассматриваемому в доказательстве леммы 4 раскрытию скобок в формуле над таким базисом возникает полиномиальная нормальная форма (ПНФ) - сумма по модулю два элементарных конъюнкций. Из результатов работ [7, 8] следует, что функция Шеннона для длины ПНФ (то есть для числа элементарных конъюнкций в ней) имеет порядок роста 2n/n. Это говорит о неэффективности применения нижней оценки числа элементов сложения для оценки снизу функции Шеннона La5 (n).

Использование леммы 4 завершает доказательство теоремы 2.

Автор благодарит своего научного руководителя Ложкина Сергея Андреевича за постоянное внимание к работе и Селезневу Светлану Николаевну за предоставленные ссылки по результатам для ПНФ.

Работа выполнена при финансовой поддержке Российского фонда фундаментальных исследований (проект № 12-01-00964-а).

НЕКОТОРЫЕ ОСОБЕННОСТИ ЗАДАЧИ СИНТЕЗА ФОРМУЛ

83

Summary

V.A. Konovodov. Some Features of the Synthesis of Boolean Formulae over Complete Bases with Direct and Iterative Variables.

The paper studies some issues of complexity of Boolean formulae over different bases that consist of Boolean functions with direct and iterative variables. It is shown that the standard behavior of the Shannon function for the complexity of the formulae (2n / log n) does not always take place; the examples of the non-trivial families of bases where this function has the order of growth of 2n are given. Such examples exist in each family in the classification of bases according to their iterative closures, except for two bases, where the Shannon function has the standard order of growth. A new representation of the iterative closure operator 5 (introduced by S.A. Lozhkin) is obtained.

The issue about the complexity of an affine function over some classes of bases is considered separately. The examples of radical changes of this complexity in different bases from one family are given.

Keywords: Boolean formulae, complexity of functions, Shannon function, direct and iterative variables.

Литература

1. Ложкин С.А. О полноте и замкнутых классах функций алгебры логики с прямыми и итеративными переменными // Вестн. Моск. ун-та. Сер. 15. Вычисл. матем. и кибернетика. - 1999. - № 3. - С. 35-41.

2. Лупанов О.Б. Асимптотические оценки сложности управляющих систем. - М.: Изд-во Моск. ун-та, 1984. - 136 с.

3. Яблонский С.В. Введение в дискретную математику. - М.: 1986. - 384 с.

4. Ложкин С.А. О сложности реализации функций алгебры логики схемами и формулами, построенными из функциональных элементов с прямыми и итеративными переменными // Труды III Междунар. конф. «Дискретные модели в теории управляющих систем» Красновидово’98 (22-27 июня 1998 г.). - М.: Диалог-МГУ, 1998. -С. 72-73.

5. Коноводов В.А. О сложности булевых формул в базисах из элементов с прямыми и итеративными входами // Материалы IX молодежной науч. шк. по дискретной математике и ее приложениям (М., 16-21 сент. 2013 г.). - М.: Изд-во ИПМ РАН, 2013. - С. 57-60.

6. Ложкин С.А. Реализация функций алгебры логики схемами из функциональных элементов с задержками: Дис. ... канд. физ.-мат. наук. - 1979.

7. Кириченко К.Д. Верхняя оценка сложности полиномиальных нормальных форм булевых функций // Дискретная матем. - 2005. - Т. 17, № 3. - С. 80-88.

8. Cooper J.N., Ellis R.B., Kahng A.B. Asymmetric binary covering codes // J. Combin. Theory. Ser. A. - 2002. - V. 100, No 2. - P. 232-249.

Поступила в редакцию

04.08.14

Коноводов Владимир Александрович - аспирант факультета вычислительной математики и кибернетики, Московский государственный университет имени М.В. Ломоносова, г. Москва, Россия.

E-mail: vkonovodov@gmail.com