Научная статья на тему 'О некоторых свойствах слабо положительных и слабо отрицательных булевых функций'

О некоторых свойствах слабо положительных и слабо отрицательных булевых функций Текст научной статьи по специальности «Математика»

CC BY
476
53
i Надоели баннеры? Вы всегда можете отключить рекламу.
Область наук
Ключевые слова
СЛАБО ПОЛОЖИТЕЛЬНАЯ (АНТИХОРНОВСКАЯ) БУЛЕВА ФУНКЦИЯ / СЛАБО ОТРИЦАТЕЛЬНАЯ (ХОРНОВСКАЯ) БУЛЕВА ФУНКЦИЯ / ВЫЧИСЛИТЕЛЬНАЯ СЛОЖНОСТЬ / WEAKLY POSITIVE (ANTI-HORN) BOOLEAN FUNCTION / WEAKLY NEGATIVE (HORN) BOOLEAN FUNCTION / COMPUTING COMPLEXITY

Аннотация научной статьи по математике, автор научной работы — Горшков Сергей Павлович

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

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

About some properties of Horn and anti-Horn functions

Some properties of weakly positive (anti-Horn) and weakly-negative (Horn) Boolean functions are investigated. Particularly, estimates are given for the complexity of constructing reduced form and for the possible lengths of expressions of considered functions, and it is shown that there are no limits for the weight of such functions.

Текст научной работы на тему «О некоторых свойствах слабо положительных и слабо отрицательных булевых функций»

2013 Теоретические основы прикладной дискретной математики №2(20)

ТЕОРЕТИЧЕСКИЕ ОСНОВЫ ПРИКЛАДНОЙ ДИСКРЕТНОЙ МАТЕМАТИКИ

УДК 519.7

О НЕКОТОРЫХ СВОЙСТВАХ СЛАБО ПОЛОЖИТЕЛЬНЫХ И СЛАБО ОТРИЦАТЕЛЬНЫХ БУЛЕВЫХ ФУНКЦИЙ

С. П. Горшков

Институт криптографии, связи и информатики, г. Москва, Россия

E-mail: [email protected]

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

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

1. Некоторые известные свойства исследуемых функций Определение 1. Булева функция f {x\,... ,xn), n ^ 1, называется:

1) слабо положительной (антихорновской), если f = 1 или существует представление f в виде следующей КНФ:

f = Л (xZ v xsi2 v... vxsifc.), i= 1

где ai G {0,1}, i = 1,... ,t;

2) слабо отрицательной (хорновской), если f = 1 или существует представление f в виде следующей КНФ:

f = Л (xZ V xsi2 V ... V xsifci ), i= 1

где ai G {0,1}, i = 1,... , t.

Множество всех слабо положительных (слабо отрицательных) функций обозначим WP (WN). Указанные записи соответственно функций классов WP, WN называются приведёнными представлениями. Функции из классов WP, WN, зависящие от k переменных, обозначим WPk, WNk.

Актуальность задачи изучения указанных функций отмечена в работе [1]. Обозначим:

Vk — множество двоичных k-мерных векторов;

Vk(i) = {a G Vk : ||a|| = i}, где i G {0,... , k} (слой векторов веса i);

|_cj — целая часть действительного числа с.

Пусть (п), д2(п) —действительные функции от натурального аргумента п; тогда если существует такое п0, что для всех п ^ п0 выполняется неравенство (п) > д2(п), то будем записывать д1(п)>д2 (п).

Вектор (а1,..., ак) € Ук назовём выполняющим вектором функции f (х1,..., хк), если f(а1,...,ак) = 1. Множество всех выполняющих векторов функции f обозначим Е/.

Если а = (а1,... , ак), в = (в,..., вк) — двоичные векторы, f (х1,... , хк) — булева функция, то полагаем f (а) = f (а1,... ,ак), а V в = (а1 V в1,..., ак V вк), а Л в = = (а1 Л в1,... ,ак Л вк).

Замечание 1. Слабо положительные и слабо отрицательные функции близки между собой, поскольку f (х1,... ,хк) € ЖР, если и только если f (х1,... ,Хк) € .

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

Свойство 1 (критерий слабой положительности) [2]. Функция f (х1,...,хк) ф 0 является слабо положительной, если и только если для любых двух выполняющих векторов {а, в} С Е/ этой функции справедливо свойство

Свойство 2 (критерий слабой отрицательности) [2]. Функция f (х1,...,хк) ф 0 является слабо отрицательной, если и только если для любых двух выполняющих векторов {а, в} С Е/ этой функции справедливо свойство

Замечание 2. В случае |Е/1 = 1, Е/ = {а}, а = (а1,...,ак) € Ук для пары {а, а} С Е/ получим (а V а) = а € Е/ ((а Л а) = а € Е/) и, согласно критериям, f € ЖР и f € , что справедливо, поскольку f = х^1 ■ ... ■ х^.

Замечание 3. Если Е/ = 0, то f € ЖР и f € , поскольку f = х1 ■ х1.

Пусть f (х1,... , хк) € ЖР. На множестве Е/ зададим отношение частичного порядка ^/ по правилу: если в = (в1,... , вк) € Е/, 7 = (71,... , 7к) € Е/, то в ^/ 7 тогда и только тогда, когда в» ^ 7», * = 1,... , к.

Свойство 3. Множество Е/ слабо положительной функции f с отношением частичного порядка ^/ является верхней полурешёткой (определение верхней полу-решётки см. в [3]).

Свойство 4 [4]. Для числа слабо положительных функций (а значит, и слабо отрицательных функций) справедлива оценка

Заметим, что для числа т(к) монотонных функций от к переменных, которые составляют подкласс слабо положительных функций, верна оценка [5]

(а V в) Є Е/.

(а Л в) Є Е/.

(1)

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

?

?

/ Є ЖР, / є

справедливы следующие оценки сложности.

Свойство 5 [6]. Задачи (2) при задании булевых функций в виде КНФ или ДНФ являются ЖР-трудными. Эти задачи при задании булевых функций в виде СКНФ, СДНФ или многочлена Жегалкина являются полиномиальными.

Определение 2. Булева функция f (х1,..., хп), п ^ 1, называется биюнктивной, если f ф 1 или существует представление f в виде 2-КНФ

где ^1 ^ 0, £2 ^ 0 (в случае ^1 = 0 или £2 = 0 считаем, что соответствующий сомножитель отсутствует); аг € {0,1}, * = 1,... , ^1; вг1, в»2 € {0,1}, * = 1,... ,£2.

Свойство 6 [7]. Справедливо соотношение

где В* — множество биюнктивных функций.

Свойство 7 [8]. Для любого целого к ^ 2 максимальной группой преобразований области определения функций от к переменных, относительно которых множество слабо положительных (слабо отрицательных) функций инвариантно, является группа всех перестановок переменных функций.

Свойство 8 [1]. Задача построения по СКНФ слабо положительной (слабо отрицательной) функции её сокращённой КНФ имеет полиномиальную сложность.

Свойство 9 [1]. Задача построения по многочлену Жегалкина монотонной (слабо положительной) функции её сокращённой КНФ не является полиномиальной.

2. Некоторые результаты о сложности нахождения приведённых представлений монотонных и антимонотонных булевых функций

В работе [1] приведены некоторые результаты о сложности нахождения приведённых представлений слабо положительных и слабо отрицательных булевых функций. В данной работе приведены результаты о сложности нахождения приведённого представления для подклассов слабо положительных и слабо отрицательных функций (а именно, монотонных и антимонотонных).

Определение 3. Булева функция f называется антимонотонной, если и только если f — монотонная функция.

В [1] не рассматриваются случаи исходного задания функций в виде КНФ или ДНФ. Нетрудно показать, что задачи распознавания — монотонная (антимонотон-ная) функция?» являются ЖР-трудными, однако представляет интерес задача нахождения приведённого представления указанных функций, когда заведомо известно, что данная КНФ или ДНФ есть монотонная (или антимонотонная) функция.

Функция ^(х1,... , хк) называется имплицентой функции f (х1,... , хк), если

где ^ при * = ], называются элементарными имплицентами. Элементарная

имплицента функции f называется простой, если никакая её собственная часть не является имплицентой функции f.

/(хі,... ,жк) Л Л,(жь... ,жк) = /(хі,... ,жк).

Имплиценты вида

Любая функция f(x1,...,xk), Ef = Vk, представляется конъюнкцией всех своих простых имплицент. Конъюнктивная нормальная форма функции f, в которую входят все простые имплиценты функции f и только они, называется сокращённой КНФ функции f. Любая функция f (x1,... , Xk) имеет единственную, с точностью до перестановки сомножителей, сокращённую КНФ.

Функция g(x1,..., xk) называется импликантой функции f (x1,... , xk), если

f (xi,... ,Xk) V g(xi,... ,Xk) = f (xi,... ,Xk).

Приведённым представлением монотонной функции называется представление f в виде следующей КНФ:

f = /\ (х^ V ... V Xsifci ). i=1

Приведённым представлением антимонотонной функции называется представление f в виде следующей КНФ:

f = Л (XSi! V ... V Xsifc. ).

1 1 L

г=1

Утверждение 1. Задача построения по КНФ монотонной функции минимальной (приведённой) КНФ имеет полиномиальную сложность.

Доказательство. Пусть монотонная функция f (x1, ... ,Xk), не равная тождественно единице, записана в КНФ, которую можем представить в виде

f = Л (xSii V ... V xsiti V Xsit.+i V ... V Xsifc. ). (3)

Заметим, что если tj = 0 для некоторого i Е I, то f(1,..., 1) = 0 и f = 0. Случай t < к для всех i Е I невозможен, так как при этом f (0,... , 0) = 1, f = 1, и функция f не может быть записана в виде (3). Далее предполагаем, что t ^ 1 для всех i Е I. По функции f построим функцию g:

g = Л (xsii V ... V xsiti ). (4)

Покажем, что

f = g. (5)

Пусть некоторый вектор a = (a1,... , ak) Е Vk не является выполняющим вектором для функции f: f (a) = 0. Тогда найдётся элементарная имплицента функции f (для простоты записи эту имплиценту обозначим x1 V ... V xt V Xt+1 V ... V Xq), такая, что a1 V ... V at V at+1 V ... V aq = 0. То есть a1 = ... = at = 0, и вектор a не удовлетворяет имплиценте x1 V ... V xt функции g и g(a) = 0. Поэтому

f ^ g. (6)

Предположим теперь, что g(e) = 0 для некоторого в Е Vk и вектор в не удовлетворяет

имплиценте x1 V ... V xt функции g. Следовательно, в1 = ... = в* = 0. Рассмотрим

вектор y = (0,... , 0,1,... , 1) Е Vk. Ясно, что g(Y) = f (7) = 0. Ввиду монотонности t

функции f получим f (в) = 0. Поэтому

f ^ g. (7)

Из соотношений (6) и (7) следует справедливость (5).

Нетрудно показать, что для монотонных функций сокращённая КНФ совпадает с минимальной КНФ. Поэтому достаточно привести требуемый алгоритм построения сокращённой КНФ. Итак, пусть монотонная функция f задана конъюнктивной нормальной формой (4).

Докажем следующее свойство: если

х1 V ... V х* (8)

— простая имплицента функции f, то эта имплицента содержится среди элементарных имплицент КНФ (4). Предположим противное: х1 V ... V х* — имплицента функции f, но эта имплицента не содержится среди элементарных имплицент (4). Тогда, с одной стороны, поскольку х1 V ... V х* — имплицента функции f, то

f (0,..., 0,х*+1,... ,хк) ф 0. (9)

С другой стороны, так как (8) —простая имплицента, то никакая её собственная часть не является имплицентой функции f и любая имплицента записи (4) содержит хотя

бы одну переменную, отличную от х1,... , х*. Следовательно, f (0,... , 0,1,..., 1) ф 1,

что противоречит условию (9). Из приведённого свойства вытекает, что все простые имплиценты содержатся в записи (4), достаточно их лишь выделить. Напомним, что необходимым и достаточным условием простоты имплиценты х1 V ... V х* является выполнение условия (9) и условий

f (0,..., 0,1, 0,..., 0,х*+1,...,хк) = 0,* = 1,...,*. (10)

г-1

Всё это проверяется с полиномиальной сложностью. ■

Аналогично утверждению 1 можно доказать следующие результаты. Утверждение 2. Задача построения по КНФ антимонотонной функции минимальной (приведённой) КНФ имеет полиномиальную сложность.

Утверждение 3. Задача построения по ДНФ монотонной (антимонотонной) функции минимальной ДНФ этой функции имеет полиномиальную сложность.

Утверждение 4. Задача построения по ДНФ монотонной функции её минимальной (приведённой) КНФ имеет экспоненциальную сложность.

Доказательство. Пусть к ^ 2. Рассмотрим монотонную функцию

f ф х1х2 V хзх4 V ... V х2|_к/2_|-1х2|_к/2_|.

Легко показать, что сокращённая КНФ функции f имеет вид

f ф Л (х*1 V х*2 V ... V хг\к/2\ ). (11)

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

гхе{1,2}

г2€{3,4}

г\к/2]е{2\к/2\-1,2\_к/2\}

Длина сокращённой КНФ (11) имеет порядок 2к/2, то есть в общем случае задача построения по ДНФ монотонной функции её сокращённой КНФ имеет экспоненциальную сложность. ■

Аналогично утверждению 4 может быть доказано

Утверждение 5. Задача построения по ДНФ антимонотонной функции её сокращённой КНФ имеет экспоненциальную сложность.

3. Некоторые другие свойства слабо положительных и слабо отрицательных булевых функций

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

Теорема 1. Для любого к ^ 1 и любого £ € {1,..., 2к — 1} найдётся слабо положительная функция веса £, существенно зависящая от всех к переменных.

Доказательство. Пусть к ^ 1 и £ €{1,..., 2к — 1}. Построим слабо положительную функцию f (х1,... , Хк) с требуемыми свойствами. Полагаем f (0,... , 0) = 1.

к к

Выберем наибольшее г, такое, что ^ (к) ^ £ — 1. Обозначим q = ^ (к). Для всех

г=к-г г=к-г

г ^ к — г и (а1,..., ак) € у,(г) полагаем f (а1,..., ак) = 1.

Если q = £ — 1, то на слоях с весом 1,... , к — г — 1 полагаем f (а1,... , а) = 0. В случае q < £ — 1 на слое с весом к — г — 1 для £ — q — 1 произвольно выбранных векторов полагаем f(а1,...,ак) = 1. На остальных векторах этого слоя и на всех векторах слоёв с весом 1,..., к — г — 2 значение функции полагаем равным нулю.

В соответствии с приведённым выше критерием слабой положительности находим, что построенная функция является слабо положительной (но не монотонной, так как

Д0,...,0) = 1, I = 2к).

Если £ ^ 2к — к, то f(а) = 0 для всех а € Ук, ||а|| = 1, и поэтому функция f (помним, что f (0,... , 0) = 1) существенно зависит от всех переменных. При 2к — к <

< £ ^ 2к — 1 найдётся вектор в € Ук(1), такой, что f (в) = 0. Поскольку f (в) = 1 для всех в € у, и f (0,... , 0) = 1, то функция f существенно зависит от всех переменных. Теорема доказана. ■

Замечание 4. Утверждение теоремы не может быть распространено на значения £ = 0 или £ = 2 к, поскольку в этих случаях функция f от всех переменных зависит несущественно.

Замечание 5. Может быть построена монотонная функция с приведёнными в теореме 1 свойствами. Для доказательства этого факта необходимо несколько изменить функцию f, построенную выше, а именно положить f (0,..., 0) = 0, а в самом верхнем слое, содержащем невыполняющие векторы функции f (пусть одним из таких векторов будет в), положить f (в) = 1.

Замечание 6. Поскольку функции-константы f = 0 и f = 1 являются и слабо положительными, и слабо отрицательными, то можно утверждать, что нет ограничений на вес слабо положительных и слабо отрицательных функций.

Замечание 7. Известно [7, 9], что любая мультиаффинная функция f (х1,... , хк) имеет вес 2т, т € {0,... , к}, а равновероятных биюнктивных функций, существенно зависящих от к ^ 5 переменных, не существует [10]. Результат теоремы 1 показывает, что относительно веса функции классы слабо положительных и слабо отрицательных функций значительно богаче.

Аналогично теореме 1 может быть доказана

Теорема 2. Для любого к ^ 1 и любого £ € {1,..., 2к — 1} найдётся слабо отрицательная функция веса £, существенно зависящая от всех к переменных.

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

зать ко (которое зависит от алфавита А и полинома р(к)), такое, что при к ^ ко найдутся функции из ЖРк (^^), длина записи которых превышает р(к).

Доказательство. Из формулы (1), представления биномиальных коэффициентов, оценок Стирлинга

/2пк < к! < /2пк е1/12к (12)

следует асимптотическое неравенство

|ЖРк |>22"-1/^к. (13)

Для полинома р(к) найдутся с1 € N, с2 € N, такие, что р(к) ^ с1 • кС2. Количество Т

слов в алфавите А длины не больше, чем р(к), не более

Т ^ |А|С1кС2. (14)

Поскольку |А| —это некоторое натуральное число, то из соотношений (13) и (14) следует справедливость теоремы. ■

Замечание 8. Для любой мультиаффинной или биюнктивной функции f (х1, ...,Хк) существует короткая запись (не длиннее р(к), где р — некоторый полином), такой короткой записью для этих функций является приведённое представление [7]. Из теоремы 3 следует, что для всех слабо положительных (и слабо отрицательных) функций короткой записи не существует.

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

В работе [11] исследованы классы функций ^к = Вгк П ЖРк, то есть функций, являющихся одновременно слабо положительными и биюнктивными. Поскольку длина записи приведённого представления любой биюнктивной функции не больше п3, слабо положительные функции из класса ^к имеют короткую запись. Аналогичным свойством обладают слабо отрицательные функции из класса Вгк П . Отметим, что для числа функций класса ^к справедливы оценки 2(к -к 1о®2 к)/4 < |^к| <

< 2(к /2)+2к 1о§2 к+3к [11]. В следующей теореме оценивается снизу число слабо отрицательных функций, для которых существует короткое представление многочленом Жегалкина.

Теорема 4. Существует не менее [2гк 1о®2 к/2] слабо отрицательных функций от к переменных, длина записи которых многочленом Жегалкина не больше чем пг, где г ^ 5.

Доказательство. Будем рассматривать только антимонотонные функции вида f (х1,...,хк )= Л (Агь...,г4 V Х»1 V ... V Хг4), (15)

1^г1<...<г£^к

где £ € {1,... , к}; ^ = (Л12...*,... , А(к-*+1),...,(к-1)к) € У(к) —набор коэффициентов;

__

Л II = Я; Я — некоторое число из интервала {1,...,2(()}, 2(*) =

)

мощность

__ \tJ

множества ^(к). При каждом наборе Л имеем антимонотонную функцию, записанную в виде КНФ (считаем, что сомножители вида (1 V V ... V ) удаляются).

Покажем (от противного), что функции вида (15) имеют единственное представление в виде (15). Пусть функция f (хі,... , Хк), кроме (15), представима в виде

f (Хі,...,Хк )= Л (^гі...г4 V Хі! V ... V Х;4),

1^іі<...<і(^к

(16)

где ^ = (^12...*, . . . , ^(к-*+1)...(к-1)к) € У(к) , ^ = /Л . Без ограничения общности можем считать, что Л12...* = 1, ^12...* = 0. Тогда из (15) следует, что f (1,... , 1, 0,... , 0) = 0, а

из записи (16) вытекает f (1,..., 1, 0,... , 0) = 1. Получили противоречие.

Число функций (15) равно

Поскольку хіі V ... V хі; = хіі Жегалкина не больше

N

Х; ф 1, то длина записи функций (15) многочленом

Т < 29 • к2

іі

. • Хі

так как число мономов в этом многочлене не больше 29, а каждый моном х 1 ^ іі < ... < ^ к, можно записать словом в алфавите {х, 0,1,; } длины не

больше к2 (при этом индексы при неизвестных записываем двоичными словами).

Далее положим і = [к/2], я = [(г — 2) ^2 к]. При этом длина многочлена Жегалкина функции не более чем Т ^ кг, число функций (15) равно

N

к

^/2]

|_(Г — 2) І0§2 к]

Учитывая соотношение (12), находим

N5

2к/(2^к)] + 1 [(г — 2) 1о§2 к]

>

2к/(2^к)] + 1 |_(г — 2) 1о§2 к]

>2^к log2 к/2

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

Замечание 9. При к ^ 6 функции (15) не являются биюнктивными, поскольку в этих условиях элементарные имплиценты, входящие в (15), простые и зависят более чем от трёх переменных.

ЛИТЕРАТУРА

1. Горшков С. П. О сложности нахождения приведённых представлений слабо положительных и слабо отрицательных булевых функций // Прикладная дискретная математика. 2008. Т.1. Вып. 1. С. 7-9.

2. Гизунов С. А., Носов В. А. О классификации всех булевых функций четырёх переменных по классам Шеффера // Обозрение прикладной промышленной математики. Сер. дискретной математики. 1995. Т. 2. Вып.3. С. 440-467.

3. Гретцер Г. Общая теория решёток. М.: Мир, 1982. 456 с.

4. Алексеев В. Б. О числе семейств подмножеств, замкнутых относительно пересечения // Дискретная математика. 1989. Т. 1. Вып. 2. С. 129-136.

5. Коршунов А. Д. О числе монотонных булевых функций. Проблемы кибернетики. Вып. 38. М.: Наука, 1981. С. 5-108.

Я

6. Горшков С. П. О сложности распознавания мультиаффинности, биюнктивности, слабой положительности и слабой отрицательности булевых функций // Обозрение прикладной промышленной математики. Сер. дискретной математики. 1997. Т. 4. Вып. 2. С. 440-467.

7. Горшков С. П. Применение теории NP-полных задач для оценки сложности решения систем булевых уравнений // Обозрение прикладной промышленной математики. Сер. дискретной математики. 1995. Т. 2. Вып.3. С. 325-398.

8. Горшков С. П., Тарасов А. В. О максимальных группах инвариантных преобразований мультиаффинных, биюнктивных, слабо положительных и слабо отрицательных булевых функций // Дискретная математика. 2009. Т. 21. Вып. 2. С. 94-101.

9. Schaefer T. Complexity of satisfiability problems // Proc. 10 Annual ACM Symposium on Theory of Computing Machinery. New York, NY, USA: ACM, 1978. P. 216-226.

10. Тарасов А. В. О свойствах функций, представимых в виде 2-КНФ // Дискретная математика. 2001. Т. 13. Вып. 4. С. 99-115.

11. Горшков С. П. О пересечении классов мультиаффинных, биюнктивных, слабо положительных и слабо отрицательных булевых функций // Обозрение прикладной промышленной математики. Сер. дискретной математики. 1997. Т. 4. Вып. 2. С. 238-259.

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